将下载的contrib文件夹放到opencv源码目录下
-
sudo cmake -D CMAKE_BUILD_TYPE=
Release -DBUILD_TIFF=
ON -D CMAKE_INSTALL_PREFIX=/usr/
local -D OPENCV_EXTRA_MODULES_PATH=/home/airobot/opencv
-3.4
.3/opencv_contrib
-3.4
.3/modules/ ..
-
问题一:版本号需一致
问题二:cmake过程中下载文件不成功
手动下载需要的文件保存到opencv_contrib-<版本号>modules/xfeatures2d/src/文件夹中
问题三:fatal error: unsupported/Eigen/MatrixFunctions: No such file or directory
复制 eigen/unsupported 目录到 /usr/local/include,然后删除 unsupported/ 目录下,除 Eigen/ 目录外,所有的目录和文件。
-
$ sudo cp -r eigen/unsupported /usr/local/
include
-
$ cd /usr/local/
include/unsupported
-
$ shopt -s extglob
-
$ sudo rm -rf !(Eigen)
然后,重新编译 opencv 。
问题四:opencv2/xfeatures2d/cuda.hpp: No such file or directory
根据给的路径找到xfeature2d.hpp的文件并打开将include "opencv2/xfeatures2d/cuda.hpp"
修改为opencv_contrib文件夹下的cuda.hpp文件的绝对路径
重新编译即可
问题五:调用SIFT时出错
在 cmake 时添加OPENCV_ENABLE_NONFREE=ON
sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/home/yft/OpenCV/opencv-3.4.3/opencv_contrib-3.4.3/modules -D OPENCV_ENABLE_NONFREE=ON ..
转载:https://blog.csdn.net/gutangbaicai/article/details/104416671
查看评论