OpenCV 是一个开源的计算机视觉库,它提供了许多计算机视觉任务的功能,如图像处理、物体检测、面部识别等。本教程将带你入门 Python OpenCV,让你快速掌握其基本用法。

安装 OpenCV

在开始之前,请确保你已经安装了 Python 和 pip。然后,使用以下命令安装 OpenCV:

pip install opencv-python

快速入门

导入库

首先,我们需要导入 OpenCV 库:

import cv2

读取图像

使用 cv2.imread() 函数可以读取图像:

image = cv2.imread('path/to/image.jpg')

显示图像

使用 cv2.imshow() 函数可以显示图像:

cv2.imshow('Image', image)
cv2.waitKey(0)  # 等待按键
cv2.destroyAllWindows()

转换图像格式

OpenCV 使用 BGR 格式存储图像,而 Python 的标准库使用 RGB 格式。因此,在处理图像之前,我们需要将其转换为 RGB 格式:

image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

保存图像

使用 cv2.imwrite() 函数可以保存图像:

cv2.imwrite('path/to/save/image.jpg', image_rgb)

实战案例

图像处理

以下是一个简单的图像处理案例,我们将对图像进行灰度转换和二值化:

gray = cv2.cvtColor(image_rgb, cv2.COLOR_BGR2GRAY)
_, binary = cv2.threshold(gray, 128, 255, cv2.THRESH_BINARY)

物体检测

OpenCV 提供了多种物体检测算法,例如 Haar 特征级联分类器、深度学习模型等。以下是一个使用 Haar 特征级联分类器进行人脸检测的案例:

face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
faces = face_cascade.detectMultiScale(image_rgb, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))

for (x, y, w, h) in faces:
    cv2.rectangle(image_rgb, (x, y), (x+w, y+h), (255, 0, 0), 2)

更多资源

想了解更多关于 OpenCV 的知识?请访问我们的 OpenCV 教程 页面。

OpenCV Logo