Self Driving Cars (10) Projects
About
Here there are all of the projects I’ve worked on during the Udacity’s Self Driving Car Engineer Nanodegree program.
Term 1
Finding Lane Lines
I have detected highway lane lines on a video stream — used OpenCV image analysis techniques to identify lane lines, including Hough Transforms and Canny edge detection.
Traffic Sign Classifier
Built and trained a deep neural network to classify traffic signs, using TensorFlow. Experimented with different network architectures. Performed image pre-processing and validation to guard against overfitting.
Behavioral Cloning
It is built and trained a convolutional neural network for end-to-end driving in a simulator, using TensorFlow and Keras. Used optimization techniques such as regularization and dropout to generalize the neural network for driving on multiple tracks.
Advance Lane Finding
Built an advanced lane-finding algorithm using distortion correction, image rectification, color transforms, and gradient thresholding. Identified lane curvature and vehicle displacement, Overcame environmental challenges such as shadows and pavement changes.
Vehicle Detection And Tracking
Created a vehicle detection and tracking pipeline with OpenCV, a histogram of oriented gradients (HOG), and support vector machines (SVM). Optimized and evaluated the model on video data from an automotive camera taken during highway driving.
Term 2
Extended Kalman Filter
Implemented an Extended Kalman Filter algorithm in C++ capable of tracking a pedestrian’s motion in two dimensions.
Unscented Kalman Filter
Implemented an Unscented Kalman Filter algorithm in C++ capable of accurately and performantly tracking a turning object.
Kidnapped Vehicle
I have implemented a two-dimensional particle filter in C++ capable of localizing a vehicle within desired accuracy and time.
PID Controller
I have implemented a PID controller in C++ to maneuver a vehicle around a track.
Model Predictive Control
I have implemented Model Predictive Control to drive a vehicle around a track even with additional latency between commands.