01标注平台是什么

这一页只回答一个问题:标注平台和"在点云上画个框"的编辑器,差在哪。 答案会决定你后面怎么看这个行业里的每一件事。

定义 五个台阶 和 Foxglove 的分工

一、一句话定义

核心定义

标注平台是一个「人画标签的工厂」。 它把工程师手里一堆没有标签的原始传感器数据,变成模型能吃的训练集。

重点是"工厂"这两个字。它不是编辑器,而是 编辑器、数据库、工作流、质量管控、导出管道这几样东西的合体。

这个区分值得反复强调,因为它决定了你需不需要这个东西。

一个人标 100 帧:
    打开浏览器 → 载入本地文件 → 画框 → 导出下载
    → 一个纯前端编辑器就够了,市面上有现成的

10 万帧、20 个人、要审核、要导出、还不能出错:
    → 编辑器只占全部工作量的一小部分
    → 剩下全是"工厂"的部分:分派、协同、统一、加速、质检、追溯
这个区分是后面所有内容的地基

后面每一节讲的都是"工厂"的某个车间:怎么让人同时干活不打架、怎么保证大家画得一样、 怎么让 AI 少让人画、怎么决定该标哪些数据。

画框本身反而是最容易的一环。难的是让 20 个人画出来的框能拼成一个数据集。

二、它解决的到底是什么问题

起点很朴素。模型需要真值,而原始传感器数据里没有标签。 要让模型学会"这是个箱子",得有人一个个把箱子画出来。

真值 / ground truth 标准答案。模型训练时拿它算损失, 评测时拿它算精度。它不在传感器数据里,是人工产出的。

画一个框不难。难的是规模:10 万帧、20 个标注员、类别定义要一致、 要审核、要能导出、还要不出错。

标注平台的价值就是逐层解决这件事。这五层是五个不同的台阶, 从"一个人画得出来"一路走到"决定该标哪些"。

层能力解决什么
编辑层 浏览器里画 3D 框、3D 语义与实例分割、2D 框 / 多边形 / 关键点、2D↔3D 融合标注、跨帧跟踪 让人画得出来。3D 标注是最难的,要同时渲染点云和投影图像
工作流层 团队与角色、任务领取(Kanban)、进度看板、审核流 让 20 个人并行干、干得完
规范层 Ontology 中心:类别层级加属性 让所有人画得一样。这是标注质量的头号杀手
加速层 内置预标注模型:点云 OpenPCDet、图像 YOLOR / RITM、跟踪 AB3DMOT 让人别从零画,做人在环
治理层 相似度图(openTSNE)、数据管理、质量监控 找出重复、异常、长尾样本。标一万个相似的帧是纯粹的浪费
Ontology 本体。在这里指的是类别体系和它的属性定义, 比如"车"下面分轿车、卡车,每类各带哪些属性(朝向、遮挡程度、截断比例)。 标注员只能从这里选,不能自己临时造一个类别。
五个台阶的顺序不是随意的
编辑层    一个人能不能画出来          ← 手艺
工作流层  一群人能不能同时画           ← 组织
规范层    一群人画出来的是不是一回事    ← 一致
加速层    能不能少画一点               ← 效率
治理层    该画哪些(而不是怎么画)      ← 决策

越往后越反直觉,也越值钱。后面几页逐个展开。

三、和 Foxglove 的本质区别

如果你用过 Foxglove,这是最容易混的一处。两者看起来都是在屏幕上显示点云和图像, 但根本不是同一个物种。

三个易错点

1. 别想着用 Foxglove 代替它。 在 Foxglove 里画完的框,第二天打开就没了,也没法交给第二个人。

2. "回放"这个词把 Foxglove 说小了。 回放只是它的入口。它的定位是机器人数据的可观测性与调试:多面板时间轴联动、 可以连实时机器人、可以写扩展。 类比一下,Foxglove 之于机器人数据,相当于 Chrome DevTools 之于网页。

3. 两者不是竞品,是流水线的不同段。 Foxglove 在上游,管数据质量;标注平台在下游,管标签生产。不存在"选哪个"。

一张表看清物种差异

FoxgloveXtreme1(本材料的主要例子)
读写只读可写
用户单个工程师标注团队加审核员
状态无,关掉就没了标签进数据库,持久化,可追溯
数据源MCAP / bag 直接读只吃 pcd + jpg + json
类别管理无Ontology 中心,强制统一
工作流无任务分配、领取、审核
导出无COCO 或原生格式
回答的问题我的数据对不对?我的标签对不对?
MCAP 一种机器人数据的容器格式,把多路带时间戳的消息打在一个文件里。 可以理解成 ROS 那种 bag 的现代版,读写更快,也更好做索引。

它们在同一份数据上的分工

采集 → 同步 → 标定 → MCAP ─┬─► 【Foxglove】  ← 角色:工程师
                            │      看数据、验标定、定位 bug
                            │      产物:一个判断
                            │
                            └─► 转换脚本 ──► 【标注平台】 ← 角色:标注团队
                                              pcd + jpg + json
                                              产物:标签 → 进训练集

拿一条具体链路串一下。假设机器人采了一段 MCAP,激光和相机没对齐:

步工具干什么产出
1Foxglove打开 MCAP,把点云染色投到图像上,发现 10 m 处的电线杆错位 5 px"标定有问题"
2标定工具重标外参新的 T_cam_lidar
3Foxglove再打开一次,确认对齐了"可以用"
4你自己写的脚本MCAP 转 pcd / jpg / json,把新外参写进 camera_config三件套
5标注平台标注员画 2000 个 3D 框,人在环加审核标签
6标注平台导出 COCO 或原生格式数据集
7回 Foxglove把导出的框反解成 MCAP 投回图像,肉眼看穿帮质检结论

第 1、3、7 步 Foxglove 各出现一次。它是贯穿全程的验收工具, 这恰好说明它不是某个环节的播放器。

真正的分界

Foxglove 不做生产,只做观察。 它显示的是数据,不是标签。你不需要定义"什么是卡车",就能看一帧点云。

标注平台的产物是要进训练集的标签。一旦涉及多人、跨时间、要合并, 就必然长出后面那四层东西。

四、这一页带走什么

一句话:标注平台的价值在"工厂",不在"编辑器"。

五个台阶里,编辑层是最容易被看到的那一层,也是唯一能靠开源现成方案解决的一层。 真正拉开差距的是后面四层:怎么组织人、怎么统一标准、怎么少画、怎么决定标哪些。

下一节回答一个更根本的问题:为什么连"画一个框"这件事本身都那么难。

← 导读 ·  下一页:为什么「画一个框」会很难 →
京ICP备19013239号