常用标注软件分享(labeling和x-anylabeling)ubuntu和windows

1.手动标注软件(labeling)

pip3 install labelImg
labelImg

2.自动标注软件(x-anylabeling)

安装教程

#创建和激活 Conda 环境:
​
conda create --name x-anylabeling python=3.9 -y
conda activate x-anylabeling
​
#安装 ONNX 运行时(根据需要选择 CPU 或 GPU 版本):
(这个都装也无所谓,如果需要 GPU 加速,请在 app_info.py 中设置 __preferred_device__ = 'GPU')
​
# CPU版本
pip install onnxruntime
​
# GPU版本(CUDA 11.x)
pip install onnxruntime-gpu==1.16.0(cuda11.8)
​
重要:确保本地 CUDA 和 cuDNN 版本与 ONNX 运行时兼容。
​
#克隆代码库并安装依赖项:
​
git clone https://github.com/CVHub520/X-AnyLabeling.git
cd X-AnyLabeling
​
pip install -r requirements-gpu.txt
​
#生成资源文件:
​
pyrcc5 -o anylabeling/resources/resources.py anylabeling/resources/resources.qrc
​
#设置环境变量:
​
export PYTHONPATH=/path/to/X-AnyLabeling(改自己的地址)
​
python anylabeling/app.py

有这个报错加指令

sudo update
sudo apt install -y libxcb-xinerama0 libxkbcommon-x11-0 libxcb1 libxcb-util1
python anylabeling/app.py

我还出现了这个报错,打开 auto_labeling.py 文件,找到第 195 行附近的代码。

能打开可视化界面就说明安装成功了,需要先训练一个一两千张的模型,然后配置ai模型,这里需要文件夹内包含一个.onnx(模型)和.yaml文件,然后跟着在跟着教程走,处理数据集,最后处理后的标注文件还需要一个文件配置,文件夹内除了需要你自动标注完成的.json外还需要classes.txt和coco.yaml,具体配置看xanylabeling_data(我的文件夹)

使用 tools/label_converter.py 脚本将 X-AnyLabeling 生成的 JSON 文件 转换为 YOLO 格式的 *.txt 文件。以下是详细步骤:


转换指令

假设你的 JSON 文件位于 custom_folder,需要将其转换为 YOLO 格式并存放在 yolo_folder

针对矩形标注任务(rectangle)
python tools/label_converter.py --task rectangle --src_path custom_folder --dst_path yolo_folder --classes classes.txt --mode custom2yolo
针对多边形标注任务(polygon)
python tools/label_converter.py --task polygon --src_path custom_folder --dst_path yolo_folder --classes classes.txt --mode custom2yolo

参数说明

  • --task

    • rectangle:矩形标注任务。

    • polygon:多边形标注任务。

  • --src_path JSON 文件所在的文件夹路径。

  • --dst_path YOLO 格式输出的目标文件夹路径。

  • --classes 类别定义文件,每行一个类别名称,顺序决定类别编号。例如:

    plaintextperson
    car
    dog

  • --mode 转换模式,custom2yolo 表示从自定义 JSON 格式转换为 YOLO 格式。


执行完成后

  1. 在目标文件夹 yolo_folder 中,你将获得以下内容:

    • 每张图像对应的 YOLO 格式 *.txt 文件。

    • 文本格式:

      <class_id> <x_center> <y_center> <width> <height>

  2. 验证是否正确:

    • 检查输出文件的内容是否符合 YOLO 格式。

    • 确保类别定义文件(classes.txt)的顺序和模型训练时的一致。


注意事项

  • 如果 tools/label_converter.py 脚本无法直接运行,请确认 Python 环境是否正确,并在项目目录下执行脚本。

  • 对于多边形标注任务,只支持 YOLO 格式的检测和分割。

我的指令
python /home/dhx/X-AnyLabeling/tools/label_converter.py --task rectangle --src_path /home/dhx/xanylabeling_data/标签转换 --dst_path /home/dhx/xanylabeling_data/转换完成 --classes /home/dhx/xanylabeling_data/标签转换/classes.txt --mode custom2yolo
​

语义分割任务如何将输出的标签文件转换为 *.png 格式输出? A: 针对工具本身自定义(custom)的格式,我们可以使用工程目录下的 tools/polygon_mask_conversion.py 脚本轻松转换,以下是参考的转换指令:

python tools/polygon_mask_conversion.py --img_path xxx_folder --mask_path xxx_folder --mode poly2mask
​
# [option] 如果标签和图像不在同一目录下,请使用以下命令:
python tools/polygon_mask_conversion.py --img_path xxx_folder --mask_path xxx_folder --json_path xxx_folder --mode poly2mask

我的

python tools/polygon_mask_conversion.py --img_path /home/dhx/dhxyolov5/yolov5-7.0/mydata/images/train --mask_path /home/dhx/dhxyolov5/yolov5-7.0/mydata/make_post --json_path /home/dhx/dhxyolov5/yolov5-7.0/mydata/mask_pre --mode poly2mask

同样地,也支持将掩码图一键转换为自定义格式导入 X-AnyLabeling 中进行修正,输出的 *.json 文件默认保存至 'img_path' 目录:

python tools/polygon_mask_conversion.py --img_path xxx_folder --mask_path xxx_folder --mode mask2poly

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值