
Pareidoloop: Faces generated at random - ColinWright
http://iobound.com/pareidoloop/
======
lkozma
Nice idea, it might find some quirk of the face detector though, and exploit
that, instead of producing a truly face-like image.

On the other hand, I vaguely recall a talk by VS Ramachandran where he claimed
that in essence that's what Picasso and many others did also, i.e., you might
see a painting that objectively doesn't strongly resemble a face, but it hits
the right spots in your brain's face detector, so your brain says to itself
"now that's what I call a face". A bit like how colorful candy triggers "ripe
fruit - eat it!".

~~~
smackfu
Yes, it seems to produce things that look like the noise that is accidentally
marked as faces in current software.

Which could be kind of neat actually... you could train it to look for Jesus
for instance.

~~~
knieveltech
Or market facial recognition camo t-shirts, if you wanted to fuck with the
establishment.

~~~
cpeterso
Also known as any t-shirt with a person's face on it? ;)

~~~
BHSPitMonkey
A photo with a face on it is most often just creepy. A photo with some vector,
monotone noise like this webapp produces could look kind of cool.

------
dandelany
Really great project - would almost have convinced me that computers can
actually create art, if I didn't know there were a great coder behind it all
:)

One interesting observation - I turned up the output resolution without
changing the target fitness and started noticing that the (larger) results
didn't look nearly as much like faces to me. At first I thought there must be
a technical reason for this, until I realized that it was all psychological -
the smaller images hold less information, and therefore my brain has to try
harder to fill in the gaps, tricking me into believing that the low-res faces
have more detail than they actually do. To prove this to myself, I scaled down
the larger images and - sure enough - the (imagined) faces became much more
believable.

------
Dove
I think these faces are quite beautiful and evocative. So far, I've gotten a
sad old man, the west wind, a hound, a hag, and a young woman with flowing
hair.

~~~
dandelany
Yes, this is my favorite part - the emotion that can be projected onto these
random mishmashes of triangles is astounding! I've gotten a stoic old American
Indian chief, a scary demon baby, and spitting images of both Patrick McGoohan
and Fat Marlon Brando. The author should really store copies on the server and
add a gallery of some hand-picked favorites!

~~~
drostie
You could do it, but it's generated client-side, so I believe the server
doesn't have direct access to that. (I guess I am asking: is there a
communication layer I haven't noticed which transmits the "good enough" images
back to the server?)

------
pre
Cool, nice work.

Now do it with the automatic porn-filters rather than face recognition ;)

------
mumrah
I was hoping for eigen faces (<http://en.wikipedia.org/wiki/Eigenface>), but
this was cool nonetheless!

------
aero142
I feel like this is a very generalizable process. Using randomization and a
fitness metric to randomly generate and refine something. Seems like it should
have a name a few dozen thesis papers written about it. Anyone know?

Also, this seems to be a very clear simulation of how we think evolution and
natural selection work together. Fun.

~~~
biot
<http://en.wikipedia.org/wiki/Genetic_algorithm>

------
kandalf
Very cool. Reminds me of: <http://alteredqualia.com/visualization/evolve/>
<http://news.ycombinator.com/item?id=392036>

~~~
_delirium
That one's pretty neat too, although in that context (specific target image)
it seems like you could do it more directly than black-box optimization. The
problem could be posed as something like: given N (overlappable) polygons,
what is the way of coloring and arranging them that most closely matches the
target image? That should be directly specifiable in a mathematical-
optimization framework, and then you'd vary N to get different aesthetic
properties.

With the face example, black-box optimization might be the only practical
choice, though, since the face-detection component is probably not easy to
express in a nice mathematical form.

~~~
kandalf
This is touched on here:
[http://www.screamingduck.com/Article.php?ArticleID=46&Sh...](http://www.screamingduck.com/Article.php?ArticleID=46&Show=ABCE)

I agree it's interesting, if not very practical for anything.

------
vhf
Very nice project ! I was able to fork it to make the output directly usable
by imagemagick. My goal was to generate a lot of images, then crop them to get
only the "facial" part, and then stack them with overlay to obtain more human
faces.

See a sample here : <http://i.imgur.com/xmM6U.png>

and repo here : <https://github.com/vhf/pareidoloop/blob/master/README.md>

------
notjustanymike
He's not pretty, but we love him all the same.

------
gamzer
I wondered if the author really expected me to watch this for the rest of my
life. Then I switched from my mobile phone to my notebook and noticed a
"slight" speed-up.

------
tinco
Heh, neat :) Maybe use webworker to do it multithreaded? It really takes a
long while now :)

~~~
JTxt
yeah, I have several tabs going in chrome.

I would think the faces would tend to look similar, but that's not the case
for me so far.

It would be fun to set detection to certain ages and gender; also if a site
collected renderings.

------
tome
This reminds me of FaceMaker, which was excellent, but sadly doesn't seem to
exist any more. Here's a video though:

<http://www.youtube.com/watch?v=-RezhSLAijY>

------
draz
Anyone from DreamWorks (or any other studio)? Could this be used to generate
crowds of people in movies, or is it too inefficient?

~~~
mistercow
It would be way more efficient to build a face with parameterized measurements
(much like character-builders used in video games) and then randomly jitter
the parameters.

~~~
jeffbarr
I have been looking for a piece of open source code that would accept some
facial parameters and generate a 2D or 3D rendering of a face or a head.

The degree of flexibility found in, for example, Second Life would be awesome.

Any leads?

~~~
njs12345
This paper is relevant:
[http://www.cs.cmu.edu/~efros/courses/AP06/Papers/Blanz-
siggr...](http://www.cs.cmu.edu/~efros/courses/AP06/Papers/Blanz-
siggraph-99.pdf)

Of course, you need their database to make the algorithm work, but if you
emailed the authors they might be accomodating..

------
sabalaba
Super cool AI/CV mashup there---I've always loved watching GAs at work. We're
thinking of coming up with a bunch of cool demos like this to describe
different aspects of Computer Vision to those just starting to learn. For
example, visualizing Principal Component Analysis or training an SVM for image
classification.

------
wkral
A possible optimization worth trying with this project would be to generate
just half the face and then mirror it before running the facial detection
fitness function. Seeing as how your subject matter is generally symmetrical
the algorithm as it is now is spending a lot of time just finding symmetrical
images.

------
kintamanimatt
I think I got a cat: <http://imgur.com/DKKHH>

------
ricardobeat
Creepy:
[http://f.cl.ly/items/102e3T2M3A273u2V3u3E/Image%202012.07.20...](http://f.cl.ly/items/102e3T2M3A273u2V3u3E/Image%202012.07.20%2010:50:59%20PM.png)

~~~
darkstalker
Left it running for a while: <http://i.imgur.com/Nfn8P.png>

------
madethemcry
It really takes little time to get to default target fitness but anyway I like
the idea of searching for visual patterns e.g. faces in random data. Thanks
for that.

------
thyrsus
I've often wondered: are human faces more variable than most species, or are
human brains evolved to be particularly sensitive to those variations?

~~~
olalonde
Not only evolved but also trained I believe. From my experience, Chinese
people have a harder time distinguishing faces of foreigners and vice versa.

~~~
wahnfrieden
Yes, different races vary more distinctly on different facial features.

------
malkia
There is also AARON - <http://www.kurzweilcyberart.com/aaron/>

------
bashzor
Setting the size a bit bigger (the default is _really_ small I find), you
really need a lot of imagination to see a face in it.

