Roboflow#
Roboflow 提供数据标注工具,并支持将数据集导出为多种格式,包括 YOLO。此指南介绍如何为 Ultralytics YOLO 模型标注、导出和部署数据。
Ultralytics 提供两种许可选项,以适应不同的使用场景:
- AGPL-3.0 许可: 此经 OSI 批准的开源许可非常适合学生和爱好者,有助于促进开放协作和知识共享。更多详情请参阅 LICENSE 文件。
- 企业许可证:此许可证适用于开发和生产用途,可将 Ultralytics 软件和 AI 模型无缝集成到商业产品和服务中,包括内部工具、自动化工作流和生产部署,同时免除 AGPL-3.0 的开源要求。要开始使用,请通过 Ultralytics Licensing 联系我们。
更多详情请参阅 Ultralytics 许可页面。
本指南演示如何使用 Roboflow 查找、标注和整理数据,以训练自定义的 Ultralytics YOLO26 模型。
收集数据以训练自定义 YOLO26 模型#
Roboflow 提供两项主要服务,协助为 Ultralytics YOLO 模型收集数据:Universe 和 Collect。有关数据收集策略的一般信息,请参阅数据收集与标注指南。
Roboflow Universe#
Roboflow Universe 是一个在线视觉数据集存储库。你可以将数据集导出为 YOLO 格式,用于 Ultralytics 模型。
Roboflow Collect#
如果你想自行收集图像,Roboflow Collect 是一个开源项目,可通过边缘设备上的网络摄像头自动采集图像。你可以使用文本或图像提示指定要收集的数据,从而只采集视觉模型所需的图像。
上传、转换并标注 YOLO26 格式数据#
Roboflow Annotate 是一个在线工具,可为各种计算机视觉任务标注图像,包括目标检测、分类和分割。
要为 Ultralytics YOLO 模型标注数据,请在 Roboflow 中创建项目、上传图像,然后开始标注。
标注工具#
标注助手(SAM 集成)#
Roboflow 集成了基于 Segment Anything 模型(SAM)的标注助手,有望加快标注速度。
要使用标注助手,请点击侧边栏中的光标图标。SAM 将在你的项目中启用。
将光标悬停在对象上,SAM 可能会建议一个标注。点击即可接受该标注。你可以在建议区域内或外点击,以调整标注的具体范围。
标签#
你可以使用侧边栏中的 Tags 面板为图像添加标签。标签可表示位置、相机来源等属性。这些标签可以帮助你搜索特定图像,并生成包含特定标签图像的数据集版本。
标注辅助(基于模型)#
托管在 Roboflow 上的模型可与 Label Assist 配合使用,以建议标注。将 YOLO 模型权重上传到 Roboflow(请参阅下方说明),然后通过侧边栏中的魔棒图标启用 Label Assist。
YOLO26 数据集管理#
Roboflow 提供多种工具,帮助你了解和管理计算机视觉数据集。
数据集搜索#
使用数据集搜索功能,根据文本描述或特定标签查找图像。点击侧边栏中的“Dataset”即可使用此功能。
健康检查#
训练前,使用 Roboflow Health Check 了解数据集并发现潜在的改进空间。点击侧边栏中的“Health Check”链接即可访问。它会提供图像尺寸、类别平衡、标注热图等统计信息。
Health Check 可能会建议改进措施以提升性能,例如通过类别平衡功能发现并处理类别不平衡。了解数据集健康状况对于有效的模型训练至关重要。
预处理并增强数据,提高模型鲁棒性#
要导出数据,你需要创建一个数据集版本,也就是数据集在特定时间点的快照。点击侧边栏中的“Versions”,然后点击“Create New Version”。在这里,你可以应用预处理步骤和数据增强,以提高模型鲁棒性。
对于每项选定的增强操作,弹出窗口都允许你微调亮度等参数。恰当的数据增强可显著提升模型泛化能力,这是模型训练技巧指南中讨论的一个关键概念。
以 40 多种格式导出数据,用于模型训练#
生成数据集版本后,你可以将其导出为适用于模型训练的各种格式。点击版本页面上的“Export Dataset”按钮。
选择“YOLO26”格式,以确保与 Ultralytics 训练流程兼容。现在,你可以开始训练自定义 YOLO26 模型了。有关如何使用导出的数据集启动训练的详细说明,请参阅 Ultralytics Train 模式文档。
上传自定义 YOLO26 模型权重,用于测试和部署#
Roboflow 为已部署模型提供可扩展的 API,并提供兼容多种设备的 SDK,例如 NVIDIA Jetson、Luxonis OAK、Raspberry Pi 和基于 GPU 的系统。请在我们的指南中了解各种模型部署选项。
你可以使用简单的 Python 脚本,将 YOLO26 模型权重上传到 Roboflow 来部署模型。
创建一个新的 Python 文件,并添加以下代码:
import roboflow # install with 'pip install roboflow'
# Log in to Roboflow (requires API key)
roboflow.login()
# Initialize Roboflow client
rf = roboflow.Roboflow()
# Define your workspace and project details
WORKSPACE_ID = "your-workspace-id" # Replace with your actual Workspace ID
PROJECT_ID = "your-project-id" # Replace with your actual Project ID
VERSION = 1 # Replace with your desired dataset version number
MODEL_PATH = "path/to/your/runs/detect/train/" # Replace with the path to your YOLO26 training results directory
# Get project and version
project = rf.workspace(WORKSPACE_ID).project(PROJECT_ID)
dataset = project.version(VERSION)
# Upload model weights for deployment
# Ensure MODEL_PATH points to the directory containing 'best.pt'
dataset.deploy(
model_type="yolov8",
model_path=MODEL_PATH,
) # Note: Use "yolov8" as model_type for YOLO26 compatibility in Roboflow deployment
print(f"Model from {MODEL_PATH} uploaded to Roboflow project {PROJECT_ID}, version {VERSION}.")
print("Deployment may take up to 30 minutes.")在此代码中,将 your-workspace-id、your-project-id、VERSION 数字以及 MODEL_PATH 替换为与你的 Roboflow 账户、项目和本地训练结果目录对应的值。确保 MODEL_PATH 正确指向包含已训练 best.pt 权重文件的目录。
运行上述代码时,系统会要求你进行身份验证(通常使用 API 密钥)。随后,模型会上传,并为你的项目创建一个 API 端点。此过程最多可能需要 30 分钟。
要测试模型并查找受支持 SDK 的部署说明,请前往 Roboflow 侧边栏中的“Deploy”选项卡。页面顶部会显示一个小组件,你可以使用网络摄像头测试模型,也可以上传图像或视频进行测试。
你上传的模型还可用作标注助手,根据模型训练结果为新图像建议标注。
如何评估 YOLO26 模型#
Roboflow 提供模型性能评估功能。了解性能指标对于迭代改进模型至关重要。
上传模型后,可在 Roboflow 控制面板的模型页面中使用模型评估工具。点击“View Detailed Evaluation”。
此工具会显示用于展示模型性能的混淆矩阵,以及使用 CLIP 嵌入的交互式向量分析图。这些功能有助于找出模型需要改进的方面。
混淆矩阵弹出窗口:
将光标悬停在单元格上可查看数值;点击单元格可查看对应图像及模型预测结果和真实标注数据。
点击“Vector Analysis”,查看基于 CLIP 嵌入可视化图像相似度的散点图。距离较近的图像在语义上相似。点代表图像,颜色从白色(性能良好)到红色(性能较差)变化。
向量分析有助于:
- 识别图像簇。
- 找出模型表现不佳的图像簇。
- 了解导致模型表现不佳的图像有哪些共性。
学习资源#
- 在自定义数据集上训练 YOLO(Colab):用于在你的数据上训练的交互式 Google Colab 笔记本。
- Ultralytics YOLO 文档:介绍 YOLO 模型的训练、导出和部署。
- Ultralytics 博客:关于计算机视觉和模型训练的文章。
- Ultralytics YouTube:关于模型训练和部署的视频指南。
常见问题#
使用 Roboflow Annotate。创建项目、上传图像,然后使用标注工具(
B用于边界框,P用于多边形)或基于 SAM 的标注助手来加快标注速度。详细步骤请参阅上传、转换并标注数据部分。使用 Roboflow 的数据集搜索、标签和 Health Check 功能。搜索功能可通过文本或标签查找图像,而 Health Check 会分析数据集质量(类别平衡、图像尺寸等),帮助你在训练前进行改进。详情请参阅数据集管理部分。