Featured image of post 『 YOLOv5 』Make Sense

『 YOLOv5 』Make Sense

免费高效且简单易上手的在线标注工具(YOLOv5 Object Detection)

Make Sense | Free to use online tool for labelling photos.

摘要

本文简要介绍使用 make-sense 建立 YOLOv5 Object Detection 图像标签的完整步骤并提及使用过程中的注意事项。

平台简介

make-sense 是一个被 YOLOv5官方 推荐使用的图像标注工具。

相比于其他工具,make-sense 的上手难度非常低,仅需数分钟,玩家便能熟练掌握工作台中的功能选项,快速地进入工作状态;此外,由于 make-sense 是一款 web 应用,各个操作系统的玩家可打破次元壁实现工作协同。

快速上手

Sneak Peek 流程预览

Drop Images 缓存需要标注的图像数据集

进入 make sense 站点主页,点击右下角 Get Started 进入任务。

2

拖入或上传需要标注的图像数据集。此处不支持文件夹套娃,请将所有需要标注的图像放在同一文件夹下,需要做避免重名的处理;或者您也可以多次上传位于不同文件夹下的图像。

值得一提的是,标注任务开时候您也可以再补充缓存需要标注的图像,但没有可靠的方式“删除”已缓存的图像。若您在标注过程中发现上传了脏数据,只需不对此图片进行任何标注,导出时就不会生成对该图像的标注数据(文件)。

Object Detection 进入目标检测标注模式

上传图像后,选择进入目标检测的标注模式。

Create Labels 创建标签

  • 导入文件自动生成标签(Load labels from file )一行一个;

  • 手动创建标签,点击左边栏的“+”符号;

创建成功后点击 [Start project] 开始标注。

此处为了方便演示,我们选择手动创建标签。

image-20210811220853094

同样,我们仍可在工作过程中随时调整(Actions | Edit Labels)标签的规模顺序

image-20210811220853094

Work 开始标注

Make Sense 支持矩形 (Rect)、点 (Point)、线 (Line)、多边形 (Polyygon) 多种标注模式,点选相应的模式开始“抠图”既可。

工作台上有放大、缩小、还原比例、拖动、删除标签等操作工具,不过多介绍,玩几下就懂了。

Export 导出标注

点选 Actions | Export Annotations 导出标注。

image-20210811222025070

Export后会自动下载生成的压缩包文件。压缩包内是一一对应的标注集文件,与标注数据文件名与其对应的图像文件名一致。

Review 审查标注数据

YOLOv5作者对创建标签的有关介绍 可知,图像标注文件有明确的格式要求(YOLO format),图像 (ImageObject)对应的标注文件(LabelObject)必须是 .txt 格式文件,其内容必须以空格按序切割成如下成分:

  • 目标类型:第1列成分,以数字序号区分的标签;
  • 目标标识区域(以2D Object 为例):4列连续的成分,依次为目标实体的中点 x 坐标(class x_center),中点 y 坐标(class x_center),宽度(width)以及高度 (height);

再来看看刚才标注的宵宫目标数据。

1
0 0.493783 0.509473 0.454707 0.969410

如上所示,第一列是标签宵宫所在标签集合的序号,由于我们仅有一个标签,此处自然为0。值得一提的是,此处的序号是按照Make Sense中的标签"顺序"排列的,与 YOLOv5 train 数据集索引配置文件 (.yaml) 中的 names 变量的分类名 class names 顺序无关,建议两者顺序保持一致。后四列为作者框选的目标边界数据,我们可以大概这么理解,根据下图我们可知人物主体居中构图,2,3 列体现的趋于 0.5 的数据符合主观预估值;人物宽度约占画幅 X 区间的一半 (0.454707),而高度却几乎占满整个画幅Y区间 (0.969410)。

高级操作

原本至此完整的标注集导出流程已完全结束,但是作者发现本项目竟然是开源的…意味着感兴趣的同学可以通过 项目README 中推荐的方案(Docker/npm)在自己熟悉的环境中部署此项目。

注意事项

  • 普通操作模式下,数据集缓存在内存里不会"上传",这也解释了为何图像加载后我们能迅速投入工作。若使用 AI 标注功能,数据集可能被成批次地上传,而且此过程可能涉及与国外多服务器的通信,用时较长,且 AI 标注场景局限在日常生活的应用场景中,若场景不符则不推荐使用;
  • 因此,页面误操作关闭后,标注结果必然游离,所以标注工程量较大的任务时建议小批次缓存标注,或按时导出以保存本阶段的工作进度;

参考资料

[1] Genshin Impact Yoimiya banner leaks: 5-star Pyro character release date - Dexerto

[2] Train Custom Data · ultralytics/yolov5 Wik

[3] SkalskiP/make-sense: Free to use online tool for labelling photos

Licensed under CC BY-NC-SA 4.0
You will to enjoy grander sight / By climing to a greater height.