Aktualisiert 16. Februar 2025
Teilen Sie:

So lesen Sie Screenshots mit IronOCR

This article was translated from English: Does it need improvement?
Translated
View the article in English

von Curtis Chau

Bildschirmfotos sind eine schnelle und einfache Möglichkeit, Informationen zu teilen und wichtige Informationen schnell zu erfassen, um sie an Kollegen und Gleichaltrige zu senden. Das Extrahieren von Text aus Screenshots hat sich jedoch oft als schwierig erwiesen, aufgrund der Dimensionen und des Rauschens, die beim Aufnehmen entstehen. Dies macht Screenshots zu einem weniger effektiven Medium bei der Veröffentlichung von OCR.

IronOCR löst dieses Problem jedoch, indem es spezialisierte Methoden wie "ReadScreenShot" bereitstellt, um dem entgegenzuwirken. ReadScreenshot ist darauf optimiert, Screenshots zu lesen und Informationen daraus zu extrahieren; es akzeptiert auch gängige Dateiformate.

In diesem Leitfaden zeigen wir schnell, wie man IronOCR für die Texterkennung aus Bildschirmfotos verwendet und gehen dabei durch Beispiele und die Eigenschaften des Ergebnisobjekts.

Beginnen Sie noch heute mit der Verwendung von IronOCR in Ihrem Projekt mit einer kostenlosen Testversion.

Erster Schritt:
green arrow pointer

Um diese Funktion zu nutzen, müssen Sie auch die IronOcr.Extension.AdvancedScan paket.

Beispiel für das Lesen von Screenshots

Um einen Screenshot in IronOCR zu lesen, müssen wir die folgenden Schritte anwenden: Wir verwenden die Methode ReadScreenShot, die ein OcrInput als Parameter für den Input nimmt. Diese Methode ist für Screenshots besser optimiert als das Standardgegenstück Read der Bibliothek.

Bitte beachten Sie

  • Die Methode funktioniert derzeit nur für Englisch, Chinesisch, Japanisch, Koreanisch und das lateinische Alphabet.
  • Die Verwendung des erweiterten Scans im .NET-Framework setzt voraus, dass das Projekt auf einer x64-Architektur läuft.

Eingabe

Nachfolgend finden Sie unsere Eingabe für das Codebeispiel; Wir werden die Vielseitigkeit dieser Methode demonstrieren, indem wir verschiedene Schriftarten und -größen mischen.

Eingabe

Code

:path=/static-assets/ocr/content-code-examples/how-to/read-screenshot-read-screenshot.cs
using IronOcr;
using System;
using System.Linq;

// Instantiate OCR engine
var ocr = new IronTesseract();

using var inputScreenshot = new OcrInput();
inputScreenshot.LoadImage("screenshotOCR.png");

// Perform OCR
OcrPhotoResult result = ocr.ReadScreenShot(inputScreenshot);

// Output screenshot information
Console.WriteLine(result.Text);
Console.WriteLine(result.TextRegions.First().Region.X);
Console.WriteLine(result.TextRegions.Last().Region.Width);
Console.WriteLine(result.Confidence);
Imports IronOcr
Imports System
Imports System.Linq

' Instantiate OCR engine
Private ocr = New IronTesseract()

Private inputScreenshot = New OcrInput()
inputScreenshot.LoadImage("screenshotOCR.png")

' Perform OCR
Dim result As OcrPhotoResult = ocr.ReadScreenShot(inputScreenshot)

' Output screenshot information
Console.WriteLine(result.Text)
Console.WriteLine(result.TextRegions.First().Region.X)
Console.WriteLine(result.TextRegions.Last().Region.Width)
Console.WriteLine(result.Confidence)
VB   C#

Ausgabe

ausgabe

Wie Sie aus der obigen Konsolenausgabe sehen können, wurden alle Textinstanzen aus dem Screenshot extrahiert. Lassen Sie uns tiefer in die Eigenschaften von OcrPhotoResult eintauchen.

Der extrahierte Text aus der OCR-Eingabe.

Confidence: Eine "double"-Eigenschaft, die das statistische Genauigkeitsvertrauen eines Durchschnittswertes jedes Zeichens angibt, wobei eins der höchste und null der niedrigste Wert ist.

TextRegion: Ein Array von "TextRegion", das die Eigenschaft enthält, die Bereiche zurückgibt, in denen Text auf dem Screenshot gefunden wird. Standardmäßig ist jede TextRegion eine abgeleitete Rectangle-Klasse aus den IronOCR-Modellen. Es gibt die x- und y-Koordinaten sowie die Höhe und Breite des Rechtecks zurück.