Image Blurring Program

Before

After

Description

A simple application that manipulates the per-pixel values of BMP files. It averages the value based on its neighboring pixel values. RGB channels are calculated independently.

Written in C and on a Linux-environment

BMP file structure manipulation with Multi-threading for each color channel

This program exposed me to the process of breaking down a specific file structure (Bitmaps in this case) and altering the image to produce a specific effect. By using multi-threading, each color channel was given its own thread which reduced the time required to iterate over a large matrix of color values several times. This project gave me experience in separating the workload of a program and having several time-intensive functions running concurrently in order to improve efficiency.