/// <summary> /// The pipeline for recognizing on the fly /// </summary> /// <returns></returns> public static RecognitionPipeline GetOnFlyPipeline() { Recognizer recognizer = createDefaultRecognizer(); RecognitionPipeline result = new RecognitionPipeline(); result.addStep(createDefaultClassifier()); result.addStep(createDefaultGrouper()); result.addStep(recognizer); return(result); }
/// <summary> /// Create a default recognition pipeline with the following steps: /// 1: Classify Single Strokes /// 2: Group Strokes into Shapes /// 3: Recognize Shapes /// 4: Connect Shapes /// 5: Refine Recognition /// </summary> public static RecognitionPipeline createDefaultPipeline(Dictionary <string, string> settings) { RecognitionPipeline result = new RecognitionPipeline(); result.addStep(new WaitForFeatureSketch()); result.addStep(createDefaultClassifier()); result.addStep(createDefaultGrouper()); result.addStep(createDefaultRecognizer()); result.addStep(createDefaultConnector()); result.append(createDefaultRefiner()); return(result); }
/// <summary> /// Create a default recognition pipeline with the following steps: /// 1: Classify Single Strokes /// 2: Group Strokes into Shapes /// 3: Recognize Shapes /// 4: Connect Shapes /// 5: Refine Recognition /// </summary> public static RecognitionPipeline createDefaultPipeline(Dictionary <string, string> settings) { Recognizer recognizer = createDefaultRecognizer(); Connector connector = createDefaultConnector(); RecognitionPipeline result = new RecognitionPipeline(); result.addStep(createDefaultClassifier()); result.addStep(createDefaultGrouper()); result.addStep(recognizer); result.addStep(connector); result.addStep(createDefaultRefiner(connector, recognizer)); return(result); }
/// <summary> /// Create a Recognition Manager for the given sketch panel with default settings. /// Settings are loaded from "settings.txt". /// </summary> /// <param name="p">a sketch panel to manage</param> public RecognitionManager() { // Load settings from text file string directory = AppDomain.CurrentDomain.BaseDirectory; string SettingsFilename = directory + "//settings.txt"; _filenames = Files.SettingsReader.readSettings(SettingsFilename); // Initialize the recognition machines _domain = ContextDomain.CircuitDomain.GetInstance(); _strokeClassifier = RecognitionPipeline.createDefaultClassifier(); _strokeGrouper = RecognitionPipeline.createDefaultGrouper(); _sketchRecognizer = RecognitionPipeline.createDefaultRecognizer(); _connector = RecognitionPipeline.createDefaultConnector(); _refinement = RecognitionPipeline.createDefaultRefiner(); }
/// <summary> /// Append all the steps from another pipeline to this one. /// </summary> /// <param name="other"></param> public virtual void append(RecognitionPipeline other) { _steps.AddRange(other._steps); }