|
The stereo vision part of the CARSENSE project
was designed with the following points in mind:
-
Obstacle detection in order to assure enhanced safety
for the driver, but no autonomous driving for the time being
-
Real-time execution for slow to moderate speeds
-
Parallelizable program architecture (in case multiple
processors can be attributed to the stereo vision part of the vehicle control)
-
Preferably independent from the other sensors of the
car, in order to deliver independent data to the data fusion algorithms.
This page describes the progress of the work until the end
of the project (december 2002).
 |
In the first phase of the work a simple speed-enhanced
disparity map algorithms was tested (adapted from Gregoire Malandain -
greg@sophia.inria.fr ). |
| To gain speed we reused a code of wavelet decomposition
the author wrote for another project (Georges Gyory, georges.gyory@inria.fr
), based on a publication of Lewis and Knowles about how to implement the
coding in integer arithmetic. |
 |
Image-by-image disparity maps being unsatisfactory both
in terms of speed and in producing misfits, the author's attention
turned to predicting the next disparity map from previous disparity maps
and velocity/steering data.
 |
First, enrolling a high school student (Mr Fabien Robert)
on a stage at the INRIA, we tried a linear deformation model with an estimated
expansion value (~ speed) and vanishing point position (~ steering
angle). The estimation process seemed to hold water (the student found
parameter values that seemed to work for one particular sequence) but the
linear expansion model was unsatisfactory. |
| In the next stage the author designed and implemented
a distance-dependent expansion model which looks satisfactory for prediction
but has yet to be honed before we can judge the stability of the estimation
process. |
 |
As the dense disparity map approach couldn't be accelerated
and kept simple as I wished, I tried another approach
 |
The skewed left and right images are matched on two road
surface points. This will eliminate all the road surface in the difference
image (except for errors due to imprecise matching). In the next step we
keep the points of contrast from the unmatched area of the image and look
for disparity values for these points. The points of contrast are grouped
by their horizontal position and disparity value |
| A Hough transform is used to detect lane markings (and
as a byproduct points on the road surface). The center of the camera-road
projection can be displaced to correct for the yaw angle of the car |
 |
 |
In the final stage a dependency between the Shift and
Slant values used to superpose the right and left images is exploited to
estimate just one parameter for the exact superposition. |
The method is slightly sensible to non-horizontal images
and non-level roads.
The program may easily be transformed to use multiple
CPUs: the expanded disparity maps and the "self-contained" disparity map
algorithm can all use independent units from the one correcting the disparity
map estimate.
On a Macintosh G4/450 approximately 8-10 images pairs
/ second can be analyzed and this speed can be enhanced by further optimization
as well as by the use of a gyroscope's output data.
|
|