win10+vs2019+cmake+opencv4.10+opencv_contrib编译记录
第一章 环境配置
本机环境已经安装好vs2019和cmake。
第二章 下载opencv相关
1.Opencv4.10下载
下载链接:opencv
下载时选择"Sources"
2.opencv_contrib
下载链接:opencv_contrib
第三章 编译
1.文件摆放
将上述两个压缩包解压,放在同一文件夹下,并新建一个“opencv_build”文件夹。
2.Cmake-gui配置
在划线处,对应选择编译资源路径和编译结果路径
点击“Configure",选择Vs2019和X64,再点击"Finish".
在这期间将会出现一些报错,解决方法参考:https://blog.csdn.net/on_the_fly/article/details/124041070
再次点击"Configure"没啥报错就继续。
3.Cuda配置
在Search中搜索"CUDA",并全部勾选
在Search中搜索“opencv_world”,并勾选
在Search中搜索“OPENCV_ENABLE_NONFREE”,并勾选
在Search中搜索“OPENCV_EXTRA_MODULES_PATH”添加contrib模块。路径需要精确到opencv_contrib文件夹下的modules
配置结束后,继续点configure.
结束后,继续在Search中搜索“cuda”,找到
新版本的opencv应该是支持全部算力值,默认填入多个值,我这边就没有再改动了。
继续点击"Configure",没啥报错就继续点“Generate”。结束后点击“Open Project”,会启动vs2019.
第四章 Vs2019编译
1.debug版本编译
接下来按照上图操作,确认是x64的debug模式,找到modules下的opencv_world,右击鼠标找到属性->链接器->常规->启用增量链接。修改为“否”。
找到CMakeTargets下的INSTALL,右击鼠标,点击“生成“
等待运行结束。
编译结束,有一个错误:
LNK1104 无法打开文件“python310_d.lib” opencv_python3 D:\work\opencv410\opencv_build\modules\python3\LINK 1
直接忽视没管,因为我没打算用python。
2.debug版本测试
编译结束后,打开测试代码,我的测试代码是Yolov5的调用opencv读取onnx文件,进行目标检测的代码。接下来将进行配置。
VC++目录->包含目录中,按照如下图所示配置,请注意替换成自己的文件夹
VC++目录->库目录下
链接器->常规中
打开opencv_build\install\x64\vc16\bin文件夹,将图中几个文件拷贝到C:\Windows\System32下
3.Release编译
这里和debug版本编译一样的,只需要将模式切换到Release下,重复上述debug操作就行。两次编译的文件会放在同一文件夹下。