Üretimde su işareti olmadan test edin.
Nerede ihtiyaç duyarsanız çalışır.
Tam işlevselliğe sahip ürün için 30 gün alın.
Birkaç dakika içinde çalışır hale getirin.
Ürün denemeniz sırasında destek mühendis ekibimize tam erişim
using IronOcr;
using System;
var ocrTesseract = new IronTesseract();
ocrTesseract.Language = OcrLanguage.Arabic;
using (var ocrInput = new OcrInput())
{
ocrInput.LoadImage(@"images\arabic.gif");
var ocrResult = ocrTesseract.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
// Example with a Custom Trained Font Being used:
var ocrTesseractCustomerLang = new IronTesseract();
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata");
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest);
using (var ocrInput = new OcrInput())
{
ocrInput.LoadPdf(@"images\mixed-lang.pdf");
var ocrResult = ocrTesseractCustomerLang.Read(ocrInput);
Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports System
Private ocrTesseract = New IronTesseract()
ocrTesseract.Language = OcrLanguage.Arabic
Using ocrInput As New OcrInput()
ocrInput.LoadImage("images\arabic.gif")
Dim ocrResult = ocrTesseract.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End Using
' Example with a Custom Trained Font Being used:
Dim ocrTesseractCustomerLang = New IronTesseract()
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata")
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest)
Using ocrInput As New OcrInput()
ocrInput.LoadPdf("images\mixed-lang.pdf")
Dim ocrResult = ocrTesseractCustomerLang.Read(ocrInput)
Console.WriteLine(ocrResult.Text)
End Using
Install-Package IronOcr
IronOCR, 125 uluslararasi dili destekler. Varsıyılan olarak yüklü gelen Ingilizce dışında, ek dil paketleri .NET projenize NuGet aracılığıyla eklenebilir veya Dil Sayfamızdan indirilebilir. Çoğu dil Hızlı, Standart (önerilir) ve En iyi kalite seçeneklerinde mevcuttur. En iyi kalite seçeneği daha doğru sonuçlar sunabilir, ancak işlem süresi açısından daha yavaş olacaktır.IronOCR Dil Destegi
using IronOcr;
using IronSoftware.Drawing;
// We can delve deep into OCR results as an object model of
// Pages, Barcodes, Paragraphs, Lines, Words and Characters
// This allows us to explore, export and draw OCR content using other APIs/
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;
using var ocrInput = new OcrInput();
var pages = new int[] { 1, 2 };
ocrInput.LoadImageFrames("example.tiff", pages);
OcrResult ocrResult = ocrTesseract.Read(ocrInput);
foreach (var page in ocrResult.Pages)
{
// Page object
int PageNumber = page.PageNumber;
string PageText = page.Text;
int PageWordCount = page.WordCount;
// null if we dont set Ocr.Configuration.ReadBarCodes = true;
OcrResult.Barcode[] Barcodes = page.Barcodes;
AnyBitmap PageImage = page.ToBitmap(ocrInput);
double PageWidth = page.Width;
double PageHeight = page.Height;
double PageRotation = page.Rotation; // angular correction in degrees from OcrInput.Deskew()
foreach (var paragraph in page.Paragraphs)
{
// Pages -> Paragraphs
int ParagraphNumber = paragraph.ParagraphNumber;
string ParagraphText = paragraph.Text;
AnyBitmap ParagraphImage = paragraph.ToBitmap(ocrInput);
int ParagraphX_location = paragraph.X;
int ParagraphY_location = paragraph.Y;
int ParagraphWidth = paragraph.Width;
int ParagraphHeight = paragraph.Height;
double ParagraphOcrAccuracy = paragraph.Confidence;
OcrResult.TextFlow paragrapthText_direction = paragraph.TextDirection;
foreach (var line in paragraph.Lines)
{
// Pages -> Paragraphs -> Lines
int LineNumber = line.LineNumber;
string LineText = line.Text;
AnyBitmap LineImage = line.ToBitmap(ocrInput);
int LineX_location = line.X;
int LineY_location = line.Y;
int LineWidth = line.Width;
int LineHeight = line.Height;
double LineOcrAccuracy = line.Confidence;
double LineSkew = line.BaselineAngle;
double LineOffset = line.BaselineOffset;
foreach (var word in line.Words)
{
// Pages -> Paragraphs -> Lines -> Words
int WordNumber = word.WordNumber;
string WordText = word.Text;
AnyBitmap WordImage = word.ToBitmap(ocrInput);
int WordX_location = word.X;
int WordY_location = word.Y;
int WordWidth = word.Width;
int WordHeight = word.Height;
double WordOcrAccuracy = word.Confidence;
foreach (var character in word.Characters)
{
// Pages -> Paragraphs -> Lines -> Words -> Characters
int CharacterNumber = character.CharacterNumber;
string CharacterText = character.Text;
AnyBitmap CharacterImage = character.ToBitmap(ocrInput);
int CharacterX_location = character.X;
int CharacterY_location = character.Y;
int CharacterWidth = character.Width;
int CharacterHeight = character.Height;
double CharacterOcrAccuracy = character.Confidence;
// Output alternative symbols choices and their probability.
// Very useful for spellchecking
OcrResult.Choice[] Choices = character.Choices;
}
}
}
}
}
Imports IronOcr
Imports IronSoftware.Drawing
' We can delve deep into OCR results as an object model of
' Pages, Barcodes, Paragraphs, Lines, Words and Characters
' This allows us to explore, export and draw OCR content using other APIs/
Private ocrTesseract = New IronTesseract()
ocrTesseract.Configuration.ReadBarCodes = True
Dim ocrInput As New OcrInput()
Dim pages = New Integer() { 1, 2 }
ocrInput.LoadImageFrames("example.tiff", pages)
Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
For Each page In ocrResult.Pages
' Page object
Dim PageNumber As Integer = page.PageNumber
Dim PageText As String = page.Text
Dim PageWordCount As Integer = page.WordCount
' null if we dont set Ocr.Configuration.ReadBarCodes = true;
Dim Barcodes() As OcrResult.Barcode = page.Barcodes
Dim PageImage As AnyBitmap = page.ToBitmap(ocrInput)
Dim PageWidth As Double = page.Width
Dim PageHeight As Double = page.Height
Dim PageRotation As Double = page.Rotation ' angular correction in degrees from OcrInput.Deskew()
For Each paragraph In page.Paragraphs
' Pages -> Paragraphs
Dim ParagraphNumber As Integer = paragraph.ParagraphNumber
Dim ParagraphText As String = paragraph.Text
Dim ParagraphImage As AnyBitmap = paragraph.ToBitmap(ocrInput)
Dim ParagraphX_location As Integer = paragraph.X
Dim ParagraphY_location As Integer = paragraph.Y
Dim ParagraphWidth As Integer = paragraph.Width
Dim ParagraphHeight As Integer = paragraph.Height
Dim ParagraphOcrAccuracy As Double = paragraph.Confidence
Dim paragrapthText_direction As OcrResult.TextFlow = paragraph.TextDirection
For Each line In paragraph.Lines
' Pages -> Paragraphs -> Lines
Dim LineNumber As Integer = line.LineNumber
Dim LineText As String = line.Text
Dim LineImage As AnyBitmap = line.ToBitmap(ocrInput)
Dim LineX_location As Integer = line.X
Dim LineY_location As Integer = line.Y
Dim LineWidth As Integer = line.Width
Dim LineHeight As Integer = line.Height
Dim LineOcrAccuracy As Double = line.Confidence
Dim LineSkew As Double = line.BaselineAngle
Dim LineOffset As Double = line.BaselineOffset
For Each word In line.Words
' Pages -> Paragraphs -> Lines -> Words
Dim WordNumber As Integer = word.WordNumber
Dim WordText As String = word.Text
Dim WordImage As AnyBitmap = word.ToBitmap(ocrInput)
Dim WordX_location As Integer = word.X
Dim WordY_location As Integer = word.Y
Dim WordWidth As Integer = word.Width
Dim WordHeight As Integer = word.Height
Dim WordOcrAccuracy As Double = word.Confidence
For Each character In word.Characters
' Pages -> Paragraphs -> Lines -> Words -> Characters
Dim CharacterNumber As Integer = character.CharacterNumber
Dim CharacterText As String = character.Text
Dim CharacterImage As AnyBitmap = character.ToBitmap(ocrInput)
Dim CharacterX_location As Integer = character.X
Dim CharacterY_location As Integer = character.Y
Dim CharacterWidth As Integer = character.Width
Dim CharacterHeight As Integer = character.Height
Dim CharacterOcrAccuracy As Double = character.Confidence
' Output alternative symbols choices and their probability.
' Very useful for spellchecking
Dim Choices() As OcrResult.Choice = character.Choices
Next character
Next word
Next line
Next paragraph
Next page
Install-Package IronOcr
IronOCR, Tesseract 5 kullanarak taradigi her sayfa icin gelişmiş bir sonuc nesnesi dondurur. Bu, her biri icin konum verileri, resimler, metin, istatistiksel guven, alternatif sembol secimleri, yazi tipi isimleri, yazi tipi boyutlari dekorasyonu, yazi tipleri ve pozisyon icerir:
Page Paragraph Word Barcode
Ürün, entegrasyon veya lisanslama sorularınız olsun; Iron ürün geliştirme ekibi tüm sorularınızı yanıtlamak için hazır. Kütüphanemizi projenizde en iyi şekilde kullanmak için bizimle iletişime geçin ve bir diyalog başlatın.
Soru SorPasaport sayfaları, faturalar, banka ekstreleri, postalar, kartvizitler veya makbuzlar olsun; Optik Karakter Tanıma (OCR), desen tanıma, bilgisayar görüşü ve makine öğrenimine dayanan bir araştırma alanıdır. Firmalar, muhasebe ve finans sistemlerinde metin çıkarmak, iş dijitalleştirme, kurumsal içerik yönetimi ve veri raporlama sistemlerinde OCR'ı birimler arası kullanır.
Başka başarı hikayeleri yaratmanın yanı sıra. IronOCR, Google Tesseract ve Microsoft 2021 Azure Cognitive Services'a IronOCR - yerel bir C# OCR kütüphanesi ile değer katar.
Eğer gerçek dünya resimlerini %99 doğrulukla dönüştürmek istiyorsanız, okumaya devam edin, IronOCR'un size nasıl verimli, doğru, ölçeklenebilir ve neredeyse insan gibi bir Optik Karakter Tanıma uygulaması oluşturmanıza izin verdiğini görün.
Optik Karakter Tanıma (OCR), farklı API'ler koruma konusunda muazzam güven iddia ettikleri için çözümlenmiş bir olgu olarak kabul edilir. Ancak, çeşitli ürünler genellikle katı ve gerçek dünya uygulamalarında başarısız olan, hatalıdır. Benzer şekilde, Tesseract OCR makine baskılı, yüksek çözünürlüklü, mükemmel metinle çalışır.
Kulağa iyi mi geliyor?
Gerçek dünya her zaman mükemmel şekilde basılmış ve yüksek çözünürlüklü el yazmasına sahip değildir. Bunun yerine, döndürülmüş, eğik, düşük DPI, arka plan gürültüsü ve dijital kusurların tümü IronOCR tarafından ele alınır, içinde el yazısı metninin resim dosyalarından çıkarılması da dahildir. %99,8 - %100 doğru, platformlar arası destekle arama yapılabilir bir belge sağladığımızdan emin oluyoruz, bu destek Windows, Linux, macOS, Microsoft Azure, AWS ve Docker'ı içerir - C# geliştiricilerinin IronOCR'yi (temel) Tesseract OCR yerine seçmelerinin bir nedeni var - bu tamamen değer katmakla ilgilidir.
Kendinizi en iyi ile donatın!
Yukarıdakilere ek olarak, IronOCR size resim belge işlemenizi anında yapma imkanı sunar. Hepsi bu kadar değilse de, IronOCR API özellikleri ayrıca şu özellikleri içerir:
Yerel .dll veya exe kurulumdan tek bir doğruluk kaynağına geçiş yapın - aşağıdakileri destekleyen basit bir C# API kullanarak, tek bir yerel .NET bileşen kütüphanesi kullanarak geliştirin:
IronOCR API'nin özü orada bitmiyor; teknik ayrıcalıklarımızı daha fazla keşfedebilirsiniz. Belge işleme uygulamalarını kolaylaştırarak ve endüstri lideri özellikler sunarak işletme karmaşıklıklarını adım adım azaltarak gelirlerinizi en üst düzeye çıkarmaya yönelik güvenilir çözümler geliştirmeye devam ediyoruz:
Optik karakter tanıma sürecimiz, görüntü dosyasını geliştiren otomatik görüntü ön işleme ile başlar ve bu, çıkartma yanıt oranını iyileştirir. IronOCR, kullanıcıların örnek baz imaj dosyasını kendisinin en iyi versiyonuna çıkarmayı sağlamasıyla işinize değer katar. IronOCR tüm dönüşleri kapsar:
IronOCR hizmeti, gösterge başına nokta (DPI) bazında 300 DPI çözünürlükte çalıştığı için, 200-300 DPI dışındaki herhangi bir resim örneği hedef aralık içine sığacak şekilde yeniden örneklenir.
Bu, 600 DPI görüntülerin 300 DPI'ya veya 100 DPI görüntülerin 200 DPI'ya %99 oranında güvenle yeniden örneklendiğini ifade eder.
IronOCR bilişsel hizmetleri, monokrom görüntülerde çalışmak üzere tasarlanmıştır, bu nedenle her türlü renkli veya gri ölçekli görüntüler adaptif bir binarizasyon algoritması kullanılarak monokroma dönüştürülür.
Algoritma, pikselleri monokroma dönüştürmek için kullanılması gereken eşik belirlemek için alan içindeki piksel yoğunluklarını karşılaştırır.
IronOCR, girilen görüntü kaynaklarını istenen yönde otomatik olarak eğriltmek ve döndürmek için metin satırları ve karakter desenlerini arar.
IronOCR ile, görüntü dosyaları otomatik olarak gürültü varlığı ve miktarı açısından analiz edilir. Gürültü aslında taranmış görüntülerde bulunan 'lekeler'dir. Uyarlanabilir algoritmamız daha sonra gürültü parçacıkları boyutuna dayanarak gürültüyü giderir.
Örnek görüntü dosyası ön işlendikten hemen sonra, IronOCR daha sonra gelen görüntü dosyasını farklı işleme bölgelerine ayırır.
Diğer bir ön hazırlık aşaması, başvuru görüntüsünü farklı mantıksal alanlara ayırmaktır. IronOCR ilk olarak beyaz alan ve desen yardımıyla resim içindeki metin ve resimleri bulur; metin alanı resimlerden ayrılır.
Daha sonra bölgeler - paragraflar, sütunlar ve metin blokları - olarak bölünür. Metin tanıma aşamasında atlanacak olan kalan metin dışındaki pikseller ve resimler akıllı çıktı içermektedir. IronOCR daha sonra metin bölgelerini tablo olarak işaretlemek için ızgara çizgileri ve metin blokları kullanır.
Kullanıcıların arayabileceği tek hatlı metin dizelerine piksel yığını dönüştürmek için birden fazla, birbirine bağlanmış adımlar uygular. Bu, karakter segmentasyonu, uyarlanabilir sınıflama, sözlük referansları ve optimum çıkartılan metne katkıda bulunan diğer ilgili süreçleri içerir.
IronOCR API hizmeti ile, Microsoft Office formatlarındaki kelime düzeylerini, sembol doğruluğunu ve yerleşim saklama yeteneklerini içeren çok dilli çoklu veri dosyası örnekleri aracılığıyla aletimizi test ettik. Bazı parametreler otomatik olarak test edilir; diğerlerinde görsel kontroller dahil edilmiştir.
IronOCR, farklı girdi biçimleriyle platformlar arası OCR yetenekleri eklemenize izin verir, aranabilir bir düz metin dizesine. IronOCR ile veriminizi artırmak için, IronOCR kullanımı konusunda sizi yönlendiren ücretsiz eğitim belgemizle başlayın. Bugün NuGet paket yükleyicimizi indirin ve ücretsiz bir deneme anahtarıyla keşfedin veya 7/24 kişisel destekle bağlantı kurun. İhtiyaçlarınızı bir ömür boyu lisanslama ile ölçeklendirin, takımınızın boyutundan bağımsız olarak.
Lisanslari Görüntüle
Ücretsiz topluluk geliştirme lisansları. Ticari lisanslar 749 $'dan başlar.
C# Tesseract OCR
Jim, IronOCR'nin geliştirilmesinde öncü figür olmuştur. OCR için görüntü işleme algoritmaları ve okuma yöntemleri tasarlar ve geliştirir.
Karşılaştırmayı Görün
C# OCR ASP.NET
Gemma'nın ekibi, arşiv yazılımları için IronOCR'yi kullanarak görüntülerden metin okumayı nasıl kullanıyor öğrenin. Gemma kendi kod örneklerini paylaşıyor.
Görüntüden Metin'e .NET Eğitim
Iron ekibinin .NET yazılım bileşeni pazarında 10 yıldan fazla deneyimi vardır.