什么是AnyLabeling?
Effortless data labeling with AI support from YOLO and Segment Anything!
AnyLabeling = LabelImg + Labelme + Improved UI + Auto-labeling
- Youtube Demo: https://www.youtube.com/watch?v=5qVJiYNX5Kk
- Documentation: https://anylabeling.nrl.ai
- Labeling UI built with ideas and components from LabelImg, LabelMe.
- Auto-labeling with Segment Anything Models, MobileSAM.
- Auto-labeling with YOLOv5, YOLOv8.
项目在保持持续更新,
https://github.com/vietanhdev/anylabeling
如何Windows下安装AnyLabeling?
创建python虚拟环境
通过miniconda创建名为anylabeling_py310的python虚拟环境:
conda create -n anylabeling_py310 python=3.10
conda activate anylabeling_py310
安装AnyLabeling
pip install anylabeling
# or pip install anylabeling-gpu for GPU support
启动AnyLabeling
anylabeling
如何使用AnyLabeling进行图像标注
AnyLabeling吸收了LabelImg和LabelMe的优点,并在此基础上进行了优化,它的标注的操作过程和LabelMe保持一致,可以参考
[YOLOv8] - 使用LabelMe对数据集进行标注(含安装和使用技巧)中的“使用LabelMe来管理标注”章节。
相比LabelImg和LabelMe,AnyLabeling多了哪些新特性
支持中文
支持使用已有模型进行自动化标注
目前支持Segment Anything,YOLOv5,YOLOv8模型,你可以使用别人预训练好模型,或者自己训练的模型。
这里展示一下使用YOLOv8n来进行自动化标注:
通过“File->Open Dir”打开存放要标注的图像的目录(我这里直接从coco的test数据集选取了部分图像),选中“YOLOv8n”,这时候会进行模型自动下载,等下载完成。
从右下角的图像列表,选中一张图像,双击打开,点击“Run( i )”按钮进行自动标注:
这个还是很方便的,如果图像中要标注的目标很多,并且存在很多在当前模型已经覆盖了的类别,充分利用之前预训练好的模型,是可以大大的提高标注的效率。
AnyLabeling相比LabelMe,LabelImg界面做了哪些优化
可以说AnyLabeling吸收了所有LabelMe和LabelImg的优点,比如
自动保存标注
把被标注的图像附加到标注信息文件json中
自动使用最后一次标注使用的类别(相当于LabelImg中的设置“Use default label”或者“启动“Single Class Mode”)
增加了是否显示标注十字架
增加了常用快捷键提示
和LabelMe一样,在用户目录提供了一个可配置文件,可以自定义自己喜欢的快捷键或者颜色
保持LabelMe一样的命令行格式
可以通过命令行启动AnyLabeling时,使用的图像目录,标签类别,标题保存路径等,
这是我创建的dos bat命令:
D:\my_project\Anaconda3\envs\anylabeling_py310\Scripts\anylabeling.exe D:\YOLOv8Train\anylabeling_datasets\mktk_datasets\cut_640_images --labels D:\YOLOv8Train\anylabeling_datasets\mktk_datasets\cut_640_labels\classes.txt --output D:\YOLOv8Train\anylabeling_datasets\mktk_datasets\cut_640_labels