Erste Schritte mit OCR für Azure

C# + VB.NET: Int. Sprachen Int. Sprachen
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

ocrTesseract.Language = OcrLanguage.Arabic;

using (var ocrInput = new OcrInput())
{
    ocrInput.LoadImage(@"images\arabic.gif");
    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}

// Example with a Custom Trained Font Being used:

var ocrTesseractCustomerLang = new IronTesseract();
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata");
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest);

using (var ocrInput = new OcrInput())
{
    ocrInput.LoadPdf(@"images\mixed-lang.pdf");
    var ocrResult = ocrTesseractCustomerLang.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports System

Private ocrTesseract = New IronTesseract()

ocrTesseract.Language = OcrLanguage.Arabic

Using ocrInput As New OcrInput()
	ocrInput.LoadImage("images\arabic.gif")
	Dim ocrResult = ocrTesseract.Read(ocrInput)
	Console.WriteLine(ocrResult.Text)
End Using

' Example with a Custom Trained Font Being used:

Dim ocrTesseractCustomerLang = New IronTesseract()
ocrTesseractCustomerLang.UseCustomTesseractLanguageFile("custom_tesseract_files/custom.traineddata")
ocrTesseractCustomerLang.AddSecondaryLanguage(OcrLanguage.EnglishBest)

Using ocrInput As New OcrInput()
	ocrInput.LoadPdf("images\mixed-lang.pdf")
	Dim ocrResult = ocrTesseractCustomerLang.Read(ocrInput)
	Console.WriteLine(ocrResult.Text)
End Using

<p>IronOCR unterstützt 125 internationale Sprachen.</p> <p>Abgesehen von Englisch, das standardmäßig installiert ist, können Sprachpakete über NuGet zu Ihrem .NET-Projekt hinzugefügt werden oder als Download von unserer<a href="/csharp/ocr/languages/" target="_blank" rel="nofollow noopener noreferrer">Sprachen Seite</a>.</p> <p>Die meisten Sprachen sind in Schnell, Standard(empfohlen) und beste Qualität. Die beste Methode ist zwar genauer, aber auch langsamer.</p>

C# + VB.NET: Ergebnisse Objekte Ergebnisse Objekte
using IronOcr;
using IronSoftware.Drawing;

// We can delve deep into OCR results as an object model of
// Pages, Barcodes, Paragraphs, Lines, Words and Characters
// This allows us to explore, export and draw OCR content using other APIs/
var ocrTesseract = new IronTesseract();

ocrTesseract.Configuration.ReadBarCodes = true;

using var ocrInput = new OcrInput();
var pages = new int[] { 1, 2 };
ocrInput.LoadImageFrames("example.tiff", pages);

OcrResult ocrResult = ocrTesseract.Read(ocrInput);
foreach (var page in ocrResult.Pages)
{
    // Page object
    int PageNumber = page.PageNumber;
    string PageText = page.Text;
    int PageWordCount = page.WordCount;
    // null if we dont set Ocr.Configuration.ReadBarCodes = true;
    OcrResult.Barcode[] Barcodes = page.Barcodes;
    AnyBitmap PageImage = page.ToBitmap(ocrInput);
    double PageWidth = page.Width;
    double PageHeight = page.Height;
    double PageRotation = page.Rotation; // angular correction in degrees from OcrInput.Deskew()

    foreach (var paragraph in page.Paragraphs)
    {
        // Pages -> Paragraphs
        int ParagraphNumber = paragraph.ParagraphNumber;
        string ParagraphText = paragraph.Text;
        AnyBitmap ParagraphImage = paragraph.ToBitmap(ocrInput);
        int ParagraphX_location = paragraph.X;
        int ParagraphY_location = paragraph.Y;
        int ParagraphWidth = paragraph.Width;
        int ParagraphHeight = paragraph.Height;
        double ParagraphOcrAccuracy = paragraph.Confidence;
        OcrResult.TextFlow paragrapthText_direction = paragraph.TextDirection;
        foreach (var line in paragraph.Lines)
        {
            // Pages -> Paragraphs -> Lines
            int LineNumber = line.LineNumber;
            string LineText = line.Text;
            AnyBitmap LineImage = line.ToBitmap(ocrInput);
            int LineX_location = line.X;
            int LineY_location = line.Y;
            int LineWidth = line.Width;
            int LineHeight = line.Height;
            double LineOcrAccuracy = line.Confidence;
            double LineSkew = line.BaselineAngle;
            double LineOffset = line.BaselineOffset;
            foreach (var word in line.Words)
            {
                // Pages -> Paragraphs -> Lines -> Words
                int WordNumber = word.WordNumber;
                string WordText = word.Text;
                AnyBitmap WordImage = word.ToBitmap(ocrInput);
                int WordX_location = word.X;
                int WordY_location = word.Y;
                int WordWidth = word.Width;
                int WordHeight = word.Height;
                double WordOcrAccuracy = word.Confidence;
                foreach (var character in word.Characters)
                {
                    // Pages -> Paragraphs -> Lines -> Words -> Characters
                    int CharacterNumber = character.CharacterNumber;
                    string CharacterText = character.Text;
                    AnyBitmap CharacterImage = character.ToBitmap(ocrInput);
                    int CharacterX_location = character.X;
                    int CharacterY_location = character.Y;
                    int CharacterWidth = character.Width;
                    int CharacterHeight = character.Height;
                    double CharacterOcrAccuracy = character.Confidence;
                    // Output alternative symbols choices and their probability.
                    // Very useful for spellchecking
                    OcrResult.Choice[] Choices = character.Choices;
                }
            }
        }
    }
}
Imports IronOcr
Imports IronSoftware.Drawing

' We can delve deep into OCR results as an object model of
' Pages, Barcodes, Paragraphs, Lines, Words and Characters
' This allows us to explore, export and draw OCR content using other APIs/
Private ocrTesseract = New IronTesseract()

ocrTesseract.Configuration.ReadBarCodes = True

Dim ocrInput As New OcrInput()
Dim pages = New Integer() { 1, 2 }
ocrInput.LoadImageFrames("example.tiff", pages)

Dim ocrResult As OcrResult = ocrTesseract.Read(ocrInput)
For Each page In ocrResult.Pages
	' Page object
	Dim PageNumber As Integer = page.PageNumber
	Dim PageText As String = page.Text
	Dim PageWordCount As Integer = page.WordCount
	' null if we dont set Ocr.Configuration.ReadBarCodes = true;
	Dim Barcodes() As OcrResult.Barcode = page.Barcodes
	Dim PageImage As AnyBitmap = page.ToBitmap(ocrInput)
	Dim PageWidth As Double = page.Width
	Dim PageHeight As Double = page.Height
	Dim PageRotation As Double = page.Rotation ' angular correction in degrees from OcrInput.Deskew()

	For Each paragraph In page.Paragraphs
		' Pages -> Paragraphs
		Dim ParagraphNumber As Integer = paragraph.ParagraphNumber
		Dim ParagraphText As String = paragraph.Text
		Dim ParagraphImage As AnyBitmap = paragraph.ToBitmap(ocrInput)
		Dim ParagraphX_location As Integer = paragraph.X
		Dim ParagraphY_location As Integer = paragraph.Y
		Dim ParagraphWidth As Integer = paragraph.Width
		Dim ParagraphHeight As Integer = paragraph.Height
		Dim ParagraphOcrAccuracy As Double = paragraph.Confidence
		Dim paragrapthText_direction As OcrResult.TextFlow = paragraph.TextDirection
		For Each line In paragraph.Lines
			' Pages -> Paragraphs -> Lines
			Dim LineNumber As Integer = line.LineNumber
			Dim LineText As String = line.Text
			Dim LineImage As AnyBitmap = line.ToBitmap(ocrInput)
			Dim LineX_location As Integer = line.X
			Dim LineY_location As Integer = line.Y
			Dim LineWidth As Integer = line.Width
			Dim LineHeight As Integer = line.Height
			Dim LineOcrAccuracy As Double = line.Confidence
			Dim LineSkew As Double = line.BaselineAngle
			Dim LineOffset As Double = line.BaselineOffset
			For Each word In line.Words
				' Pages -> Paragraphs -> Lines -> Words
				Dim WordNumber As Integer = word.WordNumber
				Dim WordText As String = word.Text
				Dim WordImage As AnyBitmap = word.ToBitmap(ocrInput)
				Dim WordX_location As Integer = word.X
				Dim WordY_location As Integer = word.Y
				Dim WordWidth As Integer = word.Width
				Dim WordHeight As Integer = word.Height
				Dim WordOcrAccuracy As Double = word.Confidence
				For Each character In word.Characters
					' Pages -> Paragraphs -> Lines -> Words -> Characters
					Dim CharacterNumber As Integer = character.CharacterNumber
					Dim CharacterText As String = character.Text
					Dim CharacterImage As AnyBitmap = character.ToBitmap(ocrInput)
					Dim CharacterX_location As Integer = character.X
					Dim CharacterY_location As Integer = character.Y
					Dim CharacterWidth As Integer = character.Width
					Dim CharacterHeight As Integer = character.Height
					Dim CharacterOcrAccuracy As Double = character.Confidence
					' Output alternative symbols choices and their probability.
					' Very useful for spellchecking
					Dim Choices() As OcrResult.Choice = character.Choices
				Next character
			Next word
		Next line
	Next paragraph
Next page

<p>IronOCR liefert für jede Seite, die mit Tesseract 5\ gescannt wird, ein erweitertes Ergebnisobjekt. Diese enthält <strong>Standortdaten, Bilder, Text, statistische Zuverlässigkeit, alternative Symbolwahlen, Schriftnamen, Schriftgrößen, Schriftschnitte und Position</strong> für jedes Symbol:</p> <ul> <li>Seite</li> <li>Absatz</li> <li>Textzeile</li> <li>Wort</li> <li>Individueller Charakter</li> <li>und Barcode</li> </ul>

Human Support related to Azure OCR API

Menschliche Unterstützung direkt von unserem Entwicklungsteam

Ob es sich um Produkt-, Integrations- oder Lizenzierungsfragen handelt, das Iron Produktentwicklungsteam steht Ihnen für alle Fragen zur Verfügung. Setzen Sie sich mit uns in Verbindung und beginnen Sie einen Dialog mit Iron, um das Beste aus unserer Bibliothek für Ihr Projekt herauszuholen.

Eine Frage stellen
Image To Text related to Azure OCR API

OCR-Lesegerät für Azure in .NET

Ihre Microsoft Azure OCR-Lösung zur Verarbeitung unvollkommener Bilder

Ob Passseiten, Rechnungen, Kontoauszüge, Post, Visitenkarten oder Quittungen - die optische Zeichenerkennung (OCR) ist ein Forschungsgebiet, das auf Mustererkennung, Computer Vision und maschinellem Lernen basiert. Unternehmen setzen OCR abteilungsübergreifend ein, um Text in Buchhaltungs- und Finanzsystemen, Unternehmensdigitalisierung, Enterprise Content Management und Datenberichtssystemen zu extrahieren.

Neben dem Aufbau anderer erfolgsgeschichten. IronOCR ergänzt Google Tesseract und Microsoft 2021 Azure Cognitive Services mit IronOCR - einer nativen C# OCR-Bibliothek.

Wenn Sie reale Bilder mit einer Genauigkeit von 99 Prozent konvertieren möchten, dann lesen Sie weiter, um zu erfahren, wie Sie mit IronOCR eine effiziente, genaue, skalierbare und fast menschliche Anwendung für die optische Zeichenerkennung erstellen können.

IronOCR macht den Unterschied zwischen wettbewerbsfähiger und marktführender optischer Zeichenerkennung aus

Die optische Zeichenerkennung (OCR) gilt als gelöstes Phänomen, da verschiedene APIs ein großes Vertrauen in den Schutz beanspruchen. Allerdings sind die verschiedenen Produkte oft starr und ungenau und versagen in der Praxis. In ähnlicher Weise arbeitet Tesseract OCR mit maschinell gedrucktem, hochauflösendem, perfektem Text.

Klingt gut?

Nur gibt es in der realen Welt nicht immer perfekt gedruckten und handgeschriebenen Text mit hoher Auflösung. Stattdessen kümmert sich IronOCR um gedrehte, verzerrte, niedrige DPI-Werte, Hintergrundrauschen und all die Flüche digitaler Unvollkommenheiten, einschließlich der Extraktion von handgeschriebenem Text aus Bilddateien. Wir gewährleisten ein 99,8 - 100 Prozent genaues, durchsuchbares Dokument mit plattformübergreifender Unterstützung für Windows, Linux, macOS, Microsoft Azure, AWS und Docker - es gibt einen Grund, warum C# Entwickler sich für IronOCR über die (einfache) Tesseract OCR - es geht um die Wertschöpfung.

Rüsten Sie sich mit dem Besten aus!

Darüber hinaus bietet IronOCR die Möglichkeit, Bilddokumente zeitnah zu verarbeiten. Und damit nicht genug: Die IronOCR-API-Funktionen umfassen auch Folgendes:

  • Extrahieren Sie gedruckten Text durch OCR aus fast allen Dateien, Bildern oder PDF-Dateien mit außergewöhnlicher Genauigkeit und blitzschnell
  • Textextraktion aus PDFs und Bildern in durchsuchbare Dokumente mit perfekter visueller und räumlicher Darstellung
  • Benötigt keinen Exes- oder C++-Code
  • Vollständige PDF-OCR-Unterstützung
  • MVC-, WebApp-, Desktop-, Konsolen- und Server-Anwendung kompatibel
  • Vollständige Unterstützung von .NET Core, Standard und FrameWork
  • Lesen mit C# & VB .NET
  • OCR nach XHTML exportieren
  • Unterstützt Multithreading
  • Unterstützt 125 internationale Sprachen - gebrauchsfertige Sprachpakete und benutzerdefinierte Builds
  • Extrahiert Bilder, Koordinaten, Statistiken, Schriftarten und vieles mehr
  • Verteilt Tesseract OCR in kommerziellen und proprietären Anwendungen weiter
  • Läuft lokal, kein SaaS erforderlich
  • Ausgezeichnete Alternative zum OCR-Dienst von Microsoft Cognitive Services

Praktisch unbegrenzte Funktionen - IronOCR ist "das" OCR-Tool zur optischen Zeichenerkennung für den digitalen Arbeitsbereich

Übergang von der Installation nativer .dlls oder exes zu einer einzigen Quelle der Wahrheit - Entwicklung mit einer einzigen, nativen .NET-Komponentenbibliothek unter Verwendung einer einfachen C# APIs, die unterstützt:

  • .NET-Framework 4.5 und höher
  • .NET-Standard 2.0 und aobve (einschließlich 3.x und .NET 5 Beta)
  • .NET Core 2.0 und höher (einschließlich 3.x und .NET 5 Beta)
  • .NET 5
  • Xamarin für macOS

Die Kunst der IronOCR API ist damit noch nicht zu Ende; Sie können unseren technischen Vorsprung weiter erforschen merkmale weiter. Wir reduzieren die geschäftliche Komplexität Schritt für Schritt, indem wir zuverlässige Lösungen zur Rationalisierung von Dokumentenverarbeitungsanwendungen entwickeln und durch das Angebot branchenführender Funktionen den Unternehmensumsatz maximieren:

  • Reine .NET OCR API-Funktionen
  • Lokaler OCR-Betrieb, keine Cloud bedeutet mehr Sicherheit
  • Optimierte, verrauschte und verzerrte Scan-Ressourcen niedriger Qualität erstellen
  • Liest PDFs, mehrseitige TIFFs
  • Kann jedes OCR-Scanmuster in einem PDF-Dokument oder XHTML speichern, das die Benutzer durchsuchen können
  • Klartext, Barcodedaten und eine OCR-Ergebnisklasse mit Absätzen, Zeilen, Wörtern und Zeichen

IronOCR API Edge: Erfüllen Sie die Computer Vision?

Unser optischer Zeichenerkennungsprozess beginnt mit einer automatischen Bildvorverarbeitung, um die Bilddatei zu verbessern und die Extraktionsrate zu erhöhen. IronOCR steigert den Wert Ihrer Arbeit, da es den Anwendern ermöglicht, die Beispiel-Basisbilddatei in eine optimale Version ihrer selbst zu extrahieren. IronOCR deckt alle Bereiche ab:

Verbesserung der Auflösung

Da der IronOCR-Dienst optimal mit 300DPI (Dots Per Inch) Bilddateien arbeitet, wird jedes Bild, das deutlich außerhalb des Bereichs von 200-300 DPI liegt, neu abgetastet, um in den Zielbereich zu passen.

Dies bedeutet, dass das Down-Sampling von 600 DPI-Bildern auf 300 DPI oder das Up-Sampling von 100 DPI-Bildern auf 200 DPI mit einer Zuverlässigkeit von 99 Prozent erfolgt.

Binarisierung

Da die kognitiven Dienste von IronOCR auf monochromatische Bilder ausgelegt sind, werden alle Farb- oder Graustufenbilder mit Hilfe eines adaptiven Binarisierungsalgorithmus in monochromatische Bilder umgewandelt.

Der Algorithmus vergleicht die Pixeldichten innerhalb eines Bereichs, der den Schwellenwert für die Umwandlung von Pixeln in monochromatische Pixel bestimmt.

Auto-Rotation und Schräglauf

IronOCR sucht nach Textzeilen und Zeichenmustern, um die eingegebenen Bildressourcen automatisch zu entzerren und in die gewünschte Ausrichtung zu drehen.

Adaptive Rauschunterdrückung

Mit IronOCR werden die Bilddateien automatisch auf das Vorhandensein und die Menge von Rauschen analysiert. Bei dem Rauschen handelt es sich im Grunde um die "Flecken", die auf den gescannten Bildern zu finden sind. Unser adaptiver Algorithmus entfernt dann das Rauschen auf der Grundlage der Größe der Rauschpartikel.

Sobald die Beispielbilddatei vorverarbeitet ist, unterteilt IronOCR die Eingabebilddatei in verschiedene Verarbeitungsbereiche.

Zoneneinteilung

Eine weitere Vorbereitungsphase besteht darin, das Referenzbild in verschiedene logische Bereiche zu unterteilen. IronOCR lokalisiert zunächst Text und Bilder innerhalb des Bildes mit Hilfe von Leerzeichen und Mustern; der Textbereich wird von den Bildern getrennt.

Anschließend wird er in Zonen aufgeteilt - Absätze, Spalten und Textblöcke. Die Bilder und die verbleibenden Nicht-Text-Pixel werden identifiziert, um bei der Texterkennung ausgelassen und in die intelligente Ausgabe einbezogen zu werden. IronOCR kennzeichnet dann die Textzonen mit Hilfe von Rasterlinien und Textblöcken als Tabellen.

Texterkennungsfähigkeiten

Führen Sie mehrere, miteinander verbundene Schritte durch, die Pixelblobs in einzeilige Textstränge umwandeln, die der Benutzer durchsuchen kann. Dazu gehören Zeichensegmentierung, adaptive Klassifizierung, Wörterbuchverweise und andere verwandte Prozesse, die zu einem optimalen extrahierten Text beitragen.

Erprobte und bewährte Mehrfachparameter

Mit dem IronOCR-API-Service haben wir unser Tool anhand von mehreren Beispieldateien in mehreren Sprachen getestet, die Wortebenen, Symbolgenauigkeit und Layoutbeibehaltung in Microsoft Office-Formaten enthalten. Obwohl einige Parameter automatisch getestet werden, umfassen andere visuelle Prüfungen.

Verbinden Sie sich mit IronOCR - der idealen OCR-Lösung für kognitive Dienste

Mit IronOCR können Sie plattformübergreifende OCR-Funktionen mit mehreren Eingabeformaten zu einer einfachen Textzeichenfolge hinzufügen, die Sie durchsuchen können. Um Ihre Produktivität mit IronOCR zu steigern, können Sie mit unserem kostenlosen lehrgang dokumentation, die Sie durch die Verwendung von IronOCR führt. Laden Sie unser NuGet-Paketinstallationsprogramm noch heute herunter und testen Sie es mit einem kostenlosen Testschlüssel oder kontaktieren Sie unseren persönlichen 24/7-Support. Skalieren Sie Ihre Anforderungen mit unserer Lebensdauer lizenzierungunabhängig von der Größe Ihres Teams.

Arbeitet mit .NET, VB.NET, C#

Lizenzen anzeigen
Unterstützt:
  • .NET-Framework 4.0 und höher unterstützt C#, VB, F#
  • Microsoft Visual Studio. .NET-Entwicklungs-IDE-Symbol
  • NuGet-Installer-Unterstützung für Visual Studio
  • JetBrains ReSharper C# Sprachassistent kompatibel
  • Microsoft Azure C# .NET Hosting-Plattform kompatibel

Lizenzierung & Preisgestaltung

Kostenlos lizenzen für die Gemeindeentwicklung. Kommerzielle Lizenzen ab 749 $.

Projekt C# + VB.NET Bibliothekslizenzierung

Projekt

Entwickler C# + VB.NET Bibliothek Lizenzierung

Entwickler

Organisation C# + VB.NET Bibliothekslizenzierung

Organisation

Agentur C# + VB.NET Bibliothek Lizenzierung

Agentur

SaaS C# + VB.NET Bibliothek-Lizenzierung

SaaS

OEM C# + VB.NET Bibliothekslizenzierung

OEM

Vollständige Lizenzoptionen anzeigen  

OCR-Tutorials von unserer .NET-Gemeinschaft

.NET Tesseract Alternative | IronOCR

C# Tesserakt OCR

Jim Baker ist Entwicklungsingenieur bei Iron und entwickelt das OCR-Produkt

IronOCR & Tesseract Vergleich in .NET

Jim war eine führende Persönlichkeit bei der Entwicklung von IronOCR. Jim entwirft und entwickelt Bildverarbeitungsalgorithmen und Lesemethoden für OCR.

Siehe Vergleich
Text zu Bild in .NET | Tutorial

C# OCR ASP.NET

Gemma Beckford - Microsoft-Lösungsingenieurin

Text aus Bildern für .NET

Erfahren Sie, wie Gemmas Team IronOCR verwendet, um Text aus Bildern für ihre Archivierungssoftware zu lesen. Gemma teilt ihre eigenen Code-Beispiele.

Bild zu Text .NET Tutorial
Tausende von Entwicklern nutzen IronOcr für...

Buchhaltungs- und Finanzsysteme

  • # Quittungen
  • # Berichterstattung
  • # Drucken von Rechnungen
Hinzufügen von PDF-Unterstützung zu ASP.NET-Buchhaltungs- und Finanzsystemen

Business-Digitalisierung

  • # Dokumentation
  • # Bestellung & Etikettierung
  • # Papier-Ersatz
C# Business-Digitalisierung Anwendungsfälle

Verwaltung von Unternehmensinhalten

  • # Produktion von Inhalten
  • # Verwaltung von Dokumenten
  • # Verteilung von Inhalten
.NET CMS PDF-Unterstützung

Daten- und Berichtsanwendungen

  • # Leistungsverfolgung
  • # Trend Mapping
  • # Berichte
C# PDF-Berichte
Iron Software Enterprise .NET-Komponenten-Entwickler

Tausende von Unternehmen, Regierungen, KMUs und Entwicklern vertrauen gleichermaßen auf Iron Software-Produkte.

Das Team von Iron verfügt über mehr als 10 Jahre Erfahrung auf dem Markt für .NET-Softwarekomponenten.

Vireq
Foley
GE
Nexudus
Medcode
Equinor
ANZ
Marval