Euskal OCR C#eta .NET-en

Dokumentu honen beste bertsio batzuk:

IronOCR C#softwarearen osagaia da .NET kodetzaileek 126 hizkuntzatako irudien eta PDF dokumentuen testua irakurtzea 126 hizkuntzatan, euskara barne.

Tesseract-en sardexka aurreratua da, .NET garatzaileentzat soilik eraikia eta aldian-aldian beste Tesseract motorrak gainditzen ditu abiadura eta zehaztasunagatik.

IronOcr.Hizkuntzak.Euskara-ren edukia

Pakete honek .NETerako 43 OCR hizkuntza ditu:

  • Euskara
  • EuskaraBest
  • BasqueFast

Deskargatu

Euskara Pack [euskara]
* Download as Zip
* Install with as
https://www.nuget.org/packages/IronOcr.Languages.Basque/'> NuGet

Instalazioa

Egin behar dugun lehenengo gauza gure euskal OCR paketea zure .NET proiektuan instalatzea da.

PM> Install-Package IronOCR.Languages.Basque

Kodearen adibidea

C#kode adibide honek Image edo PDF dokumentu bateko euskarazko testua irakurtzen du.

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

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

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

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

Zergatik aukeratu IronOCR?

IronOCR .NET software liburutegia instalatzen erraza, osoa eta ondo dokumentatuta dago.

Aukeratu IronOCR % 99,8 + OCR zehaztasuna lortzeko kanpoko web zerbitzurik, etengabeko tasarik edo Internet bidez isilpeko dokumentuak bidali gabe.

Zergatik aukeratzen dute C#garatzaileek IronOCR Vanilla Tesseract baino?

  • Instalatu DLL edo NuGet bakar gisa
  • Tesseract 5, 4 eta 3 motorretarako sartzen da kutxatik kanpora.
  • Zehaztasunak % 99,8k ohiko Tesseract gainditzen du.
  • Blazing Speed eta MultiThreading
  • MVC, WebApp, Desktop, Console & Server Application bateragarriak dira
  • Ez dago Exes edo C ++ koderik lan egiteko
  • PDF OCR laguntza osoa
  • OCR ia edozein irudi fitxategi edo PDF egiteko
  • .NET Core, Standard eta FrameWork euskarri osoa
  • Inplementatu Windows, Mac, Linux, Azure, Docker, Lambda, AWS zerbitzuetan
  • Irakurri barra-kodeak eta QR kodeak
  • Esportatu OCR XHTML gisa
  • Esportatu OCR bilatzeko PDF dokumentuetara
  • Multithreading euskarria
  • Nazioarteko 126 hizkuntza guztiak NuGet edo OcrData fitxategien bidez kudeatuak
  • Atera irudiak, koordenatuak, estatistikak eta letra tipoak. Ez bakarrik testua.
  • Tesseract OCR birbanatzeko aplikazio komertzial eta jabedunen barruan banatzeko erabil daiteke.

Burdinazko OCR distirak distira ematen du mundu errealeko irudiekin eta dokumentu inperfektuekin lan egitean, hala nola argazkiekin edo bereizmen txikiko eskanerrak, zarata digitala edo akatsak izan ditzaketenak.

.NET plataformarako doako beste OCR liburutegi batzuek .net tesseract APIak eta web zerbitzuek ez dute hain ondo funtzionatzen mundu errealeko erabilera kasu hauetan.

OCR Tesseract 5-rekin - Hasi kodeketa C#-ean

Beheko kode laginak erakusten du zein erraza den C#edo VB .NET erabiliz irudi bateko testua irakurtzea.

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#

Konfiguratu Hello World

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... edozein irudi gehitu dezakezu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Basque
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... edozein irudi gehitu dezakezu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Basque
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Basque
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

Ikuspegi bera erabil daiteke era berean PDF edozein dokumentutatik testua ateratzeko.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// OCRrako PDF orrialde zehatzak ere hauta ditzakegu

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF orrialde bakoitzeko orrialde bat
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// OCRrako PDF orrialde zehatzak ere hauta ditzakegu

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// PDF orrialde bakoitzeko orrialde bat
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Basque
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' OCRrako PDF orrialde zehatzak ere hauta ditzakegu

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' PDF orrialde bakoitzeko orrialde bat
End Using
VB   C#

OCR MultiPage TIFFetarako

OCR irakurketa TIFF fitxategi formatua orrialde anitzeko dokumentuak barne. TIFF zuzenean PDF fitxategi bihur daiteke bilaketan bilatu daitekeen testuarekin.

using IronOcr;

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

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.Basque;

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.Basque

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

Barra-kodeak eta QR

IronOCR-ren ezaugarri berezia dokumentuen barra-kodeak eta QR kodeak irakur ditzake testua bilatzen ari den bitartean. OcrResult.OcrBarcode klaseko instantziek garatzaileari eskaneatutako barra-kode bakoitzari buruzko informazio zehatza ematen diote.

// 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);
// mota eta kokapen propietateak ere agerian
}
}
// 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);
// mota eta kokapen propietateak ere agerian
}
}
' 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)
' mota eta kokapen propietateak ere agerian
Next Barcode
End Using
VB   C#

Irudi-arlo espezifikoei buruzko OCR

IronOCRren eskaneatze- eta irakurketa-metodo guztiek testua irakurri nahi dugun orrialde edo orrialdeetako zein atal zehatz zehazteko aukera ematen dute. Hori oso erabilgarria da inprimaki normalizatuak aztertzen ari garenean eta denbora asko aurrez dezakegu eta eraginkortasuna hobetu.

Laborantza eskualdeak erabiltzeko, System.Drawing sistemaren erreferentzia bat gehitu beharko dugu System.Drawing.Rectangle objektua erabili ahal izateko.

using IronOcr;

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Neurriak px-tan daude

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

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

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Neurriak px-tan daude

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

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

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

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Neurriak px-tan daude

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

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

OCR kalitate baxuko eskaneatzeetarako

IronOCR OcrInput klaseak Tesseract normalak irakurri ezin dituen OcrInput konpon ditzake.

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

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // zarata digitala eta eskaneatze eskasa konpontzen ditu
Input.Deskew(); // biraketa eta perspektiba finkatzen ditu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // zarata digitala eta eskaneatze eskasa konpontzen ditu
Input.Deskew(); // biraketa eta perspektiba finkatzen ditu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Basque

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' zarata digitala eta eskaneatze eskasa konpontzen ditu
Input.Deskew() ' biraketa eta perspektiba finkatzen ditu
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Esportatu OCR emaitzak bilatzeko PDF moduan

Irudia PDF formatuan kopiatzeko testu kateekin. Bilatzaileek eta datu-baseek indexatu dezakete.

using IronOcr;

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

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.Basque;

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.Basque

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 bilaketa PDF bihurtzeko

COAktibatu TIFF dokumentu bat (edo edozein irudi-fitxategi talde) zuzenean bilatzeko PDF batean, intranet, webgune eta google bilatzaileek indexatu ahal izateko.

using IronOcr;

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

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.Basque;

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.Basque

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

Esportatu OCR emaitzak HTML gisa

OCR irudia XHTML bihurtzeko.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;
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.Basque;
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.Basque
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 irudiak hobetzeko iragazkiak

IronOCR-k OcrInput objektuentzako iragazki bakarrak eskaintzen ditu OCR errendimendua hobetzeko.

Irudia hobetzeko kodearen adibidea

OCR sarrerako irudiak kalitate handiagoa lortzen ditu OCR emaitza hobeak eta azkarragoak lortzeko.

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

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // zarata digitala eta eskaneatze eskasa konpontzen ditu
Input.Deskew(); // biraketa eta perspektiba finkatzen ditu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // zarata digitala eta eskaneatze eskasa konpontzen ditu
Input.Deskew(); // biraketa eta perspektiba finkatzen ditu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Basque

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' zarata digitala eta eskaneatze eskasa konpontzen ditu
Input.Deskew() ' biraketa eta perspektiba finkatzen ditu
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR irudi iragazkien zerrenda

IronOCR programan integratutako OCR errendimendua hobetzeko sarrera iragazkiak hauek dira:

  • OcrInput.Rotate (gradu bikoitza) - Irudiak erlojuaren norabidean biratzen ditu. Erlojuaren aurkako norabidean, erabili zenbaki negatiboak.
  • OcrInput.Binarize () - Irudi-iragazki honek pixel guztiak beltz edo zuri bihurtzen ditu bide ertainik gabe. Testuaren atzeko planoarekiko kontraste oso baxuko OCR errendimendu kasuak hobe ditzake.
  • OcrInput.ToGrayScale () - Irudi-iragazki honek pixel bakoitza gris- tonuko tonu bihurtzen du. Nekez hobetuko du OCR zehaztasuna, baina abiadura hobe dezake
  • OcrInput.Contrast () - Kontrastea automatikoki handitzen du. Iragazki honek askotan OCR abiadura eta zehaztasuna hobetzen ditu kontraste baxuko miaketetan.
  • OcrInput.DeNoise () - Zarata digitala kentzen du. Iragazki hau zarata espero den tokian soilik erabili behar da.
  • OcrInput.Invert () - Kolore guztiak alderantzikatzen ditu. Adibidez, zuria beltz bihurtzen da: beltza zuri bihurtzen da.
  • OcrInput.Dilate () - Morfologia aurreratua. Dilatazioak pixelak gehitzen ditu irudi bateko objektuen mugetan. Erodearen aurkakoa
  • OcrInput.Erode () - Morfologia aurreratua. Higadurak objektuen mugetan pixelak kentzen ditu Dilate of Opposite
  • OcrInput.Deskew () - Irudi bat biratzen du, beraz, modu egokian gora eta ortogonala da. Hau oso erabilgarria da OCRrako, Tesseract-en tolerantzia okerreko miaketetan 5 gradu artekoa izan baitaiteke.
  • OcrInput.DeepCleanBackgroundNoise () - Atzeko planoko zarata kentzea. Erabili iragazki hau soilik dokumentu muturreko atzeko zarata ezagutzen bada, iragazki honek dokumentu garbien OCR zehaztasuna murrizteko arriskua izango duelako eta CPU oso garestia delako.
  • OcrInput.EnhanceResolution - Kalitate baxuko irudien bereizmena hobetzen du. Iragazki hau ez da askotan behar OcrInput.MinimumDPI eta OcrInput.TargetDPI bereizmen txikiko sarrerak automatikoki harrapatu eta ebatziko dituztelako .

GarbiketaHondoa. Hau denbora gutxi behar duen ezarpena da; hala ere, liburutegiak irudi digital baten barruan zarata digitala, papera xehatu eta bestelako akatsak automatikoki garbitzeko aukera ematen du, bestela beste OCR liburutegi batzuek irakurtzeko gaitasuna izango lukete.

EnhanceContrast IronOCR-k testuaren kontrastea irudi baten atzeko aldean automatikoki handitzen duen ezarpena da, OCRren zehaztasuna handituz eta, oro har, errendimendua eta OCR abiadura handituz.

EnhanceResolution bereizmen txikiko irudiak (275 dpi baino gutxiagokoak) automatikoki detektatuko dituen ezarpena da eta automatikoki irudia handitu eta testu guztia zorroztuko du, OCR liburutegi batek irakurri ahal izateko. Eragiketa honek berez denbora asko eskatzen duen arren, orokorrean irudi batean OCR eragiketa egiteko denbora orokorra murrizten du.

Language IronOCR-k nazioarteko 22 hizkuntza-pakete onartzen ditu eta hizkuntza-ezarpena OCR eragiketa batean aplikatu beharreko hizkuntza bat edo gehiago hautatzeko erabil daiteke.

Strategy IronOCR-k bi estrategia onartzen ditu. Aukeratu dezakegu dokumentu baten eskaneatze azkarra eta hain zehatza ez egitea edo adimen artifizialeko eredu batzuk erabiltzen dituen estrategia aurreratua erabiltzea OCR testuaren zehaztasuna automatikoki hobetzeko esaldi bateko hitzek elkarren artean duten erlazio estatistikoa aztertuz. .

ColorSpace ezarpena da, grisen eskalan edo koloretan OCR aukeratu ahal izateko. Oro har, grisen eskala da aukerarik onena. Hala ere, zenbaitetan antzeko tonua duten baina oso kolore desberdineko testuak edo atzeko planoak daudenean, kolore osoko espazio batek emaitza hobeak emango ditu.

DetectWhiteTextOnDarkBackgrounds. Oro har, OCR liburutegi guztiek testu beltza atzealde zurietan ikustea espero dute. Ezarpen horri esker, IronOCR-k testu zuridun negatiboak edo orrialde ilunak automatikoki detektatu eta irakurri ditzake.

InputImageType. Ezarpen horri esker, garatzaileak OCR liburutegia gidatu dezake dokumentu osoa edo zatitxo bat aztertzen ari den, pantaila-argazkia adibidez.

RotateAndStraighten ezarpen aurreratua da eta Iron OCRri biratu ez ezik, agian perspektiba duten dokumentuak irakurtzeko gaitasuna ere ematen dio Iron OCRri , testu dokumentuen argazkiak adibidez.

ReadBarcodes funtzio erabilgarria da eta IronOCR-k orrialdeetako barra-kodeak eta QR kodeak automatikoki irakurtzeko aukera ematen du testua ere irakurtzen baitu, denbora gehigarri handirik gehitu gabe.

KoloreSakonera. Ezarpen honek OCR liburutegiak kolore bakoitzeko sakonera zehazteko pixeleko zenbat bit erabiliko dituen zehazten du. Kolorearen sakonera altuagoak OCR kalitatea handitu dezake, baina OCR eragiketa burutzeko behar den denbora ere handituko da.

126 hizkuntza pakete

IronOCR-k nazioarteko 126 hizkuntza onartzen ditu DLL gisa banatzen diren hizkuntza paketeen bidez, webgune honetatik deskargatu daitezkeenak edo NuGet Package Manager- etik ere.

Hizkuntzen artean, alemana, frantsesa, ingelesa, txinera, japoniera eta beste asko daude. Hizkuntza pakete espezializatuak daude MRZ pasaportea, MICR egiaztapenak, datu ekonomikoak, matrikulak eta askoz gehiago. Tesseract ".traineddata" fitxategia ere erabil dezakezu - zuk zeuk sortutakoak barne.

Hizkuntza adibidea

Beste OCR hizkuntza batzuk erabiltzea.

// 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");
// Gehitu irudi iragazkiak behar izanez gero
// Kasu honetan, pentsatutako sarrera ere oso kalitate txikikoa da
// IronTesseract-ek ohiko Tesseract-ek ezin duena irakur dezake.

var Result = Ocr.Read(input);

// Kontsolak ezin du arabiera Windows-en erraz inprimatu.
// Gorde dezagun horren ordez diskoan.
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");
// Gehitu irudi iragazkiak behar izanez gero
// Kasu honetan, pentsatutako sarrera ere oso kalitate txikikoa da
// IronTesseract-ek ohiko Tesseract-ek ezin duena irakur dezake.

var Result = Ocr.Read(input);

// Kontsolak ezin du arabiera Windows-en erraz inprimatu.
// Gorde dezagun horren ordez diskoan.
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")
' Gehitu irudi iragazkiak behar izanez gero
' Kasu honetan, pentsatutako sarrera ere oso kalitate txikikoa da
' IronTesseract-ek ohiko Tesseract-ek ezin duena irakur dezake.

Dim Result = Ocr.Read(input)

' Kontsolak ezin du arabiera Windows-en erraz inprimatu.
' Gorde dezagun horren ordez diskoan.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Hizkuntza anitzeko adibidea

OCR ere posible da hainbat hizkuntza aldi berean erabiliz. Honek Unicode dokumentuetan ingelesezko metadatuak eta URLak lortzen lagun dezake.

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

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

// Edozein hizkuntza kopuru gehi dezakegu

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.Basque);

// Edozein hizkuntza kopuru gehi dezakegu

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.Basque)

' Edozein hizkuntza kopuru gehi dezakegu

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

OCR emaitzen xehetasunak

IronOCR-k OCR emaitza objektu bat itzultzen du OCR eragiketa bakoitzerako. Orokorrean, garatzaileek objektu honen testuaren propietatea soilik erabiltzen dute iruditik eskaneatutako testua lortzeko. Hala ere, OCR emaitzen DOM hau baino askoz aurreratuagoa da.

using IronOcr;
using System.Drawing; //Gehitu muntaiaren erreferentzia

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Garrantzitsua

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;
// Arakatu hemen API masibo eta zehatza aurkitzeko:
// - Orriak, Blokeak, Parafafoak, Lerroak, Hitzak, Letrak
// - Irudia esportatzea, letra-tipoen koordenatuak, datu estatistikoak
}
using IronOcr;
using System.Drawing; //Gehitu muntaiaren erreferentzia

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Basque;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Garrantzitsua

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;
// Arakatu hemen API masibo eta zehatza aurkitzeko:
// - Orriak, Blokeak, Parafafoak, Lerroak, Hitzak, Letrak
// - Irudia esportatzea, letra-tipoen koordenatuak, datu estatistikoak
}
Imports IronOcr
Imports System.Drawing 'Gehitu muntaiaren erreferentzia

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Basque
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '! Garrantzitsua

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
' Arakatu hemen API masibo eta zehatza aurkitzeko:
' - Orriak, Blokeak, Parafafoak, Lerroak, Hitzak, Letrak
' - Irudia esportatzea, letra-tipoen koordenatuak, datu estatistikoak
End Using
VB   C#

Emanaldia

IronOCR kutxatik kanpo funtzionatzen du sarrerako irudiak sintonizatu edo aldatu beharrik gabe.

Speed is Blazing: IronOcr.2020 + 10 aldiz azkarragoa da eta aurreko eraikuntzek baino% 250 baino gutxiago akats gutxiago egiten ditu.

Gehiago ikasi

C #, VB, F # edo .NET beste edozein hizkuntzatan OCR-ri buruz gehiago jakiteko, irakurri gure komunitateko tutorialak , IronOCR nola erabil daitekeen erakusten duten benetako adibideak ematen dituztenak eta ahalik eta etekin onena ateratzeko ñabardurak erakusten dituztenak. liburutegi hau.

.NET garatzaileentzako objektuen erreferentzia osoa ere eskuragarri dago.