实验室的服务器只有命令行界面,想跑ORB_SLAM2却显示了图形界面,会报这种错误:
terminate called after throwing an instance of 'std::runtime_error'
what(): Pangolin X11: Failed to open X display
想了好多方法,比如用端口把x11界面转到本地,安装了xshell+xmanager还有putty等等等一系列软件都没能成功地在本地显示界面,遂放弃。
如果是和我一样的朋友,可以把ORB_SLAM2/Examples/Monocular/mono_tum.cc中的这句话中的true改为false:
// Create SLAM system. It initializes all system threads and gets ready to process frames.
ORB_SLAM2::System SLAM(argv[1],argv[2],ORB_SLAM2::System::MONOCULAR,false);
这样就不会去调用线程进行图形化处理啦!改完之后还要重新使用./build.sh编译一下子,这样就只会生成轨迹文档,然后我们想要评估的话就使用evo库的evo_traj 等命令来评估这个轨迹!