cv2 就是 OpenCV 的 Python 接口包名。
为什么叫 cv2
OpenCV 最早是 C/C++ 库,后来才有 Python、Java 等语言的绑定。
在 Python 里,官方提供的模块名字就是 cv2,意思是 OpenCV 2.x 之后的版本(OpenCV 1.x 当时没有 Python API)。
所以当你在 Python 中写:
import cv2
其实就是 导入 OpenCV 的 Python 绑定库。
cv2 提供的功能
几乎所有 OpenCV 功能,在 Python 里都通过 cv2 来调用
图像读取与显示
img = cv2.imread(“test.jpg”)
cv2.imshow(“image”, img)
cv2.waitKey(0)
cv2.destroyAllWindows()
颜色转换
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
图像滤波
blur = cv2.GaussianBlur(img, (5,5), 0)
边缘检测
edges = cv2.Canny(img, 100, 200)
视频流捕获(比如摄像头/RTSP)
cap = cv2.VideoCapture(“rtsp://xxx”)
ret, frame = cap.read()
深度学习 DNN 模块(加载 YOLO/SSD/ONNX 模型)
net = cv2.dnn.readNet(“yolov3.weights”, “yolov3.cfg”)
cv2 和 OpenCV 的关系
OpenCV 是 整个库(C/C++ 实现,功能很全)。
cv2 是 OpenCV 的 Python 封装模块。
也就是说:
如果你写 C++ 项目,你直接用 #include <opencv2/opencv.hpp>;
如果你写 Python 项目,你就 import cv2。
安装 cv2
pip install opencv-python
如果你需要更多扩展模块(比如人脸检测、特征匹配等),可以安装:
pip install opencv-contrib-python