Miscellaneous projects
Early experimentation with graphics, user interfaces and natural language processing.
Lens Flare tool for Adobe Illustrator
PDForum: Collaborative reviewing for PDF documents
Developed as a plugin for Adobe Illustrator 10, and still shipping as part of Adobe CS, the lens flare tool is an interface that allows user to generate and manipulate generate lens flare vector shapes that are programmatically generated in runtime using various color palettes and blending modes.
 
PDForum is a plugin for Adobe Acrobat for managing collaborative annotations on PDF documents. The tool was developed as part of the People, papers and computers course. The approach is to support the qualities of a physical paper reviewing environment into an interface that allows users to enter annotations, rate paragraphs based on previous annotations by other colleagues, and perform basic functions like searching and sorting.
Shortly after this prototype was done, Adobe released Acrobat 6 with a very similar set of features.
GQA: Google Question Answering system
GQA is a natural language processing tool that allows users to submit online queries to Google and receive results in a natural language form. Unlike other online question answering systems, no previously stored database of questions and answers exists for GQA. The system parses the users' question, analyzes it into syntax trees, applies grammar transformation rule, then generate tens of parallel queries to Google search engine using Google API. When the system receives query results, it applies cross document summarization to extract and summarize the answers.
 
My role in the project was designing and implementing the query generation module.
 
Sample question: How tall is the giraffe?
 
A sample query result page contains the following result
The query generation engine parses the question, constructs one or more syntax trees for the question, applies grammar transformation rules to convert “how tall” into “the height of”. the query submitted to Google is “the height of the giraffe is”
 
 
 
PhotoCutter: A Distributed Image Mosaics Generator
PhotoCutter is an image mosaics generation tool that uses a grid environment to reduce the time necessary for the operation by order of magnitudes. The engine usesDataCuttermiddleware for processing large datasets.
The photo above contains 2500 tiles generates in 35 seconds, compared to over 20 minutes on a single machine using a commercial photo mosaics tool.