You are here

SVDCompress

This is an implementation of image compression in Java using the singular value decomposition. Basically, the idea is to take a very high-dimensional (high-rank) source image and approximate it by a much lower-dimensional (low-rank) image. So the higher dimensions are considered noise, roughly speaking. It's somewhat impressive that you can take this sort of 450-dimensional object, project it down into thirteen dimensions (second from the bottom), and still have something vaguely recognizable. Watch the animation!