that the two boundaries of the lane are parallel. Af-
ter intensity bump detection, we calculate first deriva-
tive of left and right boundary for each lane-marking
candidate: {dx
l
,dy
l
,dx
r
,dy
r
}. Then directions of left
and right boundary are calculated as: v
l
= R
l
· [x
l
,y
l
]
T
and v
r
= R
r
· [x
r
,y
r
]
T
. Then the lane-marking candi-
dates are filtered using the rule as: v
l
T
· v
r
> τ, where
R
l
and R
r
are 2x2 matrix that to rotate edge orienta-
tions to boundary directions, τ is the threshold for the
boundary correlation.
3 LANE DETECTION METHOD
After the lane-marking detection, the detected results
are grouped to form meaningful structures such as
lines or curves. The popular approaches use poly-
nomial models with RANSAC as model fitting algo-
rithm (Kim, 2008; Wang and Shen, 2004; Lopez et al.,
2005). We follow this framework and present a new
model fitting algorithm to achieve lane detection ef-
ficiently. To extend the generalization of curve rep-
resentation, the lane is represented by multiple lane
segments. To represent one lane segment, we follow
Kim’s method (Kim, 2008) to use the cubic spline
model.
3.1 Guided RANSAC Algorithm
Conventionally, RANSAC method works on whole
sample space. For example, Kim’s method performs
lane fitting on the whole sample space (Kim, 2008).
Here in this paper, a novel method is presented to
fit the lane model in an iterative way. This method
is inspired by the CHEVP algorithm described in
(Wang and Shen, 2004). The CHEVP algorithm di-
vides the image into several horizontal sections and
lane segments are detected section by section. In-
stead of using explicit sections, we detect lane seg-
ments and elongate them recursively. The algorithm
is designed hierarchically as a main routine and a core
routine. The main routine scans all lane-markings se-
quentially. Once it finds an unvisited lane marking,
the core routine is activated to search a lane from a
starting lane-marking then iteratively search forward
to elongate the lane (see Figure 1). The core routine
mainly consists of two steps, a start search step and
an iterative search step. The start search step is to
find an initial lane segment. Once an initial lane seg-
ment is found successfully, the iterative search step is
activated to elongate the lane segment as long as pos-
sible. In the start search step, lane-markings which
located near the starting lane-marking are collected
as a search space. The initial lane segment is approx-
imated as a straight line. RANSAC is performed to
find the initial lane segment. In the iterative search
step, the lane-markings that close to the extrapolated
lane segment are gathered into a subset as the search
space. The idea is that lane markings located near the
extrapolated curve are more likely to lie on the lane.
It can be considered as a prediction of lane path. To
do the elongation, three control points are used during
the RANSAC fitting. One control point is randomly
sampled from the search space while the other two
are directly from the previous lane segment. There
are several advantages of this scheme. First, it avoids
the unexpected elongation since the curve should pass
through two control points of the previous lane seg-
ment. Second, the number of iterations during the
RANSAC can be reduced since the search space is
small and only one sample is drawn randomly.
Figure 1: Core routine of Guided RANSAC. Lane is elon-
gated step by step.
3.2 Lane Segment Aggregation
The Guided RANSAC algorithmattempts to detect all
lane segments. One possible case is that dashed lane
segments are detected separately. We try to aggre-
gate lane segments to form lanes. The lane segments
are aggregated using a method similar to hierarchical
clustering. Iteratively, two lane segments are merged
into one using a merging function. The Figure 2 illus-
trates the use of the merging function. It generates a
hypothesis by selecting three control points from two
lane segments. Then the consistency of tow lane seg-
ments are evaluated. Short lane segments are thresh-
old out by lane-marking support.
4 THEORETICAL ANALYSIS
The standard RANSAC algorithm mainly consists of
two steps: 1) hypothesis generation and 2) hypothe-
sis verification. The computational cost of standard
VISAPP 2010 - International Conference on Computer Vision Theory and Applications
458