Slovenské OCR v C#a .NET

Ostatné verzie tohto dokumentu:

IronOCR je softvérový komponent C #, ktorý umožňuje kódovačom .NET čítať text z obrázkov a dokumentov PDF v 126 jazykoch vrátane slovenčiny.

Je to pokročilá vidlica Tesseractu, postavená výhradne pre vývojárov .NET. Pravidelne prekonáva ostatné motory Tesseract z hľadiska rýchlosti aj presnosti.

Obsah jazykov IronOcr.Slovak

Tento balík obsahuje 61 jazykov OCR pre .NET:

  • Slovák
  • SlovakBest
  • SlovakFast
  • SlovakFraktur

Stiahnuť ▼

Slovenský jazykový balíček [slovenčina]
* Download as PSČ
* Install with
https://www.nuget.org/packages/IronOcr.Languages.Slovak/'> NuGet

Inštalácia

Prvá vec, ktorú musíme urobiť, je nainštalovať náš slovenský balík OCR do vášho projektu .NET.

PM> Install-Package IronOCR.Languages.Slovak

Príklad kódu

Tento príklad kódu C#číta slovenský text z obrázka alebo dokumentu PDF.

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

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

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

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

Prečo zvoliť IronOCR?

IronOCR je ľahko inštalovateľná, kompletná a dobre zdokumentovaná softvérová knižnica .NET.

Vyberte si IronOCR, aby ste dosiahli presnosť 99,8% + OCR bez použitia akýchkoľvek externých webových služieb, priebežných poplatkov alebo odosielania dôverných dokumentov cez internet.

Prečo si vývojári v C#vybrali IronOCR pred Vanilla Tesseract:

  • Nainštalujte si ako jednu DLL alebo NuGet
  • Zahŕňa pre motor Tesseract 5, 4 a 3 z krabice.
  • Presnosť 99,8% výrazne prekonáva bežný Tesseract.
  • Blazing Speed a MultiThreading
  • Kompatibilné s aplikáciami MVC, WebApp, Desktop, Console a Server
  • Žiadne Exes alebo C ++ kódy na prácu
  • Plná podpora OCR PDF
  • Ak chcete vykonať OCR, takmer akýkoľvek obrazový súbor alebo PDF
  • Plná podpora .NET Core, Standard a FrameWork
  • Nasadené na Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Prečítajte si čiarové kódy a QR kódy
  • Exportujte OCR ako do XHTML
  • Exportujte OCR do prehľadávateľných dokumentov PDF
  • Podpora viacerých vlákien
  • 126 medzinárodných jazykov, všetky spravované prostredníctvom súborov NuGet alebo OcrData
  • Extrahujte obrázky, súradnice, štatistiku a písma. Nielen text.
  • Môže byť použitý na redistribúciu Tesseract OCR v komerčných a proprietárnych aplikáciách.

Železné OCR svieti pri práci s obrázkami zo skutočného sveta a nedokonalými dokumentmi, ako sú fotografie alebo skeny s nízkym rozlíšením, ktoré môžu mať digitálny šum alebo nedokonalosti.

Ostatné bezplatné knižnice OCR pre platformu .NET, ako sú iné rozhrania API a webové služby .net tesseract, v týchto prípadoch použitia v reálnom svete nefungujú tak dobre.

OCR s Tesseract 5 - Začnite kódovať v C #

Nasledujúca ukážka kódu ukazuje, aké ľahké je čítať text z obrázka pomocou C#alebo 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#

Konfigurovateľný Hello World

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... môžete pridať ľubovoľný počet obrázkov
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Slovak
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... môžete pridať ľubovoľný počet obrázkov
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Slovak
Imports IronOcr

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

Rovnaký prístup je možné podobne použiť na extrahovanie textu z ľubovoľného dokumentu PDF.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Môžeme tiež vybrať konkrétnych číselníkov stránok PDF do OCR

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 strana pre každú stránku PDF
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Môžeme tiež vybrať konkrétnych číselníkov stránok PDF do OCR

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 strana pre každú stránku PDF
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Slovak
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' Môžeme tiež vybrať konkrétnych číselníkov stránok PDF do OCR

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 strana pre každú stránku PDF
End Using
VB   C#

OCR pre viacstránkové TIFF

OCR Čítanie formátu súboru TIFF vrátane viacstranových dokumentov. TIFF možno tiež previesť priamo do súboru PDF s prehľadateľným textom.

using IronOcr;

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

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

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

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

Čiarové kódy a QR

Jedinečnou vlastnosťou programu IronOCR je, že dokáže čítať čiarové kódy a QR kódy z dokumentov pri skenovaní textu. OcrResult.OcrBarcode triedy OcrResult.OcrBarcode poskytujú vývojárovi podrobné informácie o každom naskenovanom čiarovom kóde.

// 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);
// typ a umiestnenie vlastnosti tiež vystavené
}
}
// 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);
// typ a umiestnenie vlastnosti tiež vystavené
}
}
' 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)
' typ a umiestnenie vlastnosti tiež vystavené
Next Barcode
End Using
VB   C#

OCR pre konkrétne oblasti obrázkov

Všetky metódy skenovania a čítania programu IronOCR poskytujú schopnosť presne určiť, z ktorej časti stránky alebo stránok chceme čítať text. To je veľmi užitočné, keď sa pozrieme na štandardizované formuláre, ktoré vám môžu ušetriť strašne veľa času a zvýšiť efektivitu.

Ak chcete použiť oblasti orezania, budeme musieť do System.Drawing pridať systémový odkaz, aby sme mohli použiť objekt System.Drawing.Rectangle .

using IronOcr;

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Rozmery sú v pixloch

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

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

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Rozmery sú v pixloch

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

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

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

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Rozmery sú v pixloch

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

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

OCR pre skenovanie nízkej kvality

Trieda IronOCR OcrInput dokáže opraviť skeny, ktoré bežný Tesseract nedokáže prečítať.

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

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // opravuje digitálny šum a zlé skenovanie
Input.Deskew(); // opravuje rotáciu a perspektívu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // opravuje digitálny šum a zlé skenovanie
Input.Deskew(); // opravuje rotáciu a perspektívu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Slovak

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' opravuje digitálny šum a zlé skenovanie
Input.Deskew() ' opravuje rotáciu a perspektívu
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Exportujte výsledky OCR ako prehľadávateľný PDF

Obrázok do formátu PDF s kopírovateľnými textovými reťazcami. Môžu byť indexované vyhľadávačmi a databázami.

using IronOcr;

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

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

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

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#

Konverzia TIFF na prehľadávateľný súbor PDF

Konvertujte dokument TIFF (alebo ľubovoľnú skupinu obrazových súborov) priamo do prehľadávateľného PDF, ktorý je možné indexovať pomocou intranetu, webových stránok a vyhľadávacích nástrojov Google.

using IronOcr;

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

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

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

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

Exportujte výsledky OCR ako HTML

Konverzia obrazu z OCR na XHTML.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;
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.Slovak;
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.Slovak
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#

Filtre na vylepšenie obrazu OCR

IronOCR poskytuje jedinečné filtre pre objekty OcrInput na zlepšenie výkonu OCR.

Príklad kódu na vylepšenie obrázka

Zvyšuje kvalitu vstupných obrázkov OCR a poskytuje lepšie a rýchlejšie výsledky OCR.

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

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // opravuje digitálny šum a zlé skenovanie
Input.Deskew(); // opravuje rotáciu a perspektívu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // opravuje digitálny šum a zlé skenovanie
Input.Deskew(); // opravuje rotáciu a perspektívu
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Slovak

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' opravuje digitálny šum a zlé skenovanie
Input.Deskew() ' opravuje rotáciu a perspektívu
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Zoznam obrazových filtrov OCR

Vstupné filtre na zvýšenie výkonu OCR, ktoré sú zabudované do programu IronOCR, zahŕňajú:

  • OcrInput.Rotate (dvojité stupne) - Otočí obrázky o niekoľko stupňov v smere hodinových ručičiek. V protismere hodinových ručičiek použite záporné čísla.
  • OcrInput.Binarize () - tento obrazový filter zmení každý pixel na čierny alebo biely bez akejkoľvek strednej výšky . Môže zlepšiť prípady výkonu OCR pri veľmi malom kontraste textu k pozadiu.
  • OcrInput.ToGrayScale () - tento obrazový filter premení každý pixel na odtieň v odtieňoch sivej. Je nepravdepodobné, že by sa zlepšila presnosť OCR, ale môže to zvýšiť rýchlosť
  • OcrInput.Contrast () - automatické zvýšenie kontrastu. Tento filter často zvyšuje rýchlosť a presnosť OCR pri skenovaní s nízkym kontrastom.
  • OcrInput.DeNoise () - Odstráni digitálny šum. Tento filter by sa mal používať iba tam, kde sa očakáva hluk.
  • OcrInput.Invert () - Invertuje každú farbu. Napr. Biela sa stáva čiernou: čierna sa stáva bielou.
  • OcrInput.Dilate () - pokročilá morfológia. Dilatácia pridá pixely na hranice objektov v obraze. Oproti Erode
  • OcrInput.Erode () - pokročilá morfológia. Erózia odstraňuje pixely na hraniciach objektovNa rozdiel od rozšírenia
  • OcrInput.Deskew () - Otočí obrázok tak, aby bol správnym smerom nahor a kolmý. To je pre OCR veľmi užitočné, pretože tolerancia Tesseractu pri skreslených skenoch môže byť až 5 stupňov.
  • OcrInput.DeepCleanBackgroundNoise () - odstránenie silného pozadia. Tento filter používajte iba v prípade, že je známy extrémny šum pozadia dokumentu, pretože tento filter tiež riskuje zníženie presnosti OCR čistých dokumentov a je veľmi nákladný na procesor.
  • OcrInput.EnhanceResolution - zvyšuje rozlíšenie obrázkov nízkej kvality. Tento filter nie je často potrebný, pretože OcrInput.MinimumDPI a OcrInput.TargetDPI automaticky zachytí a vyrieši vstupy s nízkym rozlíšením.

CleanBackgroundNoise. Toto je nastavenie, ktoré je trochu časovo náročné; umožňuje však knižnici automaticky čistiť digitálny šum, deformácie papiera a ďalšie nedokonalosti digitálneho obrazu, ktoré by ho inak spôsobili, že ho nebude možné prečítať v iných knižniciach OCR.

EnhanceContrast je nastavenie, ktoré spôsobuje, že program IronOCR automaticky zvyšuje kontrast textu na pozadí obrázka, zvyšuje presnosť OCR a všeobecne zvyšuje výkon a rýchlosť OCR.

EnhanceResolution je nastavenie, ktoré automaticky detekuje obrázky s nízkym rozlíšením (ktoré nedosahujú 275 dpi), automaticky ich zväčší a potom zostrí všetok text, aby ho mohol knižnica OCR perfektne prečítať. Aj keď je táto operácia sama osebe časovo náročná, spravidla znižuje celkový čas operácie OCR v obraze.

Jazyk IronOCR podporuje 22 medzinárodných jazykových balíkov a jazykové nastavenie je možné použiť na výber jedného alebo viacerých jazykov, ktoré sa použijú pre operáciu OCR.

Strategy IronOCR podporuje dve stratégie. Môžeme sa rozhodnúť buď pre rýchle a menej presné skenovanie dokumentu, alebo použiť pokročilú stratégiu, ktorá využíva niektoré modely umelej inteligencie na automatické zlepšenie presnosti textu OCR pri pohľade na štatistický vzťah slov k sebe navzájom vo vete .

ColorSpace je nastavenie, pri ktorom môžeme zvoliť OCR v odtieňoch sivej alebo farebne. Všeobecne je najlepšou voľbou škála šedej. Avšak niekedy, keď existujú texty alebo pozadia podobného odtieňa, ale veľmi odlišnej farby, poskytne plnofarebný farebný priestor lepšie výsledky.

DetectWhiteTextOnDarkBackgrounds. Všeobecne všetky knižnice OCR očakávajú, že sa čierny text zobrazí na bielom pozadí. Toto nastavenie umožňuje aplikácii IronOCR automaticky detekovať negatívy alebo tmavé stránky s bielym textom a čítať ich.

InputImageType. Toto nastavenie umožňuje vývojárovi viesť knižnicu OCR, či sa pozerá na celý dokument alebo úryvok, napríklad na snímku obrazovky.

RotateAndStraighten je pokročilé nastavenie, ktoré umožňuje aplikácii IronOCR jedinečnú schopnosť čítať dokumenty, ktoré nielen rotujú, ale obsahujú aj perspektívu, napríklad fotografie textových dokumentov.

ReadBarcodes je užitočná funkcia, ktorá umožňuje aplikácii IronOCR automaticky čítať čiarové kódy a QR kódy na stránkach, pretože tiež číta text, a to bez ďalšej veľkej časovej záťaže.

Hĺbka farieb. Toto nastavenie určuje, koľko bitov na pixel bude knižnica OCR používať na určenie hĺbky farby. Vyššia farebná hĺbka môže zvýšiť kvalitu OCR, ale tiež predĺži čas potrebný na dokončenie operácie OCR.

126 jazykových balíkov

Program IronOCR podporuje 126 medzinárodných jazykov prostredníctvom jazykových balíkov distribuovaných ako DLL, ktoré si môžete stiahnuť z tejto webovej stránky alebo tiež z nástroja NuGet Package Manager .

Medzi jazyky patrí nemčina, francúzština, angličtina, čínština, japončina a mnoho ďalších. K dispozícii sú špecializované jazykové balíčky pre pasy MRZ, kontroly MICR, finančné údaje, ŠPZ a mnoho ďalších. Môžete tiež použiť akýkoľvek súbor tesseract „.traineddata“ - vrátane tých, ktoré si sami vytvoríte.

Príklad jazyka

Používanie iných jazykov OCR.

// 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");
// V prípade potreby pridajte obrázkové filtre
// V takom prípade je aj myšlienkový vstup veľmi nízkej kvality
// IronTesseract dokáže prečítať to, čo bežný Tesseract nie.

var Result = Ocr.Read(input);

// Konzola nedokáže ľahko vytlačiť arabčinu v systéme Windows.
// Namiesto toho uložme na 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");
// V prípade potreby pridajte obrázkové filtre
// V takom prípade je aj myšlienkový vstup veľmi nízkej kvality
// IronTesseract dokáže prečítať to, čo bežný Tesseract nie.

var Result = Ocr.Read(input);

// Konzola nedokáže ľahko vytlačiť arabčinu v systéme Windows.
// Namiesto toho uložme na 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")
' V prípade potreby pridajte obrázkové filtre
' V takom prípade je aj myšlienkový vstup veľmi nízkej kvality
' IronTesseract dokáže prečítať to, čo bežný Tesseract nie.

Dim Result = Ocr.Read(input)

' Konzola nedokáže ľahko vytlačiť arabčinu v systéme Windows.
' Namiesto toho uložme na disk.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Viacjazyčný príklad

Je tiež možné OCR pomocou viacerých jazykov súčasne. To skutočne môže pomôcť získať metadáta a adresy URL v anglickom jazyku v dokumentoch Unicode.

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

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

// Môžeme pridať ľubovoľný počet jazykov

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

// Môžeme pridať ľubovoľný počet jazykov

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

' Môžeme pridať ľubovoľný počet jazykov

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

Podrobné objekty výsledkov OCR

IronOCR vráti objekt výsledku OCR pre každú operáciu OCR. Vývojári spravidla používajú iba textovú vlastnosť tohto objektu na získanie textu naskenovaného z obrázka. Výsledky OCR v DOM sú však oveľa pokročilejšie.

using IronOcr;
using System.Drawing; //Pridajte odkaz na zostavu

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Dôležité

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;
// Preskúmajte tu a nájdite rozsiahle a podrobné API:
// - Stránky, bloky, parafafy, čiary, slová, znamienka
// - Export obrázkov, súradnice písma, štatistické údaje
}
using IronOcr;
using System.Drawing; //Pridajte odkaz na zostavu

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Slovak;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Dôležité

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;
// Preskúmajte tu a nájdite rozsiahle a podrobné API:
// - Stránky, bloky, parafafy, čiary, slová, znamienka
// - Export obrázkov, súradnice písma, štatistické údaje
}
Imports IronOcr
Imports System.Drawing 'Pridajte odkaz na zostavu

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Slovak
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '! Dôležité

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
' Preskúmajte tu a nájdite rozsiahle a podrobné API:
' - Stránky, bloky, parafafy, čiary, slová, znamienka
' - Export obrázkov, súradnice písma, štatistické údaje
End Using
VB   C#

Výkon

Aplikácia IronOCR funguje po vybalení z krabice bez potreby vyladenia výkonu alebo výraznejšej úpravy vstupných obrázkov.

Rýchlosť je ohromujúca: IronOcr.2020 + je až 10-krát rýchlejší a robí o 250% menej chýb ako predchádzajúce verzie.

Uč sa viac

Ak sa chcete dozvedieť viac informácií o OCR v jazykoch C #, VB, F # alebo v akomkoľvek inom jazyku .NET, prečítajte si naše komunitné výukové programy , ktoré poskytujú príklady skutočného sveta toho, ako sa dá IronOCR použiť, a môžu ukázať nuansy toho, ako z nich vyťažiť maximum. tejto knižnice.

K dispozícii je tiež úplná referencia na objekt pre vývojárov .NET .