【Python 第三方库】opencv-python

2024-01-25 00:00:00

目录:

opencv-python 模块介绍

OpenCV (Open Source Computer Vision Library) 是计算机视觉领域的核心开源库,提供了超过2500种优化算法,涵盖了从基础的图像处理到高级的深度学习模型集成。

OpenCV 将功能划分为多个子模块,便于开发者按需调用:

  • cv2 (主模块): 提供所有核心功能的入口,包括图像读写、显示等基础操作;
  • cv2.imgproc: 图像处理模块,包含滤波、几何变换、颜色空间转换、阈值处理等。常用于图像预处理、增强、去噪;
  • cv2.highgui: 高层图形用户界面,负责创建窗口、显示图像和视频、处理鼠标键盘事件。常用于调试代码、实时显示处理结果;
  • cv2.videoio: 视频的读写与捕获功能。常用于从摄像头或视频文件中读取帧,或保存处理后的视频;
  • cv2.features2d: 特征检测与描述模块,包含 SIFT、SURF、ORB 等经典算法。常用于图像匹配、全景图拼接、物体识别;
  • cv2.objdetect: 目标检测模块,内置了如 Haar 级联分类器等传统检测器。常用于人脸检测、眼睛检测等;
  • cv2.dnn: 深度学习模块,支持加载多种框架 (如 Caffe、TensorFlow、PyTorch) 的预训练模型。常用于使用深度神经网络进行高精度目标检测、分类;
  • cv2.ml: 传统机器学习算法模块,如 SVM、KNN 等。常用于结合特征提取进行自定义分类器训练。

安装依赖:

# 基础版: 包含核心功能
$ pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple
# 完整版: 额外包含 SIFT、SURF 等扩展模块
$ pip install opencv-contrib-python -i https://pypi.tuna.tsinghua.edu.cn/simple
# 无 GUI 版: 适用于服务器等无图形界面的环境
$ pip install opencv-python-headless -i https://pypi.tuna.tsinghua.edu.cn/simple

需要注意安装的模块名是 opencv-python,使用时导入的包名是 cv2

import cv2

print(cv2.__version__)  # 输出版本号,如 4.10.0

图像基本操作

如下示例演示了:

  • 获取图像属性;
  • 显示图像;
  • 保存图像。
import cv2

# 读取图像 (默认BGR格式)
img = cv2.imread('example.jpg')
if img is None:
    print("错误:无法加载图像")
else:
    # 获取图像属性
    height, width, channels = img.shape
    print(f"图像尺寸: {width}x{height}, 通道数: {channels}")

    # 显示图像
    cv2.imshow('Original Image', img)
    cv2.waitKey(0)  # 等待任意按键
    cv2.destroyAllWindows()  # 关闭所有窗口

    # 保存图像
    cv2.imwrite('output.jpg', img)

返回首页

本文总阅读量  次
皖ICP备17026209号-3
总访问量: 
总访客量: