openxrlab / xrslam

OpenXRLab Visual-inertial SLAM Toolbox and Benchmark
Apache License 2.0
418 stars 48 forks source link

Localize drift severely when I run phone dataset, what should I do to get right location? #35

Open wuerhan opened 6 months ago

wuerhan commented 6 months ago

when I run xrslam algorithm using https://github.com/zju3dv/LSFB dataset,the trajectory drift is very serious. I think it's mainly related to imu parameters,how should I adjust the parameters in configs. below is the parameters I use now, refer to the calibration parameters provided by the dataset author.

imu: gyroscope_noise_density: 0.01 # [ rad / s / sqrt(Hz) ] gyroscope_random_walk: 4.0e-05 # [ rad / s^2 / sqrt(Hz) ] accelerometer_noise_density: 0.1 # [ m / s^2 / sqrt(Hz) ] accelerometer_random_walk: 0.001 # [ m / s^3 / sqrt(Hz) ] accelerometer_bias: [0.0, 0.0, 0.0] # acc bias prior gyroscope_bias: [0.0, 0.0, 0.0] # gyro bias prior extrinsic: q_bi: [ 0.0, 0.0, 0.0, 1.0 ] # x y z w p_bi: [ 0.0, 0.0, 0.0 ] # x y z [m] noise: cov_g: [ 1.0e-4, 0.0, 0.0, 0.0, 1.0e-04, 0.0, 0.0, 0.0, 1.0e-04] cov_a: [ 1.0e-02, 0.0, 0.0, 0.0, 1.0e-02, 0.0, 0.0, 0.0, 1.0e-02] cov_bg: [ 1.6e-09, 0.0, 0.0, 0.0, 1.6e-09, 0.0, 0.0, 0.0, 1.6e-09] cov_ba: [ 1.0e-06, 0.0, 0.0, 0.0, 1.0e-06, 0.0, 0.0, 0.0, 1.0e-06]

cam0: T_BS: cols: 4 rows: 4 data: [8.46506888e-04, -9.99991260e-01, 4.09432961e-03, -0.029662108648194, -9.99941627e-01, -8.02348468e-04, 1.07749069e-02, 0.011143028268905, -1.07715276e-02, -4.10321164e-03, -9.99933567e-01, -0.040172455026093, 0.0, 0.0, 0.0, 1.0] resolution: [640, 480] # resolution of camera camera_model: pinhole # camera model distortion_model: radtan # distortion model intrinsics: [482.7586673503097, 483.47632911991485, 314.6192613895542, 242.05073350615314] # fu, fv, cu, cv camera_distortion_flag: 1 # use distortion model or not distortion: [0.06279855179475724, -0.09438935292666413, -0.0009430695847365444, -0.0026745910116436067] # k1, k2, p1, p2, xi camera_readout_time: 0.015465744080604192 # camera readout time time_offset: 0.0 # camera time delay wrt. IMU extrinsic: q_bc: [ 0.707386461220603, -0.706803493087095, -0.002359812629834, -0.005258129517616 ] # x y z w p_bc: [ -0.029662108648194, 0.011143028268905, -0.040172455026093 ] # x y z [m] noise: [ 0.5, 0.0, 0.0, 0.5] # [pixel^2]