eversince I have seen http://tinyurl.com/6ddzjh , I have always wanted to automate creation of such images. such an attempt is http://ideamonk.blogspot.com/2008/08/trying-to-dazzle.html
But I am wondering how to perfect it. Right now it's just a rand() doing the magic. But there is something more to the original art. It seems that "the edges have a nice particle effect, the size of squares vary according to either luminance or similarity of neighbor area... and there might be a lot more to watch out! Boxes don't overlap much in the original work, and smaller tiny boxes play very significant role in giving life to the guitar kid..."<p>So, fellow hackers please help this kid as to what he needs to know in image processing to be able to do the trick. Like how to detect uniform areas in an image... how to detect edges. For example if i have a photo of a shirt, I wish to detect where it is crumpled where it is plain. If I am able to do this, I will put big squares at plain areas and small ones at non uniform areas. I think that might reproduce the effect!
Thanks!
eversince I have seen <a href="http://tinyurl.com/6ddzjh" rel="nofollow">http://tinyurl.com/6ddzjh</a> , I have always wanted to automate creation of such images. such an attempt is <a href="http://ideamonk.blogspot.com/2008/08/trying-to-dazzle.html" rel="nofollow">http://ideamonk.blogspot.com/2008/08/trying-to-dazzle.html</a>
But I am wondering how to perfect it. Right now it's just a rand() doing the magic. But there is something more to the original art. It seems that "the edges have a nice particle effect, the size of squares vary according to either luminance or similarity of neighbor area... and there might be a lot more to watch out! Boxes don't overlap much in the original work, and smaller tiny boxes play very significant role in giving life to the guitar kid..."<p>So, fellow hackers please help this kid as to what he needs to know in image processing to be able to do the trick. Like how to detect uniform areas in an image... how to detect edges. For example if i have a photo of a shirt, I wish to detect where it is crumpled where it is plain. If I am able to do this, I will put big squares at plain areas and small ones at non uniform areas. I think that might reproduce the effect!
Thanks!
I'm curious, why aren't you trying to use the GIMP to do this? It can be scripted with Scheme/Script-Fu and Python, it seems that would be easier than using C++ and Allegro.<p>Cool stuff in any case :D
Split the picture into grids of 10x10. Take the color in that grid and find the average color of all the colors in there. Calculate the color distance to the box beside it. Do same for luminance.
It's been a while since my multimedia class (and I was never that good at it :D) but the effect is reminiscent of JPEG compression. Might be worth looking into that algorithm.