Miniwark
Pour ma page perso voir : Utilisateur Miniwark sur Wikipédia
Informations Babel sur l’utilisateur | ||||
---|---|---|---|---|
| ||||
Utilisateurs par langue |
Étapes pour créer un DjVu sous Linux depuis Gallica
modifierRésumé des étapes :
- Importer les images depuis Gallica
- Améliorer la qualité de la numérisation
- Générer le fichier DjVu
- Ajouter la couche OCR
1. Importer depuis une bibliothèque
modifier1.1 Importer depuis Gallica
modifier- Créer un dossier pour le livre à télécharger. Par exemple
/Auteur/Titre
- modifier le script bash suivant pour importer les images en haute résolution depuis Gallica.
- Enregistrer le script dans le dossier crée. Par exemple
/Auteur/Livre/Gallica.sh
- Lancer le script en ligne de commande depuis
/Auteur/Titre
##!/bin/bash #lastpage="dernière page à télécharger" lastpage="608" for i in $(seq 1 $lastpage); do #p="http://gallica.bnf.fr/ark:/12148/identifiant du livre/f$i.highres" p="http://gallica.bnf.fr/ark:/12148/bpt6k5510856m/f$i.highres" # changer .png en .jpg pour les images en couleur wget -U DummyBrowser/0.1 $p -O page_`printf %04d $i`.png; done
Il faut modifier : le nombre de page et l'ID Gallica et éventuellement l’extension des images.
Script d'origine : Wikisource:Gallica#Utilisation_d’un_script
La plupart des images de Gallica sont au format PNG, mais certains livres en couleur, voir certaines pages uniquement sont en JPEG. Après l'import il convient donc de vérifier si les images on bien toutes un aperçu dans le gestionnaire de fichier. Si les images n'ont pas d’aperçu il est probable que :
- l'image ne se soit pas téléchargée (récupérer alors les images manquantes)
- les images sont en format JPG (changer l’extension)
Une fois le script lancé vous devez avoir une série d'images du genre page_000X.png dans votre dossier /Auteur/Titre
.
1.2 Importer depuis Hathitrust
modifierLa procédure par script est pratiquement identique à celle de Gallica.
##!/bin/bash #book="ID du livre à télécharger" book="mdp.39015004271204" #lastpage="dernière page à télécharger" lastpage="616" for i in $(seq 1 $lastpage); do p="http://babel.hathitrust.org/cgi/imgsrv/image?id=$book;seq=$i" wget -U DummyBrowser/0.1 $p -O page_`printf %04d $i`.jp2; sleep 2 done
Hatitrust utilise le format .jp2. Le script inclus une attente de 2 secondes après chaque téléchargement, pour limiter le risque de blocage de l'import.
Il faut ensuite convertir les fichier .jp2 en un autre format car ScanTaillor ne les supporte pas. pas exemple pour tout transformer en .jpg
mogrify -format jpg *.jp2
2. Améliorer la qualité de la numérisation
modifierAfin, de supprimer les artefacts de numérisation et en particulier, les bords de livre, les rotations et les watermarks de Gallica/Google, il est préférable de faire un traitement des images obtenues à l'aide de Scan Tailor. Attention ! Éviter cette étape si la taille des polices est petites car le travail risque de dégrader l'OCR final.
- Lors de l'import si les DPIs ne correspondent pas choisir 600x600 pour toutes les tailles d'images
- vérifier minutieusement les sélection de contenu pour toutes les pages (sélection trop grandes ou contenu manquant)
- mettre en en place les marges en essayant d'obtenir une marge à peu près équivalente au livre source
- centrer les pages, sauf en débuts et fin de chapitre (souvent alignés en bas et en haut respectivement dans les livres).
- ajouter éventuellement des masques blancs
- éviter le dewarping au maximum, sauf pour les pages très déformées (et uniquement en manuel). Cela d'autant plus que la police est petite (OCR souvent plus difficile)
Pour la sortie finale choisir :
- 600 dpi
- couleur / niveau de gris de préférence (surtout si la police est petite et/ou si le livre contient des illustrations)
- marges blanches
- ne pas activer "réglage de l'éclairage"
Une fois le traitement terminé Scan Taillor crée autant de nouvelles images qu'au départ au format TIFF dans un sous-dossier /Auteur/Titre/out
.
3. Générer le fichier DjVu
modifier3.1 Solution 1 : script (recommandée)
modifierPlacer ce script dans le dossier /Auteur/Titre/out
puis l’exécuter
#!/bin/bash # convert a bunch of tiff grey scale files to a djvu file with c44 for i in *.tif; do j=`basename $i .tif` # convert each tif file to pgm (grey scale) convert $i $j.pgm # convert the pgm file to djvu c44 -slice 74,87,97 $j.pgm echo "convert $i to $j.djvu done" done; # add the djvu page to the final djvu file djvm -c ../book.djvu *.djvu
Ce script convertit les fichiers TIFF en fichiers PGM puis crée un fichier DjVu à partir des images en couleur / niveau de gris générée précédemment à l'aide de Scan Taillor en utilisant c44. (ce script ne convient pas pour les images en noir et blanc)
Cela créera un fichier book.djvu
dans /Auteur/Titre/
.
Script d'origine : s:en:Help:DjVu files#Method 1 - page at a time with DjVuLibre
3.2 Solution 2 : djvubind
modifierLa deuxième solution, si les images sont de bonne qualitée, est d'utiliser djvubind. L'avantage c’est que djvubind crée directement le fichier DjVu final tout en réalisant l'OCR (à l'aide de Tesseract ou Cuneiform). Cependant djvubind utilise minidjvu qui à tendance à diminuer la qualité des textes surtout si la police d'origine est petite. Si il a trop d’erreur, d'OCR, utiliser la solution 1.
Si djvubind ne génère pas d'alertes OCR alors le travail est terminé.
Exemple de commande avec djvubind
djvubind -v --tesseract-option="-l fra" ~/Wikisource/Auteur/Titre/out
Cela créera un fichier book.djvu
dans /Auteur/Titre/
.
4. Ajouter la couche OCR
modifierÀ ce stade nous avons un fichier DjVu sans couche OCR et contenant des images en couleur ou niveau de gris (sauf si djvubind donne un résultat satisfaisant). Il faut à présent ajouter cet OCR à l'aide de Tesseract.
Pour cela récupérer et enregistrer le script Python depuis s:en:User:Inductiveload/Scripts/DJVU_OCR dans /Auteur/Titre/
.
et lancer la commande :
python ocr-djvu-tesseract.py -i book.djvu -u -d -l fra
Compter environ 1 heure pour 100 pages d'attente.