January 28, 2009

Obama poster in RGB space

This is a visualization of the color distribution in the Barack Obama HOPE poster.

I tried RGB space projection a bunch of different ways. At first I went with metaballs. Blender has a native metaball type, but it didn't like adding many thousands of points to it. The performance hit of my data size multiplied by my learning curve was slowing down my fun, so I moved on.

When I tried out my own metaballs in VPython I realized that influence wasn't really what I wanted to model ... I wanted to expose the scattering of rare colors as well as the magnitude of common colors. So I set opacity inversely proportional to frequency, and size = frequency. I like this much better.

Images that started out digitally, like this one, have quite different color distributions than photographs. I wonder how different kinds of image compression affect this. It might be neat to repeatedly re- and de-compress an image and animate the effect this has on color distribution.

Color representation is super-interesting. A 3d representation like this one feels more correct to me than a 2d histogram, but color physically is a scalar value: the frequency of the light. I wonder why there's no frequency representation among the other conventional color models: RGB, HSV, CMYK ... I suppose your eye rarely receives light at a specific frequency without many other similar colors clustered all around it.