使用evo评估ORB-SLAM3 精度(2)-非ros环境下运行orbslam3 tum数据集,并显示轨迹数据

  • Post author:
  • Post category:其他


本文介绍非ros环境下运行orbslam3 tum数据集,并显示轨迹数据。总体而言,这个部分都是orbslam3写好的代码,实现它比较简单。在ros下,可参考博客


​​​​​​ORB-SLAM3轨迹保存与evo评测_Barry_123的博客-CSDN博客_orbslam3保存地图

1.运行代码,生成轨迹文件

下载数据集,运行(此部分略)

我运行的是双目+IMU,注意 \orb_slam3-master\Examples\Stereo-Inertial\stereo_inertial_tum_vi.cc中

// Stop all threads

SLAM.Shutdown();

// Save camera trajectory

std::chrono::system_clock::time_point scNow = std::chrono::system_clock::now();

std::time_t now = std::chrono::system_clock::to_time_t(scNow);

std::stringstream ss;

ss << now;

if (bFileName)

{


const string kf_file =  “kf_” + string(argv[argc-1]) + “.txt”;


const string f_file =  “f_” + string(argv[argc-1]) + “.txt”;


SLAM.SaveTrajectoryEuRoC(f_file);


SLAM.SaveKeyFrameTrajectoryEuRoC(kf_file);

}

else

{

SLAM.SaveTrajectoryEuRoC(“CameraTrajectory.txt”);

SLAM.SaveKeyFrameTrajectoryEuRoC(“KeyFrameTrajectory.txt”);

}

orbslam3默认输出了轨迹,因此不用改任何东西。即可在路径~\orb_slam3-master\Examples中生成轨迹文件.txt(euro数据集路径貌似不同,在~\orb_slam3-master\目录下)

2、evo显示orbsalm轨迹

生成的txt轨迹是tum类型数据集,可以由evo直接画出来。比如,在路径~\orb_slam3-master\Examples\下,运行evo_traj tum xxx.txt –plot 即可显示单个路径,其他可参考别的命令格式。

未完,后续见如下链接


1.   使用evo评估ORB-SLAM3 精度(3)–TUM数据集APE、RPE分析_Terry Cao 漕河泾的博客-CSDN博客



版权声明:本文为weixin_45834800原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。