Author: Nirshal Chandra Sekar

Profile: https://nirshalchandrasekar.github.io

Image Manipulation

This assignment implements basic image processing methods. I explored various filters and techniques for manipulating images. Understanding the underlying math was tricky, but learning and implementing these techniques proved rewarding.

The code for the implemented methods can be downloaded by clicking the file below 👇

code.zip

Brighten Image

Original Image

Original Image

Brightened Image

Brightened Image

./image -input samples/cube.jpg -brightness 2.0 -output results/brightness_cube.jpg

Extract Color Channel

Original Image

Original Image

Blue Channel

Blue Channel

./image -input samples/cube.jpg -extractChannel 2 -output results/blue_cube.jpg

Crop Image

Original Image

Original Image

Cropped Image (Image enlarged for visualization)

Cropped Image (Image enlarged for visualization)

./image -input samples/cube.jpg -crop 177 79 450 337 -output results/cropped_cube.jpg

Quantize Image

Original Image (8 bits)

Original Image (8 bits)

Quantized Image (2 bits)

Quantized Image (2 bits)

./image -input samples/cube.jpg -quantize 2 -output results/2_bit_cube.jpg

Noisy Image

Original Image

Original Image

Image after adding gaussian noise

Image after adding gaussian noise