在编辑器中通过点击 #include "opencv2/opencv.hpp" 头文件就可以看到该头文件的定义如下

#ifndef OPENCV_ALL_HPP
#define OPENCV_ALL_HPP// File that defines what modules where included during the build of OpenCV
// These are purely the defines of the correct HAVE_OPENCV_modulename values
#include "opencv2/opencv_modules.hpp"// Then the list of defines is checked to include the correct headers
// Core library is always included --> without no OpenCV functionality available
#include "opencv2/core.hpp"// Then the optional modules are checked
#ifdef HAVE_OPENCV_CALIB3D
#include "opencv2/calib3d.hpp"
#endif
#ifdef HAVE_OPENCV_FEATURES2D
#include "opencv2/features2d.hpp"
#endif
#ifdef HAVE_OPENCV_DNN
#include "opencv2/dnn.hpp"
#endif
#ifdef HAVE_OPENCV_FLANN
#include "opencv2/flann.hpp"
#endif
#ifdef HAVE_OPENCV_HIGHGUI
#include "opencv2/highgui.hpp"
#endif
#ifdef HAVE_OPENCV_IMGCODECS
#include "opencv2/imgcodecs.hpp"
#endif
#ifdef HAVE_OPENCV_IMGPROC
#include "opencv2/imgproc.hpp"
#endif
#ifdef HAVE_OPENCV_ML
#include "opencv2/ml.hpp"
#endif
#ifdef HAVE_OPENCV_OBJDETECT
#include "opencv2/objdetect.hpp"
#endif
#ifdef HAVE_OPENCV_PHOTO
#include "opencv2/photo.hpp"
#endif
#ifdef HAVE_OPENCV_SHAPE
#include "opencv2/shape.hpp"
#endif
#ifdef HAVE_OPENCV_STITCHING
#include "opencv2/stitching.hpp"
#endif
#ifdef HAVE_OPENCV_SUPERRES
#include "opencv2/superres.hpp"
#endif
#ifdef HAVE_OPENCV_VIDEO
#include "opencv2/video.hpp"
#endif
#ifdef HAVE_OPENCV_VIDEOIO
#include "opencv2/videoio.hpp"
#endif
#ifdef HAVE_OPENCV_VIDEOSTAB
#include "opencv2/videostab.hpp"
#endif
#ifdef HAVE_OPENCV_VIZ
#include "opencv2/viz.hpp"
#endif// Finally CUDA specific entries are checked and added
#ifdef HAVE_OPENCV_CUDAARITHM
#include "opencv2/cudaarithm.hpp"
#endif
#ifdef HAVE_OPENCV_CUDABGSEGM
#include "opencv2/cudabgsegm.hpp"
#endif
#ifdef HAVE_OPENCV_CUDACODEC
#include "opencv2/cudacodec.hpp"
#endif
#ifdef HAVE_OPENCV_CUDAFEATURES2D
#include "opencv2/cudafeatures2d.hpp"
#endif
#ifdef HAVE_OPENCV_CUDAFILTERS
#include "opencv2/cudafilters.hpp"
#endif
#ifdef HAVE_OPENCV_CUDAIMGPROC
#include "opencv2/cudaimgproc.hpp"
#endif
#ifdef HAVE_OPENCV_CUDAOBJDETECT
#include "opencv2/cudaobjdetect.hpp"
#endif
#ifdef HAVE_OPENCV_CUDAOPTFLOW
#include "opencv2/cudaoptflow.hpp"
#endif
#ifdef HAVE_OPENCV_CUDASTEREO
#include "opencv2/cudastereo.hpp"
#endif
#ifdef HAVE_OPENCV_CUDAWARPING
#include "opencv2/cudawarping.hpp"
#endif#endif

通过观察代码可知, opencv.hpp 中己经包含了 OpenCV 各模块的头文件,如高层 GUI 图形用户界面模块头文件 highgui.hpp 、图像处理模块头文件 imgproc.hpp 、2D 特征模块头文件 features2d.hpp 等。

所以,我们在编写 coreobjdetectimgprocphotovideofeatures2dcalib3dmlhighgui 模块的应用程序时,原则上仅写上一句 #include <opencv2/opencv.hpp> 即可,这样可以精简优化代码。

OpenCV 笔记(05)— opencv.hpp 头文件作用(是其它所有头文件的全集)相关推荐

  1. oracle 控制文件作用是什么,Oracle控制文件(controlfile)作用

    控制文件是一个小小的二进制文件,是oracle数据库的一部分,这个控制文件是用于记录数据库的状态和物理结构.每个数据库必须要至 控制文件是一个小小的二进制文件,是Oracle数据库的一部分,这个控制文 ...

  2. android odex文件作用,android反编译odex文件

    关于android的反编译工具,相信大家并不陌生 如APK-TOOL,dex2jar APK-TOOL 用于反编译出布局文件 dex2jar 用于将dex反编译成.jar包 生成的jar包可用jd-g ...

  3. VMware虚拟机文件夹中各文件作用详解

    VMware虚拟机文件夹中各文件作用详解 虚拟机的文件管理由VMware Workstation来执行. 一个虚拟机一般以一系列文件的形式储存在宿主机中, 这些文件一般在由workstation为虚拟 ...

  4. opencv学习笔记05

    原创:opencv学习笔记05 OpenCV-Python教程:40.ORB https://www.jianshu.com/p/49a84ddef11d ORB最重要的事情是它是OpenCV实验室出 ...

  5. opencv笔记(三十三)——Video Capture使用示例。读取视频

    这次通过一个读取视频的综合例子来介绍VideoCapture类的一些基本操作: #include <opencv2/core/core.hpp> #include <opencv2/ ...

  6. OpenCV 笔记(01)— OpenCV 概念、整体架构、各模块主要功能

    1. OpenCV 概念 图像处理( Image Processing )是用计算机对图像进行分析, 以达到所需结果的技术, 又称影像处理. 图像处理技术一般包括图像压缩, 增强和复原, 匹配.描述和 ...

  7. 【OpenCV 4开发详解】保存和读取XML和YMAL文件

    本文首发于"小白学视觉"微信公众号,欢迎关注公众号 本文作者为小白,版权归人民邮电出版社发行所有,禁止转载,侵权必究! 经过几个月的努力,小白终于完成了市面上第一本OpenCV 4 ...

  8. OpenCV 笔记 -- 边缘检测(Sobel、Laplace、Canny)

    OpenCV 笔记 – 边缘检测(Sobel.Laplace.Canny) 参考文档 一.Sobel 算子 1.简介 Sobel 算子是一个离散的一阶差分算子,用来计算图像亮度函数的一阶梯度近似值.在 ...

  9. 【机器视觉学习笔记】OpenCV C++的安装、配置及多版本共存 (VS2015)

    目录 下载 (可选 -- 二选一)添加环境变量 新建项目和配置 配置包含目录 配置库目录 添加库 (可选 -- 二选一)添加dll文件的路径 测试 平台:Windows 10 20H2 Visual ...

  10. 基础学习笔记之opencv(14):随机数发生器绘制文字

    本文主要介绍下opencv中自带的一个随机数发生器的类RNG,这里我用这个类来画一些图形,和基础学习笔记之opencv(13):基本绘图 一文中类似,只是 这里画出来图像的坐标,大小,颜色,角度等所有 ...

最新文章

  1. 极客新闻——06、刘润:给年轻人的10条工作建议
  2. 虚拟机Linux下解决ping时出现 unknown host问题
  3. UVA11324-- The Largest Clique(SCC+DP)
  4. 数据库:SQLServer 实现行转列、列转行用法笔记
  5. 用.netcore写一个简单redis驱动,调试windows版本的redis
  6. java8 javafx_Java8中的外观(JavaFX8)
  7. 各企业正在纷纷向“云”,背后有着哪些原因?
  8. 有关正则的知识点梳理
  9. KEmulator 屏蔽内存查看器功能
  10. 【笔记】更改windows,excel,word背景色为眼睛保护色
  11. 这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的Spring.Net了吧...
  12. 微信小程序选择开始时间和结束时间控件
  13. 考研复试问题之数据库概论
  14. HDU 2202 POJ 2079 求平面最大三角形 【旋转卡壳】
  15. 论文复现_芯片定位和引脚缺陷检测
  16. 干法:经营者应该怎样工作
  17. python 网络设备管理_「python」使用Telnet进行网络设备巡检
  18. mybatis 练习二(vue)
  19. html css javascript 动漫网页设计成品 (妖狐小红娘) 学生漫画网页DW制作 web实训网页设计 HTML5期末大作业
  20. 【h.264】 SPS写入timing相关及openh264实现

热门文章

  1. ECS(Linux)连接RDS,使用命令行方式连接实例
  2. CUDA error: device-side assert triggered Assertion t 」= 0 t n classes failed
  3. tf.placeholder函数说明
  4. torch.nn.Embedding
  5. LeetCode简单题之整理字符串
  6. LeetCode简单题之检查整数及其两倍数是否存在
  7. 在Relay中注册新TVM算子
  8. FPGA多功能应用处理器
  9. PyTorch 神经网络
  10. 5G和AI机器人平台