CathIAS / TLIO

Tight Learned Inertial Odometry
Other
277 stars 69 forks source link

Dataset #15

Closed raabuchanan closed 3 years ago

raabuchanan commented 3 years ago

Hello, thank you for sharing the code, this work is very interesting to me and I'm keen to try it out. I just have a few questions concerning datasets.

  1. I was wondering if there are any plans in the future to provide a dataset and/or trained model so that I can test the code out of the box?
  2. What is inside the calib_state.txt file? Is it a single initial pose to initialize the TLIO filter? What is the data format of this file?
  3. In imu_measurements.txt which is passed to gen_fb_data.py, what is the calibrated IMU data? Do you mean the raw data with estimated biases removed?

Thank you!

CathIAS commented 3 years ago

Thank you for the questions!

  1. Unfortunately we are unable to share our dataset and trained model at this point. It is a possibility that they can be shared in the future but currently we can not promise anything.
  2. The calib_state.txt file includes the stamped IMU calibration from the VIO algorithm, and the format can be found in data_io.py. These are only used for debugging purposes in the filter to provide "perfect" data. During network training, the calibrated IMU data is used as input, plus random noise and bias permutations.
  3. That is right. The calibrated IMU data is exactly the raw IMU measurements corrected by the calibration states estimated by the VIO - as the best estimate that we could get. This data is then used for training (as mentioned in Q.2 above). You can refer to the network dataloader dataset_fb.py for its usage. To recreate a dataset, you can either follow the same data format and regenerate the hdf5 files, or rewrite your own dataloader to replace dataset_fb.py.

Let us know if anything's not clear.

Cheers, Wenxin

acolagior commented 3 years ago

Hi! What are the 9 elements to be included in acc_scale_inv, gyr_scale_inv, gyro_g_sense? Furthermore, what does gyro_g_sense represent?

CathIAS commented 3 years ago

Hi @acolagior! These are the matrices of the IMU error model: w_meas = T_g w + T_s a + ng + bg a_meas = T_a R( a - g ) + na + ba w_meas and a_meas are the sensor measurements, and T_g, T_a corresponds to the scale matrices, while T_s is the gravity sensitivity matrix, which correlates linear acceleration and angular velocity.