Recognizer Lattice Structure
Recognizers die zijn gemaakt voor gebruik met Windows Vista en Windows XP Tablet PC Edition, gebruiken een set structuren, die elk een lattice wordt genoemd, om herkenningsresultaten terug te geven aan Tablet PC-platformbibliotheken. Het Tablet PC-platform kopieert vervolgens de informatie in deze structuren naar de IInkRecognitionResult object, de IInkRecognitionAlternates verzameling en het IInkRecognitionAlternate object.
Een aanwijzer naar het rooster moet worden geretourneerd door de recognizer wanneer het platform de functie GetLatticePtr aanroept op de HRECOCONTEXT-ingang ingang.
In deze sectie wordt de structuur van het rooster in detail beschreven. Zie Over handschriftherkenningvoor een overzicht van recognizers en gerelateerde concepten.
De behoefte aan een lattice
Een recognizer kan verschillende manieren vinden om een reeks pennenstreken te splitsen in herkenningssegmenten. Wat de recognizer als een herkenningssegment gebruikt, is afhankelijk van het type recognizer. Engelse taalherkenningsfunctie gebruikt meestal woorden als het herkenningssegment. Andere recognizers kunnen tekens, vormen of bewegingen gebruiken als het herkenningssegment. De flexibiliteit van de roosterstructuren maakt logisch beheer mogelijk van het grote aantal herkenningsresultaten dat kan worden gecombineerd in complexe relaties.
Intern gebruiken recognizers een lattice om basisherkenningseenheden voor een bepaald stukje inkt vast te houden. De lattice bevat ook de score of het betrouwbaarheidsniveau van het gecombineerde resultaat. Bovendien slaat het rooster de toewijzing van segmenten aan de oorspronkelijke pennenstreken op.
De rasterstructuren worden gedefinieerd in het headerbestand RecTypes.h. De roosterstructuren omvatten de volgende structuren:
Roosteronderdelen
In de volgende voorbeelden worden de pennenstreken voor het woord 'samen' gebruikt, zoals wordt weergegeven in de volgende afbeelding. In de voorbeelden worden de segmenten geëvalueerd als een of meer woorden. De getallen vertegenwoordigen de afzonderlijke pennenstreken in het segment dat wordt geëvalueerd. Houd er rekening mee dat elk van de t-tekens twee pennenstreken bevat.
Een rooster bestaat uit een of meer kolommen, één voor elk segment. Elke kolom bevat een of meer elementen. Een element bevat een alternatieve discrete herkenning. Zie de RECO_LATTICE_COLUMN structuur voor meer informatie over kolommen. Zie de RECO_LATTICE_ELEMENT structuur voor meer informatie over elementen.
De recognizer kan één segment retourneren bij het evalueren van het inktvoorbeeld dat in het vorige voorbeeld wordt weergegeven. In dit geval bevat het rooster één kolom met één element.
Een complexer voorbeeld presenteert zich wanneer de recognizer het inktvoorbeeld evalueert en meerdere segmenten en meerdere alternatieven voor elk segment bevat.
Het aantal herkennings alternatiefs kan verspringen, zelfs voor een klein inktvoorbeeld. "t o g e t e r" kan bijvoorbeeld de volgende resultaten opleveren:
- "om haar te krijgen" (plus alternatieven voor elk woord)
- "te verzamelen" (plus alternatieven voor elk woord)
- "om haar te hebben" (plus alternatieven voor elk woord)
- "samen" (plus alternatieven voor het woord)
In dit geval kan een recognizer de volgende rasterstructuur maken.
Notitie
Elke kolom deelt dezelfde lijnvolgorde omdat ze allemaal verwijzen naar dezelfde InkStrokes verzameling.