Windows App SDK での AI テキスト認識 (OCR) の API リファレンス
重要
Windows App SDK の最新の 試験的チャネル リリースで使用できます。
Windows App SDK の実験用チャネルには、開発の初期段階の API と機能が含まれています。 実験用チャネル内のすべての API は、広範な変更と破壊的変更の対象となり、今後のリリースからいつでも削除される可能性があります。 試験段階の機能は運用環境での使用はサポートされておらず、使用するアプリは Microsoft Store に公開できません。
- パッケージ化されていないアプリはサポートされていません。
画像内のテキスト (文字、単語、線、多角形のテキスト境界、各一致の信頼度) を検出して抽出し、コンピューターで読み取り可能な文字ストリームに変換できる、人工知能 (AI) によってサポートされるWindows アプリ SDK API について説明します。
詳細については、Windows アプリ SDKの「Get Started with Text Recognition (OCR)」を参照してください。
ヒント
これらの API とその機能に関するフィードバックを提供するには、Windows App SDK GitHub リポジトリに 新しいIssue を作成してください (タイトルに OCR を含む) または既存のIssueに応答してください。
Microsoft.Windows.Vision namespace
画像のテキスト コンテンツを分析する機械学習モデルの API を提供します。
DetectedLineStyle 列挙
public enum DetectedLineStyle
認識できる行のスタイルを指定します。
フィールド
Handwritten: 0
テキスト行は手書きです。
Other: 1
テキスト行は手書きではありません。
OrientationDetectionOptions 列挙
public enum OrientationDetectionOptions
認識できるテキストの向きを指定します。
フィールド
None: 0
向きが認識されません。
DetectOrientation: 1
向きが認識されます。
RecognizedLine クラス
public sealed class RecognizedLine
認識されたテキストの 一行を表します。
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
認識された行のスタイルを表します。
フィールド
信頼度
行スタイル認識の信頼度レベル。
Name
行のスタイル名。
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
認識された ひとつの単語を表します。
RecognizedWord.BoundingBox プロパティ
public Microsoft.Windows.Vision.BoundingBox BoundingBox { get; }
認識された単語の四角形境界を取得します。
プロパティ値
認識された単語の四角形境界。 TopLeft は、単語の回転を基準にしています。
RecognizedWord.Confidence プロパティ
public float Confidence { get; }
この単語が正しく認識された可能性を取得します。
プロパティ値
この単語が正しく認識された可能性。 値の範囲は 0.0 から 1.0 (両端の値を含む) です。
RecognizedWord.Text プロパティ
public string Text { get; }
認識された単語のテキストを取得します。
プロパティ値
認識された単語のテキスト。
TextRecognition.BoundingBox 構造体
public struct BoundingBox
認識された単語とテキスト行の境界に使用される 4 つのポイントを持つ多角形。
フィールド
BottomLeft
境界ボックスの左下隅。
BottomRight
境界ボックスの右下隅。
TopLeft
境界ボックスの左上のポイント。
TopRight
境界ボックスの右上のポイント。
解説
単語または行の境界として返された場合、TopLeft、TopRight、BottomRight、および BottomLeft ポイントは、画像内で認識されたテキストの回転と傾斜を基準とします。 次の図は、0 が TopLeft、1 が TopRight、2 が BottomRight、3 が BottomLeft (すべてテキストを基準とする) であるさまざまなテキスト回転のポイント レイアウトを示しています。
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 が Ready でない場合、エラーが返されます。
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.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 のテキスト認識モデルを構成するためのオプション。
返品
認識されたテキスト。
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 のテキスト認識モデルを構成するためのオプション。
返品
認識されたテキスト。
TextRecognizerOptions クラス
public sealed class TextRecognizerOptions
TextRecognizer のテキスト認識モデルを構成するためのオプションを提供します。
TextRecognizerOptions.MaxAnalysisSize プロパティ
public Windows.Graphics.SizeInt32 MaxAnalysisSize { get; set; }
最大画像サイズを取得または設定します。
プロパティ値
最大画像サイズ。 既定値は、幅 1152、高さ 768 です。
解説
このサイズは提案であり、常に優先されるとは限りません。
ソース画像が最大サイズより大きい場合は、自動的にサイズの上限に縮小されます。
TextRecognizerOptions.MaxLineCount プロパティ
public uint MaxLineCount { get; set; }
認識操作から返される行の最大数を取得または設定します。
プロパティ値
認識操作から返される行の最大数。
解説
既定値は MaxLineCountSupported です。 指定した場合、返される最大行数は、この値と MaxLineCountSupported の小さい方になります。
TextRecognizerOptions.OrientationDetection プロパティ
public Microsoft.Windows.Vision.OrientationDetectionOptions OrientationDetection { get; set; }
テキストの向きを検出するかどうかを取得または設定します。
プロパティ値
テキストの向きを検出するかどうか。 既定値は None です。
TextRecognizerOptions.#ctor コンストラクター
public TextRecognizerOptions ();
TextRecognizerOptions クラスの新しいインスタンスを初期化します。