Erkennungsgitterstruktur
Erkennungen, die für die Verwendung mit Windows Vista und Windows XP Tablet PC Edition erstellt wurden, verwenden eine Reihe von Strukturen, die jeweils als Gitter bezeichnet werden, um Erkennungsergebnisse an Tablet PC-Plattformbibliotheken zurück zu übergeben. Die Tablet PC-Plattform kopiert dann die Informationen in diesen Strukturen in das IInkRecognitionResult-Objekt, das IInkRecognitionAlternates Auflistung und das IInkRecognitionAlternate-Objekt.
Ein Zeiger auf das Gitter sollte von der Erkennung zurückgegeben werden, wenn die Plattform die GetLatticePtr--Funktion auf dem HRECOCONTEXT- Handle aufruft.
In diesem Abschnitt wird die Gitterstruktur ausführlich beschrieben. Eine Übersicht über Erkennungen und verwandte Konzepte finden Sie unter Informationen zur Handschrifterkennung.
Der Bedarf für ein Gitter
Eine Erkennung kann mehrere Möglichkeiten finden, um eine Reihe von Freihandstrichen in Erkennungssegmente zu unterteilen. Was die Erkennung als Erkennungssegment verwendet, hängt vom Typ der Erkennung ab. Englische Spracherkennungen verwenden in der Regel Wörter als Erkennungssegment. Andere Erkennungen können Zeichen, Formen oder Gesten als Erkennungssegment verwenden. Die Flexibilität der Gitterstrukturen ermöglicht die logische Verwaltung der großen Anzahl von Erkennungsergebnissen, die in komplexen Beziehungen kombiniert werden können.
Intern verwenden Erkennungsgeräte ein Gitter, um grundlegende Erkennungseinheiten für einen bestimmten Freihandteil zu halten. Das Gitter enthält auch die Bewertung oder das Konfidenzniveau des kombinierten Ergebnisses. Darüber hinaus speichert das Gitter die Zuordnung von Segmenten zu den ursprünglichen Freihandstrichen.
Die Gitterstrukturen werden in der Headerdatei RecTypes.h definiert. Die Gitterstrukturen umfassen die folgenden Strukturen:
Gitterkomponenten
In den folgenden Beispielen werden die Striche für das Wort "together" verwendet, wie in der folgenden Abbildung dargestellt. In den Beispielen werden die Segmente als ein oder mehrere Wörter ausgewertet. Die Zahlen stellen die einzelnen Striche im zu bewertenden Segment dar. Beachten Sie, dass jedes "t"-Zeichen zwei Striche enthält.
Ein Gitter besteht aus einer oder mehreren Spalten, eines für jedes Segment. Jede Spalte wiederum enthält ein oder mehrere Elemente. Ein Element enthält eine separate Erkennungsvarianten. Weitere Informationen zu Spalten finden Sie in der RECO_LATTICE_COLUMN Struktur. Weitere Informationen zu Elementen finden Sie in der RECO_LATTICE_ELEMENT Struktur.
Die Erkennung gibt bei der Auswertung des im vorherigen Beispiel gezeigten Freihandbeispiels möglicherweise ein einzelnes Segment zurück. In diesem Fall enthält das Gitter eine einzelne Spalte mit einem einzelnen Element.
Ein komplexeres Beispiel zeigt sich selbst, wenn die Erkennung das Freihandbeispiel auswertet und mehrere Segmente und mehrere Alternativen für jedes Segment enthält.
Die Anzahl der Erkennungsvarianten kann stachend sein, auch für ein kleines Freihandbeispiel. Beispielsweise kann "t o g e h e r" die folgenden Ergebnisse erzielen:
- "um sie zu erhalten" (plus Alternative für jedes Wort)
- "zu sammeln" (plus Alternative für jedes Wort)
- "um sie zu bekommen" (plus Alternative für jedes Wort)
- "together" (plus Alternative für das Wort)
In diesem Fall kann eine Erkennung die folgende Gitterstruktur erstellen.
Anmerkung
Jede Spalte teilt die gleiche Strichreihenfolge, da sie alle auf dieselbe InkStrokes Auflistung verweisen.