Developed a terminal/TUI based graphing calculator in C++ using the ncurses library. Allows the user to enter a number of mathematical functions, changing variables, domain, amount of samples points and more. Then displays an ASCII art style graph to the user, as well as allows the user to save a whitespace separated file containing the values where the function was calculated, for use in other apps.
Tech Stack: C++ 20, ncurses, CMake
Worked to develop a barebones fluid simulator in python implementing the lattice boltzmann method. I want to further expand this in the future to be written in C++, and allow for custom shapes, focusing the code on its performance.
Developed an image optomization program through the use of the genetic algorithm to balance file size and peak signal-to-noise ratio, ensuring images keep quality through different compression techniques. This helped me gain a better understanding of different implementations of AI based solutions. The image seen below has the original on the left and compressed on the right. The algorithm ran with a population of 1000 over 200 generations, and compressed the file size from 10.5 MB to 2.4 MB.
Working with the underwater autonomous vehicle club has given me a chance to explore new areas of development. These have included computer vision, simulation, object recognition, and machine learning.
Tech Stack: ROS2, Python, linux
github