AI 批量标注
这个功能解决什么问题
数据集里有几千张图要标,纯人工一张张画框要花好几天。如果项目里已经有一个能用的模型,能不能让模型先把大部分明显目标标出来,人只负责修正错误和补漏?
AI 批量标注就是这个思路。它用当前项目的模型对选中的图片跑一遍推理,把检测到的目标直接写成标注文件,再按置信度自动分流:高置信度的进入「已通过」,低置信度的进入「待审核」等人工把关,没检测到任何目标的图片自动标记为反例。
两段式设计
AI 批量标注拆成「配置」和「执行」两步,避免每次都要重新挑模型、调阈值。
- 配置(头部「AI 标注设置」按钮):选模型 / 版本 / 制品、调置信度和 IoU 阈值、设覆盖开关。配置保存后整个批次复用,不用每次执行前重选。
- 执行(浮动操作栏「AI 标注」按钮):对当前选中的图片用已保存的配置跑一遍。
配置弹窗
在批次详情页头部点「AI 标注设置」,打开配置弹窗:

| 字段 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
模型 / 版本 / 制品 | 层级选择器 | 必填 | — | 先选 Model 系列,再选 Version,最后选 ModelArtifact。选择器按当前项目的任务类型自动过滤,只显示发布版本的 is_default=True 制品的模型。 |
置信度阈值 | 滑块 | 可选 | 0.25 | 推理时的检测过滤阈值。低于此值的检测框不写入标注。这是推理过滤阈值,不是审核自动通过阈值,两者语义不同。 |
IoU 阈值 | 滑块 | 可选 | 0.45 | NMS(非极大值抑制)重叠判定阈值。两个框 IoU 超过此值时保留置信度高的那个。 |
覆盖开关 | 开关 | 可选 | 关闭 | 关闭 = 跳过已有标注的图片;开启 = 全部重新标注,覆盖原有结果。 |
这里的「置信度阈值」是推理检测过滤门槛(默认 0.25),低于这个值的检测框根本不会写出。批次头部的「自动通过线」(默认 0.5)是审核分流门槛,高于它才自动通过。两者独立,别调混了。
举例:置信度阈值 0.25、自动通过线 0.5 时,0.25 ~ 0.5 之间的标注会写入但进入「待审核」队列,0.5 以上的自动通过。
执行流程
切换到「图片网格」Tab
在批次详情页点顶部标签栏的「图片网格」。
用筛选 Tab 选目标图片
点顶部的 6 个筛选 Tab 之一缩小范围。比如想给所有未标注图跑 AI,点「未标注」Tab,列表只剩没标过的图。
勾选图片
单张勾选,或者点工具栏的「全选」按钮一次性选中当前筛选条件下的全部图片(最多 10000 张)。选中至少一张后,页面底部浮出操作栏。
点「AI 标注」按钮
浮动操作栏里的「AI 标注」按钮会用头部已保存的配置执行。如果还没配置过,会提示先去头部点「AI 标注设置」。
确认覆盖提示(如果有)
如果选中图片里已经有标注,且覆盖开关是关闭的,会提示跳过多少张。覆盖开关打开时会提示将覆盖多少张。确认后开始执行。
等待执行完成
后台逐张推理,完成后浮动栏消失,图片网格自动刷新当前页(不丢滚动位置和筛选状态)。
覆盖开关
覆盖开关关闭时,AI 标注只处理「没有标注」的图片。已经有标注(不管人工还是 AI)的图会被跳过,原有标注保留。这种模式适合在已有标注基础上增量补充,不会破坏人工修正过的结果。
覆盖开关打开时,所有选中图片的标注(包括人工标注)都会被新的 AI 结果替换。如果图片里已经有人工修正过的标注,开启覆盖会丢失这些修正。除非明确知道要重标,否则保持关闭。
AI 标注完成后的分流
执行完成后,图片按置信度自动分流:
- 高置信度(≥ 自动通过线):状态变为「已通过」,不进入人工审核队列。
- 低置信度(< 自动通过线):状态变为「待审核」,进入审核视图等人工逐张确认。
- 无检测目标:图片被标记为「反例」,创建空标签文件。这类图告诉训练模型「这张图里没有目标」,能提升背景区域的判别力。
AI 标注的图进入「待审核」时,review_status 统一设为 pending_review,不会自动确认。即使置信度高于自动通过线,状态变化是系统级的「自动通过」,但 annotation_source 仍标记为 AI 来源,便于后续追溯。
已经被人工退回的图片,即使本轮 AI 标注的置信度高于自动通过线,也不会自动通过。人工判断优先于 AI 置信度,防止用同一个模型反复推翻你的决定。
批量上限
单次 AI 预标注最多处理 200 张图片。如果选中超过 200 张,按钮文案会变成 开始预标注 (200/N),按顺序处理前 200 张,剩下的需要分批执行。
这个限制是为了避免单次任务时间过长、占用过多推理资源。如果想一次跑完,分多次点「AI 标注」即可,每次自动从未处理的图开始。
批量通过、批量退回、批量删除、标记反例这些非 AI 操作按全量执行,没有 200 张限制。只有 AI 预标注(涉及推理算力)有这个硬上限。
模型选择约束
模型选择器是 Model → Version → Artifact 三级层级结构,按当前项目的任务类型自动过滤。只有发布版本(is_default=True)的 Artifact 会出现在选择器里。draft 版本不能用于批量标注,需要先在训练 Tab 发布。
批量标注 AI 流程内部直接调用 Ultralytics 模型对象,只能用 .pt 格式的 Artifact。如果选中的是 ONNX 制品,会触发 ValueError 拒绝执行。需要 ONNX 推理的场景(如主动学习评分)走另一条路径,不受此限制。
归档批次不能执行 AI 标注
已经导入数据集的归档批次只显示「图片网格」一个 Tab,头部「AI 标注设置」按钮和浮动操作栏「AI 标注」按钮都不显示。归档批次的数据已经合并到数据集,不应该再修改。
操作流程:典型 AI 标注场景
打开批次详情页
进入项目「数据标注」,点开目标批次。
配置 AI 标注
头部点「AI 标注设置」,选模型 / 版本 / 制品,设置信度 0.25、IoU 0.45,覆盖开关按需。保存配置。
切到图片网格选未标注图
点「图片网格」Tab,再点「未标注」筛选 Tab,点工具栏「全选」勾选所有未标注图。
执行 AI 标注
浮动操作栏点「AI 标注」,确认提示后开始执行。如果未标注图超过 200 张,会自动处理前 200 张。
切到审核视图逐张审核
AI 标注完成后,低置信度的图进入「待审核」。切到「审核视图」逐张把关,详见图片级审核。
提交复核
所有待审核图处理完后,头部点「提交复核」交给管理员,详见任务复核与合并导入。
常见问题
执行完成后系统会递增一个刷新信号,触发当前页重新拉取数据。如果界面没自动刷新,手动切一下筛选 Tab 或翻一页就会重新加载,不会丢失滚动位置和选择状态。
可能的原因:覆盖开关关闭且这些图已有标注被跳过、置信度阈值设得太高导致没有任何检测框通过、或者图片本身没有任何目标被标记为反例。先去「反例」和「已通过」Tab 看看是不是分流到那里去了。
不能。一次 AI 标注只能用一个模型制品。如果想对比两个模型的效果,分两批执行:第一次用模型 A 跑(覆盖开关关闭,跳过已有标注),第二次切到模型 B 时把覆盖开关打开。注意第二次会覆盖第一次的结果。
推理置信度阈值(默认 0.25)建议保持低值,让模型把所有可能的目标都写出来,再由审核流程过滤。如果阈值设太高,模型不确定的目标直接被丢弃,反而漏标。
审核自动通过线(默认 0.5)才是控制人工审核工作量的关键。模型质量好就把线调高(0.6 ~ 0.7)减少审核量,模型质量一般就调低(0.4 ~ 0.5)多审几张。
主动学习(Active Learning)迭代里的批量标注任务由系统自动创建和触发,不走本页的人工操作流程。但底层用的是同一套批量标注处理器,分流规则、自动通过线、反例标记等行为完全一致。详见主动学习相关文档。