天天看点

基于点云曲率的图像特征提取方法

​引子

在无人驾驶领域,车子的实时精确定位是至关重要的。相机由于其成本低、体积小、视觉信息丰富,在无人驾驶的感知、定位系统中被广泛使用。

基于特征点法的视觉里程计方法,关键就在于特征点的选取与匹配。而传统的图像特征提取与匹配算法虽然能提取到具有尺度不变性、旋转不变性甚至光照不变性的特征点,并根据计算的特征描述子精确地匹配,但是算法性能的提升的同时,计算量也在增加。无人驾驶汽车上配备有多种传感器,传感器数据处理过程、感知过程、规划过程、决策过程、控制过程都会占用系统计算资源,因此一种快速准确的特征提取方法是非常有必要的。

算法原理

  • 点云相对图像来说,是非常稀疏的,借助点云的稀疏性加速特征提取过程
  • 场景中物体的轮廓边缘部分往往具有不错的梯度特征
  • 光流法可以用来替代特征匹配的过程

算法流程

  1. 使用LOAM中提出的点云曲率提取方法提取曲率点
  2. 将曲率点投影到图像上
  3. 判断投影点的梯度是否明显,如果明显则认为是特征点;如果不明显,检测投影点邻域像素点的梯度,将梯度明显的像素点作为特征点
  4. 使用LK光流法对特征点进行跟踪
  5. 当特征点数目小于阈值时,回到1

实验结果与分析

在KITTI Raw Data上进行实验,使用KITTI中的点云数据和单目图像。首先在点云中提取曲率点并投影到图像上,KITTI中提供的激光雷达和相机的外参感觉并不是很准确,于是重新进行了标定:

基于点云曲率的图像特征提取方法

标定前曲率投影

基于点云曲率的图像特征提取方法

标定后曲率投影

在每帧点云中提取曲率点,投影到图像上

可以看到,LOAM中的方法可以提取到物体的轮廓边缘,但是同样也存在一些噪点,需要进一步考虑排除。

0095_Shi-Tomasi_光流

0095_曲率投影_光流

通过设置对照实验,对基于点云曲率的特征提取方法进行评估。一组实验是提取Shi-Tomasi角点+光流的特征提取与匹配方案,另一组是曲率投影点+光流的特征提取与匹配方案,通过对比,可以发现基于点云曲率的特征点具有以下特点:

  1. 特征点集中在物体轮廓边缘附近
  2. 不会提取到远处的特征点,保证特征点具有较大的视差
  3. 光流跟踪的效果没有Shi-Tomasi角点的效果好(不能较长时间的跟踪)
  4. 经过验证,基于曲率的特征提取算法在运行时间上大概是Shi-Tomasi的四分之一

最后,在0061序列上进行了里程计实验(没有优化),结果表明基于点云曲率的特征提取方法可以提高里程计的定位精度:

基于点云曲率的图像特征提取方法

0061里程计结果

关于本次推送的代码部分,主要基于LOAM的ScanRegistration.cpp部分进一步修改,特征提取的代码部分见:

https://github.com/LeisureLei/VLO

以上就是本次的全部推送内容,主要介绍了一种基于点云曲率的特征提取方法并对实验结果进行分析。