在这篇文章中,我们将使用来自 AWS 上的 COCO 数据集(可定制)的图像设置和运行 YOLO。
一般来说,分类技术在自动驾驶汽车中没有多大帮助,因为它只预测图像中的一个对象,并且不给出该图像的位置。 而目标检测在自动驾驶汽车中非常重要,可以检测场景中的对象及其位置。 YOLO(你只看一次)是由 Joseph Redmon 等人创建的一种高速实时对象检测算法。 YOLO使用卷积神经网络 (CNN)解决概率的回归问题。 后来又进行了一些修改。 为了进行预测,YOLO 只需要通过 CNN 进行一次前向传播。 它输出具有相应边界框的对象。 它广泛用于自动驾驶汽车以检测场景中的物体。
第 1 步:设置帐户(这步可以跳过)
登录wandb.ai网站并复制以下内容:
来自 wandb.ai/authorize 的 API 密钥
wandb.ai/settings 中的团队名称。 默认团队名称将是用户 ID。
第 2 步:创建 AWS 实例(如果你在本机训练这步也可以跳过)
在创建实例时,选择“Deep Learning AMI (Ubuntu 18.04) Version 47.0 — ami-01f1096e6659d38fa”AMI,因为它具有深度学习任务所需的库。 如果我们在“选择AWS机器映像 (AMI)”步骤中搜索“deep learning”,我们可以找到这。为“实例类型”选择 P3 实例。 实例类型 p3.2xlarge(V100) 就足够了。为了节省成本,请在“配置实例”步骤下选择 Spot 实例。
第 3 步:安装依赖项
登录 AWS 实例后,使用以下命令创建 conda 环境并设置 Weights & Bias 环境变量:
# Create conda environment with name 'test'
$ conda create -n test python=3.9.6 wandb
# login to test environment
$ conda activate test
# clone the latest yolov5 and install the required libraries
$ git clone https://github.com/ultralytics/yolov5
$ cd yolov5
$ pip install -r requirements.txt
# Set the Weights & Bias environment
# Key from https://wandb.ai/authorize$
export WANDB_API_KEY=337....4a8
# Team name from https://wandb.ai/settings
$ export WANDB_ENTITY=user_team_name
# Project name
$ export WANDB_PROJECT=yolov5
第 4 步:训练、验证和测试
# Train a model. By default, it uses data/coco128.yaml and runs for 300 epochs. Dataset is downloaded from https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip (128 images under images/train2017 from coco128.zip)
$ python train.py
# Validate a model for Precision, Recall and mAP (128 images under images/train2017 from coco128.zip).
$ python val.py --weights yolov5s.pt
# There are two images. We can use our custom images.
$ python detect.py --weights yolov5s.pt --source /home/ubuntu/yolov5/data/images
第 5 步:检查指标
验证集真实标签
验证集预测标签
训练的损失
测试
以上所有结果都会保存在文件夹yolov5\runs\detect\exp下
本文暂时没有评论,来添加一个吧(●'◡'●)