具体过程如下图所示。

拼接流程
图像匹配过程中很关键的环节是图像特征点的获取和匹配。这可以通过SIFT、SURF等方法来实现,不过为了提升计算效率,业内一般通过降采样(类似于降低分辨率)的方式来进行特征检测。
在图像融合时,一般可用泊松算法、直接平均算法和加权算法等方法,直接平均算法业内用得更多一些。
除了上述的图像拼接外,为了消除不同车型的差异,业内还用到一种叫“虚拟相机”的方法来共享训练数据,“就是将图像投影到一个标准的视角上(训练时用的视角),投影后的相机就叫虚拟相机,这样就能保证回传数据和训练数据的视角相同了,”一位行业专家介绍道。
除了上述提到的视角问题外,一位行业专家也提到ISP( Image Signal Process, 图像信号处理)的处理也可能会影响数据的通用性。不同摄像头的ISP不同,对Raw data的处理方式也不同,虽然可以通过技术手段来解决(如通过图像预处理统一到同一个色彩空间下),但也可能会影响到感知结果,“就像人带着墨镜看世界一样,看一般物体可能不受影响,看红绿灯就可能会受到一些影响”,这位专家解释道。
4
BEV技术的局限型与挑战
1、BEV解决不了视觉的“先天缺陷”
在传统的2D检测时,检测、分类和跟踪任务,都是依赖有监督学习的训练,也就是说感知网络只能识别出之前“见过”的物体,对于之前没“见过”的物体(即训练数据集里没有的),是识别不出来的,从而会出现“不认识就看不见”的现象,这也被认为是视觉的“先天缺陷”。比如少见的异形物体,如披萨盒,高速上奔跑的野生动物等,这种情况可能出现的概率并不高,但是一旦出现可能是致命的。
那么这个问题,在转换到BEV空间后,可以解决吗?
业内专家给的答案很一致:不能。
BEV模型没有训练过的物体,在BEV空间内,可能是“不存在”的。
不过仍然有其他办法来弥补这个缺陷,具体如下:
1)深度(Depth)估计
当前在2D感知方案中应用比较广泛的是底层视觉感知(low level vision)中的深度估计。
深度估计一般是通过激光雷达的稀疏点云提供的真值进行训练,从而利用深度学习直接预测出稠密的深度值。通过预测深度就可以一定程度上解决异形物体问题。
如下图所示的右侧的拉了树木的大车,如果使用普通的车辆检测,因为这种训练样本极少,可能会漏检,而采用深度估计,至少可以知道该处有物体,可以及时采取措施,避免安全事故。

单目深度估计
引自地平线苏治中主题为“面向规模化量产的自动驾驶感知研发与实践”的线上分享