Altbilgi içeriğine atla
OCR ARAçLARı
Tesseract OCR'yi Windows üzerindeki .NET için nasıl kullanılır

Windows'ta Tesseract Ocr (Kod Örneği Eğitimi)

Tesseract OCR Nedir?

Tesseract, çeşitli işletim sistemlerinde kullanılabilen bir optik karakter tanıma motorudur. Bu yazılım, Apache Lisansı altında yayınlanan ücretsiz bir yazılımdır. Bu rehberde, Windows 10 makinemde Tesseract'ı kurmak için izlediğim adımları size aktaracağım. Ana sürüm 5, güncel kararlı sürümdür ve 30 Kasım 2021'de yayımlanan 5.0.0 sürümüyle başlamıştır.


Adım 1: Windows 10'da .exe Dosyası Kullanarak Tesseract OCR Kurun:

Dil verilerini yüklemek için: sudo port install tesseract -<langcode> Dil kodlarının listesi, MacPorts Tesseract sayfası Homebrew'de bulunmaktadır. Windows için Tesseract OCR'yi kurmanın ilk adımı, makinenizin işletim sistemine uygun olan .exe yükleyicisini indirmektir.

Adım 2: Kurulumu Yapılandır

Sonraki adımda Tesseract kurulumunu yapılandırmamız gerekecek. Eğer kendinize güveniyorsanız ve Windows için Tesseract OCR'yi varsayılan dil İngilizce olarak çalıştırmak istiyorsanız, tüm varsayılan seçenekleri seçerek kurulum ekranlarından geçmek işe yarayacaktır.

Yükleyici Dili

Bu sadece diyalog kutuları ve yardım bilgileri içindir. İstersek, Windows için Tesseract OCR'yi birden fazla dilde çalıştırabiliriz:

Tesseract Ocr Windows 1 related to Yükleyici Dili

Windows için Tesseract OCR'nin yükleyici dili

Tesseract OCR Kurulumu

Kuruluma devam etmeden önce tüm diğer uygulamaların kapalı olduğundan emin olunması tavsiye edilir.

Tesseract Ocr Windows 2 related to Tesseract OCR Kurulumu

Windows için Tesseract OCR kurulum ekranı.

Kurulum Yerini Seçin

Sonraki adımda kurulum yerini seçeceğiz. Bir sonraki adıma geçmeden önce, kurulum yerini bir .txt dosyasına kopyalayın. Kurulum tamamlandıktan sonra kurulum yerini makinemizin ortam değişkenlerine eklememiz gerekecek.

Tesseract Ocr Windows 3 related to Kurulum Yerini Seçin

Kurulum yerini seçin.

Bileşenleri Seçin

Varsayılan olarak, ScrollView, Eğitim Araçları, Kısayol oluşturma ve Dil verileri seçilidir. Bunları yüklememek için belirli bir sebebiniz yoksa, bunların hepsinin seçili kalmasını isteyeceğiz.

Tesseract Ocr Windows 4 related to Bileşenleri Seçin

Varsayılan Windows için Tesseract OCR kurulum bileşenleri.

Aşağıya doğru kaydırıp ek komut dosyası verilerini genişletirsek, ek verileri indirme ve yükleme seçeneğimiz olduğunu göreceğiz. Bu, belirli komut dillerinden metin çıkarımı doğruluğunu artırmada yardımcı olabilir. Bunları yüklemek isteyip istemediğiniz size bağlıdır.

Tesseract Ocr Windows 5 related to Bileşenleri Seçin

İsteğe bağlı komut yükleme bileşenleri.

Başlat Menüsünde Klasör Adını Seçin

Kurulumun son adımında, Windows için Tesseract OCR kısayolları için başlangıç menüsünü seçmemiz istenecek. Ben kendi adımı varsayılan ad olarak bıraktım: 'Tesseract-OCR'.

Tesseract Ocr Windows 6 related to Başlat Menüsünde Klasör Adını Seçin

Windows için Tesseract OCR kısayolları için başlangıç menüsünü seçin.

Kur'a tıkladıktan sonra Windows için Tesseract OCR yüklenmeye başlayacaktır. Bir sonraki adımımız, kurulum yolunu makinemizin ortam değişkenlerine eklemek olacak.

Adım 3: Kurulum Yolunu Ortam Değişkenlerine Ekle

Kontrol Paneli

Kurulum yerini ortam değişkenlerimize eklemek için, Başlat menüsüne gidin ve 'ortam değişkenleri' arayın. Sistem ortam değişkenlerini düzenle seçeneğini görmelisiniz. Görmezseniz, her zaman şu adımları kullanabilirsiniz: Başlat menüsü > Kontrol Paneli > Sistem ortam değişkenlerini düzenle.

Tesseract Ocr Windows 7 related to Kontrol Paneli

'ortam değişkenleri' aranıyor

Sistem Özellikleri

'Sistem Özellikleri' iletişim kutusu sunulduğunda, Gelişmiş sekmesi tıklanmış olduğundan emin olacağız, ardından ekranın sağ alt köşesindeki Ortam Değişkenleri butonuna tıklayın.

Tesseract Ocr Windows 8 related to Sistem Özellikleri

Ortam Değişkenleri

Sistem değişkenlerinin altında, Düzenle butonuna tıklayacağız.

Tesseract Ocr Windows 9 related to Ortam Değişkenleri

"Ortam değişkenlerini düzenle" ekranı sunulduğunda, Yeni butonuna tıklayın ve daha önce 2. Adım'da kopyaladığımız Tesseract OCR kurulum yolunuzu yapıştırın. Bunu yaptıktan sonra, 'Tamam' butonuna tıklayın.

Tesseract OCR'yi Windows Kurulum Dizini'ne Ortam Değişkenlerine Ekle

Tesseract Ocr Windows 10 related to Tesseract OCR'yi Windows Kurulum Dizini'ne Ortam Değişkenlerine Ekle

Hepsi bu! Şimdi .exe yükleyiciyi çalıştırdığımıza ve Windows için Tesseract OCR kurulum yerini ortam değişkenlerimize eklediğimize göre, kurulumumuzun çalıştığını test etmek için Tesseract'ı bir test görüntüsü üzerinde çalıştırabiliriz.

Adım 4: Bir Test Görüntüsü Üzerinde Windows için Tesseract OCR'yi Çalıştırın

Windows için Tesseract OCR'nin başarılı şekilde yüklendiğini test etmek için, makinenizde komut istemini açın, ardından Tesseract komutunu çalıştırın. Tesseract'ın kullanım seçenekleri hakkında kısa bir açıklama ile bir çıktı görmelisiniz.

Tesseract Ocr Windows 11 related to Adım 4: Bir Test Görüntüsü Üzerinde Windows için Tesseract OCR'yi Çalıştırın

Windows için Tesseract OCR'nin başarılı kurulumu kontrol ediliyor

Tebrikler! Windows için Tesseract OCR'yi başarılı bir şekilde bilgisayarınıza kurdunuz.


OCR Çalışmaları İçin IronOCR Kullanmanın Avantajları:

IronOCR, Mac, Windows, Linux, Azure ve Docker'da Tesseract OCR sağlar:

  • .NET Framework 4.0 +
  • .NET Standard 2.0 +
  • .NET Core 2.0 +
  • .NET 5
  • macOS ve Linux için Mono
  • macOS için Xamarin

IronOCR, tüm önemli görüntü ve PDF formatlarından en son Tesseract 5 motorunu kullanarak metin, barkod ve QR kodları okur. Bu kütüphane masaüstü, konsol ve web uygulamalarına dakikalar içinde OCR işlevselliği ekler. 125'ten fazla uluslararası dili destekler. Lisanslar $999 başlangıç fiyatıyla.

Adım 1: IronOCR'nin en son sürümünü yükleyin

DLL Yükle

IronOCR DLL'ini doğrudan makinenize indirin.

NuGet Yükle

Alternatif olarak, aşağıdaki komutla NuGet aracılığıyla yükleyebilirsiniz:

Install-Package IronOcr

Adım 2: Lisans Anahtarınızı Uygulayın

Kod Kullanarak IronOCR Lisans Anahtarınızı Ayarlayın

Bu kodu, IronOCR kullanılmadan önce uygulamanızın başlangıcına ekleyin.

IronOcr.Installation.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01";
IronOcr.Installation.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01";
IronOcr.Installation.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01"
$vbLabelText   $csharpLabel

Adım 3: Anahtarınızı Test Edin

Anahtarınızın doğru şekilde yüklendiğini test edin.

bool isValidLicense = IronOcr.License.IsValidLicense("IRONOCR-MYLICENSE-KEY-1EF01");
bool isValidLicense = IronOcr.License.IsValidLicense("IRONOCR-MYLICENSE-KEY-1EF01");
Dim isValidLicense As Boolean = IronOcr.License.IsValidLicense("IRONOCR-MYLICENSE-KEY-1EF01")
$vbLabelText   $csharpLabel

Projeye Başlayın

// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
' PM > Install-Package IronOcr
' using IronOcr;

Dim Ocr = New IronTesseract()

' Set the recognition language to English
Ocr.Language = OcrLanguage.English

Using Input = New OcrInput()
	' Add an example image to the OCR input
	Input.Add("img\example.tiff")

	' Optional: Clean the image before processing
	' Input.DeNoise();
	' Input.Deskew();

	' Read the text from the image
	Dim result As IronOcr.OcrResult = Ocr.Read(Input)

	' Output the recognized text
	Console.WriteLine(result.Text)

	' Explore the OcrResult using IntelliSense
End Using
$vbLabelText   $csharpLabel

C# İle .NET İçin Tesseract OCR Nasıl Kullanılır?

  • Google Tesseract ve IronOCR'yi Visual Studio'ya yükleyin
  • C#'deki en son yapıları inceleyin
  • Doğruluk ve görüntü uyumluluğunu gözden geçirin
  • Performans ve API işlevini test edin
  • Çoklu Dil Desteğini düşünün

Code Example for .NET OCR Usage — Extract Text from Images in C

Visual Studio çözümünüze IronOCR NuGet Paketini yüklemek için NuGet Paket Yöneticisini kullanın.

// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
' PM > Install-Package IronOcr
' using IronOcr;

Dim Ocr = New IronTesseract()

' Set the recognition language to English
Ocr.Language = OcrLanguage.English

Using Input = New OcrInput()
	' Add an example image to the OCR input
	Input.Add("img\example.tiff")

	' Optional: Clean the image before processing
	' Input.DeNoise();
	' Input.Deskew();

	' Read the text from the image
	Dim result As IronOcr.OcrResult = Ocr.Read(Input)

	' Output the recognized text
	Console.WriteLine(result.Text)

	' Explore the OcrResult using IntelliSense
End Using
$vbLabelText   $csharpLabel

IronOCR Tesseract for C

IronOCR ile, tüm Tesseract kurulumları tamamen NuGet Paket Yöneticisi kullanılarak gerçekleştirilir.

Install-Package IronOcr

IronOCR Tesseract'ta Tesseract 5 API

Bugüne kadar, IronTesseract, .NET Framework veya Core için bilinen tek Tesseract 5 uygulamasıdır.

// using IronOcr;

var Ocr = new IronTesseract(); // nothing to configure

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
// using IronOcr;

var Ocr = new IronTesseract(); // nothing to configure

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
' using IronOcr;

Dim Ocr = New IronTesseract() ' nothing to configure

Using Input = New OcrInput("images\image.png")
	Dim result = Ocr.Read(Input)

	' Output the recognized text
	Console.WriteLine(result.Text)
End Using
$vbLabelText   $csharpLabel

IronOCR Tesseract'ta Tesseract 4 API

// using IronOcr;

var Ocr = new IronTesseract();

// Specify the version of Tesseract
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract4;

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
// using IronOcr;

var Ocr = new IronTesseract();

// Specify the version of Tesseract
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract4;

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
' using IronOcr;

Dim Ocr = New IronTesseract()

' Specify the version of Tesseract
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract4

Using Input = New OcrInput("images\image.png")
	Dim result = Ocr.Read(Input)

	' Output the recognized text
	Console.WriteLine(result.Text)
End Using
$vbLabelText   $csharpLabel

IronOCR Neden Tesseract'tan Daha İyi?

DOĞRULUK

Tesseract:

Tesseract, döndürülmüş, eğik, düşük DPI, taranmış veya arka plan gürültüsü içeren bir görüntüyle karşılaştığında, o görüntüden veri almak neredeyse imkansız hale gelir. Ayrıca, Tesseract bu belgeyi işlemeyi çok uzun sürecektir ve size anlamsız bilgi sunmadan önce bu belgeyi işlemeyi çok uzun sürecektir.

IronOCR:

IronOCR, bu baş ağrısını ortadan kaldırır. Kullanıcılar genellikle en az konfigürasyonla %99.8-100 doğruluğa ulaşır.

GÖRÜNTÜ UYUMLULUĞU

Tesseract:

Yalnızca C#'te bir IntPtr C++ nesnesi olan Leptonica PIX görüntü formatını kabul eder. PIX nesneleri yönetilen bellek değildir — ve bu nesneleri C#'te dikkatli bir şekilde ele almama durumunda bellek sızıntıları olabilir.

IronOCR:

Görüntülerin bellek yönetimi yapılır. PDF & Tiff desteklenir. Her dosya formatı için System.Drawing, Akış ve Bayt Dizisi dahildir.

Geniş görüntü desteği:

  • PDF Belgeleri
  • PDF Sayfaları
  • Çok Çerçeveli TIFF dosyaları
  • JPEG & JPEG2000
  • GIF
  • PNG
  • System.Drawing.Image
  • İkili görüntü Verisi (byte [])
  • Ve çok daha fazlası...

PERFORMANS

Tesseract:

Google Tesseract, düzgün ayarlandığında ve giriş görüntüleri Photoshop veya ImageMagick ile önceden işlendiğinde hızlı ve doğru sonuçlar verebilir.

IronOCR:

IronOCR .NET Tesseract DLL, kutunun dışında çoğu görüntü için doğru ve hızlı çalışır. Çoğu bilgisayarın artık kullandığı çok çekirdekli işlemcilerin kullanılabilirliğini sağlamak için çoklu iş parçacığını uyguladık. Düşük çözünürlüklü görüntüler bile genellikle programınızda yüksek doğrulukla çalışır. Photoshop gerektirmez.

API

Tesseract:

İki ücretsiz seçeneğimiz var:

  • Interop katmanları ile çalışın — GitHub'da bulunan birçok katman güncel değildir, çözülmemiş sorunlara, bellek sızıntılarına ve Konsol uyarılarına sahiptir. .NET Core veya Standart desteklemeyebilir.
  • Komut satırı EXE ile çalışın — dağıtımı zor ve sürekli virüs tarayıcıları ve güvenlik politikaları tarafından kesintiye uğradı.

IronOCR:

İronTesseract adlı yönetilen ve test edilmiş bir .NET Kütüphanesi.

IntelliSense desteği ile tamamen belgelenmiştir.

DİL

Tesseract:

Sadece 100 dili destekler.

IronOCR:

125'ten fazla dili destekler.


Sonuç

Tesseract, C++ geliştiricileri için mükemmel bir kaynaktır, ancak .NET için tamamlanmış bir OCR kütüphanesi değildir. Taranmış veya fotoğraflanmış görüntüler, Tesseract'ın düzgün bir şekilde çalışabilmesi için dik, standartlaşmış, yüksek çözünürlüklü ve dijital gürültüsüz bir şekilde işlenmelidir.

Buna karşılık, IronOCR bunu ve daha fazlasını, yalnızca tek satırlık bir kod ile yapabilir. IronOCR'nin Tesseract'ı iç OCR motoru için kullandığı doğrudur, bu çok ince ayarlanmış bir Tesseract, C# için oluşturulmuş, birçok performans iyileştirmesi ve özellik eklenmiştir.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara