How to reduce size of 2D image ?
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have to compress 2D NxN image by taking the fourier transform first, then in the frequency domain I have used high pass filtering and took the inverse fourier transform back. This method has worked in (.tiff,.jpg .png)and the size has reduced. I want to make the method work also for .ppm format but it does not work. I did not understand why it did not work and how can I make it work? Thank you.
3 comentarios
Walter Roberson
el 28 de Nov. de 2012
What datatype do you end up with?
Note: "image" is a built-in MATLAB graphics routine; you should avoid calling a variable by the same name.
Respuestas (1)
Image Analyst
el 28 de Nov. de 2012
Your routine did no compression at all. The compression was done by the saving routine because of the format you chose. When you got rid of high frequencies, it made the saving routine able to compress more IF the format is to be compressed at all. Here's what Wikipedia says about PPM:
"The PPM format is not compressed, and thus requires more space and bandwidth than a compressed format would require. For example, the above 192x128 PNG image has a file size of 166 bytes. When converted to a 192x128 PPM image, the file size is 73,848 bytes. The PPM format is generally an intermediate format used for image work before converting to a more efficient format, for example the PNG (Portable Network Graphics) format, without any loss of information in the intermediate step."
That is why you didn't see any change. Why do you want that format anyway? I see the world moving towards PNG, and for good reason - it's a lossless compressed image that virtually every program can read.
0 comentarios
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!