3D(立体)视觉计算的目的是利用3D传感器所拍摄的信息,来侦测物件或是识别应用场景。因自驾车或是ADAS的商机,能精确掌握人、车、障碍物位置、方向、速度等技术,就成为学研以及产业关切的方向。LiDAR虽然价格不斐,但仍为目前车辆中最受瞩目的3D传感器,因其利用雷射光的飞行时间来侦测环境,所以可以测得更线上离。
3D视觉计算的突破,在于发现适合点云(point cloud)的系列算法,直接在众多的点云中计算。LiDAR点云中,每个点都有空间中3D位置信息(雷射光遇物件反射位置),甚至物体表面的反射量(金属表面反射量较高)。近来LiDAR点云侦测研究相当活跃,大致可分为「投影法」及「点云法」两大类。
「投影法」将上万个3D点云投影到2D平面上,接着利用2D上发展成熟的物件侦测技术,将人、车等标示出。这依旧是相当挑战的工作,和传统影像不同,投影之后的平面图为非常稀疏的点状信息,并非清楚显现车辆、行人的全貌。一般投影到两个常用视角的2D平面:鸟瞰图以及水平平面图。前者由车辆上方鸟瞰周遭来侦测物件,后者由车辆四周的2D视角来侦测物件。当然这些不同视角侦测的信息会再结合(利用3D座标转换)做最后的判断,传统RGB摄影机也是侦测融合的来源之一。在这范畴,MV3D算是最具代表性。
在「点云法」中,则是直接使用点云的丰富3D几何信息来侦测物件。总体来看,对点云有两种使用方式,例如将区域内的点云作为确认是否为特殊物件以及物件姿态的依据。首先由2D RGB摄影机大概侦测出可能的物件,在回推这些物件在空间中的位置,接着对小范围内的点云进行运算,用以确认可能的物件种类以及物件的精确姿态。Frustum PointNet为此类代表。
另外延续之前提过的立体像素(voxel)作法将车辆行进空间切割为固定大小的立体方格,接着利用类似PointNet的算法取出每个voxel内的点云特徵值,试着描述点云在voxel内的排列方式,接着修改传统2D的物件侦测方式在立体空间中进行侦测,VoxelNet为在这领域的经典演算法。可以想像利用大量的voxel来表示行车空间,再加上每个voxel上的高维点云特徵值,运算量大幅增加,所以也有不少加速计算的延伸工作,利用点云稀疏的特性而进行加速。
我们团队的研究也发现这些现行的方法还是避免不了几个关键挑战。例如点云数据分布相当不平均,靠近LiDAR的车辆点云个数远大于远处的;还有不同方向车辆角度的问题,行人的点云个数较少,甚至是不同LiDAR信号间跨领域转移等。当我们特别考量LiDAR物理特性来设计演算法,会有显着的改善空间,更能降低训练数据量。另外3D物件标注相当费时,所以数据收集是另一项耗费资源的工作。
LiDAR价位高,但势将成为未来车辆的必备传感器(当然也有业者持反对意见),所以目前有相当的硬件研究在降低LiDAR的价格。另一方面也有团队尝试使用较低价位的传感器(如立体镜头等)来逼近LiDAR的功能,看起来也相当具有产业机会。
徐宏民(Winston Hsu)现任富智捷(MobileDrive)技术长暨副总经理以及台大信息工程学系教授。哥伦比亚大学电机博士,专精于机器学习、大规模影像视讯查找与识别。为讯连科技研发团队创始成员,慧景科技(thingnario)共同创始人,NVIDIA AI Lab计划主持人;曾任IBM华生研究中心客座研究员、美国微软研究院客座研究员。习惯从学术及产业界的角度检验技术发展的机会;十余年产学合作及新创经验。曾获2018 IBM Research Pat Goldberg Memorial Best Paper Award 、2018伪装人脸识别冠军、杰出信息人才奖、吴大猷先生纪念奖等国内外研究奖项。