nuc 11猎豹峡谷通过docker部署yolov5,并测试运行速度


前言

最近有个项目是用巻积神经网络做目标检测,一般的开发板当然是跑不动的啦,所以买了一台nuc11(猎豹峡谷),厂家直发的系统是windows10,我将其改为ubuntu系统,用docker部署yolov5,然后测试了其性能。

硬件环境:nuc 11(猎豹峡谷)

项目Value
处理器11代 intel i7
内存8G
外存128G

ubuntu的系统安装

nuc 系统的更换已经有博客讲得很详细了,这里搬运一下,我用链接的方法是没问题的。
参考链接: https://blog.csdn.net/m0_50679156/article/details/120881016


系统备份

(备份系统是我个人习惯,以免系统崩了要重来,无此需求的可以跳过此步)

参考链接: https://zhuanlan.zhihu.com/p/51827233

因为ubuntu系统都是以文件的形式存在,所以我们直接打包根目录。系统坏掉以后解压打包的文件,覆盖掉原始文件就行。

tar打包方法:

# 备份前先切换到root用户,避免权限问题
sudo su

# 再切换到/(根目录)
cd /

# 备份系统
tar -cvpzf /media/Disk/myDisk/ubuntu_backup@`date +%Y-%m+%d`.tar.gz --exclude=/proc --exclude=/tmp --exclude=/home --exclude=/lost+found --exclude=/media --exclude=/mnt --exclude=/run /

tar命令参数:
-c: 新建一个备份文档
-v: 显示详细信息
-p: 保存权限,并应用到所有文件
-z: 用gzip压缩备份文档,减小空间
-f: 指定压缩包名称(带路径),只能做最后一个参数
–exclude: 排除指定目录,不进行备份
注意,如果没有把/home或者/boot目录单独分一个区,一定不要加–exclude=/home或–exclude=/boot参数!

文件目录介绍
/proc:一个虚拟文件系统,系统运行的每一个进程都会自动在这个目录下面创建一个进程目录。既然是系统自动创建,也就没必要备份的必要了。
/tmp:一个临时文件夹,系统的一些临时文件会放在这里。
/lost+found:系统发生错误时(比如非法关机),可以在这里找回一些丢失文件。
/media:多媒体挂载点,像u盘、移动硬盘、windons分区等都会自动挂载到这个目录下。
/mnt:临时挂载点,你可以自己挂载一些文件系统到这里。
/run:系统从启动以来产生的一些信息文件。
/home:用户家目录,存放用户个人文件和应用程序。
/boot:和系统启动相关的文件,像grub相关文件都放在这里,这个目录很重要!

为了保险起见,也可以对/home和/boot备份,但是备份频率完全没必要和/分区一样高。比如/分区每周备份一次,那/home和/boot完全可以一个月备份一次,因为这两个分区出问题的概率真的很小,而且变动也不会太频繁。


yolov5的部署

1、docker常用命令

  1. docker pull imagename(拉取名字为imagename的镜像)
  2. docker search imagename(查找dockerhub上的镜像)
  3. docker images(查看所有镜像)
  4. docker rm imagename(删除镜像)
  5. docker tag 860c279d2fec runoob/centos:dev(添加新标签)
  6. docker pull -a(查看所以容器)
  7. docker ps(查看正在运行的容器)
  8. docker run -itd -v /share:/share imageID(-it交互式 -d后台运行 -v将主机/share文件夹挂载到docker的根目录/share中,如果没有share文件夹则自动创建 imageID镜像名)
  9. docker start containerID(启动已停止的容器)
  10. docker stop containerID(停止容器)
  11. docker restart containerID(重启容器)
  12. docker exec -it containerID /bin/bash(-it交互式方式 /bin/bash进入命令行)
  13. docker rm -f containerID(删除停止的容器)
  14. docker container prune(删除所有容器)

2、安装docker

这里我直接使用脚本自动安装(太菜了手动安装玩不来)

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

如果报错提示没有curl

sudo apt-get install curl

等待docker安装结束就可以,终端键入docker有提示信息代表安装成功

在这里插入图片描述

3、docker拉取镜像

牛顿说过:“如果说我看的比别人更远些,那是因为我站在巨人的肩膀上“。

我们直接拉取制作好的镜像,你可以在这个镜像上自行修改。拉取镜像默认你是有docker官网的账号的,没有不能拉取。放一篇注册账号的链接
参考链接: https://blog.csdn.net/debugbugbg/article/details/81865553

接下来我们拉取docker仓库里的镜像,官网有很多版本,我这里是 latest cpu 版

sudo docker pull ultralytics/yolov5:latest-cpu

其他版本的链接
链接: https://hub.docker.com/r/ultralytics/yolov5/tags

在这里插入图片描述键入上面的命令后等待下载完成即可。

换源:如果网速慢受不了可以换源,我使用的是docker的国内镜像源,修改文件就行,阿里的还要注册帐号,嫌麻烦。
参考链接: https://blog.csdn.net/qq_44623314/article/details/121763336

4、docker开启容器

这里需要开启基于我们前面拉取的镜像的容器,然后让代码运行在里面,我们把主机的代码挂在到docker容器中(镜像里面自带有yolov5的代码,我改动了代码,所以需要挂载我自己的代码)

sudo docker images # 查看镜像ID
# 4a758212d5a9
sudo docker run -itd -v /share:/share 4a758212d5a9 # 开启一个容器,挂载主机文件夹share到容器的/share,执行完后此步生成一个容器
# b96858bbec5a
sudo docker exec -it b96858bbec5a /bin/bash # 进入容器

在这里插入图片描述可以看到出现share文件夹,里面就是主机挂载的文件。到此,环境搭建完成,直接运行代码就行。


nuc 11 性能测试

这里主要测试yolov5各个尺寸的模型在猎豹峡谷上的运行速度。
系统:ubuntu18.04,运行环境:docker,直接上表格,表格中n/s/m分别代表模型大小为nano,small,medium
图片尺寸【320,320】下

推理方式推理时间 n/s/m
openvino6 / 15 / 35 ms
onnx5.6 / 13 / 37 ms
pt10 / 18 / 43 ms

图片尺寸【640,640】下

推理方式推理时间 n/s/m
openvino20 / 55 / 130 ms
onnx27.5 / 68 / 164 ms
pt26 / 91 / 154 ms

总结

1、更换了nuc 11的系统为ubuntu
2、安装docker,在docker上搭建代码环境
3、测试了yolov5各尺寸的模型在nuc 11上的性能

引用

https://blog.csdn.net/m0_50679156/article/details/120881016
https://zhuanlan.zhihu.com/p/51827233
https://blog.csdn.net/debugbugbg/article/details/81865553
https://hub.docker.com/r/ultralytics/yolov5/tags
https://blog.csdn.net/qq_44623314/article/details/121763336

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泡椒香菜‍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值