Combination Configuration Creation

How to create combination configurations in SLAM-Hive System.

Full Version

Step 1: Algorihtm & Dataset Selection

Select the required SLAM algorithm and dataset.

Step 2: Configuration Info

Mapping Task Combination Configuration Name: Recommended Name rule: [Algorithm Name]+[Dataset Name]+[Simple Description].
Description:                                 Detailed description of the configuration.

example: Combination name: xxx; each config name: xxx-0, xxx-1...(if not exist before)

Step 3: Dataset Uniform Parameters

If your configurations refer to the dataset frequency or resolution changing, and you want to unify some topics' frequency or resolution(eg, stereo camera), you show input their IDs following the rules:

id1, id2;
id3, id4; id5;
 
# explain: id1 and id2 are associated; id3, id4 and id5 are associated.

Step 4: Dataset New Value Parameters

If your configurations refer to the dataset resolution or frequency changing, you show input the new image size and camera intrinsic and frequency.

Example:

258: # Dataset Resolution param id
    1.0: # 1.0 0.8 0.6 the value of the resolution
      146: xxx # Dataset resolution intrinsic or size new value
      147: xxx 
      ...
    0.8: #
      xxx: xxx
      ...
    0.6: #
      xxx: xxx
      ...
    ...
xxx: #
    xxx: xxx
    xxx: xxx
    ...

Step 5: Parameter Selection

There is a table to show all the parameter templates. You can select the needed template and input the value.

The details information can see at create parameter wiki and parameter wiki.

If you want to make a parameter as one of the combinations, then you should input the value as: “value1|value2|value3|…”. And if some parameters are associated with some topics announced in “Step 4”, then the value here will have no effect. If step 3 and 4 is not involved, you do not need to enter anything in it.


After all, you can click save button to add the configuration to the database.

Note: A comb configuration will be created, which contains all configurations created by this rule (if some configurations already exist, no new configuration will be created, but will be associated with the existing configurations).


Finally, we provide a complete example:

Original Dataset Information:

Original Dataset Information:

K Matrix
 - [458.654, 0.0, 367.215, 0.0, 457.296, 248.375, 0.0, 0.0, 1.0]
 
[R t]
 - [0.999966347530033, -0.001422739138722922, 0.008079580483432283, 0.001365741834644127, 0.9999741760894847, 0.007055629199258132, -0.008089410156878961, -0.007044357138835809, 0.9999424675829176]
 - [0,0,0]
 
K [R t]
[435.2046959714599, 0, 367.4517211914062, 0, 0, 435.2046959714599, 252.2008514404297, 0, 0, 0, 1, 0]
 

Rectified Left Camera Matrix:
[[436.24429564   0.         364.44123459   0.        ]
 [  0.         436.24429564 256.95167542   0.        ]
 [  0.           0.           1.           0.        ]]
Rectified Right Camera Matrix:
[[436.24429564   0.         364.44123459 -48.02083068]
 [  0.         436.24429564 256.95167542   0.        ]
 [  0.           0.           1.           0.        ]]
Rectified Left Camera Rotation:
[[ 0.99996635 -0.00142274  0.00807958]
 [ 0.00136574  0.99997418  0.00705563]
 [-0.00808941 -0.00704436  0.99994247]]
Rectified Right Camera Rotation:
[[ 0.99996335 -0.00362581  0.00775544]
 [ 0.0036804   0.99996848 -0.00703585]
 [-0.00772969  0.00706413  0.99994517]]

Input Content:

------ Step 1: Algorihtm & Dataset Selection
orb-slam3-ros-stereo-inertial+MH_01_easy+comb_test

------ Step 2: Configuration Info
Algorithm: orb-slam3-ros-stereo-inertial
Dataset: MH_01_easy
test comb_configurations.
Environment: Desktop (Memory: 32GB; CPU: Intel® Core™ i7-7700 CPU @ 3.60GHz × 8; Disk: 1TB)

------ Step 3: Dataset Uniform Parameters
588,602 (Dataset Image Frequency)
591,603 (Dataset Image Resolution)

------ Step 4: Dataset New Value Parameters
588: (Cam0 image frequency)
  1: (how to change this topic: origin frequency / 1)
    350: 20 (the value after changing)
  2: 
    350: 10
  4:
    350: 5
589: (IMU frequency)
  1:
    575: 200
  2:
    575: 100
  4:
    575: 50
591: (Cam0 image resolution)
  1:
    351: 752             # width
    352: 480             # height
    436: 436.24429564    # fx
    437: 436.24429564    # fy
    438: 364.44123459    # cx
    439: 256.95167542    # cy
    448: 48.02083068     # bf
    449: 60              # ThDepth
    
    454: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]      # D Matrix
    455: [458.654, 0.0, 367.215, 0.0, 457.296, 248.375, 0.0, 0.0, 1.0]   # K Matrix
    456: [ 0.99996635, -0.00142274,  0.00807958, 0.00136574,  0.99997418 , 0.00705563,-0.00808941 ,-0.00704436 , 0.99994247]     # R Matrix
    457: [436.24429564, 0.0 ,364.44123459, 0.0, 0.0, 436.24429564, 256.95167542, 0.0, 0.0, 0.0, 1.0, 0.0]   # P Matrix
 

  0.8:
    351: 601
    352: 384
    436: 349.09731801
    437: 349.09731801
    438: 291.74860382
    439: 205.61695862
    448: 38.42787944
    449: 75

    454: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]
    455: [366.9232, 0.0, 293.772, 0.0, 365.8368, 198.7, 0.0, 0.0, 1.0]
    456: [ 0.99996635 ,-0.00142274 , 0.00807958 ,0.00136574 , 0.99997418  ,0.00705563 ,-0.00808941 ,-0.00704436 , 0.99994247]
    457: [349.09731801, 0, 291.74860382, 0, 0, 349.09731801, 205.61695862, 0, 0, 0, 1, 0]
 

  0.6:
    351: 451
    352: 288
    436: 261.91349264
    437: 261.91349264
    438: 218.81050873
    439: 154.26602554
    448: 28.83087208
    449: 100    
    454: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]
    455: [275.1924, 0.0, 220.329, 0.0, 274.3776, 149.025, 0.0, 0.0, 1.0]
    456: [ 0.99996635 ,-0.00142274 , 0.00807958 ,0.00136574 , 0.99997418  ,0.00705563 ,-0.00808941 ,-0.00704436 , 0.99994247]
    457: [261.91349264, 0, 218.81050873, 0, 0, 261.91349264, 154.26602554  , 0, 0, 0, 1, 0]  
 
  
  0.5:
    351: 376
    352: 240
    436: 218.32162852
    437: 218.32162852
    438: 182.34145927
    439: 128.59058762
    448: 24.03237374
    449: 120   

    454: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]
    455: [229.327, 0.0, 183.6075, 0.0, 228.648, 124.1875, 0.0, 0.0, 1.0]
    456: [ 0.99996635 ,-0.00142274 , 0.00807958 ,0.00136574 , 0.99997418  ,0.00705563 ,-0.00808941 ,-0.00704436 , 0.99994247]
    457: [218.32162852, 0, 182.34145927, 0, 0, 218.32162852, 128.59058762, 0, 0, 0, 1, 0]

603:
  1:
    571: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]
    572: [457.587, 0.0, 379.999, 0.0, 456.134, 255.238, 0.0, 0.0, 1]
    573: [0.99996335 ,-0.00362581 , 0.00775544 ,0.0036804  , 0.99996848 ,-0.00703585, -0.00772969 , 0.00706413 , 0.99994517]
    574: [436.24429564, 0.0 ,364.44123459, -48.02083068, 0.0, 436.24429564, 256.95167542, 0.0, 0.0, 0.0, 1.0, 0.0]
  
  0.8:
    571: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]
    572: [366.0696, 0.0, 303.9992, 0.0, 364.9072, 204.1904, 0.0, 0.0, 1.0]
    573: [ 0.99996335, -0.00362581 , 0.00775544 ,0.0036804 ,  0.99996848 ,-0.00703585 ,-0.00772969 , 0.00706413 , 0.99994517]
    574: [349.09731801, 0, 291.74860382, -38.42787944, 0, 349.09731801, 205.61695862, 0, 0, 0, 1, 0]
  
  0.6:
    571: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]
    572: [274.5522, 0.0, 227.9994, 0.0, 273.6804, 153.1428, 0.0, 0.0, 1.0]
    573: [ 0.99996335, -0.00362581 , 0.00775544 ,0.0036804 ,  0.99996848 ,-0.00703585 ,-0.00772969 , 0.00706413 , 0.99994517]
    574: [261.91349264, 0, 218.81050873, -28.83087208, 0, 261.91349264, 154.26602554  , 0, 0, 0, 1, 0]  

  0.5:
    571: [-0.28340811, 0.07395907, 0.00019359, 1.76187114e-05, 0.0]
    572: [228.7935 ,  0.0  , 189.9995 , 0.0  ,  228.067 , 127.619 , 0.0 ,  0.0,
   0.5 ]
    573: [ 0.99996335, -0.00362581 , 0.00775544 ,0.0036804 ,  0.99996848 ,-0.00703585 ,-0.00772969 , 0.00706413 , 0.99994517]
    574: [218.32162852, 0, 182.34145927, -24.03237374, 0, 218.32162852, 128.59058762, 0, 0, 0, 1, 0]

Explanation:

First, parameter can be divided into 3 categories:
- 1 Dateset
- 2 Dataset Frequency; Dataset Resolution
- 3 Dataset Frequency remap; Dataset Resolution size; Dataset Resolution intrinsic
 
When an algorithm involves Frequency and Resolution
- First consider 2: key (topic name to be modified): value (how to change the value. For example: Frequency: 1|2; Resolution: 1|0.5).
- Then consider 1: After setting 2, some of the original parameters' value need to be modified, for these parameters:
  - In comb creation, the value in (key: value) is actually ineffective, only key is effective. (the effective values are in "Step 4")/
- Then consider 3: key (keyName of the parameter to be modified): value (the topic name it corresponds to, that is, the key in 2).
- The main function of 3 is to connect 2 and 1.
 
 
If it is created simply, 3 is not needed, just change 1 to the corresponding value.
If it is comb creation:
- Need to combine step3 and step4
- The function of step3 is: for example, for stereo cameras, the images of the two cameras are basically of the same frequency and size, so when modifying, they must be modified at the same time (1, 2, 4), so that the frequency/size of the two cameras are not same.
- The function of step4 is: to provide a new value corresponding to 1 (this approach can have better scalability and can be applied to different camera models)