# Python 使用 OpenCV 入门指南 🖼️📸
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,广泛用于图像处理、视频分析、人脸识别等领域 🧠。它支持多种编程语言,其中对 Python 的接口最为友好且功能齐全 💡。
在这篇文章中,我们将介绍如何使用 Python 和 OpenCV 进行基本的图像处理操作,包括读取、显示、保存图像,以及常见的图像变换方法 ✅。
目录 📋
安装 OpenCV 💾
你可以使用 pip 快速安装 OpenCV:
pip install opencv-python
如果你需要额外模块(如 SIFT、SURF 等高级算法),请安装完整版本:
pip install opencv-contrib-python
验证是否安装成功:
import cv2
print(cv2.__version__)
读取与显示图像 📷
OpenCV 支持多种图像格式,以下是最基础的图像读取与显示方式:
读取图像
import cv2
img = cv2.imread('example.jpg') # 读取图像
cv2.imshow('Image', img) # 显示图像窗口
cv2.waitKey(0) # 等待按键
cv2.destroyAllWindows() # 关闭所有窗口
⚠️ 如果路径错误或文件不存在,不会报错,但返回 None。
保存图像
cv2.imwrite('output.jpg', img)
图像基本操作 🎨
获取图像属性
print('尺寸:', img.shape) # 输出 (height, width, channels)
print('数据类型:', img.dtype) # 输出 uint8 等
print('像素总数:', img.size) # height * width * channels
裁剪图像
cropped_img = img[100:300, 200:400] # 裁剪区域
cv2.imshow('Cropped', cropped_img)
cv2.waitKey(0)
绘制几何图形
OpenCV 支持在图像上绘制各种图形:
画线
cv2.line(img, (0, 0), (255, 255), (255, 0, 0), 5)
画圆
cv2.circle(img, (100, 100), 50, (0, 255, 0), 3)
画矩形
cv2.rectangle(img, (50, 50), (200, 200), (0, 0, 255), 2)
颜色空间转换 🌈
OpenCV 默认读取图像为 BGR 格式,常需转换为 RGB 或灰度图:
转换为灰度图
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imshow('Gray', gray)
cv2.waitKey(0)
转换为 HSV 颜色空间
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
cv2.imshow('HSV', hsv)
cv2.waitKey(0)
边缘检测与滤波 🔍
OpenCV 提供了丰富的图像处理工具,例如边缘检测和滤波器。
Canny 边缘检测
edges = cv2.Canny(gray, 100, 200)
cv2.imshow('Edges', edges)
cv2.waitKey(0)
高斯模糊
blurred = cv2.GaussianBlur(img, (5, 5), 0)
cv2.imshow('Blurred', blurred)
cv2.waitKey(0)
图像阈值化
_, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
cv2.imshow('Threshold', thresh)
cv2.waitKey(0)
总结 ✅
OpenCV 是一个功能强大且易于使用的图像处理工具包 🧰,结合 Python 可以快速实现图像识别、增强、变换等任务 🚀。
本文介绍了 OpenCV 的基本安装步骤、图像读写、常见操作和图像处理技巧。如果你正在学习计算机视觉或者图像识别方向,OpenCV 是一个非常好的起点!
如果你希望我继续写进阶内容(如人脸检测、目标追踪、视频处理等),欢迎留言告诉我 😊。

浙公网安备 33010602011771号