This is my "faces" Java applet (version of May 1, 2008). An explanation
is below.
This applet allows the user to draw an image of their choice, and then
have the computer attempt to find either "faces" (i.e., two eyes and
a nose), or "blobs" (i.e., simple oval shapes) of concentrated dots on
the image. An explanation of the controls is as follows:
- Click on the image itself: draw image dots (one
dot at a time)
- SPRINKLE DOTS: place 100 image dots uniformly at random
- SEARCH ONCE: perform a Monte Carlo search for a blob,
clearing any previous searches
- SEARCH AGAIN: perform a search for a blob, without
clearing previous searches
- CLEAR SEARCH: erase any previous searches
- DUMP DATA: dump the current image data to the Java
virtual console (for testing purposes)
- RESTORE DATA: read in a particular test image,
which consists of a simple face-like image near the center, plus a few
random dots. (More random dots can then be added by clicking on
"SPRINKLE DOTS".)
- BLOB / FACE: select whether to search for simple
blobs (ovals), or faces (two eyes and a nose)
For now the Monte Carlo algorithm is very basic, but I plan to improve
and expand it in the months ahead. I also plan to allow for importing
external images (e.g. photographs) rather than just drawing them.
Note that the algorithm does not "cheat" by making use of the order in
which the dots were created, nor which dots were created by the user and
which ones at random. Rather, it makes use of the final image array
and nothing more.
My interest in computer vision is quite recent, and was inspired partially
by a talk by Yali Amit and
meeting Sven Dickinson.
I still have lots to learn, so hopefully my algorithms will improve
with time.
[Jeffrey Rosenthal /
contact me /
Return to my Vision Page /
Applets Page]