This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination.
HAMMARSTRAND et al.: ROAD GEOMETRY ESTIMATION USING MOVING VEHICLES AND ROADSIDE OBSERVATIONS 3
1) Lane Marking Observations: If present and detected by
the camera system, the shapes of the left and right lane mark-
ings closest to the host vehicle are described using third degree
polynomials. The polynomials are given in the local vehicle
coordinate frame (x
l
k
,y
l
k
) as,
y
l
k
= l
0
k
+ l
1
k
x
l
k
+ l
2
k
x
l
k
2
+ l
3
k
x
l
k
3
(1)
y
r
k
= r
0
k
+ r
1
k
x
l
k
+ r
2
k
x
l
k
2
+ r
3
k
x
l
k
3
(2)
for the left lane marking and the right lane marking, respec-
tively. Roughly every 100 ms, the camera system delivers the
polynomial coefficients for each side, z
l
k
=[l
0
k
,l
1
k
,l
2
k
,l
3
k
]
T
and
z
r
k
=[r
0
k
,r
1
k
,r
2
k
,r
3
k
]
T
, independently of each other. Addition-
ally, each coefficient vector is coupled with a confidence value
(between 0 and 3) and an indication of the maximum distance
for which the polynomials (1), (2) are valid, denoted x
l
max
and
x
r
max
, respectively.
2) Object Observations: The radar-camera fusion system
delivers object estimates every 25 ms. Based on their speed
over-ground and camera classification, these estimates are
divided into two categories, moving/stationary vehicles or
stationary unclassified objects. The latter category typically
includes stationary roadside objects reflecting radar energy,
such as guard-rail posts. We denote the vehicle estimates as z
v
k
and the stationary detections as z
s
k
.
For the ith detected vehicle, the fusion system provides the
following description,
z
v,i
k
=
x
i
k
,y
i
k
,φ
i
k
,v
i
k
T
(3)
where [x
i
k
,y
i
k
] is the position of the vehicle in the local coor-
dinate frame, φ
i
k
is its heading direction and v
i
k
is its speed
over-ground.
For the stationary objects the description is simply given as
the position in the local coordinate frame.
D. Estimation Problem
The aim is to estimate the geometry of the road (including
uncertainty) using the available observations from the onboard
sensors. More specifically, we want to recursively calculate the
posterior density of the road state, p(r
k
|z
1:k
),wherez
1:k
is the
set of all observations up to the current time index k.
III. R
OAD MODEL
We define and motivate our proposed model of the road
in Section III-A, derive approximations to make the model
suitable in a filtering framework in Section III-B and finally
compare our approximation with the commonly used third-
degree polynomial model in Section III-C.
A. Exact Road Model
Roads are typically built in a manner which ensures a smooth
ride for the road users. Among other things, there should be
no abrupt changes in the road curvature. To accommodate this,
it is common to construct roads where straight sections are
connected with constant curvature segments using a transition
curve, i.e., a curve with linearly changing curvature [26]. Our
proposed model is based on this notion.
In the most general form, the 2D geometry of the road can
be described using a 2-dimensional parametric curve c
r
(s)
expressed in arc length s (distance along the road), as
c
r
(s)=
x
r
(s)
y
r
(s)
(4)
where (x
r
(s),y
r
(s)) is the position of the road at arc length s
in the local coordinate system. The parameters used to describe
c
r
(·) are collected in the road state r
k
. That is, if we know r
k
we also know the shape of the road. Below, we will introduce
how we propose to model (4) and consequently how we choose
to parameterize the road state.
We propose to model the road using connected segments
fixed to the road. Fixing the model to the road rather than
to the vehicle, which is a common modeling choice, allows
more efficient use of our observations. As the road model in
large parts is static rather than dynamically changing with the
movement of the host vehicle, there is no need to add process
noise in order to account for changes in the road.
Each segment in our model is described using a paramet-
ric curve (clothoid) of length L that has a linearly changing
curvature as a function of s. The curvature of the ith-segment,
denoted κ
i
r
(s), is thus expressed as
κ
i
r
(s)=κ
i
0
+ κ
i
1
s (5)
where κ
i
0
is the initial curvature of the segment and κ
i
1
is its
curvature change rate. As a consequence of (5), the heading of
the road in each segment, ϕ
i
r
(s), is described as
ϕ
i
r
(s)=ϕ
i
0
+ κ
i
0
s +
κ
i
1
2
s
2
(6)
where ϕ
i
0
is the initial heading of the road at the start of the ith
segment. From (6) we can finally describe the geometry of the
ith segment using the following integral
x
i
r
(s)
y
i
r
(s)
=
x
i
0
y
i
0
+
s
0
cos
ϕ
i
r
(t)
sin (ϕ
i
r
(t))
dt (7)
where (x
i
0
,y
i
0
) are the initial coordinates of the ith segment.
Using (7) we can describe the geometry of each segment in
the road model. In order for the segments to align smoothly, the
segments should be connected such that the complete road has
G
2
-continuity (2nd order geometric), i.e., the position, heading
and curvature of two connected segments should be equal at
the intersection. This is ensured by introducing the following
constraints on the initial conditions,
κ
i
0
= κ
i−1
0
+ κ
i−1
1
L (8)
ϕ
i
0
= ϕ
i−1
0
+ κ
i−1
0
L + κ
i−1
1
L
2
/2(9)
x
i
0
= x
i−1
r
(L) (10)
y
i
0
= y
i−1
r
(L). (11)