public class ShapeMatchingClassifier extends AbstractClassifier
| Constructor and Description |
|---|
ShapeMatchingClassifier() |
| Modifier and Type | Method and Description |
|---|---|
int |
addClass(java.lang.String className)
Adds a class of gestures to this classifier.
|
void |
addClass(java.lang.String className,
java.util.Vector<java.awt.geom.Point2D> template)
Adds a class and set the template for this class.
|
void |
addExample(java.lang.String className,
Gesture example)
Adds a gesture example to this classifier.
|
java.lang.String |
classify(Gesture g)
Recognizes a gesture.
|
NamedGesture |
classifyAndResample(Gesture g)
Classifies a gesture and return the collection of resampled points for the input gesture.
|
double |
distance(Gesture gesture,
java.lang.String gesture2) |
double |
distance(java.lang.String gesture1,
java.lang.String gesture2) |
double |
distance(java.util.Vector<java.awt.geom.Point2D> inputPointsResampled,
java.lang.String gesture2) |
double |
distance(java.util.Vector<java.awt.geom.Point2D> inputPointsResampled1,
java.util.Vector<java.awt.geom.Point2D> inputPointsResampled2) |
double |
getCurrentDistance() |
java.util.Vector<Gesture> |
getExamples(java.lang.String className)
Returns the vector of gesture examples for a given class.
|
int |
getNbPoints() |
double |
getSizeScaleToSquare() |
double |
getThreshold() |
static ShapeMatchingClassifier |
newClassifier(java.io.File filename)
Builds a new classifier by loading its definition in a file.
|
static ShapeMatchingClassifier |
newClassifier(java.lang.String file)
Builds a new classifier by loading its definition in a file.
|
static ShapeMatchingClassifier |
newClassifier(java.net.URL url)
Builds a new classifier by loading its definition in a url.
|
java.util.Vector<java.awt.geom.Point2D> |
normalize(Gesture gesture) |
void |
removeClass(java.lang.String className)
Removes a class of gestures from this classifier.
|
void |
removeExample(Gesture example)
Removes a gesture example from this classifier.
|
void |
renameClass(java.lang.String previousClassName,
java.lang.String newClassName)
Renames a class of gestures.
|
void |
reset()
Resets this classifier (i.e.
|
void |
save(java.io.File filename)
Saves the definition of this classifier in a file.
|
void |
setNbPointsForResampling(int nbPoints) |
void |
setSizeScaleToSquare(int size)
The side size of the bounding box to which the gesture is scaled after having being resampled.
|
void |
setTemplate(java.lang.String className,
java.util.Vector<java.awt.geom.Point2D> template)
Sets the template gesture for a given existing class of gestures in this classifier.
|
void |
setThreshold(double maximumDistance)
Sets a minimum score threshold for recognition.
|
java.util.Vector<Score> |
sortedClasses(Gesture g)
Computes a sorted list of classes contained in this recognizer from the
best match to the the worst match given a gesture.
|
addClassifierListener, fireClassAdded, fireClassRemoved, fireExampleAdded, fireExampleRemoved, fireTemplateSet, getClassesNames, getMinimumStrokeLength, getPngImage, getPngImage, getRepresentative, getTemplate, getTemplates, removeClassifierListener, setMinimumStrokeLengthpublic double distance(java.lang.String gesture1,
java.lang.String gesture2)
distance in class AbstractClassifierpublic double distance(Gesture gesture, java.lang.String gesture2)
public java.util.Vector<java.awt.geom.Point2D> normalize(Gesture gesture)
public double distance(java.util.Vector<java.awt.geom.Point2D> inputPointsResampled,
java.lang.String gesture2)
public double distance(java.util.Vector<java.awt.geom.Point2D> inputPointsResampled1,
java.util.Vector<java.awt.geom.Point2D> inputPointsResampled2)
public java.lang.String classify(Gesture g)
classify in class AbstractClassifierg - The gesture to recognizepublic NamedGesture classifyAndResample(Gesture g)
g - The input gesture.public static ShapeMatchingClassifier newClassifier(java.lang.String file)
file - The name of the file containing the definition of the
classifier.public static ShapeMatchingClassifier newClassifier(java.io.File filename)
filename - The name of the file containing the definition of the
classifier.public static ShapeMatchingClassifier newClassifier(java.net.URL url)
url - The url containing the definition of the classifier.public int addClass(java.lang.String className)
addClass in class AbstractClassifierclassName - The name of the class of gestures to add.public void renameClass(java.lang.String previousClassName,
java.lang.String newClassName)
renameClass in class AbstractClassifierpreviousClassName - The current name of this class of gesturesnewClassName - The new name of this class of gesturespublic void removeClass(java.lang.String className)
removeClass in class AbstractClassifierclassName - The name of the class of gestures to remove.public void addClass(java.lang.String className,
java.util.Vector<java.awt.geom.Point2D> template)
className - The name of the class to addtemplate - The template for the class classNamepublic java.util.Vector<Score> sortedClasses(Gesture g)
sortedClasses in class AbstractClassifierg - The gesturepublic void save(java.io.File filename)
save in class AbstractClassifierfilename - The name of the file where to write the definition of the
classifier.public void removeExample(Gesture example)
removeExample in class AbstractClassifierexample - the gesture to removepublic void addExample(java.lang.String className,
Gesture example)
addExample in class AbstractClassifierclassName - the gesture example's classexample - the gesture examplepublic java.util.Vector<Gesture> getExamples(java.lang.String className) throws java.lang.UnsupportedOperationException
getExamples in class AbstractClassifierclassName - The name of the classclassName.java.lang.UnsupportedOperationExceptionpublic void setSizeScaleToSquare(int size)
size - The side size of the bounding boxpublic void setTemplate(java.lang.String className,
java.util.Vector<java.awt.geom.Point2D> template)
setTemplate in class AbstractClassifierclassName - the name of the class of gestures.template - the template for the class className.public double getThreshold()
public void setThreshold(double maximumDistance)
classify returns null.maximumDistance - The minimum score threshold for recognition.public int getNbPoints()
public double getSizeScaleToSquare()
public double getCurrentDistance()
public void reset()
reset in class AbstractClassifierpublic void setNbPointsForResampling(int nbPoints)