NEW暗黑模式现已上线 🌓 Label Studio 1.18.0 版本发布

快速创建数据集以使用Label Studio训练YOLO目标检测

教程

目标检测是机器学习中的一项重要任务,用于支撑面部识别技术、自动驾驶用例中关键的计算机视觉任务等。

与所有机器学习任务一样,为您的用例创建数据集和训练机器学习模型是一项繁琐且耗时的需求。借助Label Studio,您可以与标注团队协作,快速为自定义YOLO目标检测模型标注训练数据集。

什么是目标检测?

一种计算机视觉任务,用于识别图像和视频中的特定对象,如人物、建筑物或车辆。可以使用多种不同类型的算法对图像或视频执行对象检测,例如尺度不变特征变换(SIFT)DetectronRefineDetYou Only Look Once(YOLO)

目标检测实践

如果您正在创建一个房产销售网站,或者作为房地产开发商试图识别有利可图的住宅开发项目特征,您可以通过对小区航拍图和街景照片进行目标检测,来识别可能与房屋价格相关的特定对象。使用机器学习模型而非人工评估或业主访谈,能让您更快速地收集更多信息。

不太可能存在已经训练好可以执行这种特定分析类型的模型。这时就需要数据标注的介入,帮助您为机器学习准备数据。创建您自己的数据集并训练一个目标检测模型来处理这个用例。

为确保您训练的模型尽可能准确,请使用一流的对象检测模型如YOLO,并使用专家手动标注的数据集进行训练。

开始创建目标检测数据集

开发一个房屋数据集,识别游泳池、围栏、棚屋、车道、露台或其他可能影响房屋相对成本或风险因素的物体。

使用Label Studio对一组家居照片数据集进行标注,提供一组"已知真实"标签,可用于训练目标检测机器学习模型。

在为物体检测模型标注数据集时,请牢记以下最佳实践:

  • 标记具有您想要识别特征的照片数量与不具备这些特征的照片数量相等。例如,如果您希望模型检测游泳池,请确保带有游泳池的房屋与不带游泳池的房屋数量分布均匀。
  • 创建边界框以框住照片中可见的整个泳池、车道或相关组件。
  • 标注至少50张房屋图片以训练模型。
  • 标注与您计划用训练模型处理的图像具有相同分辨率和拍摄角度的图像。
  • 限制您想要检测的对象数量,以提高模型对这些对象的检测准确性。

标注目标检测数据集

开始使用Label Studio标注您的数据集:1. 安装Label Studio。2. 获取适用于您用例的图像数据集。3. 设置标注项目。4. 标注数据。5. 以YOLO v3格式导出数据。

安装 Label Studio

按照以下步骤在Docker或Python虚拟环境中安装Label Studio

下载数据集

您可以使用自己的航拍房屋图像数据集,将现有的航拍SID图像类型转换为JPG文件,或从网上下载公共领域的图像。您可以下载本博文中使用的公共领域图像用于演示目的。

设置标注项目

导入您的数据并设置标注界面,开始标注训练数据集。

  1. 创建一个名为"Home Object Detection"的项目。
  2. 添加房屋数据集。
  3. 选择带边界框的目标检测标注模板。
  4. 将默认标签名称更改为以下列表:房屋、泳池、围栏、车道和其他。
  5. 保存项目。

如果需要,您可以在项目的标注设置中更新说明,加入一些最佳实践作为提醒。

为数据集添加标注

使用Label Studio对数据集进行标注注释。为了加快数据标注速度,您可以与标注团队协作共同完成数据集的标注工作。

  1. 点击标注所有任务开始标注数据集。
  2. 对于每张图片,使用键盘快捷键选择对应的标签类别,然后在图片中每个相关物体周围绘制边界框。
Draw a bounding box in just two clicks by clicking once where you want one corner of the box, then click again where you want the opposite corner of the box.

以YOLO格式输出数据集

要使用YOLO模型进行未来家居照片分析,您需要在Label Studio中刚创建的数据集上训练它。

在Label Studio中完成数据集标注后,将其导出为YOLO v3格式以训练您的模型。

  1. 在Label Studio中,点击导出
  2. 选择YOLO格式。您的浏览器将下载一个zip文件。

导出的数据在展开文件后具有以下结构:

project-ID-at-YEAR-MONTH-DAY-HOUR-MINUTE-STRING.zip
    notes.json
    classes.txt
    labels
        image_filename1.txt
        image_filename2.txt
        image_filename3.txt
        ...
    images
        image_filename1.jpg
        image_filename2.jpg
        image_filename3.jpg
        ...

使用数据集训练YOLO模型

要使用您创建的数据集训练YOLO模型,您需要指定类别名称和类别数量,以及一个列出所有用于训练的图像URL的文件。有关darknet YOLOv3和YOLOv4模型的详细信息,请参阅README中的如何训练(检测您的自定义对象)

从Label Studio导出的YOLO格式包含一个classes.txt文件,其中记录了标注图像时使用的类别名称,以及包含源图像的images目录和按照YOLO模型预期格式存储的边界框详情.txt文件。例如:

1 0.8524209136801734 0.6172275218289784 0.016613279671871473 0.007998986508678854
0 0.8594874169350379 0.6205552384209734 0.0072606185232622624 0.004061023919790841
1 0.8287479881701304 0.5940571972474851 0.010871468973849227 0.008614293163192694

验证您训练好的模型

在设置好用于训练的YOLO模型环境后,您可以使用自定义标注数据集来训练模型。通过训练好的模型,您可以分析新的房屋航拍图像,并识别与您的使用场景相关的重要对象,无论是检测可能影响房屋保险的风险因素,还是可能提升或降低房屋价值的特征。

关键要点

创建数据集并训练自定义YOLO目标检测模型可能非常耗时,但借助Label Studio的协作标注功能,结合快捷键和加速创建边界框的标注技术,您可以加快标注流程并更快进入训练阶段。Label Studio支持导出YOLO v3和v4格式,使您在完成图像标注后能轻松快速地开始在自定义数据集上训练YOLO目标检测模型。

相关内容

  • 如何在Label Studio中使用提示生成合成数据

    学习如何使用Label Studio的提示功能生成问答对合成数据。本逐步指南将带您完成创建项目、编写提示词以及审阅模型生成数据的全过程——非常适合在标注数据有限时启动RAG系统或训练大语言模型。

    Micaela Kaplan

    2025年4月23日

  • 如何在Label Studio中使用提示词评估和比较大语言模型

    使用大语言模型标注数据很快——但它准确吗?本文展示了在Label Studio中评估模型性能的两种方法,无论是否有真实标签数据。学习如何比较输出结果、跟踪准确率和成本,并为你的工作流程选择合适的模型。

    米凯拉·卡普兰

    2025年4月2日

  • 打造最棒的GPT智能体 😸

    在这篇文章中,我们将介绍Label Studio AI助手和提示词的一个创意用例:生成丰富的图像叙事。跟随我们的步骤,了解如何构建一个将结构化标注与故事讲述相结合的项目。

    Sheree Zhang

    2025年4月1日