使用X-AnyLabeling自动标注数据集(以yolov10模型为例,多图详细介绍)
一、X-AnyLabeling简介
X-AnyLabeling 是一款全新的交互式自动标注工具,其基于AnyLabeling进行构建和二次开发,在此基础上扩展并支持了许多的模型和功能,并借助Segment Anything和YOLO等主流模型提供强大的 AI 支持。无须任何复杂配置,下载即用,支持自定义模型,极大提升用户标注效率!
AnyLabeling = LabelImg + Labelme + Improved UI + Auto-labeling
二、安装方式
X-AnyLabeling安装方式有两种:下载官方发布的可执行程序文件,直接打开使用;从官网clone代码后在终端运行使用。
1,可执行程序
下载地址
https://github.com/CVHub520/X-AnyLabeling/releases
最新的稳定版本是X-AnyLabeling v2.3.6
根据自己的电脑OS类型,以及是否具备英伟达GPU显卡,下载不同的安装包。
笔者这里下载了几种不同的安装包做测试用。
2,运行代码
首先下载项目代码
git clone https://github.com/CVHub520/X-AnyLabeling.git
接着使用Anaconda创建python虚拟环境
conda create --name x-anylabeling python==3.8
conda activate x-anylabeling
#gpu
pip install -r requirements-gpu-dev.txt
创建
激活
cd到x-anylabeling项目代码根目录,然后执行下面命令(指定清华镜像源,下载速度会更快)
pip install -r requirements-gpu-dev.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
安装成功
手动修改app_info.py文件,可选择指定启用GPU或CPU方式。
在终端使用下边命令,运行程序
python anylabeling/app.py
三、手工标注数据
x-anylabeling可以使用自己训练后的模型,自动生成标注数据,但是第一次的话还是需要自己标注数据。
首次打开,选择语言,切换为中文。
打开需要标注数据的文件夹
点击矩形框或者使用快捷键R
标记并自己定义类
快捷键D,标注下张图片
快捷键一览
导出数据,保存的文件类型是json,你可以自己选择导出的类型。
json数据默认与图片在一个文件夹
导出的VOC格式数据
四、自动标注数据
模型的选择可参考docs/zh_cn/model_zoo.md文件,下边以yolov10s.onnx模型为例,介绍如何使用x-anylabeling自动标注数据。当然也可以使用自己训练好的模型,自动标注数据,流程是类似的。
在X-AnyLabeling项目代码根目录创建models文件夹,放置训练模型。
yolov10s.onnx可以在官网下载获取,提前下载好,放到本地。
Releases · THU-MIG/yolov10 · GitHub
修改yolov10s.yaml文件
文件目录
./X-AnyLabeling/anylabeling/configs/auto_labeling/
默认配置如下
修改其中的model_path,改成yolov10s.onnx的路径,其它字段不用修改。
自动标注配置
自动标注过程
自动标注完成后,已默认生成json数据,导出VOC格式即可接下来的训练工作。
注意:经笔者自测,自动标注准确率还有待提升。不过可以手工编辑对象和标签,对结果进行修正。
五、参考
使用自己训练好的模型YOLOv8进行X-AnyLabeling自动标注_x-anylabeling自动标注v8教程-CSDN博客
yolov8数据标注、模型训练到模型部署全过程_yolov8 标注-CSDN博客
YOLOV8数据集制作,X-Anylabeling标注数据集,以及模型训练-CSDN博客