Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
script qui fusionne de 2 images
Envoyé par: gnunix

bonjour a tous,

je cherche a faire un script qui fusionne de 2 images en .pgm

comment, a partir d'une image pgm, je peux obtenir cela?

P2
# test.pgm
24 7
15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 3 3 3 3 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 15 15 15 0
0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 15 0
0 3 3 3 0 0 0 7 7 7 0 0 0 11 11 11 0 0 0 15 15 15 15 0
0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 0 0
0 3 0 0 0 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0



Ensuite je pense qu'il faut extraire un a un les informations sur les pixels de chacune des deux images, puis les additionner mais etant debutant je suis un peu perdu!! ...

merci de votre aide winking smiley


Poste le Thursday 27 April 2006 00:27:38
Répondre     Citer    
Re: script qui fusionne de 2 images
Envoyé par: nicola

Avec la boîte à outils ImageMagick ?

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-

Poste le Thursday 27 April 2006 06:45:13
Répondre     Citer    
Re: script qui fusionne de 2 images
Envoyé par: Sve@r

Citation
gnunix
bonjour a tous,

je cherche a faire un script qui fusionne de 2
images en .pgm

comment, a partir d'une image pgm, je peux obtenir
cela?

P2
# test.pgm
24 7
15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 3 3 3 3 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 15 15
15 0
0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 15 0

0 3 3 3 0 0 0 7 7 7 0 0 0 11 11 11 0 0 0 15 15 15
15 0
0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 0 0

0 3 0 0 0 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 0 0 0
0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0



Ensuite je pense qu'il faut extraire un a un les
informations sur les pixels de chacune des deux
images, puis les additionner mais etant debutant
je suis un peu perdu!! ...

merci de votre aide winking smiley

Il ne te faut pas additionner les pixel mais faire un "ou" sur chaque bit des deux pixels.
Ex:
- pixel image1 vaut 5 soit "0101"
- pixel image2 vaut 6 soit "0110"
La fusion des deux pixels doit se faire sur chaque bit et te donner "0111" soit 7. Tu peux pas le faire en script. il te faut un langage comme le C qui te permet de manipuler les bits.

Maintenant, je te conseille de te documenter sur le format "pgm" car dans le fichier tu as des valeurs qui ne sont pas du pixel. Ces valeurs ne doivent donc pas être fusionnées.
J'ai trouvé ces deux liens qui semblent intéressants
[www.enseignement.polytechnique.fr]
[www.enseignement.polytechnique.fr]

L'homme qui murmurait à l'oreille des pingouins
[fr.lang.free.fr]

Poste le Thursday 27 April 2006 11:07:19
Répondre     Citer    
Re: script qui fusionne de 2 images
Envoyé par: gnunix

pour la fusion des 2 images, je dois le faire en faisant un script.

L'idée est plutôt d'utiliser des fonctions pour extraire un a un les informations sur les pixels de chacune des deux images, puis les additionner pour former l'image destination.
ca, c'est ce dont je suis sur.

Ensuite pour la realisation du script ca se complique.
j'ai beau chercher des informations sur les images pgm et les scripts, je ne trouve rien qui me permet d'extraire des informations a propos des pixels.

j'ai remarqué quand ouvrant une image pgm avec un editeur de texte, on se retrouvait avec cela
P2
# test.pgm
24 7
15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 3 3 3 3 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 15 15
15 0
0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0
je me demandais si je pouvais ouvrir une image en mode texte dans un script? et ainsi je peux enregistrer le fichier grace a "cat"... puis d'extraire un à un les données du fichier pour les additionner avec l'autre et former l'image finale.
C'est sur cette methode que je reflechis mais si vous avez d'autres solutions je serais ravi !! ;-)

merci



Poste le Thursday 27 April 2006 13:52:33
Répondre     Citer    
Re: script qui fusionne de 2 images
Envoyé par: Sve@r

Citation
gnunix
pour la fusion des 2 images, je dois le faire en
faisant un script.

L'idée est plutôt d'utiliser des fonctions pour
extraire un a un les informations sur les pixels
de chacune des deux images, puis les additionner
pour former l'image destination.
ca, c'est ce dont je suis sur.

Ensuite pour la realisation du script ca se
complique.
j'ai beau chercher des informations sur les images
pgm et les scripts, je ne trouve rien qui me
permet d'extraire des informations a propos des
pixels.

j'ai remarqué quand ouvrant une image pgm avec un
editeur de texte, on se retrouvait avec cela
P2
# test.pgm
24 7
15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0
0 3 3 3 3 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15
15 15
15 0
0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0

je me demandais si je pouvais ouvrir une image en
mode texte dans un script? et ainsi je peux
enregistrer le fichier grace a "cat"... puis
d'extraire un à un les données du fichier pour les
additionner avec l'autre et former l'image
finale.
C'est sur cette methode que je reflechis mais si
vous avez d'autres solutions je serais ravi !!

merci

Bon, je ne connais pas assez bien l'imagerie pour bien te répondre. pour moi, une fusion se fait avec un "ou" et non un "plus" mais si t'es sûr que c'est un "+"...

En ce qui concerne la récupération de lignes sur 2 fichiers en parallèle, voici l'algo de base
[fixed]#!/bin/sh

# Stockage des 2 fichiers dans 2 buffers
exec 3 < fic1
exec 4 < fic2

# Lecture des buffer ligne par ligne
while true
do
....read lig1 0<&3
....read lig2 0<&4

....if test -z "$lig1" -o -z "$lig2"
....then
........# Une des deux lignes est vide => un des deux fichier est terminé
........# A toi de gérer le cas
....fi

....# Traitement de chaque info de chaque ligne en parallèle
....i=1
....while true
....do
.........info1=`echo $lig1 |cut -f$i -d' '`
.........info2=`echo $lig2 |cut -f$i -d' '`

.........if test -z "$info1" -o -z "$info2"
.........then
............# Une des deux infos est vide => une des deux lignes est terminée
............# A toi de gérer le cas
........fi

........# Traitement de chaque info
........TRAITEMENT

........# Info suivante
........i=`expr $i + 1`
....done

....# le traitement est terminé => Passage aux 2 lignes suivantes
done[/fixed]


L'homme qui murmurait à l'oreille des pingouins
[fr.lang.free.fr]

Poste le Friday 28 April 2006 13:14:07
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
script qui fusionne de 2 images
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons