I am trying to use visual odometry with a robot equipped with an A2 rplidar, and a low cost imu,
running the nodes on an nvidia Jetson Tx2.
Normally I have a good performance, but even, moving the robot slowly, sometimes the odometry is quite impressive when the robot turns.
This is an example image when it goes well (I have configured rviz to have a decay time on the laser scan of 100).
And this is an example when things goes wrong.
This is my current setup:
Also, I have seen node use 100% of CPU for visual odometry, not using the other CPUs that are not busy at all. Also the ros topic frequency for odometry really low (4hz).
Another thing. I have seen that the frencuency odom decrease with time. Whern I start up the visual odom is about 10hz, but after a while is reduced to 4hz.
My question is:
What can I do to improve odometry?
I would like to have a good quality odometry to be able to create a good quality 3D Octomap.
Should i get a high resolution imu?
Do I need a higher performance computer?
Do I need to adjust the settings?
regards,
Manuel Huertas.