opencv2.x文件结构解析

本文介绍了OpenCV,一个用于实时处理的计算机视觉函数库。它提供了超过2500种优化算法,支持C/C++, Python和Java接口。文章详细阐述了OpenCV的模块结构,包括核心数据处理、图像处理、视频分析等多个方面。

1 OpenCV简介

        OpenCV(Open Source Computer Vision)是一个用于实时处理的计算机视觉函数库,它基于BSD许可证授权并且可免费用于学术研究和商业应用。它拥有C/C++、Python、和Java(仅用于Android)接口,并可在Windows、Linux、Mac和Android平台上运行。OpenCV库包含大于2500个优化算法,拥有5M的下载量和47K+的用户群体。OpenCV在现实中的应用包括视频监控(Video Surveillance)、交互艺术(Interactive Art)、矿山检查(Mine Inspection)、全景图拼接(Panorama Stitching)以及最新的机器人学(Robotics)应用【此段翻译自http://code.opencv.org/projects/OpenCV/wiki/WikiStart】。

2 OpenCV模块结构(Modular Structure)

        OpenCV拥有一个模块结构,也就是说,OpenCV包(Package)里包含数个共享的或静态的库(Libraries),分别如下【opencv\doc\opencv2refman.pdf_P1】:

core. 该模块定义了OpenCV的基本数据结构,包括多维数组(Multi-dimensional Array)和用于其它模块的基本函数;

imgproc. 该模块用于图像处理(Image Processing)。它包括线性和非线性的图像滤波(Linear and Non-Linear Image Filtering)、几何图像变换(Geometrical image Transformations),包括缩放(Resize), affine and perspective warping, generic table-based remapping、颜色空间变换(Color Space Conversion)、直方图(Histograms)等;

video. 这是一个视频分析模块,包含运动估计(Motion Estimation)、背景消除/背景差分(Background Subtraction)和物体跟踪(Object Tracking)算法;

calib3d. 该模块包括基本的多视图集合算法(Multiple-View Geometry Algorithms)、单体和立体相机的标定(Single and Stereo Camera Calibration)、对象姿态估计(Object Pose Estimation)、双目立体匹配(Stereo Correspondence)算法和元素的三维重建(Elements of 3D Reconstruction);

features2d. 包括显着特征检测器(Salient Feature Detectors)、描述符(Descriptors)和描述符匹配器(Descriptor Matchers);

objdetect. 包括预定义的目标和实例的检测,如脸、眼、杯子、人以及汽车等;

highgui. 该模块拥有一个简单易用的视频捕捉(Video Capturing)、图像及视频译码(Image and Video Codecs)以及简单的UI接口;

gpu. 包含不同模块的GPU加速算法。

另外还有其它的辅助模块,比如FLANN以及Google的测试包、Python bindings等。

3 OpenCV的下载、安装、配置及使用

        本章内容可参照本站文章:OpenCV 2.3.1/2.4.0在Visual Studio 2008及Visual Studio 2010下安装及配置方法(附HelloWorld)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值