Allgemeine Einführung
Es analysiert automatisch das Layout von PDF-Dokumenten, identifiziert Text, Titel, Bilder, Tabellen, Formeln und andere Elemente auf der Seite und bestimmt ihre richtige Reihenfolge. Das Tool unterstützt OCR-Funktionalität, Sie können PDF in durchsuchbaren Text scannen. Es läuft auf Docker und bietet zwei Modelle: das visuelle Modell (Vision Grid Transformer, VGT) und das LightGBM-Modell. Ersteres ist sehr genau, aber ressourcenintensiv, letzteres ist schnell und ressourcenschonend. Die aktuelle Version ist v0.0.21, kostenlos und offen auf GitHub, geeignet für Forscher, die mit PDF umgehen müssen, Archivare und so weiter.
Funktionsliste
- Automatisches Erkennen von Text, Titeln, Bildern, Tabellen, Formeln und anderen Elementen in PDF-Seiten.
- Unterstützung der OCR-Funktion zur Umwandlung gescannter PDF-Dateien in durchsuchbaren Text.
- Bestimmen Sie die richtige Lesereihenfolge der Seitenelemente.
- Es stehen zwei Analysemodi zur Verfügung: das visuelle Modell (VGT) und das LightGBM-Modell.
- Extrahieren Sie Tabellen und unterstützen Sie mehrere Formate für die Ausgabe, z. B. Markdown, LaTeX, HTML.
- Extrahiert Formeln und gibt sie standardmäßig im LaTeX-Format aus.
- Unterstützt mehrsprachige OCR, z. B. Englisch, Koreanisch usw.
- Bietet eine API-Schnittstelle für die Integration in andere Projekte.
- Unterstützt die visuelle Ausgabe und erzeugt PDFs mit Anmerkungen.
Hilfe verwenden
Einbauverfahren
Dieses Tool läuft mit Docker und die Installationsschritte sind wie folgt:
- Vorbereiten der Umgebung
Installieren Sie zunächst Docker. Rufen Sie die Docker-Website auf, um es herunterzuladen und zu installieren. Nach der Installation geben Sie in das Terminal ein:
docker --version
Wenn die Versionsnummer angezeigt wird, ist der Vorgang erfolgreich. Wenn Sie eine GPU verwenden, müssen Sie auch das NVIDIA Container Toolkit installieren, sieheInstallationsanleitung.
- Spiegel abziehen
Geben Sie den Befehl in das Terminal ein, um das Werkzeugbild zu ziehen:
- Das ist die GPU:
docker pull huridocs/pdf-document-layout-analysis:v0.0.21
- Keine GPU:
docker pull huridocs/pdf-document-layout-analysis:v0.0.21
- Operative Dienste
Starten Sie den Dienst auf zwei Arten:
- Das ist die GPU:
docker run --rm --name pdf-analysis --gpus '"device=0"' -p 5060:5060 huridocs/pdf-document-layout-analysis:v0.0.21
- Keine GPU:
docker run --rm --name pdf-analysis -p 5060:5060 huridocs/pdf-document-layout-analysis:v0.0.21
Beim Start des Dienstes wird standardmäßig der Port 5060 abgehört. Wenn der Port belegt ist, kann er auf einen anderen Port, z. B. 5061, geändert werden.
- Validierungsdienst
Öffnen Sie Ihren Browser und besuchen Siehttp://localhost:5060/info
Wenn die Versionsinformationen zurückgegeben werden, bedeutet dies, dass das Programm normal läuft.
Verwendung der wichtigsten Funktionen
Das Tool funktioniert über eine API mit den folgenden gemeinsamen Funktionen:
1. die OCR-Funktion
Um gescannte PDF-Dateien in durchsuchbaren Text umzuwandeln, können Sie OCR verwenden.
- Verfahren::
Bereiten Sie eine PDF-Datei wietest.pdf
im Terminal ausführen:
curl -X POST -F 'language=en' -F 'file=@/path/to/test.pdf' localhost:5060/ocr --output result.pdf
language=en
ist Englisch und kann ersetzt werden durchkor
(Koreanisch), usw. Die unterstützten Sprachen sind verfügbar über diecurl localhost:5060/info
Ansicht./path/to/test.pdf
ist der Dateipfad, z. B./home/user/test.pdf
.- Ausgabedatei
result.pdf
wird im aktuellen Verzeichnis gespeichert. - am Ende::
Sie erhalten eine durchsuchbare PDF-Datei mit kopierfähigem Text.
2. die Layout-Analyse
Extrahieren von Elementen aus der PDF-Datei und Analysieren des Layouts:
- Verfahren::
Laufen:
curl -X POST -F 'file=@/path/to/test.pdf' localhost:5060 --output analysis.json
- Ausgabedatei
analysis.json
Enthält Elementinformationen wie Ort, Typ (Text, Tabelle usw.). - am Ende::
In der JSON-Datei sind die Details der einzelnen Elemente aufgeführt.
3. schneller Modus
Wenn Sie eine schnellere Verarbeitung wünschen, verwenden Sie das LightGBM-Modell und fügen Sie den Parameterfast=true
::
curl -X POST -F 'file=@/path/to/test.pdf' -F 'fast=true' localhost:5060 --output fast_analysis.json
- zur Kenntnis nehmenSchnell, aber etwas weniger genau.
4. die Extraktion von Tabellen und Formeln
- Rücktrittsformular::
Geben Sie das Format an (z. B. Markdown):
curl -X POST -F 'file=@/path/to/test.pdf' -F 'extraction_format=markdown' localhost:5060 --output table.json
etw. unterstützenmarkdown
undlatex
undhtml
Format.
- Extraktionsformel::
Die Standardausgabe ist das LaTeX-Format, das direkt mit dem Befehl Layoutanalyse verwendet werden kann.
5. visuelle Ausgabe
Ich würde gerne die kommentierte PDF-Datei sehen:
curl -X POST -F 'file=@/path/to/test.pdf' localhost:5060/visualize --output visualized.pdf
- am Ende::
Die PDF-Ausgabe wird mit der Position und dem Typ jedes Elements beschriftet.
6) Hinzufügen von Sprachunterstützung
Nur wenige Sprachen werden standardmäßig unterstützt, weitere Sprachen sollen hinzugefügt werden (z. B. Chinesisch):
- Geben Sie den Container ein:
docker exec -it --user root pdf-analysis /bin/bash
- Installieren Sie Sprachpakete, z. B. Chinesisch:
apt-get install tesseract-ocr-chi-sim
- Prüfen:
curl localhost:5060/info
siehe daschi_sim
Zeigt den Erfolg an.
7. die Einstellung von Dienstleistungen
Einstellung von Dienstleistungen:
docker stop pdf-analysis
Reihenfolge der Ausgabeelemente
Die Ergebnisse der Analysen werden in einer bestimmten Reihenfolge dargestellt. Das Tool verwendet Poppler, um die anfängliche Lesereihenfolge zu bestimmen, die dann je nach Elementtyp angepasst wird:
- Die Kopfzeile befindet sich oben auf der Seite, sortiert in interner Reihenfolge.
- Gemeinsame Elemente (Text, Tabellen usw.) sind in durchschnittlicher Lesereihenfolge angeordnet.
- Die Fußzeile und die Fußnote werden zuletzt eingefügt.
- Elemente ohne Text (z. B. Bilder) werden nach der Reihenfolge des nächstgelegenen Elements mit Text geordnet.
caveat
- Hardware-VoraussetzungDas visuelle Modell erfordert einen Grafikprozessor und 5 GB Videospeicher, ohne Grafikprozessor wird es mit der CPU langsam. lightGBM ist nur für die CPU geeignet und erfordert 2 GB RAM.
- Tempo15 Seiten akademischer Arbeiten, 0,42 Sekunden/Seite im schnellen Modus, 1,75 Sekunden/Seite im VGT (GPU), 13,5 Sekunden/Seite im VGT (CPU).
- Komponenten während der Prüfung anpassenProtokoll anzeigen, wenn etwas schief läuft:
docker logs pdf-analysis
Diese Funktionen und Schritte werden Ihnen helfen, schnell loszulegen und eine Vielzahl von PDF-Anforderungen zu erfüllen.
Anwendungsszenario
- akademische Forschung
Forscher verwenden es, um Tabellen und Formeln aus Dokumenten zu extrahieren und Daten effizienter zu organisieren. - Dateiverwaltung
Archivare wandeln Scans von alten Dokumenten in durchsuchbare PDF-Dateien um, die leicht zu finden sind. - Juristische Arbeit
Anwälte analysieren Vertrags-PDFs, um Klauseln und Formulare schnell zu finden.
QA
- Gibt es eine Gebühr?
Unentgeltlich. Dies ist ein Open-Source-Tool, das auf GitHub kostenlos heruntergeladen und verwendet werden kann. - Brauche ich ein Netzwerk?
Zum Herunterladen des Bildes ist eine Internetverbindung erforderlich, danach kann es offline ausgeführt werden. - Unterstützt es Chinesisch?
Unterstützung. Die manuelle Installation von chinesischen Paketen ist erforderlich (z. B.tesseract-ocr-chi-sim
), etwas weniger effektiv als Englisch, aber brauchbar.