Walsh Hadamard transform - Image Compression.

A random image compressed with the WHT.

Basic Image Compression

An early application of the fast Walsh Hadamard transform (WHT) was for image compression. It was used on a Mariner spacecraft in 1969, to broadcast pictures back to earth.

The Walsh Hadamard transform, unlike the FFT, is not bandwidth limited.

One consequence is there is no need to use a 2-D WHT for image compression as is necessary with the FFT. 

Another consequence is more blocky artifacts than with the FFT.

There is some elementary image compression code here:

https://editor.p5js.org/siobhan.491/sketches/BQcmEs9GM

8-Point WHT


The WHT when used for image compression examines the image for certain square wave like patterns and extracts those of highest magnitued.
The WHT is self-inverse. To decompress you simply run those high magitude values through the WHT again.

Improved Compression

The intermediate calculations of the fast WHT algorithm are quite wavelet like and can also advantageously be used for image compression. Especially as all parts of the WHT algorithm conserve energy (vector magnitued) when adjusted by a constant value. 

This allows you to find where image energy is most focused in the intermediate calculations. And compress using that knowledge.

Reference:

https://www.kdnuggets.com/2021/07/wht-simpler-fast-fourier-transform-fft.html


Comments

Popular posts from this blog

2 Siding ReLU via Forward Projections

Switch Net

Artificial Neural Networks