Eesti OCR C#ja .NET

Selle dokumendi muud versioonid:

IronOCR on C#tarkvarakomponent, mis võimaldab .NET-kodeerijatel lugeda teksti piltidest ja PDF-dokumentidest 126 keeles, sealhulgas eesti keeles.

See on täiustatud Tesseracti kahvliharu, mis on ehitatud ainult .NET-i arendajatele ja edestab regulaarselt teisi Tesseract-mootoreid nii kiiruse kui ka täpsuse poolest.

IronOcr sisu. Keeled. Eesti

See pakett sisaldab 49 NET-i OCR-keelt:

  • Eestlane
  • Eesti Parim
  • EstonianFast

Lae alla

Eesti keele pakett [eesti]
* Download as Zip
* Install with as
https://www.nuget.org/packages/IronOcr.Languages.Estonian/'> NuGet

Paigaldamine

Esimene asi, mida peame tegema, on installida meie Eesti OCR-pakett teie .NET-projekti.

PM> Install-Package IronOCR.Languages.Estonian

Koodinäide

See C#koodi näide loeb eestikeelset teksti pilt- või PDF-dokumendist.

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

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

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

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

Miks valida IronOCR?

Raud OCR on hõlpsasti installitav, täielik ja hästi dokumenteeritud .NET tarkvarakogu.

Valige IronOCR, et saavutada 99,8% + OCR-i täpsus ilma väliseid veebiteenuseid, jooksvaid tasusid kasutamata või konfidentsiaalseid dokumente Interneti kaudu saatmata.

Miks C#arendajad valivad IronOCR-i Vanilla Tesseract'i asemel:

  • Installige ühe DLL-i või Nugetina
  • Komplekti kuulub Tesseract 5, 4 ja 3 mootorid karbist.
  • Täpsus 99,8% ületab oluliselt tavalist Tesseract'i.
  • Lõõskav kiirus ja mitmekeermineerimine
  • Ühilduvad MVC, WebApp, töölaud, konsool ja serverirakendus
  • Töötamiseks pole Exesi ega C ++ koodi
  • Täielik PDF OCR-i tugi
  • OCR-i tegemiseks peaaegu iga pildifail või PDF
  • Täielik .NET Core, Standard ja FrameWork tugi
  • Paigaldage Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Lugege vöötkoode ja QR-koode
  • Ekspordi OCR XHTML-i
  • Eksportige OCR otsitavatesse PDF-dokumentidesse
  • Mitme lõime tugi
  • 126 rahvusvahelist keelt, mida kõiki hallatakse Nugeti või OcrData failide kaudu
  • Väljavõtte pildid, koordinaadid, statistika ja fondid. Mitte ainult tekst.
  • Saab kasutada Tesseract OCR-i levitamiseks kaubanduslikes ja varalistes rakendustes.

Raudne OCR särab, kui töötate reaalsete piltide ja ebatäiuslike dokumentidega, nagu fotod, või madala eraldusvõimega skannidega, millel võib olla digitaalset müra või puudusi.

Teised .NET-platvormi jaoks mõeldud tasuta OCR- teegid, näiteks muud .net tesseract API-d ja veebiteenused, ei toimi nendes reaalses maailmas kasutamiseks nii hästi.

OCR koos Tesseract 5-ga - alustage kodeerimist C#-ga

Allpool olev koodinäide näitab, kui lihtne on pildilt teksti lugeda C#või VB .NET abil.

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#

Konfigureeritav Hello World

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... saate lisada suvalise arvu pilte
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Estonian
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... saate lisada suvalise arvu pilte
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Estonian
Imports IronOcr

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

Sama lähenemist saab samamoodi kasutada teksti väljavõtmiseks igast PDF-dokumendist.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Saame OCR-iks valida ka konkreetsed PDF-i leheküljenumbrid

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 leht igale PDF-i lehele
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Saame OCR-iks valida ka konkreetsed PDF-i leheküljenumbrid

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 leht igale PDF-i lehele
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Estonian
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' Saame OCR-iks valida ka konkreetsed PDF-i leheküljenumbrid

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 leht igale PDF-i lehele
End Using
VB   C#

OCR mitme lehe TIFF-ide jaoks

OCR TIFF-failivormingu, sealhulgas mitmeleheküljeliste dokumentide lugemine. TIFF-i saab teisendada ka otsitava tekstiga PDF-failiks.

using IronOcr;

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

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

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

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

Vöötkoodid ja QR

Raudse OCR-i ainulaadne omadus on see, et ta saab teksti skannimise ajal dokumentidest lugeda vöötkoode ja QR-koode. OcrResult.OcrBarcode klassi OcrResult.OcrBarcode annavad arendajale üksikasjalikku teavet iga skannitud vöötkoodi kohta.

// 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);
// ka tüübi ja asukoha omadused
}
}
// 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);
// ka tüübi ja asukoha omadused
}
}
' 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)
' ka tüübi ja asukoha omadused
Next Barcode
End Using
VB   C#

OCR piltide konkreetsetes piirkondades

Kõik IronOCR-i skannimis- ja lugemismeetodid võimaldavad täpselt määratleda, millist lehe osa või lehti me teksti lugeda tahame. See on standardiseeritud vormide vaatamisel väga kasulik ja võib säästa tohutult palju aega ja parandada tõhusust.

Kärpimispiirkondade kasutamiseks peame lisama süsteemiviite süsteemile System.Drawing , et saaksime kasutada objekti System.Drawing.Rectangle .

using IronOcr;

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Mõõtmed on pikslites

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

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

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Mõõtmed on pikslites

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

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

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

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Mõõtmed on pikslites

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

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

OCR madala kvaliteediga skannimiseks

Raud OCR OcrInput klass suudab parandada skaneeringuid, mida tavaline Tesseract ei oska lugeda.

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

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // parandab digitaalse müra ja halva skannimise
Input.Deskew(); // fikseerib pöörlemise ja perspektiivi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // parandab digitaalse müra ja halva skannimise
Input.Deskew(); // fikseerib pöörlemise ja perspektiivi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Estonian

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' parandab digitaalse müra ja halva skannimise
Input.Deskew() ' fikseerib pöörlemise ja perspektiivi
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Ekspordi OCR-i tulemused otsitava PDF-failina

Pilt PDF-i, kopeeritavate tekstistringidega. Saab otsingumootorite ja andmebaaside abil indekseerida.

using IronOcr;

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

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

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

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 otsitava PDF-i teisendamiseks

T teisendage TIFF-dokument (või mis tahes pildifailide rühm) otse otsitavaks PDF-failiks, mille siseveeb, veebisait ja Google'i otsingumootorid saavad üles indekseerida.

using IronOcr;

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

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

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

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

Ekspordi OCR-i tulemused HTML-iga

OCR-pildi XHTML-teisendamine.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;
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.Estonian;
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.Estonian
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-pildi täiustamise filtrid

IronOCR pakub OCR-i jõudluse parandamiseks ainulaadseid filtreid OcrInput objektidele.

Kujutise täiustamise koodi näide

Muudab OCR-sisendkujutiste kvaliteedi paremate ja kiiremate OCR-tulemuste saamiseks.

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

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // parandab digitaalse müra ja halva skannimise
Input.Deskew(); // fikseerib pöörlemise ja perspektiivi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // parandab digitaalse müra ja halva skannimise
Input.Deskew(); // fikseerib pöörlemise ja perspektiivi
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Estonian

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' parandab digitaalse müra ja halva skannimise
Input.Deskew() ' fikseerib pöörlemise ja perspektiivi
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR-pildifiltrite loend

IronOCR-i sisseehitatud sisendfiltrid OCR-i jõudluse parandamiseks hõlmavad järgmist:

  • OcrInput.Rotate (topelt kraadi) - pöörab pilte mitu kraadi päripäeva. Päripäeva liikumiseks kasutage negatiivseid numbreid.
  • OcrInput.Binarize () - see pildifilter muudab iga piksli mustaks või valgeks ilma keskteeta . Võib parandada OCR-i juhtumeid, kui teksti ja tausta taust on väga väike.
  • OcrInput.ToGrayScale () - see pildifilter muudab iga piksli halltooni varjundiks. Tõenäoliselt ei paranda OCR-i täpsust, kuid võib parandada kiirust
  • OcrInput.Contrast () - suurendab kontrasti automaatselt. See filter parandab madala kontrastsusega skannimisel sageli OCR-i kiirust ja täpsust.
  • OcrInput.DeNoise () - eemaldab digitaalse müra. Seda filtrit tuleks kasutada ainult eeldatava müra korral.
  • OcrInput.Invert () - muudab kõik värvid. Nt Valgest saab must: must saab valgeks.
  • OcrInput.Dilate () - täiustatud morfoloogia. Laiendamine lisab pildil olevate objektide piiridele piksleid. Erode'i vastas
  • OcrInput.Erode () - täiustatud morfoloogia. Erosioon eemaldab pikslid objekti piiridest Vastupidi laiendusele
  • OcrInput.Deskew () - pöörab pilti nii, et see oleks õige üles- ja ristkülikukujuline. See on OCR-i jaoks väga kasulik, sest Tesseract'i tolerants vildakate skannide jaoks võib olla kuni 5 kraadi.
  • OcrInput.DeepCleanBackgroundNoise () - tugeva taustamüra eemaldamine. Kasutage seda filtrit ainult juhul, kui on teada dokumendi äärmine taustamüra, kuna see filter võib vähendada ka puhaste dokumentide OCR-täpsust ja on väga protsessoriga kulukas.
  • OcrInput.EnhanceResolution - suurendab madala kvaliteediga piltide eraldusvõimet. Seda filtrit pole sageli vaja, sest OcrInput.MinimumDPI ja OcrInput.TargetDPI püüavad ja lahendavad madala eraldusvõimega sisendid automaatselt.

CleanBackgroundMüra. See on seade, mis on mõnevõrra aeganõudev; see võimaldab siiski raamatukogul digitaalse pildi digitaalset müra, kortsusid ja muid puudusi automaatselt puhastada, mis muidu muudaksid selle OCR-i raamatukogudes loetamatuks.

EnhanceContrast on seade, mis paneb Raud-OCR-i suurendama teksti kontrastsust automaatselt pildi taustal, suurendades OCR-i täpsust ning üldiselt suurendades OCR-i jõudlust ja kiirust.

EnhanceResolution on säte, mis tuvastab automaatselt madala eraldusvõimega pildid (mis on alla 275 dpi), suurendab pilti automaatselt ja teravustab kogu teksti, nii et OCR-i raamatukogu saaks seda ideaalselt lugeda. Kuigi see toiming on iseenesest aeganõudev, vähendab see üldjuhul pildi OCR-toimingu kogu aega.

Keel IronOCR toetab 22 rahvusvahelist keelepaketti ja keeleseadet saab kasutada ühe või mitme OCR-i jaoks rakendatava keele valimiseks.

Strategy IronOCR toetab kahte strateegiat. Võime valida kas dokumendi kiire ja vähem täpse skannimise või kasutada täpsemat strateegiat, mis kasutab mõningaid tehisintellekti mudeleid OCR-teksti täpsuse automaatseks parandamiseks, vaadates lauses sõnade statistilist suhet. .

ColorSpace on seade, mille abil saame valida OCR-i halltoonides või värvides. Üldiselt on halltoon parim valik. Kuid mõnikord, kui tekstid või taust on sarnase tooniga, kuid väga erineva värviga, annab täisvärviline värviruum paremaid tulemusi.

DetectWhiteTextOnDarkBackgrounds. Üldiselt loodavad kõik OCR-i raamatukogud näha musta teksti valgel taustal. See seade võimaldab raua OCR-il tuvastada negatiivseid või tumedaid valge tekstiga lehti ja neid lugeda.

InputImageType. See seade võimaldab arendajal suunata OCR-i teeki, kas see vaatab täielikku dokumenti või fragmenti, näiteks ekraanipilti.

RotateAndStraighten on täiustatud seade, mis võimaldab raud-OCR- il ainulaadset võimalust lugeda dokumente, mis pole ainult pööratud, vaid võivad sisaldada perspektiivi, näiteks tekstidokumentide fotosid.

ReadBarcodes on kasulik funktsioon, mis võimaldab IronOCR- il lugeda lehtedel automaatselt vöötkoode ja QR-koode, kuna see loeb ka teksti, lisamata suurt ajakulu.

VärvSügavus. See säte määrab, mitu bitti piksli kohta kasutab OCR-raamatukogu värvi sügavuse määramiseks. Suurem värvisügavus võib suurendada OCR-kvaliteeti, kuid pikendab ka OCR-toimingu lõpuleviimiseks vajalikku aega.

126 keelepaketti

Raud OCR toetab 126 rahvusvahelist keelt keelepakettide kaudu, mida levitatakse DLL- failidena , mille saab alla laadida sellelt veebisaidilt või ka NuGet Package Managerist .

Keeled hõlmavad saksa, prantsuse, inglise, hiina, jaapani ja palju muud. Spetsialistide keelepaketid on olemas passide MRZ, MICR kontrollide, finantsandmete, numbrimärkide ja paljude muude jaoks. Võite kasutada ka mis tahes tesseract ".traineddata" faili - ka neid, mille olete ise loonud.

Keele näide

Muude OCR-keelte kasutamine.

// 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");
// Vajadusel lisage pildifiltrid
// Sel juhul on isegi mõtte sisend väga madala kvaliteediga
// IronTesseract suudab lugeda seda, mida tavaline Tesseract ei suuda.

var Result = Ocr.Read(input);

// Konsool ei saa araabia keelt Windowsis hõlpsalt printida.
// Salvestame selle asemel kettale.
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");
// Vajadusel lisage pildifiltrid
// Sel juhul on isegi mõtte sisend väga madala kvaliteediga
// IronTesseract suudab lugeda seda, mida tavaline Tesseract ei suuda.

var Result = Ocr.Read(input);

// Konsool ei saa araabia keelt Windowsis hõlpsalt printida.
// Salvestame selle asemel kettale.
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")
' Vajadusel lisage pildifiltrid
' Sel juhul on isegi mõtte sisend väga madala kvaliteediga
' IronTesseract suudab lugeda seda, mida tavaline Tesseract ei suuda.

Dim Result = Ocr.Read(input)

' Konsool ei saa araabia keelt Windowsis hõlpsalt printida.
' Salvestame selle asemel kettale.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Näide mitme keelega

Samuti on võimalik OCR-i kasutada mitut keelt korraga. See võib tõesti aidata saada ingliskeelseid metaandmeid ja URL-e Unicode'i dokumentidesse.

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

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

// Saame lisada suvalise arvu keeli

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

// Saame lisada suvalise arvu keeli

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

' Saame lisada suvalise arvu keeli

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

Üksikasjalikud OCR-i tulemuste objektid

Raud OCR tagastab iga OCR-toimingu jaoks OCR-i tulemuse objekti. Üldiselt kasutavad arendajad selle objekti tekstiomadust ainult pildilt skannitud teksti saamiseks. Kuid OCR-i tulemuste DOM on sellest palju arenenum.

using IronOcr;
using System.Drawing; //Lisa kokkupaneku viide

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Tähtis

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;
// Uurige siit, et leida ulatuslik ja üksikasjalik API:
// - lehed, plokid, parafafid, read, sõnad, sümbolid
// - piltide eksport, fondide koordinaadid, statistilised andmed
}
using IronOcr;
using System.Drawing; //Lisa kokkupaneku viide

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Estonian;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Tähtis

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;
// Uurige siit, et leida ulatuslik ja üksikasjalik API:
// - lehed, plokid, parafafid, read, sõnad, sümbolid
// - piltide eksport, fondide koordinaadid, statistilised andmed
}
Imports IronOcr
Imports System.Drawing 'Lisa kokkupaneku viide

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Estonian
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '! Tähtis

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
' Uurige siit, et leida ulatuslik ja üksikasjalik API:
' - lehed, plokid, parafafid, read, sõnad, sümbolid
' - piltide eksport, fondide koordinaadid, statistilised andmed
End Using
VB   C#

Performance

IronOCR töötab karbist välja, ilma et oleks vaja sisendkujutisi jõudlust häälestada või tugevalt muuta.

Kiirus on lõõskav: IronOcr.2020 + on kuni 10 korda kiirem ja teeb üle 250% vähem vigu kui eelmised järkud.

Lisateave

Lisateabe saamiseks OCR-i kohta C #, VB, F # või mõnes muus .NET keeles lugege palun meie kogukonna õpetusi , mis toovad reaalses maailmas näiteid selle kohta, kuidas rauda OCR-i saab kasutada, ja võivad näidata nüansse, kuidas parimat saavutada see raamatukogu.

Saadaval on ka täielik NET-arendajate objektiviide .