Referencia de API para reconocimiento de texto de IA (OCR) en el SDK de aplicaciones de Windows
Importante
Disponible en la versión más reciente del canal experimental del SDK de aplicaciones de Windows.
El canal experimental del SDK de aplicaciones de Windows incluye API y características en las primeras fases de desarrollo. Todas las API del canal experimental están sujetas a revisiones exhaustivas y cambios importantes y se pueden eliminar de versiones posteriores en cualquier momento. Las características experimentales no se admiten para su uso en entornos de producción y las aplicaciones que las usan no se pueden publicar en Microsoft Store.
- No se admiten aplicaciones desempaquetadas.
Obtenga información sobre las API de SDK de Aplicaciones para Windows, respaldadas por inteligencia artificial (IA), que pueden detectar y extraer texto (caracteres, palabras, líneas, límites de texto poligonal y niveles de confianza para cada coincidencia) dentro de las imágenes y convertirlos en secuencias de caracteres legibles por máquina.
Para obtener más información, consulte Introducción al reconocimiento de texto (OCR) en el SDK de Aplicaciones para Windows.
Sugerencia
Proporcione comentarios sobre estas API y su funcionalidad creando un nuevo problema en el repositorio de GitHub de Windows App SDK (incluya OCR en el título) o respondiendo a un problema existente.
Espacio de nombres de Microsoft.Windows.Vision
Proporciona API para modelos de Machine Learning que analizan el contenido textual de las imágenes.
Enumeración DetectedLineStyle
public enum DetectedLineStyle
Especifica los estilos de línea que se pueden reconocer.
Fields
Manuscrito: 0
La línea de texto se escribe a mano.
Otros: 1
La línea de texto no está escrita a mano.
Enumeración OrientationDetectionOptions
public enum OrientationDetectionOptions
Especifica las orientaciones de texto que se pueden reconocer.
Fields
Ninguno: 0
No se reconoce la orientación.
DetectOrientation: 1
Se reconoce la orientación.
Clase RecognizeLine
public sealed class RecognizedLine
Representa una sola línea de texto reconocido.
Propiedad RecognizedLine.Style
public Microsoft.Windows.Vision.RecognizedLineStyle Style { get; }
Obtiene el estilo de línea reconocido.
Valor de propiedad
Estilo de línea reconocido.
Comentarios
Incluye si la línea de texto se ha escrito a mano o no y el nivel de confianza de reconocimiento.
Propiedad RecognizedLine.Text
public string Text { get; }
Obtiene el texto de la línea reconocida.
Valor de propiedad
Texto de la línea reconocida.
Comentarios
Todas las palabras concatenadas con espacios.
Propiedad RecognizedLine.Words
public Microsoft.Windows.Vision.RecognizedWord[] Words { get; }
Palabras de la línea reconocida.
Valor de propiedad
Palabras de la línea reconocida.
Estructura RecognizedLineStyle
public struct RecognizedLineStyle
Representa el estilo de la línea reconocida.
Fields
Confianza
Nivel de confianza del reconocimiento de estilo de línea.
Nombre
Nombre del estilo de línea.
Clase RecognizedText
public sealed class RecognizedText
Representa el resultado de una operación de reconocimiento de imagen a texto.
Propiedad RecognizedText.ImageAngle
public float ImageAngle { get; }
Obtiene el ángulo rotacional en el sentido de las agujas del reloj del texto reconocido en grados.
Valor de propiedad
Ángulo rotacional en el sentido de las agujas del reloj del texto reconocido, en grados.
Propiedad RecognizedText.Lines
public Microsoft.Windows.Vision.RecognizedLine[] Lines { get; }
Obtiene la colección de líneas reconocidas.
Valor de propiedad
Colección de líneas reconocidas.
Clase RecognizedWord
public sealed class RecognizedWord
Representa una sola palabra reconocida.
Propiedad RecognizedWord.BoundingBox
public Microsoft.Windows.Vision.BoundingBox BoundingBox { get; }
Obtiene el límite cuadrilátero de la palabra reconocida.
Valor de propiedad
Límite cuadrilátero de la palabra reconocida. El valor TopLeft es relativo a la rotación de la palabra.
Propiedad RecognizedWord.Confidence
public float Confidence { get; }
Obtiene la probabilidad de que esta palabra se haya reconocido correctamente.
Valor de propiedad
Probabilidad de que esta palabra se reconozca correctamente. El valor oscila entre 0,0 y 1,0, ambos incluidos.
Propiedad RecognizedWord.Text
public string Text { get; }
Obtiene el texto de la palabra reconocida.
Valor de propiedad
Texto de la palabra reconocida.
Estructura TextRecognition.BoundingBox
public struct BoundingBox
Polígono con 4 puntos que se usa para el límite de palabras reconocidas y líneas de texto.
Fields
BottomLeft
Esquina inferior izquierda del cuadro de límite.
BottomRight
Esquina inferior derecha del cuadro de límite.
TopLeft
Punto superior izquierdo del cuadro de límite.
TopRight
Punto superior derecho del cuadro de límite.
Comentarios
Cuando se devuelve como límite para una palabra o línea, los puntos TopLeft, TopRight, BottomRight y BottomLeft son relativos a la rotación y asimetría del texto reconocido en la imagen. En el diagrama siguiente se muestra el diseño de punto para diferentes rotaciones de texto, donde 0 es TopLeft, 1 es TopRight, 2 es BottomRight y 3 es BottomLeft, todo en relación con el texto.
Clase TextRecognizer
public sealed class TextRecognizer : System.IDisposable
Reconoce palabras y líneas, y sus límites cuadriláteros, en una imagen de origen.
Método TextRecognizer.Close
Elimina el objeto y los recursos asociados.
Comentarios
No se implementa en C#.
Método TextRecognizer.CreateAsync
public static Windows.Foundation.IAsyncOperation<Microsoft.Windows.Vision.TextRecognizer> CreateAsync ();
Crea de forma asíncrona una nueva instancia de la clase TextRecognizer.
Devoluciones
Nueva instancia de la clase TextRecognizer.
Esto devolverá un error si el elemento GetModelReadyStatus no está listo.
Método TextRecognizer.IsAvailable
public static bool IsAvailable ();
Indica si el modelo de lenguaje subyacente está instalado.
Devoluciones
Devuelve el valor "true" si se instala el modelo de lenguaje subyacente. De lo contrario, se devuelve el valor False.
Método TextRecognizer.MakeAvailableAsync
public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,
Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
Garantiza que el modelo de lenguaje subyacente está instalado y disponible para su uso.
Devoluciones
Acción asincrónica con progreso que devuelve un elemento PackageDeploymentResult al finalizar.
Método TextRecognizer.RecognizeTextFromImage(Microsoft.Windows.Imaging.ImageBuffer, Microsoft.Windows.Vision.TextRecognizerOptions)
public Microsoft.Windows.Vision.RecognizedText RecognizeTextFromImage (Microsoft.Windows.Imaging.ImageBuffer imageBuffer,
Microsoft.Windows.Vision.TextRecognizerOptions options);
Reconoce el texto en la imagen proporcionada.
Parámetros
imageBuffer
Mapa de bits sin comprimir.
options
Opciones para configurar el modelo de reconocimiento de texto para TextRecognizer.
Devoluciones
Texto reconocido.
Método TextRecognizer.RecognizeTextFromImageAsync(Microsoft.Windows.Imaging.ImageBuffer, Microsoft.Windows.Vision.TextRecognizerOptions)
public Windows.Foundation.IAsyncOperation<Microsoft.Windows.Vision.RecognizedText> RecognizeTextFromImageAsync (Microsoft.Windows.Imaging.ImageBuffer imageBuffer,
Microsoft.Windows.Vision.TextRecognizerOptions options);
Reconoce el texto de forma asíncrona en la imagen proporcionada.
Parámetros
imageBuffer
Mapa de bits sin comprimir.
options
Opciones para configurar el modelo de reconocimiento de texto para TextRecognizer.
Devoluciones
Texto reconocido.
Clase TextRecognizerOptions
public sealed class TextRecognizerOptions
Proporciona opciones para configurar el modelo de reconocimiento de texto para un elemento TextRecognizer.
Propiedad TextRecognizerOptions.MaxAnalysisSize
public Windows.Graphics.SizeInt32 MaxAnalysisSize { get; set; }
Obtiene o establece el tamaño máximo de la imagen.
Valor de propiedad
Tamaño máximo de imagen. El valor predeterminado es de 1152 de ancho y 768 de alto.
Comentarios
Este tamaño es una sugerencia y es posible que no siempre se respete.
Si la imagen de origen es mayor que el tamaño máximo, se reducirá verticalmente automáticamente a los límites de tamaño que se han indicado antes.
Propiedad TextRecognizerOptions.MaxLineCount
public uint MaxLineCount { get; set; }
Obtiene o establece el número máximo de líneas que se van a devolver de la operación de reconocimiento.
Valor de propiedad
Número máximo de líneas que se van a devolver de la operación de reconocimiento.
Comentarios
El valor predeterminado es MaxLineCountSupported. Si se especifica, las líneas máximas devueltas tendrán un valor menor que el indicado y MaxLineCountSupported.
Propiedad TextRecognizerOptions.OrientationDetection
public Microsoft.Windows.Vision.OrientationDetectionOptions OrientationDetection { get; set; }
Obtiene o establece si se va a detectar la orientación del texto.
Valor de propiedad
Indica si se va a detectar la orientación del texto. El valor predeterminado es None.
Constructor TextRecognizerOptions.#ctor
public TextRecognizerOptions ();
Inicializa una nueva instancia de la clase TextRecognizerOptions.