Lossy Image Compression

March 15, 2016

For COMP 40, Machine Learning and Assembly Language, we are taking a deep dive down to the metal with the C programming language. Lots of people have said its the hardest class at Tufts; these same people say that its the best class they have taken. I can see both sides of the story, as I am learning a lot while also meeting great new people in the struggles to complete projects on time.

The first third of the semester consisted of familiarizing myself with C on a deep level, and finally fully understanding the implementations behind some of the abstractions that C++ provides for programmers (for example, how a class in C is actually just implemented as an incomplete structure in C). At each step in the process, we built a tiny piece of our most recent project. The project involved compressing PNM image files to a format 3 times smaller, by grouping pixels together, using component video representation, and performing matrix calculations on sets of 4 pixels. I worked alongside a partner to build this project, and it turned out to be pretty cool.

The code is not on Github, because of plagiarism concerns, but if you are interested in seeing the code, simply contact me and I can share it with you.

Status: complete, contact me for the code.

Return to projects