利用cmake3.13.0编译opencv3.4.4、opencv-contrib3.4.4和VTK8.2,并在VS2017中配置
由于要在课题中用到viz,所以必须在opencv中添加VTK,不得已又一次重新编译了一次opencv。
所需资源:
opencv3.4.4
opencv-contrib3.4.4
VTK8.2
cmake3.12.3
VS2017
步骤
一、安装cmake3.13.0
我采用的是免安装版本,这就不细说了。
二、安装VTK8.2
打开cmake-gui,在where is the source code输入D:/VTK/VTK-8.2.0,在where to build thebinaries输入D:/VTK/build,然后点击Configure,弹窗选择Visual Studio 15 2017 Windy4,开始configure,下方出现Configure done字样。
选择:
1、选中BUILD_SHARED_LIBS(默认)
2、取消BUILD_EXAMPLES(默认),如果深入研究VTK的同学,可以勾选上,学学例子
3、取消BUILD_TESTING(默认)
4、install路径,默认C:/Program Files/VTK,默认安装在C盘系统目录下,当然我们也可以自己设置路径:(我的在D:\VTK\install下,这个可以自己随意)
再点击Generate,下方Generate done出现,完成。
接着用VS2017打开VTK——build目录下的VTK.sln,在ALL_BIULD上右键,选择“生成”。
完成后,右键INSTALL——仅用于项目——仅生成INSTALL。
注意,Debug和Release版本需要分开编译。
二:安装opencv3.4.4
同样打开cmake-gui,在where is the source code输入D:/opencv3.4.4/opencv-3.4.4,在where to build thebinaries输入D:/opencv3,4,4/build,然后点击Configure,弹窗选择Visual Studio 15 2017 Windy4,开始configure,name-value栏会出现一片红;接着在name-value栏里面
1、找到OPENCV_EXTRA_MODULES_PATH,填写D:\opencv3.4.4\opencv_contrib-3.4.4(注意contrib版本号要与opencv匹配)
2、找到VTK_DIR,填写F:/soft/opencv/VTKBiuld
3、勾选WITH_VTK.
4、勾选OPENCV_ENABLE_NONFREE(不然xfeatures2d用不了)
5、勾选BIULD_opencv_world(勾选此项,编译之后会生成opencv_world.lib)。点击configure按钮
可能会出现opencv_ffmpeg.dll下载不了的情况,可以自己手动下载,然后放置到D:\opencv3.4.4\build\3rdparty目录中。opencv_ffmpeg.dll的下载地址可以在build目录下的CMakeDownloadLog.txt中查看。
再点击Generate,完成。
接着点击build目录下的OpenCV.sln进行编译。与前面的VTK编译类似。
三、配置
在环境变量中,添加D:\opencv3.4.4\install\x64\vc15\bin和D:\VTK\install\bin。
打开VS2017新建win32控制台程序。
右键Debug|x64——属性;
在C++目录——包含目录添加:
D:\opencv3.4.4\install\include
D:\opencv3.4.4\install\include\opencv
D:\opencv3.4.4\install\include\opencv2
D:\VTK\install\include\vtk-8.2
库目录添加:
D:\opencv3.4.4\install\x64\vc15\lib
D:\VTK\install\lib
链接器——输入——附加依赖项,添加:
opencv_world344d.lib
opencv_img_hash344d.lib
D:\VTK\install\lib\*-8.2.lib
已经打包编译好的文件下载:https://download.****.net/download/weixin_45790559/12167520