1. 安装准备
1.1 安装依赖项
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev libgtk2.0-dev pkg-config
1.2 下载opencv和contrib
去Opencv官网下载4.4.0的Sources,下好后解压 去github下载4.4.0的contrib压缩包 将contrib压缩包解压后放进之前解压好的Opencv Sources的文件夹下
?2. 编译安装
在上图所示的文件夹中打开终端
mkdir build ??? ??? ? cd build ? ? ? ?? ??? ? cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_ENABLE_NONFREE=YES -D OPENCV_EXTRA_MODULES_PATH=/home/yourname/opencv-4.4.0/opencv_contrib-4.4.0/modules/ .. make -j4 ??? ??? ??? ? sudo make install ?? ? ?
CMAKE_INSTALL_PREFIX是安装路径,如果没特殊需求建议就用/usr/local OPENCV_ENABLE_NONFREE=YES是允许使用申请了专利的一些算法,必须加上这句 OPENCV_GENERATE_PKGCONFIG=ON因为opencv4默认不生成.pc文件,所以加上这句 OPENCV_EXTRA_MODULES_PATH是contrib包的路径,改成你自己的
3. 一些错误
或者到这个下载镜像下载:boostdesc_bgm.i,vgg_generated_48.i等.rar,放在?opencv_contrib/modules/xfeatures2d/src/?路径下?
2.关于找不到cuda.hpp的错误? 找不到其他hpp也是类似这样的操作
方法:find . -name "cuda.hpp"
找到cuda.hpp这个文件的实际位置,将他的绝对路径复制下来
然后根据报错,找到相应文件并打开,将相对路径改为绝对路径
# ?include "/home/hkx/Include/opencv_contrib-3.3.1/modules/xfeatures2d/include/opencv2/xfeatures2d/cuda.hpp"
find . -name "cuda.hpp"
会发现文件存在:?./opencv-3.4.6/modules/xfeatures2d/include/opencv2/xfeatures2d/cuda.hpp
2、找到上述文件的路径,替换出错文件中引用cuda.hpp的位置代码即可。
四、示例代码
打开一张图片
#include<opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat picture = cv::imread("1.png");
//图片必须添加到工程目下
//也就是和test.cpp文件放在一个文件夹下!!!
imshow("测试程序", picture);
waitKey(20150901);
}
|