一、OpenCV 简介
OpenCV(Open Source Computer Vision Library)是一个开源计算机视觉和机器学习软件库,提供了超过 2500 个优化的算法,用于实时图像处理、视频分析、对象识别、人脸检测、机器学习等任务。
Python 提供了对 OpenCV 的完整绑定接口:cv2
。
二、安装 OpenCV
2.1 使用 pip 安装(推荐)
pip install opencv-python
pip install opencv-python-headless # 若不需要 GUI 窗口(如服务器环境)
2.2 使用 Anaconda 安装
conda install -c conda-forge opencv
2.3 验证安装
import cv2
print(cv2.__version__)
三、OpenCV 基本操作
3.1 读取并显示图像
import cv2img = cv2.imread('example.jpg')
cv2.imshow('Image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
注意:某些平台不支持
cv2.imshow
,建议使用 Jupyter 的 matplotlib 显示。
3.2 灰度图转换
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
3.3 图像保存
cv2.imwrite('gray.jpg', gray)
四、摄像头访问与视频处理
cap = cv2.VideoCapture(0)while True:ret, frame = cap.read()if not ret:breakcv2.imshow('Live', frame)if cv2.waitKey(1) & 0xFF == ord('q'):breakcap.release()
cv2.destroyAllWindows()
五、常见图像处理功能
5.1 图像缩放与裁剪
resized = cv2.resize(img, (200, 200))
cropped = img[50:150, 100:200]
5.2 边缘检测
edges = cv2.Canny(img, 100, 200)
5.3 模糊处理
blur = cv2.GaussianBlur(img, (5, 5), 0)
六、图像绘图功能
cv2.line(img, (0, 0), (100, 100), (0, 255, 0), 2)
cv2.rectangle(img, (50, 50), (150, 150), (255, 0, 0), 2)
cv2.circle(img, (100, 100), 50, (0, 0, 255), -1)
七、常见问题
Q1: 安装失败或速度慢?
可使用清华镜像:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python
Q2: GUI 显示函数报错?
使用 headless 版本的 opencv 可能无法使用 cv2.imshow()
,需要使用非 headless 版本:
pip uninstall opencv-python-headless
pip install opencv-python
八、学习资源推荐
- OpenCV 官方文档
- OpenCV-Python Tutorials
- PyImageSearch 教程
- 《OpenCV 4 编程实战》
本文由“小奇Java面试”原创发布,转载请注明出处。
可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。