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概述 #### 一、引言 OpenCV(Open Source Computer Vision Library)自2000年由Intel创建以来,已经成为计算机视觉领域不可或缺的一部分。作为一个开源的计算机视觉和机器学习软件库,OpenCV旨在为...
#### 一、OpenCV 功能概述 OpenCV 是一个强大的开源计算机视觉和机器学习库,它提供了广泛的功能来处理图像和视频数据。以下是一些核心功能: 1. **图像处理**: - **图像加载与保存**:能够读取各种格式的图像...
OpenCV入门必备 图书目录: 第1章 概述 什么是OpenCV OpenCV的应用领域 什么是计算机视觉 OpenCV的起源 下载和安装OpenCV 通过SVN获取最新的OpenCV代码 更多OpenCV文档 OpenCV的结构和内容 移植性 练习 第2章 OpenCV...
OpenCV(开源计算机视觉库)是一个强大的跨平台计算机视觉库,包含了众多图像处理和计算机视觉的算法。在本文中,我们将深入探讨OpenCV的...虽然这里提供的内容只是一个概述,但希望它能引导你进一步探索OpenCV的世界。
通过阅读《OpenCV2.1概述》的文档,你可以深入理解这些模块的用法和实现原理,从而更好地运用OpenCV解决实际问题。此外,文档可能还会涵盖如何安装、配置OpenCV环境,以及编写第一个OpenCV程序的示例。 在实际项目...
4. 级联结构:训练好的弱分类器按照一定顺序排列,构成级联分类器。初级分类器负责快速排除大部分背景,后续分类器逐渐提高检测精度。 三、使用步骤 使用`opencv_traincascade.exe`进行训练通常包括以下步骤: 1....
第四章“数据结构及数据操作”讲解了OpenCV中的关键数据结构,如Mat矩阵、IplImage等,以及如何使用它们进行图像操作。这部分内容包括图像的创建、访问像素、拷贝和比较,以及内存管理和效率优化技巧。 第五章...
#### 一、OpenCV概述与特点 **OpenCV**(Open Source Computer Vision Library)是一款开源的计算机视觉库,它包含了多种图像处理和计算机视觉的算法。OpenCV支持多种编程语言,如C++、Python等,并且可以在多个...
### OpenCV 2.4.9.0 编程手册概览 #### 一、引言 《OpenCV Reference Manual》是一本全面介绍OpenCV库的权威性文档,该...以上内容概述了OpenCV 2.4.9.0编程手册的主要章节和知识点,希望对读者学习OpenCV有所帮助。
- **core**:核心模块,包含基本数据结构如Mat,以及各种数学操作和矩阵运算。 - **imgproc**:图像处理模块,提供滤波、几何变换、颜色空间转换等功能。 - **highgui**:用户界面模块,用于显示图像和视频,以及...
1. **介绍**:概述OpenCV库的基本概念、安装和配置。 2. **教程**:提供逐步指南,帮助初学者快速上手,包括基本操作和复杂任务的示例代码。 3. **参考**:详尽的API文档,列出所有函数、类和模块,包括参数说明、...
#### 七、OpenCV 的结构与内容 OpenCV由多个模块组成,每个模块专注于特定的功能领域。例如,core模块提供了基本的图像处理功能,imgproc模块则提供了更高级的图像处理算法。此外,还包括了用于特征检测、机器学习...
以上内容仅为OpenCV 2.4.2官方文档的部分摘录和概述,具体细节和深入应用还需参考文档原文。OpenCV作为一个强大的计算机视觉库,其功能远不止于此,开发者可以根据实际需求选择合适的功能模块进行深入研究。
一、OpenCV概述 OpenCV是由Intel公司发起的一个项目,最初是为了加速计算机视觉研究而设计的。随着时间的推移,它已经发展成为一个全面的库,支持C++、Python、Java等多种编程语言,并且在Windows、Linux、Mac OS、...
### OpenCV 入门知识点详解 #### 一、OpenCV 的安装步骤及配置方法 **1.... - **安装 VC++:** 首先,需要安装 Microsoft ...对于初学者而言,了解这些内容可以帮助快速上手 OpenCV,并为进一步深入学习奠定基础。
**OpenCV 概述** OpenCV(开源计算机视觉库)是一个强大的跨平台计算机视觉库,由Intel公司开发,旨在提供实时的图像处理、计算机视觉以及机器学习功能。它广泛应用于图像分析、识别、图像增强、视频处理等领域。...
OpenCV概述 FAQ中文 CxCore中文参考手册 基础结构 数组操作 动态结构 绘图函数 数据保存和运行时类型信息 其它混合函数 错误处理和系统函数 机器学习中文参考手册 CvAux中文参考手册 CvvImage类参考手册...
### 二、OpenCV 2.4.8/2.4.9组件结构概述 #### 2.1 组件结构概览 在OpenCV 2.4.8或2.4.9版本中,其组件结构主要分为两大类:旧版头文件所在的`opencv`文件夹和新版头文件所在的`opencv2`文件夹。其中,`opencv2`...