OddThinking

A blog for odd things and odd thoughts.

Progressive JPEG Stunt

(This is a dead-end idea that I don’t plan to chase up, but I am recording for posterity, and perhaps to inspire others.)

Progressive JPEG is an image-compression format that is designed to have a low-quality image stored at the beginning of the file, and more detail/quality progressively added towards the end of the file. The goal is to enable a blurry image to be displayed by an image browser early before the whole image is available. The blurry image should be enough to get a strong idea of what the picture is about, so you can decided whether to wait for the full image to download.

My idea is to have fun with people by making the blurry image counter-indicate what the final image is.

For example, if you answer a quiz on a web-site, a big graphics image appears giving your result. The blurry outline might appear to say “INCORRECT” but the detail, once it is filled in, might obliterate the “IN”, leaving “CORRECT”.

Or perhaps a web-site appears to be downloading a NSFW image, but at the last minute it turns into a child-friendly picture of a pony galloping across a rainbow.

I simply don’t know enough about the JPEG standards to know whether this would be a challenging image hack, or whether (for example) it is possible to create a (bloated) JPEG file that progressively overwrites every single pixel of the initial blurry image, so it is easy to convert from any initial image to any final image.

It could have some fun applications, though.

Even if you don’t get it working in JPEG, it could become an animation in PowerPoint to get some cheap laughs during a presentation.


Comments

  1. Sounds like a cunning stunt, if ever there was one.

  2. Richard,

    I like the way you are thinking. An apparently NSFW picture evolves that into a circus trick would be a nice result.

    Another thought occurred to me. There are some visual illusions that, when viewed up close, appear to be a smiling face but when viewed from far away appear to be an angry face. The explanation I heard for the effect (short wavelengths versus long wavelengths) made no sense to me, but it may be a useful vein of research for this trick.

  3. Surely a non-looping gif would be the easiest?

Leave a comment

You must be logged in to post a comment.