rpng / open_vins

An open source platform for visual-inertial navigation research.
https://docs.openvins.com
GNU General Public License v3.0
2.07k stars 619 forks source link

Running on Own Dataset with Zero-velocity Update Enabled #282

Closed yunkong11 closed 1 year ago

yunkong11 commented 1 year ago

Hi, openvins cann't run when I play my dataset, I have read the tutorial but I don't konw the reason, I guess the position of topic is wrong. Can you teach me how to modify the configuration file of my dataset or do you have a template?

goldbattle commented 1 year ago

Please post an example bag / config you have. The sensor topics are specified in the config YAML files, which you should be able to directly copy from Kalibr. Hope this helps.

yunkong11 commented 1 year ago

Sorry for the late reply because of the file transfer problem,here is my config file,please help me see where is the problem, thank you. realsense_d435i.zip

goldbattle commented 1 year ago

You likely need to change rostopic: /cam0/image_raw in kalibr_imucam_chain.yaml and rostopic: /imu0 to your IMU in kalibr_imu_chain.yaml.

On Fri, Oct 21, 2022 at 10:49 PM yunkong11 @.***> wrote:

Sorry for the late reply because of the file transfer problem,here is my config file,please help me see where is the problem, thank you. realsense_d435i.zip https://github.com/rpng/open_vins/files/9843390/realsense_d435i.zip

— Reply to this email directly, view it on GitHub https://github.com/rpng/open_vins/issues/282#issuecomment-1287593200, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQ6TYSHD46WR3X6R633PZTWENI5HANCNFSM6AAAAAARLTVQYI . You are receiving this because you commented.Message ID: @.***>

yunkong11 commented 1 year ago

Sorry to bother you,I didn't check the topic carefully. But there is another problem: when I run my own dataset, after walking a circle, I deliberately let it stand still, and the track drifted greatly. Openvins has ZUPT, but why does it drift so huge? 2022-10-22 12-46-11 的屏幕截图

yunkong11 commented 1 year ago

Hi, I tested monocular VIO and find that ZUPT is useless when the d435i from motion to static. Have you ever encountered such a situation? I think the IMU in d435i is so noisy that odometry drift. Or it is not calibrated well,but It can track well before still,so I think this is not the main reason.

I also run the MH_01_easy.bag,init_dyn_use is true, try_zupt is true, the kalibr_imucam_chain.yaml parameter use both your and VINS-Mono, but they all drift when static. (Other datasets are OK,such as MH_02, MH_03...) This does not happen with binocular inertial

And you know why? Look forward to your reply for every question. Thank you!

goldbattle commented 1 year ago

I don't have any experience with the d435i, but if you search other issues, many have had problems with its IMU. I am not sure why the zero-velocity is failing, but this is something that still need to investigate (see issue https://github.com/rpng/open_vins/issues/273)

goldbattle commented 1 year ago

Can you please try the latest master, a small bug was fixed in the zero-velocity bias noise model: https://github.com/rpng/open_vins/commit/38610105652a7bc9843f3fb35c7b93a528725680