在安装 OpenCV 库并设置我们的编程环境之后,我们首先讨论的是头文件。最主要头文件是opencv2/opencv.hpp
;它调用了其他每个 OpenCV 模块的头文件:
老版本的 C 语言数据结构和算法:
#include "opencv2/core/core_c.h"
新的C++数据结构和算法:
#include "opencv2/core/core.hpp"
近似最近邻匹配函数:
#include "opencv2/flann/miniflann.hpp"
旧的C语言图像处理函数:
#include "opencv2/imgproc/imgproc_c.h"
新的C++图像处理函数:
#include "opencv2/imgproc/imgproc.hpp"
用于处理和恢复照片的算法:
#include "opencv2/video/photo.hpp"
视频跟踪和背景分割:
#include "opencv2/video/video.hpp"
二维特征跟踪:
#include "opencv2/features2d/features2d.hpp"
人脸检测;SVM;HoG:
#include "opencv2/objdetect/objdetect.hpp"
校正和立体照片:
#include "opencv2/calib3d/calib3d.hpp"
机器学习,聚类、模式识别:
#include "opencv2/ml/ml.hpp"
旧的 C 语言图像显示、滑块、鼠标交互、I/O
#include "opencv2/highgui/highgui_c.h"
新的 C++ 语言图像显示、滑块、鼠标交互、I/O
#include "opencv2/highgui/highgui.hpp"
用户贡献的代码
#include "opencv2/contrib/contrib.hpp"
可以使用包含文件opencv.hpp
来包含任何的 OpenCV 函数,但这会减慢编译时间。比方说,如果只使用图像处理函数,那么如果只包含opencv2/imgproc/imgproc.hpp
,编译时间会更快。