3.03k likes | 8.18k Views
Lane Detection. Kashif J. Chowdhry ECE 172A Fall ‘08. Motivation. Lane Departure Warning System Lane Specific GPS Advanced Cruise Control/Autonomous Driving Traffic Analysis. Objective. Robustly detect a single lane boundary set from a monocular video feed in real time
E N D
Lane Detection Kashif J. Chowdhry ECE 172A Fall ‘08
Motivation • Lane Departure Warning System • Lane Specific GPS • Advanced Cruise Control/Autonomous Driving • Traffic Analysis
Objective • Robustly detect a single lane boundary set from a monocular video feed in real time • Track car position relative to lanes, departure, entry, etc.
Completed Objectives • Detected a single lane boundary set from a monocular • Not robust • Lacks steerable filters as described in Trivedi article • No feedback, boundary conditions are hard coded • Not real time • Approximately 2-3 FPS
Completed Objectives • Detected a single lane boundary set from a monocular • Acceptable detection rate under good lighting conditions • Directional information may be extracted from Hough lines (theta: direction of travel)
Approach: Raw Video Editing • Grayscale Space • Thresholding • Focus on white painted lane markers • HSV Space (Ch 1, Ch 2) • Image Subtraction • Remove noise from road and surrounding areas • Color Segmentation • Focus on yellow painted lane markers
Approach: Morphology • Dilation/Erosion (Closing) • Dilate several times before eroding • Maintains line connectivity for better Hough Transformation • Region Clustering • Some noise may eventually get through • Cut blobs out that do not match preferred target
Approach: Hough Transform • Hough Stats Analysis • Gather statistical data from points • Peaks • Determine how many peaks to detect • Line Thresholding • Cut out lines that don’t make sense
Full Example • Use Matlab
Future Improvements • Steerability • Boundary conditions change with road conditions, lighting, shadows, etc. • Recode with Open CV • Processes faster, more robust, and portable • Port to Atmel Microprocessor via Open CV • Implement lane detection as discrete component add-on for vehicles
Hindsight • Working Independently • Don’t do it if it’s your first time on a new project • Implement Ideas Incrementally • Saves time and decreases errors • Use High Resolution Video • 240x352 resolution with half of video on road • Comment While Coding, Not After • Easier to go back and understand the program
Random Information: • Cut off top half of video for processing • Easier to process, faster process time • Wasn’t able to get the lines painted on the image for output video
Q & A: • Feel free to ask questions or make comments