1.libfreenect的CMakelist.txt修改
# These defaults can be overriden by -DCMAKE_CXX_FLAGS=""
set(CMAKE_CXX_FLAGS "${C_CXX_FLAGS_DEFAULT} ${CMAKE_CXX_FLAGS} -std=c++11")
# C++ Configurations
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -O0 -g -DDEBUG=1 -std=c++11")
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -std=c++11")
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELEASE} -g")
2.安装并运行elasticfusion
在git上下载elasticfusion按照readme和build.sh安装。
最后在GUI的make的过程中用ccmake。
cd ../../GUI mkdir build cd build ccmake ../src make -j8
按t进入高级配置窗口,OpenNI2的lib路径不要选根目录那个(默认是这个),改成我们自己装的那个libopenni2.so (第1步安装的)
个人理解:
为什么要这么做呢,因为新的Ubuntu版本,可以直接install libopenni。但是libopenni2.so没有链接到libFreenectDriver.so Kinect相机驱动,所以需要用已连接好的驱动。
3.
./ElasticFusion -L dyson_lab.klg也行
./ElasticFusion 终于成功
参考文章: