项目简介:BMW LabelTool Lite
BMW-LabelTool-Lite项目是一款功能强大的图像数据标注工具,专为减少配置需求而设计。这个工具的轻量版本主要关注于基于边界框的训练数据标注,旨在为尖端的深度学习训练提供支持。用户无需复杂配置即可通过我们提供的Docker化LabelTool Lite开始对图像进行标注。此外,该工具生成的标签还可以直接结合我们的Yolov4和Tensorflow训练GUI项目使用,使得训练过程更加便捷。
项目的功能与特点
便捷的启动方式
LabelTool Lite 提供了一个样本数据集,便于用户在没有自定义数据集的情况下进行操作。用户只需下载项目仓库,运行以下命令即可启动工具:
docker-compose up
然后在任意浏览器中访问localhost:8081
即可开始标注。
友好的导航功能
- LabelTool Lite 提供了一系列的导航功能,帮助用户在标注过程中方便地浏览数据集:
- 浏览数据集中的下一张图片:">"
- 浏览数据集中的上一张图片:"<"
- 浏览数据集中无边界框的下一张图片:"»"
- 浏览数据集中无边界框的上一张图片:"«"
- 输入图片编号直接跳转到指定图片
- 通过点击或拖动滚动条快速定位图片
图片和边界框的附加功能
除常规的边界框功能外,LabelTool Lite 还提供:
- 图片的缩放和亮度调节功能
- 从本地计算机上传新图片
- 显示图片的属性(如名称和分辨率)
- 删除图片及其对应的边界框
边界框功能
- 边界框的创建和编辑非常灵活:
- 创建后可以调整大小、拖动移动
- 边界框可以被复制
- 可以设置边界框为填充或不填充
- 可以调整边界框的线条粗细
数据集准备及使用
在项目的存储库中,应创建特定的文件夹结构来存储数据集,以下是数据准备的基本步骤:
-
创建
/data/training-data
文件夹,所有的数据集均应存储于此。 -
创建新数据集,例如
myfirstdataset
文件夹。 -
在数据集文件夹中创建
images
文件夹用于存放需要标注的图片,以及labels/json
文件夹用于存放生成的标签。 -
创建
objectclasses.json
文件以定义类名,例如:[ { "Id": 0, "Name": "Dog" }, { "Id": 1, "Name": "Cat" } ]
加速标注过程
LabelTool Lite 支持连接预训练模型或自定义训练模型来加速标注过程。通过修改docker-compose.yml文件,用户可以将模型容器与LabelTool连接,为标注提供智能标签建议。
已知问题
- 仅能连接一个模型到“建议边界框”菜单。如果连接的模型与数据集中的对象类别不匹配,可能不会显示结果或错误消息。
- 所有的JSON文件应采用“UTF-8”编码,否则可能会导致错误。
致谢
项目的开发得到了以下组织和个人的支持:
- Inmind.ai
- Robotron
- Roy Anwar
- Eduard Saller
BMW-LabelTool-Lite项目提供了一种高效、便捷的方式来对图像数据进行标注,同时支持多种深度学习训练框架的快速集成和应用。