OpenCV3.2.0+opencv_contrib-3.2.0+VS2015+cmake
更新:HHH   时间:2023-1-7


    这篇文章是安装OpenCV3.2.0的扩展库opencv_contrib-3.2.0的介绍。


一、先说使用的配置环境及准备工作:

1.OpenCV-3.2.0-vc14

2.opencv_contrib-3.2.0下载:https://github.com/opencv/opencv_contrib/releases

3.vs2015

4.cmake下载:http://www.cmake.org/,点右上角的Download,我选的是cmake-3.8.0-win64-x64.zip(免安装):

5.新建文件夹命名为mybuildopencv3.2.0,用来放置合成的工程:

二、Cmake编译

6.打开在下载文件bin中的cmake_gui.exe。

7.cmake第一行输入的是opencv的源码即opencv的source文件,第二行是编译好的文件放置处即mybulid文件夹。        cmake编译过程主要有两次编译,一次中途加载设置。第一次编译,设置选项vs2015 win x64,成功后done提志。

   

8.中途设置的方法是:在配置表中找到“OPENCV_EXTRA_MODUALS_PATH”,设置其参数值为opencv_contrib源码包中的modules目录。再按下configure.成功后显示configuring done。可能会有红色的框条出现,再重复一次configure,更新后红色消除。也有可能是ippcv下载路径被屏蔽的愿因。


9.然后点Generate,提示Generate done。注意:会出现一直下载protobuf-cpp-3.1.0.tar.gz,那么就手动下载它并放在:Cmake编译所需 存放位置: D:\MyConfig\opencv_contrib-master\modules\dnn\.download\bd5e3eed635a8d32e2b99658633815ef\v3.1.0 处。

三、在vs2015上的设置与再生成

10.cmake编译后,用VS2015打开在mybulid文件中的OPencv.sln。

11.打开工程--->右键--->重新生成解决方案。注意你选择的是debug还是release,这就是debug版与release版的区别。bebug版有检测数据是否溢出的功能,release相对反应速度快。

12.重新生成的时间大约20分钟(time of toilet!),生成的效果如下,如果有失败,原因是GITHUB上的opencv_contrib版本高,所以请更新你的opencv。

13.生成Intall安装文件,右键INSTALL-->仅用于项目-->仅生成INTALL(B),生成一个install文件夹。

14.任意打开一个C++文件:把生成的install看成新的opencv文件,与vs2015进行配置。

可执行文件目录:E:\Program Files %28x86%29\opencv-3.2.0-vc14\mybuild-opencv3.2.0\install\x64\vc14\bin

包含文件目录:E:\Program Files (x86)\opencv-3.2.0-vc14\mybuild-opencv3.2.0\install\include

                       E:\Program Files (x86)\opencv-3.2.0-vc14\mybuild-opencv3.2.0\install\include\opencv2

                       E:\Program Files (x86)\opencv-3.2.0-vc14\mybuild-opencv3.2.0\install\include\opencv

库文件目录:E:\Program Files (x86)\opencv-3.2.0-vc14\mybuild-opencv3.2.0\install\x64\vc14\lib


链接库:

注意:小技巧:往vs里面输入上面的.lib是不是很崩溃? 
          在该文件夹命令行搞定

E:\opencv\cv3.2binary\install\x64\vc12\lib>dir /b /w >libInfo.txt

E:\opencv\cv3.2binary\install\x64\vc12\lib>notepad libInfo.txt

libInfo.txt的内容为:

opencv_aruco320d.lib

opencv_bgsegm320d.lib

opencv_bioinspired320d.lib

opencv_calib3d320d.lib

opencv_ccalib320d.lib

opencv_core320d.lib

opencv_datasets320d.lib

opencv_dnn320d.lib

opencv_dpm320d.lib

opencv_face320d.lib

opencv_features2d320d.lib

opencv_flann320d.lib

opencv_fuzzy320d.lib

opencv_highgui320d.lib

opencv_imgcodecs320d.lib

opencv_imgproc320d.lib

opencv_line_descriptor320d.lib

opencv_ml320d.lib

opencv_objdetect320d.lib

opencv_optflow320d.lib

opencv_phase_unwrapping320d.lib

opencv_photo320d.lib

opencv_plot320d.lib

opencv_reg320d.lib

opencv_rgbd320d.lib

opencv_saliency320d.lib

opencv_shape320d.lib

opencv_stereo320d.lib

opencv_stitching320d.lib

opencv_structured_light320d.lib

opencv_superres320d.lib

四、系统环境变量设置:比较简单,详情可见上篇博文。

部分不恰当的操作、设置会导致继承值中的路径(变量) 出现错误 或者添加了错误的路径(变量)到继承值中 从而导致VS编译器在生成项目exe 或 obj时 因为找不到相应的lib等类型文件而不发生成正确的项目的程序。

修改它的方法如下:


打开如下目录:C:\Users\username(Administrator)\AppData\Local\Microsoft\MSBuild\v4.0  (其中uername是你管理员用户的名称)

win xp 下的目录为: C:\Documents and Settings\Administrator\Local Settings\Application Data\Microsoft\MSBuild\v4.0

 

打开文件 Microsoft.Cpp.x64.user.props  修改配置文件中错误路径值。

 

里面文件的内容一般如下:

其中: <IncludePath>  </IncludePath>  是要包含的目录

          <LibraryPath>  </LibraryPath> 是要包含的库目录

           <PropertyGroup> </PropertyGroup>  里面是链接器->输入->附加依赖项


返回开发技术教程...