"A meek endeavor to the triumph" by Sampath Jayarathna

Thursday, December 09, 2010

Reading #30: Tahuti: A Geometrical Sketch Recognition System for UML Class Diagrams




              Tahuti, a multi-stroke sketch recognition environment for class diagrams in UML where users can sketch the diagrams on a tablet or white- board in the same way they would on paper and the sketches are interpreted by the computer. Proposed system differs from graffiti-based approaches to this task in that it allows users to drawn an object as they would with pen and paper. The system recognizes objects based on their geometrical properties by examining the line segments’ angles, slopes, and other properties, rather than requiring the user to draw the objects in a pre-defined manner. Recognizing the objects by their geometrical properties gives users the freedom to sketch and edit diagrams as they would naturally, while maintaining a high level of recognition accuracy. Proposed system uses a multi-layer framework for sketch recognition. The multi-layer framework allows the system to recognize multi-stroke objects by their geometrical properties. The stages of the multi-layer recognition framework are: 1) Preprocessing 2) Selection 3) Recognition 4) Identification. After each stroke is drawn, rudimentary processing is performed on the stroke, reducing the stroke to an ellipse or a series of line and curve segments. A collection of spatially and temporally close strokes is chosen, and the line segments contained in the collection of strokes are then recognized as either an editing command or a viewable object.

            During the recognition stage, all stroke collections are examined to see if a particular stroke collection could be interpreted as a viewable object or an editing command. During the identification stage, a final interpretation is chosen, and a collection of strokes is identified as a viewable object or an editing command. All possible interpretations found in the recognition stage from the stroke collections are presented to the identification stage. The identification stage selects the final interpretation based on the following rules. 


            Tahuti combines the sketching freedom provided by paper sketches and the processing power available in an interpreted diagram. The system is based on a multi-layer recognition framework and recognizes objects by their geometrical properties, rather than requiring that the user draw the objects in a pre-defined manner. This system considers only groups of strokes that fall within a spatial bound. This spatial bound on its own may not be enough, especially for regions that contain many overlapping strokes. For example, if there are ten lines that all fall within a small region, to identify an arrow, the system still may have to try combinations of these lines.


Jonathan H. said...

Isn't this like the 2nd or 3rd paper on recognizing UML diagrams? I've seen software dedicated to drawing UML diagrams and it works well enough. I suppose UML diagrams contain a well-defined set of images and that makes it easier to make improvements to the creation of UML diagrams. Still, I cannot help but think such contributions would be more valuable on other systems...especially ones that don't see much improvement from sketch recognition techniques (and sorely need it).

chris aikens said...

Sometimes UMLs can get crazy and have arrows running all over the place. In this instance, intersecting lines could raise some troubles as people move blocks around on the screen.