Ελληνικό αλφάβητο OCR σε C# και .NET

Άλλες εκδόσεις αυτού του εγγράφου:

Το IronOCR είναι ένα στοιχείο λογισμικού C# που επιτρέπει στους .NET κωδικοποιητές να διαβάζουν κείμενο από εικόνες και έγγραφα PDF σε 126 γλώσσες, συμπεριλαμβανομένου του Ελληνικού Αλφαβήτου.

Πρόκειται για ένα προηγμένο πιρούνι του Tesseract, κατασκευασμένο αποκλειστικά για τους προγραμματιστές .NET και ξεπερνά τακτικά άλλους κινητήρες Tesseract για ταχύτητα και ακρίβεια.

Περιεχόμενα του IronOcr.Languages.Greek

Αυτό το πακέτο περιέχει 102 γλώσσες OCR για .NET:

  • Ελληνικά
  • GreekBest
  • GreekFast
  • Ελληνικό αλφάβητο
  • GreekAlphabetBest
  • GreekAlphabetFast

Κατεβάστε

Πακέτο Ελληνικής Αλφαβήτου [Ελληνικά]
* Download as Φερμουάρ
* Install with https://www.nuget.org/packages/IronOcr.Languages.Greek/

Εγκατάσταση

Το πρώτο πράγμα που πρέπει να κάνουμε είναι να εγκαταστήσουμε το πακέτο μας Greek Alphabet OCR στο έργο σας .NET.

PM> Install-Package IronOCR.Languages.Greek

Παράδειγμα κώδικα

Αυτό το παράδειγμα κώδικα C# διαβάζει κείμενο ελληνικού αλφαβήτου από έγγραφο εικόνας ή PDF.

// Install the Greek language package using NuGet
// PM> Install-Package IronOCR.Languages.Greek

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the OCR language to Greek
using (var Input = new OcrInput(@"images\Greek.png"))
{
    var Result = Ocr.Read(Input); // Perform OCR on the input image
    var AllText = Result.Text; // Get the extracted text
    Console.WriteLine(AllText); // Print the extracted text
}
// Install the Greek language package using NuGet
// PM> Install-Package IronOCR.Languages.Greek

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the OCR language to Greek
using (var Input = new OcrInput(@"images\Greek.png"))
{
    var Result = Ocr.Read(Input); // Perform OCR on the input image
    var AllText = Result.Text; // Get the extracted text
    Console.WriteLine(AllText); // Print the extracted text
}
' Install the Greek language package using NuGet
' PM> Install-Package IronOCR.Languages.Greek

Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the OCR language to Greek
Using Input = New OcrInput("images\Greek.png")
	Dim Result = Ocr.Read(Input) ' Perform OCR on the input image
	Dim AllText = Result.Text ' Get the extracted text
	Console.WriteLine(AllText) ' Print the extracted text
End Using
$vbLabelText   $csharpLabel

Γιατί να επιλέξετε IronOCR;

Το IronOCR είναι μια εύκολη εγκατάσταση, πλήρης και καλά τεκμηριωμένη βιβλιοθήκη λογισμικού .NET.

Επιλέξτε IronOCR για να επιτύχετε 99,8% + ακρίβεια OCR χωρίς να χρησιμοποιήσετε εξωτερικές υπηρεσίες ιστού, τρέχουσες χρεώσεις ή αποστολή εμπιστευτικών εγγράφων μέσω του Διαδικτύου.

Γιατί οι προγραμματιστές C# επιλέγουν το IronOCR έναντι του Vanilla Tesseract:

  • Εγκατάσταση ως μεμονωμένο DLL ή NuGet
  • Περιλαμβάνει κινητήρες Tesseract 5, 4 και 3 εκτός κουτιού.
  • Η ακρίβεια 99,8% ξεπερνά σημαντικά το κανονικό Tesseract.
  • Blazing Speed και MultiThreading
  • MVC, WebApp, Desktop, Console & Server Application συμβατό
  • Δεν υπάρχει κωδικός Exes ή C ++ για εργασία
  • Πλήρης υποστήριξη PDF OCR
  • Για να εκτελέσετε OCR σχεδόν οποιοδήποτε αρχείο εικόνας ή PDF
  • Πλήρης υποστήριξη .NET Core, Standard και FrameWork
  • Ανάπτυξη σε Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Διαβάστε γραμμωτούς κώδικες και κωδικούς QR
  • Εξαγωγή OCR ως XHTML
  • Εξαγωγή OCR σε έγγραφα PDF με δυνατότητα αναζήτησης
  • Υποστήριξη πολλαπλών νημάτων
  • 126 διεθνείς γλώσσες διαχειρίζονται όλες μέσω αρχείων NuGet ή OcrData
  • Εξαγωγή εικόνων, συντεταγμένων, στατιστικών και γραμματοσειρών. Όχι μόνο κείμενο.
  • Μπορεί να χρησιμοποιηθεί για την αναδιανομή του Tesseract OCR σε εμπορικές και ιδιόκτητες εφαρμογές.

Το IronOCR λάμπει όταν εργάζεστε με εικόνες πραγματικού κόσμου και ατελή έγγραφα όπως φωτογραφίες ή σαρώσεις χαμηλής ανάλυσης που ενδέχεται να έχουν ψηφιακό θόρυβο ή ατέλειες.

Άλλες δωρεάν βιβλιοθήκες OCR για την πλατφόρμα .NET όπως άλλες .net tesseract APIs και υπηρεσίες ιστού δεν αποδίδουν τόσο καλά σε αυτές τις περιπτώσεις χρήσης του πραγματικού κόσμου.

OCR με Tesseract 5 - Ξεκινήστε την κωδικοποίηση σε C#

Το παρακάτω δείγμα κώδικα δείχνει πόσο εύκολο είναι να διαβάσετε κείμενο από μια εικόνα χρησιμοποιώντας C# ή VB .NET.

OneLiner

var Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
// One line of code to perform OCR and retrieve text from a PNG image.
var Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
// One line of code to perform OCR and retrieve text from a PNG image.
Dim Text = (New IronTesseract()).Read("img\Screenshot.png").Text
' One line of code to perform OCR and retrieve text from a PNG image.
$vbLabelText   $csharpLabel

Διαμορφώσιμο Hello World

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

// Initialize the OCR engine
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    Input.AddImage("images/sample.jpeg"); // Add an image to the OCR input
    // ... μπορείτε να προσθέσετε οποιονδήποτε αριθμό εικόνων

    var Result = Ocr.Read(Input); // Perform OCR on the input
    Console.WriteLine(Result.Text); // Output the text
}
// PM> Install-Package IronOCR.Languages.Greek
using IronOcr;

// Initialize the OCR engine
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    Input.AddImage("images/sample.jpeg"); // Add an image to the OCR input
    // ... μπορείτε να προσθέσετε οποιονδήποτε αριθμό εικόνων

    var Result = Ocr.Read(Input); // Perform OCR on the input
    Console.WriteLine(Result.Text); // Output the text
}
' PM> Install-Package IronOCR.Languages.Greek
Imports IronOcr

' Initialize the OCR engine
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using Input = New OcrInput()
	Input.AddImage("images/sample.jpeg") ' Add an image to the OCR input
	' ... μπορείτε να προσθέσετε οποιονδήποτε αριθμό εικόνων

	Dim Result = Ocr.Read(Input) ' Perform OCR on the input
	Console.WriteLine(Result.Text) ' Output the text
End Using
$vbLabelText   $csharpLabel

C# PDF OCR

Η ίδια προσέγγιση μπορεί ομοίως να χρησιμοποιηθεί για την εξαγωγή κειμένου από οποιοδήποτε έγγραφο PDF.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var input = new OcrInput())
{
    // Add a PDF for OCR; optionally set a password if needed
    input.AddPdf("example.pdf", "password");
    // Μπορούμε επίσης να επιλέξουμε συγκεκριμένους αριθμούς σελίδων PDF στο OCR

    var Result = Ocr.Read(input); // Read the OCR results

    // Output the text and the number of pages processed
    Console.WriteLine(Result.Text);
    Console.WriteLine($"{Result.Pages.Count} Pages");
    // 1 σελίδα για κάθε σελίδα του PDF
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var input = new OcrInput())
{
    // Add a PDF for OCR; optionally set a password if needed
    input.AddPdf("example.pdf", "password");
    // Μπορούμε επίσης να επιλέξουμε συγκεκριμένους αριθμούς σελίδων PDF στο OCR

    var Result = Ocr.Read(input); // Read the OCR results

    // Output the text and the number of pages processed
    Console.WriteLine(Result.Text);
    Console.WriteLine($"{Result.Pages.Count} Pages");
    // 1 σελίδα για κάθε σελίδα του PDF
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using input = New OcrInput()
	' Add a PDF for OCR; optionally set a password if needed
	input.AddPdf("example.pdf", "password")
	' Μπορούμε επίσης να επιλέξουμε συγκεκριμένους αριθμούς σελίδων PDF στο OCR

	Dim Result = Ocr.Read(input) ' Read the OCR results

	' Output the text and the number of pages processed
	Console.WriteLine(Result.Text)
	Console.WriteLine($"{Result.Pages.Count} Pages")
	' 1 σελίδα για κάθε σελίδα του PDF
End Using
$vbLabelText   $csharpLabel

OCR για TIFF πολλαπλών σελίδων

Μορφή αρχείου TIFF ανάγνωσης OCR που περιλαμβάνει έγγραφα πολλών σελίδων. Το TIFF μπορεί επίσης να μετατραπεί απευθείας σε αρχείο PDF με κείμενο με δυνατότητα αναζήτησης.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the OCR language to Greek

using (var Input = new OcrInput())
{
    // Add a multi-frame TIFF for OCR
    Input.AddMultiFrameTiff("multi-frame.tiff");
    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the extracted text
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the OCR language to Greek

using (var Input = new OcrInput())
{
    // Add a multi-frame TIFF for OCR
    Input.AddMultiFrameTiff("multi-frame.tiff");
    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the extracted text
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the OCR language to Greek

Using Input = New OcrInput()
	' Add a multi-frame TIFF for OCR
	Input.AddMultiFrameTiff("multi-frame.tiff")
	Dim Result = Ocr.Read(Input) ' Perform OCR
	Console.WriteLine(Result.Text) ' Output the extracted text
End Using
$vbLabelText   $csharpLabel

Γραμμικοί κώδικες και QR

Ένα μοναδικό χαρακτηριστικό του IronOCR είναι ότι μπορεί να διαβάσει γραμμωτούς κώδικες και κωδικούς QR από έγγραφα ενώ κάνει σάρωση για κείμενο. Οι OcrResult.OcrBarcode κλάσης παρέχουν στον προγραμματιστή λεπτομερείς πληροφορίες για κάθε σαρωμένο γραμμωτό κώδικα.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true; // Enable barcode reading

using (var input = new OcrInput())
{
    input.AddImage("img/Barcode.png"); // Add an image containing a barcode
    var Result = Ocr.Read(input); // Read the image for barcodes

    foreach (var Barcode in Result.Barcodes)
    {
        Console.WriteLine(Barcode.Value);
        // Output barcode values; properties for type and location are also exposed
    }
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true; // Enable barcode reading

using (var input = new OcrInput())
{
    input.AddImage("img/Barcode.png"); // Add an image containing a barcode
    var Result = Ocr.Read(input); // Read the image for barcodes

    foreach (var Barcode in Result.Barcodes)
    {
        Console.WriteLine(Barcode.Value);
        // Output barcode values; properties for type and location are also exposed
    }
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True ' Enable barcode reading

Using input = New OcrInput()
	input.AddImage("img/Barcode.png") ' Add an image containing a barcode
	Dim Result = Ocr.Read(input) ' Read the image for barcodes

	For Each Barcode In Result.Barcodes
		Console.WriteLine(Barcode.Value)
		' Output barcode values; properties for type and location are also exposed
	Next Barcode
End Using
$vbLabelText   $csharpLabel

OCR σε συγκεκριμένες περιοχές εικόνων

Όλες οι μέθοδοι σάρωσης και ανάγνωσης του IronOCR παρέχουν τη δυνατότητα καθορισμού ακριβώς από ποιο μέρος μιας σελίδας ή σελίδων από τις οποίες επιθυμούμε να διαβάσουμε κείμενο. Αυτό είναι πολύ χρήσιμο όταν εξετάζουμε τυποποιημένες φόρμες και μπορεί να εξοικονομήσει πολύ χρόνο και να βελτιώσει την αποτελεσματικότητα.

Για να χρησιμοποιήσουμε περιοχές περικοπής, θα πρέπει να προσθέσουμε μια αναφορά συστήματος στο System.Drawing ώστε να μπορούμε να χρησιμοποιήσουμε το αντικείμενο System.Drawing.Rectangle.

using IronOcr;
using System.Drawing;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    // Define the area of interest
    var ContentArea = new System.Drawing.Rectangle { X = 215, Y = 1250, Height = 280, Width = 1335 };
    // Οι διαστάσεις είναι σε px

    Input.Add("document.png", ContentArea); // Add image and set crop area

    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the result
}
using IronOcr;
using System.Drawing;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    // Define the area of interest
    var ContentArea = new System.Drawing.Rectangle { X = 215, Y = 1250, Height = 280, Width = 1335 };
    // Οι διαστάσεις είναι σε px

    Input.Add("document.png", ContentArea); // Add image and set crop area

    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the result
}
Imports IronOcr
Imports System.Drawing

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using Input = New OcrInput()
	' Define the area of interest
	Dim ContentArea = New System.Drawing.Rectangle With {
		.X = 215,
		.Y = 1250,
		.Height = 280,
		.Width = 1335
	}
	' Οι διαστάσεις είναι σε px

	Input.Add("document.png", ContentArea) ' Add image and set crop area

	Dim Result = Ocr.Read(Input) ' Perform OCR
	Console.WriteLine(Result.Text) ' Output the result
End Using
$vbLabelText   $csharpLabel

OCR για σαρώσεις χαμηλής ποιότητας

Η κατηγορία IronOCR OcrInput μπορεί να διορθώσει τις σαρώσεις που δεν μπορεί να διαβάσει το κανονικό Tesseract.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
    Input.DeNoise(); // Correct digital noise
    Input.Deskew(); // Correct skew
    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the text
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
    Input.DeNoise(); // Correct digital noise
    Input.Deskew(); // Correct skew
    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the text
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
	Input.DeNoise() ' Correct digital noise
	Input.Deskew() ' Correct skew
	Dim Result = Ocr.Read(Input) ' Perform OCR
	Console.WriteLine(Result.Text) ' Output the text
End Using
$vbLabelText   $csharpLabel

Εξαγωγή αποτελεσμάτων OCR ως PDF με δυνατότητα αναζήτησης

Εικόνα σε PDF με συμβολοσειρές κειμένου με δυνατότητα αντιγραφής. Μπορεί να ευρετηριαστεί από μηχανές αναζήτησης και βάσεις δεδομένων.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    input.Title = "Quarterly Report"; // Set the title for the document
    Input.AddImage("image1.jpeg"); // Add images to the input
    Input.AddImage("image2.png");
    Input.AddImage("image3.gif");

    var Result = Ocr.Read(input); // Perform OCR
    Result.SaveAsSearchablePdf("searchable.pdf"); // Save as searchable PDF
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    input.Title = "Quarterly Report"; // Set the title for the document
    Input.AddImage("image1.jpeg"); // Add images to the input
    Input.AddImage("image2.png");
    Input.AddImage("image3.gif");

    var Result = Ocr.Read(input); // Perform OCR
    Result.SaveAsSearchablePdf("searchable.pdf"); // Save as searchable PDF
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using Input = New OcrInput()
	input.Title = "Quarterly Report" ' Set the title for the document
	Input.AddImage("image1.jpeg") ' Add images to the input
	Input.AddImage("image2.png")
	Input.AddImage("image3.gif")

	Dim Result = Ocr.Read(input) ' Perform OCR
	Result.SaveAsSearchablePdf("searchable.pdf") ' Save as searchable PDF
End Using
$vbLabelText   $csharpLabel

TIFF σε μετατροπή PDF με δυνατότητα αναζήτησης

Μετατρέψτε ένα έγγραφο TIFF (ή οποιαδήποτε ομάδα αρχείων εικόνας) απευθείας σε PDF με δυνατότητα αναζήτησης, το οποίο μπορεί να ευρετηριαστεί από τις μηχανές αναζήτησης intranet, ιστότοπου και google.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    input.AddMultiFrameTiff("example.tiff"); // Add TIFF for conversion
    var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf"); // Convert and save as searchable PDF
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    input.AddMultiFrameTiff("example.tiff"); // Add TIFF for conversion
    var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf"); // Convert and save as searchable PDF
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using Input = New OcrInput()
	input.AddMultiFrameTiff("example.tiff") ' Add TIFF for conversion
	Dim Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf") ' Convert and save as searchable PDF
End Using
$vbLabelText   $csharpLabel

Εξαγωγή αποτελεσμάτων OCR ως HTML

OCR Εικόνα σε μετατροπή XHTML.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    input.Title = "Html Title"; // Set the title for the XHTML document
    Input.AddImage("image1.jpeg"); // Add the image to process

    var Result = Ocr.Read(input); // Perform OCR
    Result.SaveAsHocrFile("results.html"); // Save the result as HTML
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput())
{
    input.Title = "Html Title"; // Set the title for the XHTML document
    Input.AddImage("image1.jpeg"); // Add the image to process

    var Result = Ocr.Read(input); // Perform OCR
    Result.SaveAsHocrFile("results.html"); // Save the result as HTML
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using Input = New OcrInput()
	input.Title = "Html Title" ' Set the title for the XHTML document
	Input.AddImage("image1.jpeg") ' Add the image to process

	Dim Result = Ocr.Read(input) ' Perform OCR
	Result.SaveAsHocrFile("results.html") ' Save the result as HTML
End Using
$vbLabelText   $csharpLabel

Φίλτρα βελτίωσης εικόνας OCR

Το IronOCR παρέχει μοναδικά φίλτρα για αντικείμενα OcrInput για τη βελτίωση της απόδοσης του OCR.

Παράδειγμα κώδικα βελτίωσης εικόνας

Κάνει τις εικόνες εισόδου OCR υψηλότερης ποιότητας για να παράγει καλύτερα, ταχύτερα αποτελέσματα OCR.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
    Input.DeNoise(); // Corrects digital noise
    Input.Deskew(); // Corrects skew and perspective
    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the text
}
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
    Input.DeNoise(); // Corrects digital noise
    Input.Deskew(); // Corrects skew and perspective
    var Result = Ocr.Read(Input); // Perform OCR
    Console.WriteLine(Result.Text); // Output the text
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek

Using Input = New OcrInput("LowQuality.jpeg")
	Input.DeNoise() ' Corrects digital noise
	Input.Deskew() ' Corrects skew and perspective
	Dim Result = Ocr.Read(Input) ' Perform OCR
	Console.WriteLine(Result.Text) ' Output the text
End Using
$vbLabelText   $csharpLabel

Λίστα φίλτρων εικόνων OCR

Τα φίλτρα εισόδου για την ενίσχυση της απόδοσης OCR που είναι ενσωματωμένα στο IronOCR περιλαμβάνουν:

  • OcrInput.Rotate (διπλές μοίρες) - Περιστρέφει τις εικόνες κατά αριθμό μοίρες δεξιόστροφα. Για αριστερόστροφα, χρησιμοποιήστε αρνητικούς αριθμούς.
  • OcrInput.Binarize () - Μετατρέπει κάθε εικονοστοιχείο ασπρόμαυρο. Μπορεί να βελτιώσει τις περιπτώσεις απόδοσης OCR με πολύ χαμηλή αντίθεση.
  • OcrInput.ToGrayScale () - Μετατρέπει κάθε εικονοστοιχείο σε γκρι κλίμακα. Μπορεί να βελτιώσει την ταχύτητα OCR.
  • OcrInput.Contrast () - Αυξάνει αυτόματα την αντίθεση και βελτιώνει την ακρίβεια σε σαρώσεις χαμηλής αντίθεσης.
  • OcrInput.DeNoise () - Αφαιρεί τον ψηφιακό θόρυβο.
  • OcrInput.Invert () - Αντιστρέφει κάθε χρώμα. Π.χ. Λευκό γίνεται μαύρο: το μαύρο γίνεται λευκό.
  • OcrInput.Dilate () - Προηγμένη Μορφολογία που προσθέτει pixel στα όρια των αντικειμένων σε μια εικόνα.
  • OcrInput.Erode () - Προηγμένη Μορφολογία που αφαιρεί τα εικονοστοιχεία στα όρια αντικειμένου.
  • OcrInput.Deskew () - Περιστρέφει την εικόνα ώστε να είναι ορθογώνια και με σωστό προσανατολισμό.
  • OcrInput.DeepCleanBackgroundNoise () - Αφαίρεση θορύβου έντονου παρασκηνίου.
  • OcrInput.EnhanceResolution - Βελτιώνει την ανάλυση εικόνων χαμηλής ποιότητας.

Ορισμένα χαρακτηριστικά φιλτραρίσματος:

  • CleanBackgroundNoise: Καθαρίζει θορύβους φόντου, τσακίσεις και ατέλειες για καλύτερα αποτελέσματα OCR.
  • EnhanceContrast: Αυξάνει την αντίθεση για βελτιωμένη ακρίβεια και ταχύτητα OCR.
  • EnhanceResolution: Ανιχνεύει και βελτιώνει αυτόματα εικόνες χαμηλής ανάλυσης.
  • Language: Υποστηρίζει 22 διεθνή γλωσσικά πακέτα για OCR.
  • Στρατηγική: Επιλέξτε μεταξύ ταχύτητας και ακρίβειας με προσαρμοσμένη προσέγγιση παραμετροποίησης.
  • ColorSpace: Μάθετε το OCR σε γκρι ή έγχρωμο χώρο χρώματος αναλόγως τις απαιτήσεις.
  • DetectWhiteTextOnDarkBackgrounds: Εντοπίζει και διαβάζει αρνητικά από σκοτεινές σελίδες με λευκό κείμενο.
  • Τύπος εισόδου εικόνας: Καθορίστε τον τύπο εισόδου όπως πλήρες έγγραφο ή απόσπασμα.
  • RotateAndStraighten: Διαβάζει ντοκουμέντα με περιστροφικά στοιχεία και προοπτική.
  • ReadBarcodes: Διαβάζει γραμμωτούς κώδικες και κωδικούς QR παράλληλα με το κείμενο.
  • Βάθος χρώματος: Καθορίστε bit ανά pixel για την ποιότητα του OCR.

126 πακέτα γλωσσών

Το IronOCR υποστηρίζει 126 διεθνείς γλώσσες μέσω πακέτων γλωσσών που διανέμονται ως DLL, τα οποία μπορείτε να κατεβάσετε από αυτόν τον ιστότοπο ή επίσης από το NuGet Package Manager.

Οι γλώσσες περιλαμβάνουν Γερμανικά, Γαλλικά, Αγγλικά, Κινέζικα, Ιαπωνικά και πολλά άλλα. Υπάρχουν πακέτα ειδικών γλωσσών για διαβατήρια MRZ, ελέγχους MICR, Οικονομικά δεδομένα, πινακίδες κυκλοφορίας και πολλά άλλα. Μπορείτε επίσης να χρησιμοποιήσετε οποιοδήποτε αρχείο tesseract ".traineddata" - συμπεριλαμβανομένων αυτών που δημιουργείτε μόνοι σας.

Παράδειγμα γλώσσας

Χρήση άλλων γλωσσών OCR.

// PM> Install-Package IronOcr.Languages.Arabic

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic; // Set OCR language to Arabic

using (var input = new OcrInput())
{
    input.AddImage("img/arabic.gif"); // Add image to process

    var Result = Ocr.Read(input); // Perform OCR

    // Save the result as a text file since console can't easily print Arabic text
    Result.SaveAsTextFile("arabic.txt");
}
// PM> Install-Package IronOcr.Languages.Arabic

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic; // Set OCR language to Arabic

using (var input = new OcrInput())
{
    input.AddImage("img/arabic.gif"); // Add image to process

    var Result = Ocr.Read(input); // Perform OCR

    // Save the result as a text file since console can't easily print Arabic text
    Result.SaveAsTextFile("arabic.txt");
}
' PM> Install-Package IronOcr.Languages.Arabic

Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic ' Set OCR language to Arabic

Using input = New OcrInput()
	input.AddImage("img/arabic.gif") ' Add image to process

	Dim Result = Ocr.Read(input) ' Perform OCR

	' Save the result as a text file since console can't easily print Arabic text
	Result.SaveAsTextFile("arabic.txt")
End Using
$vbLabelText   $csharpLabel

Παράδειγμα πολλαπλής γλώσσας

Είναι επίσης δυνατό το OCR να χρησιμοποιεί πολλές γλώσσες ταυτόχρονα. Αυτό μπορεί πραγματικά να βοηθήσει στη λήψη μεταδεδομένων και διευθύνσεων URL στην αγγλική γλώσσα σε έγγραφα Unicode.

// PM> Install-Package IronOcr.Languages.ChineseSimplified

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified; // Set primary language to Chinese Simplified
Ocr.AddSecondaryLanguage(OcrLanguage.Greek); // Add Greek as a secondary language

// Add as many languages as needed

using (var input = new OcrInput())
{
    input.Add("multi-language.pdf"); // Add multi-language PDF

    var Result = Ocr.Read(input); // Perform OCR
    Result.SaveAsTextFile("results.txt"); // Save result to text file
}
// PM> Install-Package IronOcr.Languages.ChineseSimplified

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified; // Set primary language to Chinese Simplified
Ocr.AddSecondaryLanguage(OcrLanguage.Greek); // Add Greek as a secondary language

// Add as many languages as needed

using (var input = new OcrInput())
{
    input.Add("multi-language.pdf"); // Add multi-language PDF

    var Result = Ocr.Read(input); // Perform OCR
    Result.SaveAsTextFile("results.txt"); // Save result to text file
}
' PM> Install-Package IronOcr.Languages.ChineseSimplified

Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified ' Set primary language to Chinese Simplified
Ocr.AddSecondaryLanguage(OcrLanguage.Greek) ' Add Greek as a secondary language

' Add as many languages as needed

Using input = New OcrInput()
	input.Add("multi-language.pdf") ' Add multi-language PDF

	Dim Result = Ocr.Read(input) ' Perform OCR
	Result.SaveAsTextFile("results.txt") ' Save result to text file
End Using
$vbLabelText   $csharpLabel

Λεπτομερή αντικείμενα αποτελεσμάτων OCR

Το IronOCR επιστρέφει ένα αντικείμενο αποτελέσματος OCR για κάθε λειτουργία OCR. Γενικά, οι προγραμματιστές χρησιμοποιούν μόνο την ιδιότητα κειμένου αυτού του αντικειμένου για να κάνουν τη σάρωση του κειμένου από την εικόνα. Ωστόσο, τα αποτελέσματα OCR DOM είναι πολύ πιο προηγμένα από αυτό.

using IronOcr;
using System.Drawing; //Προσθήκη αναφοράς συναρμολόγησης

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm; // Configure engine mode
Ocr.Configuration.ReadBarCodes = true; // Enable barcode reading

using (var Input = new OcrInput(@"images\sample.tiff"))
{
    OcrResult Result = Ocr.Read(Input); // Perform OCR
    // Access detailed result information
    var Pages = Result.Pages;
    var Words = Pages[0].Words;
    var Barcodes = Result.Barcodes;
    // Εξερευνήστε εδώ για να βρείτε ένα τεράστιο, λεπτομερές API:
    // - Σελίδες, μπλοκ, παραφράσεις, γραμμές, λέξεις, χαρακτήρες
    // - Εξαγωγή εικόνας, Συντεταγμένες γραμματοσειρών, Στατιστικά δεδομένα
}
using IronOcr;
using System.Drawing; //Προσθήκη αναφοράς συναρμολόγησης

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Greek; // Set the language to Greek
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm; // Configure engine mode
Ocr.Configuration.ReadBarCodes = true; // Enable barcode reading

using (var Input = new OcrInput(@"images\sample.tiff"))
{
    OcrResult Result = Ocr.Read(Input); // Perform OCR
    // Access detailed result information
    var Pages = Result.Pages;
    var Words = Pages[0].Words;
    var Barcodes = Result.Barcodes;
    // Εξερευνήστε εδώ για να βρείτε ένα τεράστιο, λεπτομερές API:
    // - Σελίδες, μπλοκ, παραφράσεις, γραμμές, λέξεις, χαρακτήρες
    // - Εξαγωγή εικόνας, Συντεταγμένες γραμματοσειρών, Στατιστικά δεδομένα
}
Imports IronOcr
Imports System.Drawing 'Προσθήκη αναφοράς συναρμολόγησης

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Greek ' Set the language to Greek
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm ' Configure engine mode
Ocr.Configuration.ReadBarCodes = True ' Enable barcode reading

Using Input = New OcrInput("images\sample.tiff")
	Dim Result As OcrResult = Ocr.Read(Input) ' Perform OCR
	' Access detailed result information
	Dim Pages = Result.Pages
	Dim Words = Pages(0).Words
	Dim Barcodes = Result.Barcodes
	' Εξερευνήστε εδώ για να βρείτε ένα τεράστιο, λεπτομερές API:
	' - Σελίδες, μπλοκ, παραφράσεις, γραμμές, λέξεις, χαρακτήρες
	' - Εξαγωγή εικόνας, Συντεταγμένες γραμματοσειρών, Στατιστικά δεδομένα
End Using
$vbLabelText   $csharpLabel

Εκτέλεση

Το IronOCR λειτουργεί έξω από το κουτί χωρίς να χρειάζεται να συντονιστείτε η απόδοση ή να τροποποιήσετε σε μεγάλο βαθμό τις εικόνες εισόδου.

Η ταχύτητα είναι απίστευτη: Το IronOcr.2020 + είναι έως και 10 φορές πιο γρήγορο και κάνει πάνω από 250% λιγότερα σφάλματα από τις προηγούμενες εκδόσεις.

Μάθε περισσότερα

Για να μάθετε περισσότερα σχετικά με το OCR σε C#, VB, F# ή σε οποιαδήποτε άλλη γλώσσα .NET, διαβάστε τα εκπαιδευτικά σεμινάρια της κοινότητάς μας, τα οποία δίνουν πραγματικά παραδείγματα για το πώς μπορεί να χρησιμοποιηθεί το IronOCR και μπορεί να δείξει τις αποχρώσεις του πώς να αξιοποιήσετε στο έπακρο αυτή την βιβλιοθήκη.

Διατίθεται επίσης πλήρης αναφορά αντικειμένου για προγραμματιστές .NET.