evo是一款用於視覺里程計和slam問題的軌跡評估工具。核心功能是能夠繪製相機的軌跡,或評估估計軌跡與真值的誤差。支援多種資料集的軌跡格式(tum、kitti、euroc m**、ros的bag),同時支援這些資料格式之間進行相互轉換。在此僅對其基本功能做簡要介紹。並且介紹如何修改經典的slam演算法以輸出可使用evo評測的軌跡。
github位址
使用pypi直接安裝:
2. 本地編譯安裝
``` pip install --editable . --upgrade --no-binary evo
安裝完畢後,在命令列輸入evo,若顯示了相關資訊,則表明安裝成功。若提示」command not found」也不用驚慌,很多人遇到這種問題,重啟電腦即可找到evo相應指令。
指標
工具命令
evo繪製軌跡的指令為:evo_traj,後跟必要引數有:資料的格式(tum/kitti/bag/euroc等),軌跡檔案。軌跡檔案可以有多個,例如:
evo_traj tum traj1.txt traj2.txt
這個指令只是顯示軌跡的基本資訊,若要繪製軌跡,則增加可選引數 -p 或 –plot
evo_traj tum traj1.txt –p
畫groundtruth的軌跡
evo_traj euroc ./groundtruth/mh_01_data.csv -p --plot_mode=xyz
畫某一次結果的軌跡
evo_traj tum ./result/mh_01/loop_result.csv -p --plot_mode=xyz
groundtruth.txt 為外部運動捕捉系統採集到的相機位姿,格式為(time, t x , t y , t z , q x , q y , q z , q w ),
vins-mono的估計結果需要按照tum格式輸出 因此要對**做一些調整。在一下兩個檔案中修改即可。
**修改過程:
visualization.cpp -> pubodometry ()
// write result to file 為了按照tum格式輸出 調換了位置
double turetime = header.stamp.tosec();
ofstream foutc
;foutc.setf(ios::fixed, ios::floatfield);
foutc << turetime <<" "
<< estimator.ps[window_size].x() << " "
<< estimator.ps[window_size].y() << " "
<< estimator.ps[window_size].z() << " "
<< tmp_q.x() << " "
<< tmp_q.y() << " "
<< tmp_q.z() << " "
<< tmp_q.w() << endl;
*pose_graph.cpp *
updatepath()
if (s**e_loop_path)
//一共有兩處
if (s**e_loop_path)
畫某乙個結果的軌跡
evo_traj tum ./loop_result.csv -p --plot_mode=xyz
對比結果
evo_rpe euroc ./groundtruth/mh_01_data.csv ./result/mh_01/vins_result_loop.csv -va -r full --plot
msckf
// foutc.setf(ios::fixed, ios::floatfield);
// foutc << odom_msg.header.stamp.tosec() << " "
// << odom_msg.pose.pose.position.x << " "
// << odom_msg.pose.pose.position.y << " "
// << odom_msg.pose.pose.position.z << " "
// << odom_msg.pose.pose.orientation.x << " "
// << odom_msg.pose.pose.orientation.y << " "
// << odom_msg.pose.pose.orientation.z << " "
// << odom_msg.pose.pose.orientation.w << endl;
evo 評測工具修改背景顏色和線條等引數
做slam的 最後做對比都會用到evo這個工具,但是做出來的圖背景是藍灰的,線條顏色差別也很近似。必須做下修改 1.在終端開啟到evo所在目錄,1 evo config show 這時會顯示所有引數,並且有解釋。2.修改圖的背景為白色 1 evo config set plot seaborn st...
使用evo工具評估ORB slam的結果
github官方位址,按照官方教程使用pypi安裝就可 pip install evo upgrade no binary evo可能需要提前 sudo apt install python3 pip 或者sudo apt install python pip參考部落格,記錄一下我的使用命令 evo...
c 效能評測工具
是gnu gnu binutils工具之一,預設情況下linux系統當中都帶有這個工具。編譯時新增 pg 選項 程式結束時生成 gmon.out 是迴圈程式 ctrl z 結束 生成分析報告 gprof b 二進位制程式 gmon.out report.txt gprof 不支援多執行緒應用 gpr...