地平线官方在下面链接(文档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,这点很重要!!!
依次点击:Code-Download ZIP
下载后源码后,放到电脑桌面上。
开源的数据集有很多,大家可以自己去找,我的数据集是关于道路裂缝的,关注这个主题的人可能比较少,这里就先不细说了,如果有需要,欢迎留言!
由于我的电脑是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文件
点击重新连接,就可以开始白嫖。
from google.colab import drive
drive.mount('/content/drive')
待运行完成中,点击图中见图指向的文件夹图案,drive文件夹里就是我们云端硬盘的内容
接着解压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/
数据集不进行解压,以压缩包dataset.zip形式存放在/content/drive/MyDrive目录下
在test1.ipynb文件中运行下列代码,下载yolov5需要的各种库
!pip3 install -r /content/drive/MyDrive/lei00764/yolov5/requirements.txt
这里面坑比较多,尤其是我们用的不是最新的yolov5,而Colab使用的大多是最新的库。
待补充
!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 # 进行训练