《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文档。

相关文章
|
4月前
|
openCL 开发工具 C语言
OpenCV 图像处理学习手册:6~7
OpenCV 图像处理学习手册:6~7
84 0
|
4月前
|
存储 编解码 算法
OpenCV 图像处理学习手册:1~5
OpenCV 图像处理学习手册:1~5
35 0
|
3月前
|
人工智能 Linux API
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
48 0
|
5月前
|
算法 API 计算机视觉
OpenCV(图像处理)-基于Python-形态学处理-开运算、闭运算、顶帽、黑帽运算
1. 形态学 OpenCV形态学是一种基于OpenCV库的数字图像处理技术,主要用于处理图像的形状、结构和空间关系。它包括一系列图像处理工具和算法,包括膨胀、腐蚀、开运算、闭运算、形态学梯度、顶帽、黑帽等。
63 0
|
5天前
|
算法 计算机视觉
【OpenCV】计算机视觉图像处理基础知识(下)
【OpenCV】计算机视觉图像处理基础知识(下)
|
5天前
|
人工智能 计算机视觉 Python
【OpenCV】计算机视觉图像处理基础知识(上)
【OpenCV】计算机视觉图像处理基础知识(上)
|
14天前
|
算法 安全 机器人
最新版opencv4.9安装介绍,基本图像处理详解
最新版opencv4.9安装介绍,基本图像处理详解
|
26天前
|
机器学习/深度学习 存储 算法
OpenCV与NumPy:图像处理中的黄金组合
【4月更文挑战第17天】OpenCV和NumPy是Python图像处理的两大利器,互补协作形成黄金组合。OpenCV专注计算机视觉,提供丰富算法,而NumPy擅长数值计算和数组操作。两者无缝对接,共同实现高效、灵活的图像处理任务。通过灰度化、二值化、边缘检测等案例,展示了它们的协同作用。未来,这一组合将在计算机视觉和机器学习领域发挥更大作用,解锁更多图像处理潜力。
|
27天前
|
机器学习/深度学习 算法 Linux
使用OpenCV在Python中进行图像处理
使用OpenCV在Python中进行图像处理
|
5月前
|
缓存 算法 计算机视觉
OpenCV图像处理-视频分割静态背景-MOG/MOG2/GMG
1.概念介绍 视频背景扣除原理:视频是一组连续的帧(一幅幅图组成),帧与帧之间关系密切(GOP/group of picture),在GOP中,背景几乎是不变的,变的永远是前景。
115 0