当前位置:   article > 正文

安装docker和编译opencv2021.5.20-21_docker opencv

docker opencv

主要安装docker,编译opencv
1.同一局域网下面,可以这样连接
在这里插入图片描述
2.1安装docker
或者这个
2.2加载镜像文件,在镜像文件夹目录那里

docker load -i docker load -i 18.04-cuda11.1-runtime-Base-image-V201211.tar
  • 1

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

docker run -di --name=ubuntu18 dd42bd239451
  • 1

在这里插入图片描述

2.3有nvidia的还需要安装nvidia-docker
这个里面的第三步。
2.4确保自己的系统已经成功安装 cmake、g++、gcc
2.5运行

sudo nvidia-docker run -d --privileged -ti -v ~/18.04-11.1-runtime-app:/data -v /etc/timezone:/etc/timezone:ro -v /etc/localtime:/etc/localtime:ro -p 0.0.0.0:8689:8689 --runtime=nvidia --restart unless-stopped --cap-add=SYS_PTRACE -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all --ipc=host --name 18.04_11.1_rumtime_wzw nvidia/cuda:11.1-cudnn8-runtime-ubuntu18.04
  • 1

解释

-v ~/18.04-11.1-runtime-app:/data#将自己的本地文件夹映射到docker里面的data文件夹 -v的都是文件夹映射
  • 1

在映射文件夹的时候注意使用绝对路径!如:

-v /home/hzq/docker:/data
  • 1

222222。将这个名字改为自己想要的名字

--name 18.04_11.1_rumtime_wzw
  • 1

--name hzq_docker
  • 1

33333.这个是前面2.2执行后可以通过sudo docker ps来查看

nvidia/cuda:11.1-cudnn8-runtime-ubuntu18.04
  • 1

我的是
在这里插入图片描述
所以我需要改为

brifactory/18.04:11.1-runtime-base-ffmpeg
  • 1

2.6打开容器:BrilliantFactory为自己容器的名称,我的是之前的hzq_docker

sudo nvidia-docker exec -it BrilliantFactory /bin/bash
  • 1

3.opencv编译(使用cuda加速)

安装之前先检查以下驱动和cuda安装好了没
检查驱动

nvidia-smi
  • 1
nvcc -V
  • 1

注意高版本的cudnn安装看下面链接的最后一行
如果都有输出就是安装成功了的。注意这里面的cudnn的安装坑。
3.1编译之前的准备
先在网上搜ubuntu18 opencv 等关键词,将需要的依赖项都提前安装好,如果后面报错了,后面又在补充。
依赖库(都看着弄)
a
b
c
d(这个里面比较详细,但是没有完全按照他的来)
e
f

安装这个:OpenBLAS

sudo apt-get install libopenblas-dev
sudo apt-get install doxygen
sudo apt-get install libgtk-3-dev
  • 1
  • 2
  • 3

在这里插入图片描述
安装完了过后关机重启!
3.2然后在编译

cmake -D CMAKE_INSTALL_PREFIX=install -D OPENCV_EXTRA_MODULES_PATH="/data/18.04-cuda11.1-devel-Base-source-v201210/source/opencv_contrib-4.5.0/modules" -D WITH_CUDA=ON -D WITH_FFMPEG=ON -D ENABLE_CXX11=ON -LA ..
  • 1

只需要改以下路径就可以了,运行这个命令是在opencv-4.5… 里面的build文件夹下面运行的。
在cmake的时候看一下输出中的cuda是否为YES(这个在中间位置)
在这里插入图片描述
还需要查看cmake的输出,重头到下面这个图在这里插入图片描述
都一行一行的看,主要看有没有报错,有没有失败或者错误的,然后在一个一个的百度,找方法,因为我的错误太多了,就没有记录。(人生第一次知道,原来一长串的输出还需要看一的。mmp)

感觉差不多(也就百度得不能再百度了),就执行下面一个步骤。

3.3然后在make -j8或者make -j4都可以,建议用j4。 (自己用的是make install)
漫长的等待
(警告不管,错误伤心,得返回找cmake的错误,再重新cmake)
补充:还可以使其在后台编译:nohup make -j4 &,使用这个的原因是因为自己是ssh链接的设备,没有使用显示屏之类的,所以自己要是下班了,把ssh强行断开后,make就自动停止了,不是用这个就需要自己一直ssh连着。
3.4还是在编译
sudo make install
3.5这是防止后面测试出问题
安装1
安装2
3.6安装好了过后将库添加到路径或者参考这个
3.6.1添加后还是出错
解决方案1
3.6.2
问题://usr/lib/x86_64-linux-gnu/libblas.so.3:对‘gotoblas’未定义的引用
解决方案。
4.验证,从里面的第二步开始看,应该是这样的。
(5.22未成功)
(5.23成功(但是摄像头未一直是打开的状态))
拯救
1这个里面创建的opencv.pc文件那里开始:还是不行
打算卸载cuda重新安装一次

5.24补充
又把前面的有些步骤删除了
因为在运行这些里面的代码的时候,不删除又会有问题
https://blog.csdn.net/hdt999r/article/details/96432378
https://blog.csdn.net/huojh1/article/details/52736836

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/108021
推荐阅读
相关标签
  

闽ICP备14008679号