So verwenden Sie Python, um eine Schrifterkennung für Bilder durchzuführen
Die Schrifterkennung ist eine Technologie, die Text in Bildern in bearbeitbaren Text umwandelt. Es ist in vielen Anwendungsszenarien sehr praktisch, z. B. bei der automatisierten Dokumentenverarbeitung, Textextraktion, OCR usw. In diesem Artikel wird erläutert, wie Sie mithilfe von Python Schriftarten auf Bildern identifizieren und entsprechende Codebeispiele bereitstellen.
Vorbereitung
Zuerst müssen wir einige notwendige Python-Bibliotheken installieren. Geben Sie zum Installieren den folgenden Befehl in die Befehlszeile ein:
pip install pytesseract pip install pillow
Unter anderem ist Pytesseract eine Python-Bibliothek, die auf der Tesseract-OCR-Engine basiert und zum Identifizieren von Text in Bildern verwendet wird. Pillow ist eine häufig verwendete Bildverarbeitungsbibliothek in Python Bilder verarbeiten.
Lesen Sie zunächst das Bild und führen Sie die Graustufenverarbeitung durch:
from PIL import Image image = Image.open('image.jpg') gray_image = image.convert('L')
Konvertieren Sie das Bild in Graustufen, da im Graustufenbild der Kontrast zwischen Text und Hintergrund deutlicher ist, was zur Verbesserung der Erkennungsgenauigkeit beiträgt.
Dann können wir das Bild binarisieren, das heißt, den Text im Bild in Schwarz und den Hintergrund in Weiß umwandeln.
threshold = 150 binary_image = gray_image.point(lambda p: p > threshold and 255)
Der Schwellenwert ist hier ein Schwellenwert, der entsprechend der Helligkeit des Bildes angepasst wird.
Als nächstes können wir eine Rauschreduzierungsverarbeitung am Bild durchführen, um störendes Rauschen zu entfernen.
from PIL import ImageFilter denoised_image = binary_image.filter(ImageFilter.MinFilter)
MinFilter ist ein Minimalwertfilter, der das Bildrauschen glätten kann.
Schließlich können wir das vorverarbeitete Bild speichern und anzeigen:
denoised_image.save('processed_image.jpg') denoised_image.show()
Die oben genannten Schritte sind die Schritte der Bildvorverarbeitung. Wir können das vorverarbeitete Bild zur Textextraktion an die Schriftartenerkennungs-Engine senden.
Schrifterkennung
Die Schriftarterkennung ist mit der Pytesseract-Bibliothek sehr einfach. Wir müssen nur das verarbeitete Bild als Eingabe verwenden und die entsprechende Funktion aufrufen.
import pytesseract text = pytesseract.image_to_string(denoised_image, lang='eng') print(text)
Unter diesen ist denoised_image das im vorherigen Schritt verarbeitete Bild, und der Parameter lang stellt die erkannte Textsprache dar, die standardmäßig Englisch ist.
Vollständiges Codebeispiel
Das Folgende ist ein vollständiges Python-Codebeispiel für die Schrifterkennung auf Bildern:
from PIL import Image, ImageFilter import pytesseract # 图片预处理 image = Image.open('image.jpg') gray_image = image.convert('L') threshold = 150 binary_image = gray_image.point(lambda p: p > threshold and 255) denoised_image = binary_image.filter(ImageFilter.MinFilter) denoised_image.save('processed_image.jpg') denoised_image.show() # 字体识别 text = pytesseract.image_to_string(denoised_image, lang='eng') print(text)
Zusammenfassung
Dieser Artikel stellt die Verwendung von Python für die Schrifterkennung auf Bildern vor und stellt das entsprechende Codebeispiel bereit. Durch Vorverarbeitung und Aufruf der Pytesseract-Bibliothek können wir den Text einfach und schnell aus dem Bild extrahieren und eine anschließende Textverarbeitung durchführen. Die Schrifterkennung hat breite Anwendungsaussichten in praktischen Anwendungen. Ich hoffe, dass die Einführung in diesem Artikel für die Leser hilfreich sein wird.
Das obige ist der detaillierte Inhalt vonSo identifizieren Sie Schriftarten in Bildern mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!