Ultralytics YOLO:模型类别、训练方式与使用全解析

从零到一:Ultralytics YOLO系列模型训练全流程实战解析 本文详细解析了Ultralytics YOLO系列模型从环境配置到实战训练的全流程,重点介绍了YOLOv8和YOLO11的架构差异与性能对比。通过数据准备、模型训练技巧和高级调优方法,帮助开发者快速掌握目标检测模型的部署与应用,提升AI项目开发效率。 阅读详情

📺 B站视频讲解(Bilibili):https://www.bilibili.com/video/BV1k1C9BYEAB/

📘 《Yocto项目实战教程》京东购买链接:Yocto项目实战教程


Ultralytics YOLO:模型类别、训练方式与使用全解析

Ultralytics YOLO(以下简称 YOLO)已成为目标检测领域最主流的开源框架之一。它不仅延续了 YOLO 系列“一次前向推理即可得到所有预测”的高效理念,更通过 Ultralytics 官方库将检测(Detection)、分割(Segmentation)、分类(Classification)、姿态估计(Pose)、旋转框检测(OBB)整合成统一的任务体系,使其成为当前最易上手、最完善的 YOLO 工具链。本篇博文旨在系统、客观、完整地解析 YOLO 的模型类别、任务分类体系、训练方式及使用目标,帮助你在工程中高效选择模型、构建训练流程,并理解不同模型在实际应用中的适用逻辑。


在这里插入图片描述

1. YOLO 模型体系全景图:Ultralytics 的任务分类

在 Ultralytics YOLO 中,所有模型都按“任务(Task)”划分,而任务类型决定模型的结构、Head 的输出、标签格式与训练方式。整体可归纳为以下五类:

任务类型模型后缀输出内容数据集来源典型场景
目标检测 Detection无bbox + class + confidenceCOCO工业检测、行人检测、机器人视觉
实例分割 Segmentation-segbbox + maskCOCO-Seg医疗、分割计数、自动标注
分类 Classification-clsclassImageNet图像质量检测、产品分选
姿态估计 Pose-pose人体关键点COCO-Pose健身动作识别、安防、人机交互
旋转框检测 OBB-obbangle + bboxDOTAv1航拍、遥感、目标倾斜检测

从工程角度理解:Ultralytics YOLO 是一个多任务统一框架,每种任务对应一类模型,选择任务类型通常比选择模型大小更重要,因为这决定数据格式与输出结构。


2. YOLO 模型命名规则:模型规模与任务类别如何对应?

Ultralytics 的 YOLO 模型名称由两部分组成:

[模型家族][模型规模][-任务类型]

具体解释如下:

2.1 模型家族:YOLO11 是当前最新官方系列

如:YOLO11n、YOLO11s、YOLO11m。

2.2 模型规模(从轻到重)

后缀含义参数量特点
nnano最轻、最快
ssmall较小、速度快
mmedium平衡型
llarge精度高
xextra large精度最高、计算量最大

规律:越大的模型精度越高,但速度越慢。

2.3 任务类型后缀

任务后缀示例
检测无YOLO11s
分割-segYOLO11s-seg
姿态-poseYOLO11s-pose
分类-clsYOLO11s-cls
旋转框-obbYOLO11s-obb

例如:

  • YOLO11n:轻量检测模型
  • YOLO11s-seg:小型实例分割模型
  • YOLO11m-pose:中型人体姿态模型
  • YOLO11x-obb:最大规模的旋转框检测模型

3. 不同任务类型的结构差异与适用领域

不同任务选择不同模型 Head,因此训练方式、标签格式与推理结果都不同。

3.1 检测(Detection)

  • 输出: bbox(x,y,w,h)+ class + confidence
  • 标签格式: class x_center y_center width height
  • 代表模型: YOLO11n / s / m / l / x
  • 适合: 所有通用视觉任务

这是 YOLO 的主战场,也是 Jetson 最常部署的模型类型。

3.2 实例分割(Segmentation)

  • 输出: bbox + instance mask
  • 标签格式: bbox + 多边形 mask
  • 适合: 医疗、计数、自动标注、精准分割场景

3.3 姿态估计(Pose)

  • 输出: 人体关键点(如 17 点)
  • 标签格式: keypoints
  • 适合: 健身动作、安防行为检测、人机交互

3.4 分类(Classification)

  • 输出: class
  • 标签格式: ImageNet 风格分类标签
  • 使用场景: 产品质量检测、外观筛选、预分类

3.5 旋转框检测(OBB)

  • 输出: 旋转矩形(5D:x,y,w,h,angle)
  • 适合: 航拍遥感、倾斜检测、OCR

4. 如何选择适合的 YOLO 模型?(实战指南)

选择模型时你需要问三个问题:

4.1 你的任务是什么?(Detection / Segmentation / Classification…)

例如:

  • 跟踪物体 → detection
  • 分割缺陷 → segmentation
  • 检测人体姿态 → pose
  • 分类产品类型 → classification
  • 无人机航拍 → obb

4.2 你的设备算力多强?

设备推荐模型
Jetson NanoYOLO11n / YOLO11s
Jetson Orin NanoYOLO11n/s/m
Jetson Orin NXYOLO11m/l
AGX Orin任意模型(含 YOLO11x)
服务器 T4/V100/A100可用 YOLO11x

4.3 你的实时要求是多少 FPS?

  • ≥ 60 FPS:YOLO11n/s
  • ≥ 30 FPS:YOLO11m
  • 高精度优先:YOLO11l/x

5. YOLO 的训练方式:从零开始构建训练管线

Ultralytics 提供了极其简单的训练接口。

5.1 训练检测模型

yolo train model=yolo11s.pt data=coco128.yaml epochs=100 imgsz=640

参数说明:

参数含义
model使用的预训练模型
data数据集配置文件
epochs训练轮数
imgsz输入图像尺寸

5.2 训练自定义数据集

数据集格式示例:

train/images
train/labels
val/images
val/labels

标签格式(YOLO txt):

class x_center y_center width height

训练命令:

yolo train model=yolo11s.pt data=mydataset.yaml epochs=100 imgsz=640

6. YOLO 的推理与验证

6.1 命令行推理:

yolo predict model=yolo11s.pt source="image.jpg"

6.2 推理视频:

yolo predict model=yolo11s.pt source="0"

6.3 Python 推理

from ultralytics import YOLO

model = YOLO("yolo11s.pt")
results = model("image.jpg")
results.show()

7. Ultralytics YOLO 模型性能对比表(Detection)

下面以 YOLO11 检测模型为例:

模型mAP50-95CPU速度(ms)TensorRT速度(ms)参数量(M)FLOPs(B)
YOLO11n39.556.11.52.66.5
YOLO11s47.090.02.59.421.5
YOLO11m51.5183.2
6.2.020.168.0
YOLO11l53.4238.66.225.386.9
YOLO11x54.7462.811.356.9194.9

从表格可见:模型规模越大,精度越高,但速度越慢,这与一般深度学习模型的复杂度规律高度一致。


8. YOLO 标签格式与任务差异(一目了然)

为了训练不同任务,YOLO 的标签格式也不同,建议使用以下表格掌握:

任务类型标签格式示例
检测 Detectionclass x_center y_center width height0 0.5 0.5 0.3 0.4
分割 Segmentationmasks + bbox0 polygon_points...
姿态 Posekeypoints + bbox0 x1 y1 v1 ...
分类 Classification单标签 txt 或分类目录结构cat, dog
OBBclass x y w h angle0 120 233 50 20 45

掌握标签格式是训练模型前最关键的一步。


9. YOLO 训练常见问题(FAQ)

❓ 9.1 为什么我的模型训练不收敛?

常见原因:

  • 数据集标签错误
  • 类别数不匹配
  • 学习率过高
  • imgsz 太小

❓ 9.2 如何为 Jetson 加速推理?

建议使用:

  • TensorRT 导出:yolo export format=engine
  • FP16 精度
  • imgsz=640 或 512

❓ 9.3 如何选择 Batch Size?

  • 显存足够 → 越大越好
  • Jetson → 建议 8 或 16

10. 总结:Ultralytics YOLO 的学习路径

  1. 理解任务类型(detect / seg / cls / pose / obb)
  2. 根据场景选择模型规模(n/s/m/l/x)
  3. 准备符合 YOLO 标签格式的数据集
  4. 使用简单命令进行训练
  5. 使用 predict 或 Python API 推理
  6. 优化部署(TensorRT、量化、剪枝)

YOLO 的优势在于:结构统一、接口统一、训练简单、部署方便、多任务兼容性强,非常适合 Jetson 等边缘 AI 项目。



📺 B站视频讲解(Bilibili):https://www.bilibili.com/video/BV1k1C9BYEAB/

📘 《Yocto项目实战教程》京东购买链接:Yocto项目实战教程


Ultralytics框架实战:从YOLO模型训练到部署的完整流程解析 本文详细解析了使用Ultralytics框架完成YOLO模型从训练到部署的完整流程。内容涵盖环境搭建、数据准备、模型训练调优、性能评估及生产部署等核心环节,并深入剖析了Ultralytics主框架的实战应用,为开发者提供了一套高效、可落地的技术方案。 阅读详情

相关推荐

yolov5模型.zip

yoloV5预训练模型,官方给的是谷歌网盘下载地址,下载速度较慢,压缩包包含yolov3-spp.pt,yolov5l.pt,yolov5m.pt,yolov5s.pt,yolov5x.pt

通俗易懂的YOLO系列(从V1到V5)模型解读!

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达0 前言本文目的是用尽量浅显易懂的语言让零基础小白能够理解什么是YOLO系列模型,以及他们的设计思想和改进思路分别是什...

小白学视觉 4万+

手把手教你修改miniwiggler配置信息,解决UDE连接问题(附FT_PROG工具下载)

本文详细介绍了如何使用FT_PROG工具修改miniwiggler配置信息,解决UDE连接问题。通过分析FT2232芯片的EEPROM结构,提供从驱动安装到配置烧写的完整流程,帮助开发者实现无缝连接英飞凌TriBoard开发板。文章还包含常见错误解决方案和高级批量配置技巧。

weixin_30919429的博客 374

【Yolo系列目标检测模型】详细整理!更新中

【Yolo系列目标检测模型】详细整理!更新中

m0_48086806的博客 3999

别让你的URDF模型在Gazebo里‘躺平’:手把手教你配置libgazebo_ros_diff_drive插件让两轮小车动起来

本文详细解析了如何在Gazebo中配置libgazebo_ros_diff_drive插件,使两轮小车模型实现动态仿真。从URDF模型到传动装置,再到差速驱动插件的精细调参,手把手教你解决机器人‘躺平’问题,提升ROS1与Gazebo仿真的实战能力。

weixin_42552716的博客 334

CMake安装grpc生成gRPCTargets.cmake文件

以下是安装语句: cd grpc_folder git submodule update --init cmake .. make -j 4 sudo make install 然而编写依赖gRPC的程序,发现无法调用gRPC的CMake文件,错误提示如下所示: include could not find load file: /usr/local/lib/cmake/g...

2329

目标检测:YOLO 模型详解

YOLO 模型凭借其高效的端到端检测能力,在实时目标检测领域取得了显著的成果。:在前几代 YOLO 的基础上,对损失函数进行了进一步的优化和完善,使其能够更好地平衡边界框定位误差和类别分类误差之间的关系,并且针对不同尺度特征图的预测结果采用了不同的损失权重,以提高模型在不同尺度上的检测效果。:进一步改进了损失函数,采用了不同尺度特征图的损失加权求和的方式,使得模型在不同尺度上的检测结果都能够得到有效的优化,并且对边界框的坐标、宽度高度以及类别置信度的误差计算都进行了精细化的设计,以提高整体检测性能。

分享学习期间的笔记心得 1万+

大唐杯5G考前冲刺篇(回顾全文重点必看)

大唐杯习题复习指南

nimo观察者 1万+

hello-javascript正则表达式:文本处理与模式匹配终极教程

正则表达式是JavaScript中处理文本和模式匹配的强大工具,能够快速搜索、验证和替换字符串中的特定模式。掌握正则表达式技巧可以显著提高你的编程效率和代码质量。 ## 什么是正则表达式? 正则表达式(Regex)是一种用于描述字符串模式的特殊语法,通过简洁的符号组合来匹配复杂的文本规则。在hello-javascript项目中,正则表达式被广泛用于数据验证、文本处理和字符串操作。 [![J

gitblog_00321的博客 831

C#面试题及详细答案120道(61-75)-- 多线程与异步

本文摘要了前后端面试题中关于线程与并发的核心知识点,包括线程与进程的区别(61题)、Thread/ThreadPool/Task的对比(62题)、线程安全实现方法(63题)、lock关键字的原理(64题)、Monitor类的进阶用法(65题)以及死锁的成因与避免(66题)。通过C#代码示例和表格对比,清晰展示了多线程编程的关键概念、应用场景及常见问题解决方案,适合开发者快速掌握面试高频考点。完整内容可访问专栏目录获取更多技术面试题解析。

大剑师兰特的GIS世界 1431

23 中望CAD二次开发(ZRX C++)-自定义实体(二)

本文详细介绍了自定义图形实体,如何实现几何变换、捕捉、节点编辑,并介绍了CAD代理的概念。

cilvsuanna的博客 437

深度学习入门篇——YOLO数据集的制作与模型训练

本文介绍了YOLO目标检测模型的数据集制作、划分与训练流程。首先阐述了YOLO数据集的组成要素和三类数据集(训练集、验证集、测试集)的功能划分原则,并给出了不同数据规模下的推荐划分比例。详细说明了数据集目录结构规范,包括图像与标注文件的对应关系,以及data.yaml配置文件的编写要点。提供了完整的Python数据集随机划分代码实现,支持自定义划分比例。在模型训练环节,介绍了预训练模型的选择标准、常见训练参数的调整策略,并给出了具体的训练命令示例。最后说明了如何使用训练好的模型进行目标检测,包括检测命令参数

2301_79702677的博客 2577

Prism 入门02,区域介绍

什么是区域(Region)?区域,在Prism 框架中,区域是模块化的核心的功能之一,其主要作用是降低应用程序和模块之间的耦合度。使用方式:在应用程序的界面中,划分出某块区域,并为这个区域定义一个唯一的区域名称。那么通过这个区域名称,应用程序就可以找到指定的区域。并为这个区域动态放置一些容器或控件,从而呈现在界面中。

build2024 1126

如何不转换格式直接用 Ultralytics YOLO 在 COCO JSON 标注上训练

如果你的数据集标注以 COCO JSON 格式存在(如 Labelme、COCO 官方工具或 SAM 导出的 `instances_train.json`),而 Ultralytics YOLO 默认训练管线只识别 YOLO `.txt` 标签,常规做法是先跑一次 `convert_coco()` 把标注转成 `.txt` 文件再训练。项目文档提供了一条不转换的路径:通过一个自定义数据集类在训练时

gitblog_01198的博客 900

Autosar诊断实战系列05-Dcm之0x27加解密服务配置开发详解

UDS 0x27服务实战开发介绍,对解锁尝试次数及delay时间进一步解释。

initiallizer的博客 1993

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

3.4 使用Ultralytics YOLO进行模型导出

这一部分导出我还没用到。

tang7mj的博客 2636

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

深入了解 Ultralytics YOLO11 模型验证

yolo验证模型性能

weixin_53956331的博客 2464

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Ultralytics YOLO 上的 COCO 数据集实战:配置、自动下载与训练全流程解析

COCO(Common Objects in Context)是目标检测、实例分割与姿态估计领域最广泛使用的基准数据集。在 Ultralytics 仓库中,围绕 COCO 已形成一套完整的工作流:从 [coco.yaml 数据集配置](https://link.gitcode.com/i/6c4fa3bf8784790e4c5727ab7553c329) 定义 80 个类别与数据划分,到 [che

gitblog_00086的博客 697

告别训练困境:Ultralytics YOLO模型最佳权重选择机制全解析

在目标检测模型训练过程中,如何精准把握权重文件的质量是每个开发者必须面对的核心问题。本文将系统剖析Ultralytics YOLO系列模型的权重选择机制,通过解读源码逻辑、分析关键指标和实战案例,帮助你掌握自动筛选最佳权重的技术细节,让模型训练不再依赖经验主义。 ## 权重选择的核心挑战 训练过程中会产生多个权重文件,包括每个epoch结束保存的临时文件和最终的`last.pt`,但盲目选择可...

gitblog_00081的博客 611

使用Ultralytics YOLO导出模型

YOLO11导出模式提供多种格式转换功能,支持将训练好的模型部署到不同平台。通过简单命令或代码即可导出为ONNX、TensorRT等格式,实现CPU/GPU性能优化(最高提升3-5倍)。导出参数可定制输入尺寸、量化精度等,满足硬件兼容性和推理效率需求。支持导出为12种格式(如TensorFlow Lite、CoreML等),均保留模型元数据。关键优势包括:一键导出、批量推理优化、动态尺寸支持,适用于边缘计算到云端部署的各类场景。

mx9818的博客 1137

Ultralytics YOLO Signature Detection Dataset:单类手写签名检测数据集的配置、自动下载与训练实战

本文围绕 Ultralytics 仓库中的 [Signature Detection Dataset](https://link.gitcode.com/i/cc32a1bfe63029fe17854668ad47326d) 展开,讲清这个由 178 张文档图像、单 `signature` 类别组成的目标检测数据集的结构与配置([signature.yaml](https://link.gitco

gitblog_01178的博客 756

CVAT 数据集导入 Ultralytics Platform 完整指南:从导出到训练部署

本指南围绕 CVAT(Computer Vision Annotation Tool)标注平台与 Ultralytics Platform 之间的数据集流转展开,说明如何**在官方"一键直连导入"功能上线之前**,利用两者天然兼容的 Ultralytics YOLO 目录布局,通过"CVAT 导出 → ZIP 上传 → Platform 自动解析"这条短路径,把检测、分割、OBB、姿态等标注结果直

gitblog_00586的博客 1058

Ultralytics YOLO26 在 AzureML 云端训练实战:从终端到 Notebook 的完整快速上手

本篇指南聚焦如何在 Azure Machine Learning(AzureML)计算实例上快速跑通 Ultralytics YOLO26:从创建工作区、创建计算实例,到在终端和 Notebook 两种环境中完成检测模型的推理(predict)与训练(train)。读完后,你可以独立在 AzureML 上搭建 Python 环境、使用 Ultralytics CLI 与 Python 接口执行训练

gitblog_01169的博客 937

使用 ImageNette 数据集快速训练与验证 Ultralytics 图像分类模型

本文以 Ultralytics 仓库内置支持的 ImageNette 分类数据集为主线,系统讲解它作为 ImageNet 的 10 类精简子集在图像分类任务中的快速原型训练与验证流程。读者将掌握 ImageNette 及其变体(ImageNette160/ImageNette320)的数据结构与自动加载机制,并通过 YOLO26 分类模型完成从 Python API 到 CLI 命令的端到端训练实

gitblog_00778的博客 832

Ultralytics YOLO-World 训练全解析:WorldTrainer 与文本嵌入缓存机制实战指南

YOLO-World 是 Ultralytics 中面向**开放词汇(open-vocabulary)目标检测**的模型家族,它允许用自然语言描述来检测任意类别目标。本文将以 [WorldTrainer 的 API 参考页](https://link.gitcode.com/i/b6befa8b23869fb0de589e9feac1b114) 为核心骨架,深入剖析其训练器实现 [train.py

gitblog_01142的博客 723

Ultralytics Platform 实战指南:YOLO 目标检测模型从训练到部署的 4 步全流程

把一整个标注好的数据集拖进浏览器,选好 GPU,平台当场报出预计训练时长和费用——这就是 Ultralytics Platform,一个覆盖数据集管理、云端训练、模型导出和推理端点部署的 YOLO 模型训练平台。下文按首次使用的真实操作顺序,记录从数据上传到端点上线的完整过程。 [![YOLO模型推理示例:Ultralytics Platform 官方测试图 zidane.jpg](https:

gitblog_00765的博客 1104
上一篇: Rockchip Camera Pipeline 全链路解析:Sensor → ISP → ISPP → RKCIF → RkAiq
下一篇: YOLO 模型版本演进全解析:从 v1 到 YOLO11(含最新模型核心差异与实战建议)
嵌入式孙老师
博客等级 码龄7年 5687粉丝 902原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值