OpenCV4(C++) —— 模块介绍


参考的是一个优秀公众号里的文章:小白学视觉

前言

OpenCV是一个开源的、集成了诸多图像处理模块的软件开发包(Software Development Kit,SDK),不同模块下包含了很多功能函数,并且还在不断更新中,目前主要是4.X版本。此版本有个地方要留意: 在include路径下,以前3.X版本有两个文件夹:opencv和opencv2,现在4.X将其合成opencv2一个文件夹,如:opencv\build\include\opencv2 ,在该文件夹下,就是OpenCV所包含的图像处理模块

一、主要模块

(1)calib3d

——这个模块名称是由calibration(校准)和3D这两个单词的缩写组合而成,通过名字我们可以知道,模块主要包含相机标定与立体视觉等功能,例如物体位姿估计、三维重建、摄像头标定等。

(2)core

——核心功能模块,模块主要包含 OpenCV 库的基础结构以及基本操作,例如OpenCV基本数据结构、绘图函数、数组操作相关函数、动态数据结构等。

(3)dnn

——深度学习模块,这个模块是OpenCV 4版本的一个特色,其主要包括构建神经网络、加载序列化网络模型等。但是该模块目前仅适用于正向传递计算(测试网络),原则上不支持反向计算(训练网络)。

(4)features2d

——这个模块名称是由features(特征)和2D这两个单词的缩写组合而成,其功能主要为处理图像特征点,例如特征检测、描述与匹配等。

(5)flann

——这个模块名称是Fast Library for Approximate Nearest Neighbors(快速近似最近邻库)的缩写,这个模块是高维的近似近邻快速搜索算法库,主要包含快速近似最近邻搜索与聚类等。

(6)gapi

——这个模块是OpenCV 4.0中新增加的模块,旨在加速常规的图像处理,与其他模块相比,这个模块主要充当框架而不是某些特定的计算机视觉算法。

(7)highgui

——高层GUI图形用户界面,包含创建和操作显示图像的窗口、处理鼠标事件以及键盘命令、提供图形交互可视化界面等。

(8)imgcodecs

——图像文件读取与保存模块,主要用于图像文件读取与保存

(9)imgproc

——这个模块名称是由image(图像)和process(处理)两个单词的缩写组和而成,是重要的图像处理模块,其主要包括图像滤波、几何变换、直方图、特征检测与目标检测等.

(10)ml

——机器学习模块,主要为统计分类、回归和数据聚类等。

(11)objdetect

——目标检测模块,主要用于图像目标检测,例如检测Haar特征。

(12)photo

——计算摄影模块,主要包含图像修复和去噪等。

(13)stitching

——图像拼接模块,主要包含特征点寻找与匹配图像、估计旋转、自动校准、接缝估计等图像拼接过程的相关内容。

(14)video

——视频分析模块,主要包含运动估计、背景分离、对象跟踪等视频处理相关内容。

(15)videoio

——视频输入输出模块,主要用于读取与写入视频或者图像序列。

二、 使用方式

在include文件夹下,有上面所有模块的头文件,需要哪种模块就加载哪种模块的头文件即可,如:

#include <opencv2/core.hpp>  
#include <opencv2/imgproc.hpp> 

此外,还有一个包含所有模块的头文件:opencv.hpp

#include <opencv2/opencv.hpp>  

实际项目中,一般不使用opencv.hpp,需要哪种模块就加载哪种模块的头文件,加快效率。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想要躺平的一枚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值