|
|||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Class Summary | |
Basis | A basis represents a basic unit of a shape, minimal yet perceptually relevant. |
EllipseBasis | An EllipseBasis uses an ellipse to approximate a set of points. |
FitData | A data structure storing a set of bases that represents a particular fragmentation of a symbol. |
FittingUtil | This class contains routines used during fragmentation and fitting. |
Fragmenter | Implementation of the fragmentation algorithms that fragment a symbol based on templates specification. |
LineBasis | A LineBasis is used to represent a set of points that are highly colinear. |
This package provides the utilities for decomposing symbols into simpler, perceptually-salient structures, line segments (L) and elliptical segments (E). The idea of our technique is to use templates to direct fragmentation. Base on the template description of a symbol, the algorithm finds the globally optimized fitting for the symbol by identifying a set of breakpoints. We considered two types of templates in this work. The first type is an ordered sequence of L's and E's, and this is useful when the stroke order of a sketched symbol is known allowing easier and more efficient computation. However, stroke order information may not be available sometimes, so we also included the second type of template consisting of just the number of E's and the number of L's. The toolkit contains the implementation of two fragmentation algorithms, one for each type of templates. Both algorithms use dynamic programming technique to achieve optimal fragmentation in polynomial time. Detailed description of the algorithms can be found in the following publication:
Helose Hse, Michael Shilman, and A. Richard Newton. "Robust Sketched Symbol Fragmentation using Templates." 2004 International Conference on Intelligent User Interfaces, Island of Madeira, Portugal. Jan 2004. pp. 156-160.
|
|||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |