UZ-SLAMLab / ORB_SLAM3

ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM
GNU General Public License v3.0
6.68k stars 2.57k forks source link

Stereo-Inertial. Have camera drifting when camera is rotating #150

Open dinimar opened 4 years ago

dinimar commented 4 years ago

After I'd done IMU parameters evaluation in #125, I tested new parameters. I got following result (video)

Now, I'm facing issues:

My camera is Realsense d435i. I have evaluated following parameters for camera:

IMU.NoiseGyro: 0.00021734514151874635 # 1.6968e-04 
IMU.NoiseAcc: 0.0013297318816744405 # 2.0000e-3
IMU.GyroWalk: 1.0666746721237165e-06
IMU.AccWalk: 0.00017979516343261657 # 3.0000e-3
IMU.Frequency: 400
jdtardos commented 4 years ago

Repetitive patterns like the calibration templates in your video are bad for ORB-SLAM. Please, try in another area. Also, to get good IMU initialization you need to tilt the system in pitch and roll at the beginning.

dinimar commented 4 years ago

@jdtardos Thanks a lot for your reply. I'll try in another area, but in fact I've tested ORB-SLAM2(Stereo, no IMU) at the same place and such situation doesn't happen. Can you explain why do I need tilt in pitch and roll at the beginning?

jdtardos commented 4 years ago

IMU initialization needs to estimate gravity direction and accelerometer bias. If you don’t tilt the IMU, both estimations get mixed, and this will produce drift in position.

leo-wkd commented 4 years ago

hi, could you please share your D435i calibration yaml file? I am also using D435i to run stereo inertial package of ORB-SLAM3 but I found my calibration was different from what the program wants and therefore I cannot even initialize the tracking mode.

dinimar commented 4 years ago

@jdtardos I and @leo-wkd both tested the same config mentioned in the issue. Obviously, we have different areas. But @leo-wkd have the same problem. The reason of problem can be related to #132