Google Colab 开发记录(3)YOLOv5 环境搭建、训练、推理

举报
一颗小树x 发表于 2021/11/25 14:37:12 2021/11/25
【摘要】 前言本文是实践记录,首先搭建YOLOv5 开发环境,然后训练模型,最后推理,查看效果。本文分为精简版和详细版,精简版是由简介和命令组成的;详细版是由简介、命令、过程信息记录 组成的。前提挂载谷歌云盘、来到自己的谷歌云盘下的目录。from google.colab import drivedrive.mount('/content/gdrive')在云盘中,创建一个名为YOLOv5的目录,然后...

前言

本文是实践记录,首先搭建YOLOv5 开发环境,然后训练模型,最后推理,查看效果。本文分为精简版和详细版,精简版是由简介和命令组成的;详细版是由简介、命令、过程信息记录 组成的。

前提

挂载谷歌云盘、来到自己的谷歌云盘下的目录。

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

在云盘中,创建一个名为YOLOv5的目录,然后进入目录

cd /content/gdrive/MyDrive/YOLOv5/


精简版——YOLOv5 环境搭建、训练、推理

1)查看当前文件目录

!pwd

显示:/content/gdrive/My Drive/YOLOv5


2)查看分配了什么GPU、内存多大

首先点击“修改”,选择“笔记本设置”,硬件加速----GPU加速

!nvidia-smi

from psutil import virtual_memory
ram_gb = virtual_memory().total / 1e9
print('Your runtime has {:.1f} gigabytes of available RAM\n'.format(ram_gb))



3)下载YOLOv5官方代码

!git clone https://github.com/ultralytics/yolov5



4)查看当前目录有哪些文件

!ls


5)进入YOLOv5目录


cd yolov5

!pwd

这两调命令需要分开执行;


6)安装YOLOv5的开发环境

pip install -r requirements.txt



7)测试开发环境是否正常

import torch

# Model
model = torch.hub.load('ultralytics/yolov5''yolov5s')  # yolov5s or yolov5m, yolov5l, yolov5x, custom

# Images
img = 'https://ultralytics.com/images/zidane.jpg'  # or file, Path, PIL, OpenCV, numpy, list

# Inference
results = model(img)

# Results
results.print()  # or .show(), .save(), .crop(), .pandas(), etc.


8)复制模型到指定目录下

上面下载了torch.hub.load的离线模型yolov5s,这保存起来,方便后面使用。

cp /root/.cache/torch/hub/ultralytics_yolov5_master/yolov5m.pt /content/gdrive/MyDrive/YOLOv5/yolov5/detect_models/

!pwd
!ls



9)推理

有几种输入方式:

默认图片文件夹推理
!python detect.py

单张图片推理
!python detect.py --source 'https://ultralytics.com/images/zidane.jpg'

视频推理
!python detect.py --source 'https://youtu.be/Zgi9g1ksQHc'

相机推理
!python detect.py --source  0



10)下载COCO数据集---128

!curl -L https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip -o coco128.zip

!pwd
!ls

!unzip -q coco128.zip -d ../datasets

!ls /content/gdrive/MyDrive/YOLOv5/datasets/coco128



11)训练模型

!pwd
!ls

训练YOLOv5s模型
!python train.py --data coco128.yaml --cfg yolov5s.yaml --weights '' --batch-size 64 --epochs 300


其他模型




详细版——YOLOv5 环境搭建、训练、推理

前提

挂载谷歌云盘、来到自己的谷歌云盘下的目录。

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

执行命令后,需要点击链接,获取验证信息,然后输入执行命令下方的框框中。

在云盘中,创建一个名为YOLOv5的目录,然后进入目录

cd /content/gdrive/MyDrive/YOLOv5/
运行效果如下:

1)查看当前文件目录

!pwd

显示:/content/gdrive/My Drive/YOLOv5


2)查看分配了什么GPU、内存多大

首先点击“修改”,选择“笔记本设置”,硬件加速----GPU加速

!nvidia-smi


from psutil import virtual_memory
ram_gb = virtual_memory().total / 1e9
print('Your runtime has {:.1f} gigabytes of available RAM\n'.format(ram_gb))



3)下载YOLOv5官方代码

!git clone https://github.com/ultralytics/yolov5



4)查看当前目录有哪些文件

!ls


5)进入YOLOv5目录


cd yolov5

!pwd

这两调命令需要分开执行;


6)安装YOLOv5的开发环境

pip install -r requirements.txt


7)测试开发环境是否正常

import torch

# Model
model = torch.hub.load('ultralytics/yolov5''yolov5s')  # yolov5s or yolov5m, yolov5l, yolov5x, custom

# Images
img = 'https://ultralytics.com/images/zidane.jpg'  # or file, Path, PIL, OpenCV, numpy, list

# Inference
results = model(img)

# Results
results.print()  # or .show(), .save(), .crop(), .pandas(), etc.

8)复制模型到指定目录下

上面下载了torch.hub.load的离线模型yolov5s,这保存起来,方便后面使用。

cp /root/.cache/torch/hub/ultralytics_yolov5_master/yolov5m.pt /content/gdrive/MyDrive/YOLOv5/yolov5/detect_models/

!pwd
!ls



9)推理

有几种输入方式:

默认图片文件夹推理
!python detect.py

单张图片推理
!python detect.py --source 'https://ultralytics.com/images/zidane.jpg'

视频推理
!python detect.py --source 'https://youtu.be/Zgi9g1ksQHc'

相机推理
!python detect.py --source  0



10)下载COCO数据集---128

!curl -L https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip -o coco128.zip

!pwd
!ls

!unzip -q coco128.zip -d ../datasets

!ls /content/gdrive/MyDrive/YOLOv5/datasets/coco128



11)训练模型

!pwd
!ls

训练YOLOv5s模型
!python train.py --data coco128.yaml --cfg yolov5s.yaml --weights '' --batch-size 64 --epochs 300



等待训练完成即可;
训练好的模型保存在 runs/train/exp14
在此命令中 !python train.py --data coco128.yaml --cfg yolov5s.yaml --weights '' --batch-size 64 --epochs 300
要点:
  1. --data coco128.yaml 是指训练的数据集;
  2. --cfg yolov5s.yaml 是指训练那个模型,还可以选择yolov5m.yaml、yolov5x.yaml、yolov5l.yaml
  3. --weights '' 是指初始权重,可以为空,也可以输入一个xxx.pt,比如yolov5s.pt
  4. --batch-size 64 是指训练批次大小,根据显存大小设置,如果显存不够可以设置32、16、8等;
  5. --epochs 300  是指迭代次数,一共迭代多少轮。



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200