《OpenCV图像处理》——1.3 OpenCV的结构

简介:

本节书摘来自华章计算机《OpenCV图像处理》一书中的第1章,第1.3节,作者:[西]葛罗瑞亚·布埃诺·加西亚(Gloria Bueno García)著,更多章节内容可以访问云栖社区“华章计算机”公众号查看

1.3 OpenCV的结构

一旦安装了OpenCV,在OPENCV_BUILDinstall目录中将加入三种类型的文件:
头文件:这些文件位于OPENCV_BUILDinstallinclude子目录下,用于使用OpenCV开发新项目。
库的二进制文件:这些文件是静态库或动态库(依赖于使用CMake对选项的选择),它们包含了每个OpenCV模块的功能。这些文件位于bin子目录下(例如,使用GNU编译器时,位于x64mingwbin)。
示例二进制文件:这些文件使示例在库下可执行。这些示例的源文件可以在源程序包中找到(例如,OPENCV_SRCsourcessamples)。
OpenCV有一个模块化结构,这意味着代码包中包含了每个模块的一个静态库或动态库(DLL)。包含在代码包中的主模块有:
core:这个模块定义了被所有其他模块和基本数据结构(包括重要的多维数组Mat)使用的基本函数。
highgui:这个模型提供简单的用户接口(user interface,UI)功能。使用Qt支持(WITH_QT CMake选项)建立的库允许UI和这样的框架兼容。
imgproc:这些模块是一些图像处理函数,包括滤波(线性的和非线性的)、几何变换、颜色空间变换、直方图等。
imgcodecs:这个模块是一个用于读、写图像的易用接口。
从OpenCV 3.0开始模块中的一些变化要注意,某些功能已经被移到一个新模块(例如,将读取图像函数和写入图像函数从highgui移入到imgcodecs)。
photo:这个模块包含计算摄影学,涉及修复、去噪、高动态范围(HDR)图像等。
stitching:这个模块用于图像拼接。
videoio:这个模块对于视频捕获和视频编码器是一个易用的接口。
video:这个模块提供了视频分析的功能(运动估计、背景提取以及对象跟踪)。
features2d:这些模块是用于特征检测(角点对象和平面对象)、特征描述、特征匹配等的一些函数。
objdetect:这些模块是用于对象检测和预定义检测器实例(例如,人脸、眼睛、微笑、人、车等)的一些函数。
其他的一些模块是calib3d(摄像机校准)、f?lann(聚类和搜索)、ml(机器学习)、shape(形状距离和匹配)、superres(超分辨率)、video(视频分析)和videostab(视频稳定)。
在3.0测试版中,新的贡献模块是在一个独立的包(opencv_contrib-master.zip)中发布的,在使用这些模块之前应该完全理解这些模块。在新发布的OpenCV(3.0版本)中,关于新功能的简要概述,请参考http://opencv.org/opencv-3-0-beta.html文档。

相关文章
|
3月前
|
openCL 开发工具 C语言
OpenCV 图像处理学习手册:6~7
OpenCV 图像处理学习手册:6~7
77 0
|
3月前
|
存储 编解码 算法
OpenCV 图像处理学习手册:1~5
OpenCV 图像处理学习手册:1~5
32 0
|
2月前
|
人工智能 Linux API
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
46 0
|
4月前
|
算法 API 计算机视觉
OpenCV(图像处理)-基于Python-形态学处理-开运算、闭运算、顶帽、黑帽运算
1. 形态学 OpenCV形态学是一种基于OpenCV库的数字图像处理技术,主要用于处理图像的形状、结构和空间关系。它包括一系列图像处理工具和算法,包括膨胀、腐蚀、开运算、闭运算、形态学梯度、顶帽、黑帽等。
59 0
|
4月前
|
缓存 算法 计算机视觉
OpenCV图像处理-视频分割静态背景-MOG/MOG2/GMG
1.概念介绍 视频背景扣除原理:视频是一组连续的帧(一幅幅图组成),帧与帧之间关系密切(GOP/group of picture),在GOP中,背景几乎是不变的,变的永远是前景。
92 0
|
2月前
|
编解码 算法 自动驾驶
探索OpenCV:图像处理的利器
探索OpenCV:图像处理的利器
30 0
|
4月前
|
机器学习/深度学习 并行计算 算法
OpenCV简介、导入及图像处理基础方法讲解(图文解释 附源码)
OpenCV简介、导入及图像处理基础方法讲解(图文解释 附源码)
47 0
|
4月前
|
算法 计算机视觉
OpenCV图像处理-图像分割-MeanShift
1. 基本概念 MeanShift严格说来并不是用来对图像进行分割的,而是在色彩层面的平滑滤波。它会中和色彩分布相近的颜色,平滑色彩细节,侵蚀掉面积较小的的颜色区域,它以图像上任意一点P为圆心,半径为sp,色彩幅值为sr进行不断地迭代。
61 0
|
4月前
|
算法 计算机视觉
OpenCV4图像处理-图像交互式分割-GrabCut
1.理论介绍 用户指定前景的大体区域,剩下为背景区域,还可以明确指出某些地方为前景或者背景,GrabCut算法采用分段迭代的方法分析前景物体形成模型树,最后根据权重决定某个像素是前景还是背景。
23 0
|
4月前
|
计算机视觉 Python
OpenCV图像处理-图片拼接(Python)
1. 图片拼接原理 对于图像拼接主要分为两部分:1.特征点匹配,确定两幅图之间的位置关系;2.把所有图像投影变换到同一坐标系,并完成对接与融合。
115 0