I am using mono ORB SLAM to run with TUM dataset. Everything works well except the groundtruth.txt provided starts with an offset (real world camera pose) while ORB SLAM outputs a relative pose change to its initial pose.
I tried to subtract every single value with the initial value in groundtruth, but cannot get a correct answer.
For example, using rgbd_dataset_freiburg1_xyz dataset,
Thus we can see the angle of ground truth goes from
[ 156.5623909, 133.9769335, -62.2229352 ] (a)
to
[ 142.3680597, 137.1524912, -59.3641947 ] (b)
While the diff I get from ORB SLAM (from KeyFrameTrajectory.txt)is
[ -6.8913988, -8.3826331, -3.7558409 ] (c)
Similarly, we can see that position of gt goes from [1.3097 0.8065 1.6132] (a) to [1.2823 0.5845 1.4489] (b), while the diff in ORB is [-0.1738054 0.1043030 0.0929417 ] (c)
In short, I cannot get (a) ~= (b) + (c). The equal sign only works in perfect, but in the example above they are even not close to approximations.
I am not sure if this is the nature of ORB SLAM, or is there anything wrong in my understanding?
P.S. I have looked into some other issues such as #28 , but did not get help from those info.
I am using mono ORB SLAM to run with TUM dataset. Everything works well except the
groundtruth.txt
provided starts with an offset (real world camera pose) while ORB SLAM outputs a relative pose change to its initial pose.I tried to subtract every single value with the initial value in groundtruth, but cannot get a correct answer. For example, using
rgbd_dataset_freiburg1_xyz
dataset,My
KeyFrameTrajectory.txt
starts and ends withThe ground truth goes with
Thus we can see the angle of ground truth goes from
[ 156.5623909, 133.9769335, -62.2229352 ]
(a) to[ 142.3680597, 137.1524912, -59.3641947 ]
(b) While the diff I get from ORB SLAM (fromKeyFrameTrajectory.txt
)is[ -6.8913988, -8.3826331, -3.7558409 ]
(c)Similarly, we can see that position of gt goes from
[1.3097 0.8065 1.6132]
(a) to[1.2823 0.5845 1.4489]
(b), while the diff in ORB is[-0.1738054 0.1043030 0.0929417 ]
(c)In short, I cannot get (a) ~= (b) + (c). The equal sign only works in perfect, but in the example above they are even not close to approximations.
I am not sure if this is the nature of ORB SLAM, or is there anything wrong in my understanding?
P.S. I have looked into some other issues such as #28 , but did not get help from those info.
Any hints would be appreciative, thank you.