在一切准备工作都做好后,运行TUM RGBD的任意一个序列时,发现在视频序列结束时,窗口就会灰屏卡住。通过debug发现是pangolin库的一个函数卡住了,似乎是该库新版本的一个BUG,但我们只需注释掉该行代码即可。
具体代码路径如下
打开rgbd_tum.cc文件,程序卡住的语句如下
我们进入SLAM.Shutdown函数,找到出现问题的语句
if(mpViewer){
pangolin::BindToContext("ORB-SLAM2: Map Viewer");
把这两行注释掉就可以正常生成相机轨迹和关键帧轨迹文件了。
终端还会出现
QObject::~QObject: Timers cannot be stopped from another thread
但是不影响我们的结果