2024年1月14日发(作者:)
(9条消息)
Ubuntu18.04安装cuda10.0,cudnn7.6.4,opencv4.2.0,python环境
•
记录一下安装踩到的坑
•
o
o
1.安装cuda10.0和cudnn7.6.4
2.安装opencv
记录一下安装踩到的坑
新换了Ubuntu系统,安装可使用GPU加速的opencv时,遇到了好多大大小小的坑
版本太高(后续要安装tensorflow)
安装过程出现版本适配问题
缺少依赖包
Cmake出现问题
5.安装后找不到.so
1.安装cuda10.0和cudnn7.6.4
这个解决起来比较方便,到官网下载版本低一些的就可以了。
1. cuda下载地址: 下载最新的cuda,
2. 附一下cuda选版本的地址:自选版本的。这里我下载的是cuda10.0版本;
3. cudnn下载地址(需要注册登录后下载):可根据cuda选择相应的版本。这里我选择的是7.6.4;
4. 安装cuda时推荐使用runfile(local)方式进行安装。网上看过一些教程用deb(local)安装,之前按照教程结合官网安装指南尝试安装过,安装最新版本的时候没出现问题,但是在安装cuda10.0时候偶现一些头疼的版本适配问题,这里就不谈解决方式了。推荐直接换用runfile(local)方式(力荐)。
5. 安装cuda完成后配置文件:具体方式为vim ~/.bashrc,在最后添加如下代码部分
# NVIDIA CUDA Toolkit
export PATH=/usr/local/cuda-10.0/bin:$PATH
export
然后 source ~/.bashrc
6. 通过nvcc -V查看安装版本信息,显示10.0即可
7. cuda安装好了之后,下载cudnn,解压后复制到对应cuda包下即可。
$ cd cuda
$ sudo cp -P lib64/* /usr/local/cuda/lib64/
$ sudo cp -P include/* /usr/local/cuda/include/
如果没出现任何问题,说明成功了。
2.安装opencv
1. 安装opencv依赖
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install build-essential cmake unzip pkg-config
git libjpeg-dev libpng-dev libtiff-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libgtk-3-dev libatlas-base-dev gfortran python3-dev
2. git上clone opencv4.2.0,opencv_contrib4.2.0。直接从git上下载太慢,可以搜下gitee快速拉取git上项目的方法,网上一大堆,非常好用。
3. 进到opencv目录下新建build文件夹
$ cd ~/opencv
$ cd opencv
$ mkdir build && cd build
然后cmake一下
cmake -D CMAKE_BUILD_TYPE=RELEASE -D
-D CMAKE_INSTALL_PREFIX=/usr/local
LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH
INSTALL_PYTHON_EXAMPLES=ON
-D WITH_CUDA=ON -D
-D
-D
WITH_CUDNN=ON
ENABLE_FAST_MATH=1
CUDA_ARCH_BIN=7.5
-D
-D
-D
-D
-D
INSTALL_C_EXAMPLES=OFF -D OPENCV_ENABLE_NONFREE=ON
OPENCV_DNN_CUDA=ON
CUDA_FAST_MATH=1
WITH_CUBLAS=1
odules -D HAVE_opencv_python3=ON
OPENCV_EXTRA_MODULES_PATH=~/opencv/opencv_contrib/m-D
PYTHON_EXECUTABLE=~/.virtualenvs/opencv_cuda/bin/python
-D BUILD_EXAMPLES=ON ..
在这里我创建并使用了虚拟环境virtualenvs/opencv_cuda。其中CUDA_ARCH_BIN根据自己的GPU来选择相应的值。查看网站
4. 如果出现缺少,可以考虑把
OPENCV_EXTRA_MODULES_PATH=~/opencv/opencv_contrib/modules 这行的~/opencv/opencv_contrib/modules地址部分从你的电脑文件目录复制过来。然后问题就解决了,具体为啥,也不是特别清楚,大概是网页的文字格式和指令使用的有出入吧。
5. 当cmake没有问题后,可以进行opencv编译$ make -j$(nproc)。
6. 然后
$ sudo make install
$ sudo ldconfig
7. 如果使用虚拟环境,进入到安装目录去关联一下就好了
$ ln -s /usr/local/lib/python3.6/site-packages/cv2/python-3.6
packages/
8. 如果安装好了import cv2报模块错误,查看下安装目录是否生成的(python2.*),或者n-36m-x86_ (python3.6的)。如果没有生成,说明安装过程中出了问题。可以删除opencv目录下的build文件,重复第3步骤(cmake开始)。
~/.virtualenvs/opencv_cuda/lib/python3.6/site-
主要参考如下博文,感谢!
[1]: /2020/02/03/how-to-use-opencvs-dnn-module-with-nvidia-gpus-cuda-and-cudnn/


发布评论