Projects
Projects on GitHub
An extended Kalman Filter is used to predict the position and movement of an object in motion with noisy LiDAR and RADAR measurements. The Kalman Filter algorithm is implemented for each type of measurements with regards to their different measurement values. The algorithm was implemented in C++ to maximize the program’s performance. It is then evaluated by measuring the root mean square error.
A neural network model is trained to adjust the vehicle’s directions and acceleration using a training dataset and a validation dataset from a driving simulator. Using Keras, the model architecture was built from an adaptation of a publication by NVIDIA’s Autonomous Driving Team, and the trained model could mimic the driving behavior from the dataset to navigate safely on the simulated road.
Using the LeNet model architecture for the neural network model, implemented using TensorFlow, a dataset of traffic sign images are used to train the model for classifying different types of traffic signs. With 40 training epochs, the convolutional neural network yielded a validation accuracy and a test accuracy of 94.2% and 93.1%, respectively.
The lane detection pipeline is primarily a computer vision-focused pipeline using OpenCV. It involves camera calibration, to eliminate any camera-induced distortions, and using color manipulation and perspective transformation to find the polynomials that produces lines best fit for the lane lines in the image. The detected area of lane is then projected back onto the original image/video. With testing on real video footages, the pipeline is reasonably robust.
A simple computer-vision approach is used to implement the lane detection pipeline. The pipeline detects a pair of straight lines that resembles the lane lines in the road image, then projects the lines onto the original image.
Other projects
The mobile application was written with Ionic (Angular), and it provides users the information of train routes between the entered departure and destination stations. The data of train stations and rail lines are stored as MongoDB documents, and Flask is used to serve as an API for the application to get the correct routes, data of requested stations, and creating new stations from the application interface.