Hi, I have been working on robot localization by using IMU and Visual Odometry Sensors. I have successfully updated the configuration file and got the filtered_odom result. But, filtered Odom from the robot localization node is closely following raw odom data, and it didn't improve as expected as you can see in the figure below
I mean to say the two endpoints on the left-hand side of the image are actually the same start and end position of the robot in the real world. The yellow color path represents visual odometry and the red color path represents filtered Odom from the Robot localization EKF node.
I am wondering how can I improve this localization node performance. If you observe in my Odom data, there is no twist data (linear velocity values are zero). I have seen some ROS answers saying that using velocity in Odom data instead of position would improve the localization. My question is if I create a new Odom node that takes in visual Odom position values and calculates velocity. and use that node and velocities for robot localization would that improve the performance?
I have attached the example output data of my sensors and EKF config file
Originally posted by rcbot on ROS Answers with karma: 39 on 2021-11-04
Post score: 0
Original comments
Comment by Dragonslayer on 2021-11-04:
What kind of scale and speeds/accelerations are we talking here? What kind of robot is this? Might just be as good as it gets depending on the circumstances. How well does it work for simple movements, straight ahead, full circle? I think the "issue"/error is in the visual matching/odom itself. Got a link to that "velocity should improve result" topic please?
Using some sort of localization might be the solution, rtabmap, amcl etc.
Comment by rcbot on 2021-11-04:
Dragonslaye Thank you for your answer. we are working on a custom robot and we are driving it on very low speed 2 to 3 m/sec. here you can find the link text
Comment by Dragonslayer on 2021-11-07:
Could be imu0_config that there is no y component inputet. Last line "true, true, false" maybe? Nice config yaml with good parameter descriptions link
Did you try the tests i suggested with simple geometric paths?
Comment by Mike Scheutzow on 2021-12-15:
In future questions you ask, please do not post images of text output. Instead, put the actual text into your description and format it with the 101010 button.
Comment by duck-development on 2021-12-16:
3m/s is realy fast for an mobile driving robot.