- Challenge: learn the foundations of machine learning
- Actions:
- concepts: linear regression, logistic regression, regularisation, neural networks, support vector machines, dimensionality reduction, principal component analysis, k-means clustering, anomaly detection, recommender systems, large scale machine learning
- tools: Matlab / Octave
- Results: https://www.coursera.org/account/accomplishments/certificate/WLHZZ6TPVVM2
- Challenge: train a convolution neural network to classify traffic signs images using the German Traffic Sign Data set; with the trained model classify traffic signs from the web
- Actions:
- explore, summarise and visualise the data set
- design, train and test a model architecture
- use the model to make predictions on new images
- analyse the softmax probabilities of the new images
- Results: https://github.com/FlorinGh/SelfDrivingCar-ND-pr2-Traffic-Signs-Classifier
- Challenge: train a convolution neural network to clone driving behaviour using training sets recorded in realistic video games
- Actions:
- use the simulator to collect data of good driving behaviour
- build a convolution neural network in Keras that predicts steering angles from images
- train and validate the model with a training and validation set
- test that the model successfully drives around track without leaving the road
- Results: https://github.com/FlorinGh/SelfDrivingCar-ND-pr3-Behavioral-Cloning
- Challenge: write a software pipeline to identify the lane boundaries in a video taken while driving on a motorway
- Actions:
- compute the camera calibration matrix and distortion coefficients given a set of chessboard images.
- apply a distortion correction on the video frames and save a corrected video
- use colour transforms and gradients to create a threshold binary image
- apply a perspective transform to rectify binary image ("birds-eye view")
- detect lane pixels and fit to find the lane boundary
- determine the curvature of the lane and vehicle position with respect to centre of curvature
- warp the detected lane boundaries back onto the original perspective
- output visual display of the lane boundaries and numerical estimation of lane curvature and vehicle position.
- Results: https://github.com/FlorinGh/SelfDrivingCar-ND-pr4-Advanced-Lane-Lines
- Challenge: write a software pipeline to detect vehicles in a video taken while driving on a motorway
- Actions:
- extract features from images using HOG (histogram of oriented gradients)
- separate the images in train/test and train an SVM (support vector machine) classifier
- implement a sliding window search and classify each window as vehicle or non-vehicle
- output a video with the detected vehicles positions drawn as bounding boxes
- Results: https://github.com/FlorinGh/SelfDrivingCar-ND-pr5-Vehicle-Detection
- Challenge: learn and practice the nuts and bolts of manipulating, processing, cleaning and crunching data in Python
- Actions:
- Learning Pandas Library by Matt Harrison [self paced study]
- Python for Data Analysis by Wes McKinnney [self paced study]
- tools: numpy, pandas, matplotlib, seaborn, Jupyter notebooks, scipy, scikit-learn
- Results:
- Challenge: learn and practice machine learning and computer vision
- Actions:
- Introduction to Machine Learning by Andreas Muller [self paced study]
- Hands-on Machine Learning with scikit-learn and TensorFlow by Aurelien Geron [self paced study]
- tools: scikit-learn, TensorFlow, keras, openCV, GPU
- Results:
- Challenge: use computing capabilities of Python to solve the nonlinear coupled partial derivative equations that govern the dynamics of fluids, the Navier-Stokes equations
- Actions:
- creating implicit numerical schemes to solve ever increasing difficult components of the NS equations: linear convection, nonlinear convection, diffusion, Burgers' equation, Laplace equation, Poisson equation
- applying the full final code on two classical problems: cavity flow and channel flow
- Results: https://github.com/FlorinGh/12-steps-to-navier-stokes