KumarRobotics / msckf_vio

Robust Stereo Visual Inertial Odometry for Fast Autonomous Flight
Other
1.66k stars 592 forks source link

Ask for help about evaluation #113

Closed jingshaojing closed 3 years ago

jingshaojing commented 3 years ago

I run the work with V1_01_EASY.bag in realse mode , Since I have to use the truth value of the pose matrix, but I have cost too much time for this without result. I will explain my steps as follows , hope someone can answer for me, sorry to bother everyone. step1 : I have V1_01.ZIP,so I get truth quaternion from vicon folder , and the posture calculated according to the quaternion is as follows(Because msckf runs V1, this data set only outputs 2893 poses, so I save corresponding 2893 data in data.csv of vicon folder according timestamps)

MATLAB_Pz97qGwWuw

only some values , the order is [yaw,pitch ,roll] ,the code is quat2angle(q) in matlab code

step2 I used the value at the first moment in vicon to modify the initial value in the program in _imustate.h orientation(Eigen::Vector4d(0.0133, -0.0248, -0.1133, 0.9932)), position(Eigen::Vector3d(0.8564,2.1499,0.9391)),

Here I considered converting the truth value of vicon (s to R) to R relative to S , corresponding to program.

step3 : I get results of msckf , of course , the quaternion is converted to the same corresponding relationship as the truth value (W到I), but the result is image

It is totally wrong ,and the traj is also as follows

image

though I can get a good result for traj with evo ,but now for some reason , I wang to use matlab to deal ,and neither evo or matlab ,the attitude is so difference .

Can some one tell me how to do ? Only for a right compare with attitude.

chutsu commented 3 years ago

To save you time you might want to consider using the Trajectory Evaluation tool by Zichao Zhang:

In the tool it does all the pose alignment (for VI problem uses Umeyama’s method for alignment) and calculation of pose error between the vicon and estimated (Absolute Trajectory Error (ATE) and / or Relative Trajectory Error (RTE)). The tool is well documented, if you know ROS you shouldn't have much trouble using it. Hope this helps

jingshaojing commented 3 years ago

I would like to try this . yeah ,I know ros and have used EVO to do as above. Hoping for a good result. thanks! @chutsu