PDF-Extract-Kit : Extraire la structure complexe du contenu PDF de l'outil open-source
Introduction générale
PDF-Extract-Kit est un projet open source développé par l'équipe d'OpenDataLab, qui se concentre sur l'extraction efficace d'un contenu de haute qualité à partir de documents PDF complexes et diversifiés. Il intègre une technologie avancée d'analyse syntaxique des documents, prend en charge la détection de la mise en page, la reconnaissance des formules, l'extraction des tableaux, l'OCR et d'autres fonctions, et s'applique aux articles universitaires, aux rapports de recherche, aux documents financiers et à d'autres scénarios. PDF-Extract-Kit fournit des références d'évaluation complètes pour aider les utilisateurs à choisir le modèle le plus approprié, tout en étant constamment mis à jour et optimisé, comme l'ajout récent de DocLayout-YOLO et StructTable plus rapides. -Les développeurs et les chercheurs peuvent ainsi obtenir une extraction efficace du contenu des documents.

Liste des fonctions
- Détection de la mise en pageReconnaître les mises en page dans les PDF, y compris les zones telles que les titres, les paragraphes, les images et les tableaux, avec la prise en charge de modèles efficaces tels que DocLayout-YOLO.
- reconnaissance de la formuleLaTeX : extrait et analyse les formules mathématiques des documents et les convertit au format LaTeX, en s'appuyant sur des technologies avancées telles que UniMERNet.
- Extraction du formulaireLaTeX : permet de reconnaître et d'extraire le contenu de tableaux complexes, avec des sorties aux formats LaTeX, HTML et Markdown.
- Traitement OCRLe logiciel PaddleOCR permet de convertir du texte provenant de documents ou d'images numérisés en texte éditable grâce à des technologies telles que PaddleOCR.
- Configuration modulaireLe système de gestion de l'information de l'Union européenne (UE) : Il fournit des profils flexibles qui permettent aux utilisateurs de combiner différents modèles et de créer rapidement des applications.
- Évaluation du contenuLes utilisateurs peuvent ainsi évaluer l'efficacité de différents modèles d'analyse de fichiers PDF.
- Extraction d'images et de textesLes logiciels d'extraction d'images à partir de fichiers PDF et de reconnaissance de leur contenu textuel.
Utiliser l'aide
Processus d'installation
PDF-Extract-Kit est compatible avec de nombreux systèmes d'exploitation (par exemple Ubuntu, Windows ou macOS). Voici les étapes détaillées de l'installation (Ubuntu 20.04 par exemple) :
1. préparation à l'environnement
- Assurez-vous que Python 3.10 est installé sur votre système :
sudo apt update sudo apt install python3.10 python3.10-dev python3-pip
- Créer et activer un environnement virtuel :
conda create -n pdf-extract-kit python=3.10 conda activate pdf-extract-kit
2. installation des dépendances
- Cloner le dépôt de code :
git clone https://github.com/opendatalab/PDF-Extract-Kit.git cd PDF-Extract-Kit
- Installer les dépendances principales (disponibles s'il n'y a pas de GPU)
requirements-cpu.txt
) :pip install -r requirements.txt
prendre noteSi vous rencontrez
doclayout-yolo
L'installation a échoué, vous pouvez l'installer manuellement :pip3 install doclayout-yolo==0.0.2 --extra-index-url=https://pypi.org/simple
3. téléchargement des poids du modèle
- Reportez-vous au didacticiel officiel pour télécharger les fichiers du modèle (téléchargement complet ou partiel possible) :
- Téléchargements automatisés à l'aide de scripts Python :
python scripts/download_models_hf.py
- Ou téléchargez-la manuellement à partir de Hugging Face :
git lfs install git clone https://huggingface.co/opendatalab/PDF-Extract-Kit-1.0
- Téléchargements automatisés à l'aide de scripts Python :
- Une fois le téléchargement terminé, placez les fichiers du modèle dans le chemin spécifié dans le répertoire du projet (voir la section
configs/model_configs.yaml
).
4. vérification de l'installation
- Exécutez l'exemple de script pour tester le fonctionnement de l'environnement :
python pdf_extract.py --pdf assets/examples/example.pdf
Le résultat sera enregistré dans le fichier
outputs
dossier.
Fonction Opération Déroulement
Détection de la mise en page
- Préparation des fichiers PDF: Placez le PDF à traiter dans le répertoire du projet (par ex.
assets/examples/
). - Inspection du plan de roulement: :
- modifications
configs/layout_detection.yaml
Le chemin d'entrée dans lepdf_path: "assets/examples/example.pdf" output_dir: "outputs/layout_detection"
- Exécuter la commande :
python scripts/layout_detection.py --config=configs/layout_detection.yaml
- modifications
- Voir les résultats: en
outputs/layout_detection
et génère des images et des fichiers JSON avec les zones de mise en page étiquetées.
reconnaissance de la formule
- Exécuter l'extraction de la formule: :
- Utiliser la configuration par défaut :
python pdf_extract.py --pdf your_file.pdf --render
--render
rend la formule sous forme d'image pour faciliter la vérification.
- Utiliser la configuration par défaut :
- Voir la sortieLes formules sont stockées dans la sortie JSON au format LaTeX et peuvent être utilisées directement dans la rédaction d'un travail universitaire ou dans un traitement ultérieur.
Extraction du formulaire
- Identification du formulaire d'exécution: :
- Assurez-vous qu'il a été téléchargé
StructTable-InternVL2-1B
Modèles. - Effectuer l'extraction complète :
python pdf_extract.py --pdf your_file.pdf
- Assurez-vous qu'il a été téléchargé
- Sélection du format de sortie: :
- Modifier le fichier de configuration
configs/model_configs.yaml
Paramètrestable_format
en raison delatex
,html
peut-êtremarkdown
.
- Modifier le fichier de configuration
- Vue des résultatsLe contenu du formulaire sera enregistré dans le répertoire de sortie dans le format spécifié.
Traitement OCR
- Traitement des PDF numérisés: :
- Pour les PDF graphiques, assurez-vous que l'OCR est activé :
python pdf_extract.py --pdf scan_file.pdf --vis
--vis
Les paramètres génèrent des résultats de visualisation, en annotant les zones du texte reconnu.
- Pour les PDF graphiques, assurez-vous que l'OCR est activé :
- Vérifier la sortieLe contenu du texte est sauvegardé dans un format modifiable et les résultats de la reconnaissance image-texte sont visibles d'un seul coup d'œil.
Fonction en vedette Fonctionnement
Configuration modulaire
- compilateur
configs/model_configs.yaml
, en ajustant les paramètres :img_size
Résolution de l'image.conf_thres
: Seuils de confiance.device
: Sélectioncuda
(GPU) oucpu
.
- Exemple :
model_args: img_size: 1024 conf_thres: 0.5 device: "cuda"
Optimisation des performances
- Le traitement par lots peut être activé pour les appareils de grande capacité (≥16 Go de mémoire vidéo) :
python pdf_extract.py --pdf your_file.pdf --batch-size 128
- Augmentation de la vitesse d'analyse 50% ou plus, adaptée au traitement par lots.
Prise en charge multilingue
- mettre en place
lang
en raison deauto
Le modèle d'OCR est utilisé pour reconnaître automatiquement la langue du document et sélectionner le modèle d'OCR approprié :ocr_args: lang: "auto"
mise en garde
- exigences en matière de matérielLes GPU (par exemple les cartes NVIDIA) peuvent augmenter de manière significative les vitesses de traitement et il est recommandé d'avoir ≥8GB de mémoire vidéo.
- problèmes courants: :
- Si l'on vous demande d'indiquer qu'il manque un
cv2
La course à piedpip install opencv-python
. - Si le téléchargement du modèle est incomplet, vérifiez le réseau ou changez la méthode de téléchargement.
- Si l'on vous demande d'indiquer qu'il manque un
- Soutien communautaireSi vous avez des questions, posez-les dans les forums Discussions ou Issues de GitHub.
Grâce aux étapes ci-dessus, les utilisateurs peuvent facilement démarrer avec PDF-Extract-Kit et réaliser efficacement l'extraction de contenus PDF complexes.
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...