如何使用 DDS 进行协同标注
如何使用 DDS 进行协同标注
引言
为了帮助用户构建高质量的数据集,DDS(DeepDataSpace)为计算机视觉领域的目标检测、图片分割、姿态估计等算法场景提供了丰富而便捷的标注工具。目前,我们已经实现了矩形、多边形和人体关键点的标注功能。 同时,针对不同的使用场景,DDS提供了两种入口:
快速模式:体验开箱即用的标注工具,支持上传、标注、导出结果,适用于个人完成小批量数据的标注。
协同模式:帮助用户创建项目和标注工作流程,支持任务分发、进度监控、质量审核等功能,适用于团队协作完成大批量数据标注。
本文主要介绍如何使用协同模式。
协同模式设计
协同模式工作流程如下图所示:
项目
项目是一个容器,包含一个或者多个数据集的所有标注任务。
由项目Owner负责创建项目,并可以实现:
- 绑定一个或多个数据集作为标注任务的目标对象;
- 设置项目的工作流;
- 根据数据集或图片数目进行任务拆分;
- 设置项目是否需要审核员;
- 设置项目的管理员,负责进行任务的分配管理;
- 查看和进行项目的状态流转;
任务
任务是项目的组成,一个标注项目可以拆分成多个标注任务。
你可以为每个任务进行以下操作:
- 把任务的不同角色分配给具体的协同账号;
- 不同的角色账号有不同的任务权限;
- 查看任务的进度;
- 查看和进行任务的状态流转;
角色说明
- Owner (项目所有者):负责创建项目并指派项目经理。
- Manager (项目经理):负责配置工作流进行任务初始化,并指派任务的标注组长及审核组长。也负责对任务进行抽样检查,对任务结果进行流转。
- Label Leader (标注组长):负责指派标注员,若任务被拒绝,可与项目经理进行协商流转结果。
- Review Leader (审核组长):负责指派审核员。
- Labeler (标注员):负责具体的标注任务。
- Reviewer (审核员):负责对标注员的标注结果进行审核。
协同账号
协同标注模式依赖账号系统,目前暂时只支持命令行创建账号。
1. 生成协同账号
# 在 dds services 被启动后执行以下命令生成账号
# 1. 生成账号,会自动分配密码
ddsop useradd user1
# 2. 设置账号属性为staff(赋予创建项目权限)
ddsop useredit user1 --staff y
2. 登录账号
进入协同标注模式
点击DeepDataSpace首页导航栏中的标注,并选择协同模式,进入标注页面。
项目设置
1. 生成项目
账号属性为staff才有生成项目权限。
- 点击
+新建项目
按钮 - 填写项目基础信息表单
- 项目名称
- 项目描述
- 数据集
(可选择1个或多个数据集作为项目标注对象)
- 预标注
(可填写数据集已有的标注集名称,系统匹配到会将对应标注集作为预标注导入)
- 类别
(填写标签类别,标注时可选择其中类别进行标注)
- 项目经理
- 点击
下一步
- 填写工作流信息表单(若不设置自己为Manager,则不填写直接提交即可)
- 点击
提交
开始创建项目
2. 设置项目工作流程
项目Manager负责设置工作流程,可以在
新建项目
流程中设置,也可以创建项目后,点击对应项目的初始化
按钮进行设置。
具体表单项如下:
- 选择任务分割方式
- 按数据集分割
- 按图片数目分割
- 审核配置
- 无审核员
- 1个审核员
3. 项目状态
创建项目成功后,可在项目列表页面查看项目整体任务进度以及项目状态。
项目一共有6个状态:
- 等待中: 项目已创建但为进行工作流程设置
- 初始化中: 项目正在按工作流设置分割任务中
- 进行中: 项目已进入任务分配及执行阶段
- 审核中: 项目所有任务已完成时会自动进入
审核中
状态 - 已拒绝: 项目owner可将审核中的状态流转到
已拒绝
- 已通过: 项目owner可将审核中的状态流转到
已通过
项目创建过程具体演示如下:
任务管理
1. 任务分配
项目初始化成功后,点击具体项目的 详情
可进入项目的任务列表。
- 项目经理 负责分配标注组长和审核组长;
- 标注组长 负责分配标注员,分配完成后标注员可开始标注工作。
- 审核组长 负责分配审核员,分配完成后审核员可开始审核工作,可对标注完成的具体对象进行审核。
2. 标注
标注员在任务列表页面,可查看到自己的所有任务。
进入任务工作站
任务处于 进行中
状态,可点击 开始标注
进行标注。
进入标注任务详情页面后,可以看到目前自己的角色为Labeler。
可以看到页面顶部有4个tab item,点击显示对应状态下的任务对象:
- 待标注:未开始标注的对象
- 待审核:已提交标注结果的对象
- 已驳回:已提交标注结果且被审核员拒绝的对象
- 已完成:已提交标注结果且被审核员审核通过的对象
开始标注
在 待标注
tab,点击 开始标注
可进入标注编辑器。
具体标注工具使用说明可阅读:标注工具使用说明
标注完成后,点击右上角的‘保存’即可提交标注结果。
提交成功后会自动跳转到下一个标注对象进行标注。
更改标注结果
在 待审核
tab,可以点击具体的标注对象,点击 编辑
,对原有标注结果进行更改。
被驳回处理
当你存在被驳回的对象时,可点击顶部的 处理驳回
,对被驳回的任务进行重新标注。
3. 审查
审查员在任务列表页面,可查看到自己的所有任务。
进入任务工作站
任务处于 进行中
状态,可点击 开始审核
进行审核。
进入标注任务详情页面后,可以看到目前自己的角色为Reviewer。
开始审核
点击 开始审核
可进入标注编辑器审核状态
可对标注对象结果进行审核,查看具体标注结果,并提交审核结果:
- 拒绝:会将对象打回给标注员进行重新标注,进入到标注员任务的
已驳回
队列中; - 通过:审核通过,对象会进入
已完成
队列中;
提交成功后,会自动跳转至下一个对象进行审核。
4. 任务状态
任务一共有6个状态:
- 等待中: 任务等待进行人员分配;
- 进行中: 任务人员分配完毕,已进入标注&审核阶段;
- 审核中: 任务中所有对象已被标注且审核完成(若设置1个审核员), 会自动转成该状态;
- 已拒绝: 项目经理可对任务结果进行手动抽样检查,将审核中的任务状态流转到‘已拒绝’;
- 已通过: 项目经理可对任务结果进行手动抽样检查,将审核中的任务状态流转到‘已通过’;
任务进度
在任务列表页面,可以看到每个任务具体的进度:
重新指派人员
- 项目经理可对标注组长和审核组长进行重新指派
- 标注组长/审核组长可对标注员/审核员进行重新指派,重新指派后原任务进度会移交到新指派人员中
拒绝任务
- 任务中所有对象已被标注完成且审核完成(若设置1个审核员)时,任务会自动流转到
审核中
状态。 - 此时项目经理可对该任务进行抽样检查,如果任务整体质量不高,可进行任务的
拒绝
操作。 - 任务被
拒绝
后,标注组长可进行协商,同意该结果后,加入任务中所有的对象均会进入已驳回
队列中,需重新标注和审核。
注意
- Owner可将所有角色分配为自己进行快速体验。
- 上面情况说明均为工作流程设置了1个审核员的场景,若设置无审核员,则不需分配审核组长及审核员。
- 若你兼任多个角色,可以在工作站顶部切换角色以使用不同角色的操作权限。