Source Encoding for Image Compression at Transmitter and Source Decoding for Image Reconstruction at Receiver

Resource Overview

This MATLAB implementation demonstrates image compression via source encoding at the transmitter and image reconstruction through source decoding at the receiver, utilizing JPEG standard based on DCT transform. The project includes noise addition to test images followed by denoising, compression, and reconstruction to analyze compression performance. It explores downsampling and interpolation-based compression algorithms, with potential extensions from 8-bit/pixel grayscale to 24-bit/pixel color images or implementation of lossless compression techniques.

Detailed Documentation

In this project, we implement source encoding for image compression at the transmitter and source decoding for image reconstruction at the receiver using MATLAB programming. The core implementation employs JPEG compression standard based on Discrete Cosine Transform (DCT) as the primary encoding/decoding algorithm, where key functions include dct2() for forward transformation and idct2() for inverse transformation. To comprehensively evaluate compression performance, we add noise to test images using imnoise() function, then perform denoising operations before compression and reconstruction, analyzing results through metrics like PSNR and compression ratio. Additionally, we investigate alternative compression approaches using downsampling (imresize with reduction factors) and interpolation techniques (e.g., bilinear or cubic methods). The framework supports extension from 8-bit/pixel grayscale images to 24-bit/pixel color images by processing RGB channels separately, or can implement lossless compression algorithms such as Huffman coding or LZW compression. Through these experiments and algorithmic explorations, we gain deeper insights into image compression principles and methodology.