opencv源码编译及配置完整版教程(win10+vs2019+opencv-4.4.0+opencv_contrib-4.4.0)

opencv源码编译及配置完整版教程(win10+vs2019+opencv-4.4.0+opencv_contrib-4.4.0)

一、下载vs2019

官网下载:https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/
在这里插入图片描述
下载对应的2019版本,免费的community版本即可,安装按照正常的步骤安装完成即可。

二、下载opencv源码及CMake

Opencv一般从github上下载:https://github.com/opencv
在这里插入图片描述
下载opencv和opencv_contrib,分别点击对应位置进入:
在这里插入图片描述
然后点击tags,选择自己需要的版本:
在这里插入图片描述
CMake需要到对应的官网下载:https://cmake.org/
其中opencv4.4.0、opencv_contrib-4.4.0、cmake-3.24.0-rc2-windows-x86_64.msi我已下载好了,百度网盘下载地址:https://pan.baidu.com/s/1Het-G2PcJ8sXYOhvZk5Hug;提取码:opcv 。

三、生成opencv工程

先在你想建的地方建一个openCV文件夹。里面再建一个opencv-build文件夹,用来放置合成的工程,将下载的opencv和opencv_contrib也解压到此文件夹内:
在这里插入图片描述
CMake安装好了之后,到安装的位置处打开bin文件夹中的cmake_gui.exe:
在这里插入图片描述
打开后,下图第一个红圈输入Opencv的sources目录(注意:不是opencv_contrib的目录);第二个红框输入你自定义的输出目录(就是之前上面我们已经建好的opencv-build)。最后点左下角的Configure:
在这里插入图片描述
第一次编译按configue,设置选项vs2019 win x64,成功后有done的标志
在这里插入图片描述
完成上述后找到OPENCV_EXTRA_MODULES_RATH一项,添加你刚刚解压的opencv_contrib中的modules目录,其中要把OPENCV_ENABLE_NONFREE(下图红框上面一行)选上,最后点击Generate开始编译。记住这是是两个步骤:1、填写目录。2、勾选目录上一行! ==这两项缺一不可以,不然后面调试的时候,会出现许多错误导致配置失败! 注意路径不要复制,需要通过cmake来选择路径!
在这里插入图片描述
如果想之后生成的opencv的lib和dll包含在一个文件opencv_world.lib和opencv_world.dll内,需要找到 BUILD 将其下的 BUILD_opencv_world 选择上。
在这里插入图片描述
最后点击Generate。完成后左下角显示Configuring done,Generating done。完成之后如果在你的输出文件夹中找到OpenCV.sln文件,即表明编译成功完成。

四、编译opencv工程

找到opencv.sln文件,用vs2019打开: 当打开了生成的opencv项目,可以选择想要生成的库文件的Debug版本或Release版本 默认是Debug版本
在这里插入图片描述
第一步:选择 CMakeTargets 中的 ALL_BUILD 或者 解决方案 Solution ‘OpenCV’,右键 ->生成,
在这里插入图片描述
第二步:生成结束如果没有失败的,在选择 INSTALL -> 右键 -> 仅当前项目 -> 只生成 INSTALL。 如果需要release版本,选择release版后 重复 第一步和第二步
在这里插入图片描述

五、使用opencv

当在 VS2019 完成了生成 INSTALL ,那么 opencv 的库就已经生成好了在我们的 opencv-build 文件夹下的 install 文件夹中,包括了 bin、etc、include、x64、文件夹 和一些文件,这就和官网提供的opencv包里build文件夹下一样的结构了
在这里插入图片描述
将include文件夹下的opencv2拷贝到自己程序的include文件夹下:
在这里插入图片描述
再项目配置属性->C/C+±>常规下的附加包含目录包含对应的include目录:
在这里插入图片描述
将install下的dll和lib拷贝到自己程序的生成目录下:
在这里插入图片描述
再项目配置属性->链接器->常规下的附加库目录包含对应的生成目录:
在这里插入图片描述
再项目配置属性->链接器->输入下的附加依赖项填入对应的lib:
在这里插入图片描述
这样就可以正常使用了。

猜你喜欢

转载自blog.csdn.net/zhoufm260613/article/details/126107994