Windows 앱 SDK 텍스트 인식 API에 대한 API 참조
Windows 앱 SDK 함께 제공되고 이미지의 문자를 식별하고, 단어, 선, 다각형 경계를 인식하고, 생성된 일치 항목에 대한 신뢰 수준을 제공하는 데 사용할 수 있는 새로운 AI(인공 지능) 텍스트 인식 API에 대해 알아봅니다.
자세한 내용은 Windows 앱 SDK 텍스트 인식을 참조하세요.
Important
Windows 앱 SDK 실험 채널에는 개발 초기 단계의 API 및 기능이 포함됩니다. 실험적 채널의 모든 API는 광범위한 수정 및 호환성이 손상되는 변경이 적용되며 언제든지 후속 릴리스에서 제거될 수 있습니다. 프로덕션 환경에서는 사용할 수 없으며 실험적 기능을 사용하는 앱은 Microsoft Store에 게시할 수 없습니다.
Microsoft.Windows.Vision 네임스페이스
이미지의 텍스트 콘텐츠를 분석하는 기계 학습 모델에 대한 API를 제공합니다.
Microsoft.Windows.Vision.TextRecognition.BoundingBox 구조체
public struct BoundingBox
인식된 단어와 텍스트 줄의 경계에 사용되는 점이 4개인 다각형입니다.
필드
BottomLeft
경계 상자의 왼쪽 아래 모서리입니다.
BottomRight
경계 상자의 오른쪽 아래 모서리입니다.
TopLeft
경계 상자의 왼쪽 위 점입니다.
TopRight
경계 상자의 오른쪽 위 지점입니다.
설명
단어 또는 줄의 경계로 반환되는 경우 TopLeft, TopRight, BottomRight 및 BottomLeft 지점은 이미지에서 인식된 텍스트의 회전 및 기울이기를 기준으로 합니다. 다음 다이어그램은 0이 TopLeft이고, 1이 TopRight이고, 2가 BottomRight이고, 3이 텍스트에 상대적인 BottomLeft인 다양한 텍스트 회전에 대한 점 레이아웃을 보여 줍니다.
Microsoft.Windows.Vision.DetectedLineStyle 열거형
public enum DetectedLineStyle
인식할 수 있는 선 스타일을 지정합니다.
열거형 필드
필기: 0
텍스트 줄이 손으로 작성되었습니다.
기타: 1
텍스트 줄이 손으로 작성되지 않았습니다.
Microsoft.Windows.Vision.OrientationDetectionOptions 열거형
public enum OrientationDetectionOptions
인식할 수 있는 텍스트 방향을 지정합니다.
열거형 필드
없음: 0
방향이 인식되지 않습니다.
DetectOrientation: 1
방향이 인식됩니다.
Microsoft.Windows.Vision.RecognizedLine 클래스
public sealed class RecognizedLine
인식된 텍스트의 한 줄을 나타냅니다.
Microsoft.Windows.Vision.RecognizedLine.Style 속성
public Microsoft.Windows.Vision.RecognizedLineStyle Style { get; }
인식된 선 스타일을 가져옵니다.
속성 값
인식된 선 스타일입니다.
설명
텍스트 줄을 필기했는지 여부와 인식 신뢰도 수준을 포함합니다.
Microsoft.Windows.Vision.RecognizedLine.Text 속성
public string Text { get; }
인식된 줄의 텍스트를 가져옵니다.
속성 값
인식된 줄의 텍스트입니다.
설명
공백과 연결된 모든 단어입니다.
Microsoft.Windows.Vision.RecognizedLine.Words 속성
public Microsoft.Windows.Vision.RecognizedWord[] Words { get; }
인식된 줄의 단어입니다.
속성 값
인식된 줄의 단어입니다.
Microsoft.Windows.Vision.RecognizedLineStyle 구조체
public struct RecognizedLineStyle
인식된 선의 스타일을 나타냅니다.
구조체 필드
신뢰
선 스타일 인식의 신뢰도 수준입니다.
속성
선 스타일 이름입니다.
Microsoft.Windows.Vision.RecognizedText 클래스
public sealed class RecognizedText
이미지-텍스트 인식 작업의 결과를 나타냅니다.
Microsoft.Windows.Vision.RecognizedText.ImageAngle 속성
public float ImageAngle { get; }
인식된 텍스트의 시계 방향 회전 각도를 도 단위로 가져옵니다.
속성 값
인식된 텍스트의 시계 방향 회전 각도(도)입니다.
Microsoft.Windows.Vision.RecognizedText.Lines 속성
public Microsoft.Windows.Vision.RecognizedLine[] Lines { get; }
인식된 줄의 컬렉션을 가져옵니다.
속성 값
인식된 줄의 컬렉션입니다.
Microsoft.Windows.Vision.RecognizedWord 클래스
public sealed class RecognizedWord
인식된 단일 단어를 나타냅니다.
Microsoft.Windows.Vision.RecognizedWord.BoundingBox 속성
public Microsoft.Windows.Vision.BoundingBox BoundingBox { get; }
인식된 단어의 사분면 경계를 가져옵니다.
속성 값
인식된 단어의 사분면 경계입니다. TopLeft는 단어의 회전을 기준으로 합니다.
Microsoft.Windows.Vision.RecognizedWord.Confidence 속성
public float Confidence { get; }
이 단어가 올바르게 인식되었을 가능성이 있는지 가져옵니다.
속성 값
와우 가능성이이 단어는 제대로 인식되었다. 값 범위는 0.0에서 1.0까지입니다.
Microsoft.Windows.Vision.RecognizedWord.Text 속성
public string Text { get; }
인식된 단어의 텍스트를 가져옵니다.
속성 값
인식된 단어의 텍스트입니다.
Microsoft.Windows.Vision.TextRecognition.TextRecognizer 클래스
public sealed class TextRecognizer : System.IDisposable
원본 이미지에서 단어와 선 및 해당 사분면 경계를 인식합니다.
Microsoft.Windows.Vision.TextRecognizer.Close 메서드
개체 및 연결된 리소스를 삭제합니다.
설명
C#에서 구현되지 않았습니다.
Microsoft.Windows.Vision.TextRecognizer.CreateAsync 메서드
public static Windows.Foundation.IAsyncOperation<Microsoft.Windows.Vision.TextRecognizer> CreateAsync ();
TextRecognizer 클래스의 새 인스턴스를 비동기적으로 만듭니다.
반품
TextRecognizer 클래스의 새 인스턴스입니다.
GetModelReadyStatus가 준비되지 않은 경우 오류가 반환됩니다.
Microsoft.Windows.Vision.TextRecognizer.IsAvailable 메서드
public static bool IsAvailable ();
기본 언어 모델이 설치되어 있는지 여부를 검색합니다.
반품
기본 언어 모델이 설치된 경우 True입니다. 그렇지 않으면 false입니다.
Microsoft.Windows.Vision.TextRecognizer.MakeAvailableAsync 메서드
public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,
Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
기본 언어 모델이 설치되어 있고 사용할 수 있는지 확인합니다.
반품
완료 시 PackageDeploymentResult를 반환하는 진행률이 있는 비동기 작업입니다.
Microsoft.Windows.Vision.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);
제공된 이미지의 텍스트를 인식합니다.
매개 변수
imageBuffer
압축되지 않은 비트맵입니다.
options
TextRecognizer에 대한 텍스트 인식 모델을 구성하는 옵션입니다.
반품
인식된 텍스트입니다.
Microsoft.Windows.Vision.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);
제공된 이미지의 텍스트를 비동기적으로 인식합니다.
매개 변수
imageBuffer
압축되지 않은 비트맵입니다.
options
TextRecognizer에 대한 텍스트 인식 모델을 구성하는 옵션입니다.
반품
인식된 텍스트입니다.
Microsoft.Windows.Vision.TextRecognizerOptions 클래스
public sealed class TextRecognizerOptions
TextRecognizer에 대한 텍스트 인식 모델을 구성하는 옵션을 제공합니다.
Microsoft.Windows.Vision.TextRecognizerOptions.MaxAnalysisSize 속성
public Windows.Graphics.SizeInt32 MaxAnalysisSize { get; set; }
최대 이미지 크기를 가져오거나 설정합니다.
속성 값
최대 이미지 크기입니다. 기본값은 너비가 1152이고 높이가 768입니다.
설명
이 크기는 제안 사항이며 항상 적용되지 않을 수도 있습니다.
원본 이미지가 최대 크기보다 크면 자동으로 상한값으로 축소됩니다.
Microsoft.Windows.Vision.TextRecognizerOptions.MaxLineCount 속성
public uint MaxLineCount { get; set; }
인식 작업에서 반환할 최대 줄 수를 가져오거나 설정합니다.
속성 값
인식 작업에서 반환할 최대 줄 수입니다.
설명
기본값은 MaxLineCountSupported입니다. 지정한 경우 반환되는 최대 줄은 이 값보다 작고 MaxLineCountSupported입니다.
Microsoft.Windows.Vision.TextRecognizerOptions.OrientationDetection 속성
public Microsoft.Windows.Vision.OrientationDetectionOptions OrientationDetection { get; set; }
텍스트 방향을 검색할지 여부를 가져오거나 설정합니다.
속성 값
텍스트 방향을 검색할지 여부입니다. 기본값은 None입니다.
Microsoft.Windows.Vision.TextRecognizerOptions.#ctor 생성자
public TextRecognizerOptions ();
TextRecognizerOptions 클래스의 새 인스턴스를 초기화합니다.
Microsoft.Windows.Imaging 네임스페이스
이미지를 조작하는 기계 학습 모델에 대한 API를 제공합니다.
Microsoft.Windows.Imaging.ImageBuffer 클래스
public sealed class ImageBuffer : System.IDisposable
효율적인 교차 프로세스 마샬링을 위한 압축되지 않은 비트맵을 나타냅니다.
설명
ImageBuffer는 이미지 데이터가 필요한 TextRecognizer와 같은 AI 모델 API와 함께 사용할 수 있습니다. 일반적인 사용에는 기존 SoftwareBitmap에서 ImageBuffer를 만드는 작업이 포함됩니다.
Microsoft.Windows.Imaging.ImageBuffer.Buffer 속성
public Windows.Storage.Streams.IBuffer Buffer { get; }
현재 이미지 버퍼를 가져옵니다.
속성 값
현재 이미지 버퍼입니다.
Microsoft.Windows.Imaging.ImageBuffer.BufferLength 속성
public uint BufferLength { get; }
이미지 버퍼의 길이를 가져옵니다.
속성 값
이미지 버퍼의 길이입니다.
Microsoft.Windows.Imaging.ImageBuffer.Close 메서드
개체 및 연결된 리소스를 삭제합니다.
설명
C#에서 구현되지 않았습니다.
Microsoft.Windows.Imaging.ImageBuffer.CopyToBuffer(System.Byte[]) 메서드
public void CopyToBuffer (byte[] values);
현재 버퍼를 제공된 대상 버퍼에 복사합니다.
매개 변수
values
버퍼의 바이트 벡터입니다.
Microsoft.Windows.Imaging.ImageBuffer.CreateBufferAttachedToBitmap(Windows.Graphics.Imaging.SoftwareBitmap) 메서드
public static Microsoft.Windows.Imaging.ImageBuffer CreateBufferAttachedToBitmap (Windows.Graphics.Imaging.SoftwareBitmap softwareBitmap);
비트맵 개체에서 IMemoryBufferReference를 가져오면 기존 SotftwareBitmap에서 새 ImageBuffer를 만듭니다.
매개 변수
softwareBitmap
ImageBuffer를 만들 SotftwareBitmap입니다.
반품
지원되지 않는 형식인 경우 ImageBuffer 또는 null입니다.
설명
SoftwareBitmap은 비동기 작업이 완료되고 새 ImageBuffer가 제거될 때까지 잠깁니다.
Microsoft.Windows.Imaging.ImageBuffer.CreateCopyFromBitmap(Windows.Graphics.Imaging.SoftwareBitmap) 메서드
public static Microsoft.Windows.Imaging.ImageBuffer CreateCopyFromBitmap (Windows.Graphics.Imaging.SoftwareBitmap softwareBitmap);
기본 비트맵 데이터를 복사하여 기존 SotftwareBitmap에서 새 ImageBuffer를 만듭니다.
매개 변수
softwareBitmap
ImageBuffer를 만들 SotftwareBitmap입니다.
반품
지원되지 않는 형식인 경우 ImageBuffer 또는 null입니다.
설명
SoftwareBitmap은 비동기 작업이 완료되고 새 ImageBuffer가 제거될 때까지 잠깁니다.
Microsoft.Windows.Imaging.ImageBuffer.CreateSoftwareBitmap 메서드
public Windows.Graphics.Imaging.SoftwareBitmap CreateSoftwareBitmap ();
ImageBuffer에 저장된 픽셀 데이터에서 BGRA32 픽셀 형식의 새 SoftwareBitmap을 만듭니다.
반품
픽셀 형식 BGRA32의 새 SoftwareBitmap입니다.
Microsoft.Windows.Imaging.ImageBuffer.Height 속성
public uint Height { get; }
이미지의 높이를 픽셀 단위로 가져옵니다.
속성 값
이미지의 높이(픽셀)입니다.
Microsoft.Windows.Imaging.ImageBuffer.#ctor(Windows.Storage.Streams.IBuffer, Microsoft.Windows.Imaging.PixelFormat, System.UInt32, System.UInt32) 생성자
public ImageBuffer (Windows.Storage.Streams.IBuffer buffer,
Microsoft.Windows.Imaging.PixelFormat pixelFormat, uint width, uint height);
ImageBuffer 클래스의 새 인스턴스를 초기화합니다.
매개 변수
buffer
ImageBuffer입니다.
pixelFormat
이미지의 픽셀 형식입니다.
width
이미지의 너비(픽셀)입니다.
높이
이미지의 높이(픽셀)입니다.
Microsoft.Windows.Imaging.ImageBuffer.PixelFormat 속성
public Microsoft.Windows.Imaging.PixelFormat PixelFormat { get; }
이미지의 픽셀 형식을 가져옵니다.
속성 값
이미지의 픽셀 형식입니다.
Microsoft.Windows.Imaging.ImageBuffer.Width 속성
public uint Width { get; }
이미지의 너비를 픽셀 단위로 가져옵니다.
속성 값
이미지의 너비(픽셀)입니다.
Microsoft.Windows.Imaging.PixelFormat 열거형
public enum PixelFormat
기본 비트맵 데이터의 이진 레이아웃 유형을 지정합니다.
열거형 필드
정의되지 않음: 0
이진 형식이 정의되지 않았습니다.
Rgb24: 1
이진 형식은 픽셀당 24비트입니다. 각각 8비트가 빨간색, 녹색 및 파란색 구성 요소에 사용됩니다.
Argb32: 2
이진 형식은 픽셀당 32비트입니다. 각각 8비트가 알파, 빨강, 녹색 및 파랑 구성 요소에 사용됩니다.
Rgba32: 3
이진 형식은 픽셀당 32비트입니다. 각각 8비트가 빨간색, 녹색, 파랑 및 알파 구성 요소에 사용됩니다. 색 구성 요소는 빨강, 녹색, 파랑 및 알파 순서로 저장됩니다.
Bgra32: 4
이진 형식은 픽셀당 32비트입니다. 각각 8비트가 파란색, 녹색, 빨간색 및 알파 구성 요소에 사용됩니다. 색 구성 요소는 파란색, 녹색, 빨간색 및 알파 순서로 저장됩니다.
회색8: 5
이진 형식은 픽셀당 16비트입니다. 색 정보는 회색 65536 음영을 지정합니다.