- By: Mehmet Yilmaz
- Simple lane detection done though classical Computer Vision methods. With a combination of AOI, Thresholding, Canny line detection, HoughLinesP, & point clustering; the detection of the left and right lane of the driving car in the video (point of view) is achieved.
- This method is NOT PERFECT as it really only works best if the video data is clean, there are no objects/cars in the AOI, and the road is not so broken down. To learn more about this method's imperfections, please check out the "Key Bugs & Limitations" section of this README.
- Dispite it's shortcomings, this method does remove most of the noise in a frame and has the protentional of being a more efficient lane detection system.
- Implement more advance methods using Convolutional Neural Networks (CNN).
- Find other, better, methods for isolating lanes. Such as HSV thresholding.
- Apply object detection for detecting cars and none road-like objects. In doing so, those objects can be blurred or removed which would remove more noise from a frame.
-
A big limitation with this method is that the left and right lanes, two lanes total, of the driving vehicle can potentially be detected, limiting what the code can provide to the car overall.
-
Big bugs found with this current method can be seen and explained though Figure 1:
-
Advanced lane detection technique for structural highway based on computer vision algorithm
-
Real-Time Lane Departure Detection Based on Extended Edge-Linking Algorithm
-
Due to many driving car footages being too long and/or having too high of a resolution, I had to trim/clip them into a smaller length as well as a lower resolution. The driving footage included in this repo is a clip/segment from toronto_way.
-
(YouTube) Self Driving Car Complete Dataset: [link]
-
Clips Used For This Project:
-
The following functions where provided to me from the class CSCI437 (Colorado School of Mines) during the Fall 2020 semester:
get_xy() create_named_window()
- These functions were modified for this project. Some of these functions are no longer in use but they can be found in this repo's git history so I wanted to include this credit.