无人车

时间:2024-04-06 13:20:47

1. 无人车四大核心技术

  • 自动驾驶实际包含三个问题: 一是我在哪? 二是我要去哪?三是如何去?
  • 第一个问题是环境感知和精确定位,无人车需要的是厘米级定位,厘米级定位是无人驾驶的难点之一,不光是车辆本身的语义级定位,还有一个绝对坐标定位。
  • 第二个问题是路径规划,自动驾驶的路径规划
  • 第三个问题是车辆执行机构执行纵向和横向规划,也就是线控系统。线控执行主要包括线控制动、转向和油门。

2. 环境感知和精确定位

  • 环境感知主要包括三个方面:路面、静态物体和动态物体。
  • 动态物体:对于动态物体,不仅要检测还要对其轨迹进行追踪,并根据追踪结果,预测该物体下一步的轨迹(位置)。多个移动物体的轨迹的追踪与预测,难度比单一物体要高得多,这就是 MODAT(Moving Object Detection and Tracking)。
  • 定位: 对机器人系统来说,定位主要靠SLAM与先验地图(Prior Map)的交叉对比。SLAM是Simultaneous Localization and Mapping的缩写,意为“同时定位与建图”。它是指运动物体根据传感器的信息,一边计算自身位置,一边构建环境地图的过程。

2.1 SLAM分类

  • 按传感器分类
    • 激光SLAM:激光SLAM主要方法有Hector、GMapping、Tiny、Viny。
    • 视觉SLAM:视觉里程计是视觉SLAM的一个模块,其目的在于增量式地估计相机运动。
    • 视觉SLAM按算法分类:
      • 稀疏法:又称特征点法。
      • 稠密法:主要是RGB-D
      • 半稠密法:单目和双目用的多,是目前最火热的领域。
  • 按算法分类
    • 滤波器理论:早期SLAM研究侧重于使用滤波器理论
    • 优化理论:21世纪之后,学者们开始借鉴SFM(Structure from Motion)中的方式,以优化理论为基础求解SLAM问题。这种方式取得了一定的成就,并且在视觉SLAM领域中取得了主导地位。

2.2 定位分类

  • 相对定位
  • 绝对定位
  • 组合定位
    • 首先本体感受传感器如里程计(Odometry)、陀螺仪(Gyroscopes)等,通过给定初始位姿,来测量相对于机器人初始位姿的距离和方向来确定当前机器人的位姿,也叫做航迹推测
    • 然后用激光雷达视觉感知环境,用主动或被动标识、地图匹配、GPS、或导航信标进行定位
  • 位置计算方法
    • 三角测量法
    • 三边测量法
    • 和模型匹配算法
  • 定位算法流派
    • 机器人的自主定位实际上是个概率问题,因此机器人定位算法也出现两大流派
    • 卡尔曼滤波:Extended Kalman Filter(EKF),Kalman Filter (KF),Unscented Kalman Filter (UKF)定位方法
    • 贝叶斯推理:运用栅格和粒子来描述机器人位置空间,并递推计算在状态空间上的概率分布,比如Markov Localization (MKV), Monte Carlo Localization (MCL)定位方法。

2.3 定位方法

  • 基于激光雷达的SLAM
    利用无人车自带的GPS和IMU或里程计做出大概位置判断,然后用预先准备好的高精度地图(Prior Map)与激光雷达SLAM点云图像与之对比,或者说Registration,放在一个坐标系内做匹配。匹配(Scan Matching)成功后确认为车的位置。这是目前最成熟,准确度最高的方法。
    无人车
  • 基于激光雷达的强度扫描图像
    激光雷达有两种最基本的成像方式,一是3D距离成像,可以近似地理解为点云;二是强度扫描成像,激光经物体反射,根据反射强度值的不同,可以得到一副强度成像图像。强度值是包括在点云里的,光强分离核心技术之一。这种定位方法需要预先制作一个特殊的SLAM系统,称之为位姿图像SLAM(Pose-Graph SLAM),勉强可看作激光雷达制造的高清地图。有三个约束因素(Constraints),一是扫描匹配约束(Z),二是里程计约束(Odometry Constraints,U),GPS先验约束(Prior Constraints)。激光雷达的3D点云地图抽出强度值和真实地面(Ground Plane),转化为2D的地面强度扫描图像。与位姿图像SLAM配对后即可定位。
  • 基于合成图像
    也有称之为图像增强型定位, 通常是将Lidar和视觉系统结合进行定位,用单目即可。 这种方法需要预先准备一幅激光雷达制造的3D地图,用Ground-Plane Sufficient得到一个2D的纯地面模型地图,用OpenGL将单目视觉图像与这个2D的纯地面模型地图经过坐标变换, 用归一化互信息(normalized mutual information)配准。然后用扩展卡尔曼滤波器(EKF)来实现定位。
  • 基于高斯混合地图
    这实际还是第二种方法 (基于激光雷达的强度扫描图像)的补充,在遇到恶劣环境,比如很厚的积雪,雪后还有残雪的泥泞的道路,缺乏纹理的老旧的被破坏的道路,用高斯混合模型来做定位,提高激光雷达定位的鲁棒性。
  • Mobileye提出的REM
    前面四种都离不开激光雷达,成本颇高,但是室内VSLAM又未达到实用地步,更不要说室外定位了。 因此Mobileye提出一种无需SLAM的定位方法。这就是REM。 虽然REM不用视觉SLAM,但显然只是视觉SLAM的变种而已,Mobileye 通过采集包括交通信号、方向指示牌、长方形指示牌、路灯及反光标等「地标」,得到一个简单的 3D 坐标数据;再通过识别车道线信息,路沿,隔离带等获取丰富的 1D 数据。
    无人车

2.4 总结

  • 将来无人车的定位很难摆脱厘米级地图,但是这只是车辆启动前的第一次定位,车辆启动后,利用车载激光雷达的SLAM和障碍物识别完全可以取代高精度地图做自主导航。所以未来,高精度地图的主要作用是定位而非导航。

3. 路径规划

  • 路径规划的三层含义:全局路径规划、避障规划、轨迹规划
    无人车
  • 全局路径规划:通常指全局的路径规划,也可以叫全局导航规划,从出发点到目标点之间的纯几何路径规划,无关时间序,无关车辆动力学
  • 避障规划:
    • 又叫部路径规划,,又可叫动态路径规划,也可以叫即时导航规划。 主要是探测障碍物,并对障碍物的移动轨迹跟踪( Moving Object Detection and Tracking ,一般缩写为MODAT)做出下一步可能位置的推算,最终绘制出一幅包含现存碰撞风险和潜在碰撞风险的障碍物地图,这个潜在的风险提示是100毫秒级,未来需要进一步提高,这对传感器、算法的效率和处理器的运算能力都是极大的挑战,避障规划仅考虑空间还考虑时间序列
    • 避障规划的前提是对周围环境有深刻的理解,有一个非常完善实时的的环境理解
  • 轨迹规划:轨迹规路径规划和避障规划的基础上,考虑时间序列和车辆动力学对车辆运行轨迹的规划,主要是车纵向加速度和车横向角速度的设定。将设定交给执行系统,转向、油门、刹车。如果有主动悬挂,那么轨迹规划可能还要考虑地形因素。
    无人车

3.1 全局路径规划

  • 全局路径规划的组成
    • 环境模型(不同于环境理解)
    • 路径搜索
  • 环境模型
    • 栅格法
      栅格法是公认最成熟的算法。栅格法把工作空间分割成规则而均匀的含二值信息的栅格。 在机器人移动的过程中,栅格的尺寸和位置不变。二值信息分别表示该栅格处是否有障碍,没有障碍的栅格称为*栅格,否则为障碍栅格。栅格的尺寸通常和机器人的基本移动步长相适应,故机器人移动转化成从一个*栅格移动到下一个*栅格,机器人移动的路长对应于机器人爬过的栅格数。栅格法直观且建模相对较容易,因此得到了广泛的应用。
    • 可视图法、*空间法
      可视图法和*空间法和栅格法相比的优点是比较灵活,对运算资源消耗少。缺点很明显,障碍物多少与算法复杂程度成正比,算法太复杂时可靠性就降低,同时不太适合动态环境,要求运动速度变化尽量小。栅格法的缺点是如果分辨率高,对运算资源和内存需求较高。 显然,可视图法和*空间发适合机器人,栅格法更适合无人车,这在业内差不多已经是定论。这和传感器也有部分关系,视觉系统难以适应太精细的格栅法,因为视觉系统的要做精细的定量边界分割是不可能的,而激光雷达非常适合栅格法
  • 路径搜索
    • 2D路径搜索算法: Dijkstra(迪杰斯特拉)、Floyd-Warshall、A+算法、层次法、动作行为法、势场域法、栅格法、模糊逻辑法、拓扑法、惩罚函数法、遗传算法、模拟退火法、蚁群法和神经网络法等
    • 3D路径搜索算法:取样算法(Sampling)、节点算法(Node)、工程数学模型算法(Mathematics)、仿生学算法(Bioinspired)、混合算法(MultiFusion)。以取样型算法为例,下面可以再分主动型与被动型
  • a