Latvijas OCR C#un.NET

Citas šī dokumenta versijas:

IronOCR ir C#programmatūras komponents, kas ļauj .NET kodētājiem lasīt tekstu no attēliem un PDF dokumentiem 126 valodās, ieskaitot latviešu valodu.

Tā ir uzlabota Tesseract dakša, kas paredzēta tikai .NET izstrādātājiem un regulāri pārspēj citus Tesseract dzinējus gan ātruma, gan precizitātes ziņā.

IronOcr saturs. Valodas. Latviešu

Šajā paketē ir 46 OCR valodas .NET:

  • Latvietis
  • LatvianLabākais
  • LatvianFast

Lejupielādēt

Latviešu valodas pakete [latviešu valoda]
* Download as Zip
* Install with
https://www.nuget.org/packages/IronOcr.Languages.Latvian/'> NuGet

Uzstādīšana

Pirmā lieta, kas mums jādara, ir instalēt mūsu latviešu OCR pakotni jūsu .NET projektā.

PM> Install-Package IronOCR.Languages.Latvian

Kodu piemērs

Šis C#koda piemērs lasa latviešu valodas tekstu no attēla vai PDF dokumenta.

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

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

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

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

Kāpēc izvēlēties IronOCR?

IronOCR ir viegli instalējama, pilnīga un labi dokumentēta .NET programmatūras bibliotēka.

Izvēlieties IronOCR, lai sasniegtu 99,8% + OCR precizitāti , neizmantojot nekādus ārējos tīmekļa pakalpojumus, pastāvīgas maksas vai konfidenciālu dokumentu sūtīšanu internetā.

Kāpēc C#izstrādātāji izvēlas IronOCR, nevis Vanilla Tesseract:

  • Instalējiet kā vienu DLL vai NuGet
  • Komplektā Tesseract 5, 4 un 3 dzinēji ārpus kastes.
  • Precizitāte 99,8% ievērojami pārspēj parasto Tesseract.
  • Blazing Speed un MultiThreading
  • Saderīgs ar MVC, WebApp, darbvirsmu, konsoli un servera lietojumprogrammām
  • Nav Exes vai C ++ koda, ar kuru strādāt
  • Pilna PDF OCR atbalsts
  • Lai veiktu OCR gandrīz jebkuru attēla failu vai PDF failu
  • Pilns .NET Core, Standard un FrameWork atbalsts
  • Izvietojiet operētājsistēmās Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Lasiet svītrkodus un QR kodus
  • Eksportēt OCR uz XHTML
  • Eksportējiet OCR uz meklējamajiem PDF dokumentiem
  • Vairāku pavedienu atbalsts
  • 126 starptautiskās valodas, kuras visas tiek pārvaldītas, izmantojot NuGet vai OcrData failus
  • Izvilkt attēlus, koordinātas, statistiku un fontus. Ne tikai tekstu.
  • Var izmantot Tesseract OCR izplatīšanai komerciālās un patentētās lietojumprogrammās.

Dzelzs OCR spīd, strādājot ar reālās pasaules attēliem un nepilnīgiem dokumentiem, piemēram, fotogrāfijām vai zemas izšķirtspējas skenējumiem, kuriem var būt digitāls troksnis vai nepilnības.

Citas bezmaksas OCR bibliotēkas .NET platformai, piemēram, citas .net tesseract API un tīmekļa pakalpojumi, šajos reālās pasaules lietošanas gadījumos nedarbojas tik labi.

OCR ar Tesseract 5 - sāciet kodēšanu C #

Zemāk redzamais koda paraugs parāda, cik viegli ir lasīt tekstu no attēla, izmantojot C#vai VB .NET.

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#

Konfigurējama Hello World

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... jūs varat pievienot jebkuru attēlu skaitu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Latvian
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... jūs varat pievienot jebkuru attēlu skaitu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Latvian
Imports IronOcr

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

To pašu pieeju līdzīgi var izmantot, lai izvilktu tekstu no jebkura PDF dokumenta.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Mēs varam arī atlasīt OCR noteiktus PDF lapu numurus

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 lapa katrai PDF lappusei
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Mēs varam arī atlasīt OCR noteiktus PDF lapu numurus

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 lapa katrai PDF lappusei
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Latvian
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' Mēs varam arī atlasīt OCR noteiktus PDF lapu numurus

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 lapa katrai PDF lappusei
End Using
VB   C#

OCR daudzlapu TIFF

OCR TIFF faila formāta lasīšana, ieskaitot vairāku lapu dokumentus. TIFF var arī pārveidot tieši PDF failā ar meklējamu tekstu.

using IronOcr;

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

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

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

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

Svītrkodi un QR

IronOCR unikālā iezīme ir tā, ka tā var lasīt svītrkodus un QR kodus no dokumentiem, kamēr tas skenē tekstu. OcrResult.OcrBarcode klases gadījumi sniedz izstrādātājam detalizētu informāciju par katru skenēto svītrkodu.

// 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);
// veida un atrašanās vietas īpašības arī pakļautas
}
}
// 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);
// veida un atrašanās vietas īpašības arī pakļautas
}
}
' 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)
' veida un atrašanās vietas īpašības arī pakļautas
Next Barcode
End Using
VB   C#

OCR par konkrētām attēlu jomām

Visas IronOCR skenēšanas un lasīšanas metodes nodrošina iespēju precīzi norādīt, no kuras lapas vai lapām mēs vēlamies lasīt tekstu. Tas ir ļoti noderīgi, ja mēs skatāmies uz standartizētām veidlapām, un tas var ietaupīt ļoti daudz laika un uzlabot efektivitāti.

Lai izmantotu apgriešanas reģionus, mums būs jāpievieno sistēmas atsauce uz System.Drawing lai mēs varētu izmantot objektu System.Drawing.Rectangle .

using IronOcr;

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Izmēri ir pikseļos

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

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

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Izmēri ir pikseļos

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

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

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

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Izmēri ir pikseļos

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

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

OCR zemas kvalitātes skenēšanai

Dzelzs OCR OcrInput klase var izlabot skenējumus, kurus parasts Tesseract nevar lasīt.

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

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // novērš digitālo troksni un slikto skenēšanu
Input.Deskew(); // fiksē rotāciju un perspektīvu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // novērš digitālo troksni un slikto skenēšanu
Input.Deskew(); // fiksē rotāciju un perspektīvu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Latvian

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' novērš digitālo troksni un slikto skenēšanu
Input.Deskew() ' fiksē rotāciju un perspektīvu
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Eksportēt OCR rezultātus kā meklējamu PDF failu

Attēls uz PDF ar kopējamām teksta virknēm. To var indeksēt meklētājprogrammas un datu bāzes.

using IronOcr;

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

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

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

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 uz meklējamu PDF reklāmguvumu

T Konvertējiet TIFF dokumentu (vai jebkuru attēlu failu grupu) tieši uz meklējamu PDF failu, kuru var indeksēt iekštīkls, vietne un google meklētājprogrammas.

using IronOcr;

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

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

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

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

Eksportēt OCR rezultātus kā HTML

OCR attēla pārveidošana par XHTML.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;
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.Latvian;
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.Latvian
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 attēlu uzlabošanas filtri

IronOCR nodrošina unikālus filtrus OcrInput objektiem, lai uzlabotu OCR veiktspēju.

Attēla uzlabošanas koda piemērs

Uzlabo OCR ievades attēlu kvalitāti, lai iegūtu labākus un ātrākus OCR rezultātus.

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

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // novērš digitālo troksni un slikto skenēšanu
Input.Deskew(); // fiksē rotāciju un perspektīvu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // novērš digitālo troksni un slikto skenēšanu
Input.Deskew(); // fiksē rotāciju un perspektīvu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Latvian

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' novērš digitālo troksni un slikto skenēšanu
Input.Deskew() ' fiksē rotāciju un perspektīvu
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR attēlu filtru saraksts

IronOCR iebūvētie ievades filtri OCR veiktspējas uzlabošanai ietver:

  • OcrInput.Rotate (dubultgrādi) - pagriež attēlus par grādiem vairāk pulksteņrādītāja virzienā. Pretēji pulksteņrādītāja virzienam izmantojiet negatīvos skaitļus.
  • OcrInput.Binarize () - Šis attēla filtrs katru pikseļu padara melnu vai baltu bez vidusceļa. Var uzlabot OCR veiktspējas gadījumus ar ļoti zemu teksta un fona kontrastu.
  • OcrInput.ToGrayScale () - Šis attēlu filtrs katru pikseļu pārvērš par pelēktoņu nokrāsu. Maz ticams, ka tas uzlabos OCR precizitāti, bet var uzlabot ātrumu
  • OcrInput.Contrast () - automātiski palielina kontrastu. Šis filtrs bieži uzlabo OCR ātrumu un precizitāti skenējot ar zemu kontrastu.
  • OcrInput.DeNoise () - noņem digitālo troksni. Šis filtrs jāizmanto tikai tur, kur ir paredzams troksnis.
  • OcrInput.Invert () - pārvērš visas krāsas. Piemēram, balts kļūst melns: melns kļūst balts.
  • OcrInput.Dilate () - uzlabotā morfoloģija. Paplašināšana pievieno pikseļus attēla objektu robežām. Pretī Erodei
  • OcrInput.Erode () - uzlabotā morfoloģija. Erozijas rezultātā tiek noņemti pikseļi uz objekta robežām
  • OcrInput.Deskew () - pagriež attēlu, lai tas būtu pareizais ceļš uz augšu un ortogonāls. Tas ir ļoti noderīgi OCR, jo Tesseract pielaide šķībiem skenējumiem var būt pat 5 grādi.
  • OcrInput.DeepCleanBackgroundNoise () - spēcīga fona trokšņu noņemšana. Izmantojiet šo filtru tikai gadījumā, ja ir zināms ārkārtējs dokumenta fona troksnis, jo šis filtrs var arī samazināt tīru dokumentu OCR precizitāti un ir ļoti dārgs CPU.
  • OcrInput.EnhanceResolution - uzlabo zemas kvalitātes attēlu izšķirtspēju. Šis filtrs nav bieži nepieciešams, jo OcrInput.MinimumDPI un OcrInput.TargetDPI automātiski uztvers un atrisinās zemas izšķirtspējas ievades.

CleanBackgroundNoise. Šis iestatījums ir nedaudz laikietilpīgs; tomēr tas ļauj bibliotēkai automātiski iztīrīt digitālo attēlu, papīra saburzīšanos un citas nepilnības digitālajā attēlā, kas citādi padarītu to nespēju lasīt citās OCR bibliotēkās.

EnhanceContrast ir iestatījums, kas liek dzelzs OCR automātiski palielināt teksta kontrastu uz attēla fona, palielinot OCR precizitāti un kopumā palielinot OCR veiktspēju un ātrumu.

EnhanceResolution ir iestatījums, kas automātiski noteiks zemas izšķirtspējas attēlus (kuru izšķirtspēja ir mazāka par 275 dpi), automātiski paaugstinās attēla līmeni un pēc tam asinās visu tekstu, lai OCR bibliotēka to varētu pilnīgi nolasīt. Lai gan šī darbība pati par sevi ir laikietilpīga, tā parasti samazina kopējo laiku OCR darbībai ar attēlu.

Valodas dzelzs OCR atbalsta 22 starptautiskus valodu pakotnes, un valodas iestatījumu var izmantot, lai izvēlētos vienu vai vairākas valodas, kas jāpiemēro OCR darbībai.

Stratēģija IronOCR atbalsta divas stratēģijas. Mēs varam izvēlēties vai nu veikt ātru un mazāk precīzu dokumenta skenēšanu, vai arī izmantot uzlabotu stratēģiju, kas izmanto dažus mākslīgā intelekta modeļus, lai automātiski uzlabotu OCR teksta precizitāti, teikumā aplūkojot vārdu statistiskās attiecības savā starpā .

ColorSpace ir iestatījums, ar kuru mēs varam izvēlēties OCR pelēktoņos vai krāsās. Parasti pelēktoņu nokrāsa ir labākais risinājums. Tomēr dažreiz, ja ir teksti vai foni ar līdzīgu nokrāsu, bet ļoti atšķirīgu krāsu, pilnkrāsu krāsu telpa nodrošinās labākus rezultātus.

DetectWhiteTextOnDarkBackgrounds. Parasti visas OCR bibliotēkas sagaida melnu tekstu uz balta fona. Šis iestatījums ļauj IronOCR automātiski noteikt negatīvus vai tumšas lapas ar baltu tekstu un tās nolasīt.

InputImageType. Šis iestatījums ļauj izstrādātājam vadīt OCR bibliotēku par to, vai tā skata pilnu dokumentu vai fragmentu, piemēram, ekrānuzņēmumu.

RotateAndStraighten ir uzlabots iestatījums, kas ļauj IronOCR unikālai spējai lasīt dokumentus, kas ir ne tikai pagriezti, bet varbūt satur perspektīvu, piemēram, teksta dokumentu fotogrāfijas.

ReadBarcodes ir noderīga funkcija, kas ļauj IronOCR automātiski lasīt svītrkodus un QR kodus lapās, jo tas arī lasa tekstu, nepievienojot lielu papildu laika slogu.

KrāsaDziļums. Šis iestatījums nosaka, cik bitu vienā pikseļā OCR bibliotēka izmantos, lai noteiktu krāsas dziļumu. Lielāks krāsu dziļums var uzlabot OCR kvalitāti, bet arī palielinās laiku, kas nepieciešams OCR darbības pabeigšanai.

126 valodu pakotnes

IronOCR atbalsta 126 starptautiskās valodas, izmantojot valodu pakotnes, kuras tiek izplatītas kā DLL, kuras var lejupielādēt no šīs vietnes vai arī no NuGet Package Manager .

Valodas ietver vācu, franču, angļu, ķīniešu, japāņu un daudzas citas. Speciālistu valodu pakotnes ir paredzētas MRZ pasēm, MICR pārbaudēm, finanšu datiem, numurzīmēm un daudzām citām. Varat arī izmantot jebkuru tesseract ".traineddata" failu, ieskaitot tos, kurus pats izveidojāt.

Valodas piemērs

Citu OCR valodu izmantošana.

// 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");
// Ja nepieciešams, pievienojiet attēlu filtrus
// Šajā gadījumā pat domu ievadīšana ir ļoti zemas kvalitātes
// IronTesseract var izlasīt to, ko nevar tradicionālais Tesseract.

var Result = Ocr.Read(input);

// Konsole nevar viegli izdrukāt arābu valodu operētājsistēmā Windows.
// Tā vietā saglabāsim diskā.
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");
// Ja nepieciešams, pievienojiet attēlu filtrus
// Šajā gadījumā pat domu ievadīšana ir ļoti zemas kvalitātes
// IronTesseract var izlasīt to, ko nevar tradicionālais Tesseract.

var Result = Ocr.Read(input);

// Konsole nevar viegli izdrukāt arābu valodu operētājsistēmā Windows.
// Tā vietā saglabāsim diskā.
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")
' Ja nepieciešams, pievienojiet attēlu filtrus
' Šajā gadījumā pat domu ievadīšana ir ļoti zemas kvalitātes
' IronTesseract var izlasīt to, ko nevar tradicionālais Tesseract.

Dim Result = Ocr.Read(input)

' Konsole nevar viegli izdrukāt arābu valodu operētājsistēmā Windows.
' Tā vietā saglabāsim diskā.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Vairāku valodu piemērs

Ir iespējams arī OCR izmantot vienlaikus vairākas valodas. Tas patiešām var palīdzēt iegūt angļu valodas metadatus un URL unikoda dokumentos.

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

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

// Mēs varam pievienot jebkuru valodu skaitu

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

// Mēs varam pievienot jebkuru valodu skaitu

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

' Mēs varam pievienot jebkuru valodu skaitu

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

Detalizēti OCR rezultātu objekti

IronOCR atgriež OCR rezultātu objektu katrai OCR operācijai. Parasti izstrādātāji šī objekta teksta rekvizītu izmanto tikai, lai tekstu skenētu no attēla. Tomēr OCR rezultāti DOM ir daudz progresīvāks nekā šis.

using IronOcr;
using System.Drawing; //Pievienot montāžas atsauci

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!Svarīgs

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;
// Izpētiet šeit, lai atrastu masīvu, detalizētu API:
// - lapas, bloki, parafafi, rindas, vārdi, rakstzīmes
// - Attēlu eksportēšana, Fontu koordinātas, Statistikas dati
}
using IronOcr;
using System.Drawing; //Pievienot montāžas atsauci

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Latvian;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!Svarīgs

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;
// Izpētiet šeit, lai atrastu masīvu, detalizētu API:
// - lapas, bloki, parafafi, rindas, vārdi, rakstzīmes
// - Attēlu eksportēšana, Fontu koordinātas, Statistikas dati
}
Imports IronOcr
Imports System.Drawing 'Pievienot montāžas atsauci

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Latvian
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '!Svarīgs

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
' Izpētiet šeit, lai atrastu masīvu, detalizētu API:
' - lapas, bloki, parafafi, rindas, vārdi, rakstzīmes
' - Attēlu eksportēšana, Fontu koordinātas, Statistikas dati
End Using
VB   C#

Izrāde

IronOCR darbojas ārpus kastes, un nav nepieciešams pielāgot vai stipri pārveidot ievades attēlus.

Ātrums ir degošs: IronOcr.2020 + ir līdz pat 10 reizēm ātrāks un pieļauj vairāk nekā 250% mazāk kļūdu nekā iepriekšējie būvējumi.

Uzzināt vairāk

Lai uzzinātu vairāk par OCR C #, VB, F # vai jebkurā citā .NET valodā, lūdzu, izlasiet mūsu kopienas apmācības , kurās sniegti reālas pasaules piemēri, kā var izmantot IronOCR, un var parādīt nianses, kā vislabāk izmantot šī bibliotēka.

Ir pieejama arī pilnīga atsauce uz .NET izstrādātājiem .