使用evo工具評測SLAM

2022-09-08 05:33:13 字數 2506 閱讀 8215

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...