APP下载

基于激光雷达和摄像机融合的智能车障碍物识别方法

2020-04-08张袅娜鲍旋旋李昊林

科学技术与工程 2020年4期
关键词:激光雷达障碍物卷积

张袅娜, 鲍旋旋, 李昊林

(长春工业大学电气与电子工程学院,长春 130012)

调查得知,实现智能驾驶技术的关键问题之一是解决环境感知问题,传感器融合信息并进行障碍物的检测是其重要的组成部分[1]。历经学者们多年来的研究探讨,越来越多的障碍物检测算法被提出。摄像机所采集图像虽可以获取目标类别信息,但不能准确计算目标位置。而激光雷达虽能实现对目标位置的判定,但雷达点云无法获取障碍物图像。因此想要获得全面的环境信息仅靠一种传感器是无法实现的,传感器融合恰巧避免了获取的信息相对不足的缺点。

障碍物识别算法在过去几年里发展得较为迅速,特别是基于视觉的障碍物识别算法更是取得了实质性的突破,但是传感器融合技术却一直是汽车行业在突破的难题。因此国内外很多学者做了很多研究,Lee等使用图像的投影原理来构建场景的几何模型获得特定相机参数下的深度图像的3D重建[2]。基于从可以观察目标的多个传感器中提取的特征的聚类,Li等提出了一种特征级传感器融合目标检测程序[3],但是对CPU要求太高。Morales等提出了一种新的方法,用于实时检测、运动估计和仅使用三维点云和测距信息作为输入来跟踪一般障碍物[4]。Premebida等通过对激光雷达数据进行上采样的方式将其与图像数据组合以生成深度图[5],利用方向梯度直方图用于行人检测,准确性提高、耗时增加。曲兆伟等从雷达采集目标数据中得到行人群信息,形成图像的深度信息,然后从该信息中提取到HOG特征,使用支持向量机分类获得行人目标[6],其不能满足实时性能。Ren等共享卷积特征将RPN和Fast R-CNN合并到一个网络,虽检测准确性提高,但将遗漏检测[7]。Song等提出了一种基于视觉的相对定位方法[8],但存在信息冗余。张荣辉等根据路上行人目标的宽度信息从激光雷达数据聚集行人目标,并基于图像上的投影形成感兴趣区域,增强算法用于行人识别[9],仅可识别行人。Kwon等提出了一种通过激光雷达传感器融合的遮挡行人检测的新方法[10],在检测部分遮挡的行人时检测性能更好,但是仍然存在分类效果不好的问题。

传统车辆环境障碍识别的方法有较多种,其中主要包含仿生模式识别方法、模板匹配方法、统计模式识别方法,支持向量机识别方法和神经网络识别方法[11],但是用一种方法是不完备的。由此,提出利用图像投影原理实现数据融合,来实现提取障碍物候选区域的功能。原卷积神经网络模型在大样本数据下训练对于小样本数据集泛化严重,因此结合SVM在小数据集仍有较好分类性的特点,提出了一种基于CNN和SVM相结合的障碍物识别模型,通过在KITTI数据库中训练部分数据来提高目标识别率。

1 传感器信息融合

在此使用KITTI数据集[12],其数据采集平台配备了2个灰度相机、2个彩色相机、1个Velodyne 64线3D激光雷达[13]、4个光学镜头和GPS导航系统。其坐标系是右手系统,与车体的局部坐标系相比,X轴表示的是车辆的前进方向,Y轴表示的是水平方向,Z轴表示是向上的。图1是KITTI数据库的数据采集平台,以实现相机和64线3D激光雷达数据的融合,减少信息的冗余和节约成本,保证信息的全面性。首先实现传感器的空间同步和时间同步[14,15],当车辆收集数据时,联合校准传感器已经完成,并且以下数据全部在相同的时间戳下执行,不做多余的描述(图1和KITTI数据均来自KITTI官方网站)。

图1 数据采集平台Fig.1 Data collection platform

为了实现快速工程化,从3D点云到图像平面的投影转换,配准关系为

x=P0TrX

(1)

式(1)中:P0是3×4投影矩阵;Tr是3×4的变换矩阵,其表示雷达点云到图像坐标系的平移变换。为确保矩阵运算的数据对齐,需要将矩阵Tr添加到欧几里德变换矩阵中。

图2 融合后的图像Fig.2 The merged image

进行投影之后得到的融合图像如图2所示,即雷达原始数据图,这里选取一部分,可以看出每帧图像中的微弱变化。图2中,点阵的颜色表示景深,暖色调表示近距,冷色调表示远距,不仅兼顾了三维雷达点云的空间分布信息和图像的色彩信息,而且提供了图像分割、目标识别问题求解的感兴趣区域,简化了问题研究难度。此融合对CPU要求低,便于实施,节约成本。

可以看出,通过雷达探测这一方式所探测到的原始目标信号包含了所能检测到的全部障碍物目标,其中包括路灯、路边护栏、路边树木及噪声等信息,所以必须要先对雷达探测返回的目标信号进行简单的预处理步序,去除掉目标噪声等对信息采集不利的因素。依据透视成像的原理,当摄像头与目标之间的距离离得越远,在图像中相对应的目标体积越小,而所呈现出来的特征也会相对越不清楚;而且车辆行驶过程中只需通过对主车道和旁侧车道内的目标识别即可满足安全要求。因此,依据文献[16]中所提供的安全车距模型,可以将目标车辆前方纵向70 m远,横向10 m宽的矩形区域定义为识别区域,并采取方法去除掉此范围以外的信号。对于识别区域内采集到的目标可以再通过对其移动速度与相对位置的关系进行分析比较的方法,以实现去除图像中所显示的隔离带和护栏等静止目标,最后只保留行人目标和潜在车辆信息的功能,最终生成所需要的障碍物候选区域,处理后得到的图像如图3所示。

图3 处理后的图像Fig.3 Processed image

2 障碍物识别

2.1 CNN

卷积神经网络(convolutional neural network,CNN)常用于计算机视觉问题,如图像分类[17]。CNN与“普通”多层感知器(MLP)网络的区别在于其使用卷积层、汇集和非线性。卷积层(由CONV表示)由滤波器组成。直观地说,CONV层用于“滑动”输入图像的宽度和高度,并计算输入区域和重量学习参数的点积。这反过来将产生二维激活图,其由给定区域处的滤波器的响应组成。因此,汇集层(由POOL表示)根据CONV滤波器的结果减小输入图像的大小。结果,模型中的参数数量也减少,称为下采样。最后,激活函数用于在计算中引入非线性,若没有,模型将只学习线性映射。目前常用的激活功能是ReLU功能,它大大加速了随机梯度下降的收敛。此外,与tanh和sigmoid所需的大量计算相比,ReLU通过简单地将矩阵值阈值化为零来实现:

f[hθ(x)]=hθ(x)+=max[0,hθ(x)]

(2)

式(2)中:hθ(x)为变量。

2.2 SVM

支持向量机(support vector machines,SVM)实现了结构风险最小化的原则,这已被证明优于传统的人工神经网络经验风险最小化[18]。其目标是找到最佳超平面f(w,x)=wx+b以在给定数据集中分离两个类,使其具有特征x∈Rm。SVM通过式(3)求解优化问题来学习参数w:

(3)

(4)

2.3 CNN+SVM分类模型设计

CNN首先通过应用一个或多个完全连接的层,在执行实际分类或回归任务之前,将多个连续内核(其元素在训练期间学习)卷入输入数据。这导致需要调整和存储的参数的大量减少,从而极大地改善了网络的运行时间和泛化性能。相比之下,SVM可以更快地计算,即使在嵌入式硬件上也可以实时对高清视频进行物体检测。然而,SVM表现出一个主要缺点,即它们依赖于强特征提取器,其为SVM提供解决特定分类或回归问题所需的相关信息。因此,许多研究都集中在为过去的各种计算机视觉任务设计最合适的特征提取器。为了克服两种机器学习技术的缺点,可以将它们结合起来。基本思想是重用预先训练的CNN的第一部分来提取用作SVM分类器的输入的独特特征。整体结构图见图4。

图4 CNN+SVM整体结构图Fig.4 CNN+SVM overall structure diagram

首先,需要选择合理的卷积神经网络结构来提取图像特征,然后利用SVM进行多分类。鉴于LeNet应用在图像方面效果差,而近几年发展的GoogleNet虽增加了卷积神经网络的宽度,但存在模型退化严重的问题;ResNet解决了退化问题,允许神经网络更深。但在模型表征方面并不存在直接的优势,不能更好表征某一方面的特征。由于不需要很深的深度和宽度,而且是针对小容量数据集提出新的方法,所以选择经典AlexNet结构。然后输入图像大小为 227×227×3,其中 3 表示输入图像的深度数(R,G,B)为 3,经过几次卷积池化以后,输出大小为 6×6×256 的矩阵,即一个9 216 维的向量。防止过度拟合利用随机丢失层执行参数随机丢失步骤;然后,SVM算法进行分类,得到最终的输出结果。

2.4 模型优化处理

首先针对训练卷积神经网络通常需要大量的样本和数据的问题,采用迁移学习策略对AlexNet网络的特征提取部分进行微调,得到该模型的特征提取器。迁移学习能够较好地实现把已学训练好的模型参数迁移到新的模型,从而来帮助新模型训练的功能,AlexNet网络的特征提取器适用于模型。

其次,当进行微调时,设置较大的学习速度加快更新速度避免相同的低阶特征降低学习速率以使更新速率更慢的问题。

同时为了能充分利用数据信息,对移除以后的网络进行前向传播,计算实际误差,再进行反向传播,经过一轮后,按照随机梯度下降的方式更新当前网络,不断重复直到效果收敛。

3 实验和结果分析

3.1 实验平台和软件

首先,KITTI数据集分为两部分:训练集和测试集。 每组有1 000张图像用于现实生活中的障碍训练和测试。同时,为了验证模型的分类效果和实时性能,将硬件在环仿真平台与无人街景软件SCANeR相结合,对构建的虚拟场景进行障碍识别。 硬件在环仿真实验平台IPC如图5所示,三屏交通视图场景仿真的主要试验台如图6所示。

图5 硬件在环仿真实验平台IPCFig.5 Hardware-in-the-loop simulation experimental platform IPC

图6 三屏交通视图场景试验台Fig.6 Three-screen traffic view scene test bench

3.2 实验结果

特征提取器主要提取并融合输入图像,最终获得图像高阶特征,并将提取的信息特征发送给支持向量机分类器进行识别,最终输出结果。 如图7、图8所示分别是KITTI和模拟环境中障碍物的数据识别结果。

3.3 实验结果比较分析

为了验证此方法在小数据集上的性能优于原卷积神经网络的这一结论,将对其进行比较试验,结果如图9、图10、表1所示,可以明显观察到,CNN+SVM分类器分类准确性高,CNN+SVM分类损失值略大,原因是SVM专注于类属性确定,不影响分类结果。不过其损耗值在区间[80,150]中趋于稳定。所提出的模型稳定精度较原CNN模型高,当迭代次数为60时基本稳定。

图8 模拟环境识别结果Fig.8 Simulation environment recognition result

图9 训练损失值的比较Fig.9 Comparison of training loss values

图10 测试精度比较Fig.10 Comparison of test accuracy

表1 CNN+SVM和CNN结果的统计Table 1 Statistics of CNN+SVM and CNN results

4 结论

利用KITTI数据集来组合Velodyne 64线3D激光雷达和摄像机2数据,以提取障碍物候选区域。提出了一种基于CNN和SVM的识别模型。通过理论分析和实验比较,得出以下结论。

(1)利用KITTI中同步摄像头和激光雷达数据,进行联合标定,使得雷达点云数据投影到RGB图像上,实现数据融合,可以观测到三维雷达点云的空间分布信息和图像的色彩信息,得到简单的障碍物距离等信息,根据雷达点云的分布情况可生成障碍物候选区域。

(2)在小样本数据集条件下,CNN+SVM分类器有更好的分类结果,有较强的鲁棒性。此模型在实际测试中有较好的表现且具有可靠的识别能力和良好分类结果。

猜你喜欢

激光雷达障碍物卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
法雷奥第二代SCALA?激光雷达
基于HITRAN数据库的大气激光雷达信号仿真
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
卷积神经网络的分析与设计
赶飞机
从滤波器理解卷积
基于激光雷达通信的地面特征识别技术
基于激光雷达的多旋翼无人机室内定位与避障研究