Dansk OCR i C# og .NET
Andre versioner af dette dokument:
IronOCR er en C# softwarekomponent, der gør det muligt for .NET-kodere at læse tekst fra billeder og PDF-dokumenter på 126 sprog, inklusive dansk.
Det er en avanceret gaffel af Tesseract, bygget udelukkende til .NET-udviklerne og overgår regelmæssigt andre Tesseract-motorer for både hastighed og nøjagtighed.
Indhold i IronOcr.Languages.Danish
Denne pakke indeholder 61 OCR-sprog til .NET:
- dansk
- DanishBest
- DanishFast
- DanishFraktur
Hent
Dansk sprogpakke [dansk]
* Download as Lynlås
* Install with https://www.nuget.org/packages/IronOcr.Languages.Danish/' NuGet
Installation
Den første ting, vi skal gøre, er at installere vores danske OCR-pakke til dit .NET-projekt.
PM> Install-Package IronOCR.Languages.Danish
Kodeeksempel
Dette C#-kodeeksempel læser dansk tekst fra et billede- eller PDF-dokument.
// PM> Install-Package IronOcr.Languages.Danish
using IronOcr;
var Ocr = new IronTesseract();
// Setting the language to Danish for OCR processing
Ocr.Language = OcrLanguage.Danish;
// Using OcrInput to specify the path for the image containing Danish text
using (var Input = new OcrInput(@"images\Danish.png"))
{
// Reading the text from the specified image
var Result = Ocr.Read(Input);
// Storing the recognized text in a variable
var AllText = Result.Text;
}
// PM> Install-Package IronOcr.Languages.Danish
using IronOcr;
var Ocr = new IronTesseract();
// Setting the language to Danish for OCR processing
Ocr.Language = OcrLanguage.Danish;
// Using OcrInput to specify the path for the image containing Danish text
using (var Input = new OcrInput(@"images\Danish.png"))
{
// Reading the text from the specified image
var Result = Ocr.Read(Input);
// Storing the recognized text in a variable
var AllText = Result.Text;
}
' PM> Install-Package IronOcr.Languages.Danish
Imports IronOcr
Private Ocr = New IronTesseract()
' Setting the language to Danish for OCR processing
Ocr.Language = OcrLanguage.Danish
' Using OcrInput to specify the path for the image containing Danish text
Using Input = New OcrInput("images\Danish.png")
' Reading the text from the specified image
Dim Result = Ocr.Read(Input)
' Storing the recognized text in a variable
Dim AllText = Result.Text
End Using
Hvorfor vælge IronOCR?
IronOCR er et let at installere, komplet og veldokumenteret .NET softwarebibliotek.
Vælg IronOCR for at opnå 99,8% + OCR-nøjagtighed uden at bruge eksterne webtjenester, løbende gebyrer eller sende fortrolige dokumenter over internettet.
Hvorfor C#-udviklere vælger IronOCR frem for Vanilla Tesseract:
- Installer som en enkelt DLL eller NuGet
- Inkluderer Tesseract 5, 4 og 3 motorer ud af kassen.
- Nøjagtighed 99,8% overgår signifikant Tesseract.
- Flammende hastighed og multitrådning
- MVC, WebApp, Desktop, Console & Server Application kompatibel
- Ingen Exes eller C ++ kode at arbejde med
- Fuld PDF OCR-understøttelse
- At udføre OCR på næsten enhver billedfil eller PDF
- Fuld .NET Core, Standard og FrameWork support
- Implementere på Windows, Mac, Linux, Azure, Docker, Lambda, AWS
- Læs stregkoder og QR-koder
- Eksporter OCR som XHTML
- Eksporter OCR til søgbare PDF-dokumenter
- Multithreading support
- 126 internationale sprog styres alle via NuGet- eller OcrData-filer
- Uddrag billeder, koordinater, statistikker og skrifttyper. Ikke kun tekst.
- Kan bruges til at omfordele Tesseract OCR inden for kommercielle og proprietære applikationer.
IronOCR skinner, når du arbejder med billeder fra den virkelige verden og ufuldkomne dokumenter såsom fotografier eller scanninger med lav opløsning, der kan have digital støj eller ufuldkommenheder.
Andre gratis OCR- biblioteker til .NET-platformen, som andre .net tesseract API'er og webtjenester, klarer sig ikke så godt på disse sager i den virkelige verden.
OCR med Tesseract 5 - Start kodning i C#
Kodeprøven nedenfor viser, hvor let det er at læse tekst fra et billede ved hjælp af C# eller VB .NET.
OneLiner
// Example of a one-liner OCR process
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
// Example of a one-liner OCR process
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
' Example of a one-liner OCR process
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
Konfigurerbar Hello World
// PM> Install-Package IronOCR.Languages.Danish
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Using OcrInput to add images for OCR processing
using (var Input = new OcrInput())
{
// Adding a sample image
Input.AddImage("images/sample.jpeg");
// Additional images can be added if needed
var Result = Ocr.Read(Input);
// Output the OCR result to the console
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Danish
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Using OcrInput to add images for OCR processing
using (var Input = new OcrInput())
{
// Adding a sample image
Input.AddImage("images/sample.jpeg");
// Additional images can be added if needed
var Result = Ocr.Read(Input);
// Output the OCR result to the console
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Danish
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
' Using OcrInput to add images for OCR processing
Using Input = New OcrInput()
' Adding a sample image
Input.AddImage("images/sample.jpeg")
' Additional images can be added if needed
Dim Result = Ocr.Read(Input)
' Output the OCR result to the console
Console.WriteLine(Result.Text)
End Using
C# PDF OCR
Den samme tilgang kan ligeledes bruges til at udtrække tekst fra ethvert PDF-dokument.
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var input = new OcrInput())
{
// Adding a PDF for OCR processing; a password can be specified if needed
input.AddPdf("example.pdf", "password");
// Reading text from the PDF document
var Result = Ocr.Read(input);
// Output the recognized text and page count to the console
Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
}
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var input = new OcrInput())
{
// Adding a PDF for OCR processing; a password can be specified if needed
input.AddPdf("example.pdf", "password");
// Reading text from the PDF document
var Result = Ocr.Read(input);
// Output the recognized text and page count to the console
Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
Using input = New OcrInput()
' Adding a PDF for OCR processing; a password can be specified if needed
input.AddPdf("example.pdf", "password")
' Reading text from the PDF document
Dim Result = Ocr.Read(input)
' Output the recognized text and page count to the console
Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
End Using
OCR til MultiPage TIFF'er
OCR-læsning af TIFF-filformat inklusive dokumenter på flere sider. TIFF kan også konverteres direkte til en PDF-fil med søgbar tekst.
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Adding a multi-frame TIFF file for OCR processing
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
// Output the recognized text to the console
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Adding a multi-frame TIFF file for OCR processing
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
// Output the recognized text to the console
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
Using Input = New OcrInput()
' Adding a multi-frame TIFF file for OCR processing
Input.AddMultiFrameTiff("multi-frame.tiff")
Dim Result = Ocr.Read(Input)
' Output the recognized text to the console
Console.WriteLine(Result.Text)
End Using
Stregkoder og QR
En unik egenskab ved IronOCR er, at den kan læse stregkoder og QR-koder fra dokumenter, mens den scanner efter tekst. Forekomster af OcrResult.OcrBarcode
klassen giver udvikleren detaljerede oplysninger om hver scannet stregkode.
using IronOcr;
var Ocr = new IronTesseract();
// Enable barcode reading in OCR configuration
Ocr.Configuration.ReadBarCodes = true;
using (var input = new OcrInput())
{
// Adding an image containing barcodes for OCR processing
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
// Iterating over all recognized barcodes and outputting their values to the console
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// Additional properties like type and location can also be exposed
}
}
using IronOcr;
var Ocr = new IronTesseract();
// Enable barcode reading in OCR configuration
Ocr.Configuration.ReadBarCodes = true;
using (var input = new OcrInput())
{
// Adding an image containing barcodes for OCR processing
input.AddImage("img/Barcode.png");
var Result = Ocr.Read(input);
// Iterating over all recognized barcodes and outputting their values to the console
foreach (var Barcode in Result.Barcodes)
{
Console.WriteLine(Barcode.Value);
// Additional properties like type and location can also be exposed
}
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Enable barcode reading in OCR configuration
Ocr.Configuration.ReadBarCodes = True
Using input = New OcrInput()
' Adding an image containing barcodes for OCR processing
input.AddImage("img/Barcode.png")
Dim Result = Ocr.Read(input)
' Iterating over all recognized barcodes and outputting their values to the console
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' Additional properties like type and location can also be exposed
Next Barcode
End Using
OCR om bestemte områder af billeder
Alle IronOCR's scannings- og læsemetoder giver mulighed for at specificere nøjagtigt hvilken del af en eller flere sider, vi ønsker at læse tekst fra. Dette er meget nyttigt, når vi ser på standardiserede formularer og kan spare meget tid og forbedre effektiviteten.
For at bruge afgrødeområder skal vi tilføje en systemreference til System.Drawing
, så vi kan bruge objektet System.Drawing.Rectangle
.
using IronOcr;
using System.Drawing; // Add reference to System.Drawing
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Defining the specific area of interest in the image for OCR processing
var ContentArea = new Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Adding the image and specifying the content area
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
// Output the recognized text from the specified area
Console.WriteLine(Result.Text);
}
using IronOcr;
using System.Drawing; // Add reference to System.Drawing
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Defining the specific area of interest in the image for OCR processing
var ContentArea = new Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Adding the image and specifying the content area
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
// Output the recognized text from the specified area
Console.WriteLine(Result.Text);
}
Imports IronOcr
Imports System.Drawing ' Add reference to System.Drawing
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
Using Input = New OcrInput()
' Defining the specific area of interest in the image for OCR processing
Dim ContentArea = New Rectangle() With {
.X = 215,
.Y = 1250,
.Height = 280,
.Width = 1335
}
' Adding the image and specifying the content area
Input.Add("document.png", ContentArea)
Dim Result = Ocr.Read(Input)
' Output the recognized text from the specified area
Console.WriteLine(Result.Text)
End Using
OCR til scanninger af lav kvalitet
IronOCR OcrInput
klassen kan rette scanninger, som normal Tesseract ikke kan læse.
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Improving the OCR input before reading
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
// Correcting digital noise
Input.DeNoise();
// Correcting skewness
Input.Deskew();
var Result = Ocr.Read(Input);
// Output the recognized text to the console
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Improving the OCR input before reading
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
// Correcting digital noise
Input.DeNoise();
// Correcting skewness
Input.Deskew();
var Result = Ocr.Read(Input);
// Output the recognized text to the console
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
' Improving the OCR input before reading
Using Input = New OcrInput("img\Potter.LowQuality.tiff")
' Correcting digital noise
Input.DeNoise()
' Correcting skewness
Input.Deskew()
Dim Result = Ocr.Read(Input)
' Output the recognized text to the console
Console.WriteLine(Result.Text)
End Using
Eksporter OCR-resultater som en søgbar PDF
Billede til PDF med kopierbare tekststrenge. Kan indekseres af søgemaskiner og databaser.
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Setting title and adding images for OCR processing
Input.Title = "Quarterly Report";
Input.AddImage("image1.jpeg");
Input.AddImage("image2.png");
Input.AddImage("image3.gif");
var Result = Ocr.Read(Input);
// Save result as a searchable PDF
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Setting title and adding images for OCR processing
Input.Title = "Quarterly Report";
Input.AddImage("image1.jpeg");
Input.AddImage("image2.png");
Input.AddImage("image3.gif");
var Result = Ocr.Read(Input);
// Save result as a searchable PDF
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
Using Input = New OcrInput()
' Setting title and adding images for OCR processing
Input.Title = "Quarterly Report"
Input.AddImage("image1.jpeg")
Input.AddImage("image2.png")
Input.AddImage("image3.gif")
Dim Result = Ocr.Read(Input)
' Save result as a searchable PDF
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
TIFF til søgbar PDF-konvertering
Konverter et TIFF-dokument (eller en hvilken som helst gruppe billedfiler) direkte til en søgbar PDF, der kan indekseres af intranet, websted og google-søgemaskiner.
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Adding multiframed TIFF for OCR processing
Input.AddMultiFrameTiff("example.tiff");
// Saving the OCR result as a searchable PDF
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Adding multiframed TIFF for OCR processing
Input.AddMultiFrameTiff("example.tiff");
// Saving the OCR result as a searchable PDF
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
Using Input = New OcrInput()
' Adding multiframed TIFF for OCR processing
Input.AddMultiFrameTiff("example.tiff")
' Saving the OCR result as a searchable PDF
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
Eksporter OCR-resultater som HTML
OCR-konvertering af billede til XHTML.
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Setting title and adding images for OCR processing
Input.Title = "Html Title";
Input.AddImage("image1.jpeg");
var Result = Ocr.Read(Input);
// Save result as HTML
Result.SaveAsHocrFile("results.html");
}
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
using (var Input = new OcrInput())
{
// Setting title and adding images for OCR processing
Input.Title = "Html Title";
Input.AddImage("image1.jpeg");
var Result = Ocr.Read(Input);
// Save result as HTML
Result.SaveAsHocrFile("results.html");
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
Using Input = New OcrInput()
' Setting title and adding images for OCR processing
Input.Title = "Html Title"
Input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(Input)
' Save result as HTML
Result.SaveAsHocrFile("results.html")
End Using
OCR-filtre til billedforbedring
IronOCR leverer unikke filtre til OcrInput
objekter for at forbedre OCR-ydeevne.
Eksempel på billedforbedringskode
Gør OCR-inputbilleder af højere kvalitet for at give bedre, hurtigere OCR-resultater.
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Enhancing input image quality for better OCR accuracy
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
// Removing digital noise
Input.DeNoise();
// Correcting skewness
Input.Deskew();
var Result = Ocr.Read(Input);
// Output the recognized text to the console
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Enhancing input image quality for better OCR accuracy
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
// Removing digital noise
Input.DeNoise();
// Correcting skewness
Input.Deskew();
var Result = Ocr.Read(Input);
// Output the recognized text to the console
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
' Enhancing input image quality for better OCR accuracy
Using Input = New OcrInput("LowQuality.jpeg")
' Removing digital noise
Input.DeNoise()
' Correcting skewness
Input.Deskew()
Dim Result = Ocr.Read(Input)
' Output the recognized text to the console
Console.WriteLine(Result.Text)
End Using
Liste over OCR-billedfiltre
Inputfiltre til forbedring af OCR-ydeevne, som er indbygget i IronOCR, inkluderer:
- OcrInput.Rotate(double degrees) - Roterer billedet med et antal grader med uret. Brug negative tal mod uret.
- OcrInput.Binarize() - Dette billedfilter gør hver pixel sort eller hvid uden mellemgrund. Kan forbedre OCR-ydeevne ved meget lav kontrast mellem tekst og baggrund.
- OcrInput.ToGrayScale() - Dette billedfilter forvandler hver pixel til en gråtoneskygge. Det forbedrer sandsynligvis ikke OCR-nøjagtigheden, men forbedrer muligvis hastigheden.
- OcrInput.Contrast() - Øger kontrasten automatisk. Dette filter forbedrer ofte OCR-hastighed og nøjagtighed i scanninger med lav kontrast.
- OcrInput.DeNoise() - Fjerner digital støj. Dette filter bør kun bruges, hvor der forventes støj.
- OcrInput.Invert() - Inverterer hver farve. F.eks. Bliver hvid sort: sort bliver hvid.
- OcrInput.Dilate() - Avanceret morfologi. Udvidelse tilføjer pixels til grænserne for objekter i et billede. Modsatte af Erode.
- OcrInput.Erode() - Avanceret morfologi. Erosion fjerner pixels på objektgrænserne. Modsatte af Dilate.
- OcrInput.Deskew() - Roterer et billede, så det er den rigtige vej op og vinkelret. Dette er meget nyttigt for OCR, fordi Tesseracts tolerance for skævede scanninger kan være så lave som 5 grader.
- OcrInput.DeepCleanBackgroundNoise() - Fjernelse af kraftig baggrundsstøj. Brug kun dette filter, hvis ekstrem dokumentbaggrundsstøj er kendt, fordi dette filter også risikerer at reducere OCR-nøjagtigheden af rene dokumenter og er meget CPU-dyrt.
- OcrInput.EnhanceResolution - Forbedrer opløsningen af billeder i lav kvalitet. Dette filter er ikke ofte nødvendigt, fordi OcrInput.MinimumDPI og OcrInput.TargetDPI automatisk fanger og løser input med lav opløsning.
Ren baggrund Støj. Dette er en indstilling, der er noget tidskrævende; det tillader imidlertid biblioteket automatisk at rense digital støj, papirkrøller og andre ufuldkommenheder i et digitalt billede, som ellers ville gøre det ude af stand til at blive læst af andre OCR-biblioteker.
EnhanceContrast er en indstilling, der får IronOCR til automatisk at øge kontrasten af tekst på baggrund af et billede, hvilket øger nøjagtigheden af OCR og generelt øger ydeevnen og OCR-hastigheden.
EnhanceResolution er en indstilling, der automatisk registrerer billeder i lav opløsning (som er under 275 dpi) og automatisk opskalerer billedet og derefter skærper al teksten, så den kan læses perfekt af et OCR-bibliotek. Selvom denne operation i sig selv er tidskrævende, reducerer den generelt den samlede tid til en OCR-operation på et billede.
Language IronOCR understøtter 22 internationale sprogpakker, og sprogindstillingen kan bruges til at vælge et eller flere flere sprog, der skal anvendes til en OCR-handling.
Strategi IronOCR understøtter to strategier. Vi kan vælge enten at gå til en hurtig og mindre nøjagtig scanning af et dokument eller bruge en avanceret strategi, der bruger nogle kunstige intelligensmodeller til automatisk at forbedre nøjagtigheden af OCR-tekst ved at se på det statistiske forhold af ord til hinanden i en sætning.
ColorSpace er en indstilling, hvorved vi kan vælge at OCR i gråtoner eller farve. Generelt er gråtoner den bedste løsning. Men nogle gange, når der er tekster eller baggrunde med lignende nuance, men meget forskellige farver, vil et farverum i fuld farve give bedre resultater.
DetectWhiteTextOnDarkBackgrounds. Generelt forventer alle OCR-biblioteker at se sort tekst på hvid baggrund. Denne indstilling gør det muligt for IronOCR automatisk at registrere negativer eller mørke sider med hvid tekst og læse dem.
InputImageType. Denne indstilling giver udvikleren mulighed for at guide OCR-biblioteket om, hvorvidt den ser på et komplet dokument eller et uddrag, f.eks. Et skærmbillede.
RotateAndStraighten er en avanceret indstilling, der giver IronOCR den unikke evne til at læse dokumenter, der ikke kun roteres, men måske indeholder perspektiv, såsom fotografier af tekstdokumenter.
ReadBarcodes er en nyttig funktion, der gør det muligt for IronOCR automatisk at læse stregkoder og QR-koder på sider, da det også læser tekst uden at tilføje en stor ekstra tidsbyrde.
Farvedybde. Denne indstilling bestemmer, hvor mange bits pr. Pixel OCR-biblioteket skal bruge til at bestemme dybden af en farve. En højere farvedybde kan øge OCR-kvaliteten, men vil også øge den tid, der kræves for OCR-operationen at fuldføre.
126 sprogpakker
IronOCR understøtter 126 internationale sprog via sprogpakker, der distribueres som DLL'er, som kan downloades fra dette websted eller også fra NuGet Package Manager.
Sprog inkluderer tysk, fransk, engelsk, kinesisk, japansk og mange flere. Der findes specialsprogspakker til pas-MRZ, MICR-kontrol, finansielle data, nummerplader og mange flere. Du kan også bruge enhver tesseract ".traineddata" -fil - inklusive dem, du selv opretter.
Sprogeksempel
Brug af andre OCR-sprog.
using IronOcr;
// PM> Install-Package IronOcr.Languages.Arabic
var Ocr = new IronTesseract();
// Set OCR language to Arabic
Ocr.Language = OcrLanguage.Arabic;
using (var input = new OcrInput())
{
// Adding image containing Arabic text
input.AddImage("img/arabic.gif");
// Applying filters if necessary
var Result = Ocr.Read(input);
// Saving recognized text to a file due to potential console print issues with Arabic
Result.SaveAsTextFile("arabic.txt");
}
using IronOcr;
// PM> Install-Package IronOcr.Languages.Arabic
var Ocr = new IronTesseract();
// Set OCR language to Arabic
Ocr.Language = OcrLanguage.Arabic;
using (var input = new OcrInput())
{
// Adding image containing Arabic text
input.AddImage("img/arabic.gif");
// Applying filters if necessary
var Result = Ocr.Read(input);
// Saving recognized text to a file due to potential console print issues with Arabic
Result.SaveAsTextFile("arabic.txt");
}
Imports IronOcr
' PM> Install-Package IronOcr.Languages.Arabic
Private Ocr = New IronTesseract()
' Set OCR language to Arabic
Ocr.Language = OcrLanguage.Arabic
Using input = New OcrInput()
' Adding image containing Arabic text
input.AddImage("img/arabic.gif")
' Applying filters if necessary
Dim Result = Ocr.Read(input)
' Saving recognized text to a file due to potential console print issues with Arabic
Result.SaveAsTextFile("arabic.txt")
End Using
Eksempel på flere sprog
Det er også muligt at OCR ved hjælp af flere sprog på samme tid. Dette kan virkelig hjælpe med at få engelsksprogede metadata og webadresser i Unicode-dokumenter.
using IronOcr;
// PM> Install-Package IronOcr.Languages.ChineseSimplified
var Ocr = new IronTesseract();
// Set primary OCR language to Simplified Chinese
Ocr.Language = OcrLanguage.ChineseSimplified;
// Add secondary OCR language
Ocr.AddSecondaryLanguage(OcrLanguage.Danish);
// We can add any number of languages
using (var input = new OcrInput())
{
// Adding a multi-language PDF for OCR processing
input.Add("multi-language.pdf");
var Result = Ocr.Read(input);
// Saving the recognized text to a file
Result.SaveAsTextFile("results.txt");
}
using IronOcr;
// PM> Install-Package IronOcr.Languages.ChineseSimplified
var Ocr = new IronTesseract();
// Set primary OCR language to Simplified Chinese
Ocr.Language = OcrLanguage.ChineseSimplified;
// Add secondary OCR language
Ocr.AddSecondaryLanguage(OcrLanguage.Danish);
// We can add any number of languages
using (var input = new OcrInput())
{
// Adding a multi-language PDF for OCR processing
input.Add("multi-language.pdf");
var Result = Ocr.Read(input);
// Saving the recognized text to a file
Result.SaveAsTextFile("results.txt");
}
Imports IronOcr
' PM> Install-Package IronOcr.Languages.ChineseSimplified
Private Ocr = New IronTesseract()
' Set primary OCR language to Simplified Chinese
Ocr.Language = OcrLanguage.ChineseSimplified
' Add secondary OCR language
Ocr.AddSecondaryLanguage(OcrLanguage.Danish)
' We can add any number of languages
Using input = New OcrInput()
' Adding a multi-language PDF for OCR processing
input.Add("multi-language.pdf")
Dim Result = Ocr.Read(input)
' Saving the recognized text to a file
Result.SaveAsTextFile("results.txt")
End Using
Detaljerede OCR-resultatobjekter
IronOCR returnerer et OCR-resultatobjekt for hver OCR-operation. Generelt bruger udviklere kun dette objekts tekstegenskab for at få teksten scannet fra billedet. OCR-resultaterne DOM er dog meget mere avancerede end dette.
using IronOcr;
using System.Drawing; // Add reference to System.Drawing
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Configure engine mode and barcode reading
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; // Important for barcode scanning
using (var Input = new OcrInput(@"images\sample.tiff"))
{
// Performing OCR on the input and obtaining the result
OcrResult Result = Ocr.Read(Input);
// Accessing various details from the OCR result
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Explore the API to find massive, detailed information:
// - Pages, blocks, paragraphs, lines, words, characters
// - Image export, font coordinates, statistical data
}
using IronOcr;
using System.Drawing; // Add reference to System.Drawing
var Ocr = new IronTesseract();
// Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish;
// Configure engine mode and barcode reading
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; // Important for barcode scanning
using (var Input = new OcrInput(@"images\sample.tiff"))
{
// Performing OCR on the input and obtaining the result
OcrResult Result = Ocr.Read(Input);
// Accessing various details from the OCR result
var Pages = Result.Pages;
var Words = Pages[0].Words;
var Barcodes = Result.Barcodes;
// Explore the API to find massive, detailed information:
// - Pages, blocks, paragraphs, lines, words, characters
// - Image export, font coordinates, statistical data
}
Imports IronOcr
Imports System.Drawing ' Add reference to System.Drawing
Private Ocr = New IronTesseract()
' Set OCR language to Danish
Ocr.Language = OcrLanguage.Danish
' Configure engine mode and barcode reading
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True ' Important for barcode scanning
Using Input = New OcrInput("images\sample.tiff")
' Performing OCR on the input and obtaining the result
Dim Result As OcrResult = Ocr.Read(Input)
' Accessing various details from the OCR result
Dim Pages = Result.Pages
Dim Words = Pages(0).Words
Dim Barcodes = Result.Barcodes
' Explore the API to find massive, detailed information:
' - Pages, blocks, paragraphs, lines, words, characters
' - Image export, font coordinates, statistical data
End Using
Ydeevne
IronOCR fungerer uden for æsken uden behov for at tune eller ændre indgangsbilleder kraftigt.
Speed is Blazing: IronOcr.2020 + er op til 10 gange hurtigere og gør over 250% færre fejl end tidligere builds.
Lær mere
For at lære mere om OCR i C#, VB, F# eller ethvert andet .NET-sprog, bedes du læse vores community-tutorials, der giver eksempler på den virkelige verden af, hvordan IronOCR kan bruges og kan vise nuancerne i, hvordan du får det bedste ud af dette bibliotek.
En komplet objektreference for .NET-udviklere er også tilgængelig.