摘要:现行专业级或消费级的 3D 相机所采用的三角法(Triangulation)和飞时法(Time-of-Flight,ToF),现因苹果公司最新版 iPad Pro 的出现--搭载了 d-ToF 技术的深度相机--已然为 3D 视觉在消费场景的应用推动了新的机会。为了让读者更深入地了解 ToF 技术,清华创业团队光鉴科技根据行业现状、学术界的最新成果,编写了此版《ToF 深度相机技术白皮书》。
3D 视觉介绍
3D 视觉技术能够获取现实三维场景完整的几何信息,利用带有深度信息的图像来实现对于场景的精准的数字化,从而实现高精度的识别、定位、重建、场景理解等机器视觉的关键功能。以 2010 年的 Kinect 和 2017 年的 iPhoneX 的发布为标志,3D 视觉技术从传统意义上只应用于专业领域的高端技术变成了消费级产品。
Figure 1?1 二维空间到三维空间示意图
现行专业级或者消费级的 3D 相机采用两种主流技术,三角法(Triangulation)和飞时法(Time-of-Flight, ToF)[1]。采用三角法的 3D 视觉技术包括双目技术和结构光技术,基本原理采用三角几何视差来获得目标到相机的距离信息。这种方法在近距离有着很高的精度,但是误差会随着距离增大而快速变大。ToF 技术测量相机是指主动投射出的光束经过目标表面反射后被相机接收这个过程的来回的飞行时间,基于光速即可获得目标到相机的距离。ToF 技术在不同距离的误差相对三角法更稳定,在远距离有着更好的精度[2]。
在本文中,我们将介绍消费级的 3D 视觉技术的主要技术路径。针对 ToF 技术,我们将介绍其主要实现方法的具体工作原理,各自的优劣势以及技术挑战。根据行业的现状,我们将结合学术界的最新成果,介绍解决当前 ToF 相机痛点的一些方法。最后,我们也将结合现下行业需求,介绍 ToF 的一些重要的应用场景。
3D 视觉方案介绍
常见的 3D 视觉方案主要包括双目、结构光和 ToF 三个技术方向。这三种方法各有优劣。虽然本文主要介绍的是 ToF 技术,本章节将简要地介绍和比较其他两种技术方案,帮助读者全面地了解 3D 视觉技术方案。
双目技术
双目深度重建利用的是三角测距法计算被测物体到相机的距离。具体的说,就是从两个相机观察同一物体,被观测物体在两个相机中拍摄到的图像中的位置会有一定位置差。正如将一只手指放在鼻尖前,左右眼看到的手指位置会有一个错位的效果。这个位置差称为视差,被摄物离相机越近,视差就越大;距离越远,视差就越小。在已知两个相机间距等相对位置关系的情况下,即可通过相似三角形的原理计算出被摄物到相机的距离。
Figure 2?1 双目技术示意图
双目深度重建的原理虽然简单,但在实际使用中遇到了两个挑战:计算量大,依赖被摄物的纹理及环境光照。下面对这两个挑战分别展开介绍。
要计算一幅图中每个像素的深度值,我们需要得到每个像素在两幅图中的一一对应关系。这个关系的建立通常是采用块匹配(block matching)的方法。具体的说,在一幅图中,以一个像素为中心,选取一个固定大小的窗口,在另一幅图中寻找最相似的窗口,从而得到该像素在另一幅图中的对应像素。块匹配算法有很高的计算复杂度,其计算量正比于 O(NMWHD),其中 N, M 为图像的行数和列数,W, H 为匹配窗口的宽和高,D 为匹配寻找最相似像素的范围。为了达到更好的效果,会采用一些更复杂的改进算法(如Semi-Global Block Matching, SGBM),这就更进一步提高了计算量和复杂度。鉴于此原因,业界常见的方法是将算法固化到特制的 ASIC 芯片中,从而解决计算量的大的问题,但这一增加了额外的硬件成本和迭代变化周期。
双目深度重建的另一大挑战是依赖于被拍摄物体的表面纹理和环境光照。利用双目原理重建表面没有任何纹理的物体时,例如拍摄一面白墙,会遇到无法找到匹配的对应像素的问题。另一方面,当拍摄环境的光照很弱的情况下,例如黑灯环境下,匹配也会遇到很大的挑战。结构光技术为解决这两个问题提供了新的思路。
结构光技术
结构光方案是一种主动双目视觉技术。每个结构光相机包括两个基本组件:一个红外激光投射端和一个红外摄像头。其基本思路是将已知的结构化图案投影到被观测物体上,这些结构化图案将根据物体的几何形状和拍摄距离而发生相应的形变。红外摄像头从另一个角度进行观察,通过分析观测图案与原始图案之间发生的形变,可以得到图案上各像素的视差,再根据相机的内外参恢复出深度。
Figure 2?2 结构光技术示意图[1]
结构光方案可以看成双目方案的一种特例。已知的投射端结构化图案和红外摄像头拍摄到的图案可视为左右双目的观测。结构光重建算法和双目重建算法采用了相似的思想,也面临着类似的挑战,主要包括高计算量和深度突变处的数据缺失。
为解决这两方面的挑战,光鉴创新地研发了一套高效软核重建算法,将计算量降低了两个数量级,只需一颗普通的 ARM 嵌入式处理器即可完成高精度深度重建。与此同时,利用多传感融合与深度学习,该算法大幅提升了常见的深度图缺失问题。
和标准的双目方案相比,结构光方案更为鲁棒,这得益于结构光方案采用的主动光源和投射的结构化图案。具体的说,投射端发出的红外激光照亮了被拍摄物体,这使得拍摄端无需依赖环境光源即可获得亮度稳定的图像输入;另一方面,投射的结构化图案为被拍摄物体增加了表面纹理,这使得拍摄表面没有任何图案的物体也能精准地重建出深度。
双目、结构光及 ToF 技术比较
为了更直观的比较双目、结构光和 ToF 技术路径的优劣势,我们汇总了各个每个方案的关键技术参数的比较。其中,i-ToF 和 d-ToF 技术将在之后的章节中具体介绍。
ToF 基本原理
相比双目视觉和结构光方案,ToF 的方案实现起来会相对简单,主要包括发射端和接收端,ToF 传感器给到光源驱动芯片调制信号,调制信号控制激光器发出高频调制的近红外光,遇到物体漫反射后,接收端通过发射光与接收光的相位差或时间差来计算深度信息。现大部分 ToF 传感器采用背照式 CMOS 工艺技术,该工艺大幅度提高了感光面积,提升了光子收集率和测距的速度,响应时间能够达到 ns 级,在远距离情况下也能保证高精度。
i-ToF 原理
i-ToF,即 indirect ToF,通过传感器在不同时间窗口采集到能量值的比例关系,解析出信号相位,间接测量发射信号和接收信号的时间差,进而得到深度。i-ToF 根据调制方式的不同,可分为两种:连续波调制(CW-iToF)和脉冲调制(PL-iToF),分别发射连续的正弦信号和重复的脉冲信号;前者是通过解析正弦信号相位解析深度,而后者是解析脉冲信号相位来解析深度。
连续波调制(CW-iToF )
通常采用正弦波调制方式,接收和发射端正弦波的相位偏移和物体距离摄像头的距离成正比, 通过相位偏移来测量距离
相位偏移 (φ)和 深度(D) 是由积分能量值从上述公式 C1、C2、C3、C4 解析得到,这几个积分能量值,是四个不同相位延迟的接收窗口采集到的能量,分别对应于在相位采样点 0°、90°、180°、270° 采样,即:
其中 A 为接收到正弦信号的幅度。
精度方面,CW-iToF 精度主要受制于随机噪声和量化噪声,前者与接收光信号信噪比(Signal to Noise Ratio, SNR)成反比,后者与正弦波调制频率成反比。因此,为了提升精度,CW-iToF 一般采用大功率短积分时间采样,提高接受光信号 SNR;同时提高调制频率以抑制量化噪声。
量程方面,CW-iToF 可解析的相位范围为[0~2],因此其最大量程为Dmax=c/(2fm )。即频率越高,精度越高,量程也越小。超过量程的深度,将出现周期性的相位卷绕(Phase wrap),测量值错误的落在[0~Dmax]内。
Figure 3?1 CW-iTOF 工作示意图[3]
脉冲调制 (PL-iToF)
在 PL-iToF 系统中,激光光源发射带有振幅信息 A 和时间 TP 的光脉冲,根据光的飞行速度 C,可计算得到最远探测距离 dMAX=TP*C/2。反射光信号、背景光以及探测器的噪声集成在三个不同时间段内(见Figure 3?2)。PL-iToF 通过双采样技术提高精度,同激光脉冲同步的第一个窗口 W0,同激光信号正交的第二个窗口 W1,是累积反射光信号的两部分,且每个窗口与目标距离成比例;第三个窗口 WB 在没有光脉冲发射时开启,仅收集背景光信号。如果 C0,C1,CB 分别表示在窗口 W0,W1,WB 的光子数,目标距离 D,接收到的有效光强度 AR,背景光 B 可由以下公式得到
Figure 3?2 PL-iToF 的基本工作原理[4]
CW-iToF 与 PL-iToF 对比
CW-iToF 在工作过程中,不论目标物体的距离是多少,系统都采集了完整时长的反射光。相比之下,PL-iToF 在两个窗口内采集的信号的信噪比与距离直接相关。在有背景噪声的情况下,如果目标距离的很近,W1 窗口的能量几乎为零,因此,W1 信噪比非常差;类似的,在较远的距离,W0 中的信号很弱,导致 W0 的信噪比差。这种效应会导致 PL-iToF 在近和远距离都有比较大的误差。
相比 CW-iToF 连续波调试方式,PL-iToF 解算深度更简单、计算量更低,对于平台后端处理能力要求也相应更低。然而,PL-iToF 的精度取决于发光次数,发光次数越多,精度越高,但同时也会带来功耗的增加。即使在相同平均功耗的情况下,PL-iToF 不仅精度弱与 CW-iToF,而且对于背景噪声和暗噪声更加敏感[5]。
因此,现下的主要手机厂商,包括华为、三星、Oppo 等,以及 ToF 芯片厂商,包括索尼,三星,英飞凌等都采用了 CW-iToF 的方案。
d-ToF 原理
d-ToF 即 direct ToF,相比于 i-ToF 技术用测量信号的相位来间接地获得光的来回飞行时间,d-ToF (direct time-of-flight) 技术直接测量光脉冲的发射和接收的时间差。由于激光安全的限制以及消费类产品的功耗限制,ToF相机发射的脉冲能量有限,但是需要覆盖完整的视场区域。光脉冲在经过反射回到接收器时,能量密度降低了超过一万亿倍。于此同时,环境光作为噪声,会干扰接收器对于信号的检测和还原。在这种情况下,探测器获取的信噪比不足以直接还原脉冲的模拟信号,进而导致直接测量深度存在很大的误差。因此,d-ToF 方法需要有灵敏度极高的光探测器来检测微弱的光信号。
单光子雪崩二极管(Single Photon Avalanche Diode, SPAD)具有探测单个光子的灵敏度。SPAD 在工作状态是一个偏置了高逆向电压的二极管。反向偏压在器件内部形成了一个强大的电场。当一个光子被 SPAD 吸收转化为一个自由电子时,这个自由电子被内部的电场加速,获得足够的能量撞击其他原子时产生自由电子和空穴对。而新产生的载流子继续被电场加速,撞击产生更多的载流子。这种几何放大的雪崩效应使得 SPAD 具有几乎无穷大的增益,从而输出一个大电流脉冲[6],实现对于单个光子的探测。

2020-04-15 19:12:51