# Improving the Lane Reference Detection for Autonomous Road Vehicle Control

Authors: Felipe Jiménez; Miguel Clavijo; José Eugenio Naranjo; Óscar Gómez
Journal: Journal of Sensors
 (2016)

---

## Abstract

Autonomous road vehicles are increasingly becoming more important and there are several techniques and sensors that are being applied for vehicle control. This paper presents an alternative system for maintaining the position of autonomous vehicles without adding additional elements to the standard sensor architecture, by using a 3D laser scanner for continuously detecting a reference element in situations in which the GNSS receiver fails or provides accuracy below the required level. Considering that the guidance variables are more accurately estimated when dealing with reference points in front of and behind the vehicle, an algorithm based on vehicle dynamics mathematical model is proposed to extend the detected points in cases where the sensor is placed at the front of the vehicle. The algorithm has been tested when driving along a lane delimited by New Jersey barriers at both sides and the results show a correct behaviour. The system is capable of estimating the reference element behind the vehicle with sufficient accuracy when the laser scanner is placed at the front of it, so the robustness of the control input variables (lateral and angular errors) estimation is improved making it unnecessary to place the sensor on the vehicle roof or to introduce additional sensors.


---

## Body

## 1. Introduction

Autonomous road vehicles are increasingly becoming more important and all manufacturers are involved in research projects in order to develop semiautomated or fully automated solutions [1]. Apparently the recent presentations of Google’s cars have aroused their interest, but several research groups have been working in this field for over 20 years [2–4]. What these autonomous vehicles have in common is the ability to perform two tasks: identifying obstacles to avoid accidents and positioning to track a route. These two problems have been under research since the initial developments, and there is still no general solution for both that meets the requirements of reliability, robustness, efficiency, and affordable cost.The three most common methods for detecting long-range obstacles are radar [5–8], laser scanner [9–13], and computer vision [14, 15]. Each of them has advantages and disadvantages [16] and sensor fusion is commonly used to overcome the individual limitations [17–21]. Regarding the technologies for detecting vehicle surroundings, which can be also used for autonomous guidance, computer vision and laser scanner can be highlighted [22, 23].Several techniques have been implemented to develop autonomous vehicle control, including navigation methods such as waypoints using Global Navigation Satellite Systems (GNSS) [24], tracking lines or other infrastructure elements [25], and following the preceding vehicle [26, 27]. In any case, vehicle positioning at lane level accuracy is critical for ensuring safe and proper route guidance. In this case, the primary sensor that ensures this positioning is the GNSS receiver, which can generate positions with accuracy up to 1 cm if differential correction is used. However, it is common to find situations in which GNSS signal reception is poor or may even have been lost, such as in city traffic and tunnels. For those cases, GNSS positioning is frequently supplemented with inertial systems that can maintain position with adequate precision for a short time [28]. To overcome this limitation, some autonomous vehicles equip computer vision systems to detect road lines, which are capable of assisting the guidance system to keep the vehicle in the lane, but with a very precarious positioning which is subject to the detection problems of this technology under adverse lighting and environmental conditions.Laser scanners are taking on a very important role in the problem of autonomous driving, especially since they have moved from 2D scanners to 3D. By using 3D data, the problems of using 2D laser scanners are avoided, for example, measurement errors by the partially hidden observation of an obstacle or greater detail of the information obtained. Also, with 3D data, the information obtained is considerably more complete and can be used for several purposes [29–31]. In addition, through the information obtained by laser scanners to recognize the vehicle surroundings, progress has been made in the Simultaneous Localization and Mapping (SLAM) problem [32–34]. Overall, the SLAM works incrementally to make a virtual map of the environment through which the vehicle navigates so that it can be located on this map. One relevant limitation is the fact that most of these algorithms are focused on mobile robots whose dynamic behaviour differs from a road vehicle and its environment.This paper presents an alternative system for maintaining the position of autonomous vehicles without adding other elements to the standard sensor architecture by using the 3D laser scanner for both obstacle detection and positioning the vehicle in situations in which the GNSS receiver fails or provides accuracy below the required level. To this end, a representation of a reference element, such as a barrier, a tunnel wall, or a lane line (Figure1), is established based on the data recorded by the sensor. Then, the angular and lateral errors of the vehicle related to the border of the road are calculated and used for the autonomous vehicle control.Figure 1
Elements perceived by the laser scanner for autonomous vehicle guidance: (a) new Jersey barriers, (b) tunnel wall, and (c) lane lines.
(a)
(b)
(c)For a reliable representation and in order to reduce the influence of possible erroneous points, it is recommended to acquire points in front of and behind the vehicle. However, this would involve placing the sensor on the top of the vehicle, which is not the most feasible solution for implementation in a vehicle, or using the information fusion from various sensors [35], which may have the drawback of the high total cost of the equipment. A method is proposed in which a single sensor is used at the front of the vehicle and processes the previous points to estimate the geometry which could have been detected by the sensor behind the vehicle. This estimation can be based on the reconstruction of the reference element in absolute coordinates from the vehicle positioning by GNSS. However, this solution would not be viable in environments such as tunnels and may be subject to high errors because of the uncertainty of this position. Moreover, the absence of elements that can serve as reference hinders this solution under normal driving on public roads. Therefore, the proposed solution is based on the knowledge of vehicle dynamics by acquiring the vehicle’s signals and its trajectory estimation using a mathematical model of vehicle dynamics.


## 2. Detection Method of the Reference Element

### 2.1. Sensor and Its Location

The variables estimation for autonomous vehicle driving is based on a laser scanner, a technology that has been widely used for these purposes. As a sensor for identifying obstacles and autonomous navigation, a VLP-16 Velodyne 3D LiDAR sensor has been used which measures distances in real time by measuring the Time of Flight (TOF). This kind of laser scanner is a sensor used in automotive environments to detect objects that may appear in the surroundings of a vehicle. It is possible to acquire data from 5 to 20 Hz, with amplitude of 360° horizontal view (FOV, Field of View) and 30° vertically distributed in 16 layers, which provides up to 300,000 points per second. These sensors were originally developed for the DARPA (Defense Advanced Research Projects Agency) autonomous vehicle competitions [36] and are currently used in a wide variety of applications.With this equipment, it is possible to detect clouds of tridimensional points that represent obstacles, vehicles, pedestrians, and other road elements. However, the information generated by this sensor can also be used to detect the road boundaries as well as the separation between the lanes of the road. In Figure2, the different colours of the points represent the reflectivity intensity. Then, the lane lines are automatically highlighted and the lateral traffic barriers are also differentiated from the pavement (areas 1 and 2). Clustering obstacles can also provide the barrier information (areas 3 and 4).Figure 2
Raw information captured by a 3D laser scanner on a highway section.Two possible locations for the laser scanner in the vehicle (at the front and on the top) have been considered (Figure3), each of them with their advantages and disadvantages. The former facilitates sensor integration in the vehicle but the second solution provides a 360° view and obstacle detection at greater distances and higher speeds.Figure 3
Possible sensor placements. (a) At the front of the vehicle. (b) On the vehicle roof.
(a)
(b)Unlike [25, 33, 37], in this paper, the sensor is designed to be placed at the front of the vehicle, but specific algorithms are required to extend the detected points of the reference element behind the vehicle position to resemble the behaviour of the system when placing the sensor on the vehicle roof in order to improve the robustness of the reference element detection. The placement selection has been done considering that many manufacturers are implementing their sensors at the bumper or the windscreen and the location at the roof is only chosen in prototypes. In this paper proposal, the most unfavourable situation is considered in order to generate solutions that could be used in any case.


### 2.2. Fixed Barrier or Wall Detection

As mentioned in [16], the procedure followed for detecting obstacles is divided into two stages: (1) segmentation data and (2) obstacle tracking. In the first stage, the data obtained directly from the sensor are divided into clusters, associating these obstacles as far as possible with similar characteristics [38, 39]. Then, tracking tries to correlate the clusters of one scan with the previous results.Furthermore, to keep computational complexity low, and when the characteristics of the object and its detection make its height irrelevant, the problem can be tackled by building a 2D model from the information provided by the 3D point cloud, just as is performed by other detection algorithms [40].The detection algorithm for vehicle guidance is defined in 7 steps.Step 1 (selection of the Region of Interest (ROI)).
This region is defined as a function of the look-ahead distance following the suggestions developed in [41] which depends on the vehicle speed and is quantified by (1), where L is the look-ahead distance and v is the speed of the vehicle, where L
m
i
n
=
5 metres, L
m
a
x
=
50 metres, v
m
i
n
=
30 km/h, and v
m
a
x
=
70 km/h. These coefficients have been calculated experimentally to guarantee the safe operation of the autonomous vehicle and the stability of its controllers. Thus, with this operation, the computation is reduced because the nonrelevant laser points are discarded. Consider(1)
L
v
=
L
m
i
n
v
<
v
m
i
n
L
m
a
x
-
L
m
i
n
v
m
a
x
-
v
m
i
n
v
+
v
m
a
x
L
m
i
n
-
v
m
i
n
L
m
a
x
v
m
a
x
-
v
m
i
n
v
m
i
n
,
v
m
a
x
L
m
a
x
v
>
v
m
a
x
.Step 2 (Delaunay triangulation of the discrete mesh points (Figure4(a))).
Each 3 points are grouped into sets following a criterion of neighbourhood, using Delaunay triangulation. This first clustering allows the representation of the detected objects as a set of surfaces, whose features will allow further analysis and classification.Figure 4
(a) Delaunay triangulation mesh. (b) Normal vectors. (c) Detected obstacle. (d) Interest zone and control parameters calculated.y-axis corresponds to the direction of AV. Distances are in metres.Step 3 (normal vector calculation (Figure4(b))).
Once the mesh has been triangulated, the equation and the normal vector of each triangle are calculated in order to consider the orientation of the surface. Then, for each trianglet a normalized normal vector u
→
t can be calculated considering 2 vectors between vertices v
→
t
1
,
v
→
t
2. Consider(2)
u
→
t
=
v
→
t
1
×
v
→
t
2
v
→
t
1
×
v
→
t
2
.Then, the angles between the vector and the three coordinate axes i
→
,
j
→
,
k
→ are calculated by (3) in order to compare γ angle with the vertical axis:(3)
α
t
=
a
cos
⁡
u
→
t
·
i
→
,
β
t
=
a
cos
⁡
u
→
t
·
j
→
,
γ
t
=
a
cos
⁡
u
→
t
·
k
→
.Step 4 (threshold filtering).
With the information supplied by the normal vectors of each surface, a filtering operation is executed by removing the triangles whose normal vector direction is out of a prefix threshold based on the global vertical axis. In the case of the New Jersey vertical barriers, the boundaries of the threshold have been defined between 75° and 90° from the horizontal considering the barrier geometry [42], the sensor accuracy and resolution, and possible misdetections. These thresholds have provided satisfactory results in experimental preliminary tests. If the condition is true, the coordinates of the three vertices of the triangle are included as new points of the candidate list.Step 5 (DBSCAN clustering (Figure4(c))).
The next step is the clustering of the different set of points which are detected as candidates to represent a lateral barrier or wall. The calculations to determine the clustering and the shape of the barrier are made using bidimensional points since the vertical coordinate is not relevant once the barrier has been detected. This clustering is based on the Euclidean distance between the points and their density, using the density-based spatial clustering of applications with noise (DBSCAN) method [43]. Then, the set of points is segmented in the different candidates to represent a barrier. Once this classification is complete and in order to be used for autonomous vehicle positioning and guidance, the selected set of points will be the one located laterally and longitudinally to the vehicle, considering a length of 20 metres ahead. If available, the same distance should be considered behind the vehicle.Step 6 (lateral barrier equation calculation (Figure4(d))).
Finally, once the candidate set of points is selected, the mathematical function that defined the barriers structure is calculated using a quadratic regression. Consider(4)
x
∗
=
f
y
∗
=
A
y
∗
2
+
B
y
∗
+
C
,where x
∗ and y
∗ are the coordinate axes relative to the actual vehicle position, with x
∗ axis being the longitudinal one.Step 7 (vehicle guidance variables calculation).
Then it is possible to calculate the two main variables necessary to perform the autonomous vehicle control: the lateral and angular errors. In order to calculate both errors, firstly the pointP
x
0
∗
,
y
0
∗ is calculated. This point must be part of the regression and its normal vector must pass through the sensor location. Considering the tangent line equation at P, the perpendicular one is given by the following equation:(5)
x
∗
=
1
f
′
y
0
∗
y
∗
-
y
0
∗
+
f
y
0
∗
.Considering that this straight line must cut the local coordinate system (laser scanner location) and P must verify (4), P
x
0
∗
,
y
0
∗ is obtained and then the angular and lateral errors are as provided by the following:(6)
Lateral  error
LE
=
x
0
∗
2
+
y
0
∗
2
,
Angular  error
AE
=
a
sin
⁡
y
0
∗
Lateral  error
.


### 2.3. Alternative Solution for Outsider Elements Filtering

It should be noted that, in the case of an obstacle that is located near the barrier, such as a car or traffic signs, the clustering step may include their points as part of the selected cluster. In the event that the outsider element is far away from the car, the number of points might not be sufficiently representative compared to the whole barrier so the function calculation may not be affected. But, in the event of the element being near the vehicle, the number of points associated with this detection may be high and may affect the calculation of the reference element equation in a very significant way because of the high relative relevance of these points. This situation can be seen in Figure4(d) in which more points associated with the barrier are detected near the vehicle than in locations far away from it. In order to manage this case and homogenize their relative relevance, a weighting factor has been assigned to each point that increases as the distance between the point and the vehicle increases. Considering that the detected points’ density per length unit for each laser layer is inversely proportional to the distance d to the scanner, the density of points belonging to the barrier to be used in Step 5 in which the vertical coordinate is not taken into account could be fitted by an expression similar to the following equation:(7)
density
=
A
d
2
.Then, assuming the sensor blind zone when d is lower than 2 metres, a weighting function is built as the difference between the density at this zone border and the density fitted by (7) as shown in Figure 5. This function represents the number of times each detected point should be repeated in order to homogenize the relevance of the points detected in the ROI, so the effect of outsider elements is the same independently of the distance to the sensor and sudden changes in the results of Step 6 of the algorithm could be minimized.Figure 5
Example of detected points’ density versus distance to the sensor and weighting function definition.


### 2.4. Lane Line Detection

The road line detection is easier, since it is based on the identification of changes in the measurement of the reflectivity in those points detected on the surface of the road, as shown in Figure2. The main problem in this detection is the lack of robustness because it is subject to the road conditions and only a limited set of points can be used as representative of the lines.


## 2.1. Sensor and Its Location

The variables estimation for autonomous vehicle driving is based on a laser scanner, a technology that has been widely used for these purposes. As a sensor for identifying obstacles and autonomous navigation, a VLP-16 Velodyne 3D LiDAR sensor has been used which measures distances in real time by measuring the Time of Flight (TOF). This kind of laser scanner is a sensor used in automotive environments to detect objects that may appear in the surroundings of a vehicle. It is possible to acquire data from 5 to 20 Hz, with amplitude of 360° horizontal view (FOV, Field of View) and 30° vertically distributed in 16 layers, which provides up to 300,000 points per second. These sensors were originally developed for the DARPA (Defense Advanced Research Projects Agency) autonomous vehicle competitions [36] and are currently used in a wide variety of applications.With this equipment, it is possible to detect clouds of tridimensional points that represent obstacles, vehicles, pedestrians, and other road elements. However, the information generated by this sensor can also be used to detect the road boundaries as well as the separation between the lanes of the road. In Figure2, the different colours of the points represent the reflectivity intensity. Then, the lane lines are automatically highlighted and the lateral traffic barriers are also differentiated from the pavement (areas 1 and 2). Clustering obstacles can also provide the barrier information (areas 3 and 4).Figure 2
Raw information captured by a 3D laser scanner on a highway section.Two possible locations for the laser scanner in the vehicle (at the front and on the top) have been considered (Figure3), each of them with their advantages and disadvantages. The former facilitates sensor integration in the vehicle but the second solution provides a 360° view and obstacle detection at greater distances and higher speeds.Figure 3
Possible sensor placements. (a) At the front of the vehicle. (b) On the vehicle roof.
(a)
(b)Unlike [25, 33, 37], in this paper, the sensor is designed to be placed at the front of the vehicle, but specific algorithms are required to extend the detected points of the reference element behind the vehicle position to resemble the behaviour of the system when placing the sensor on the vehicle roof in order to improve the robustness of the reference element detection. The placement selection has been done considering that many manufacturers are implementing their sensors at the bumper or the windscreen and the location at the roof is only chosen in prototypes. In this paper proposal, the most unfavourable situation is considered in order to generate solutions that could be used in any case.


## 2.2. Fixed Barrier or Wall Detection

As mentioned in [16], the procedure followed for detecting obstacles is divided into two stages: (1) segmentation data and (2) obstacle tracking. In the first stage, the data obtained directly from the sensor are divided into clusters, associating these obstacles as far as possible with similar characteristics [38, 39]. Then, tracking tries to correlate the clusters of one scan with the previous results.Furthermore, to keep computational complexity low, and when the characteristics of the object and its detection make its height irrelevant, the problem can be tackled by building a 2D model from the information provided by the 3D point cloud, just as is performed by other detection algorithms [40].The detection algorithm for vehicle guidance is defined in 7 steps.Step 1 (selection of the Region of Interest (ROI)).
This region is defined as a function of the look-ahead distance following the suggestions developed in [41] which depends on the vehicle speed and is quantified by (1), where L is the look-ahead distance and v is the speed of the vehicle, where L
m
i
n
=
5 metres, L
m
a
x
=
50 metres, v
m
i
n
=
30 km/h, and v
m
a
x
=
70 km/h. These coefficients have been calculated experimentally to guarantee the safe operation of the autonomous vehicle and the stability of its controllers. Thus, with this operation, the computation is reduced because the nonrelevant laser points are discarded. Consider(1)
L
v
=
L
m
i
n
v
<
v
m
i
n
L
m
a
x
-
L
m
i
n
v
m
a
x
-
v
m
i
n
v
+
v
m
a
x
L
m
i
n
-
v
m
i
n
L
m
a
x
v
m
a
x
-
v
m
i
n
v
m
i
n
,
v
m
a
x
L
m
a
x
v
>
v
m
a
x
.Step 2 (Delaunay triangulation of the discrete mesh points (Figure4(a))).
Each 3 points are grouped into sets following a criterion of neighbourhood, using Delaunay triangulation. This first clustering allows the representation of the detected objects as a set of surfaces, whose features will allow further analysis and classification.Figure 4
(a) Delaunay triangulation mesh. (b) Normal vectors. (c) Detected obstacle. (d) Interest zone and control parameters calculated.y-axis corresponds to the direction of AV. Distances are in metres.Step 3 (normal vector calculation (Figure4(b))).
Once the mesh has been triangulated, the equation and the normal vector of each triangle are calculated in order to consider the orientation of the surface. Then, for each trianglet a normalized normal vector u
→
t can be calculated considering 2 vectors between vertices v
→
t
1
,
v
→
t
2. Consider(2)
u
→
t
=
v
→
t
1
×
v
→
t
2
v
→
t
1
×
v
→
t
2
.Then, the angles between the vector and the three coordinate axes i
→
,
j
→
,
k
→ are calculated by (3) in order to compare γ angle with the vertical axis:(3)
α
t
=
a
cos
⁡
u
→
t
·
i
→
,
β
t
=
a
cos
⁡
u
→
t
·
j
→
,
γ
t
=
a
cos
⁡
u
→
t
·
k
→
.Step 4 (threshold filtering).
With the information supplied by the normal vectors of each surface, a filtering operation is executed by removing the triangles whose normal vector direction is out of a prefix threshold based on the global vertical axis. In the case of the New Jersey vertical barriers, the boundaries of the threshold have been defined between 75° and 90° from the horizontal considering the barrier geometry [42], the sensor accuracy and resolution, and possible misdetections. These thresholds have provided satisfactory results in experimental preliminary tests. If the condition is true, the coordinates of the three vertices of the triangle are included as new points of the candidate list.Step 5 (DBSCAN clustering (Figure4(c))).
The next step is the clustering of the different set of points which are detected as candidates to represent a lateral barrier or wall. The calculations to determine the clustering and the shape of the barrier are made using bidimensional points since the vertical coordinate is not relevant once the barrier has been detected. This clustering is based on the Euclidean distance between the points and their density, using the density-based spatial clustering of applications with noise (DBSCAN) method [43]. Then, the set of points is segmented in the different candidates to represent a barrier. Once this classification is complete and in order to be used for autonomous vehicle positioning and guidance, the selected set of points will be the one located laterally and longitudinally to the vehicle, considering a length of 20 metres ahead. If available, the same distance should be considered behind the vehicle.Step 6 (lateral barrier equation calculation (Figure4(d))).
Finally, once the candidate set of points is selected, the mathematical function that defined the barriers structure is calculated using a quadratic regression. Consider(4)
x
∗
=
f
y
∗
=
A
y
∗
2
+
B
y
∗
+
C
,where x
∗ and y
∗ are the coordinate axes relative to the actual vehicle position, with x
∗ axis being the longitudinal one.Step 7 (vehicle guidance variables calculation).
Then it is possible to calculate the two main variables necessary to perform the autonomous vehicle control: the lateral and angular errors. In order to calculate both errors, firstly the pointP
x
0
∗
,
y
0
∗ is calculated. This point must be part of the regression and its normal vector must pass through the sensor location. Considering the tangent line equation at P, the perpendicular one is given by the following equation:(5)
x
∗
=
1
f
′
y
0
∗
y
∗
-
y
0
∗
+
f
y
0
∗
.Considering that this straight line must cut the local coordinate system (laser scanner location) and P must verify (4), P
x
0
∗
,
y
0
∗ is obtained and then the angular and lateral errors are as provided by the following:(6)
Lateral  error
LE
=
x
0
∗
2
+
y
0
∗
2
,
Angular  error
AE
=
a
sin
⁡
y
0
∗
Lateral  error
.


## 2.3. Alternative Solution for Outsider Elements Filtering

It should be noted that, in the case of an obstacle that is located near the barrier, such as a car or traffic signs, the clustering step may include their points as part of the selected cluster. In the event that the outsider element is far away from the car, the number of points might not be sufficiently representative compared to the whole barrier so the function calculation may not be affected. But, in the event of the element being near the vehicle, the number of points associated with this detection may be high and may affect the calculation of the reference element equation in a very significant way because of the high relative relevance of these points. This situation can be seen in Figure4(d) in which more points associated with the barrier are detected near the vehicle than in locations far away from it. In order to manage this case and homogenize their relative relevance, a weighting factor has been assigned to each point that increases as the distance between the point and the vehicle increases. Considering that the detected points’ density per length unit for each laser layer is inversely proportional to the distance d to the scanner, the density of points belonging to the barrier to be used in Step 5 in which the vertical coordinate is not taken into account could be fitted by an expression similar to the following equation:(7)
density
=
A
d
2
.Then, assuming the sensor blind zone when d is lower than 2 metres, a weighting function is built as the difference between the density at this zone border and the density fitted by (7) as shown in Figure 5. This function represents the number of times each detected point should be repeated in order to homogenize the relevance of the points detected in the ROI, so the effect of outsider elements is the same independently of the distance to the sensor and sudden changes in the results of Step 6 of the algorithm could be minimized.Figure 5
Example of detected points’ density versus distance to the sensor and weighting function definition.


## 2.4. Lane Line Detection

The road line detection is easier, since it is based on the identification of changes in the measurement of the reflectivity in those points detected on the surface of the road, as shown in Figure2. The main problem in this detection is the lack of robustness because it is subject to the road conditions and only a limited set of points can be used as representative of the lines.


## 3. SLAM Problem

Should the laser be placed at the front of the vehicle, there is no information about the points belonging to the barrier or the wall behind the vehicle. The proposed method to obtain the necessary variables for autonomous vehicle control is based on adding to the detected points of the reference element, the portion of the reference element that is behind the vehicle and is not detected by the laser scanner. Since the use of GNSS is not feasible due to the inaccuracy of the measurement if differential corrections are not available [44] and because of the possible signal losses in some environments, or it is not possible to identify fixed landmarks in the infrastructure in an open and highly changing environment, the proposed method estimates the trajectory of the vehicle by studying the driving variables, such as steering wheel rotation and speed. Thus, the vehicle’s position can be determined referred to its current position, so the previous measurements of the laser scanner are reproduced from the past regarding this new position and are integrated with the new detections.


### 3.1. Vehicle Trajectory Estimation

In order to extrapolate the reference element to the area without data for an accurate and stable quadratic regression calculation, the vehicle trajectory in the past should be reproduced to complete the SLAM problem. Different solutions could be proposed to estimate this trajectory: (1) using GNSS waypoints, but signal deterioration could be significant, (2) using inertial measurement systems but cumulative errors limit their applicability in long distances [45, 46], and (3) using speed and steering wheel angle and simulating the vehicle dynamics.Considering the limitations of the first 2 methods discussed above and the fact that even techniques such as Kalman filtering could provide accurate results combining the first two approaches [47–49], these solutions are not suitable for road sections such as long tunnel stretches. For this reason, the current approach is based on the third alternative.To estimate the vehicle’s trajectory by simulating the vehicle dynamics, very different degrees of complexity models could be used [50–54]. A widely used model for these purposes is the 14-degree-of-freedom (dof) model, which considers the movements and rotations of the sprung mass (6 dof), the movement of the unsprung masses (4 dof), and wheel rotation (4 dof). This model is integrated in the software presented in [55].Dynamic equations of sprung mass movements have been written considering the Cartesian coordinates system fixed to the sprung mass in whichx-axis is the longitudinal, y-axis is the transversal, and z-axis is the vertical. It should be noted that a noninertial coordinates system is used; therefore inertial forces appear. External forces include aerodynamic, tyre, and suspension forces.Linear movements are as follows:(8)
F
X
=
m
·
d
u
d
t
+
q
·
w
-
r
·
v
,
F
Y
=
m
·
d
v
d
t
+
r
·
u
-
p
·
w
,
F
Z
=
m
·
d
w
d
t
+
p
·
v
-
q
·
u
.Angular movements are as follows:(9)
M
X
=
I
X
·
d
p
d
t
-
I
Y
-
I
Z
·
q
·
r
+
I
X
Y
·
r
·
p
-
d
q
d
t
-
I
Y
Z
·
q
2
-
r
2
-
I
Z
X
·
p
·
q
+
d
r
d
t
,
M
Y
=
I
Y
·
d
q
d
t
-
I
Z
-
I
X
·
r
·
p
+
I
Y
Z
·
p
·
q
-
d
r
d
t
-
I
Z
X
·
r
2
-
p
2
-
I
X
Y
·
q
·
r
+
d
p
d
t
,
M
Z
=
I
Z
·
d
r
d
t
-
I
X
-
I
Y
·
p
·
q
+
I
Z
X
·
q
·
r
-
d
p
d
t
-
I
X
Y
·
p
2
-
q
2
-
I
Y
Z
·
r
·
p
+
d
q
d
t
.Furthermore, unsprung mass movements and wheel rotation are calculated by the following equations:(10)
d
z
i
d
t
=
-
m
i
·
g
-
K
t
i
·
z
i
-
F
k
i
-
F
s
i
m
i
,
d
ω
i
d
t
=
F
i
·
r
-
M
i
I
i
i
=
1
⋯
4
.Tyre forces are calculated using the Dugoff model and traction forces are obtained from a propulsion system model that includes engine and transmission [56, 57].It should be noted that the implementation of this model does not have an excessively high computational cost, but it could be simplified to guarantee real time execution. In this regard, instead of using simpler models such as traditional 3 dof models (two-wheel vehicle model) [28] that do not take into account all relevant parameters of the dynamics, the solution to generate a look-up table has been chosen. The table is generated offline using the full model where the input variables are the speed v and the steering wheel rotation δ
S
W, both being available in a vehicle. As output variable the yaw rate φ
z
′ is obtained, from which it is possible to determine the evolution of the trajectory in local coordinates. Consider (11)
Δ
x
∗
=
v
·
Δ
t
·
cos
⁡
φ
z
′
·
Δ
t
,
Δ
y
∗
=
v
·
Δ
t
·
sin
⁡
φ
z
′
·
Δ
t
,where Δ
t is the time between two consecutive samples.


### 3.2. Road Superelevation Rate Influence

The above mathematical model does not take into account the influence of road superelevation rate. However, this influence could be significant. In order not to increase the complexity of the 2 input variables’ look-up table, it is proposed to correct the input of the steering wheel angle depending on the road superelevation rate. Thus, Figure6 shows the two-wheel vehicle model [52, 56] in which the gravitational force component F
y is acting transversely on the vehicle because of the superelevation rate, there being no other force applied in that direction in the centre of gravity. Consider(12)
F
y
=
P
·
sin
⁡
ξ
,where P is the vehicle weight and ξ is the superelevation angle.Figure 6
Two-wheel vehicle model moving along a road section with nonzero superelevation rate.This force generates the tyre efforts in order to achieve a force balance and they are given by the following:(13)
F
y
α
f
=
F
y
cos
⁡
δ
+
l
2
l
1
+
l
2
,
F
y
α
r
=
F
y
l
1
l
1
+
l
2
,where δ
+ is the steering angle of the front wheels and l
1 and l
2 are the distances between the front and rear axles and the centre of gravity.Assuming a linear relationship between the lateral forces in the tyres and their slip angles and constant transversal tyre stiffnessF
y
α
=
K
y
α
·
α, therefore these angles can be calculated.In order to maintain a straight trajectory, the vehicle slip angleβ should be null. Considering Figure 6, this condition is satisfied in the case where (14) is fulfilled; that is to say the orthogonal projection of the centre of curvature falls on the centre of gravity:(14)
tan
⁡
δ
+
-
α
f
l
1
=
tan
⁡
α
r
l
2
.So the required steering angle is given by the following equation:(15)
tan
⁡
δ
+
-
P
/
K
α
f
sin
⁡
ξ
/
cos
⁡
δ
+
l
2
/
l
1
+
l
2
l
1
=
tan
⁡
P
/
K
α
r
sin
⁡
ξ
l
1
/
l
1
+
l
2
l
2
.Thus, with the road superelevation rate at each instant now known, it is possible to correct the measured angle of the steering wheel according to (16). Considering the relationship with the steering wheel angle δ
S
W
+
=
K
S
W
·
δ
+, the look-up table provides the yaw rate and the trajectory is calculated according to (10):(16)
δ
S
W
c
o
r
r
=
δ
S
W
-
K
S
W
·
δ
+
.It should be noted that the superelevation rate variable should be obtained in real time as well as speed and steering wheel rotation. One possible solution is to use a detailed digital map to know any absolute position of the vehicle on it. However, this solution involves the availability of such maps with the required degree of precision and detail, which are not common [58], as well as a precise absolute positioning, which cannot be guaranteed in several areas [59]. Alternatively, the superelevation angle could be approximately obtained from the measurement of a gyroscopic platform [45]. In this case, the gyroscopic platform cannot distinguish between actual superelevation rate and vehicle roll angles and proposes [46] an iterative solution, which, however, is not feasible to implement in real time in the current method. Despite this, in normal driving conditions, it is estimated that the roll angle influence is negligible and, in this case, this measurement is free of cumulative errors.


### 3.3. Validation Results

The mathematical model of vehicle dynamics has already been validated [55]. However, it is necessary to evaluate the accuracy provided when computing the vehicle trajectory as described above. Figure 7 shows the path of the test vehicle on a 1.4 km long interurban road stretch. The acquisition system records the speed and steering wheel angle from the internal communication bus, while the road superelevation angle is given by an RMS FES 33 gyroscopic platform and the position is given by a centimetre-accuracy Trimble R4 GPS receiver with differential correction for accurate results comparison. As can be seen, not considering the superelevation angle leads to significant and inadmissible errors in the path generated from the dynamic variables of the vehicle. However, this road information may improve outcomes significantly.Figure 7
Estimation of the trajectory using vehicle dynamics simulation.Moreover, it should be noted that the estimates of the path are subject to cumulative errors, similarly to those presented in [45, 46]. However, it should be noted that this error becomes significant as the distance increases without any correction. In the case of the proposed calculation of the reference element behind the vehicle, the trajectory for a few metres (generally around 20 metres) is required. Additionally, although not absolute corrections are made, the estimate is made based on each relative position; thus any deviations obtained are taken only over such short distances. For the same route, estimations of 20-metre-long stretches have been computed and the results compared with accurate GPS positions. The algorithm calculations have been performed at the same rate of the perception system (20 Hz). Table 1 shows that the results deviations are quite small; therefore the proposed solution can be accepted.Table 1
Errors in trajectory estimation on 20-metre-long road stretches.
Points number
64
Average value
0.2314
Standard deviation
0.1741


## 3.1. Vehicle Trajectory Estimation

In order to extrapolate the reference element to the area without data for an accurate and stable quadratic regression calculation, the vehicle trajectory in the past should be reproduced to complete the SLAM problem. Different solutions could be proposed to estimate this trajectory: (1) using GNSS waypoints, but signal deterioration could be significant, (2) using inertial measurement systems but cumulative errors limit their applicability in long distances [45, 46], and (3) using speed and steering wheel angle and simulating the vehicle dynamics.Considering the limitations of the first 2 methods discussed above and the fact that even techniques such as Kalman filtering could provide accurate results combining the first two approaches [47–49], these solutions are not suitable for road sections such as long tunnel stretches. For this reason, the current approach is based on the third alternative.To estimate the vehicle’s trajectory by simulating the vehicle dynamics, very different degrees of complexity models could be used [50–54]. A widely used model for these purposes is the 14-degree-of-freedom (dof) model, which considers the movements and rotations of the sprung mass (6 dof), the movement of the unsprung masses (4 dof), and wheel rotation (4 dof). This model is integrated in the software presented in [55].Dynamic equations of sprung mass movements have been written considering the Cartesian coordinates system fixed to the sprung mass in whichx-axis is the longitudinal, y-axis is the transversal, and z-axis is the vertical. It should be noted that a noninertial coordinates system is used; therefore inertial forces appear. External forces include aerodynamic, tyre, and suspension forces.Linear movements are as follows:(8)
F
X
=
m
·
d
u
d
t
+
q
·
w
-
r
·
v
,
F
Y
=
m
·
d
v
d
t
+
r
·
u
-
p
·
w
,
F
Z
=
m
·
d
w
d
t
+
p
·
v
-
q
·
u
.Angular movements are as follows:(9)
M
X
=
I
X
·
d
p
d
t
-
I
Y
-
I
Z
·
q
·
r
+
I
X
Y
·
r
·
p
-
d
q
d
t
-
I
Y
Z
·
q
2
-
r
2
-
I
Z
X
·
p
·
q
+
d
r
d
t
,
M
Y
=
I
Y
·
d
q
d
t
-
I
Z
-
I
X
·
r
·
p
+
I
Y
Z
·
p
·
q
-
d
r
d
t
-
I
Z
X
·
r
2
-
p
2
-
I
X
Y
·
q
·
r
+
d
p
d
t
,
M
Z
=
I
Z
·
d
r
d
t
-
I
X
-
I
Y
·
p
·
q
+
I
Z
X
·
q
·
r
-
d
p
d
t
-
I
X
Y
·
p
2
-
q
2
-
I
Y
Z
·
r
·
p
+
d
q
d
t
.Furthermore, unsprung mass movements and wheel rotation are calculated by the following equations:(10)
d
z
i
d
t
=
-
m
i
·
g
-
K
t
i
·
z
i
-
F
k
i
-
F
s
i
m
i
,
d
ω
i
d
t
=
F
i
·
r
-
M
i
I
i
i
=
1
⋯
4
.Tyre forces are calculated using the Dugoff model and traction forces are obtained from a propulsion system model that includes engine and transmission [56, 57].It should be noted that the implementation of this model does not have an excessively high computational cost, but it could be simplified to guarantee real time execution. In this regard, instead of using simpler models such as traditional 3 dof models (two-wheel vehicle model) [28] that do not take into account all relevant parameters of the dynamics, the solution to generate a look-up table has been chosen. The table is generated offline using the full model where the input variables are the speed v and the steering wheel rotation δ
S
W, both being available in a vehicle. As output variable the yaw rate φ
z
′ is obtained, from which it is possible to determine the evolution of the trajectory in local coordinates. Consider (11)
Δ
x
∗
=
v
·
Δ
t
·
cos
⁡
φ
z
′
·
Δ
t
,
Δ
y
∗
=
v
·
Δ
t
·
sin
⁡
φ
z
′
·
Δ
t
,where Δ
t is the time between two consecutive samples.


## 3.2. Road Superelevation Rate Influence

The above mathematical model does not take into account the influence of road superelevation rate. However, this influence could be significant. In order not to increase the complexity of the 2 input variables’ look-up table, it is proposed to correct the input of the steering wheel angle depending on the road superelevation rate. Thus, Figure6 shows the two-wheel vehicle model [52, 56] in which the gravitational force component F
y is acting transversely on the vehicle because of the superelevation rate, there being no other force applied in that direction in the centre of gravity. Consider(12)
F
y
=
P
·
sin
⁡
ξ
,where P is the vehicle weight and ξ is the superelevation angle.Figure 6
Two-wheel vehicle model moving along a road section with nonzero superelevation rate.This force generates the tyre efforts in order to achieve a force balance and they are given by the following:(13)
F
y
α
f
=
F
y
cos
⁡
δ
+
l
2
l
1
+
l
2
,
F
y
α
r
=
F
y
l
1
l
1
+
l
2
,where δ
+ is the steering angle of the front wheels and l
1 and l
2 are the distances between the front and rear axles and the centre of gravity.Assuming a linear relationship between the lateral forces in the tyres and their slip angles and constant transversal tyre stiffnessF
y
α
=
K
y
α
·
α, therefore these angles can be calculated.In order to maintain a straight trajectory, the vehicle slip angleβ should be null. Considering Figure 6, this condition is satisfied in the case where (14) is fulfilled; that is to say the orthogonal projection of the centre of curvature falls on the centre of gravity:(14)
tan
⁡
δ
+
-
α
f
l
1
=
tan
⁡
α
r
l
2
.So the required steering angle is given by the following equation:(15)
tan
⁡
δ
+
-
P
/
K
α
f
sin
⁡
ξ
/
cos
⁡
δ
+
l
2
/
l
1
+
l
2
l
1
=
tan
⁡
P
/
K
α
r
sin
⁡
ξ
l
1
/
l
1
+
l
2
l
2
.Thus, with the road superelevation rate at each instant now known, it is possible to correct the measured angle of the steering wheel according to (16). Considering the relationship with the steering wheel angle δ
S
W
+
=
K
S
W
·
δ
+, the look-up table provides the yaw rate and the trajectory is calculated according to (10):(16)
δ
S
W
c
o
r
r
=
δ
S
W
-
K
S
W
·
δ
+
.It should be noted that the superelevation rate variable should be obtained in real time as well as speed and steering wheel rotation. One possible solution is to use a detailed digital map to know any absolute position of the vehicle on it. However, this solution involves the availability of such maps with the required degree of precision and detail, which are not common [58], as well as a precise absolute positioning, which cannot be guaranteed in several areas [59]. Alternatively, the superelevation angle could be approximately obtained from the measurement of a gyroscopic platform [45]. In this case, the gyroscopic platform cannot distinguish between actual superelevation rate and vehicle roll angles and proposes [46] an iterative solution, which, however, is not feasible to implement in real time in the current method. Despite this, in normal driving conditions, it is estimated that the roll angle influence is negligible and, in this case, this measurement is free of cumulative errors.


## 3.3. Validation Results

The mathematical model of vehicle dynamics has already been validated [55]. However, it is necessary to evaluate the accuracy provided when computing the vehicle trajectory as described above. Figure 7 shows the path of the test vehicle on a 1.4 km long interurban road stretch. The acquisition system records the speed and steering wheel angle from the internal communication bus, while the road superelevation angle is given by an RMS FES 33 gyroscopic platform and the position is given by a centimetre-accuracy Trimble R4 GPS receiver with differential correction for accurate results comparison. As can be seen, not considering the superelevation angle leads to significant and inadmissible errors in the path generated from the dynamic variables of the vehicle. However, this road information may improve outcomes significantly.Figure 7
Estimation of the trajectory using vehicle dynamics simulation.Moreover, it should be noted that the estimates of the path are subject to cumulative errors, similarly to those presented in [45, 46]. However, it should be noted that this error becomes significant as the distance increases without any correction. In the case of the proposed calculation of the reference element behind the vehicle, the trajectory for a few metres (generally around 20 metres) is required. Additionally, although not absolute corrections are made, the estimate is made based on each relative position; thus any deviations obtained are taken only over such short distances. For the same route, estimations of 20-metre-long stretches have been computed and the results compared with accurate GPS positions. The algorithm calculations have been performed at the same rate of the perception system (20 Hz). Table 1 shows that the results deviations are quite small; therefore the proposed solution can be accepted.Table 1
Errors in trajectory estimation on 20-metre-long road stretches.
Points number
64
Average value
0.2314
Standard deviation
0.1741


## 4. Tests and Results

The algorithm has been tested using New Jersey barriers as reference element for autonomous driving. Although the algorithm has been developed to place the sensor at the front of the vehicle, in order to perform the results validation, in these tests the laser scanner has been placed on top of the vehicle, retrieving 360° measurements. The test site was the BUS-VAO independent-lane along the A6 highway (Madrid, Spain), which has a length of 12 km and 2 lanes except in specific sections that only have 1. The lane is limited by New Jersey barriers on both sides that are interrupted only by the incorporations which are made only on one side. These barriers were used as a reference for guiding the autonomous vehicle. The speed was set between 45 and 60 km/h and the acquisition rate was 20 Hz.Firstly, the desirability of using the weighting factor for outsider filtering elements was analyzed. Figure8 shows lateral and angular errors along a road stretch in both cases with and without using the weighting function previously presented. By applying this function, it is observed that the behaviour is very sensitive to errors when the points detected belong to the cluster but not to the barrier or the wall and are placed far away from the sensor, producing a ripple in the response, so, contrary to the intuitive idea, better results are obtained without this factor.Figure 8
Algorithm response (a) without weighting function and (b) with weighting function.
(a)
(b)Furthermore, Figure9 corroborates that the response of the reference element estimation is considerably worse when dealing only with points detected in front of the vehicle so the solution of placing the sensor on the roof would be optimal following this criteria if no other corrections or algorithms are introduced.Figure 9
Algorithm response for same frame number in two different configurations: (a) use of points detected in front of the vehicle and (b) use of points detected in front of and behind the vehicle.
(a)
(b)The previous results justify the need to apply the method that extrapolates the detected reference element behind the vehicle where the sensor is unable to perceive it. In order to check the reliability of this proposed method, Figure10 shows an example of detection of the barriers at a point of the trajectory and compares the following cases:(a)
Estimation of the geometric characteristics of the reference element using only the points detected in front of the vehicle (the case in which the laser scanner is at the front of the vehicle).
(b)
Estimation of the geometric characteristics of the reference element using points detected in front of and behind the vehicle (in which case the laser scanner is on the top of the vehicle).
(c)
Estimation of the geometric characteristics of the reference element using the points detected in front of the vehicle and estimating the location of the points behind it.As can be seen, the adjustment determined in case (a) is far from the real solution compared to that provided by case (b), since the information is lost behind the vehicle. However, the adjustment in case (c) achieves good results. Table 2 shows deviations found between results of cases (a)-(b) and (b)-(c) for the entire path. These results support the proper functioning of the proposed method, making a significant improvement to the estimations that could be achieved only with the points detected in front of the vehicle and achieving similar results when the complete set of points detected in front of and behind the vehicle is used. Thus, it may be concluded that the laser scanner could be placed in the front part without reducing the quality of the calculation of the parameters used for autonomous driving when the proposed algorithm is used.Table 2
Deviations between estimates of parameters for guiding the autonomous vehicle.
(a)-(b)
(b)-(c)
Average value
Desv. est.
Average value
Desv. est.
LE (m)
0.167
0.081
0.062
0.017
AE (°)
2.668
1.293
0.886
0.241
Curvature (m−1)
4.157 10−3
2.355 10−3
0.950 10−3
0.948 10−3Figure 10
Estimation of the geometric characteristics of the barrier (a) using only the points detected ahead of the vehicle, (b) using points detected in front of and behind the vehicle, and (c) using the points detected ahead of the vehicle and estimating the location of the points behind it.
(a)
(b)
(c)


## 5. Conclusions

This paper has described the use of laser scanner technology to maintain the position of an autonomous vehicle even when the GNSS and inertial systems signals are not sufficiently accurate. This system is complementary to conventional guidance systems and works in parallel without interfering with obstacle detection systems. A method to increase the robustness of the data needed for autonomous driving along a reference element has been presented. Specifically, the proposed two major advances over other similar approaches are as follows:(i)
The method does not require the sensor to have vision of the reference element behind the vehicle.
(ii)
The method does not require absolute positioning (e.g., GNSS) or landmarks in the infrastructureSince the environment is structured, it has been possible to base the system on a single sensor of relatively low cost compared to others available in the market (16 detection layers versus costly scanners with 64). Moreover, the implementation performed does not imply high computational complexity, so it can be executed in real time.Finally, tests have shown the appropriate behaviour of the implemented algorithms and how they improve the solution in the case where only data ahead of the vehicle is considered.



---

*Source: 9497524-2016-09-20.xml*