Windows编译OpenCV 4.5.1
- 准备工作
- 安装Visual Studio 2019
- 安装Cmake
- 编译OpenCV
- 生成项目解决方案
- 部署OpenCV项目
- 测试
准备工作
- 下载OpenCV
- 下载opencv_contrib
- 下载Cmake
- 下载Visual Studio 2019
安装Visual Studio 2019
- 选择 Node.js、使用C++的桌面开发、通用Windows平台开发
- 安装位置更改为D盘
- 添加Windows10 SDK(10.0.183662.0)
- 下载时安装
安装Cmake
- 选择添加系统环境变量
- 更改安装路径到D盘
编译OpenCV
-
Step 1. 新建一个
OpenCV
文件夹,同时将opencv
、opencv_contrib-4.5.5
解压后放在该文件夹下,路径不要有中文
-
Step 2. 打开CMake,第一个选择
D:/OpenCV/opencv/sources
,第二个选择D:/OpenCV4.5.5
-
Step 3. 此时点击
configure
,跳出配置页面
第一栏:对应的VS版本Visual Studio 16 2019
;
第二栏:选择的是编译成是64位的OpenCV_contrib工程文件;
第三栏:跳过;
第四栏:Use default native compilers
最后点击Finish几分钟后即可完成编译
-
Step 4. Configure完成有红色的部分重新按,直到全部变白。
-
Step 5. 在Search中依次输入以下内容,取消勾选对应选项
python test java OPENCV_GENERATE_SETUPVARS # 会造成'cmake' will raise "OpenCVGenSetupVars.cmake" error
-
Step 6. 在Search中依次输入以下内容,勾选对应选项
BUILD_EXAMPLES BUILD_opencv_world
-
Step 7. 为
OPENCV_EXTRA_MODULES_PATH
添加opencv_contrib的modules的路径OPENCV_EXTRA_MODULES_PATH D:/OpenCV/opencv_contrib-4.5.5/modules
-
Step 8. 若用SURF,SIFT算法的话,勾选;
OPENCV_ENABLE_NONFREE
-
Step 9. 若需要用到cuda 的话,搜索框内输入cuda,全部打钩
-
Step 10. 点击Configure 进行编译,在 Configuring done 后,再次搜索框输入cuda,查看计算机GPU 计算能力,把CUDA_ARCH_BIN中将小于自己显卡算力的数值(7.5)都删除。
-
Step 11. 点击Configure,由于
ffmpeg
、ippicv
、face_landmark_model
无法下载,编译会发生错误
解决方案:
打开D:\OpenCV4.5.1\CMakeDownloadLog.txt
文件,复制下载链接(2)到浏览器,下载对应文件,在保存时直接将文件名称改为对应的名字(不要保存.txt后再改名字),并复制到文件下对应的位置(1)。
成功后所有的文件都能找到:完整的.cache文件
-
Step 12. 按generate、创建OpenCV工程
生成项目解决方案
-
Step 1. 点击open project就能直接打开工程了(或用VS2019打开D:\OpenCV4.5.5\OpenCV.sln)
打开后如图所示:
-
Step 2. 选择Debug x64 或 Release x64
-
Step 3. 重新生成解决方案
解决方案资源管理器-> CMakeTargets -> ALL_BUILD -> 右键-> 重新生成解决方案
-
Step 4. 重新生成INSTALL
INSTALL-右键-> 仅用于项目-> 仅生成INSTALL
-
Step 5. 若需要 Release版本,可以选择Release x64,重新进行上述步骤
-
Step 6. 添加系统环境变量
右键电脑-属性-> 高级系统设置->环境变量-> 系统变量-> path(用户变量,添加:D:\OpenCV4.5.5\install\x64\vc16\bin
部署OpenCV项目
-
Step 1. 创建新项目
-
Step 2. 创建空项目
-
Step 3. 视图-> 其他窗口-> 属性管理器
-
Step 4. 选择Debug,x64(一定要选择,否则会出现找不到main)
-
Step 5. 右键-> 添加新项目属性列表:
# Debug Microsoft.Cpp.x64.Debug.props # Release Microsoft.Cpp.x64.Release.props
-
Step 6. 配置属性页(通用属性-VC++目录-包含目录),库目录(通用属性-VC++目录-库目录)
包含目录中添加D:\OpenCV4.5.5\install\include D:\OpenCV4.5.5\install\include\opencv2
库目录中添加
D:\OpenCV4.5.5\install\x64\vc16\lib
链接器中添加# Debug opencv_world455d.lib # Release opencv_world455.lib
测试
-
新建cpp文件
#include<iostream> #include<opencv2/opencv.hpp> using namespace std; using namespace cv; int main() { Mat img = imread("D:/Material/Image/panda.jpg"); imshow("test", img); waitKey(0); return 0; }
编程测试时,如果报找不到程序入口什么的dll的错,需要把D:\opencv4.5.5\install\x64\vc16\bin目录下的opencv_world.dll文件复制到C:\Windows\System32目录下。
Windows编译OpenCV 4.5.1
- 准备工作
- 安装Visual Studio 2019
- 安装Cmake
- 编译OpenCV
- 生成项目解决方案
- 部署OpenCV项目
- 测试
准备工作
- 下载OpenCV
- 下载opencv_contrib
- 下载Cmake
- 下载Visual Studio 2019
安装Visual Studio 2019
- 选择 Node.js、使用C++的桌面开发、通用Windows平台开发
- 安装位置更改为D盘
- 添加Windows10 SDK(10.0.183662.0)
- 下载时安装
安装Cmake
- 选择添加系统环境变量
- 更改安装路径到D盘
编译OpenCV
-
Step 1. 新建一个
OpenCV
文件夹,同时将opencv
、opencv_contrib-4.5.5
解压后放在该文件夹下,路径不要有中文
-
Step 2. 打开CMake,第一个选择
D:/OpenCV/opencv/sources
,第二个选择D:/OpenCV4.5.5
-
Step 3. 此时点击
configure
,跳出配置页面
第一栏:对应的VS版本Visual Studio 16 2019
;
第二栏:选择的是编译成是64位的OpenCV_contrib工程文件;
第三栏:跳过;
第四栏:Use default native compilers
最后点击Finish几分钟后即可完成编译
-
Step 4. Configure完成有红色的部分重新按,直到全部变白。
-
Step 5. 在Search中依次输入以下内容,取消勾选对应选项
python test java OPENCV_GENERATE_SETUPVARS # 会造成'cmake' will raise "OpenCVGenSetupVars.cmake" error
-
Step 6. 在Search中依次输入以下内容,勾选对应选项
BUILD_EXAMPLES BUILD_opencv_world
-
Step 7. 为
OPENCV_EXTRA_MODULES_PATH
添加opencv_contrib的modules的路径OPENCV_EXTRA_MODULES_PATH D:/OpenCV/opencv_contrib-4.5.5/modules
-
Step 8. 若用SURF,SIFT算法的话,勾选;
OPENCV_ENABLE_NONFREE
-
Step 9. 若需要用到cuda 的话,搜索框内输入cuda,全部打钩
-
Step 10. 点击Configure 进行编译,在 Configuring done 后,再次搜索框输入cuda,查看计算机GPU 计算能力,把CUDA_ARCH_BIN中将小于自己显卡算力的数值(7.5)都删除。
-
Step 11. 点击Configure,由于
ffmpeg
、ippicv
、face_landmark_model
无法下载,编译会发生错误
解决方案:
打开D:\OpenCV4.5.1\CMakeDownloadLog.txt
文件,复制下载链接(2)到浏览器,下载对应文件,在保存时直接将文件名称改为对应的名字(不要保存.txt后再改名字),并复制到文件下对应的位置(1)。
成功后所有的文件都能找到:完整的.cache文件
-
Step 12. 按generate、创建OpenCV工程
生成项目解决方案
-
Step 1. 点击open project就能直接打开工程了(或用VS2019打开D:\OpenCV4.5.5\OpenCV.sln)
打开后如图所示:
-
Step 2. 选择Debug x64 或 Release x64
-
Step 3. 重新生成解决方案
解决方案资源管理器-> CMakeTargets -> ALL_BUILD -> 右键-> 重新生成解决方案
-
Step 4. 重新生成INSTALL
INSTALL-右键-> 仅用于项目-> 仅生成INSTALL
-
Step 5. 若需要 Release版本,可以选择Release x64,重新进行上述步骤
-
Step 6. 添加系统环境变量
右键电脑-属性-> 高级系统设置->环境变量-> 系统变量-> path(用户变量,添加:D:\OpenCV4.5.5\install\x64\vc16\bin
部署OpenCV项目
-
Step 1. 创建新项目
-
Step 2. 创建空项目
-
Step 3. 视图-> 其他窗口-> 属性管理器
-
Step 4. 选择Debug,x64(一定要选择,否则会出现找不到main)
-
Step 5. 右键-> 添加新项目属性列表:
# Debug Microsoft.Cpp.x64.Debug.props # Release Microsoft.Cpp.x64.Release.props
-
Step 6. 配置属性页(通用属性-VC++目录-包含目录),库目录(通用属性-VC++目录-库目录)
包含目录中添加D:\OpenCV4.5.5\install\include D:\OpenCV4.5.5\install\include\opencv2
库目录中添加
D:\OpenCV4.5.5\install\x64\vc16\lib
链接器中添加# Debug opencv_world455d.lib # Release opencv_world455.lib
测试
-
新建cpp文件
#include<iostream> #include<opencv2/opencv.hpp> using namespace std; using namespace cv; int main() { Mat img = imread("D:/Material/Image/panda.jpg"); imshow("test", img); waitKey(0); return 0; }
编程测试时,如果报找不到程序入口什么的dll的错,需要把D:\opencv4.5.5\install\x64\vc16\bin目录下的opencv_world.dll文件复制到C:\Windows\System32目录下。