The aim of this project is to develop and implement a Computer Vision based algorithm such that:
1. All visible lane boundaries are detected for urban/highway roads under close to idle weather conditions
Dependencies:
1. skimage
2. OpenCV >= 2.4.6
3. numpy
Code Files:
1. GenerateBEV.py - Code from KITTI Road Dataset to obtain IPM view of an Image using a calibrated camera.
2. Lane_Detection.py - Detects multiple Lanes taking the IPM image as input.
3. Inverse_Perspective_Mapping.py - Generic code for obtaining the BEV of an image. Calculates the homography matrix by using the extrinc and intrinsic camera parameters.
To Do:
For detecting Curved Lanes - Curve fitting using Ransac
Process Pipeline:
Original Image | Input IPM Image | Filtered IPM Image | Thresholded Image | Binary Image After Selecting ROI | Initial Guess for Ransac | Lane Detected Image After Ransac and Eliminating False Lanes |
---|---|---|---|---|---|---|
Lane Detection for Test Images:
Orginal Image | Input IPM Image (KITTI) | IPM Image After Lane Detection |
---|---|---|
Original Image (ROMA) | Input Approx IPM Image (Roma) | IPM Image After Lane Detection |
---|---|---|