LIDAR 感知任务
使用 LIDAR 的感知任务可以分为两种:
- 低层次感知:检测障碍物,得到障碍物位置、范围和运动状态。
- 高层次感知:在检测基础上进行障碍物分类或目标识别。
检测到障碍物后,可以得到其位置、方向、尺寸等信息,一般用 bbox 或多边形来描述障碍物。
障碍物检测
Pipeline
- 如果是多传感器系统,需要对 LiDAR 点云做时间同步,并对多个传感器进行联合标定。
- 由于 LiDAR 采样的 pc 数据量大,噪声也多,因此需要对 pc 进行预处理,以减少冗余数据和噪声。
- 输入 pc 的每个 frame 中都包含大量地面点,但地面点通常不是需要检测的障碍物。因此要分割出地面 pc,这一步是整个流程中的重点。
- 采用无监督聚类算法对非地面障碍物点进行聚类,会得到多个 cluster,每个 cluster 通常代表一个障碍物。
- 为每个 cluster 进行 bbox 拟合,计算障碍物的 L / W / H、中心点等属性。
- 使用 Kalman Filter(KF)等方法对障碍物进行跟踪。
预处理
预处理的目的:
- 点云数据密度不规则,需要平滑。
- 遮挡等问题可能产生离群点,需要进行离群点去除。
- 点云数据量大,需要下采样以减少数据量。
- 去除 LiDAR 噪声数据。
滤波方法
- 直通滤波:获取 ROI 范围内的 pc 数据。
- 体素网格:平滑点云密度,并降低点云数量。
- 统计滤波:剔除离群散点。
ROI 区域
ROI 区域一般指路面、路口等可行驶区域。可以使用高精地图、路沿检测或可行驶区域估计等方法约束 ROI。
LiDAR 可以检测马路边缘,从而剔除道路以外的点。下面三种方法可以结合使用:
- 栅格化后,根据网格内点云的高度差判断路沿点。
- 对同一条扫描线上的点集计算曲率变化,从而判断路沿点。
- 根据点云法向量变化求取路沿点。
地面分割传统方法
基于栅格
将 pc 投影到栅格中,按照扫描线遍历栅格,根据栅格内的密度、平均高度、高度方差、最大高度差和直方图等信息进行分析,判断对应栅格是障碍物还是地面。
栅格划分的本质,是将非结构化且稀疏的 pc 进行结构化和信息压缩处理。栅格大小的选择会直接影响分割准确率。
基于分类器
在栅格法基础上,为消除使用单一特征的局限,可以使用基于分类器的方法。即提取更多特征,例如局部法向量、高度差、密度等,然后使用分类器进行训练,根据特征分类判断地面点和非地面点。不过这种方法耗时依然较长。
基于地面建模
采用 Plane Fitting、Line Extraction 和高斯过程回归(Gaussian Process Regression,GPR)等方法,对地面进行建模,再将不符合地面模型的点划分为非地面点。
基于相邻点和局部特征
这类方法主要依靠 pc 邻近点和局部几何特征之间的关系,对周围地形进行分类。
方法包括基于面元 mesh 的区域生长,以及基于通道和范围图像的方法。这类方法可以判断地面点集,但部分方法实时性较差。
基于高阶推理
- 马尔可夫随机场 MRF:MRF 模型可视为一个无向图,其中 Node 代表随机变量,Edge 代表 Node Pair 之间的局部关系。在 LiDAR 数据中,pc 的点可以作为图的 Node,而 Edge 可以用高度值或邻接关系来建模。不过该算法实时性较差。
- 条件随机场 CRF:CRF 是与 MRF 相关的判别式无向图模型。它可以通过观测信息和节点关系共同建模地面/非地面标签,但计算复杂度和实时性取决于具体实现。
点云深度学习方法
直接法
直接法在 pc 上直接进行 3D CNN 或点云网络处理。由于 pc 稀疏,并且 3D CNN 需要在 3 个维度上进行运算,检测和定位通常比较耗时。代表方法包括 3D FCN 和 Vote3Deep。
投影法
投影法将 pc 投影到某个平面上,比如鸟瞰图(BEV)或前视图(FV),然后进行特征提取和检测。BEV 对车辆等大型目标表示效果较好,但对行人等小目标的检测效果可能受分辨率和遮挡影响。
深度学习网络
针对 pc 的特点,可以使用特定网络结构,比如 PointNet、VoxelNet、GndNet 等。这些网络可以从 pc 中学习有效的几何空间表征。
障碍物聚类
欧式聚类
点与点之间的距离在一定阈值内,就认为这些点属于同一个类别。
密度聚类
从某个核心点出发,不断向密度可达的区域扩张,从而得到一个包含核心点和边界点的最大化区域,区域中任意两点密度相连。
超体聚类
超体聚类类似特殊的区域增长算法,其目的并不是直接分割出特定物体,而是对点云进行过分割,将场景点云划分成很多小块,并研究每个小块之间的关系。由于点云本身不存在天然的规则邻接关系,聚类之前通常需要通过八叉树等结构对点云进行划分,获得不同点团之间的邻接关系,例如面邻接、线邻接、点邻接。
BBox 拟合
常见拟合方法有三种:
- Axis-aligned bbox:轴对齐包围盒,不带旋转角,计算简单,但对倾斜目标不够紧凑。
- Oriented bbox:带旋转角的有向包围盒,可以更贴合车辆等具有方向的障碍物。
- Convex hull:点云凸包,表示包含所有点的最小凸集,可以描述更自由的障碍物轮廓。
跟踪
跟踪是指基于障碍物外接框的轮廓特征、位置特征和运动特征,对连续两帧或多帧的障碍物信息进行数据关联,估计运动物体的运动状态,包括运动方向、速度大小、加速度、角速度、运动轨迹等信息。
参考文章
[2] 激光雷达障碍物检测综述
[3] A Survey on Ground Segmentation Methods for Automotive LiDAR Sensors
评论