ubuntu18安装cuda10 + cudnn7 和带gpu的opencv4+ opencv_contrib-4.0.0

opencv4需要cuda10,cuda10有需要安装410以上的显卡驱动。

显卡驱动:自己装吧。

cuda10+cudnn7网上都是的,这个不难

 

官网下载opencv4.0.0opencv_contrib-4.0.0

解压到指定目录中,将opencv_contrib-4.0.0解压到opencv4.0.0中,文件名不用变

tar -zxvf opencv-4.0.0 -d /home/your_name/
tar -zxvf opencv_contrib-4.0.0 -d /home/your_name/opencv-4.0.0


cd opencv-4.0.0
mkdir build && cd build
sudo cmake -D CMAKE_BUILD_TYPE=Realease -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4 -D OPENCV_EXTRA_MODULES_PATH=/home/ypp/opencv-4/opencv_contrib-4.0.0/modules -D OPENCV_GENERATE_PKGCONFIG=YES -D WITH_CUDA=ON -D OPENCV_ENABLE_NONFREE=ON ..

注意库的安装位置是/usr/local/opencv4,这个是自己设置的,因为我还有一个版本,那个版本的库安装在了/usr/local下。

opencv4默认不生成pkgconfig文件加上OPENCV_GENERATE_PKGCONFIG=YES

扩展包默认不能使用SIFT等库,加上OPENCV_ENABLE_NONFREE=ON即可。

cmake 应该没什么问题,但是下面进行

sudo make -j8

接下来一个重要问题就是,你肯定编译不通过,因为opencv4安装带gpu的版本时,cuda10有一个版本问题,编译不通过,那就是找不到dynlink_nvcuvid.h文件,没错,你就是找不到。上面本来没有cuda_version<10000,这是我自己加的,有几个文件都是这样写的,编译时遇到就找到源文件位置进行修改成我这样的。目的是让他找下面

那个nvcuvid.h文件,但是这个文件也是没有的。不要问为什么,没有就是没有,但是这个文件是可以在网上下载的。忘了网址的,想要的评论吧。解压该文件,在Samples/NvCodec/NvDecoder里面,cp nvcuvid.h cuviddec.h /usr/local/cuda/include下面即可。

编译过去之后就是

sudo make install -j8

能过去就代表安装成功了,接下来就是配置路径了。

cd /etc/ld.so.conf.d
vi opencv4.conf
#打开的是空文件,里面加上
/usr/local/opencv4/lib
#保存退出
sudo ldconfig



#再然后就是添加环境变量到~/.bashrc
sudo vi .bashrc
#在最下面添加
export PKG_CONFIG_PATH=/usr/local/opencv4/lib/pkgconfig

source .bashrc
#这个pkgconfig本来是默认生成的,但是opencv4就不默认生成了,里面有一个.pc文件,是检查版本时的依据

#这个路径添加到/etc/bash.bashrc里面也行

以上代码都是我手敲的,没有粘贴复制,如果有错也就是拼写错误,自己理解着来就行了。

如果进行到这没有什么问题的话,就安装成功了

pkg-config opencv4 --cflags --libs

可以查看安装的模块了,这个opencv4名称就是pkgconfig文件夹里的.pc文件来的。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值