Manuel de l'utilisateur de pamundice(1)

NOM
pamundice – Combinaison d’une grille d’images (tuiles) en une seule image

EXEMPLE

     $ pamdice monimage.ppm -outstem=monimage_part -width=1000 -height=1000     $ pamundice monimage_part_%1d_%1a.ppm -across=10 -down=8 >monimage.ppm

    $ pamundice monimage_part_%2a -across=13 -hoverlap=9

Consulter pamdice (pamdice.html#example) pour plus d’exemples.

SYNOPSIS

pamundice

{ [-across=n]

[-down=n] , -indexfile=nom_fichier_pam }

[-hoverlap=pixels]

[-voverlap=pixels]

[-verbose]

{motif_nom_fichier_entrée, -listfile=nom_fichier_texte}

Les abréviations minimales uniques des options sont autorisées. Un double tiret au lieu d’un seul peut être utilisé. Un blanc peut être utilisé au lieu du signe égal pour séparer un nom d’option de sa valeur.

DESCRIPTION

Ce programme fait partie de Netpbm(1).

pamundice lit un groupe d’images de Netpbm en entrée et combine celles-ci sous forme d’une grille de tuiles, dans une image de sortie de la même sorte sur la sortie standard.

Les pièces peuvent facultativement se chevaucher

Les composantes de l’image ne doivent pas nécessairement être différentes. Une image d’entrée peut apparaître dans plusieurs endroits dans la grille produite.

Les images peuvent être soit dans des fichiers dont les noms indiquent leur emplacement dans l’image de sortie (par exemple, « mon_image_part_03_04 » est l’image de la troisième ligne et de la quatrième colonne — voir l’argument motif_nom_fichier_entrée), soit listées dans un fichier avec l’option listfile.

Les images d’entrée doivent avoir le même format (PAM, PPM, etc.) et le même MAXVAL et, pour PAM, doivent avoir la même profondeur et le même type de « tuple ». Toutes les images dans une rangée (ligne horizontale de tuiles) doivent avoir la même hauteur. Toutes les images dans une colonnade (colonne verticale de tuiles) doivent avoir la même largeur, mais il n’est pas nécessaire que toutes les rangées aient la même hauteur, ni que toutes les colonnes aient la même largeur.

pamdice(1) est l’inverse de pamundice. pamundice peut être utilisé pour réassembler une image découpée par pamdice. pamdice peut être utilisé pour recréer les tuiles d’une image créée par pamundice, mais pour réaliser cela, les rangées originelles doivent avoir la même hauteur sauf celle du bas et les colonnes doivent avoir la même largeur sauf celle de droite.

Cet outil peut être utilisé pour traiter une image par morceaux lorsque l’image entière est trop volumineuse pour être traitée. Par exemple, pour une image si volumineuse qu’un éditeur d'images ne peut pas la charger entièrement en mémoire ou la traite très lentement, il est possible de la diviser en morceaux plus petits avec pamdice, les modifier un par un, puis les réassembler avec pamundice.

Bien sûr, pamundice peut être utilisé pour composer diverses sortes d’images de damier. Par exemple, un programme peut être écrit pour le rendu d’un damier en créant une image de chaque case, puis en utilisant pamundice pour les assembler sous forme d’un tablier de jeu.

Une autre façon de joindre des images dans une seule direction (c’est-à-dire une simple rangée ou une colonne unique) est d’utiliser pamcat(1). Cette commande fournit une autre façon d’identifier les images d’entrée : celles-ci peuvent être fournies séquentiellement sur l’entrée standard ou peuvent être listées par leurs noms comme arguments de la ligne de commande.

Pour raccorder des photographies une à une, pnmstitch(1) est préférable à pamundice, car il détermine le chevauchement des photographies même si elles ne se chevauchent pas exactement, verticalement ou horizontalement.

pnmtile(1) permet de créer une image de la même tuile répétée dans une grille.

pnmindex(1) réalise une opération similaire à pamundice : il combine un ensemble de petites images d’une grille dans une image volumineuse. Mais son but est de créer une image d’un index des images d’entrée. Donc il laisse des espaces entre elles et peut par exemple avoir des étiquettes pour elles.

ARGUMENTS

À moins d’utiliser l’option -listfile, il y a un seul argument qui n’est pas celui d’une option et qui est obligatoire : motif_nom_fichier_entrée. Il indique à pamundice les fichiers qui contiennent les tuiles d’entrée.

pamundice lit les images d’entrée à partir de fichiers dont le nom comporte un motif indiquant leurs positions dans l’image finale. Par exemple, tuile_00_05.ppm est la sixième tuile présente dans la première rangée, tandis que tuile_04_01 est la deuxième tuile présente dans la cinquième rangée.

Il faut faire attention à l’option -indexfile qui peut réarranger les tuiles de façon que le fichier dont le nom indique la position de sixième tuile sur la première rangée soit en fait placé par pamundice dans la sortie à n’importe quelle position arbitraire.

Vous ne pouvez pas fournir n’importe quelle donnée sur l’entrée standard et les fichiers doivent être d’un type que pamundice peut fermer et réouvrir, puis lire la même image une seconde fois (par exemple, un fichier normal, mais probablement pas un tube nommé).

motif_nom_fichier_entrée est un motif de style « printf » (voir la sous-routine printf(3) de la bibliothèque standard C). Pour l’exemple ci-dessus c’est tuile_%2d_%2a.ppm. Les spécificateurs de conversion possibles sont :

d   « down » : le numéro de rangée (ligne), en commençant à 0.

a   « across » : le numéro dans la colonnade (colonne), en commençant à 0.

%   le caractère de pourcentage (%).

Le nombre entre le caractère % et le spécificateur de conversion est la précision et est obligatoire. Il indique combien de caractères dans le nom de fichier sont décrits par cette conversion. Les numéros de rangée et de colonne sont complétés par des zéros préfixés si nécessaire.

Ainsi l’exemple tuile_%2d_%2a.ppm signifie que pour obtenir le nom du fichier qui contient la tuile de la rangée 0 et de la colonne 5, il faut :

–   remplacer le « %2d » par le numéro de la rangée sous forme d’un nombre décimal de deux chiffres : « 00 »

–   remplacer le « %2a » par le numéro de colonne sous forme d’un nombre décimal de deux chiffres : « 05 »

Notez que ce modèle particulier décrit les noms de fichier que pamdice produit, sauf que la précision peut être plus ou moins grande (voir l’option -numberwidth de pamdice).

Remarquez qu’un modèle ne contenant ni %d ni %a effectue une réplication.

OPTIONS

En plus des options communes à tous les programmes basés sur libnetpbm (tout particulièrement -quiet, consulter Common Options (index.html#commonoptions) ), pamundice reconnait les options de ligne de commande suivantes :

-across=N
    Le nombre de tuiles à travers la grille, c’est-à-dire le nombre de tuiles de chaque rangée, ou le nombre de colonnes.

    Cette option ne peut pas être indiquée simultanément avec l’option -indexfile.

    La valeur par défaut est 1.

-down=N
    Le nombre de tuiles de haut en bas dans la grille, c’est-à-dire le nombre de tuiles dans chaque colonne, ou le nombre de rangées.

    Cette option ne peut pas être indiquée simultanément avec l’option -indexfile.

    La valeur par défaut est 1.

-hoverlap=pixels
    Le nombre de pixels de chevauchement horizontal des tuiles. pamundice arrange cela de manière égale pour tous les bords droits des tuiles avant de réaliser la jonction avec les images adjacentes de droite. Les tuiles le long du bord droit demeurent entières.

    Il ne peut y avoir d’image d’entrée plus petite que cette valeur.

    Notez que cela annule l’effet de la même option -hoverlap de pamdice.

    La valeur par défaut est zéro — aucun chevauchement.

-voverlap=pixels
    Cette option est analogue à l’option -hoverlap, mais pamundice arrange le bord bas de chaque image avant de réaliser la jonction avec celle du dessous.

-listfile=nom_fichier_texte
    Cette option indique un fichier contenant tous les noms des fichiers d’entrée. C’est une autre façon d’indiquer un modèle de noms de fichier comme argument.

    Le fichier indiqué contient des noms de fichier, un par ligne. Chaque fichier contient l’image d’une tuile, classée par rangée, du haut vers le bas et de gauche à droite. Ainsi, le premier fichier est celui de la tuile en haut et à gauche, le second celui de la tuile suivante à droite, etc. Le nombre de lignes doit être égal au nombre de tuiles de l’entrée, le produit des valeurs des options -across et -down.

    Les noms de fichier ne signifient rien pour pamundice. Le même fichier peut être listé plusieurs fois pour avoir dans la sortie des tuiles identiques.

    Pour créer le fichier de tuiles avec pamdice, l’option -listfile de pamdice peut être utilisée pour produire un fichier de liste adapté au réassemblage des tuiles dans les mêmes positions qu’elles avaient dans la grande image originale.

    Cette option ne peut pas être indiquée simultanément avec l’option -indexfile.

    Cette option est apparue dans Netpbm 10.90 (mars 2020).

-indexfile=nom_fichier_pam
    Cette option spécifie un nom de fichier contenant une image PAM qui indique quels fichiers de tuile doivent être placés à quel endroit dans l’assemblage produit. Consulter l’option -indexfile de pamfile pour plus de détails sur son format.

    Un moyen typique de générer une image d’index pour une utilisation avec pamundice est d’utiliser l’option -indexfile de pamdice, puis éventuellement manipuler l’image d’index résultante avec d’autres outils de Netpbm.

    Bien que les valeurs de composantes de l’image d’index soient définies comme celles des positions de rangée et de colonne dans une grande image d'origine, et qu'elles soient donc décrites en ces termes, en pratique pamundice n'attribue aucune signification à ces nombres — il s'agit simplement de substitutions pour deux variables dans le modèle de nom de fichier d'entrée (fourni en tant qu’argument du programme).

    La valeur MAXVAL de l’image d’index n’est pas pertinente, sauf qu’aucune composante de l’image d’index ne peut lui être supérieure.

    La profondeur du fichier d'index doit être d’au moins deux (rang et colonne), mais le programme ignore tout plan supplémentaire.

    Le programme ignore le type « tuple ».

    Si cette option n’est pas spécifiée, la position d’une tuile dans la sortie est fournie directement par les parties rangée et colonne du nom de fichier de la tuile ou, si l’option -listfile est fournie, selon l’ordre dans lequel la tuile est listée dans le fichier de liste.

    Simultanément avec l’option -listfile, il n’est pas possible d’indiquer les options -down ou -across.

    Cette option est apparue dans Netpbm 11.10 (mars 2025).

-verbose
    Cette option affiche des informations de traitement sur la sortie standard d’erreur.

Utilisation

Voici un exemple d’utilisation d’un fichier de liste :

         Exemple d’utilisation de -listfile :

    pamdice -width=100 -height=100 -outstem=img_part -listfile=nom_fichier_texte \         img.ppm     pamundice -listfile=nom_fichier_texte -across=6 -down=4 > img_copie.ppm

Remarquez que dans l’exemple ci-dessus, il faut disposer de quelque façon 6 colonnes et 4 rangées à partir de pamdice et ensuite spécifier les options -across et -down correctes pour pamundice. Une légère erreur ruinera le processus. Il est préférable d’utiliser l’option -indexfile :

       pamdice -width=100 -height=100 -outstem=img_part \     	  -numberwidth=3 -indexfile=index.pam img.pam     pamundice -indexfile=index.pam img_part_%3d_%3a.pam > img_copie.pam

Voici un exemple de retournement d’une grande image. pamflip(1) nécessite souvent que l’image soit entièrement en mémoire réelle, ce qui peut être impossible pour une image très volumineuse. Cette méthode utilise de petites parties et nécessite moins de mémoire :

       Exemple de -indexfile avec une opération pamflip :

    pamdice -width=2500 -height=2500 -outstem=tuile \     	  -numberwidth=3 -indexfile=index.pam grandeImage.ppm

    # retournement de chaque tuile     for tuile in tuile_???_???.ppm     do         pamflip -r180 $tuile > ${utile%.ppm}.retournée.ppm     done

    # retournement du fichier d’index – appliquer simplement la même opération     pamflip -r180 index.pam > index_retourné.pam

    pamundice -indexfile=index_retourné.pam tuile_%3d_%3a.retournée.ppm \         > grandeImage_retournée.ppm

HISTORIQUE

pamundice est apparu dans Netpbm 10.39 (juin 2007). Auparavant, pamcat(1) était le meilleur substitut.

VOIR AUSSI
pamdice(1), pamcat(1), pnmindex(1), pnmtile(1), pnmtile(1), pnm(1), pam(1)

SOURCE DU DOCUMENT
Cette page de manuel a été générée par l'outil « makeman » de Netpbm depuis une source HTML. La documentation principale est à

    http://netpbm.sourceforge.net/doc/pamundice.html

TRADUCTION
La traduction française de cette page de manuel a été créée par Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.