rpng / open_vins

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

Question: OpenVINS estimator_config.yaml parameters explanation #253

Closed vswdigitall closed 2 years ago

vswdigitall commented 2 years ago

Hi,

I found your OpenVINS project and want to try it for SLAM on moving car in city environment.

I tried it on EUROC indoor datasets and it works.

My setup: InvenSense MPU-9250, ONSemi AR0234(1280x720, 60fps. global shutter), RPI4 64bit OS, ROS Noetic.

I made IMU-camera calibration with Kalibr and recorded bag file (100sec video in my room, /imu0 and /cam0/image_raw topics).

Have launched VINS with roscore and rviz.

After few seconds INIT stage completed. Now i can see /cam0/image with keypoints and /imu0 vector. Image attached.

Would you be so kind to help me with next questions?

  1. Could you explain me estimator_config.yaml parameters for my IMU mono SLAM setup?

  2. How to use VINS topics, where i can see SLAM track, pointcloud and other computed data?

  3. What IMU and camera you can advice for outdoor MonoCamera IMU SLAM ( camera resolution, fps, global/rolling, IMU rate, scales)?

Best regards, Viktor.

goldbattle commented 2 years ago

Hi, there should be comments in the estimator_config.yaml that explain what the parameters do. Likely you just need to decrease the number of cameras and provide your IMU and camera calibration files.

You can open the rviz config file or you can run rostopic list to see what topics are published when running on a dataset (for example eurocmav). https://github.com/rpng/open_vins/tree/master/ov_msckf/launch

If you want to have the system perform well on a moving car we recommend a stereo global shutter camera at maybe 20-30hz. I think any resolution above 640px would work fine.

Hope this helps.

vswdigitall commented 2 years ago

Thank you, will try.

On Jun 14, 2022, 16:51, at 16:51, Patrick Geneva @.***> wrote:

Hi, there should be comments in the estimator_config.yaml that explain what the parameters do. Likely you just need to decrease the number of cameras and provide your IMU and camera calibration files.

You can open the rviz config file or you can run rostopic list to see what topics are published when running on a dataset (for example eurocmav). https://github.com/rpng/open_vins/tree/master/ov_msckf/launch

If you want to have the system perform well on a moving car we recommend a stereo global shutter camera at maybe 20-30hz. I think any resolution above 640px would work fine.

Hope this helps.

-- Reply to this email directly or view it on GitHub: https://github.com/rpng/open_vins/issues/253#issuecomment-1155215149 You are receiving this because you authored the thread.

Message ID: @.***>

vswdigitall commented 2 years ago

I got some results with Arducam 1mp stereo OV9281 on Jetson NX JP 4.4 ROS Melodic and mpu9250. Now i will install more stable IMU like XSens.

Track

Also i want to apply GPS data to VINS track. How i can do it? What software you can advice me?

Best regards, Viktor.

goldbattle commented 2 years ago

How are you finding the noise parameters for the IMU? You can follow this guide to find them: https://github.com/ethz-asl/kalibr/wiki/IMU-Noise-Model#from-the-allan-standard-deviation-ad

This paper might be of interest: https://pgeneva.com/downloads/papers/Lee2020ICRA.pdf

vswdigitall commented 2 years ago

I made kalibr with https://github.com/gaowenliang/imu_utils You mean mpu9250 good device and there is calibration issue?

RTKlib usefull library. But can i integrate GPS data with OpenVINS track in realtime?

goldbattle commented 2 years ago

Yes you can integrate a GPS, but you would need to implement that yourself. The current code is just visual+inertial.

vswdigitall commented 2 years ago

Ok.

goldbattle commented 2 years ago

Feel free to reopen / make another issue if you have more questions. I have tried to comment the eurocmav config a bit more, hope this helps. https://github.com/rpng/open_vins/blob/develop_v2.6.1/config/euroc_mav/estimator_config.yaml