-
Notifications
You must be signed in to change notification settings - Fork 899
Description
I am trying to get results for the MRID dataset given here.
For the indoor sequence, I tried to get results with the RGBDdataset executable by feeding the bag files extracted into euroc folder structure. I just fed the front camera's RGB and Depth images, no IMU.
Here is the evo plot and its rmse scores:
translational rmse = 0.088584 meter
rotational rmse = 118.454700 degree

As you can see in the rotational error plot, there is an offset/bias in the estimates.
I couldn't figure out the source of this rotational offset/bias in the pose estimates.
Since the dataset processing executables are tailored to the datasets, I thought I might have missed or duplicated some transformations during that dataset-specific tuning of the algorithm. That's why I decided to feed the RGBD images into rtabmap using the ROS2 pipeline. In this case, I just set the RGBD camera transformation as the optical transformation.
# optical rotation
data: [0.0, 0.0, 1.0, 0.0,
-1.0, 0.0, 0.0, 0.0,
0.0, -1.0, 0.0, 0.0,
0.0, 0.0, 0.0, 1.0]
In this case, odometry tracking is lost after the first turn, and the rotation offset/bias persists. Here I attach the evo results for the ROS2 outputs.
translaional rmse: 0.200719 meter
rotational rmse: 119.669258 degree

I also attached the ROS2 launch command output.
rtabmap.ros2.log
I have two questions based on these results.
The first one, which is my main concern, what am I missing to get those good translational but biased rotational estimates both for ROS2 and the dataset executable?
The second one, why ROS2 pipeline cannot keep tracking?
Thanks in advance for your comments, and help.