194D 的定义

一帧标得准,和连续三千帧标得对,是两件完全不同的事。这一页讲清楚 4D 到底多了什么, 以及它为什么比逐帧 3D 贵得多、也值钱得多。

顺序不是身份 轨迹而不是点 遮挡时的先验

一、先看一个失败

一个团队标了 1000 帧的车,每帧一个 3D 框,标得很准,质检也过了。
下游拿去做轨迹预测,效果很差。

不是标注不准。是下游不知道该拿哪个框去减哪个框。

预测一件事的前提是,你得先知道那是一个东西。 而逐帧标注给你的是 1000 个互不相干的框。

二、顺序不是身份

顺序身份
是什么谁在前谁在后,一个全序谁和谁是一伙的,一个分组
怎么来的帧号和时间戳,白送要判断,人或算法去做
能回答"这帧有什么""这辆车出现过几次"
一个判据就能分开它们

问一句:"这辆车一共出现了几次?"

只有帧号和框的时候答不了。有了身份才答得了。

顺序回答不了"几个",身份才能。

打个比方,一个花名册。顺序是行号,纸本来就一页一页,白送。 身份是每行写的是哪个人,要填。一千行只有行号没有名字,你知道有一千条记录, 但不知道张三来了几次。

为什么顺序永远推不出身份

帧号(顺序,免费)      几何            身份(要判断)
    1                  ┌──┐              A
    2                  ┌──┐              A
    3                  ┌──┐              A
   ...
  500                 ┌──┐   这里换了一辆车?   A 还是 B
  501                 ┌──┐              ?

在帧 500 那里,顺序完全正常,帧号连续,时间戳连续。 而身份可能已经断了一轮。

顺序是连续的,身份不是。顺序永远不会告诉你这里换人了。

三、所以 4D 不是"3D 加时间戳"

天真的读法是:3D 是三个空间维度,4D 就是再加时间。但逐帧的 3D 框本来就带时间戳。

3D 标注4D 标注
时间戳✅ 有✅ 有,一样
物体身份❌ 没有✅ 写进数据里
产物一堆孤立的点若干条轨迹
一个类比

一叠照片,每张背面写着拍摄时间,那是 3D 标注。

一段视频,帧之间有对应关系,那是 4D 标注。

照片也有时间戳。但照片里这个人是谁,要靠你自己认。

四、代价:错误的影响范围变了

错误影响范围怎么修
框画歪了那一帧重画那一个框
身份错了那条轨迹上的所有帧要切开重拼。如果两条轨迹交换了,要同时改两边

一个身份错误可以污染三百帧。而且它很难局部修。

更麻烦的是它看起来正常

框歪了,你一眼看得出来。身份断了,那一帧的框看起来完全正常。

只有把时间轴拉长看,才看得出轨迹断了。

这跟前面讲的那些静默错误是同一类:坏了,但没人报警。

五、真正的难点:遮挡时还敢不敢说"是同一个"

帧 100:   ┌──┐            A
帧 101:                    被树挡住,什么都没有
帧 102:                    还是被挡住
帧 103:   ┌──┐            A?还是另一辆?

看得见的时候判断同一,很容易。长得一样,位置连着。

难的是中间那两帧什么都没看见,凭什么说 103 出来的就是 100 的那辆。

因为在这段看不见的时间里,"是同一辆"也是一个先验

它可能错。它可能超车走了,103 出来的是另一辆;也可能变道了,位置跳了一下。

所以 4D 标注的难点,不是看得见时判断同一,是看不见时还敢不敢判断同一。

这也意味着身份这个东西必须满足三条:连续,一个物体的一生是一条不断的线; 唯一,同一帧里一个物体只能有一个号;传递,1 和 2 是同一个、2 和 3 是同一个,那 1 和 3 也是。

标的时候人只需要判断相邻两帧是不是同一个,但系统必须保证全局这三条。 这就是为什么号的分配在工具里有一套生命周期:出现、消失、被遮挡、重新出现。

六、收益

#收益说明
①省人工标一帧,其他帧可以推演或者插值
②下游可用轨迹、速度、意图、交互,全都建立在身份上
③可质检有了身份,才能检查"同一辆车的框有没有跳"。没有身份,连"抖动"都定义不了

第三条容易被忽略。它是一个副产品:一旦有了身份,质量检查才有一个可以衡量的对象。

七、这一页带走什么

4D 多的不是时间戳,是时间上的身份。它把一堆孤立的点接成线。

这个转换让产物从"一帧里有什么"变成"一个物体的一生",下游才拿得动。

代价是错误的影响范围从一帧变成一条轨迹,而且它看起来是正常的。

← 上一页:算法流程与模型架构 ·  下一页:一致性与传播 →
京ICP备19013239号