本章节将详细介绍如何利用 X-AnyLabeling 进行数据的导入、管理以及保存。用户可以通过多种方式导入图片和视频文件,包括使用快捷键或菜单选项。此外,本章节还涵盖了数据删除、图片切换以及标签和图像数据的保存方法,确保标注流程高效且数据安全可控。
在打开 GUI 界面后,用户可在界面上方菜单栏中的
文件
下拉框中选择对应的任务类型进行导入,也可直接通过快捷键进行操作。
X-AnyLabeling 目前提供三种数据导入格式:
*.jpg
、
*.png
、
*.bmp
、
*.webp
及
*.tif
等多种格式。
*.mp4
、
*.avi
、
*.mov
、
*.mkv
、
*.wmv
、
*.flv
等视频格式。
X-AnyLabeling 提供数据删除功能,具体操作如下:
_delete_
文件夹中。
在 X-AnyLabeling 中,除了常规的切换图片操作外,还支持以下几种方式:
switch_to_checked
这里,你可以通过修改用户配置文件中的
switch_to_checked
字段来决定切换模式。
此外, 你还可以通过在界面右下角的文件搜索栏中输入图片名称并回车即可跳转到指定图片。
X-AnyLabeling 默认开启自动保存功能,用户在初次启动界面时,可点击菜单栏中的
文件
下拉框查看
自动保存
选项是否被勾选。
标签文件默认保存在当前图片目录下,文件格式为
*.json
,模板如下:
文件
下拉框中点击
更改输出目录
选项并设置相应的保存路径。
如果您希望在标注过程中保存当前图像数据(默认
base64
编码),可在菜单栏中的
文件
下拉框中勾选
保存图像数据
选项。
本章节将指导您如何在 X-AnyLabeling 中创建、编辑和管理不同类型的标注对象及其标签信息,涵盖从基本操作到高级功能的全面指南。
在 X-AnyLabeling 中,每个独立的标定对象称为一个
shape
,其包含的一些关键属性如下:
用户可通过左侧菜单栏中的对应功能选项、鼠标右键或快捷键进行操作。
X-AnyLabeling 具有两种模式,即 绘制模式 和 编辑模式 。
用户可通过快捷键
Ctrl+J
在绘制模式与编辑模式之间快速切换,也可以通过 2.1 节中的对应功能选项在编辑模式与绘制模式之间切换。
合并选中对象
将对象合并成一个最大外接矩形。
Shift
键通过鼠标左键移除选中顶点。
Z
、
X
、
C
、
V
控制选中框的旋转角度和方向。此外,也支持显示实时的旋转角度。
当用户创建或编辑一个对象时,会弹出一个标签编辑框,用于编辑对象的标签信息。
当前,X-AnyLabeling 支持对当前图片进行
Caption
描述。具体操作是打开编辑模式,点击图片空白处,在右侧的
Description
区域填充图片描述。
本章节将向您展示如何在 X-AnyLabeling 中优化和自定义图像及标注对象的显示效果,包括画布和图片的可视化调整,以及对象信息的可视化设置,确保您的标注工作既高效又直观。
当前,X-AnyLabeling 支持以下对画布的操作:
除了可以在左侧窗口设置缩放比例和使用快捷键触发外,还可以通过按住
Ctrl
键并配合鼠标滚轮对感兴趣的区域进行局部缩放操作,用于精细化和小目标对象标注。如果您想将此更改应用到全局,请务必勾选
视图
下拉选项中的
保留先前的缩放比例
选项。
X-AnyLabeling 支持对当前图片进行色彩调整。具体操作如下:
视图
下拉选项中选择
亮度对比度
选项,调整合适的亮度和对比度,以获得更好的视觉效果。
视图
下拉选项中的
保持当前亮度
和
保持当前对比度
选项。
此外,当光标移动时,GUI 界面底部的信息栏会实时显示当前图片的文件名及标注进度。
对象可视化功能包括显示当前图片中已标注对象的文本描述(Ctrl+T)、标签名称(Ctrl+L)、分组编号、旋转角度、预测分数等信息。
用户可以通过快捷键或者在界面上方菜单栏中的
视图
下拉选项中勾选相应功能来进行设置。
同时,当用户将光标移至感兴趣的对象时,GUI 界面底部的信息栏会实时显示当前对象的宽度、高度等信息。
在 GUI 界面的右侧中间面板,我们提供了
标签过滤器
和
组编号
过滤器,方便你筛选显示特定标签或组编号的对象。
关于十字瞄准线,用户可以通过界面上方菜单栏中的
视图
下拉选项中点击
设置交叉线
选项,调整当前十字瞄准线的宽度、透明度及颜色。
此外,当光标移动时,GUI 界面底部的信息栏会实时显示位置坐标信息。
现阶段,
X-AnyLabeling
提供了多种主流标签文件的导入/导出功能,下面简单介绍使用步骤。
当前 X-AnyLabeling 最新版本支持一键导入/导出 YOLOv5/v8 目标检测、实例分割、旋转框检测和关键点检测四大主流任务的标签文件(*.txt)。
在导入/导出 YOLO 标注文件之前,需要准备一份标签配置文件,具体如下:
has_visible
参数请参考
官方定义
。
要以 YOLO-Pose 格式导出,您需要在标注过程中为每个组(检测框及其关键点)指定 group_id,以便 X-AnyLabeling 在导出时能够理解它们之间的从属关系。
导入任务 :
导入
按钮。
导出任务 :
导出
按钮。
导出路径默认保存在当前图片目录的同级目录下的
labels
文件夹内。
YOLO 标签文件样式可参考 demo.txt 。
当前 X-AnyLabeling 最新版本支持一键导入/导出检测和分割任务相关的 Pascal-VOC 标签文件(*.xml)。
导入任务 :
导入
按钮。
导出任务 :
导出
按钮。
导出路径默认保存在当前图片目录的同级目录下的
Annotations
文件夹内。
VOC 标签文件样式可参考 demo.xml 。
当前 X-AnyLabeling 最新版本支持一键导入/导出目标检测、实例分割、关键点检测任务相关的 COCO 标签文件(*.json)。
在导入/导出 COCO 标注文件之前,需要准备一份标签配置文件,具体如下:
has_visible
参数请参考
官方定义
。
导入任务 :
导入
按钮。
导出任务 :
导出
按钮。
导出路径默认保存在当前图片目录的同级目录下的
annotations
文件夹内。
COCO 标签文件样式可参考 instances_default.json 。
当前 X-AnyLabeling 最新版本支持一键导入/导出 DOTA 标签文件(*.txt),其标签格式定义为:
x1 y1 x2 y2 x3 y3 x4 y4 class_name difficult
导入任务 :
导入
按钮。
导出任务 :
导出
按钮。
导出路径默认保存在当前图片目录的同级目录下的
labelTxt
文件夹内。
DOTA 标签文件样式可参考 demo_obb.txt 。
当前 X-AnyLabeling 最新版本支持一键导入/导出语义分割任务相关的掩码标签文件(*.png)。
在导入/导出掩码标注文件之前,需要准备好配置文件,具体如下:
导入任务 :
导入
按钮。
导出任务 :
导出
按钮。
导出路径默认保存在当前图片目录的同级目录下的
mask
文件夹内。
当前 X-AnyLabeling 最新版本支持一键导入/导出多目标跟踪任务相关的标签文件。
在导入/导出标注文件之前,需要准备好标签配置文件,具体可参考 classes.txt ,其中每一行代表一个类别,编号由上往下依次递增。
导出任务 :
导出
按钮。
导入任务 :
导入
按钮。
gt.txt
)所在目录,点击确定即可。
标签文件样式可参考
MOT
目录,其中包含三个子文件:
seqinfo.ini
、
det.txt
和
gt.txt
。
seqinfo.ini
seqinfo.ini
文件包含序列信息,用于描述数据集的元数据。以下是文件的具体内容和字段说明:
[Sequence]
name = MOT # 序列名称
imdir = mot_label # 图片目录
framerate = 30 # 帧率
seqlength = 249 # 序列长度(帧数)
imwidth = 1280 # 图片宽度
imheight = 720 # 图片高度
imext = .jpg # 图片文件扩展名
det.txt
det.txt
文件包含检测结果信息,每一行代表一个检测框。以下是文件的具体内容和字段说明:
帧号, 跟踪ID, 左上角x坐标, 左上角y坐标, 目标框宽度, 目标框高度, 置信度, <x>, <y>, <z>
最后三个字段用于
MOT3D
任务,此处默认为
-1
。
gt.txt
gt.txt
文件包含跟踪的标注信息,每一行代表一个标注框。以下是文件的具体内容和字段说明:
帧号, 跟踪ID, 左上角x坐标, 左上角y坐标, 目标框宽度, 目标框高度, 有效性标志, 类别ID, 可见率
这里
有效性标志
表示当前目标轨迹是否有效,
0
表示无效数据(ignore),
1
表示有效数据(activate)。用户可通过标签管理器中的
useDifficult
标志位来设置,☑️ 代表当前目标轨迹无效。
此外,针对 MOTS 数据集格式,X-AnyLabeling v2.4.0+ 版本提供对应的导出设置,具体可参考以下步骤实施:
导出
-
导出 MOTS 标签
按钮。
需要注意的是,默认导出的 mots 标签并非最终官方数据集格式,这里我们提供了对应的转换代码,仅供参考:
python3 tools/label_converter.py --task mots --mode custom_to_gt --src_path /path/to/your/custom_gt.txt
Note
请执行此脚本之前, 你需要先正确安装对应的
pycocotools
库。
当前 X-AnyLabeling 最新版本(v2.4.0+)支持一键导入/导出以下两种 PPOCR 任务的标签:
导入任务 :
导入
按钮。
导出任务 :
导出
按钮。
对于
文本检测与识别
任务,其导出路径默认保存在当前图片目录的同级目录下的
ppocr-rec
文件夹内,其包含:
Label.txt
: 标注结果
rec_gt.txt
: 识别结果
crop_img
: 识别结果对应的图片训练数据
具体的标签文件样式可参考
ppocr-rec
。
对于
关键信息提取
任务,其导出路径默认保存在当前图片目录的同级目录下的
ppocr-kie
文件夹内,其包含:
class_list.txt
: 标签类别列表
ppocr_kie.json
: KIE 标注结果
具体的标签文件样式可参考
ppocr-kie
。
当前 X-AnyLabeling 最新版本支持一键导入/导出 Grounding 任务相关的标签文件。
在导入/导出 ODVG 标注文件之前,需要准备好一份标签配置文件,具体可参考 classes.txt ,其中每一行代表一个类别,编号从上至下依次递增。
导入任务 :
导入
按钮。
导出任务 :
导出
按钮。
ODVG 标签文件样式可参考 ODVG 。
X-AnyLabeling
具备数据统计功能,允许用户轻松获取当前任务的统计概况。只需在顶部菜单栏选择
工具
下拉选项中的
数据总览
按钮,即可查看当前数据状态。其支持以下功能:
数据导出功能
x-anylabeling-crops
,并根据类别名存放相应的目标。
当前,
X-AnyLabeling
提供对标签对象的全局管理功能。用户可以通过以下操作进行管理:
用户可通过点击 工具 -> 对象管理器 选项,在弹出的标签管理窗口中进行相应操作。
此外,当需要快速选择画布上的所有标注对象时,请按照以下步骤操作:
切换编辑模式
在左侧工具栏中点击选择相应图标(或按快捷键
Ctrl+E
)进入编辑模式
激活标签列表
在右侧对象标签栏中,使用鼠标左键单击任意一个目标标签
执行全选操作
保持按住
Shift
键的同时:
Home
键选中当前标签以上的所有对象
End
键选中当前标签以下的所有对象
X-AnyLabeling
提供了标签类型转换功能,允许用户在界面上方菜单栏的
工具
选项中点击对应的设置项,以完成标签类型的转换。当前支持的标签类型转换包括:
注意:
旋转框转矩形框
和
多边形框转多边形框
操作默认取最大外接矩,因此会丢失一些标签信息,如旋转角度等。这些操作为
不可逆
,请谨慎使用。
实现遮罩图像存储功能,请按照以下步骤操作:
mask
操作的区域,使用
rectangle
、
rotation
或
polygon
对象进行标记,并将标签命名为
__mask__
;
x-anylabeling-mask-image
文件夹中。
在界面上方菜单栏中,用户可点击 帮助 -> 版本信息 选项,查看当前版本的详细信息,包括版本号和运行环境等。
在界面上方菜单栏中,用户可点击 语言 下拉框,选择所需语言进行设置。目前支持 中文 和 英文 两种语言。切换语言后,软件将自动重启,请确保在切换前保存好当前数据,以防数据丢失。
X-AnyLabeling
的用户配置文件默认存放在当前用户目录下的
.xanylabelingrc
文件中。您可以通过以下路径找到该文件:
~/.xanylabelingrc
C:\Users\<用户名>\.xanylabelingrc
在该配置文件中,您可以调整各种用户自定义设置,例如界面布局、快捷键配置等。
当前 X-AnyLabeling 默认的快捷键配置如下,用户可以根据自身需求进行修改,确保避免快捷键冲突:
以下是修改自定义标签颜色的步骤:
a. 打开用户目录下的配置文件
.xanylabelingrc
,您可以使用文本编辑器或命令行工具进行编辑。
b. 在配置文件中找到字段
shape_color
,确保其值设置为 "manual",这表示您将手动设置标签的颜色。
c. 定位到
label_colors
字段,这是一个包含各个标签及其对应颜色的部分。
d. 在
label_colors
中,找到您希望修改颜色的标签,例如 "person"、"car"、"bicycle" 等。
e. 使用 RGB 值表示颜色,例如
[255, 0, 0]
表示红色,
[0, 255, 0]
表示绿色,
[0, 0, 255]
表示蓝色。
f. 将您想要设置的颜色值替换到相应标签的值中,保存文件并关闭编辑器。
具体示例如下:
default_shape_color : [0, 255, 0] shape_color : manual # null, 'auto', 'manual' shift_auto_shape_color : 0 label_colors : person : [255, 0, 0] car : [0, 255, 0] bicycle : [0, 0, 255]完成上述步骤后,您已成功修改了自定义标签的颜色。下次在标注过程中使用这些标签时,它们将显示您所设置的颜色。
当前 X-AnyLabeling v2.4.0+ 版本支持在 GUI 界面直接设置
label_colors
。您可以点击菜单栏的
工具
->
标签管理
进行设置,此更改仅对当前窗口生效。
如果需要加载
预定义标签
,可以修改
labels
字段。在定义以
纯数字
命名的标签名称时,请务必将其加上单引号
''
。具体示例如下:
在 X-AnyLabeling v2.4.0 及以上版本,新增
自动切换至编辑模式
功能,用户可通过配置文件中的
auto_switch_to_edit_mode
字段进行设置:
注:在
多标签分类任务
的标定中,当用户手动上传属性文件时,
auto_highlight_shape
字段会被设置为
false
,以避免因误触而导致的属性窗口状态栏的切换,从而提升用户体验。
a. 打开用户目录下的配置文件
.xanylabelingrc
,您可以使用文本编辑器或命令行工具进行编辑。
b. 在配置文件中找到字段
shape
,根据需求修改相应字段值,包括边框颜色、填充颜色、顶点填充颜色、选中状态下的边框颜色、选中状态下的填充颜色等。
关于如何加载和导出模型可参阅 custom_model.md 文档。