Aracılığıyla paylaş


Metin tanıma kılavuzu

Bu kısa öğretici, WinForms için Windows AI API örneklerine dahil edilen metin tanıma işlevinde yol gösterir. Özellikle, bir görüntüde metin tanıma gerçekleştirmek ve tanınan metni özetlemek için Windows AI API'lerinin nasıl kullanılacağını gösterir.

Önkoşullar

WinForms için Başlarken sayfasındaki adımları tamamlayın.

Giriş

MainForm.cs'daki MainForm sınıfı, aşağıdaki işlevleri uygulayan Windows AI API örnek uygulamasının ana kullanıcı arabirimidir:

  • Dosya: Kullanıcının kendi dosya sisteminden bir görüntü dosyası seçmesine izin verir ve bu görüntüyü Bir PictureBox'ta görüntüler.
  • görüntü işleme: Optik Karakter Tanıma (OCR) kullanarak metin ayıklamak için seçili görüntüyü işler ve sonra ayıklanan metni özetler.

Önemli işlevler ve olay işleyicileri

WinForms için Windows AI API örneklerindeki daha önemli işlevler ve olay işleyicilerinden bazıları şunlardır:

  • SelectFile_Click: Kullanıcının bir görüntü dosyası seçmesi için bir dosya iletişim kutusu açar ve seçili görüntüyü görüntüler.
  • ProcessButton_Click: Yapay zeka modellerini yükleme, metin tanıma gerçekleştirme ve metni özetleme gibi seçili görüntünün işlenmesini işler.
  • LoadAIModels: Metin tanıma ve özetleme için gerekli yapay zeka modellerini (TextRecognizer ve LanguageModel) yükler.
  • PerformTextRecognition: Seçili görüntüde OCR gerçekleştirmek için TextRecognizer'ı kullanır ve metni ayıklar. Bu işlev aşağıdaki Metin tanıma örneğine eklenmiştir.
  • SummarizeImageText: Bir istem verildiğinde ayıklanan metnin özetini oluşturmak için LanguageModel'i kullanır.

Metin tanıma örneği

PerformTextRecognition Bu örnekteki işlev

Giriş görüntüsü.

Başlatılan örnek uygulama.

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

Resim metnini yakaladıktan (sol alt kutuda görüntülenir) ve görüntü metnini özetledikten sonra (sağ alt kutuda görüntülenir) örnek uygulama.

Örneği oluşturma ve çalıştırma

  1. WindowsAppSDK-Samples depoyu kopyalayın.
  2. "Yayın/Deneysel" şubesine geçin.
  3. Samples/WindowsAIFoundry/cs-winforms-pckg klasörüne gidin.
  4. Visual Studio 2022'de WindowsAISample.sln açın.
  5. Çözüm Platformunu Copilot+ bilgisayarınızın mimarisiyle eşleşecek şekilde değiştirin.
  6. Çözüm Gezgini'nde çözüme sağ tıklayın ve çözüm oluşturmak için "Derle"yi seçin.
  7. Derleme başarılı olduktan sonra Çözüm Gezgini'nde projeye sağ tıklayın ve "Başlangıç Projesi Olarak Ayarla" seçeneğini belirleyin.
  8. Örneği çalıştırmak için F5 tuşuna basın veya Hata Ayıklama menüsünden "Hata Ayıklamayı Başlat"ı seçin (örnek, Hata Ayıklama menüsünden "Hata Ayıklama olmadan Başlat" veya Ctrl+F5 tuşlarına basılarak hata ayıklama olmadan da çalıştırılabilir).

Ayrıca bakınız