共用方式為


文字辨識器指南

這段簡短的教學將介紹 Windows AI API 範例 中包含的文字辨識功能。 具體來說,它示範如何利用 Windows AI API 對圖片進行文字辨識並摘要已識別的文字。

先決條件

完成 WinForms 用戶入門頁面中 的步驟。

簡介

MainForm.cs 中的 MainForm 類別是 Windows AI API 範例應用程式的主要使用者介面,實作以下功能:

  • 選取 [檔案]:讓使用者從文件系統中選取圖像檔,並在 PictureBox 中顯示該影像。
  • 處理影像:使用光學字元辨識處理選取的影像以擷取文字,然後摘要擷取的文字。

重要函式和事件處理程式

Windows AI API 範例 中 WinForms 中較重要的函式與事件處理程式包括以下幾項:

  • SelectFile_Click:開啟檔案對話框,讓用戶選取圖像檔,並顯示選取的影像。
  • ProcessButton_Click:處理選取影像的處理,包括載入 AI 模型、執行文字辨識,以及摘要文字。
  • LoadAIModels:載入必要的 AI 模型(TextRecognizer 和 LanguageModel),以進行文字辨識和摘要。
  • PerformTextRecognition:使用 TextRecognizer 在選取的影像上執行 OCR,並擷取文字。 此函式包含在下列 文字辨識範例中。
  • SummarizeImageText:使用 LanguageModel,在出現提示時產生所擷取文字的摘要。

文字辨識範例

此範例中的函式 PerformTextRecognition

輸入影像。

初始化的範例應用程式。

private async Task<string> PerformTextRecognition()
{
    using TextRecognizer textRecognizer = await TextRecognizer.CreateAsync();
    ImageBuffer? imageBuffer = await LoadImageBufferFromFileAsync(pathToImage);

    if (imageBuffer == null)
    {
        throw new Exception("Failed to load image buffer.");
    }

    RecognizedText recognizedText = 
        textRecognizer!.RecognizeTextFromImage(imageBuffer);

    var recognizedTextLines = recognizedText.Lines.Select(line => line.Text);
    string text = string.Join(Environment.NewLine, recognizedTextLines);

    richTextBoxForImageText.Text = text;
    return text;
}

擷取影像文字之後的範例應用程式(顯示在左下方方塊中),並摘要影像文字(顯示在右下方塊中)。

建置並執行範例

  1. 複製 WindowsAppSDK-Samples 存放庫。
  2. 切換至 「發行/實驗性」分支。
  3. 流覽至 Samples/WindowsAIFoundry/cs-winforms-pckg 資料夾。
  4. 在 Visual Studio 2022 中開啟WindowsAISample.sln。
  5. 變更解決方案平臺,以符合 Copilot+ 計算機的架構。
  6. 以滑鼠右鍵按兩下方案總管中的方案,然後選取 [建置] 以建置方案。
  7. 建置成功之後,以滑鼠右鍵按兩下方案總管中的項目,然後選取 [設定為啟始專案]。
  8. 按 F5 或從 [偵錯] 選單選取 [開始偵錯],以執行範例(您也可以從 [偵錯] 功能表或 Ctrl+F5 選取 [啟動但不偵錯] 來執行範例。

另請參閱