Chinese OCR in C# and .NET

This article was translated from English: Does it need improvement?
Translated
View the article in English

Bu belgenin diğer sürümleri:

IronOCR, .NET kodlayıcılarının Çince dahil olmak üzere 126 dildeki görüntülerden ve PDF belgelerinden metin okumasına olanak tanıyan bir C# yazılım bileşenidir. Çince Dil Paketi, hem Basitleştirilmiş Çince hem de Geleneksel Çince karakterleri içerir.

Tesseract'ın geliştirilmiş bir dalıdır, yalnızca .NET geliştiricileri için geliştirilmiştir ve hem hız hem de doğruluk bakımından diğer Tesseract motorlarını düzenli olarak geride bırakır. Kutuphanesi, farklı formatlardaki belgeleri ve görüntüleri çeşitli dillerde tanıma olanağı sağlar, Çince de dahil. 125'ten fazla dil için destek sunar ve rakiplerine göre yüksek tanıma doğruluğu sunar. IronOCR'un API'si, genişletilebilirlik ve özelleştirme göz önünde bulundurularak tasarlanmıştır. Ayarlama verilerinizi veya özelliklerinizi izleyiciye ekleyerek IronOCR'un yüksek veri akışı ve doğruluğa ulaşmasına katkıda bulunabilirsiniz. IronOCR, birçok Optik Karakter Tanıma Tekniği kullanır. Windows PC, Linux, macOS ve diğer ünlü platformlarda kullanabiliriz.

IronOcr.Languages.Chinese İçeriği

Bu paket, .NET için 352 OCR dili içerir:

  • ChineseSimplified
  • ChineseSimplifiedBest
  • ChineseSimplifiedFast
  • ChineseSimplifiedVertical
  • ChineseSimplifiedVerticalBest
  • ChineseSimplifiedVerticalFast
  • ChineseTraditional
  • ChineseTraditionalBest
  • ChineseTraditionalFast
  • ChineseTraditionalVertical
  • ChineseTraditionalVerticalBest
  • ChineseTraditionalVerticalFast

İndirme

Çin Dili Paketi'ni [中文 (Zhōngwén)] aşağıdaki bağlantılardan indirebiliriz:

Chinese Dili için IronOCR Kullanmaya Başlamak

Bir C# Projesi Oluşturun veya Açın

IronOCR ile başlamak için bir C# .NET projesi oluşturmalıyız. Bu amaç için Visual Studio 2022 kullanıyoruz. İhtiyacınıza göre bir sürüm seçebilirsiniz. Sorunsuz bir deneyim için en yeni Visual Studio sürümü önerilir. Görüntü seçmek için bir GUI arayüz oluşturacağız. Resmin doğrudan yolunu vererek IronOCR'u bir konsol uygulamasında da kullanabiliriz. Visual Studio 2022'de bir C# projesi oluşturmak için aşağıdaki adımları uygulayın:

  • Visual Studio 2022'yi açın.
  • 'Yeni proje oluştur' butonuna tıklayın.
Chinese Ocr 1 related to Bir C# Projesi Oluşturun veya Açın
  • 'Windows' arama çubuğuna yazın, arama sonuçlarından 'Windows Form' uygulamasını seçin ve 'İleri' butonuna tıklayın.
Chinese Ocr 2 related to Bir C# Projesi Oluşturun veya Açın
  • Projeye bir ad verin. Projeye 'ChineseOCR' adını veriyorum. Adı verdikten sonra 'İleri' butonuna tıklayın.
Chinese Ocr 3 related to Bir C# Projesi Oluşturun veya Açın
  • Sonraki ekranda .NET framework'ü seçin. Projenizin ihtiyaçlarına göre .NET framework'ü seçin. Bu kılavuz için .NET 5.0 sürümünü seçiyoruz.
Chinese Ocr 4 related to Bir C# Projesi Oluşturun veya Açın
  • Seçim yaptıktan sonra 'Oluştur' butonuna tıklayın. Visual Studio'da kolayca C# Windows Form projesi oluşturulacaktır.

Proje oluşturuldu ve şimdi IronOCR kütüphanesi ile kullanıma hazır. Ayrıca mevcut bir C# projesini de kullanabiliriz. Projeyi açın ve IronOCR kütüphanesinin kurulumuna başlayın. Bir sonraki bölümde C# projelerinde IronOCR kütüphanesini kurma yöntemlerini inceleyeceğiz.

Kurulum

NuGet Paket Yöneticisi Kullanarak

NuGet Paket Yöneticisi ile IronOCR kütüphanesini yüklemek için NuGet Paket Yöneticisi arayüzünü açmalıyız. IronOCR kütüphanesini yüklemek için aşağıdaki adımları izleyin:

  • Ana menüden 'Araçlar' üzerine tıklayın, açılır menüden 'NuGet Paket Yöneticisi'ne üzerine gelin ve 'Çözüm için NuGet Paket Yöneticisini Yönet'i seçin.
Chinese Ocr 5 related to NuGet Paket Yöneticisi Kullanarak
  • Bu, NuGet Paket Yöneticisi arayüzünü açacaktır. Gezin sekmesine gidin ve IronOCR Chinese'ı arayın. Arama sonuçlarından doğru paketi seçin ve yüklemek için 'Yükle' butonuna tıklayın.
Chinese Ocr 6 related to NuGet Paket Yöneticisi Kullanarak
  • Kütüphanenin kurulumu başlayacaktır. Kurulumdan sonra projenizde IronOCR kütüphanesini kullanabileceksiniz.

Paket Yöneticisi Konsolu Kullanarak

Bir konsol kullanmak her zaman kolay bir seçenektir. IronOCR kütüphanesini Paket Yöneticisi Konsolu kullanarak da yükleyebiliriz. IronOCR kütüphanesini yüklemek için verilen adımları izleyin:

  • Visual Studio'da Paket Yöneticisi Konsolunu açın. Genellikle Visual Studio'nun altında bulunur.
  • Konsolda aşağıdaki komutu yazın:

    Install-Package IronOcr.Languages.Chinese
  • Konsolda kütüphanenin kurulum ilerlemesini göreceksiniz. Kütüphane otomatik olarak yüklenecektir. Kurulumdan sonra projemiz IronOCR kütüphanesi için hazır hale gelecek.

Kod Örneği: Chinese Dili için OCR

Şimdi, Chinese dili için IronOCR kütüphanesini uygulamak amacıyla kod yazma zamanı. Öncelikle, görüntü dosyasını seçmek için ön ucu geliştirmeliyiz. Nasıl yapabileceğimize bir göz atalım.

Ön Ucu Geliştirme

Ön tarafa 'Araç Kutusu' elemanlarını kullanarak tasarlayacağız. Bir Buton, Bir Resim Kutusu, Zengin Metin Kutusu ve iki etiket oluşturacağız. Bu elemanları Araç Kutusundan sürükleyip bırakacak ve windows formuna yerleştireceğiz. Bu elemanları stil içinde yöneteceğiz.

Buton, bilgisayardan görüntü dosyasını seçmek için kullanılacaktır. Resim Kutusu seçilen görüntü dosyasını yükleyecek ve Zengin Metin Kutusu çıktı metnini gösterecektir. Her elemanın boyutunu ihtiyaçlarınıza göre ayarlayabilirsiniz. Son ön uç tasarımı böyle görünecektir:

Chinese Ocr 7 related to Ön Ucu Geliştirme

Projeyi çalıştırdığınızda bu pencere açılacak. Pencerelerin hizalamasını ekranın ortasına ayarladık. Dolayısıyla, bu ekran ortada görünecektir.

Ön yüzümüz hazır. Sonraki adım, butonun arka uç işlevselliğini eklemektir.

IronOCR için Arka Yüz Kodu

Kodumuzda kullanmak için öncelikle IronOCR ad alanını içe aktarmalıyız. Dosyanın üst kısmına aşağıdaki satırı yazın:

using IronOCR;
using IronOCR;
Imports IronOCR
$vbLabelText   $csharpLabel

'Görüntüyü Seç' butonunu, resmi seçmek ve Resim Kutusu'na yüklemek için kullanacağız. IronOCR, Chinese basitleştirilmiş metin görüntüsünü işleyecek ve çıktıyı Zengin Metin Kutusu'nda gösterecek. Butonun işlevselliğini eklemek için butona çift tıklayalım. Açıklanan işlevselliği eklemek için aşağıdaki kod satırlarını yazın:

private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
Private Sub btn_image_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim open As New OpenFileDialog()
	If open.ShowDialog() = DialogResult.OK Then
		' display image in picture box  
		img_image.Image = New Bitmap(open.FileName)

		Dim Ocr = New IronTesseract()

Ocr.Language = OcrLanguage.ChineseTraditional

Using Input = New OcrInput(open.FileName)
			Dim Result = Ocr.Read(Input)

			txt_output.Text = Result.Text
End Using
	End If
End Sub
$vbLabelText   $csharpLabel

Kullanıcı butona tıkladığında, görüntüyü seçmek için bir diyalog ortaya çıkacaktır. Kullanıcı görüntüyü seçtiğinde, otomatik olarak resim kutusuna yüklenecektir. Resimleri resim kutusuna yazdırmak için Bitmap() kullanıyoruz. Bundan sonra, IronOCR görüntüleri Chinese metnine dönüştürecek. Biz Ocr. Metni tanımak için dili ChineseTraditional olarak ayarlıyoruz. Ocr. Okuma işlevi süreci okuyacak ve OCR sonucunu Result değişkenine saklayacaktır. Metni PDF, metin veya HTML formatında kaydetmeniz gerekiyorsa, dosyayı istediğiniz herhangi bir çıktı formatında kaydetmek için SaveAs işlevini kullanacaksınız — IronOCR birden fazla çıktı formatını destekler.

Projeyi Çalıştırın

Şimdi projeyi çalıştırma zamanı. Visual Studio'da Çalıştır butonuna tıklayın. Bu ekranı göreceğiz.

Chinese Ocr 8 related to Projeyi Çalıştırın

'Görüntüyü Seç' butonuna tıklayın. Dosyaları Seç diyalog kutusu açılacaktır. Bir görüntü dosyası seçin ve enter'ye basın.

Chinese Ocr 9 related to Projeyi Çalıştırın

Resmi kutusuna yükleyecek, görüntüyü otomatik olarak tarayacak ve çıktıyı metin kutusunda gösterecektir.

Chinese Ocr 10 related to Projeyi Çalıştırın

Bu, seçtiğimiz görüntüden alınan çıktıdır. IronOCR, PDF dosyalarını okuma ve tarama da destekler. PDF dosyalarının düzenlenebilir formatını taramak ve metni tanımak için IronOCR'u kullanabiliriz. Bu farklı dillerde de yapılabilir. IronOCR mevcut PDF belgesini aranabilir bir PDF yapabilir. IronOCR, görüntüleri daha net görmek ve anlamak için birçok görüntü filtresine sahiptir. İşte filtreler:

  • Input.Binarize()
  • Input.Contrast()
  • Input.Deskew()
  • Input.DeNoise()
  • Input.Dilate()
  • Input.EnhanceResolution(300)

Tüm bu işlevler karakterlerin görünürlüğünü artırır. IronOCR, bu işlevleri kullanarak görüntüleri temizler ve aranabilir bir PDF oluşturur. Bunun nasıl yapılabileceğine bir göz atalım:

using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
	Input.AddPdf("scan.pdf") Input.Deskew()
	Dim Result = Ocr.Read(Input)
	Result.SaveAsSearchablePdf("searchable.pdf")
End Using
$vbLabelText   $csharpLabel

Lisanslama

IronOCR geliştirme için ücretsizdir. Tüm özelliklerini ücretsiz olarak aktif bir şekilde kullanabilirsiniz. IronOCR ayrıca üretim için herhangi bir ödeme gerektirmeyen bir ücretsiz deneme sunar. Iron Software şu anda popüler bir fırsat da sunuyor — sadece iki yazılım ürününün fiyatına beş yazılım ürününden oluşan bir paket. İki yazılım ürününün ücretini bir kere ödeyin ve IronPDF ve IronXL dahil olmak üzere tüm beş ürünü alabileceksiniz. Lisanslama hakkında daha fazla bilgiyi bu linkten bulabilirsiniz.