Академический Документы
Профессиональный Документы
Культура Документы
LUIS MAGDALENA
Department of Applied Mathematics, Technical University, Madrid, Spain
llayos@mat.upm.es
Abstract. This work describes a color Vision-based System intended to perform stable autonomous driving on
unmarked roads. Accordingly, this implies the development of an accurate road surface detection system that ensures vehicle stability. Although this topic has already been documented in the technical literature by different
research groups, the vast majority of the already existing Intelligent Transportation Systems are devoted to assisted driving of vehicles on marked extra urban roads and highways. The complete system was tested on the
BABIECA prototype vehicle, which was autonomously driven for hundred of kilometers accomplishing different navigation missions on a private circuit that emulates an urban quarter. During the tests, the navigation system demonstrated its robustness with regard to shadows, road texture, and weather and changing illumination
conditions.
Keywords: color vision-based lane tracker, unmarked roads, unsupervised segmentation
1.
Introduction
1.1.
96
Sotelo et al.
Figure 1.
2.
Lane Tracking
97
Region of Interest
Road Features
The combined use of color and shape restrictions provides the essential information required to drive on
non structured roads. Prior to the segmentation of the
98
Sotelo et al.
Figure 2.
Area of interest.
thus, non saturated colors are gray scale colors. Intensity is the amount of light in a color. The maximum
intensity is perceived as pure white, while the minimum intensity is pure black. Some of the most relevant
advantages related to the use of the HSI color space
are discussed below. It is closely related to human perception of colors, having a high power to discriminate
colors, specially the hue component. The difference
between colors can be directly quantified by using a
distance measure. Transformation from the RGB color
space to the HSI color space can be made by means
of Eqs. (1) and (2), where V1 and V2 are intermediate
variables containing the chrominance information of
the color.
V1 =
V2
1
3
1
6
1
6
H = arctan
1
3
1
6
2
V2
V1
R
G
B
S = V12 + V22
1
3
2
6
1
6
(1)
(2)
This transformation describes a geometrical approximation to map the RGB color cube into the HSI color
space, as depicted in Fig. 4. As can be clearly appreciated from observation of Fig. 3, colors are distributed
in a cylindrical manner in the HSI color space. A similar way to proceed is currently under consideration
by performing a change in the coordinate frames so as
to align with the I axis, and compute one component
along the I axis and the other in the plane normal to
the I axis. This could save some computing time by
avoiding going through the trigonometry.
Figure 3.
Although the RGB color space has been successfully used in previous works dealing with road segmentation (Thorpe, 1990; Rodriguez et al., 1998), the
HSI color space has exhibited superior performance
in image segmentation problems as demonstrated in
Ikonomakis et al. (2000). According to this, we propose the use of color features in the HSI color space as
the basis to perform the segmentation of non-structured
roads. A more detailed discussion supporting the use
of the HSI color space for image segmentation in
outdoor applications is extensively reported in Sotelo
(2001).
2.4.
2.3.
Road Model
99
Road Segmentation
Image segmentation must be carried out by exploiting the cylindrical distribution of color features in the
HSI color space, bearing in mind that the separation
between road and no road color characteristics is nonlinear. To better understand the most appropriate distance measure that should be used in the road segmentation problem consider again the decomposition of a
color vector into its three components in the HSI color
space, as illustrated in Fig. 4. According to the previous decomposition, the comparison between a pattern
pixel denoted by Pp and any given pixel Pi can be directly measured in terms of intensity and chrominance
distance, as depicted in Fig. 5.
From the analytical point of view, the difference
between two color vectors in the HSI space can be
Figure 4.
Road model.
Figure 5.
100
Sotelo et al.
(3)
(4)
where Imax and Smax represent the maximum normalized intensity and saturation values, respectively.
Achromatic pixels are segmented according to its intensity value alone. Obviously, non-achromatic pixels
are automatically categorized as chromatic. The segmentation of chromatic pixels is accomplished by applying the previously proposed cylindrical separation
in the HSI color space.
with
=
|H p Hi |
if |H p Hi | < 180
(5)
achromatic pixels:
I > 0.9Imax or I < 0.1Imax or S < 0.1Smax
(6)
Figure 6.
Figure 7. Computation of distance between pixel i and the previously estimated road model.
101
The distance d pi between any given pixel i with image coordinates (xi , yi ) and the previous road model
yc (t 1) is computed on the image plane as described
by Eq. (7). Graphically, the process is illustrated in
Fig. 7.
d pi = yi ac (t 1) xi2 + bc (t 1) xi + cc (t 1)
(7)
The real distance di between the point corresponding to the projection of pixel i on the 3D scene, and the
skeleton lines of the road is computed using the camera
calibration parameters under the flat terrain assumption. This could be affected by the pitch angle of the
vehicle, as small changes do have a noticeable effect,
specially in minor roads with less smooth surface. In
such cases, the planar assumption would lead to some
errors in the road model computation. To compensate for this problem the use of a stabilization system is strongly recommended. Threshold values Tchrom
and Tint are then modified for each pixel according
to distance di previously computed. The theoretical
justification for this is the following. For each iteration
of the segmentation algorithm, road pixels are expected
to appear near (or around) the previously estimated
skeleton lines of the road. Thus, a pixel located far away
from the previous road model is most likely a pixel not
contained in the current road, even if their color properties are similar. In other words, the probability of
such pixel to belong to the current road is small. Accordingly, the proposed modification is accomplished
so as to provide low threshold values for pixels far
away from the previous road model. Thus, for pixels
clearly located out of the road trajectory, the chromatic
and luminance distances to the road pattern color features should be very small in order to effectively be
segmented as part of the road. On the contrary, for pixels near the skeleton lines of the previous road model
those distances are admitted to be larger. This means
that the probability of a pixel to be segmented as road
decreases as the distance between the pixel and the road
(8)
where c (d) and I (d) represent the threshold values for the chromatic and luminance distances, respectively, for a pixel located at a distance d from the previous model, Tc (t 1) and TI (t 1) are the maximum
threshold values estimated in the previous iteration, and
K is an empirically determined parameter devised to
control the threshold value, particularly for pixels located in the surroundings of the road edges. In practice,
K is determined so that the threshold value is 70%
of the maximum threshold, for pixels located at a dis (t 1)/2. This empirical
tance from the model dw = W
value has demonstrated to be appropriate after practical trials and to allow for a stable segmentation process,
yielding the numerical value for variable K depicted in
Eq. (9).
K = 2 ln(70/100)
(9)
A chromatic pixel i is classified as road if it simultaneously verifies that dchrom < c (d) and dint < I (d),
while an achromatic pixel is segmented as road if the
single condition dint < I (d) is satisfied. Obviously,
the initial choice of Tc (0) and TI (0) becomes a critical
decision whose justification is fully detailed in the next
section. On the other hand, the maximum threshold
values Tc (t) and TI (t) must be dynamically updated so
as to adapt the segmentation process to changing color
and luminance conditions. To carry out this, the root
mean squared values of the chromatic and luminance
distances to the road pattern, dchrom,rms and dint,rms , are
computed for each pixel classified as road. The maximum threshold values for the next iteration, Tc (t + 1)
and TI (t + 1), are calculated as described in Eq. 10 depending on dchrom,rms (t), dint,rms (t), and an exponential
factor essential to guarantee the stability of the segmentation process. This leads to threshold values for the
next iteration, c (d)|t+1 and I (d)|t+1 , exactly equal
to dchrom,rms (t) and dint,rms (t), respectively, for pixels
102
Sotelo et al.
(t)/2).
located on the road edges (d|t+1 = W
Tc (t + 1) = dchrom,rms (t) e 2
K
TI (t + 1) = dint,rms (t) e 2
(10)
Ci =
Ski cos(Hki )
k=1
Figure 8.
pattern.
Si =
Ski sin(Hki )
k=1
H pi = arctan(Si /Ci )
S pi = Ci2 + Si2
I pi =
(11)
M
1
Iki
M k=1
Tc (0) = dchrom,rms pi e 2
K
TI (0) = dint,rms pi e 2
(13)
103
P
1
[1 d H (Vki,Vk0i )]
P k=1
(14)
Figure 10.
104
Sotelo et al.
Figure 11.
Figure 12. Segmentation results after morphological postprocessing. (a) Original image. (b) Original segmentation. (c) Segmentation after morphological post-processing.
(15)
105
The improvement achieved by attenuating both brightness and shadows, as described, permits to handle real
images in real and complex situations with an extraordinary high performance, becoming an outstanding point
of this work.
2.6.
where Iroad,avg and road are the same variables considered in Eq. (15). After applying the condition established by Eq. (16), white blobs due to brightness are
removed from the segmentation as depicted in Fig. 14.
Figure 14. Brightness attenuation. (a) Original image with brightness on the pavement. (b) Segmentation without brightness attenuation. (c) Segmentation after brightness attenuation.
I Iroad,avg + 2 road
(16)
106
Sotelo et al.
Figure 15.
interest.
(17)
P(t) =
Figure 16. Validation area for measurements associated to the
skeleton lines of the road.
(18)
(19)
with
G(t) = P(t 1)(t) (I + T (t)P(t 1)(t))1
yt,1
c
y
t,2
z(t) =
(t 1) = b
a
yt,Nt
2
1
xt,1 xt,1
1
2
xt,2 xt,2
T (t) =
xt,Nt
2
xt,N
t
107
Figure 19.
108
Sotelo et al.
(20)
Nr di
1
wr.i
Nrdi i=1
(21)
The slowly varying road width assumption is incorporated using a recursive least squares based estimator,
similar to those employed for the estimation of road
edges. This permits to issue a smooth estimation of
the road width. Its analytical formulation is presented
below.
(t 1)
m(t)
=W
(22)
1
T
Pw (t) =
(Pw (t 1) K w (t)P (t 1)) (23)
w
(t) = W
(t 1) + K w (t)(W (t) m(t))
W
(24)
with
K w (t) = Pw (t 1)/(w + Pw (t 1))
Figure 21. Estimation of road edges and skeleton lines in presence
of another vehicle.
(25)
where m(t)
represents the prediction of the current
state, and Pw (t) stands for covariance of the estimated
Figure 23.
109
and (27).
Figure 22.
images.
CM =
2.7.
Sk cos(Hk )
k=1
SM =
width. In practice, proper results have been achieved
using w = 0.8. To graphically illustrate the whole process, Fig. 22 depicts a sequence of road images showing the estimation of the skeleton lines and edges of the
road, as well as the estimated road width. Although the
resolution of measurements is not high enough to obtain 1 cm accuracy in road width, it is possible to obtain
such values using recursive estimators as described in
this section.
Np
Np
Sk sen(Hk )
(26)
k=1
H p = arctan(S M /C M )
2
2
Sp = CM
+ SM
Np
1
Ip =
Ik
N p k=1
(27)
110
Sotelo et al.
Figure 24.
circuit. Figure 25 depicts an example of road segmentation obtained on this scenario. As appreciated from
observation of Fig. 25, the road edges can be neatly
distinguished in the segmented image, allowing a clear
estimation in real experiments.
In a second trial, similar experiments were conducted
on rural roads. As observed in Fig. 26, a central lane
Figure 25.
Figure 26.
111
112
Sotelo et al.
Figure 29.
conditions.
Figure 32.
cover the bottom part of the image, where the contrast is high enough for color segmentation under these
circumstances.
Figure 30.
3.
The complete navigation system described in the previous sections has been implemented on the so-called
Babieca prototype vehicle, depicted in Fig. 1, that has
been modified to allow for automatic velocity and steering control at a maximum speed of 90 km/h, using
the non linear control law developed in Sotelo (2001).
Babieca is equipped with a color camera, a Pentium PC,
and a set of electronic devices to provide actuation over
the accelerator and steering wheel, as well as to encode
the vehicle velocity and steering angle. The color camera provides standard PAL video signal at 25 Hz that is
processed by a Meteor frame grabber installed on a 120
MHz Pentium running the Real Time Linux operating
system. After implementing the complete navigation
system under Real Time Linux using a pre-emptive
scheduler (Barabanov, 1997), the lane tracking vision
based task gets executed at 10 frames/s. Practical experiments were conducted on a private circuit located
at the Instituto de Automatica Industrial in Arganda
del Rey (Madrid). The circuit is composed of several
streets and intersections, trying to emulate an urban
quarter. Babieca has ran over hundreds of kilometers
in lots of successful autonomous missions carried out
along the test circuit. As stated in Section 1, a live
demonstration exhibiting the system capabilities on autonomous driving was also carried out during the IEEE
Conference on Intelligent Vehicles 2002, in a private
circuit located at Satory (Versailles), France. In order
to complete the graphical results depicted in the previous sections, and to illustrate the global behavior of the
complete navigation system implemented on Babieca,
some general results are shown next. Thus, Fig. 33
113
shows the 2D real trajectory followed by Babieca (using UTM coordinates as measured by a DGPS receiver onboard the vehicle), including several sharp
bends.
On the other hand, various practical trials were conducted so as to test the validity of the control law for
different initial conditions in real circumstances. During the tests, the reference vehicle velocity is assumed
to be kept constant by the velocity controller. Figures 34
and 35 show the transient response of the vehicle lateral
and orientation error for reference velocities of 20 km/h
and 50 km/h, respectively. Relative measurements
during the tests were obtained from a DGPS receiver
in order to support the ability of the vision-based algorithm to correctly locate the vehicle in the lane. In
all cases, the vehicle starts the run at an initial lateral
error of about 1 m and an initial orientation error in the
Figure 34.
Figure 35.
114
Sotelo et al.
Conclusions
Acknowledgments
This work has been funded by the Departamento de
Electronica of the UAH, and the generous support
Miguel Angel
Sotelo received the Dr. Ing. degree in Telecommunication Engineering in 1996 from the Technical University of Madrid,
and the Ph.D. degree in Telecommunication Engineering in 2001
from the University of Alcala, Alcala de Henares, Madrid, Spain.
From 1993 to 1994 he has been a Researcher at the Department of
115
Francisco Javier Rodrguez received a Ph.D. in Electronics Engineering from the University of Alcala in 1997, a Telecommunication Engineering degree from the Technical University of Madrid,
in 1990, and a Technical Telecommunication Engineering degree in
1985. He has worked in the private electronic industry for two years;
since 1986 he has been a Lecturer in the Electronics Department of
the University of Alcala, where he is an Associate Professor. His
current work covers the areas of monitoring and control, real time
processing, autonomous vehicles, and embedded systems.
Luis Magdalena received the M.S. and Ph.D degrees in Telecommunication Engineering, both from the Technical University of Madrid,
Spain, in 1988 and 1994, respectively. He is an Associate Professor in Computer Science at the Department of Applied Mathematics
of the Technical University of Madrid. His research interests include Soft Computing and its application, particularly in the field of
robotics. He is co-author of the book Genetic Fuzzy Systems: Evolutionary Tuning and Learning of Fuzzy Knowledge Bases (World
Scientific, 2001). He is co-editor of the books Technologies for Constructing Intelligent Systems (two volumes, Phisica Verlag, 2002)
and Fuzzy Modelling and the Interpretability-Accuracy Trade-off
(two volumes, Phisica Verlag, 2002). He has co-edited special issues of the journals International Journal of Intelligent Systems,
Information Sciences and Fuzzy Sets and Systems. Since 2001
he is the President of the European Society for Fuzzy Logic and
Technology. He served as co-chair of the Eight International Conference on Information Processing and Management of Uncertainty
in Knowledge-Based Systems (Madrid, 2000).
116
Sotelo et al.
Luis Miguel Bergasa received a Ph.D. degree in Telecommunication Engineering from the University of Alcala in 1999, a degree
in Telecommunication Engineering from the Technical University
of Madrid in 1995, and a degree in Technical Telecommunication
Engineering from the University of Alcala in 1989. He is currently
an Associate Professor in the Department of Electronics at the University of Alcala (Spain). His research interests include computer
vision, robotics, and intelligent control.