在 Ultralytics YOLOv5 v7.0 中引入实例分割
探索具备全新实例分割模型的 YOLOv5 v7.0,其性能超越了 SOTA 基准,可提供顶级的 AI 精度和速度。加入我们的社区。

YOLOv5 v7.0 是我们 AI 架构的最新版本,现已发布,我们非常激动地向你介绍我们全新的实例分割模型!

在开发此最新版本时,我们始终关注两个核心目标。第一个是实现我们让 AI 变得简单的使命,第二个是重新定义“最先进”的真正含义。
通过重大的改进、修复和升级,我们做到了。保持与现有 YOLOv5 目标检测模型同样简单的工作流程,现在使用 YOLOv5 v7.0 训练、验证和部署模型比以往任何时候都更容易。除此之外,我们还超越了所有 SOTA 基准测试,有效地使 YOLOv5 成为世界上速度最快、精度最高的模型。
作为我们发布的首个分割模型,我们对这一里程碑深感自豪。我们要衷心感谢我们敬业的社区和贡献者,是你们让此次发布成为可能。

那么,让我们从 YOLOv5 v7.0 发行说明开始吧!
Link to this section重要的 YOLOv5 更新#
以下是自 2022 年 8 月发布 YOLOv5 v6.2 以来 YOLOv5 的更新内容。
- 分割模型 ⭐ 新增:SOTA YOLOv5-seg COCO 预训练分割模型首次发布 (#9052,贡献者:@glenn-jocher, @AyushExel, 和 @Laughing-q)
- PaddlePaddle 导出:使用 python export.py --include paddle 将任何 YOLOv5 模型(cls, seg, det)导出为 Paddle 格式 (#9459,贡献者:@glenn-jocher)
- YOLOv5 AutoCache:使用 python train.py --cache ram 现在会扫描可用内存并与预测的数据集 RAM 使用量进行比较。这降低了缓存风险,并有助于提高数据集缓存功能的使用率,从而显著加快训练速度。 (#10027,贡献者:@glenn-jocher)
- Comet 日志记录和可视化集成:永久免费的 Comet 允许你保存 YOLOv5 模型、恢复训练以及以交互方式可视化和调试预测结果。 (#9232,贡献者:@DN6)
Link to this section新的分割检查点#
我们使用 A100 GPU 在 COCO 数据集上以 640 的图像尺寸对 YOLOv5 分割模型进行了 300 个 epoch 的训练。我们将所有模型导出为 ONNX FP32 格式进行 CPU 速度测试,并导出为 TensorRT FP16 格式进行 GPU 速度测试。我们在 Google Colab Pro 笔记本中运行了所有速度测试,以确保轻松复现。
- 所有检查点均使用 SGD 优化器在 640 图像尺寸下训练了 300 个 epoch,其中 lr0=0.01 且 weight_decay=5e-5,并采用所有默认设置。所有运行记录均已上传至 Weights & Biases training logs。
- 精度值为 COCO 数据集上的单模型单尺度结果。复现方法:python segment/val.py --data coco.yaml --weights yolov5s-seg.pt
- 速度取自使用 Colab Pro A100 大内存实例对 100 张推理图像的平均值。数值仅表示推理速度(NMS 每张图像增加约 1ms)。复现方法:python segment/val.py --data coco.yaml --weights yolov5s-seg.pt --batch 1
- 使用 export.py 导出为 FP32 的 ONNX 和 FP16 的 TensorRT。复现方法:python export.py --weights yolov5s-seg.pt --include engine --device 0 --half
Link to this section新的分割使用示例#
Link to this section训练#
YOLOv5 分割训练支持使用 --data coco128-seg.yaml 参数自动下载 COCO128-seg 分割数据集,也支持使用 bash data/scripts/get_coco.sh --train --val --segments 手动下载 COCO-segments 数据集,然后运行 python train.py --data coco.yaml。
Link to this section单 GPU#
python segment/train.py --model yolov5s-seg.pt --data coco128-seg.yaml --epochs 5 --img 640
Link to this section多 GPU DDP#
python -m torch.distributed.run --nproc_per_node 4 --master_port 1 segment/train.py --model yolov5s-seg.pt --data coco128-seg.yaml --epochs 5 --img 640 --device 0,1,2,3
Link to this section验证#
验证 YOLOv5m-seg 在 COCO 数据集上的精度:
bash data/scripts/get_coco.sh --val --segments # 下载 COCO val 分割集(780MB,5000 张图像) python segment/val.py --weights yolov5s-seg.pt --data coco.yaml --img 640 # 验证
Link to this section预测#
使用预训练的 YOLOv5m-seg 对 bus.jpg 进行预测:
python segment/predict.py --weights yolov5m-seg.pt --data data/images/bus.jpg
model = torch.hub.load('ultralytics/yolov5', 'custom', 'yolov5m-seg.pt') # 从 PyTorch Hub 加载(警告:尚不支持推理)

Link to this section导出#
将 YOLOv5s-seg 模型导出为 ONNX 和 TensorRT:
python export.py --weights yolov5s-seg.pt --include onnx engine --img 640 --device 0

有任何问题吗?欢迎在 Ultralytics 论坛提问、提交 issue 或在仓库中 提交 PR。你还可以从我们的 YOLOv5 分割 Colab 笔记本开始快速入门教程。






