Recognizer Lattice (estructura)
Los reconocedores creados para su uso con Windows Vista y Windows XP Tablet PC Edition usan un conjunto de estructuras, cada una de las cuales se denomina redondilla, para devolver los resultados de reconocimiento a las bibliotecas de plataformas de tablet PC. A continuación, la plataforma Tablet PC copia la información de estas estructuras en el objeto IInkRecognitionResult , la colección IInkRecognitionAlternates y el objeto IInkRecognitionAlternate .
El reconocedor debe devolver un puntero a la red cuando la plataforma llama a la función GetLatticePtr en el identificador HRECOCONTEXT .
En esta sección se describe la estructura de la red en detalle. Para obtener información general sobre reconocedores y conceptos relacionados, consulte Acerca del reconocimiento de escritura a mano.
La necesidad de una celosía
Un reconocedor puede encontrar varias maneras de dividir un conjunto de trazos de lápiz en segmentos de reconocimiento. Lo que el reconocedor usa como segmento de reconocimiento depende del tipo de reconocedor. Los reconocedores de idioma inglés suelen usar palabras como segmento de reconocimiento. Otros reconocedores pueden usar caracteres, formas o gestos como segmento de reconocimiento. La flexibilidad de las estructuras de la red permite la administración lógica del gran número de resultados de reconocimiento que se pueden combinar en relaciones complejas.
Internamente, los reconocedores usan una red para contener unidades de reconocimiento básicas para un fragmento de tinta determinado. La red también contiene la puntuación, o el nivel de confianza, del resultado combinado. Además, lattice almacena la asignación de segmentos a los trazos de lápiz originales.
Las estructuras de lattice se definen en el archivo de encabezado RecTypes.h. Las estructuras de lattice incluyen las siguientes estructuras:
Componentes de lattice
En los ejemplos siguientes se usan los trazos para la palabra "together" como se muestra en la siguiente imagen. En los ejemplos, los segmentos se evalúan como una o varias palabras. Los números representan los trazos individuales del segmento que se va a evaluar. Tenga en cuenta que cada uno de los caracteres "t" contiene dos trazos.
Una red se compone de una o varias columnas, una para cada segmento. Cada columna a su vez contiene uno o varios elementos. Un elemento contiene una alternativa de reconocimiento discreto. Para obtener más información sobre las columnas, vea la estructura RECO_LATTICE_COLUMN . Para obtener más información sobre los elementos, vea la estructura RECO_LATTICE_ELEMENT .
El reconocedor podría devolver un solo segmento al evaluar el ejemplo de entrada de lápiz que se muestra en el ejemplo anterior. En este caso, lattice contiene una sola columna con un solo elemento.
Un ejemplo más complejo se presenta cuando el reconocedor evalúa la muestra de entrada de lápiz y presenta varios segmentos y varias alternativas para cada segmento.
El número de alternativas de reconocimiento puede ser sorprendente, incluso para una pequeña muestra de tinta. Por ejemplo, "t o g e t h e r" puede producir los siguientes resultados:
- "para obtenerla" (además de alternativas para cada palabra)
- "para recopilar" (más alternativas para cada palabra)
- "para tenerla" (además de alternativas para cada palabra)
- "juntos" (más alternativas para la palabra)
En este caso, un reconocedor podría crear la siguiente estructura de entramado.
Nota
Cada columna comparte el mismo orden de trazo porque todos hacen referencia a la misma colección InkStrokes .