Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hardware specifications for real time odometry #182

Open
connorsoohoo opened this issue Jun 12, 2018 · 9 comments
Open

Hardware specifications for real time odometry #182

connorsoohoo opened this issue Jun 12, 2018 · 9 comments

Comments

@connorsoohoo
Copy link

Can someone give what their exact hardware specifications were and the configuration used to analyze camera images in real time?

@bloesch
Copy link
Contributor

bloesch commented Aug 6, 2018

hardware specification for the euroc dataset can be found online (https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets). The default rovio settings should run fairly well on this dataset.

@ghost
Copy link

ghost commented Aug 29, 2018

Hey @bloesch,
I already bought and optor vi_sensor ( it is the github: https://github.com/optor-vis/vi-stereo-v1 ) it has a ros package and I can connect it to your code but the problem is that it drifts I think it is about the frame speed. I am totally new to the hardware. Should I calibrate it with Kalibr or should I use its Ros package. If I should use their ROS package how should I change the speed and what is the number of fps I should put in it.
I would appreciate it if you help me with this issue I am really stalked.

@ZacharyTaylor
Copy link
Contributor

There has been a few threads about the optor sensor before, the framerate is unlikely to be the issue. Looking at the driver the sensor appears to have no synchronization between the IMU and cameras. It also does timestamping via arrival times and has a fairly low quality IMU. Because of these issues while you might be able to get the code working with the sensor, you are unlikely to ever get the sort of results shown on the EuRoC dataset.

@ghost
Copy link

ghost commented Aug 30, 2018

Thank you, I think I use an imu via arduino , but would you please tell me which number should put as a frame rate in fps for camera and imu? so then I can get just the images from optor since it has global shutter cameras and if I understood well from what you said, it seems the cameras are not the problem.

@ZacharyTaylor
Copy link
Contributor

The camera images shouldn't be an issue, however rovio needs the relative timing between when an IMU reading occurred and an image was taken to be given quite accurately. As the sensor only stamps images on arrival on the pc you will need to factor in the unknown internal imaging processing time and time for the images to be transferred. This can be very difficult to do accurately which is why we generally aim for using sensors that provide hardware timestamping. I have successfully run rovio on cameras with framerates of 12, 20, 30 and 60 fps and IMUs with rates of 100, 200 and 250 Hz. Our current setup has images at 20 fps and IMU at 200 Hz, but it does not matter too much.

@mzahana
Copy link

mzahana commented Oct 4, 2018

@ZacharyTaylor If possible, could you please share what hardware you use to get good results with ROVIO?

Thanks.

@ZacharyTaylor
Copy link
Contributor

I wrote up some information on our VI sensor setups here https://github.com/ethz-asl/mav_tools_public/wiki/Visual-Inertial-Sensors

We generally use the skybotics VI sensor, but due to not being able to get them anymore are transitioning to a setup triggering a camera from a microcontroller.

I should also note while cheaper imus work, we usually go with the adis 16448 due to it's small bias which helps robustness

@mzahana
Copy link

mzahana commented Oct 4, 2018

Thanks @ZacharyTaylor for the info.

It was easier for me to get a pair of uEye 1226LE which is global shutter and also has external trigger pin. It has a ROS driver, but I am not sure how to properly modify it to do the synchronization. Any hints are appreciated.

Thanks again.

@mzahana
Copy link

mzahana commented Oct 4, 2018

I would also like to mention that I have an arduino and MPU6050 with the intention to build a complete VI rig.

I came across this tutorial which explains how to use arduino to sync MPU6050 with a global shutter camera. However, I don't have the camera mentioned in that tutorial, but I have the uEye 1226LE.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants