1999年,Intel公司为了给研究人员和开发者提供一个功能强大且高效的计算机视觉库和机器学习软件库,由Gary Bradski和Intel的支持团队启动了OpenCV(Open Source Computer Vision Library)项目的开发。

发展历程
- 2000年:首次公开发布,支持的语言主要是 C 和 C++。
- 2006年:OpenCV 1.0 发布,首个稳定版本,基于C语言接口,包含基础图像处理算法(如滤波、边缘检测)。
- 2009年:OpenCV 2.0 发布,引入C++ API,取代旧版C接口。新增机器学习模块(SVM、决策树等)。支持GPU加速(CUDA)。
- 2012年:OpenCV 2.4发布,新增SIFT/SURF特征检测、HOG行人检测。Android和iOS支持。
- 2015年:OpenCV 3.0 发布,代码重构为模块化设计(核心、imgproc、videoio等)。移除部分过时算法(如SURF默认禁用)。引入透明API(支持硬件加速)。
- 2017年:OpenCV 3.4 发布,新增DNN模块(支持加载TensorFlow、Caffe模型)。集成跟踪算法(如KCF、CSRT)。
- 2018年:OpenCV 4.0 发布,全面转向C++11标准。强化DNN模块(支持ONNX、YOLOv3)。
- 2020年-2023年:OpenCV 4.5+,新增实时姿态估计(OpenPose集成)。支持PyTorch模型直接导入。优化ARM架构性能,增强RISC-V支持。
经过20+年的发展,OpenCV已经成长为一个强大的计算机视觉和开源软件库。在通用图像处理领域,它占据了70%的市场份额,因为它提供了大量的计算机视觉算法和图像处理工具,因而广泛应用于图像和视频的处理、分析以及机器学习领域。
核心功能
下面是OpenCV库提供的核心功能介绍。
一、基本图像处理
OpenCV支持多种图像格式的读写,以及多种视频格式的捕获和写入操作。提供创建窗口显示图像的功能。提供多种方式对图像中单个像素的读取和修改操作,提供感兴趣区域(Region of Interest, ROI)的操作。提供对图像的缩放、旋转、仿射变换和透视变换等几何操作。提供对图像的颜色空间转换(如RGB转换为Gray)。
图像ROI(Region of Interest,感兴趣区域)是指在图像处理、计算机视觉或机器学习等领域中,对图像中具有一定特征或重要信息的一部分进行突出标记和分析的特定区域,ROI可以是方框、圆、椭圆、不规则多边形等形状,用于勾勒出需要处理的图像区域。
二、图像增强与滤波处理
OpenCV提供了图像的增加功能,如直方图均衡化、自适应直方图均衡化、伽马校正。提供了图像的各种滤波功能,主要有线性滤波、非线性滤波和形态学滤波三类,每一类下面都有不同的滤波器。
三、图像分割与边缘检测
OpenCV提供了图像的多种分割与检测方法。对于图像分割而言,有阈值分割、分水岭算法和GrabCut算法。通过Canny算子、Sobel算子和Laplacian算子,可实现对图像边缘的检测。通过轮廓查找和分析,可以检测二值图像中的各种轮廓,并对轮廓的面积、周长和形状进行计算。
四、特征检测与描述
OpenCV提供了Harris角点检测和Shi-Tomasi角点检测。还提供了SIFT (Scale-Invariant Feature Transform)、SURF (Speeded Up Robust Features)和ORB (Oriented FAST and Rotated BRIEF)特征描述子,以及可以通过暴力匹配和FLANN (Fast Library for Approximate Nearest Neighbors)进行特征匹配。
五、机器学习与深度学习
OpenCV提供了K近邻 (KNN)、向量机 (SVM)、决策树和随机森林用于传统机器学习算法,提供了DNN模块实现深度学习,同时还支持如TensorFlow、Caffe、ONNX等多种深度学习。
六、视频分析
OpenCV提供了光流估计用以计算图像序列中的像素运动,通过背景建模和前景提取,用于移动目标检测。能过均值偏移(MeanShift)和连续自适应均值偏移(CAMShift)算法和CF (Kernelized Correlation Filters) 跟踪器实现目标跟踪。
七、3D重建与立体视觉
OpenCV提供了张正友标定法(棋盘标定)用于估计相机的内部参数和畸变系数。通过计算视差图,可从立体图像中恢复深度信息。通过SfM (Structure from Motion)从多视图图像中重建三维场景。
另外,OpenCV还支持GPU加速,性能优化,支持多线程。下一节,我们来介绍OpenCV的下载和安装。
——重庆教主 2025年5月6日
若文章对您有帮助,可以激励一下我哦,祝您平安幸福!
微信 | 支付宝 |
---|---|
![]() |
![]() |