Skip to content

Code for the Udacity Self-Driving Car Engineer Nanodegree projects.

Notifications You must be signed in to change notification settings

wetoo-cando/sdcnd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Udacity Self-Driving Car Engineer Nanodegree projects

Index

In this project, a pipeline that finds lane lines on the road is developed. Computer Vision / image-processing techniques like Gaussian blurring, Canny edge detction and hough line extraction are applied for this purpose.

Overview

In this project, a Convolutional Neural Network leaning on the LeNet architecture is used to classify traffic signs.

Here a CNN model is employed for cloning human driving behavior. The developed model is able to successfully navigate both tracks in the Udacity simulator without driving the car off-track even once.

Overview

Advanced Computer Vision techniques are used in this project to detect and track lane-lines more robustly than in Term 1 - Project 1: Lane-Line Detection.

Camera calibration and distortion coefficients are extracted from calibration images and used to correct raw images before further processing.

Thresholding on color transformed images and that on gradients of the images is combined to create binary images. A perspective transform is applied to rectify the binary images to the "birds-eye view". Lane pixels are detected in the bird's-eye view and lines are fit to find the lane boundaries. The images are warped back to the original view from the camera.

Once the lane-lines are detected at the beginning, they are tracked over the subsequent frames by specifying a search window around the polynomial fit determined previously.

Overview

In this project, HOG features which capture object shape, and color features which capture object appearance, are used to detect and track vehicles over subsequent frames in a video. A linear SVM classifier is used on windows sliding over an input frame to classify the window as containing a car or not.

Overview

Tips and tricks

  • TensorFlow: Grow GPU memory as required by the program (otherwise cudnn errors!): Link to guthub issue
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
config.gpu_options.per_process_gpu_memory_fraction = 0.3
session = tf.Session(config=config, ...)