OpenCV 是一个强大的计算机视觉库,它提供了丰富的图像处理功能。本教程将介绍 OpenCV 中的一些基本图像处理操作。
1. 图像读取与显示
首先,我们需要读取图像并显示它。以下是一个简单的示例:
import cv2
# 读取图像
image = cv2.imread('path_to_image.jpg')
# 显示图像
cv2.imshow('Image', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
2. 图像转换
OpenCV 提供了多种图像转换功能,例如灰度转换、二值化等。
# 灰度转换
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 二值化
_, binary_image = cv2.threshold(gray_image, 128, 255, cv2.THRESH_BINARY)
3. 图像滤波
图像滤波是图像处理中常用的操作,可以去除图像中的噪声。
# 高斯滤波
blurred_image = cv2.GaussianBlur(gray_image, (5, 5), 0)
# 中值滤波
median_image = cv2.medianBlur(gray_image, 5)
4. 图像边缘检测
边缘检测是图像处理中的重要步骤,可以帮助我们识别图像中的关键特征。
# Canny 边缘检测
edges = cv2.Canny(gray_image, 100, 200)
5. 图像几何变换
OpenCV 提供了多种图像几何变换功能,例如旋转、缩放、平移等。
# 旋转图像
rotated_image = cv2.rotate(image, cv2.ROTATE_90_CLOCKWISE)
# 缩放图像
scaled_image = cv2.resize(image, (300, 300))
6. 图像分割
图像分割是将图像分割成多个区域的过程。
# 轮廓检测
contours, _ = cv2.findContours(binary_image, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
# 绘制轮廓
cv2.drawContours(image, contours, -1, (0, 255, 0), 2)
希望这个教程能帮助您了解 OpenCV 中的基本图像处理操作。如果您想了解更多关于 OpenCV 的知识,请访问我们的OpenCV 教程页面。
Example Image