您的位置:首页 > 运维架构

OpenCV简介

2012-05-21 20:09 197 查看
一、什么是OpenCV

  OpenCV(Open Source
Computer Vision Library)作为一个基本的计算机视觉、图像处理和模式识别的开源项目,是一套基于BSD许可证授权(开源)发行的跨平台计算机视觉函数库,它由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

OpenCV的设计目标 执行速度尽可能的快构建一个简单易用的计算机视觉框架

 

二、应用领域  

    1、人机互动

  2、物体识别

  3、图象分割

  4、人脸识别

  5、动作识别

  6、运动跟踪

  7、机器人

三、OpenCV的基本结构

OpenCV包括CV , CVAUX , CXCORE, HighGUI , ML 等5个重要的模块

如果用库来体现这几个模块之间的关系的话, 可以采用下面的结构图来展现:



 

CV---核心函数库:包含了基本的图像处理函数和高级的计算机视觉算法,包括图像处理, 图像结构分析,运动描述和跟踪,模式识别和摄像机标定。

ML---机器学习函数库:包含一些基于统计的分类和聚类工具。

HighGUI---GUI函数库:包含图像和视频的输入/输出函数。

CXCORE---数据结构与线性代数库:包含了OpenCV的一些基本的数据结构和相关函数

CVAUX---辅助函数库:该模块则是一般用于存放即将被淘汰的算法和函数,同时也包含一些新出现的实验性的函数和算法。

 

四、OpenCV功能

图像数据操作(内存分配与释放,图像复制、设定和转换)
图像/视频的输入输出(支持文件或摄像头的输入,图像/视频文件的输出)
矩阵/向量数据操作及线性代数运算(矩阵乘积、矩阵方程求解、特征值、奇异值分解)
支持多种动态数据结构(链表、队列、数据集、树、图)
基本图像处理(去噪、边缘检测、角点检测、采样与插值、色彩变换、形态学处理、直方图、图像金字塔结构)
结构分析(连通域/分支、轮廓处理、距离转换、图像矩、模板匹配、霍夫变换、多项式逼近、曲线拟合、椭圆拟合、狄劳尼三角化)
摄像头定标(寻找和跟踪定标模式、参数定标、基本矩阵估计、单应矩阵估计、立体视觉匹配)
运动分析(光流、动作分割、目标跟踪)
目标识别(特征方法、HMM模型)
基本的GUI(显示图像/视频、键盘/鼠标操作、滑动条)
图像标注(直线、曲线、多边形、文本标注)
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息