Filters Examples Publications
Filters Examples Publications
» Shared Memory Interface and Autonomous lane follwing (P. Ruud, A. Boeing) » Lane Detection (A. Boeing, S. Hawe) » Automobile Identification (A. Boeing, S. Hawe) » Stero Vision Distance Estimation (S. Hawe)

Shared Memory Interface and Autonomous lane follwing (P. Ruud, A. Boeing)

This is an example of using the shared memory interface to connect ImprovCV to an Automotive Simulator.

Simulation is a common prototyping technique for many automotive applications. ImprovCV can read from a shared memory location to perform image processing on other applications. In this example the lane detector is used to identify lanes, and the central lane and its midpoint are calculated. This data is fed into 4 different controllers (On/Off,P,PID,Fuzzy) and the simulated vehicle is driven to the central lane position. This demonstrates closed loop control with ImprovCV.

^ top

Lane Detection (A. Boeing, S. Hawe)

This is an example of a simple hough-transform based lane tracking application.

Lane detection is an essential component of many intelligent vehicle applications, including Lane Following (LF), Lane Keeping Assistance (LKA), Lane Departure Warning (LDW), lateral control, Intelligent Cruise Control (ICC), Collision Warning (CW) and eventually autonomous vehicle guidance. The lane detection procedure can approximate the position and orientation of the vehicle within the lane, and can also provide a reference system for locating other vehicles or obstacles in the path of the one viewing the scene.

The lane detection example uses the following filters:

  1. The image is converted to greyscale.
  2. The image is then clipped to remove the image above the horizon, and the image near the car's bonnet. (The horizon can be automatically detected using the "sky" filter)
  3. Features are detected in the image using a feature detection filter (eg: a canny operator, sobel, absolute differences, etc.)
  4. The hough transform is applied to find lines in the image.
  5. Lines are selectivly filtered according to their slopes.
  6. Lines detected in multiple frames are clustered and if found to be reoccuring are classified as lane markings.

^ top

Automobile Identification (A. Boeing, S. Hawe)

This example identifies vehicles from a monocular image using optical flow and edge detection. The cars, once detected, will be followed in consecutive images by a tracking system using a template matching technique. The procedure is done in four steps:

  1. Optical flow estimation
  2. Optical flow clustering, resulting clusters are candidate cars
  3. Verification of car candidates by examining their shape and a correlation with predefined templates
  4. Tracking of cars with templates gained from the previous step

^ top

Stero Vision Distance Estimation (S. Hawe)

This example demonstrates stereo vision functionality.

As the distance information is very important for driver assistance, for example to warn the driver of possible collision, a second camera is often used. Initialy the cameras fundamental matrix is calculated using RANSAC. The images are then rectified, and a correspondence search is performed and the distance is found using the similar triangles theorem.

Three different methods for analyzing stereo images in order to find correspondences are shown. Right, the distances estimated to a car, plotted on the car rear.