引言

想象一下试图拍摄一颗在空中飞行的子弹。现在,想象一下在拍完照片后 , 你决定实际上想要聚焦在子弹背后的目标上,而不是子弹本身。在传统摄影中,这是不可能的。你需要一台高速摄像机来冻结动作,以及一台光场相机来改变焦点。但是,高速摄像机是极度依赖数据的庞然大物,几秒钟的素材通常就需要千兆字节的存储空间,而光场相机通常速度慢且体积笨重。

如果有一种方法可以一次性捕捉高速运动、高动态范围 (HDR) 和 3D 角度信息,而且不会烧坏你的硬盘,那会怎样?

这就是一个被称为事件场 (Event Fields) 的迷人新框架背后的前提。通过结合神经拟态“事件相机”的独特属性与巧妙的光学工程,研究人员解锁了一种新的成像范式。如下图所示,这项技术支持从慢动作重聚焦到即时深度估计等各种应用——这些在以前是极难同时实现的。

图 1: 概览图展示了标准场景、事件表示法与新型事件场 (Event Field) 之间的差异,以及慢动作重聚焦和深度估计等应用。

在这篇文章中,我们将拆解研究论文《事件场: 以高速、高分辨率和高动态范围捕捉光场》。我们将探索“事件”如何取代“帧”来捕捉完整的全光函数,从而使我们能够以 5 个维度 (空间、时间、角度) 观察世界。

背景: 构建模块

要理解事件场,我们首先需要理解被融合的两项技术: 光场和事件相机。

1. 光场 (“是什么”)

当你拍摄一张标准照片时,你捕捉的是世界的 2D 投影。所有击中特定像素的光线被加总在一起,这意味着你丢失了关于这些光线来源 (它们的角度) 的信息。

然而, 光场捕捉光线的位置和方向。用物理术语来说,标准图像是一个 2D 函数 \(I(x,y)\),而光场通常表示为 4D 函数 \(L(u,v,s,t)\),其中 \((u,v)\) 是传感器平面,\((s,t)\) 是孔径平面。

要从光场获得标准的 2D 图像,本质上是在孔径上对光场进行积分 (求和) :

公式 1: 对孔径 s 上的光场函数 L 进行积分以获得图像强度 I。

因为你在积分发生之前就拥有了角度数据,所以你可以在事后通过数学方法操纵光路。这就允许了拍摄后重聚焦——通过计算而非机械方式改变焦平面。

2. 事件相机 (“怎么做”)

标准相机通过以固定的时钟频率 (例如每秒 60 帧) 拍摄快照 (帧) 来工作。如果什么都没动,它们仍然会捕捉 60 次相同的图像。如果东西移动太快,就会产生模糊。

事件相机则不同。它们是受生物启发的传感器,工作原理类似于人类视网膜。每个像素独立且异步地运行。像素仅在检测到亮度发生显著变化时才发送数据——即一个“事件”。

在数学上,当对数亮度 \(B\) 的变化超过阈值 \(C\) 时,会在时间 \(t_k\) 触发一个事件:

描述触发事件的亮度变化阈值条件及由此产生的导数关系的方程。

这意味着事件相机测量的是场景的时间导数 。 它们具有极低的延迟 (微秒级) 、高动态范围和低功耗,因为它们不记录冗余的静态背景。

问题所在

这里有个痛点: 事件相机擅长捕捉速度,但它们本质上就像标准相机像素一样,对所有角度的光线进行“积分”。它们丢失了光场信息。相反,光场相机通常由微透镜阵列或相机支架构成,不适合高速、连续的捕捉。

研究人员提出了事件场来解决这个问题。目标是捕捉跨越角度和时间两个维度的辐射导数。

核心方法: 捕捉事件场

为了捕捉事件场,我们需要强制事件相机记录角度信息。研究人员提出了两种截然不同的框架来实现这一点: 空间复用时间复用

方法 1: 空间复用 (万花筒)

第一种方法涉及获取角度视图并将它们铺展在相机的传感器上。这是通过使用万花筒 (Kaleidoscope) 来完成的。

如下图所示,一个矩形万花筒 (一个镜面隧道) 被放置在镜头前。从不同角度进入的光线在万花筒内部反射,并落在传感器的不同部位。

图 3: 万花筒设计的射线草图和硬件设置。

通过将特定角度 \((\omega_i)\) 映射到特定的空间坐标 \(\mathbf{x}\),相机同时捕捉到了场景的多个视图。

公式 5: 展示角度信息到空间坐标的映射。

因此,事件相机测量的是:

公式 6: 展示跨越空间和角度维度的时间亮度导数。

优点与缺点:

  • 优点: 简单且无需移动部件。它同时捕捉所有视图,非常适合高速动态场景。
  • 缺点: 牺牲了空间分辨率。如果你想要 \(3 \times 3\) 的视图网格 (9 个角度) ,你的有效分辨率会下降 9 倍。
  • 缺点: 它依赖于时间变化。如果场景完全静止,事件相机看不到变化,因此什么也不记录。

方法 2: 时间复用 (振镜)

第二种方法更为精妙。与其分割图像,不如随着时间快速改变相机的视角?

研究人员在光路中放置了一个振镜 (Galvanometer) (一种快速反射镜) 。通过振动镜片,他们可以高频 (例如 250 Hz) 沿特定路径 (如圆形或利萨如曲线) 扫描视角。

图 4: 振镜设计的射线草图和硬件设置。

这产生了一个迷人的效果。即使物体是静止的,虚拟相机也在移动。随着视角的改变,由于光场中的角度变化,击中特定像素的强度也会发生变化。

在数学上,这意味着事件相机现在测量的是光场的角度导数 :

公式 8: 描述通过扫描曲线 C(t) 测量角度导数。

优点与缺点:

  • 优点: 没有空间分辨率的损失。你可以获得传感器的完整百万像素数。
  • 优点: 它可以看见静态物体!因为镜面扫描了角度,即使物体冻结不动也会产生事件。
  • 缺点: 它引入了与时间的权衡。因为你是按顺序扫描角度,如果物体在一个扫描周期内移动显著,极快的运动可能会引入伪影 (运动模糊) 。

为了在构建硬件之前测试这些理论,作者使用 Blender 开发了一个基于物理的模拟器。

图 2: 自定义 Blender 插件界面和模拟事件场的渲染示例。

实验与分析

研究人员使用仿真和现实世界的原型机,对这两种设计 (万花筒 vs. 振镜) 进行了广泛的对比。

对比 1: 静态与动态场景

两种设计最显著的区别在于它们如何处理静态物体。在仿真测试中,场景包含旋转的水流 (移动) 和一个木箱 (静止) 。

图 5: 仿真对比。万花筒 (b) 捕捉到了水流但遗漏了静态盒子。振镜 (c) 捕捉到了所有东西,但在高速下显示出运动模糊。

  • 万花筒 (b): 注意静态木箱是不可见的。因为它不动,且万花筒也不动,所以没有触发事件。分辨率也较低 (块状感) 。
  • 振镜 (c): 静态盒子被完美重建,因为扫描镜引起了变化。然而,观察移动物体 (漂浮的碎片) ,随着速度增加 (\(8\times\)) ,我们看到了“运动模糊”。

对比 2: “孔径问题”

在计算机视觉中,通常很难检测平行于边缘的运动 (例如,一条垂直线垂直移动看起来是静止的) 。这里也存在类似的问题。

在现实世界的实验中,研究人员水平移动了一个网格图案。

图 6: 使用移动网格的实验对比。(b) 万花筒遗漏了水平线。(c) 振镜捕捉到了完整的网格。

万花筒未能看到水平线,因为当它们向侧面滑动时,该线上的强度没有变化。然而,振镜进行圆形扫描。这种“圆形擦洗”确保了它能捕捉所有方向的边缘,无论物体的运动矢量如何。

应用: 高动态范围 (HDR)

事件相机的巨大优势之一是其动态范围 (140 dB vs 标准相机的 60 dB) 。研究人员通过拍摄一个带有明亮 LED 和较暗背景的场景展示了这一点。

图 7: 标准相机曝光 (a, b) 与 HDR 光场 (c) 的对比。

标准相机 (a, b) 强迫你做出选择: 要么针对强光曝光 (丢失背景) ,要么针对背景曝光 (强光过曝) 。事件场 (c) 同时捕捉到了明亮 LED 的结构细节背景纹理。

应用: SloMoRF (慢动作重聚焦)

利用万花筒设计 , 作者展示了“SloMoRF”。他们将事件数据与标准的低帧率 RGB 相机结合。通过使用传感器融合算法 (如 TimeLens) ,他们可以重建支持重聚焦的高速彩色视频。

图 8: 水箱场景的慢动作重聚焦。注意能够聚焦在水花 (前) 或字母 (后) 上的能力。

在图 8 中,他们拍摄了落入水中的乐高积木。系统将帧率从 120 fps 插值到 720 fps。结果是一个清晰的慢动作视频,他们可以在事后将焦点从前景的水花转移到背景的“CVPR”文本上。

他们用高速抛射物——一枚玩具飞镖——进一步推进了这项测试。

图 9: 对移动的玩具飞镖进行高速重聚焦。

在这里,有效帧率被提升到了 960 fps 。 图 9 展示了保持快速移动的飞镖清晰聚焦同时模糊背景,或反之亦然的能力。这在传统设备上是极难实现的。

应用: 振镜重聚焦与深度

当分辨率至关重要时, 振镜设计大放异彩。研究人员拍摄了一个以 480 RPM 旋转的风扇。

图 10: 使用振镜进行动态场景重聚焦。事件场重建 (a) 与标准相机 (b) 的对比。

在图 10 中,标准相机 (b) 由于曝光时间的原因,风扇叶片出现了运动模糊。事件场重建 (a) 以相当于 10,000 fps 的速度 (从事件重建) ,完美冻结了风扇叶片,同时允许用户聚焦在叶片上的“CVPR”文字或背景上。

此外,由于振镜扫描遵循已知的几何曲线,扫描中特定点的像素“清晰度”与其到相机的距离直接相关。这实现了即时真实深度估计

图 12: 以 100Hz 对奔跑的人进行深度映射。

图 12 展示了一个人跑离相机。系统以 100 Hz 生成密集的深度图,显示人从 10 英寸移动到 70 英寸远 (颜色编码从蓝到红) 。这种深度感测方法是被动的,并且比许多主动扫描系统快得多。

挑战与权衡

虽然前景广阔,但事件场框架并非魔法。作者强调了一个关于振镜扫描频率的反直觉限制。

你可能会认为“扫描越快越好”。然而,事件相机有带宽限制 (每秒可以处理的最大事件数) 。

图 11: 扫描频率的影响。在 800Hz 时,静态背景因数据丢失 (事件丢弃) 而模糊,但快速移动的风扇变得更清晰。

如图 11 所示,当扫描速度达到 800 Hz 时,相机被背景纹理产生的大量事件所淹没。系统开始丢弃数据,导致静态背景模糊 (通常与运动相关的现象,但这里与带宽相关) 。然而,快速移动的风扇在更高速度下实际上看起来更好,因为相对运动模糊减少了。这揭示了扫描速度、场景复杂度和传感器带宽之间复杂的优化博弈。

结论

“事件场”是计算摄影向前迈出的重要一步。通过认识到我们不需要在高速和丰富的角度数据之间做选择,研究人员打开了通往五维成像的大门。

  • 万花筒方法为极端动态场景提供了一个稳健的固态解决方案,可以用分辨率换取速度。
  • 振镜方法提供了一个高分辨率的解决方案,同样适用于静态和动态场景,将标准事件相机变成了扫描式光场传感器。

这项工作对机器人技术有着深远的影响,因为高速深度估计在这些领域至关重要;对于科学成像也是如此,因为分析高速流体动力学或弹道学通常需要在事件发生后进行重聚焦。随着事件传感器在分辨率和带宽方面的提升,像事件场这样的技术很可能会成为计算机视觉武器库中的标准工具。