Final undergraduate project
My project was focused on image segmentation for use in training semantic segmentation neural networks, ultimately for use in self-driving cars. I took two approaches. First, a purely heuristic approach (written in Matlab), which leveraged LiDAR data to form hierarchical depth clusters, from which objects of interest could be segmented. This approach was extended to incorporate a GUI. Second, a neural network approach (using Tensorflow) which first identified coarse bounding boxes around objects of interest and then refined the bounding boxes by hierarchical clustering of LiDAR data.Click here for a copy of my project.
Compressive Sensing (CS)
As part of my 4th year Digital Signal Processing course I elected to do self-proposed topic in Compressive Sensing (CS) - a means of allowing for sub-Nyquist sampling to effectively be performed. I took a mostly investigative approach, attempting to understand and implement CS. I implemented sub-Nyquist reconstruction in Python and MATLAB.Click here for a copy of my project.
Juggling counter
I like juggling. I wanted to make a program that counts the number of throws (and by implication catches) for me. Most approaches either use (a) a predefined ball colour (e.g. green) which is then filtered out from the rest of the image for tracking, or (b) a preset number of balls.
By using background image subtraction I was able to implement an approach that can count any number of balls of any colour. Sweet :)