摘要:众所周知,激光雷达的接收器件分APD、SiPM和SPAD阵列,其中APD的光电效率低,机械旋转式激光雷达采用的比较多,市场份额在快速下降。SiPM是SPAD二极管并联加上淬灭电阻构成的阵列,SPAD阵列是SPAD二极管阵列直出的器件。目前 SiPM 的读出逻辑
全球唯一可以真机演示的千线激光雷达速腾聚创EM4,图片摄于上海车展大众展台
众所周知,激光雷达的接收器件分APD、SiPM和SPAD阵列,其中APD的光电效率低,机械旋转式激光雷达采用的比较多,市场份额在快速下降。SiPM是SPAD二极管并联加上淬灭电阻构成的阵列,SPAD阵列是SPAD二极管阵列直出的器件。目前 SiPM 的读出逻辑是将成百上千个微单元的信号加和形成一个模拟信号输出,后端电路则通过检测这一加和脉冲的大小、以及形成的时间进行入射光子的数目以及时间等信息的甄别,导致在 SiPM 外部还需要一系列的模拟信号处理电路和模数转换电路ADC来完成最终信号的数字化,也是目前 SiPM 被称为模拟 SiPM 的原因。经过多个模拟信号处理和模数转换过程,信息经过多次损失,相应的物理过程可能完全改变了统计模型,且模拟工艺的瓶颈限制了 SiPM 的性能极限和应用。简单地说,SiPM是模拟的,SPAD是数字的,SPAD利用时间数字变换TDC直接进行全数字化处理。
图片来源:论文《全数字PET关键器件硅光电倍增器研究进展》
理论上,SiPM集成有源淬灭电阻和多个TDC也能实现数字化,但过于复杂的微结构,会导致其填充因子暴跌到不足5%,时间分辨率也下降不少。读出时间大幅度增加,导致其完全无法使用。
一个典型的方型面阵SPAD-SoC内部架构
图片来源:A 256 × 256 LiDAR Imaging System Based on a 200 mW、SPAD-Based SoC with Microlens Array and Lightweight RGB-Guided Depth Completion Neural Network
很明显,无需复杂的算法处理,SPAD阵列可以直接输出直方图Histogram。直方图用做3D目标探测非常简单,消耗算力极低,只要信噪比足够高,只需要简单的寻峰算法,可以用C++编写,效率超高。直方图是一种概率密度函数,符合高斯分布,等于是稀疏化的矩阵,方便进入神经网络处理,且消耗算力较低。
传统SiPM架构下,激光雷达输出的点云数据,需要经过复杂的处理,第一步是点云配准,第二步通常是VOXEL体素或Pillar,这将大量消耗算力资源。而SPAD-SoC不同,消耗算力是传统激光雷达算力的1/10甚至更低,目前支持一个传统激光雷达的运算平台,将来配备4-8个SPAD激光雷达,运算资源也无需增加。
小马智行第七代Robotaxi车型搭载了RoboSense速腾聚创4颗固态激光雷达E1,实现车周360°无盲区,能更好检测和应对长尾场景,计算平台无需改变
传统SiPM架构下,点云配准的工作原理是激光雷达由于受到环境等各种因素的限制,在点云采集过程中单次采集到的点云只能覆盖目标物表面的一部分,为了得到完整的目标物点云信息,就需要对目标物进行多次扫描,并将得到的三维点云数据进行坐标系的刚体变换,把目标物上的局部点云数据转换到同一坐标系下。常见的配准算法有五种,要么大量消耗CPU资源,要么大量消耗GPU或NPU资源。
VOXEL方面,点云数据体素化的主要作用就是将输入的点云数据分别划分到设定好的体素网格中,方便进行点云特征提取。具体而言,点云体素化模块的输入是一个张量Tensor([N, 4]),N代表输入点云的个数,4代表点云的3D坐标以及反射强度信息。在具体处理的过程中需要人为设定当前算法模型的感知范围、每个体素所代表的实际空间大小,这样就可以知道每个体素网格中有多少点云,便于后续进行特征提取了。
与VoxelNet算法模型处理点云方式不同,PillarNet在点云数据处理的过程中直接将点云数据处理为BEV特征,取消掉了3D卷积主干网络的特征提取过程,推理速度更快,但性能大大低于VOXEL,不过消耗运算资源较少,更方便上车部署。
也就是说传统SiPM方案下,算力资源消耗大,系统架构复杂,系统成本高。
SPAD时代,这些消耗大量算力的算法都不需要了,当然SPAD也支持传统激光雷达的点云输出。直方图可以简单运算即解出深度值,然后与传统2D摄像头融合,也可以直接输出带深度值的灰度图像,这将是自动驾驶领域内的算法革命。
关于直方图解出深度图的算法,可以看论文《High-speed 3D sensing via hybrid-mode imaging and guided upsampling》,目前SPAD-SoC激光雷达都可以输出深度图。
图片来源:论文《High-speed 3D sensing via hybrid-mode imaging and guided upsampling》
现阶段智能驾驶无论是经典算法,还是主流端到端,BEV都不可或缺,深度图和直方图非常有利于BEV的生成。BEV生成有两种主流模式:一是英伟达在2020年初提出的LSS,二是特斯拉和上海AI实验室的BEVFormer。前者消耗运算资源少,容易落地,可解释性高,精度更高,目前是国内主流方案。
LSS的关键之处就是恢复图像中的深度信息。传统做法是用深度学习来推测估算深度值, 这种靠深度学习获得深度值的方法自然不如SPAD用激光测量出来的深度值准确,用SPAD的深度值可以获得最高准确度的BEV特征向量,目前难点在于如何将SPAD的深度值与传统相机融合。
现阶段,SiPM相比SPAD还有一点优势,那就是PDE,PDE即光子探测效率(Photon-detection efficiency)。PDE是不同波长下的入射光子触发雪崩的概率。除了一般决定半导体光电二极管性能的物理现象外,其他物理效应在SPAD中也很重要。雪崩触发概率取决于器件结构和过剩偏置VE条件,即反向偏置之间的差异。
基于SiPM和SPAD的激光雷达的信噪比方程
基于SiPM和SPAD的激光雷达的最大探测方程
PDE是与SNR (信噪比)的平方成正比,也就是说,PDE从2%增长到32%,增长了16倍时,SNR增长了4倍,有效探测距离也因此而增长了2倍;但PDE从30%增长到60%,只增长了2倍,SNR增长了1.4倍(根号2),距离的变化则只有1.2(根号1.414)了,提升有限。
初期SPAD的PDE比较低,因此主要做短距离的补盲雷达,近似于角雷达,不过近期情况大为改善,2021年索尼的IMX459在905纳米下PDE达到24%的效率,最远检测距离达到了300米,可以做远距离激光雷达,SiPM的成本略低于SPAD,但是其非晶圆制造工艺,更接近于半导体二极管的制造工艺,这导致其成本下降空间有限,而SPAD是半导体晶圆工艺,成本下降空间比较大,随者出货量的增加,价格可以持续下降。SPAD取代SiPM的速度可能比人们预测的要快很多。SiPM的缺点还有体积较大,放在车顶很影响风阻和造型,线数越高,需要并联的SiPM模块就越多,体积就越大,特别是高度,这也使得SiPM基本上无法超过256线,如果按照目前激光雷达30mm的高度要求,SiPM模块的并联,甚至无法超过150线。
国产厂家也在SPAD领域持续发力,其中灵明光子和阜时科技性能不错,据悉国内某主流激光雷达厂家下一代产品计划使用他们的SPAD-SoC传感器。
据说索尼IMX479的PDE高达50%,比IMX459提高了两倍,但索尼官方仍然写IMX479的最大有效距离是300米,不过距离探测精度从15厘米提升至5厘米。
激光雷达另一个发展方向是“千线”,这也是SPAD的强项。
图片来源:索尼
SPAD有两种工作方式,一种是方型阵列,用于全固态激光雷达,主要是补盲应用,类似于卷帘快门相机,也可以做全局快门。另一种就是是窄长阵列,配合一维扫描,比较容易做到千线。上个月,索尼IMX459的升级产品IMX479已经有部分厂家拿到样片,预计很快就会量产,分辨率大大提升,达到105(H)*1572(V),有效像素105(H)*1560(V),3x3binning模式下,即35*520的像素(也叫Macro宏像素,近似于传统相机的像素定义),也就可以说是520线。IMX479还是考虑了阵列应用,如果不考虑阵列应用,那么可以做成3*3000的像素模式,宏像素即1*1000,配合一维转镜,就可以做到1000线了。
320万像素SPAD 图像传感器
图片来源:佳能
SPAD性能潜力巨大,目前最高有针对夜晚安防领域的320万像素,210万有效像素的SPAD-SoC传感器量产,分辨率大约1920*1080,激光雷达可用一维扫描,不需要方形阵列,窄长阵列做到2000线甚至3000线也没有问题。
当然这有一个前提,激光雷达厂家需要有自研SPAD-SoC的能力,这个门槛很高。目前,速腾聚创是国内第一个实现自主研发SPAD-SoC和SPAD-SoC激光雷达均量产的厂家,在SPAD时代自然是拥有比较明显的优势,特别是千线激光雷达时代。
SPAD-SoC和传统的CMOS图像传感器非常类似,依托产业在CMOS图像传感器积累的丰富经验,SPAD-SoC的性能增长空间巨大,同时也有显著的性价比优势,目前几乎新激光雷达项目都是采用SPAD-SoC,SiPM很可能在四五年内完全退出市场,全数字激光雷达的时代已经到来。
来源:佐思汽车研究