Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2020 connectés 

 


Dernière réponse
Sujet : convertion d'images en images en niveaux de gris
jlighty la commande find est déjà récursive.
Tu peux me donner les informations suivantes :
- chemin complet du repertoire où sont stockées les images  
- la ligne de commande exacte que tu tapes pour lancer le script
- le contenu du script

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
jlighty la commande find est déjà récursive.
Tu peux me donner les informations suivantes :
- chemin complet du repertoire où sont stockées les images  
- la ligne de commande exacte que tu tapes pour lancer le script
- le contenu du script
flashball ca serait pas plus simple de lister tout les sous dossier puis de faire avec un for et par la suite un cd ?
flashball memes erreurs apres modif
jlighty

Code :
  1. #!/bin/sh
  2. mon_dossier=$1
  3. for i.......


comment l'appeler :
sh script <le chemin complet du repertoire>

flashball j'ai laissé le sript tel quel et je l'ai lancé avec la commande :
mon_dossier=ledossierquivabien sh notrescript
jlighty il faut peut être faire un "cd $mon_dossier" avant la boucle for
le script est lancé depuis où ? et qu'as tu mis à la place de $mon_dossier (ou la valeur de $mon_dossier"  ?
flashball :( marche pas : messages  
 

Code :
  1. convert: unable to open image `tmp_./16x16/apps/kdat.png': Aucun fichier ou répertoirede ce type.
  2. mv: ne peut évaluer `tmp_./16x16/apps/kdat.png': Aucun fichier ou répertoire de ce type
  3. convert: unable to open image `tmp_./16x16/apps/kweather.png': Aucun fichier ou répertoire de ce type.
  4. mv: ne peut évaluer `tmp_./16x16/apps/kweather.png': Aucun fichier ou répertoire de cetype
  5. convert: unable to open image `tmp_./16x16/apps/kjobviewer.png': Aucun fichier ou répertoire de ce type.
  6. mv: ne peut évaluer `tmp_./16x16/apps/kjobviewer.png': Aucun fichier ou répertoire de ce type
  7. convert: unable to open image `tmp_./16x16/apps/go.png': Aucun fichier ou répertoire de ce type.
  8. mv: ne peut évaluer `tmp_./16x16/apps/go.png': Aucun fichier ou répertoire de ce type
  9. convert: unable to open image `tmp_./16x16/apps/applixware.png': Aucun fichier ou répertoire de ce type.

........

jlighty un truc tout simple :
si tu es sûr que tes repertoires et fichiers ne contienent aucun espace :
utilise la commande find :

Code :
  1. for fichier in `find $mon_dossier -type f -name "*.png"`; do
  2. convert "$fichier" -colorspace GRAY "tmp_$fichier"
  3. mv "tmp_$fichier"  "$fichier"
  4. done;


bien sûr fais un backup des images avant d'exécuter le script on ne sait jamais :D

flashball voila en lisant le man de sh ca donne ca et ca marche:
 
#!bin/sh
for nom in *  
do  
convert $nom -colorspace GRAY tmp_$nom  
mv tmp_$nom $nom  
done
 
et avec le mode recursif ?
(j'ai un dossier X qui contient des sous dossiers ... avec des images, je voudrais que l'on puisse mettre en argument du script le dossier X pour que tout les images contenu dedans soient converties
jlighty déjà quels sont les chemins des répertoires où tu veux convertir tes images ?
flashball dsl mais je sais pas scripter, quelqu'un aurait l'aimable gentillesse de me le faire ?
jlighty pour obtenir une simple conversion :
convert "$nom" -colors 16 -colorspace "GRAY" "tmp_$nom"
puis  
mv "tmp_$nom" "$nom"
 
il est vrai que la méthode utilise un fichier temp mais comme son nom l'indique, il est temporaire :D
flashball merci mais moi je veux que l'image soit seulement convertie et non que une deuxieme image soit cree, et la je ne vois pas comment integrer ca dans un script sh ou bash recursif en plus
jlighty et avec

Code :
  1. convert share.png -colors 16 -colorspace "GRAY" share_gray.png


pour le récursif un script sh

flashball ca marche pas : je fais  
mogrify share.png -colorspace GRAY  et share.png reste en couleur
flashball grand thx et pour le mode recursif on fait comment ?
jlighty :heink:  dans le man il est indiqué (ligne ~567)que la conversion en niveaux de gris se fait par:
-colorspace GRAY
flashball Voilou, je cherche a convertir des images en images en niveaux de gris, le tout de maniere recursive, j'ai fais des recherche sur le net, le man de imagemagick, et le seule truc que je trouve c'est comment les convertir en monochrome.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)