Hallo,
Da ich kein erfahrener Python-Programmierer bin, bitte ich erfahrenere Kollegen um Unterstützung und Rat. Das Ergebnis könnte eine wertvolle Ergänzung für den Marktplatz sein, die vielen Kunden in der Pharmabranche und möglicherweise auch in anderen Branchen zugutekommt.
Hintergrund:
Viele Unternehmen verwenden Verfahren, bei denen Mitarbeiter handschriftliche Zahlen und Kommentare auf ein vordefiniertes und strukturiertes Formular eintragen, das anschließend eingescannt und als PDF gespeichert wird. Ein Beispiel ist beigefügt. Diese Eingaben müssen extrahiert und analysiert werden.
Das Problem besteht darin, dass das gescannte Dokument als PDF-Bild vorliegt und nicht über den PDF-Importassistenten importiert werden kann. Zudem ist der handschriftliche Code wahrscheinlich schwer zu entziffern. Aktuell müssen viele Pharmaunternehmen diese Daten manuell eingeben, was mitunter zwei Stunden dauert und zwei- bis fünfmal pro Woche wiederholt werden muss. Eine Möglichkeit, zumindest einen Teil der Informationen zu automatisieren, wäre für sie von großem Nutzen.
Nach einiger Recherche konnte man mit Python die Bilder aus der PDF-Datei extrahieren und anschließend mithilfe bestimmter Pakete den Text aus den Bildern extrahieren. Hier ist ein Prozess, den ich dafür gefunden habe.
- Installieren Sie pytesseract (OCR-Engine) und pdf2image (zum Konvertieren von PDF-Seiten in Bilder).
- Arbeitsablauf:
- PDF-Seiten in Bilder umwandeln.
- Führe eine OCR-Texterkennung auf jedem Bild mit pytesseract durch.
- Den extrahierten Text in einer Datei speichern oder weiterverarbeiten.
Hier benötige ich etwas Hilfe/Unterstützung. Ziel ist es, das beigefügte Dokument als Machbarkeitsnachweis zu nutzen. Sollte das funktionieren, könnten wir ein Add-on entwickeln und es im Marketplace anbieten.
Ich wette, das wäre eine große Erleichterung für viele Unternehmen und würde sie noch stärker an JMP binden.
Irgendwelche Freiwilligen?
@Paul_Nelson
PS: (vom Copiloten)
Nachfolgend finden Sie ein vollständiges Python-Skript, das ein gescanntes PDF mithilfe von pdf2image und Pytesserakt in Text umwandelt:
Python
from pdf2image import convert_from_path
import pytesseract
# Pfad zu Ihrer gescannten PDF-Datei
pdf_path = 'scanned_document.pdf'
# PDF-Seiten in Bilder umwandeln
Seiten = convert_from_path(pdf_path)
# Initialisiere eine Variable zum Speichern des extrahierten Textes
extrahierter_Text = ""
# Jede Seite durchlaufen und OCR anwenden
for page_number, page in enumerate(pages, start=1):
text = pytesseract.image_to_string(page)
extrahierter_text += f"\n--- Seite {page_number} ---\n{text}\n"
# Den extrahierten Text in einer Datei speichern
with open('extracted_text.txt', 'w', encoding='utf-8') as f:
f.write(extrahierter_Text)
print("OCR-Extraktion abgeschlossen. Text in extracted_text.txt gespeichert")
Ich glaube, pytesseract funktioniert nur mit den getippten Teilen des PDFs. Für die Handschrifterkennung benötigen Sie etwas anderes. Vielleicht könnte dieser Link ein Ausgangspunkt sein?