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 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
Bakit Pumili ng IronOCR?
Ang IronOCR 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 IronOCR 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
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
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
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
Mga Barcode at QR
Ang isang natatanging tampok ng IronOCR 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
OCR sa Mga Tiyak na Lugar ng Mga Imahe
Ang lahat ng mga pamamaraan ng pag-scan at pagbabasa ng IronOCR 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
OCR para sa Mababang Kalidad na Mga Pag-scan
Ang klase ng IronOCR 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
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
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
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
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
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 IronOCR 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 IronOCR 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 IronOCR 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 IronOCR 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 IronOCR 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 IronOCR 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 IronOCR 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
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
Detalyadong Mga Object ng Resulta ng OCR
Ang IronOCR 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
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 IronOCR 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.