Tagalog na OCR sa C#at .Net

Iba pang mga bersyon ng dokumentong ito:

Ang IronOCR ay isang bahagi ng C#software na nagpapahintulot sa .NET coders na basahin ang teksto mula sa mga imahe at mga dokumentong PDF sa 126 na wika, kabilang ang Tagalog.

Ito ay isang advanced na tinidor ng Tesseract, na eksklusibong itinayo para sa mga .NET developer at regular na lumalagpas sa ibang mga engine ng Tesseract para sa parehong bilis at kawastuhan.

Mga Nilalaman ng IronOcr.Languages.Tagalog

Naglalaman ang package na ito ng 14 na mga wika ng OCR para sa .NET:

  • Tagalog

Mag-download

Pakete ng Wika ng Tagalog [Wikang Tagalog]
* Download as Zip
* Install with as
https://www.nuget.org/packages/IronOcr.Languages.Tagalog/'> NuGet

Pag-install

Ang unang bagay na kailangan naming gawin ay i-install ang aming Tagalog OCR package sa iyong proyekto .NET.

PM> Install-Package IronOCR.Languages.Tagalog

Halimbawa ng Code

Ang halimbawa ng C#code na ito ay nagbabasa ng teksto ng Tagalog mula sa isang dokumento ng Imahe o PDF.

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

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

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

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

Bakit Pumili ng IronOCR?

Ang iron OCR ay isang madaling i-install, kumpleto at na dokumentado nang maayos .NET software library.

Piliin ang IronOCR upang makamit ang kawastuhan ng 99.8% + OCR nang hindi gumagamit ng anumang panlabas na mga serbisyo sa web, patuloy na bayarin o pagpapadala ng kumpidensyal na mga dokumento sa internet.

Bakit pinili ng mga tagabuo ng C#ang IronOCR kaysa sa Vanilla Tesseract:

  • I-install bilang isang solong DLL o Nuget
  • May kasamang para sa Tesseract 5, 4 at 3 na Mga Engine sa labas ng kahon.
  • Kawastuhan 99.8% makabuluhang lumalagpas sa regular na Tesseract.
  • Bilis ng Nagliliyab at MultiThreading
  • Tugma ang MVC, WebApp, Desktop, Console at Server Application
  • Walang mga Exe o C ++ code na gagana
  • Buong suporta ng PDF OCR
  • Upang maisagawa ang OCR ng halos anumang Image file o PDF
  • Buong suporta ng .Net Core, Standard at FrameWork
  • I-deploy sa Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Basahin ang mga barcode at QR code
  • I-export ang OCR sa XHTML
  • I-export ang OCR sa mga nahahanap na dokumento ng PDF
  • Suporta sa multithreading
  • 126 mga wikang pang-internasyonal na pinamamahalaan lahat sa pamamagitan ng Nuget o OcrData file
  • I-extract ang Mga Larawan, Coordinate, Statistics at Font. Hindi lang text.
  • Maaaring magamit upang muling ipamahagi ang Tesseract OCR sa loob ng mga komersyal at pagmamay-ari na application.

Ang iron OCR ay nagniningning kapag nagtatrabaho kasama ang mga totoong imahe ng mundo at mga di-perpektong dokumento tulad ng mga larawan, o mga pag-scan ng mababang resolusyon na maaaring may digital na ingay o mga kakulangan.

Ang iba pang mga libreng OCR na aklatan para sa .NET platform tulad ng iba pang mga .net tesseract API at mga serbisyo sa web ay hindi gumanap nang mahusay sa mga kaso ng totoong paggamit ng mundo.

OCR gamit ang Tesseract 5 - Simulan ang Coding sa C #

Ipinapakita ng sample ng code sa ibaba kung gaano kadali magbasa ng teksto mula sa isang imahe gamit ang C#o 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#

Configure Hello World

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Tagalog;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... maaari kang magdagdag ng anumang bilang ng mga imahe
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Tagalog
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Tagalog;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... maaari kang magdagdag ng anumang bilang ng mga imahe
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Tagalog
Imports IronOcr

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

Ang parehong diskarte ay maaaring magamit nang katulad upang makuha ang teksto mula sa anumang dokumentong PDF.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Tagalog;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Maaari din kaming pumili ng mga tukoy na numnber ng pahina ng PDF sa OCR

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 pahina para sa bawat pahina ng PDF
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Tagalog;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Maaari din kaming pumili ng mga tukoy na numnber ng pahina ng PDF sa OCR

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 pahina para sa bawat pahina ng PDF
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Tagalog
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' Maaari din kaming pumili ng mga tukoy na numnber ng pahina ng PDF sa OCR

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 pahina para sa bawat pahina ng PDF
End Using
VB   C#

OCR para sa mga MultiPage TIFF

Ang format ng file ng OCR na Pagbabasa ng TIFF kabilang ang maraming mga dokumento sa pahina. Maaari ding mai-convert ang TIFF nang direkta sa isang PDF file na may nahahanap na teksto.

using IronOcr;

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

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

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

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

Mga Barcode at QR

Ang isang natatanging tampok ng Iron OCR ay maaari itong basahin ang mga barcode at QR code mula sa mga dokumento habang ini-scan ang para sa teksto. Mga pagkakataon ng OcrResult.OcrBarcode Class ay nagbibigay sa developer ng detalyadong impormasyon tungkol sa bawat na-scan na barcode.

// 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);
// nakalantad din ang mga katangian at uri at lokasyon
}
}
// 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);
// nakalantad din ang mga katangian at uri at lokasyon
}
}
' 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)
' nakalantad din ang mga katangian at uri at lokasyon
Next Barcode
End Using
VB   C#

OCR sa Mga Tiyak na Lugar ng Mga Imahe

Ang lahat ng mga pamamaraan ng pag-scan at pagbabasa ng Iron OCR ay nagbibigay ng kakayahang tukuyin nang eksakto kung aling bahagi ng isang pahina o mga pahinang nais naming basahin ang teksto. Ito ay napaka kapaki-pakinabang kapag tinitingnan namin ang mga na-standardize na form at maaaring makatipid ng isang kakila-kilabot na oras at mapabuti ang kahusayan.

Upang magamit ang mga rehiyon ng pag-crop, kakailanganin naming magdagdag ng isang sanggunian ng system sa System. System.Drawing upang magamit namin ang System. System.Drawing.Rectangle . System.Drawing.Rectangle bagay.

using IronOcr;

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Ang mga sukat ay nasa px

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

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

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Ang mga sukat ay nasa px

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

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

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

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Ang mga sukat ay nasa px

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

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

OCR para sa Mababang Kalidad na Mga Pag-scan

Ang klase ng Iron OCR OcrInput maaaring ayusin ang mga pag-scan na hindi mabasa ng normal na Tesseract.

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

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // Inaayos ang ingay sa digital at hindi magandang pag-scan
Input.Deskew(); // inaayos ang pag-ikot at pananaw
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Tagalog;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // Inaayos ang ingay sa digital at hindi magandang pag-scan
Input.Deskew(); // inaayos ang pag-ikot at pananaw
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Tagalog

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' Inaayos ang ingay sa digital at hindi magandang pag-scan
Input.Deskew() ' inaayos ang pag-ikot at pananaw
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

I-export ang mga resulta ng OCR bilang isang Mahahanap na PDF

Imahe sa PDF na may mga kopya ng mga string ng teksto. Maaaring ma-index ng mga search engine at database.

using IronOcr;

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

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

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

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 upang mahahanap ang PDF Conversion

COnvert isang dokumento ng TIFF (o anumang pangkat ng mga file ng imahe) nang direkta sa isang nahahanap na PDF na maaaring ma-index ng intranet, website at mga search engine ng google.

using IronOcr;

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

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

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

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

I-export ang mga resulta sa OCR bilang HTML

OCR Imahe sa XHTML conversion.

using IronOcr;

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

Mga Filter ng Pagpapahusay ng Imahe ng OCR

Nagbibigay ang IronOCR ng natatanging mga filter para sa mga bagay ng OcrInput upang mapabuti ang pagganap ng OCR.

Halimbawa ng Code ng Pagpapahusay ng Imahe

Gumagawa ng mga imahe ng pag-input ng OCR ng mas mataas na kalidad upang makabuo ng mas mahusay, mas mabilis na mga resulta ng OCR.

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

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // Inaayos ang ingay sa digital at hindi magandang pag-scan
Input.Deskew(); // inaayos ang pag-ikot at pananaw
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Tagalog;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // Inaayos ang ingay sa digital at hindi magandang pag-scan
Input.Deskew(); // inaayos ang pag-ikot at pananaw
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Tagalog

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' Inaayos ang ingay sa digital at hindi magandang pag-scan
Input.Deskew() ' inaayos ang pag-ikot at pananaw
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Listahan ng Mga Filter ng Imahe ng OCR

Ang mga filter ng pag-input upang mapahusay ang pagganap ng OCR na nakapaloob sa IronOCR ay kasama ang:

  • OcrInput.Rotate (dobleng degree) - Paikutin ang mga imahe sa pamamagitan ng isang bilang ng mga degree pakanan. Para sa anti-clockwise, gumamit ng mga negatibong numero.
  • OcrInput.Binarize () - Ang filter ng imahe na ito ay nagiging itim o puti ang bawat pixel na walang gitnang lupa. Maaaring Pagbutihin ang mga kaso ng pagganap ng OCR ng napakababang pagkakaiba ng teksto sa background.
  • OcrInput.ToGrayScale () - Ang filter ng imahe na ito ay ginagawang isang lilim ng grayscale ang bawat pixel. Malamang na hindi mapabuti ang katumpakan ng OCR ngunit maaaring mapabuti ang bilis
  • OcrInput.Contrast () - Awtomatikong nagdaragdag ng kaibahan. Ang filter na ito ay madalas na nagpapabuti sa bilis at katumpakan ng OCR sa mababang pag-scan ng kaibahan.
  • OcrInput.DeNoise () - Tinatanggal ang digital na ingay. Ang filter na ito ay dapat gamitin lamang kung saan inaasahan ang ingay.
  • OcrInput.Invert () - Inververt ang bawat kulay. Hal White ay naging itim: itim ay naging puti.
  • OcrInput.Dilate () - Advanced Morphology. Nagdaragdag ang dilation ng mga pixel sa mga hangganan ng mga bagay sa isang imahe. Kabaligtaran ng Erode
  • OcrInput.Erode () - Advanced Morphology. Inaalis ng erosion ang mga pixel sa mga hangganan ng objectOpposite of Dilate
  • OcrInput.Deskew () - Paikutin ang isang imahe kaya ito ang tamang paraan pataas at orthogonal. Ito ay napaka kapaki-pakinabang para sa OCR dahil ang tolerance ng Tesseract para sa mga skewed scan ay maaaring mas mababa sa 5 degree.
  • OcrInput.DeepCleanBackgroundNoise () - Malakas na pag-aalis ng ingay sa background. Gamitin lamang ang filter na ito kung sakaling ang matinding ingay sa background ng dokumento ay kilala, dahil ang filter na ito ay mapanganib din na mabawasan ang katumpakan ng OCR ng malinis na mga dokumento, at napakamahal ng CPU.
  • OcrInput.EnhanceResolution - Pinahuhusay ang resolusyon ng mga mababang kalidad na imahe. Ang filter na ito ay hindi madalas kailangan dahil ang OcrInput.MinimumDPI at OcrInput.TargetDPI ay awtomatikong mahuhuli at malulutas ang mga input ng mababang resolusyon.

CleanBackgroundNoise. Ito ay isang setting na kung saan ay medyo matagal; gayunpaman, pinapayagan nito ang aklatan na awtomatikong linisin ang digital na ingay, mga crumples ng papel, at iba pang mga di-kasakdalan sa loob ng isang digital na imahe na kung hindi ay hindi ito mababasa ng ibang mga aklatan ng OCR.

Ang EnhanceContrast ay isang setting na kung saan ay sanhi ng Iron OCR na awtomatikong taasan ang pagkakaiba ng teksto laban sa background ng isang imahe, pagdaragdag ng kawastuhan ng OCR at sa pangkalahatan ay nagdaragdag ng pagganap at ang bilis ng OCR.

Ang EnhanceResolution ay isang setting na awtomatiko na makakakita ng mga imahe na may mababang resolusyon (na nasa ilalim ng 275 dpi) at awtomatikong mapataas ang imahe at pagkatapos ay patalasin ang lahat ng teksto upang mabasa ito ng perpekto sa isang OCR library. Bagaman ang operasyon na ito ay sa sarili mismo ay gugugol ng oras, sa pangkalahatan ay binabawasan ang pangkalahatang oras para sa isang pagpapatakbo ng OCR sa isang imahe.

Sinusuportahan ng Wika Iron OCR ang 22 pang-internasyonal na mga pakete ng wika, at ang setting ng wika ay maaaring magamit upang pumili ng isa o higit pang maraming mga wika na mailalapat para sa isang pagpapatakbo ng OCR.

Sinusuportahan ng Diskarte sa Iron OCR ang dalawang diskarte. Maaari naming piliing pumunta para sa isang mabilis at hindi gaanong tumpak na pag-scan ng isang dokumento, o gumamit ng isang advanced na diskarte na gumagamit ng ilang mga artipisyal na modelo ng katalinuhan upang awtomatikong mapabuti ang kawastuhan ng teksto ng OCR sa pamamagitan ng pagtingin sa ugnayan ng istatistika ng mga salita sa bawat isa sa isang pangungusap .

Ang ColorSpace ay isang setting kung saan maaari tayong pumili upang mag-OCR sa grayscale o kulay. Pangkalahatan, ang grayscale ang pinakamahusay na pagpipilian. Gayunpaman, kung minsan kapag may mga teksto o background na magkatulad na kulay ngunit ibang-iba ang kulay, ang isang buong-kulay na puwang ng kulay ay magbibigay ng mas mahusay na mga resulta.

DetectWhiteTextOnDarkBackgrounds. Pangkalahatan, inaasahan ng lahat ng mga aklatan ng OCR na makakita ng itim na teksto sa mga puting background. Pinapayagan ng setting na ito ang Iron OCR na awtomatikong makakita ng mga negatibo, o madilim na mga pahina na may puting teksto, at basahin ang mga ito.

InputImageType. Pinapayagan ng setting na ito ang developer na gabayan ang library ng OCR kung tumitingin ito sa isang buong dokumento o isang snippet, tulad ng isang screenshot.

Ang RotateAndStraighten ay isang advanced na setting na nagpapahintulot sa Iron OCR ng natatanging kakayahang basahin ang mga dokumento na hindi lamang pinaikot, ngunit marahil naglalaman ng pananaw, tulad ng mga larawan ng mga dokumento sa teksto.

Ang ReadBarcodes ay isang kapaki-pakinabang na tampok na nagpapahintulot sa Iron OCR na awtomatikong basahin ang mga barcode at QR code sa mga pahina habang nagbabasa rin ito ng teksto, nang hindi nagdaragdag ng isang malaking karagdagang karga sa oras.

Lalim ng kulay. Tinutukoy ng setting na ito kung gaano karaming mga piraso bawat pixel ang gagamitin ng OCR library upang matukoy ang lalim ng isang kulay. Ang isang mas mataas na lalim ng kulay ay maaaring dagdagan ang kalidad ng OCR, ngunit tataas din ang oras na kinakailangan para makumpleto ang operasyon ng OCR.

126 Mga Pakete sa Wika

Sinusuportahan ng Iron OCR ang 126 mga internasyonal na wika sa pamamagitan ng mga pack ng wika na ipinamamahagi bilang mga DLL, na maaaring ma- download mula sa website na ito , o mula rin sa NuGet Package Manager .

Kasama sa mga wika ang Aleman, Pranses, Ingles, Tsino, Hapon at marami pa. Ang mga dalubhasa na pack ng wika ay mayroon para sa pasaporte MRZ, mga tseke ng MICR, Data sa Pananalapi, mga plate ng Lisensya at marami pa. Maaari mo ring gamitin ang anumang file na ".traineddata" na tesseract - kasama ang mga nilikha mo mismo.

Halimbawa ng Wika

Paggamit ng Iba pang mga wika ng 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");
// Magdagdag ng mga filter ng imahe kung kinakailangan
// Sa kasong ito, kahit na ang naisip na input ay napakababang kalidad
// Maaaring mabasa ng IronTesseract kung ano ang hindi maaaring gawin ng maginoo na Tesseract.

var Result = Ocr.Read(input);

// Hindi madaling mai-print ng console ang Arabe sa Windows.
// Sa halip ay makatipid tayo sa 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");
// Magdagdag ng mga filter ng imahe kung kinakailangan
// Sa kasong ito, kahit na ang naisip na input ay napakababang kalidad
// Maaaring mabasa ng IronTesseract kung ano ang hindi maaaring gawin ng maginoo na Tesseract.

var Result = Ocr.Read(input);

// Hindi madaling mai-print ng console ang Arabe sa Windows.
// Sa halip ay makatipid tayo sa 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")
' Magdagdag ng mga filter ng imahe kung kinakailangan
' Sa kasong ito, kahit na ang naisip na input ay napakababang kalidad
' Maaaring mabasa ng IronTesseract kung ano ang hindi maaaring gawin ng maginoo na Tesseract.

Dim Result = Ocr.Read(input)

' Hindi madaling mai-print ng console ang Arabe sa Windows.
' Sa halip ay makatipid tayo sa disk.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Halimbawa ng Maramihang Wika

Posible ring mag-OCR gamit ang maraming wika nang sabay-sabay. Makakatulong talaga ito na makakuha ng metadata at url na wikang ingles sa mga dokumento ng Unicode.

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

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

// Maaari kaming magdagdag ng anumang bilang ng mga wika

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

// Maaari kaming magdagdag ng anumang bilang ng mga wika

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

' Maaari kaming magdagdag ng anumang bilang ng mga wika

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

Detalyadong Mga Object ng Resulta ng OCR

Ang Iron OCR ay nagbabalik ng isang resulta ng resulta ng OCR para sa bawat pagpapatakbo ng OCR. Pangkalahatan, ginagamit lamang ng mga developer ang pag-aari ng teksto ng bagay na ito upang makuha ang teksto na na-scan mula sa imahe. Gayunpaman, ang mga resulta ng OCR na DOM ay mas advanced kaysa rito.

using IronOcr;
using System.Drawing; //Magdagdag ng Sanggunian sa Assembly

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

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;
// Galugarin dito upang makahanap ng isang napakalaking, detalyadong API:
// - Mga Pahina, Block, Paraphaphs, Lines, Words, Chars
// - I-export ang Larawan, Mga Coordinate ng Font, Data ng Istatistika
}
using IronOcr;
using System.Drawing; //Magdagdag ng Sanggunian sa Assembly

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

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;
// Galugarin dito upang makahanap ng isang napakalaking, detalyadong API:
// - Mga Pahina, Block, Paraphaphs, Lines, Words, Chars
// - I-export ang Larawan, Mga Coordinate ng Font, Data ng Istatistika
}
Imports IronOcr
Imports System.Drawing 'Magdagdag ng Sanggunian sa Assembly

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

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
' Galugarin dito upang makahanap ng isang napakalaking, detalyadong API:
' - Mga Pahina, Block, Paraphaphs, Lines, Words, Chars
' - I-export ang Larawan, Mga Coordinate ng Font, Data ng Istatistika
End Using
VB   C#

Pagganap

Gumagana ang IronOCR sa labas ng kahon nang hindi na kinakailangang ibagay ang pagganap o mabago nang malaki ang mga imahe ng pag-input.

Ang bilis ay nagliliyab: ang IronOcr.2020 + ay hanggang sa 10 beses na mas mabilis at gumagawa ng higit sa 250% na mas kaunting mga error kaysa sa mga nakaraang pagbuo.

Matuto Nang Higit Pa

Upang matuto nang higit pa tungkol sa OCR sa C #, VB, F #, o anumang iba pang wika. NET, mangyaring basahin ang aming mga tutorial sa komunidad , na nagbibigay ng mga halimbawa ng totoong mundo kung paano magagamit ang Iron OCR at maaaring ipakita ang mga nuances ng kung paano makakakuha ng pinakamahusay mula sa library na ito

Ang isang buong sanggunian ng bagay para sa .NET mga developer ay magagamit din.