网站
OpenCV 官方主页:http://opencv.org
OpenCV Github 主页:http://github.com/Itseez/opencv
OpenCV 开发版 Wiki 主页:http://code.opencv.org
一、Mac环境下命令方式搭建
1 | brew install python@3.9 |
二、Windows命令行搭建环境
- 下载并安装python3
- 配置python3环境变量
- 使用pip命令安装numpy等库
- 如果没有安装过python,则从https://www.python.org/ftp/python/3.7.8/找到python-3.7.8-amd64.exe下载python3,其他版本也类似
- 安装之后,在编辑环境变量的系统变量的Path里面添加python路径
- python命令可用后,可以执行python -m pip –version查看是否安装了pip命令。pip可以用来安装各种包
- 命令行安装python -m pip install numpy matplotlib opencv-python opencv-contrib-python
- 如果访问不了外网,可以手动下载文件https://pypi.org/project,在里面查找缺失的包,然后再使用python -m pip install xxx(下载的名字)
1 | C:\Users\15120>python -m pip install opencv-contrib-python --proxy=http://127.0.0.1:7890 |
其他解决方案:
如何在 Windows 上为 Python 安装 OpenCV?_windows python安装opencv-CSDN博客
OpenCV-python安装教程_opencv python安装-CSDN博客
三、Ubuntu 命令行搭建
- apt install python3
- 使用pip命令安装numpy、matplotlib和opencv库
- apt install …
四、Windows 源码下载
源码编译方式步骤
安装必要的库和工具
下载OpenCV源码
- OpenCV 源码地址: git clone https://github.com/opencv/opencv.git
- OpenCV-contribue 源码地址:git clone https://github.com/opencv/opecv_contrib.git
编译
在存放opencv源码目录中创建build目录:mkdir build
1
2
3
4
5存放源码目录,如
learnOpenCV
opencv
opencv-contrib
build运行cmake,生成编译脚本
选择opencv源码目录
选择编译目录
选择CPU架构
configure之后,最好把ffmpeg也下载了
点击下载,选择windows版本,下载之后将其添加到环境变量path中
把opencv_world这个选项也选中,之后有用
增加opencv-contrib选项
之后,额外添加一个模块,点击add entry
检查编译选项
生成编译脚本
最后点击generate,生成
打开opencv工程文件OpenCV.sln
- 选择输出版本,debug还是release,x64还是x86
- 进行编译,编译完成之后
- 然后点击install,再点击Build,文件都在build目录下的install文件夹中
- 选择输出版本,debug还是release,x64还是x86
五、Windows 下C++使用OpenCV库
创建C++工程文件
- 创建一个C++工程文件,
配置VS环境
- 根据编译的opencv源码格式,选择是debug还是release,是x64还是x86
- 打开solution exploer
- 在工程上右键鼠标,点击Properties(属性)
- 打开C/C++,在Additional include Directories中添加opencv头文件目录。Opnecv的头文件目录存放在你编译Opencv目录的install中的include目录中。E:\learnOpencv\build\install\include
- 打开Linker,在General中的Additional Library Directories中添加opencv库文件目录。存放在install中的Lib目录中,对于我的是E:\learnOpencv\build\install\x64\vc17\lib
- 打开Linker,在Input中的Additional Dependencies中添加opencv_world4100.lib
这个lib是你install文件夹中生成的 - 打开Configuration Properties,在Debugging中的Enviroment中设置PATH如下:
PATH=E:\learnOpencv\build\install\x64\vc17\bin,这个值和你自己编译的路径要对应上
编写测试代码进行测试
#include <iostream> // 包含输入输出流的头文件,用于输出信息 #include <opencv2/highgui.hpp> // 包含 OpenCV 的高层 GUI(图形用户界面)模块 #include <opencv2/core.hpp> // 包含 OpenCV 的核心模块 #include <opencv2/imgcodecs.hpp> // 包含图像编解码模块,用于读取和写入图像文件 using namespace cv; // 使用 OpenCV 的命名空间,避免每次都写 cv:: using namespace std; // 使用标准库的命名空间,避免每次都写 std:: int main() { Mat image; // 定义一个 Mat 对象,用于存储图像数据 image = imread("D:\\0.jpg"); // 从指定路径读取图片 "D:\\0.jpg" 并存储在 image 变量中 if (image.empty()) // 检查图像是否为空(即检查是否读取失败) { cout << "Could not open or find the image" << std::endl; // 输出错误信息 return -1; // 返回 -1,表示程序异常结束 } namedWindow("Display window", WINDOW_AUTOSIZE); // 创建一个窗口,窗口名称为 "Display window" // 使用 WINDOW_AUTOSIZE 选项让窗口自动适应图像大小 imshow("Display window", image); // 在窗口 "Display window" 中显示读取的图像 waitKey(0); // 等待用户按下任意键,参数 0 表示无限等待 // 按键后,窗口会关闭,程序结束 return 0; // 返回 0,表示程序正常结束 }
六、OpenCV开发工具
- pycharm
- vscode
- 下载安装
- code.vidualstudio.com
- 安装python插件
- 实操
- 下载安装
七、错误
语法报错:
路径问题:
Windows D:\\uuu\\xxx.jpg
linux/Mac: /Users/x.jpt