the Project

After being accepted to SPE, Kevin Wayne told us to start brainstorming project ideas. I personally am interested in animation, so my first big idea was to create a short animated film. However, my idea included the process of not only programming an image animator but drawing scene after scene after scene. After all, I intended to make a "real" animated short. This obviously was a little too amibitious and not entirely CS for six weeks, so the idea was discarded. It was proposed to me, by Don Sheehy, to program a collage creator, thereby combining art, straightforward programming, and AI. This was thought by my advisors to also be a bit too ambitious as it included research on the ever elusive answer to the question "what is art?" and the incorporation of perhaps several languages. We shaved the idea down to a "simple" image mosaic, one method for which has been patented by Robert Silvers, whose first book Photomosaics is a coffee table or dentist office must-have. We decided I would program in C (sometimes C++) and use the C image library OpenGL as it would be better preparation for my coming years as a CS major here at Princeton.

The image/photo mosaic/montage/tapestry (choose a combination of any two) is not new to Princeton's CS department. A similar project was the independent work of Marisa Range '98. Her program estimated a tile arrangement for a target image which could then be manually adjusted by the user. It also used a form of the "overlay" feature, referred to (and utilized) by James Wang and Yuval Grill of Harvard University as a "cheat." Once the tiles were placed, Range's program adjusted luminosity to make the mosaic more accurate instead of relying entirely on color matching. After discovering this facet of Range's program, I moved on to other reading material, as this was not my intent.

Return to "Title" page


the Project | the Algorithm | the Process and Program | the Results | the Flaws | the Unfinished | the Art

Code Snippets | Sources | email me