感謝白巧克力亦唯心提供的SVO_edgelet代碼,作者博客:https://blog.csdn.net/heyijia0327/article/details/61682150
程序地址:
https://github.com/HeYijia/svo_edgelet
此文主要記錄調試作者代碼出現的一些小問題,供大家參考。
配置環境:
1、使用的是ubuntu14.04系統
最好不要使用虛擬機,我使用虛擬機去調試,最后可以生成可執行的二進制文件,但是程序運行不了,顯示段錯誤,最后改用ubuntu14.04系統上可以成功運行代碼。
2、按照網站作者提示的步驟按照相應的依賴項,另外作者增加了可視化功能,要自己去安裝pangolin,下面是pangolin的github地址和參考的安裝步驟
https://github.com/stevenlovegrove/Pangolin
https://www.cnblogs.com/liufuqiang/p/5618335.html
3、編譯過程中可能會提示se3、 libSophus.so之類的錯誤,但是Sophus安裝顯示成功,原因可能是程序找不到sophus的源文件
解決方法:在文件的CmakeLists.txt文件中加入下面的語句
find_package(Sophus REQUIRED) include_directories(${Sophus_INCLUDE_DIRS}) set(Sophus_LIBRARIES libSophus.so)
然后在下面找到# Create svo library,在里面加入下面語句
# Create svo library ADD_LIBRARY(svo SHARED ${SOURCEFILES}) TARGET_LINK_LIBRARIES(svo ${LINK_LIBS} ${Pangolin_LIBRARIES} ${Sophus_LIBRARIES} )
4、成功編譯通過后但是程序運行不了,你的數據集文件路徑沒有修改
修改路徑主要修改test文件夾的三個文件,打開進去修改成你自己的數據集文件目錄,下面附帶數據集的下載鏈接
http://www.sohu.com/a/219232053_715754
作者test_pipel_euroc.cpp使用的是EuRoC的MH_01_easy系列的數據集,其他的也可以下載來試下,不過要相應改下相機的參數;test_pipeline.cpp使用的是TUM的數據集freiburg2_desk。