Sdílet prostřednictvím


Průvodce rozpoznáváním textu

Tento krátký kurz vás provede funkcemi rozpoznávání textu, které jsou součástí ukázek rozhraní API pro Windows AI pro WinForms. Konkrétně ukazuje, jak pomocí rozhraní API windows AI provádět rozpoznávání textu na obrázku a sumarizovat rozpoznaný text.

Požadavky

Dokončete kroky na stránce Začínáme pro WinForms.

Úvod

Třída MainForm v MainForm.cs je hlavním uživatelským rozhraním ukázkové aplikace rozhraní API pro Windows AI, která implementuje následující funkce:

  • Vybrat soubor: Umožňuje uživateli vybrat soubor obrázku ze svého systému souborů a tento obrázek zobrazí v PictureBoxu.
  • Obrázek procesu: Zpracuje vybraný obrázek k extrakci textu pomocí optického rozpoznávání znaků (OCR) a pak shrne extrahovaný text.

Klíčové funkce a obslužné rutiny událostí

Mezi významnější funkce a obslužné rutiny událostí v ukázkách rozhraní API windows AI pro WinForms patří:

  • SelectFile_Click: Otevře dialogové okno souboru, ve které uživatel vybere soubor obrázku a zobrazí vybraný obrázek.
  • ProcessButton_Click: Zpracovává zpracování vybraného obrázku, včetně načítání modelů AI, rozpoznávání textu a shrnutí textu.
  • LoadAIModels: Načte potřebné modely AI (TextRecognizer a LanguageModel) pro rozpoznávání a shrnutí textu.
  • PerformTextRecognition: Používá TextRecognizer k provedení OCR na vybraném obrázku a extrahuje text. Tato funkce je součástí následujícího příkladu rozpoznávání textu.
  • SummarizeImageText: Používá LanguageModel k vytvoření souhrnu daného textu na základě dané výzvy.

Příklad rozpoznávání textu

Funkce PerformTextRecognition v tomto příkladu

Vstupní obrázek.

Inicializovaná ukázková aplikace.

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;
}

Ukázková aplikace po zachycení textu obrázku (zobrazeného v levém dolním poli) a shrnutí textu obrázku (zobrazeného v pravém dolním poli)

Sestavení a spuštění ukázky

  1. Naklonujte úložiště WindowsAppSDK-Samples .
  2. Přepněte do větve "release/experimental".
  3. Přejděte do složky Samples/WindowsAIFoundry/cs-winforms-pckg .
  4. Otevřete WindowsAISample.sln v sadě Visual Studio 2022.
  5. Změňte platformu řešení tak, aby odpovídala architektuře počítače Copilot+ .
  6. V Průzkumníku řešení klikněte pravým tlačítkem myši na řešení a vyberte Sestavit řešení.
  7. Po úspěšném sestavení klikněte pravým tlačítkem myši na projekt v Průzkumníku řešení a vyberte Nastavit jako spouštěný projekt.
  8. Stisknutím klávesy F5 nebo výběrem možnosti Spustit ladění v nabídce Ladění spusťte ukázku (ukázku můžete spustit i bez ladění výběrem možnosti Spustit bez ladění v nabídce Ladění nebo Ctrl+F5).

Viz také