Ссылка на API для распознавания текста ИИ (OCR) в пакете SDK для приложений Windows
Внимание
Доступно в последней версии экспериментального канала пакета Windows App SDK.
Экспериментальный канал пакета SDK для приложений Windows включает API и функции на ранних этапах разработки. Все API-интерфейсы в экспериментальном канале подвергаются обширным исправлениям и критическим изменениям и могут быть удалены из последующих выпусков в любое время. Экспериментальные функции не поддерживаются для использования в рабочих средах и приложениях, которые используют их, не могут быть опубликованы в Microsoft Store.
- Автономные приложения не поддерживаются.
Узнайте об API Windows App SDK, с поддержкой искусственного интеллекта (ИИ), которые могут обнаруживать и извлекать текст (символы, слова, строки, многоугольные границы текста и уровни достоверности для каждого совпадения) в изображениях и преобразовывать его в машинно читаемые потоки символов.
Дополнительные сведения см. в статье "Начало работы с распознаванием текста" (OCR) в пакете SDK для приложений Windows.
Совет
Предоставьте отзыв об этих API и их функциональных возможностях, создав новую задачу в репозитории Windows App SDK на GitHub (включая OCR в заголовке) или ответьте на существующую задачу.
Пространство имен Microsoft.Windows.Vision
Предоставляет API для моделей машинного обучения, которые анализируют текстовое содержимое изображений.
Структура BoundingBox
public struct BoundingBox
Многоугольник с 4 точками, используемыми для границ распознанных слов и строк текста.
Поля
Нижний левый угол
Нижний левый угол ограничивающего прямоугольника.
Нижний правый угол
Правый нижний угол ограничивающего прямоугольника.
TopLeft
Верхняя левая точка ограничивающего прямоугольника.
TopRight
Верхняя правая точка ограничивающего прямоугольника.
Замечания
При возврате в качестве границы для слова или строки точки TopLeft, TopRight, BottomRight и BottomLeft соответствуют повороту и искажению распознанного текста на изображении. На следующей схеме показано расположение точек для различных поворотов текста, где 0 — Верхний левый, 1 — Верхний правый, 2 — Нижний правый, а 3 — Нижний левый, все относительно текста.
Перечисление типа DetectedLineStyle
public enum DetectedLineStyle
Задает стили линий, которые можно распознать.
Поля
Рукописный текст: 0
Строка текста написана вручную.
Другое: 1
Строка текста не написана вручную.
Перечисление OrientationDetectionOptions
public enum OrientationDetectionOptions
Указывает ориентацию текста, которую можно распознать.
Поля
Нет: 0
Ориентация не распознается.
DetectOrientation: 1
Ориентация распознается.
Класс RecognizedLine
public sealed class RecognizedLine
Представляет одну строку распознанного текста.
Свойство RecognizedLine.BoundingBox
public Microsoft.Windows.Vision.RecognizedLine.BoundingBox BoundingBox { get; }
Возвращает ограничивающий прямоугольник распознанной строки.
Значение свойства
Ограничивающий прямоугольник распознанной строки.
Замечания
Свойство RecognizedLine.Style
public Microsoft.Windows.Vision.RecognizedLineStyle Style { get; }
Получает распознанный стиль линии.
Значение свойства
Распознанный стиль линии.
Замечания
Включает, была ли строка текста рукописной или нет, а также уровень достоверности распознавания.
Свойство RecognizedLine.Text
public string Text { get; }
Возвращает текст распознанной строки.
Значение свойства
Текст распознанной строки.
Замечания
Все слова сцеплены пробелами.
Свойство RecognizedLine.Words
public Microsoft.Windows.Vision.RecognizedWord[] Words { get; }
Слова в распознанной строке.
Значение свойства
Слова в распознанной строке.
Структура RecognizedLineStyle
public struct RecognizedLineStyle
Представляет стиль распознанной строки.
Поля
Достоверность
Уровень достоверности распознавания стиля линии.
Имя.
Имя стиля строки.
Класс RecognizedText
public sealed class RecognizedText
Представляет результат операции распознавания изображений в тексте.
Свойство RecognizedText.ImageAngle
public float ImageAngle { get; }
Получает угол поворота по часовой стрелке распознанного текста в градусах.
Значение свойства
Угол поворота по часовой стрелке распознанного текста в градусах.
Свойство RecognizedText.Lines
public Microsoft.Windows.Vision.RecognizedLine[] Lines { get; }
Возвращает коллекцию распознанных строк.
Значение свойства
Коллекция распознанных строк.
Класс RecognizedWord
public sealed class RecognizedWord
Представляет одно распознаваемое слово.
Свойство BoundingBox для RecognizedWord
public Microsoft.Windows.Vision.BoundingBox BoundingBox { get; }
Получает четырехстороннюю границу распознанного слова.
Значение свойства
Четырехугольная граница распознанного слова. TopLeft является относительным относительно поворота слова.
Свойство RecognizedWord.Confidence
public float Confidence { get; }
Определяет, насколько вероятно, что это слово было распознано правильно.
Значение свойства
Вау, вероятно, это слово было распознано правильно. Значения варьируются от 0,0 до 1.0 включительно.
Свойство RecognizedWord.Text
public string Text { get; }
Получает текст распознанного слова.
Значение свойства
Текст распознанного слова.
Класс TextRecognizer
public sealed class TextRecognizer : System.IDisposable
Распознает слова и линии, а также их четырехсторонние границы в исходном изображении.
Метод TextRecognizer.Close
Удаляет объект и связанные ресурсы.
Замечания
Не реализован в C#.
Метод TextRecognizer.CreateAsync
public static Windows.Foundation.IAsyncOperation<Microsoft.Windows.Vision.TextRecognizer> CreateAsync ();
Асинхронно создает новый экземпляр класса TextRecognizer.
Возвраты
Новый экземпляр класса TextRecognizer.
Это возвращает ошибку, если GetModelReadyStatus не готов.
Метод TextRecognizer.IsAvailable
public static bool IsAvailable ();
Извлекает, установлена ли базовая языковая модель.
Возвраты
Значение True, если установлен базовая языковая модель. В противном случае — false.
Метод TextRecognizer.MakeAvailableAsync для распознавания текста
public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,
Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
Гарантирует, что базовая языковая модель установлена и доступна для использования.
Возвраты
Асинхронное действие с отслеживанием прогресса, которое возвращает PackageDeploymentResult при завершении.
Метод TextRecognizer.RecognizeTextFromImage(Microsoft.Graphics.Imaging.ImageBuffer, Microsoft.Windows.Vision.TextRecognizerOptions)
public Microsoft.Windows.Vision.RecognizedText RecognizeTextFromImage (Microsoft.Graphics.Imaging.ImageBuffer imageBuffer,
Microsoft.Windows.Vision.TextRecognizerOptions options);
Распознать текст в предоставленном изображении.
Параметры
буфер изображения
Несжатое растровое изображение.
варианты
Параметры настройки модели распознавания текста для TextRecognizer.
Возвраты
Распознанный текст.
TextRecognizer.RecognizeTextFromImage(Microsoft.Graphics.ImageBuffer, Microsoft.Windows.Vision.TextRecognizerOptions, Microsoft.Windows.Workloads.WorkloadPriority)
public Microsoft.Windows.Vision.RecognizedText RecognizeTextFromImage (Microsoft.Graphics.Imaging.ImageBuffer imageBuffer,
Microsoft.Windows.Vision.TextRecognizerOptions options, Microsoft.Windows.Workloads.WorkloadPriority priority);
Распознать текст в предоставленном изображении.
Параметры
буфер изображений
Некомпрессированное растровое изображение.
опции
Параметры настройки модели распознавания текста для TextRecognizer.
приоритет
Возвраты
Распознанный текст.
Метод TextRecognizer.RecognizeTextFromImageAsync(Microsoft.Graphics.Imaging.ImageBuffer, Microsoft.Windows.Vision.TextRecognizerOptions)
public Windows.Foundation.IAsyncOperation<Microsoft.Windows.Vision.RecognizedText> RecognizeTextFromImageAsync (Microsoft.Graphics.Imaging.ImageBuffer imageBuffer,
Microsoft.Windows.Vision.TextRecognizerOptions options);
Асинхронно распознает текст в предоставленном изображении.
Параметры
буфер изображения
Некомпрессированное растровое изображение.
опции
Параметры настройки модели распознавания текста для TextRecognizer.
Возвраты
Распознанный текст.
TextRecognizer.RecognizeTextFromImageAsync(Microsoft.Graphics.Imaging.ImageBuffer, Microsoft.Windows.Vision.TextRecognizerOptions, Microsoft.Windows.Workloads.WorkloadPriority)
public Windows.Foundation.IAsyncOperation<Microsoft.Windows.Vision.RecognizedText> RecognizeTextFromImageAsync (Microsoft.Graphics.Imaging.ImageBuffer imageBuffer,
Microsoft.Windows.Vision.TextRecognizerOptions options, Microsoft.Windows.Workloads.WorkloadPriority priority);
Асинхронно распознает текст в предоставленном изображении.
Параметры
буфер изображений
Несжатое растровое изображение.
варианты
Параметры настройки модели распознавания текста для TextRecognizer.
приоритет
Возвраты
Распознанный текст.
Класс TextRecognizerOptions
public sealed class TextRecognizerOptions
Предоставляет параметры настройки модели распознавания текста для TextRecognizer.
Свойство TextRecognizerOptions.MaxAnalysisSize
public Windows.Graphics.SizeInt32 MaxAnalysisSize { get; set; }
Возвращает или задает максимальный размер изображения.
Значение свойства
Максимальный размер изображения. Значение по умолчанию — 1152 ширина и высота 768.
Замечания
Этот размер является предложением и может не всегда учитываться.
Если исходное изображение больше максимального размера, оно автоматически масштабируется до верхних пределов размера.
Свойство MaxLineCount в TextRecognizerOptions
public uint MaxLineCount { get; set; }
Возвращает или задает максимальное количество строк, возвращаемых из операции распознавания.
Значение свойства
Максимальное количество строк, возвращаемых из операции распознавания.
Замечания
По умолчанию используется maxLineCountSupported. Если указано, максимально допустимое количество строк будет меньше из двух значений: этого числа и MaxLineCountSupported.
Свойство TextRecognizerOptions.OrientationDetection
public Microsoft.Windows.Vision.OrientationDetectionOptions OrientationDetection { get; set; }
Возвращает или задает, следует ли обнаруживать ориентацию текста.
Значение свойства
Указывает, следует ли обнаруживать ориентацию текста. Значение по умолчанию — None.
Конструктор TextRecognizerOptions.#ctor
public TextRecognizerOptions ();
Инициализирует новый экземпляр класса TextRecognizerOptions.