前言
OpenCV是一个跨平台的计算机视觉和机器学习软件库,具有广泛的应用领域和强大的功能。在实际使用中,需要移植到不同的平台上,如何编译源码就比较重要。
opencv下载
opencv 下载 https://github.com/opencv/opencv/
opencv_contrib下载
opencv_contrib 下载 https://github.com/opencv/opencv_contrib
CMake 下载
cmake下载 https://cmake.org/download/
说明:本人用的版本是 opencv4.8.0,opencv_contrib4.8.0
源码编译
打开CMake
打开CMake,设置opencv源代码路径以及编译后存放的路径:
点击Configure按钮,选择编译器与编译器路径:
配置CMake
勾选WITH_QT
勾选WITH_OPENGL
去掉WITH_PROTOBUF
勾选BUILD_opencv_world
添加opencv_contrib路径
去掉不需要的模块
可能出现的问题
打开opencv4.8.0/.cache 里各个目录文件可以看到文件内容大小都为空,这是因为这些文件下载路径在国外,需要科学上网。
解决方法:打开build/CMakeDownloadLog.txt ,通过下载路径将文件下载下来,然后将文件放到安装路径下,替换掉对应的空文件。 注意文件名称也要对应。
其他类似的问题,按照上面操作一一替换即可;
碰到的问题:当我按照上需操作一一替换文件后,再次点击“Configure”按钮后,部分模块还是下载失败,查看后发现文件内容又重新变成空的了,不知道是什么原因,怀疑是上面文件里提供的下载路径有问题。有知道的可以评论区告诉下。
***解决的方法:尝试从官网上下载对应文件,一一替换后,然后。。。然后。。。它就好了。 。。。。。。。。 ***
下载路径: https://github.com/opencv/opencv_3rdparty
编译
当解决完所有错误后,点击“Generate”按钮生成编译文件。
进入build目录
打开PowerShell窗口执行
mingw32-make -j4
mingw32-make install
完成后,可以去对应安装目录看到编译后的文件了。