C#ve .Net'te Türkçe OCR

Bu belgenin diğer versiyonları:

IronOCR, .NET kodlayıcılarının resimlerden ve PDF belgelerinden Türkçe dahil 126 dilde metin okumasını sağlayan bir C#yazılım bileşenidir.

Bu, yalnızca .NET geliştiricileri için tasarlanmış ve hem hız hem de doğruluk açısından diğer Tesseract motorlarından daha iyi performans gösteren, Tesseract'ın gelişmiş bir çatalı.

IronOcr.Languages İçeriği.Türkçe

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

  • Türk
  • Türk
  • TürkçeFast

İndir

Türkçe Dil Paketi [Türkçe]
* Download as Zip
* Install with as
https://www.nuget.org/packages/IronOcr.Languages.Turkish/'> NuGet

Kurulum

Yapmamız gereken ilk şey Türkçe OCR paketimizi .NET projenize yüklemek.

PM> Install-Package IronOCR.Languages.Turkish

Kod Örneği

Bu C#kod örneği, bir Resim veya PDF belgesinden Türkçe metni okur.

//PM> Install-Package IronOcr.Languages.Turkish
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var Input = new OcrInput(@"images\Turkish.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
//PM> Install-Package IronOcr.Languages.Turkish
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var Input = new OcrInput(@"images\Turkish.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
'PM> Install-Package IronOcr.Languages.Turkish
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish
Using Input = New OcrInput("images\Turkish.png")
Dim Result = Ocr.Read(Input)
Dim AllText As Var = Result.Text
End Using
VB   C#

Neden IronOCR'yi Seçmelisiniz?

Iron OCR, kurulumu kolay, eksiksiz ve iyi belgelenmiş bir .NET yazılım kitaplığıdır.

Herhangi bir harici web hizmeti kullanmadan, sürekli ücret ödemeden veya internet üzerinden gizli belgeler göndermeden % 99,8 + OCR doğruluğuna ulaşmak için IronOCR'yi seçin.

C#geliştiricileri neden Vanilla Tesseract yerine IronOCR'yi seçiyor?

  • Tek bir DLL veya Nuget olarak yükle
  • Kutudan çıkan Tesseract 5, 4 ve 3 Motorları içerir.
  • Doğruluk % 99,8, normal Tesseract'tan önemli ölçüde daha iyi performans gösterir.
  • Çarpıcı Hız ve MultiThreading
  • MVC, WebApp, Masaüstü, Konsol ve Sunucu Uygulaması uyumlu
  • Çalışmak için Exes veya C ++ kodu yok
  • Tam PDF OCR desteği
  • Hemen hemen her türlü Görüntü dosyası veya PDF OCR işlemi gerçekleştirmek
  • Tam .Net Core, Standard ve FrameWork desteği
  • Windows, Mac, Linux, Azure, Docker, Lambda, AWS'ye dağıtın
  • Barkodları ve QR kodlarını okuyun
  • OCR'yi XHTML olarak dışa aktar
  • OCR'yi aranabilir PDF belgelerine aktarın
  • Çoklu kullanım desteği
  • Hepsi Nuget veya OcrData dosyalarıyla yönetilen 126 uluslararası dil
  • Görüntüleri, Koordinatları, İstatistikleri ve Yazı Tiplerini Çıkarın. Sadece metin değil.
  • Tesseract OCR'yi ticari ve tescilli uygulamalarda yeniden dağıtmak için kullanılabilir.

Demir OCR, gerçek dünya görüntüleri ve fotoğraflar gibi kusurlu belgeler veya dijital parazit veya kusurlar olabilecek düşük çözünürlüklü taramalar ile çalışırken parlar.

Diğer .net tesseract API'leri ve web hizmetleri gibi .NET platformu için diğer ücretsiz OCR kitaplıkları, bu gerçek dünya kullanım durumlarında o kadar iyi performans göstermez.

Tesseract 5 ile OCR - Kodlamaya C#ile Başla

Aşağıdaki kod örneği, C#veya VB .NET kullanarak bir görüntüden metin okumanın ne kadar kolay olduğunu gösterir.

OneLiner

string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
VB   C#

Yapılandırılabilir Merhaba Dünya

// PM> Install-Package IronOCR.Languages.Turkish
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... istediğiniz sayıda resim ekleyebilirsiniz
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Turkish
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... istediğiniz sayıda resim ekleyebilirsiniz
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Turkish
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish
Using Input = New OcrInput()
Input.AddImage("images/sample.jpeg") var Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

C#PDF OCR

Aynı yaklaşım, herhangi bir PDF belgesinden metin çıkarmak için benzer şekilde kullanılabilir.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// OCR'ye belirli PDF sayfa numaralarını da seçebiliriz

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF'nin her sayfası için 1 sayfa
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// OCR'ye belirli PDF sayfa numaralarını da seçebiliriz

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF'nin her sayfası için 1 sayfa
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' OCR'ye belirli PDF sayfa numaralarını da seçebiliriz

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' PDF'nin her sayfası için 1 sayfa
End Using
VB   C#

Çok Sayfalı TIFF'ler için OCR

OCR Okuma Çok sayfalı belgeler dahil TIFF dosya biçimi. TIFF ayrıca doğrudan aranabilir metin içeren bir PDF dosyasına dönüştürülebilir.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish

Using Input = New OcrInput()
input.AddMultiFrameTiff("multi - frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Barkodlar ve QR

Iron OCR'nin benzersiz bir özelliği, metin tararken belgelerden barkodları ve QR kodlarını okuyabilmesidir. OcrResult.OcrBarcode Sınıfı örnekleri, geliştiriciye taranan her barkod hakkında ayrıntılı bilgi verir.

// using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// tür ve konum özellikleri de açığa çıktı
}
}
// using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// tür ve konum özellikleri de açığa çıktı
}
}
' using IronOcr;
Dim Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True

Using input = New OcrInput()
input.AddImage("img/Barcode.png")
Dim Result = Ocr.Read(input)
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' tür ve konum özellikleri de açığa çıktı
Next Barcode
End Using
VB   C#

Belirli Görüntü Alanları için OCR

Iron OCR'nin tüm tarama ve okuma yöntemleri, bir sayfanın veya sayfaların tam olarak hangi bölümünden metin okumak istediğimizi belirleme yeteneği sağlar. Bu, standartlaştırılmış formlara baktığımızda çok kullanışlıdır ve çok fazla zaman kazandırabilir ve verimliliği artırabilir.

Kırpma bölgeleri kullanmak için, bir sistem başvuru eklemeniz gerekecektir System.Drawing kullandığımız böylece System.Drawing.Rectangle nesnesi.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Boyutlar piksel cinsindendir

Input.Add("document.png", ContentArea);

var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Boyutlar piksel cinsindendir

Input.Add("document.png", ContentArea);

var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Boyutlar piksel cinsindendir

Input.Add("document.png", ContentArea)

Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Düşük Kaliteli Taramalar için OCR

Iron OCR OcrInput sınıfı, normal Tesseract'ın okuyamadığı taramaları düzeltebilir.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // dijital gürültüyü ve zayıf taramayı düzeltir
Input.Deskew(); // dönüşü ve perspektifi düzeltir
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // dijital gürültüyü ve zayıf taramayı düzeltir
Input.Deskew(); // dönüşü ve perspektifi düzeltir
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' dijital gürültüyü ve zayıf taramayı düzeltir
Input.Deskew() ' dönüşü ve perspektifi düzeltir
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR sonuçlarını Aranabilir PDF olarak dışa aktarın

Kopyalanabilir metin dizeleri ile PDF'ye resim. Arama motorları ve veritabanları tarafından indekslenebilir.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput()){
input.Title = "Quarterly Report"
input.AddImage("image1.jpeg");
input.AddImage("image2.png");
input.AddImage("image3.gif");

var Result = Ocr.Read(input);
Result.SaveAsSearchablePdf("searchable.pdf")
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput()){
input.Title = "Quarterly Report"
input.AddImage("image1.jpeg");
input.AddImage("image2.png");
input.AddImage("image3.gif");

var Result = Ocr.Read(input);
Result.SaveAsSearchablePdf("searchable.pdf")
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish

Using Input = New OcrInput()
input.Title = "Quarterly Report" input.AddImage("image1.jpeg")
input.AddImage("image2.png")
input.AddImage("image3.gif")

Dim Result = Ocr.Read(input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

TIFF'den aranabilir PDF'ye Dönüştürme

Bir TIFF belgesini (veya herhangi bir görüntü dosyası grubunu) doğrudan intranet, web sitesi ve google arama motorları tarafından dizine eklenebilen, aranabilir bir PDF'ye dönüştürün.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish

Using Input = New OcrInput()
input.AddMultiFrameTiff("example.tiff") var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

OCR sonuçlarını HTML olarak dışa aktar

OCR Görüntüden XHTML'ye dönüştürme.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish
Using Input = New OcrInput()
input.Title = "Html Title" input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(input)
Result.SaveAsHocrFile("results.html")
End Using
VB   C#

OCR Görüntü Geliştirme Filtreleri

IronOCR, OCR performansını iyileştirmek için OcrInput nesneleri için benzersiz filtreler sağlar.

Görüntü Geliştirme Kodu Örneği

Daha iyi ve daha hızlı OCR sonuçları üretmek için OCR giriş görüntülerini daha kaliteli hale getirir.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // dijital gürültüyü ve zayıf taramayı düzeltir
Input.Deskew(); // dönüşü ve perspektifi düzeltir
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // dijital gürültüyü ve zayıf taramayı düzeltir
Input.Deskew(); // dönüşü ve perspektifi düzeltir
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' dijital gürültüyü ve zayıf taramayı düzeltir
Input.Deskew() ' dönüşü ve perspektifi düzeltir
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR Görüntü Filtrelerinin Listesi

IronOCR'de yerleşik olarak bulunan OCR performansını artırmak için giriş filtreleri şunları içerir:

  • OcrInput.Rotate (çift derece) - Resimleri saat yönünde birkaç derece döndürür. Saat yönünün tersi için negatif sayılar kullanın.
  • OcrInput.Binarize () - Bu görüntü filtresi, orta zemin olmadan her pikseli siyah veya beyaza çevirir. Metnin arka plana karşı çok düşük kontrastlı OCR performansını artırabilir.
  • OcrInput.ToGrayScale () - Bu görüntü filtresi, her pikseli bir gri tonlamaya dönüştürür. OCR doğruluğunu iyileştirme olasılığı düşüktür ancak hızı artırabilir
  • OcrInput.Contrast () - Kontrastı otomatik olarak artırır. Bu filtre genellikle düşük kontrastlı taramalarda OCR hızını ve doğruluğunu artırır.
  • OcrInput.DeNoise () - Dijital gürültüyü kaldırır. Bu filtre yalnızca gürültünün beklendiği yerlerde kullanılmalıdır.
  • OcrInput.Invert () - Her rengi ters çevirir. Örneğin, Beyaz siyah olur: siyah beyaz olur.
  • OcrInput.Dilate () - Gelişmiş Morfoloji. Genişleme , bir görüntüdeki nesnelerin sınırlarına pikseller ekler. Aşınmanın Karşısı
  • OcrInput.Erode () - Gelişmiş Morfoloji. Erozyon , nesne sınırları üzerindeki pikselleri ortadan kaldırır
  • OcrInput.Deskew () - Bir görüntüyü döndürerek yukarı ve ortogonal olmasını sağlar. Bu, OCR için çok kullanışlıdır çünkü eğri taramalar için Tesseract toleransı 5 derece kadar düşük olabilir.
  • OcrInput.DeepCleanBackgroundNoise () - Yoğun arka plan gürültüsü giderme. Bu filtreyi yalnızca aşırı belge arka plan gürültüsü bilindiğinde kullanın, çünkü bu filtre aynı zamanda temiz belgelerin OCR doğruluğunu azaltma riskini de beraberinde getirir ve çok CPU pahalıdır.
  • OcrInput.EnhanceResolution - Düşük kaliteli görüntülerin çözünürlüğünü artırır. OcrInput.MinimumDPI ve OcrInput.TargetDPI düşük çözünürlüklü girişleri otomatik olarak yakalayıp çözeceği için bu filtreye sıklıkla ihtiyaç duyulmaz .

CleanBackgroundNoise. Bu, biraz zaman alan bir ayardır; bununla birlikte, kütüphanenin dijital bir görüntü içindeki dijital paraziti, kağıt buruşmalarını ve diğer kusurları otomatik olarak temizlemesine izin verir, aksi takdirde diğer OCR kütüphaneleri tarafından okunamayacak hale gelir.

EnhanceContrast , Iron OCR'nin metnin bir görüntünün arka planına karşı kontrastını otomatik olarak artırmasına, OCR'nin doğruluğunu ve genel olarak OCR'nin performansını ve hızını artırmasına neden olan bir ayardır.

EnhanceResolution , düşük çözünürlüklü görüntüleri (275 dpi'nin altında olan) otomatik olarak algılayan ve görüntüyü otomatik olarak yükselten ve ardından tüm metni bir OCR kitaplığı tarafından mükemmel şekilde okunabilmesi için keskinleştiren bir ayardır. Bu işlem kendi içinde zaman alıcı olsa da, genellikle bir görüntü üzerinde bir OCR işlemi için toplam süreyi azaltır.

Dil Demir OCR, 22 uluslararası dil paketini destekler ve dil ayarı, bir OCR işlemi için uygulanacak bir veya birden fazla dil seçmek için kullanılabilir.

Strateji Demir OCR iki stratejiyi destekler. Bir belgenin hızlı ve daha az hassas bir şekilde taranmasını seçebilir veya kelimelerin bir cümlede birbirleriyle istatistiksel ilişkilerine bakarak OCR metninin doğruluğunu otomatik olarak iyileştirmek için bazı yapay zeka modelleri kullanan gelişmiş bir strateji kullanabiliriz .

ColorSpace , gri tonlamalı veya renkli OCR'yi seçebileceğimiz bir ayardır. Genellikle gri tonlama en iyi seçenektir. Bununla birlikte, bazen benzer tonda ancak çok farklı renkte metinler veya arka planlar olduğunda, tam renkli bir renk alanı daha iyi sonuçlar sağlayacaktır.

DetectWhiteTextOnDarkBackgrounds. Genel olarak, tüm OCR kitaplıkları beyaz arka planda siyah metin görmeyi bekler. Bu ayar, Demir OCR'nin negatifleri veya beyaz metin içeren koyu sayfaları otomatik olarak algılamasını ve okumasını sağlar.

InputImageType. Bu ayar, geliştiricinin OCR kitaplığını tam bir belgeye mi yoksa ekran görüntüsü gibi bir parçacığa mı baktığı konusunda yönlendirmesine olanak tanır.

RotateAndStraighten , Iron OCR'ye yalnızca döndürülen değil, aynı zamanda metin belgelerinin fotoğrafları gibi perspektif içeren belgeleri okuma konusunda benzersiz bir yetenek sağlayan gelişmiş bir ayardır.

ReadBarcodes , Iron OCR'nin sayfalar üzerindeki barkodları ve QR kodlarını aynı zamanda metni okurken, büyük bir ek zaman yükü eklemeden otomatik olarak okumasını sağlayan kullanışlı bir özelliktir.

Renk derinliği. Bu ayar, OCR kitaplığının bir rengin derinliğini belirlemek için piksel başına kaç bit kullanacağını belirler. Daha yüksek bir renk derinliği OCR kalitesini artırabilir, ancak aynı zamanda OCR işleminin tamamlanması için gereken süreyi de artıracaktır.

126 Dil Paketi

Iron OCR , bu web sitesinden veya NuGet Paket Yöneticisi'nden indirilebilen DLL'ler olarak dağıtılan dil paketleri aracılığıyla 126 uluslararası dili destekler.

Diller Almanca, Fransızca, İngilizce, Çince, Japonca ve daha fazlasını içerir. Pasaport MRZ, MICR kontrolleri, Mali Veriler, Lisans plakaları ve daha fazlası için uzman dil paketleri mevcuttur. Kendi oluşturduklarınız da dahil olmak üzere herhangi bir tesseract ".traineddata" dosyasını da kullanabilirsiniz.

Dil Örneği

Diğer OCR dillerini kullanma.

// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// Gerekirse görüntü filtreleri ekleyin
// Bu durumda, düşünce girdisi bile çok düşük kalitede
// IronTesseract, geleneksel Tesseract'ın okuyamadığını okuyabilir.

var Result = Ocr.Read(input);

// Konsol, Arapça'yı Windows'ta kolayca yazdıramaz.
// Bunun yerine diske kaydedelim.
Result.SaveAsTextFile("arabic.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// Gerekirse görüntü filtreleri ekleyin
// Bu durumda, düşünce girdisi bile çok düşük kalitede
// IronTesseract, geleneksel Tesseract'ın okuyamadığını okuyabilir.

var Result = Ocr.Read(input);

// Konsol, Arapça'yı Windows'ta kolayca yazdıramaz.
// Bunun yerine diske kaydedelim.
Result.SaveAsTextFile("arabic.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.Arabic

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic

Using input = New OcrInput()
input.AddImage("img/arabic.gif")
' Gerekirse görüntü filtreleri ekleyin
' Bu durumda, düşünce girdisi bile çok düşük kalitede
' IronTesseract, geleneksel Tesseract'ın okuyamadığını okuyabilir.

Dim Result = Ocr.Read(input)

' Konsol, Arapça'yı Windows'ta kolayca yazdıramaz.
' Bunun yerine diske kaydedelim.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Çoklu Dil Örneği

Aynı anda birden fazla dil kullanarak OCR yapmak da mümkündür. Bu, Unicode belgelerinde İngilizce meta verilerini ve url'leri almanıza gerçekten yardımcı olabilir.

// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Turkish);

// İstenilen sayıda dil ekleyebiliriz

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Turkish);

// İstenilen sayıda dil ekleyebiliriz

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.ChineseSimplified

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified
Ocr.AddSecondaryLanguage(OcrLanguage.Turkish)

' İstenilen sayıda dil ekleyebiliriz

Using input = New OcrInput()
input.Add("multi - language.pdf")
Dim Result = Ocr.Read(input)
Result.SaveAsTextFile("results.txt")
End Using
VB   C#

Ayrıntılı OCR Sonuç Nesneleri

Demir OCR, her OCR işlemi için bir OCR sonuç nesnesi döndürür. Genellikle geliştiriciler, görüntüden taranan metni almak için bu nesnenin yalnızca metin özelliğini kullanır. Ancak, OCR sonuçları DOM bundan çok daha gelişmiştir.

using IronOcr;
using System.Drawing; //Montaj Referansı Ekle

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!Önemli

using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Devasa, ayrıntılı bir API bulmak için burayı keşfedin:
// - Sayfalar, Bloklar, Açıklamalar, Çizgiler, Kelimeler, Karakterler
// - Görüntü Dışa Aktarma, Yazı Tipi Koordinatları, İstatistiksel Veriler
}
using IronOcr;
using System.Drawing; //Montaj Referansı Ekle

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Turkish;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!Önemli

using (var Input = new OcrInput(@"images\sample.tiff"))
{
OcrResult Result = Ocr.Read(Input);
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Devasa, ayrıntılı bir API bulmak için burayı keşfedin:
// - Sayfalar, Bloklar, Açıklamalar, Çizgiler, Kelimeler, Karakterler
// - Görüntü Dışa Aktarma, Yazı Tipi Koordinatları, İstatistiksel Veriler
}
Imports IronOcr
Imports System.Drawing 'Montaj Referansı Ekle

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Turkish
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '!Önemli

Using Input = New OcrInput("images\sample.tiff")
Dim Result As OcrResult = Ocr.Read(Input)
Dim Pages = Result.Pages
Dim Words = Pages(0).Words
Dim Barcodes = Result.Barcodes
' Devasa, ayrıntılı bir API bulmak için burayı keşfedin:
' - Sayfalar, Bloklar, Açıklamalar, Çizgiler, Kelimeler, Karakterler
' - Görüntü Dışa Aktarma, Yazı Tipi Koordinatları, İstatistiksel Veriler
End Using
VB   C#

Verim

IronOCR, performans ayarı yapmaya veya girdi görüntülerini büyük ölçüde değiştirmeye gerek kalmadan kutudan çıkar çıkmaz çalışır.

Hız Alevleniyor: IronOcr.2020 +, 10 kata kadar daha hızlı ve önceki derlemelere göre% 250 daha az hata yapıyor.

Daha fazla bilgi edin

C #, VB, F # veya başka herhangi bir .NET dilinde OCR hakkında daha fazla bilgi edinmek için lütfen Iron OCR'nin nasıl kullanılacağına dair gerçek dünya örnekleri veren ve en iyi şekilde nasıl yararlanılacağına dair nüansları gösteren topluluk eğitimlerimizi okuyun . bu kütüphane.

.NET geliştiricileri için tam bir nesne referansı da mevcuttur.