Self-Driving Car
Overview
Following sections show videos for applications of computer vision and machine learning for self-driving cars.
Links to code can be find within the corresonponding sections if available.
Computer Vision
Finding Lane Lines
Simple python code for detecting lane lines of a road can be found here:
Simple Find Lane Lines
The Pipeline contains following steps:
1. Conversion to grayscale image
2. Masking (Reducing processed image to region of interest)
3. Removing noise using gaussian blur
4. Canny edge detection
5. Overpaint edges introduced by masking
6. Hough line detection
7. Process lines ( removing non lane lines )
8. Overlay the line image onto the original road image
Video for finding lane lines on a motorway:
Your browser does not support the video tag. Please try to download the video file by right-clicking and select "Download .." in
appearing window. Instead of using canny edge detection in step 4, skeletonizing could be performed on the image instead.
Possible improvements:
Add Equalizing of the gray-scale image as step 2b. After Removing noise using the gaussian blur a threshold via (cv2.adaptiveThreshold) might
make the lane detection more robust against brightness changes (daylight variations, shadows, etc.).
The resulting pipeline would be as follows:
1a. Using different color space HSV (Hue, Saturation, Value)
1b. Conversion to grayscale image
2a. Masking (Reducing processed image to region of interest)
2b. Equalized the grayscaled image (e.g. cv2.equalizeHist)
3a. Removing noise using gaussian blur
3b. Threshold (e.g. cv2.adaptiveThreshold)
4. Skeletonize (skimage.morphology.skeletonize)
5. Overpaint edges introduced by masking
6. Hough line detection
7. Process lines ( removing non lane lines )
8. Overlay the line image onto the original road image
Machine Learning
Vehicle Detection with machine Learning
A linear support vector machine is used as a classifier. The feature extraction is carried out by performing a Histogram of oriented
Gradients on a labeled training set of images. The classifier is then trained with the labeled HOG feature vectors.
Short Video:
Your browser does not support the video tag. Please try to download the video file by right-clicking and select "Download .." in
appearing window.
Long Video:
Your browser does not support the video tag. Please try to download the video file by right-clicking and select "Download .." in
appearing window.