Content area
Full text
1 引言
智能车辆[1]指的是集成多种技术,包括环境感知、路径规划、决策控制等技术,搭载先进的车载传感器、控制器、执行器等装置,可以实现车与人、车、路、云端等的信息交流与共享,以达到安全、高效、节能的行驶,并最终可以实现自动驾驶的新型汽车[2]。环境感知技术[3]指的是智能车辆依靠自身携带的传感器,包括车载视觉传感器、激光雷达、毫米波雷达、GPS全球定位系统、INS惯性导航系统以及超声波雷达等,探测车辆周围的环境信息,并与存储在云端的环境数据进行匹配,描述车辆周围环境状况的技术[4]。只有环境感知技术准确、实时、可靠,才能保证车辆规划出正确的通行路径,进而安全地实现自动行驶,因此环境感知技术是智能车辆实现安全驾驶的基础要求和前提条件[5]。
为确保环境感知的快速性和准确性,需要利用智能车辆车载传感器对可通行区域的目标进行检测和跟踪[6-7]。目标检测[8]指在环境背景中提取出待检测的目标,如车辆、行人、建筑物等;目标跟踪[9]指在连续的状态下对某一目标进行连续的检测,提取出目标的运动状态和运动轨迹,常用于轨迹预测和运动状态分析等。常见的目标检测和跟踪方法主要基于视觉传感器,在初始图像数据中利用时域或频域特征将目标从背景中分割出来,并针对该特征在后续图像或视频中提取追踪目标[10]。常见的目标跟踪算法有基于卡尔曼滤波的目标跟踪算法[11],该算法基于对随机过程的估计,主要应用于线性高斯系统;还有基于粒子滤波的目标跟踪算法[12],该算法基于蒙特卡洛算法进行非线性跟踪;Dou等人[13]在粒子滤波的框架下结合了相互作用的多个模型,包括CBWH、CLTP和HOG;侯志强等人[14]在粒子滤波的基础上采用颜色、空间和纹理信息对目标进行跟踪。但以上算法主要依靠视觉传感器对目标进行跟踪,容易受到光照变化、遮挡、背景干扰的影响[15],在实际追踪过程中容易出现目标丢失的现象,而且常见的跟踪算法在初始状态下需要人为指定跟踪目标,在实际应用中带来不便。
本文提出一种基于激光雷达和视觉传感器信息融合的目标检测和跟踪算法。在初始状态下,利用激光雷达的点云数据对地面进行检测,根据点云数据的反射率对可通行区域进行提取,并在可通行区域上利用DBSCAN聚类算法对目标物进行检测;根据已有的激光雷达和视觉传感器的标定信息,将激光雷达检测到的障碍物投影到图片上,根据目标的颜色直方图信息确定跟踪目标;在粒子滤波算法的基础上,利用激光雷达点云数据对目标位置进行修正,从而实现对目标的跟踪。
2 基于激光雷达和相机的目标检测算法
基于激光雷达和相机的目标检测算法主要包含五部分:1)激光雷达和相机的联合标定,2)激光雷达的点云数据预处理,3)地面拟合,4)可通行区域提取和5)基于DBSCAN算法的点云数据聚类。本文采用激光雷达和相机信息融合的方式进行可通行区域提取,在图像数据中加入点云数据的反射率信息,降低了光照、遮挡对可通行区域提取的影响。在基于DBSCAN算法的点云数据聚类中,本文在原有的距离维度上增加激光雷达的反射率信息,提高聚类精度。算法流程如图 1所示。
[Image omitted: See PDF]
2.1 激光雷达和相机的联合标定
标定是多传感器信息融合的准备条件,不同传感器有着独立的坐标系和不同的采集频率,必须把不同坐标系的数据转换到同一坐标系并进行时间配准,才能实现融合。对于激光雷达和相机的联合标定,其目的就是得到激光雷达和相机数据之间的转换关系,即找到同一时刻激光点云数据和图像中对应的像素点。
激光雷达坐标系可以描述物体与激光雷达的相对位置,表示为[XL, YL, ZL],其中原点为激光雷达几何中心,XL轴水平向前,YL轴水平向左,ZL轴竖直向上,符合右手坐标系规则。相机系统中存在三个坐标系:像素坐标系、图像坐标系和相机坐标系,像素坐标系表示为[u, v],其中原点为图像左上角,u轴水平向右,v轴竖直向下;图像坐标系指在图像像素坐标系下建立以物理单位(如毫米)表示的坐标系,使像素尺度具有物理意义,表示为[x, y],其中原点为相机主点,即相机光轴与图像平面的交点,一般位于图像平面中心,x轴与u轴平行,y轴与v轴平行;相机坐标系可以描述物体与相机的相对位置,表示为[XC, YC, ZC],其中原点为相机光心O点,XC轴与x轴平行,YC轴与y轴平行,ZC轴与摄像机光轴平行,与图像平面垂直。总体的变换思路如图 2所示。
[Image omitted: See PDF]
坐标变换过程一般可以分成三个步骤:
1) 从激光雷达坐标系转换为相机坐标系,可以用旋转矩阵R和平移矩阵T表示。其中,R是大小为3×3的矩阵,表示空间坐标旋转;T是大小为3×1的矩阵,表示空间坐标平移。
\(\left[ {\begin{array}{*{20}{c}} {{X_{\rm{C}}}} \\ {{Y_{\rm{C}}}} \\ {{Z_{\rm{C}}}} \\ 1 \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{\mathit{\boldsymbol{R}}}}&{{\mathit{\boldsymbol{T}}}} \\ {{{\rm{0}}^{\rm{T}}}}&1 \end{array}} \right]\left[ {\begin{array}{*{20}{c}} {{X_{\rm{L}}}} \\ {{Y_{\rm{L}}}} \\ {{Z_{\rm{L}}}} \\ 1 \end{array}} \right]。\)(1)
2) 从相机坐标系到图像坐标系的转换,是从三维坐标系转换为二维坐标系的过程,属于透视投影关系,满足三角形的相似定理。其中f为相机焦距。
\({Z_{\rm{C}}}\left[ {\begin{array}{*{20}{c}} x \\ y \\ 1 \end{array}} \right]{\rm{ = }}\left[ {\begin{array}{*{20}{c}} f&0&0&0 \\ 0&f&0&0 \\ 0&0&1&0 \end{array}} \right]\left[ {\begin{array}{*{20}{c}} {{X_{\rm{C}}}} \\ {{Y_{\rm{C}}}} \\ {{Z_{\rm{C}}}} \\ 1 \end{array}} \right]。\)(2)
3) 从图像坐标系到像素坐标系的转换,此时不存在旋转变换,但是坐标原点位置不同,单位长度不同,主要涉及伸缩变换和平移变换。
\(\left[ {\begin{array}{*{20}{c}} u \\ v \\ 1 \end{array}} \right]{\rm{ = }}\left[ {\begin{array}{*{20}{c}} {\frac{1}{{{\rm{d}}x}}}&0&{{u_0}} \\ 0&{\frac{1}{{{\rm{d}}y}}}&{{v_0}} \\ 0&0&1 \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x \\ y \\ 1 \end{array}} \right]。\)(3)
综上所述,激光雷达和相机的坐标转换关系可以表示为
\({Z_{\rm{C}}}\left[ {\begin{array}{*{20}{c}} u \\ v \\ 1 \end{array}} \right]{\rm{ = }}\left[ {\begin{array}{*{20}{c}} {\frac{1}{{{\rm{d}}x}}}&0&{{u_0}} \\ 0&{\frac{1}{{{\rm{d}}y}}}&{{v_0}} \\ 0&0&1 \end{array}} \right] \cdot \left[ {\begin{array}{*{20}{c}} f&0&0&0 \\ 0&f&0&0 \\ 0&0&1&0 \end{array}} \right]\) \( \cdot \left[ {\begin{array}{*{20}{c}} {{\mathit{\boldsymbol{R}}}}&{{\mathit{\boldsymbol{T}}}} \\ {{{\rm{0}}^{\rm{T}}}}&1 \end{array}} \right] \cdot \left[ {\begin{array}{*{20}{c}} {{X_{\rm{L}}}} \\ {{Y_{\rm{L}}}} \\ {{Z_{\rm{L}}}} \\ 1 \end{array}} \right]。\)(4)
通过最终的转换将激光点云数据投影到图像上,通过张正友标定法[16]可以得到坐标转换关系,实现激光雷达和相机的空间联合标定。由于激光雷达的探测视场较大,有些点云数据无法投影到图像上,本文对这部分点云数据进行直接剔除操作。
下面介绍激光雷达和相机的时间配准问题,由于相机的采集频率要高于激光雷达,同时相机图像数据和激光雷达点云数据有同步的时间戳,因此本文采用时间最近邻匹配的方法找到与每一帧激光雷达数据时间间隔最小的图像数据进行处理,实现激光雷达和相机的时间配准。
2.2 激光雷达的点云数据预处理
激光雷达[17](Laser detection and ranging)常用于目标物探测和跟踪。环境中不同目标物距雷达距离、反射率、散射形状不同,导致其反射的激光脉冲参数不同,通过接收并测量反射回波信息,可以得到目标物的位置和反射率等信息。
根据激光雷达的性质,一般情况下激光雷达的扫描数据都存储成点云[18](point cloud)的形式,即每个扫描数据包以若干扫描点的形式存储,每个扫描点包含该点的三维坐标、颜色信息或反射率信息等。由于环境噪声的干扰以及设备精准度的缺陷,原始的点云数据中存在误识别点和杂散点,这些点统称噪声点[19]。针对原始点云数据中存在的噪声点,本文采用基于半径的滤波方法进行剔除,设置点云数据周围规定半径内的最小点云数,如果给定目标点周围点云数小于设置数字,则假定该点为噪声点。利用该方法可以初步剔除原始点云数据中的噪声点。
2.3 基于点云数据的地面拟合
基于点云数据的地面拟合的方法主要采用最小二乘法[20],在车辆初始状态下,选取车辆正前方区域的地面数据进行三维拟合,空间三维平面的拟合方程可以表示为
\({{\mathit{\boldsymbol{a}}}}x + {{\mathit{\boldsymbol{b}}}}y + {{\mathit{\boldsymbol{c}}}}z = d,\)(5)
其中:a、b、c分别为x、y、z平面的单位法向量,即满足关系式:
\({{{\mathit{\boldsymbol{a}}}}^2} + {{{\mathit{\boldsymbol{b}}}}^2} + {{{\mathit{\boldsymbol{c}}}}^2} = 1;\)(6)
d为坐标原点到该平面的距离,利用最小二乘法可以计算出参数a、b、c、d的值。
对于任意点云数据xi、yi、zi,根据拟合参数a、b、c计算该点的平面值di:
\({{\mathit{\boldsymbol{\alpha }}}}{x_i} + {{\mathit{\boldsymbol{b}}}}{y_i} + {{\mathit{\boldsymbol{c}}}}{z_i} = {d_i}。\)(7)
设定平面阈值 \(\Delta d\) ,若 \(\left| {{d_i} - d} \right| < \Delta d\) ,则判定该点属于地面。
2.4 基于点云反射率和图像融合的可通行区域提取
点云数据的反射率是激光雷达测量中的一项重要指标[21],根据不同材料对激光的反射效果不同以及路面颜色的差异,可以基于地面点云数据的反射率和图像融合进行可通行区域提取。
本文采用的可通行区域提取方法主要包含以下几步:首先利用栅格结构将地面点云数据进行网格化处理,将栅格内点云个数和点云反射率平均值记录下来,形成一幅二维的平面反射率分布图;由于有些栅格内点云数目特别稀少,导致该栅格反射率不太稳定,因此利用周围的四个栅格对点云数目过少的栅格进行插值处理,得到新的反射率分布图;然后利用反射率信息对路面区域进行提取,得到可通行区域信息;之后利用激光雷达和相机的标定信息将可通行区域投影到图片中,利用图像处理的方法,如灰度化、二值化(阈值分割)、霍夫变换以及膨胀腐蚀等方法对图像中的可通行区域进行提取;最后根据两种方式提取到的可通行区域进行加权叠加,得到最终的可通行区域结果。主要流程如图 3所示。
[Image omitted: See...





