OpenCV:概述、结构和内容
1、OpenCV的定义:
OpenCV的英文全称是Open Source Computer Vision Library。它是一个开源的计算机视觉库,它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法。
2、OpenCV的特点:
(1)OpenCV采用C/C++语言编写,可以运行在Linux/Windows/Mac等操作系统上。
(2)OpenCV提供了Python、Ruby、MATLAB以及其他语言的接口。
(3)它采用优化的C代码编写,能够充分利用多核处理器的优势
(4)具有良好的可移植性
3、OpenCV的设计目标:
执行速度尽量快,主要关注实时应用。如果是希望在Intel平台上得到更快的处理速度,可以购买Intel的高性能多媒体函数库IPP(Integrated Performance Primitives)。IPP库包含许多从底层优化的函数,这些函数涵盖多个应用领域。如果系统已经安装了IPP库,OpenCV会在运行时自动使用相应的IPP库。
【注】:OpenCV使用优化了的C和C++代码实现,因此它对IPP不存在任何的依赖。
4、OpenCV的应用领域
(1)人机互动 (2)物体识别 (3)图象分割 (4)人脸识别 (5)动作识别 (6)运动跟踪 (7)机器人 (8)运动分析 (9)机器视觉 (10)结构分析
5、OpenCV的结构和内容
OpenCV主体分为五个模块,其中四个模块如下图所示。
OpenCV的CV模块包含基本的图像处理函数和高级的计算机视觉算法。ML是机器学习库,包含一些基于统计的分类和聚类工具。HighGUI包含图像和视频输入/输出的函数。CXCore包含OpenCV的一些基本数据结构和相关函数。
【具体内容如下】:
(1) cxcore
基础结构:CvPoint,CvSize,CvScalar等
数组操作:cvCreateImage,cvCreateMat等
动态结构:CvMemStorage,CvMemBlock等
绘图函数:cvLine,cvRectangle等
数据保存和运行时类型信息:CvFileStorage,cvOpenFileStorage等
错误处理和系统函数:cvGetErrStatus,cvAlloc,cvFree等
(2) cv
图像处理:cvSobel,cvCanny等
结构分析:ContourArea等
运动分析与目标跟踪:cvMeanShift等
模式识别:CvHaarFeature
摄像头定标与三维重建:cvCalibrateCamer2
(3)Machine Learning(ML)
包含许多聚类、分类和数据分析函数。如Bayes分类器,K近邻算法,支持向量机,决策树,神经网络等等。
(4)HighGUI
图像界面函数: cvNamedWindow
读图像和保存图像:cvLoadImage,cvSaveImage
读视频和写视频:CvCreateFileCapture等
(5)cvcam
摄像机接口,在Opencv1.0以后的版本中已经被移除
(6)cvaux
该模块中一般存放一些即将被淘汰的算法和函数(如基于嵌入式隐马尔科夫的人脸识别算法),还包含一些实验性的算法和函数(前景检测,背景剔除等)
原文地址: http://blog.csdn.net/xiaofeilong321/article/details/8841125
OpenCV:概述、结构和内容相关推荐
- Step7编程语言编程概述结构
Step7编程语言&编程概述&结构 一.Step7中三种基本编程语言 1:梯形图 LAD 梯形图(LAD): 类似继电器控制电路图,适合于熟悉 继电器控制电路的用户使用. 3:语句表 ...
- 巨杉数据库中标东莞农商银行非结构化内容管理平台项目
2019独角兽企业重金招聘Python工程师标准>>> 近期,巨杉数据库中标东莞农村商业银行非结构化内容管理平台项目,通过新一代分布式数据库技术,助力东莞农商银行智慧化转型. 本次合 ...
- web前段学习day_01:HTML(学习如何搭建页面结构和内容):文本标签、列表标签、图片标签、超链接、表格、表单表单、分区标签、实体引用
学习如何构造页面结构和内容 安装HBuilderX 一.HTML 创建第一个HTML页面 写完html后如何测试 写在body中的常见标签有哪些? 注释快捷键 Ctrl+Shift+/ 1.文本相关标 ...
- OpenCV梯度结构张量的各向异性图像分割
OpenCV梯度结构张量的各向异性图像分割 梯度结构张量的各向异性图像分割 目标 什么是梯度结构张量 源代码 解释 结果 梯度结构张量的各向异性图像分割 目标 在本教程中,您将学习: 什么是梯度结构张 ...
- 查看Json的结构及内容:JsonViewerPackage
下载链接:http://jsonviewer.codeplex.com/ 安装的过程简单,这里就不一一叙述. 找到JsonViewer 打开之后 点击Viewer 旁边的Text 放入你的Json 测 ...
- 【回顾】巨杉数据库中标东莞农商银行非结构化内容管理平台项目
2018年,巨杉数据库中标东莞农村商业银行 "非结构化内容管理平台项目" ,通过新一代分布式数据库技术,助力东莞农商银行智慧化转型. 本次合作,巨杉数据库将帮助东莞农商银行接轨最前 ...
- 结构体内容引用自非结构体数组对象axes(handles.axes1)
Matlab结构体内容引用自非结构体数组对象 matlab的gui报错axes(handles.axes1) 如何解决 起因 代码 matlab的gui报错axes(handles.axes1) 废话 ...
- 可变电阻器概述——结构、工作和不同应用
可变电阻器概述--结构.工作和不同应用 阅读原文 什么是电阻器 在电路中,电阻器是一个无源的两端元件,一旦电流流过它就会阻止电流流动并消耗功率.它在电路中用图 1 中的符号表示.电压与电流之比称为电阻 ...
- SEO三大支柱:结构,内容,权限(品牌和反向链接)
网站外以及访问者的用户行为中获取信号.在它们使用的数百种信号中,您可以直接影响某些信号,也可以间接影响其他信号.在这三个支柱上进行的工作将改善搜索引擎将网站排名考虑在内的信号. 市场上有各种各样的SE ...
最新文章
- Entity Framework应用:根据实体的EntityState状态实现增删改查
- 【存储知识学习】第二章存走进计算机IO世界--《大话存储》阅读笔记
- BZOJ 4823 Luogu P3756 [CQOI2017]老C的方块 (网络流、最小割)
- 使用 jquery 创建数组
- 全场灭灯_海天黄豆酱《新相亲大会2》首遇滑铁卢,男嘉宾险遭全场灭灯
- How is data replicted from HANA to AS
- 如何为 Drupal 添加简单的 SEO META 标签(title keywords des...
- 搜索 —— 深搜的剪枝技巧
- 【MyBatis框架】mapper配置文件-foreach标签
- idea+spring boot+jrebel7.0.14热启动
- 计算机科学之美,计算机科学的美学探讨
- 数据结构排序系列详解之五 简单选择排序
- android画布_Android画布
- sublime配置python开发环境_【教程】把Sublime Text 2用作Python的IDE去实现Python的开发...
- 餐饮系统店家后端基础功能构建
- Linux系统存储之LVM
- 【答学员问】面试问题-毕业时候为什么没有选择开发
- 【OMNET++】TSN介绍
- pyinstaller用法及单文件模式下静态文件打包
- 4K H.265和H.264