【X3派】【零基础】将YOLOv5算法部署到X3派上|ncnn|未完待续

1、下载YOLOv5-v2.0源码和数据集

地平线官方在下面链接(文档2.3.7.YOLOv5s)中指出,当前X3派仅支持yolov5-v2.0版本。

2. 算法模型示例 — horizon_model_convert_sample_documentation v1.12.3 文档

因为我们是要训练自己的数据集,所以我们首先要从github上下载yolov5的源代码。

下载链接:GitHub - ultralytics/yolov5: YOLOv5 in PyTorch > ONNX > CoreML > TFLite

依次点击:master-Tage-v2.0

注:一定要选在v2.0,这点很重要!!!

【X3派】【零基础】将YOLOv5算法部署到X3派上|ncnn|未完待续_第1张图片 

点击完v2.0后,页面显示如下图所示:【X3派】【零基础】将YOLOv5算法部署到X3派上|ncnn|未完待续_第2张图片

依次点击:Code-Download ZIP

下载后源码后,放到电脑桌面上。

开源的数据集有很多,大家可以自己去找,我的数据集是关于道路裂缝的,关注这个主题的人可能比较少,这里就先不细说了,如果有需要,欢迎留言!

2、上传源代码和数据集

由于我的电脑是mac,不支持GPU,所以我是选择Google Colab进行训练,白嫖党的幸福。为了提高训练速度,我开了一个月的会员Colab pro。(如何开通?见tb)

有关Colab的介绍见如何评价 Google Colab 提供的免费 GPU? - 知乎

Colab一般是配合谷歌的云端硬盘进行使用,https://drive.google.com/drive/my-drive。

将YOLOv5-v2.0的代码和数据集分开压缩然后上传到云端硬盘上,后续我们需要当数据集单独放在Colab的目录下,而代码始终会放在云端硬盘中,这是因为Colab读取云端硬盘的速度emmm慢。

注:上传速度可能很慢,毕竟服务器在国外。

接着我们打开Colab,新建一个test1.ipynb文件

【X3派】【零基础】将YOLOv5算法部署到X3派上|ncnn|未完待续_第3张图片

点击重新连接,就可以开始白嫖。

from google.colab import drive 
drive.mount('/content/drive')

输入上述命令,目的是将Colab和我们的云端硬盘相连接。【X3派】【零基础】将YOLOv5算法部署到X3派上|ncnn|未完待续_第4张图片

待运行完成中,点击图中见图指向的文件夹图案,drive文件夹里就是我们云端硬盘的内容【X3派】【零基础】将YOLOv5算法部署到X3派上|ncnn|未完待续_第5张图片

 

接着解压YOLOv5源码,在Colab中新建一个文件,命名为unzipfile.ipynb

from google.colab import drive 
drive.mount('/gdrive') 
!unzip '/gdrive/My Drive/MyDrive.zip/lei00764/yolov5.zip' -d '/gdrive/My Drive/lei00764'

前两行代码作用依旧是挂载云端硬盘

最后一个代码是将yolov5压缩包进行解压,存放在 /content/drive/MyDrive/lei00764/

【X3派】【零基础】将YOLOv5算法部署到X3派上|ncnn|未完待续_第6张图片

数据集不进行解压,以压缩包dataset.zip形式存放在/content/drive/MyDrive目录下

3、配置环境

在test1.ipynb文件中运行下列代码,下载yolov5需要的各种库

!pip3 install -r /content/drive/MyDrive/lei00764/yolov5/requirements.txt

这里面坑比较多,尤其是我们用的不是最新的yolov5,而Colab使用的大多是最新的库。

待补充

4、进行训练

!mkdir /content/datasets # 在content目录下创建一个目录用于存放数据集
!unzip "/content/drive/My Drive/dataset.zip" -d "/content/datasets" # 解压数据集,移动到/content/datasets目录下
# 这里需要对train.py中某些参数进行更改,对应的配置文件也要进行更改或新建 
!python3 /content/drive/MyDrive/lei00764/yolov5/train.py # 进行训练

你可能感兴趣的:(笔记,python,开发语言)