SVD Image Compression

Singular value decomposition (SVD) generalizes eigendecomposition to matrices that are not diagonalizable. Here, I use it as a dimensionality reduction technique in a similar way to principal component analysis (PCA).

I use the k first singular values from an image to compress the data necessary to store it. Displayed images are the result from using the first 160 singular values, corresponding to 67% of the image data, and the first 80 singular values, corresponding to 33% of the image data.

Jupyter Notebook