Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)
Doc/BM-Grenoble/Prétraitrement des images
Introduction
Ce fichier fait parti d'un pack d'installation réparti comme suit :
- processimage-bin.jar : exécutable java ;
- pre_traitement_images_plus.py : script python utilisé pour la transformation des images.
Ce document présente l'exploitation d'un système de pré-traitement d'une liste d'image à partir des logs Rsync.
Les images pré-traitées
Pour fonctionner avec des images, une installations de Notix/bmg destinée à un large public, nécessite le pré-traitement préalable des images. Ce pré-traitement consiste à préparer à l'avance les différentes versions d'images que l'application peut offrir : miniatures, vignettes, plein format, images hidef, etc. Pour cela, il suffit de créer les images au format voulu et de les stocker dans un dossier. Les images pré-traitées doivent porter le même nom que les images sources, de même que leur organisation en dossier et sous-dossier. Par exemple, pour un dossier source :
diskE
└── FRAD064003_IR0001
└── Biarritz_1
└── 3E18351
├── FRAD064007_3E18351_0001.JPG
├── FRAD064007_3E18351_0002.JPG
└── FRAD064007_3E18351_0003.JPG
on devra avoir pour les vignettes et les miniatures :
img-preparees
├── vignette
│ └── FRAD064003_IR0001
│ └── Biarritz_1
│ └── 3E18351
│ ├── FRAD064007_3E18351_0001.JPG
│ ├── FRAD064007_3E18351_0002.JPG
│ └── FRAD064007_3E18351_0003.JPG
└── miniature
└── Biarritz_1
└── 3E18351
├── FRAD064007_3E18351_0001.JPG
├── FRAD064007_3E18351_0002.JPG
└── FRAD064007_3E18351_0003.JPG
À noter dans cet exemple :
- Chaque version d'images pré-traitées possède une arborescence identique à celle des images sources ;
- Chaque version d'images pré-traitées est contenue dans un dossier distinct dont le nom est celui de la version correspondante (miniature, vignette, etc.);
- L'ensemble des versions d'images pré-traitées est contenue dans un unique dossier, ici img-preparees.
Pré-traitement des images
Dans le cas particulier de l'application bmg/notix, initialement la totalité des images a déjà été pré-traiter. Cependant, en fonction de l’évolution du projet, des images supplémentaires s'ajoutent via le système de synchronisation Rsync. Le travail consiste à automatiser la tâche de pré-traitement des images nouvellement ajoutées.
AJLSM propose dans ce pack un utilitaire JAVA capable d'analyser les logs Rsync et d'effectuer automatiquement le pré-traitement des images transférées. C'est le fichier processImage-bin.jar.
Cet utilitaire est auto-documenté. Pour accéder à l'aide il faut le lancer avec l'option « -h » ou «
--help » :
$ java -jar processimages-bin.jar --help
usage: java -jar processimages-bin.jar --imgDir | --pDir | --rFile [options]
-h,--help Afficher l\'aide
-i,--imgDir <imgDir> Chemin absolue vers le répertoire des images originales
-p,--pDir <pDir> Chemin absolue vers le répertoire des images préparées
-r,--rFile <rFile> Chemin absolue vers le fichier de log rsync à analyser
-x,--py <arg> [optionnel] Chemin absolue vers le script python de pré-traitement (fichier pretraitement_images_plus.py)
Chemins des fichiers
Dans les logs Rsync les chemins vers les nouveaux fichiers doivent être donner relativement au répertoire des images originales (option imgDir). Pour obtenir ce comportement, il faut que Rsync soit lancé depuis le répertoire imgDir. Par exemple, si le répertoire des images originales est /home/mdia/imgdir. Le résultat dans le log Rsync est :
building file list ... done
./
cosmos/
cosmos/blue-marble-west.jpg
cosmos/cloud.jpg
cosmos/comet.jpg
Dans cette exemple le fichier à ligne 4 se trouvent sur le disque à l'emplacement « /home/mdia/imgdir/cosmos/blue-marble-west.jpg ».
Vidage des logs
= Exemple d'utilisation de l'utilitaire de pré-traitement
L’utilitaire à besoin du script « pretraitement_images_plus.py » pour fonctionner. Si ce dernier= n'est pas présent dans le même répertoire, il faut spécifier son emplacement avec le paramétre optionnel « --py ». La ligne de commande pour lancer le pré-traitement est : java -jar processimages-bin.jar \ --rFile=/home/mdia/imgdir/res-rsync.txt \ --pDir=/home/mdia/img-prepared-dir \ --imgDir=/home/mdia/imgdir \ --py=/home/mdia/projets/bin/pretraitement_images_plus.py
Remarques : L'utilitaire produit lors de son exécution des logs. Ces logs peuvent être intéressent pour suivre l’évolution de la tâche ainsi que les éventuels problèmes. On conseille de stocker ces logs en effectuant une redirection de la sortie standard vers un fichier.