2020系统综合实践7 OpenCV 3.3.0编译错误汇总

缺少hpp类错误

2020系统综合实践7 OpenCV 3.3.0编译错误汇总_第1张图片

从报错信息可以看到,这个出错是由于cuda.hpp文件不存在,但其实这个文件存在于opencv-contrib目录下,可以在代码中将其路径修改为文件所在目录对应的绝对路径。

sudo nano /home/pi/opencv-3.3.0/modules/stitching/src/precomp.hpp
#include "opencv2/xfeatures2d/cuda.cpp"
// 改为
#include "/.../opencv_contrib-3.3.0/modules/xfeatures2d/include/opencv2/xfeatures2d/cuda.cpp"

后续还遇到了两个hpp文件缺失的问题,用同样的方法解决即可。

AVFMT_RAWPICTURE未定义

2020系统综合实践7 OpenCV 3.3.0编译错误汇总_第2张图片

nano /.../opencv/opencv-3.3.0/modules/videoio/src/cap_ffmpeg_impl.hpp
// 在顶部添加下列内容重新编译即可
#define AV_CODEC_FLAG_GLOBAL_HEADER (1 << 22)
#define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER
#define AVFMT_RAWPICTURE 0x0020

2020系统综合实践7 OpenCV 3.3.0编译错误汇总_第3张图片

缺少boostdesc_bgm.i

2020系统综合实践7 OpenCV 3.3.0编译错误汇总_第4张图片

直接进入这个链接下载缺失的文件,然后将这些文件复制到/home/pi/opencv/opencv_contrib-3.3.0/modules/xfeatures2d/src目录即可继续编译。

2020系统综合实践7 OpenCV 3.3.0编译错误汇总_第5张图片

无效的隐式转换 from const char* to char*

这个错误是在opencv最后关头出现的问题,由于编译日志太长导致看不到error,害我们一起找了半天,最后将输出重定向>至文件中,才看到错误:

2020系统综合实践7 OpenCV 3.3.0编译错误汇总_第6张图片

打开代码文件,在对应行进行强制类型转换(char *)即可:

sudo nano /.../opencv/opencv-3.3.0/modules/python/src2/cv2.cpp

2020系统综合实践7 OpenCV 3.3.0编译错误汇总_第7张图片

参考

安opencv_contrib出现无法打开包括文件: “opencv2/xfeatures2d/cuda.hpp”: 解决方法_人工智能_gbz3300255的博客-CSDN博客

树莓派交叉编译opencv3.4.1/pycharm安装opencv/实现人脸识别Demo记录_人工智能_simon曦的博客-CSDN博客

你可能感兴趣的:(2020系统综合实践7 OpenCV 3.3.0编译错误汇总)