天天看点

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

注意:本文选择的库都是比较新的版本,只能用vs2012及以上版本进行编译,另外本文用的是64位 win7操作系统,其他系统需要做相应更改

1.Opencv编译

1.1解压opencv:

运行oencv-3.1.0即可,选好路径,一路下一步。

1.2 利用cmake 编译opencv:

a、设置opencv源代码位置,以及建立工程的文件夹路径(需要自己建立),下图为本文路径

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

b、点击Configure,选择编译器,本文用vs2012win64

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam
mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

c、点击Generate

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

1.3、利用vs2012生成opencv库

a、此时已经在buildvs2012文件夹中建立了opencv的vs2012工程,打开OpenCV.sln

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

b、右键ALL_build,选择生成,等待结束

2.wxWidgets编译

2.1解压,运行wsMSW-3.0.2,选择路径,一路下一步

2.2 vs2012编译wxWidgets(解压后已经有vs2012工程,不用cmake)

a、运行vs2012的VisualStudio Tools中的Vs2012 x64兼容工命令提示符

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

b、修改命令提示符路径为wxWidgets下的build\msw,例如本文路径D:\wxWidgets-3.0.2\build\msw,在命令提示符中输入

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

c、编译,在命令提示符中输入:

nmake -f makefile.vc BUILD=release SHARED=1RUNTIME_LIBS=dynamic DEBUG_INFO=0 VENDOR=mrpt USE_OPENGL=1 TARGET_CPU=amd64

nmake -f makefile.vc BUILD=debug SHARED=1 RUNTIME_LIBS=dynamic DEBUG_INFO=1VENDOR=mrpt USE_OPENGL=1 TARGET_CPU=amd64

3、编译mrpt

3.1解压

3.2配置cmake(步骤和opencv类似,需要有部分修改)

A、设置源代码位置及工程文件夹位置

B、点击configure设置编译器

C、配置参数

把参数MRPT_HAS_FFMPEG_WIN32后面的勾去掉

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

设置OpenCV_DIR为前面opencv用cmake生成后的工程文件夹,设置wxWidgets_ROOT_DIR为前面wxWidgets解压后的根目录

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

D、再次点击Configure,如果配置正确,下方不会出现红色字体,如有红色字体,配置有错误,配置正确后点击Generate,即可生成vs2012的mrpt工程。

3.3用vs2012编译mrpt

A、打开刚刚用camke生成好的工程文件mrpt.sln

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

B、工程打开后有如下文件夹,此时不要用ALL_BUILD生成(编译有顺序,顺序不对编译出错会导致编译重新进行,耽误时间),先右键module,生成,然后是3rd party生成,uint tests生成,applications生成,,CMake Targets生成。

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

4、设置环境变量

我的电脑->系统属性->系统高级设置->环境变量,设置系统变量里面的Path,在原有的路径后面加入opencv和wxWidgets 动态库的路径,不同路径用;隔开,本文路径为:

D:\wxWidgets-3.0.2\lib\vc_x64_dll;D:\opencv\opencv\buildvs2012\bin\Debug;D:\opencv\opencv\buildvs2012\bin\Release

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam
mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

5.测试rbpf-slam

如果全部配置及过程正确,此时可以运行rbpf-slam的demo,找到rpbf-slam.exe,本文在D:\Program Files\mrpt-1.4.0\vs2012build\bin\Debug文件夹中,此时运行rbpf-slam需要两个文件:

1、配置文件xxx.ini,见https://raw.githubusercontent.com/MRPT/mrpt/master/share/mrpt/config_files/rbpf-slam/gridmapping_optimal_sampling.ini

2、数据文件xxx.rawlog,见https://github.com/MRPT/mrpt/blob/master/share/mrpt/datasets/2006-01ENE-21-SENA_Telecom%20Faculty_one_loop_only.rawlog

xxx.ini放入和rbpf-slam.exe相同的文件夹,本文是D:\Program Files\mrpt-1.4.0\vs2012build\bin\Debug,更改配置文件中的参数rawlog_file为xxx.rawlog文件路径

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

运行cmd,cd到rbpf-slam.exe位置,运行rbpf-slam config.ini,如果一切正常,就会生成地图

mrpt编译及运行rbpf-slam demo1.Opencv编译2.wxWidgets编译3、编译mrpt4、设置环境变量5.测试rbpf-slam

继续阅读