Heim >Backend-Entwicklung >Python-Tutorial >So identifizieren Sie Schriftarten in Bildern mit Python

So identifizieren Sie Schriftarten in Bildern mit Python

王林
王林Original
2023-08-26 09:39:314130Durchsuche

So identifizieren Sie Schriftarten in Bildern mit Python

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.

  1. 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.

  2. Bildvorverarbeitung
    Vor der Schrifterkennung müssen wir das Bild etwas vorverarbeiten, um die Genauigkeit der Schrifterkennung zu verbessern.

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.

  1. 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.

  2. 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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn