apollo learning finishing (a) positioning

Please indicate the source https://mp.csdn.net/postedit/91404663


, The content simply by combing apollo learning courses. Course Link http://apollo.auto/devcenter/courselist_cn.html?target=3

1. Positioning Introduction

Positioning is to allow driverless cars know their exact method unknown. In many cases, the positioning accuracy of GPS can not meet the needs of the autopilot, you need to find another way to get the exact location of the car. In the coordinate system of the vehicle, the car forward direction is the positive x-axis, and rotates together (FIG. 1) When the car is about coordinate system and steering, in order to ensure the forward direction of the vehicle is always the positive x-axis direction is. Vehicle sensor can measure the relative distance and direction of the vehicle and the obstacle. As the vehicle turns, the vehicle coordinate system necessarily inconsistent with the map coordinate system (FIG. 2), the need for data conversion between the coordinate system, in order to achieve the vehicle identification sensor present landmarks and landmarks on the precision alignment of the map, and the map determine the precise location of the vehicle to the positioning accuracy of ten centimeters. Positioning offers a variety of options, each method has its own advantages and disadvantages. Next we will explore several common unmanned vehicle positioning methods, such as GNSS RTK, inertial navigation, LiDAR positioning and visual positioning, positioning and how to solve the problem of understanding when Apollo framework.

                                             

                                                                           1 with the vehicle steering vehicle coordinate system changes

                                                

                                                                      FIG 2 under different coordinate systems, the location identified

2. GNSS RTK

GPS, the Global Positioning System (USA Development), refers to satellite navigation systems worldwide operations, the generic name of such systems for the global navigation satellite system or GNSS. GPS GNSS is the most widely used one, will take this as an example of GNSS positioning principle. GPS consists of three parts: a satellite control station, GPS receivers, as shown in FIG 3. When there is no building or the like obstacles around the analyte, and the weather is good, the GPS signal may be received; GPS receivers each receiving at least four GPS satellites transmit the signals, position location can be realized.

                

                                                                     Figure 3 GPS composition of

GPS receiver first measured signal flight time, i.e., signal propagation from the satellite to the GPS receiver longer required, the speed of light multiplied by the distance to the satellite. Due to the large value of the speed of light, even a small amount of time error will cause a huge impact on the error distance outcome.

                                                     

To further reduce the error, the positioning motion may be used in real time (or RTK), RTK relates to established on the ground in several base stations, each base station knows its own precise "ground truth" position. Each base station measures its own position by a GPS, and calculating the deviation of the position of the "ground truth," to give the GPS measurement error. The GPS error is transmitted to other receivers to adjust their position calculation. With the help of an RTK, GPS positioning error can be limited to 10 cm (FIG. 4). But there are still the following questions:

  1. There analyte around buildings or other obstacles may block the GPS signals, so that the positioning difficult or unable to locate;
  2. GPS update rate is very low, approximately 10 times per second, or 10Hz update.

As the unmanned vehicle is moving in fast, you may need to update the location information more frequently.

                                          

                                                                           FIG 4 GNSS RTK positioning

3. inertial navigation

Assuming that a car is traveling at a constant speed straight, long time if the initial position of the vehicle, and the speed of travel is known, it will be able to know the location of the current time of the vehicle.

                                 

Similarly, does not know the initial position and velocity, but to provide an initial velocity v0and acceleration a, vehicle speed v is obtained at the current time

                                                                        v = v0+at

通过汽车的加速度、初始速度和初始位置,可以计算任何时间点的车速和位置。可以使用一个三轴加速计的传感器来进行加速度的测量,有三种不同类型的三轴加速度计,但共同目标是精确测量加速度。加速度计是根据车辆坐标系记录测量结果,因而需要将这些测量值转换到全局坐标系中。

坐标转换需要使用传感器——陀螺仪,三轴陀螺仪的三个外部平衡一直在旋转,旋转轴始终固定在世界坐标系中。通过测量旋转轴和三个外部平衡换的相对位置,来计算车辆在世界坐标系中的位置。

加速度计和陀螺仪是惯性测量单元(或IMU)的主要组件。IMU的一个重要特性在于它以高频率更新,其频率可达到1000Hz,所以IMU可以提供接近实时的位置信息。惯性测量单元的缺点在于其运动误差随时间增加而增加。只能依靠惯性测量单元,在很短的时间范围内进行定位。将IMU与GPS相结合,既弥补了GPS更新频率较慢的缺陷,GPS还可以纠正IMU的运动误差。

即使将GPS与IMU相结合,也不能完全解决自动驾驶的定位问题。若在山间、城市峡谷、甚至在地下隧道中行驶,GPS长时间无法更新,可能会使得整个定位系统面临失败。

4. LiDAR定位

利用激光雷达,可以通过点云匹配实现车辆定位。该方法将来自激光雷达传感器的检测数据,与预先存在的高精度地图连续匹配,通过比对获知车辆在高精度地图上的全球位置和行驶方向。当前已有多种激光雷达定位的方法。

1. 迭代最近点(ICP)

假设想对两次点云的扫描结果进行匹配,需要找到另一次扫描中最接近的匹配点,最终会手机到许多匹配点对。把每对点之间的距离误差相加,然后计算平均距离误差。通过点云旋转和平移最大限度地降低平均误差距离,在传感器扫描与地图之间找到匹配,将测量数据从车辆坐标系转换到世界坐标系上,获取车辆在高精度地图上的精确位置。

2. 滤波算法

滤波算法可以消除冗余信息,并在地图上找到最可能的车辆位置。Apollo使用了直方图滤波算法,该方法有时也被称为误差平方和算法(SSD)。将传感器扫描到的点云划过地图上每个位置,在每个位置上计算扫描点与对应点之间的误差或距离,然后对误差的平方求和。所求误差平方和越小,扫描结果与地图之间的匹配结果越好。图5中,红色表示对齐较好的点,绿色表示中等对齐的点,蓝色表示对齐较差的点。

                                  

                                                                                 图5 直方图滤波算法

3. 卡尔曼滤波法

卡尔曼滤波是一种是算法,根据过去的状态和新的测量结果来预测当前的状态。首先,根据之前的状态以及对移动距离和方向的估计,来预估或“预测”新的位置。当然,运动估计并不完美,所以需要通过传感器测量位置并加以纠正。一旦传感器测量到新的位置,便可以通过概率规则,将传感器测量结果与现有位置预测相结合,实现车辆定位。

LiDAR定位的主要优势在于稳健性,只要从高精度地图开始并存在有效的传感器,就能实现定位与更新。事实上,无法保证地图保持完全更新,因为每个地图都包含瞬态元素,如汽车、行人及停放的车辆登等,都会在下一次驾车时发生变化。

5. 视觉定位

直接使用图像信息实现精确定位非常困难,通常将摄像头图像与其他传感器的数据相结合,以实现车辆定位。将摄像头与地图和GPS数据相结合,比单独使用摄像头图像进行定位的效果要好。假设一辆车正在路上行驶,它感知到右边有一棵树,但是地图显示道路右侧有几棵树,且处于不同的位置,如何知道车辆现在看到的是哪颗树?可以使用概率来解决这个问题。假设在车辆右侧观察到一棵树,则可以在地图上先排除右侧无树木的点。开车的同时继续观察周边环境,若前进过程中观察到右边有另一棵树,会发现地图上仅有少数几个位置的右侧有成排的树木,便是车辆最可能的位置之一,图6显示了具体的识别过程。通过观察结果、概率和地图来确定车辆最可能的位置,这个过程被称为粒子滤波。可以使用粒子或点来估计车辆最可能的位置。

            

                                                                                    图6 粒子滤波的过程

树木在一些道路上不常见,因而可以选用车道线来进行对比。通过粒子滤波原理对车道线拍照,然后使用拍摄的图像来确定车辆在道路中间的位置。如图7显示了视觉车道线匹配的示例,蓝色代表地图上两个不同位置的车道线,红色表示车辆摄像头观察到的车道线。通过比对可发现,红线与右侧蓝线的匹配度要高得多,因而更可能位于右侧图像对应的地图位置。

                                                            

                                                                              图7 视觉车道线匹配的示例

视觉定位的优点在于图像数据很容易获取,缺点在于缺乏三维系信息和对三维地图的依赖。

6. Apollo定位

Apollo使用基于GPS、IMU和激光雷达的多传感器融合定位系统,利用不同传感器的互补优势,提高系统的稳定性和准确性。Apollo定位模块依赖于IMU、GPS、激光雷达、雷达和高精度地图,这些传感器同时支持GNSS定位和LiDAR定位,GNSS定位输出位置和速度信息,LiDAR定位输出位置和行进方向信息。融合框架通过卡尔曼滤波将这些输出结合在一起,卡尔曼滤波建立在两步预测测量周期之上。在Apollo中,惯性导航解决方案用于卡尔曼滤波的预测,GNSS和LiDAR定位用于卡尔曼滤波的测量结果更新。

                                                         

                                                                                      图8 定位融合框架

Guess you like

Origin blog.csdn.net/gloria_iris/article/details/91404663