1.编译时,报如下图所示的错误
“CV_BGR2GRAY”: 未声明的标识符
“CV_MINMAX”: 未声明的标识符
“CV_GRAY2BGR”: 未声明的标识符
“CV_FILLED”: 未声明的标识符
解决方法
(1)添加头文件:#include <opencv2/imgproc/types_c.h>
(2)在新版本中,CV_BGR2GRAY被COLOR_BGR2GRAY替换、CV_GRAY2BGR被COLOR_GRAY2BGR替换,只需将CV改成COLOR即可。新版本中CV_FILLED被cv::FILLED替换,所以只需将CV_FILLED改成cv::FILLED即可。
参考:OpenCV4.1.0编译时提示“CV_BGR2GRAY”: 未声明的标识符 - rainbow70626 - 博客园
2.缺少IplImage结构,在头文件引入#include <opencv2/imgproc/imgproc_c.h>
3.无法打开包括文件: “opencv/cv.h”、“opencv/highgui.h”
新版本没有opencv/cv.h和opencv/highgui.h,把这两个头文件注释掉,再添加上自己需要的头文件。
4.未定义标识符"CV_WINDOW_AUTOSIZE"
(1)、在代码开头加入头文件#include <opencv2/highgui/highgui_c.h>
(2)、将"CV_WINDOW_AUTOSIZE"改成"WINDOW_AUTOSIZE"
5.“CV_HAAR_SCALE_IMAGE”: 未声明的标识符,添加<opencv2/objdetect/objdetect.hpp>头文件,并把CV_HAAR_SCALE_IMAGE改成cv::CASCADE_SCALE_IMAGE即可。