Bonjour,
Je veux convertir des images d'un dossier vers un autre :
Mais je perds le nom des images : *-0.png , *-1.png , etc ...Code:convert -trim ima_train/*.png ima_tron/*.png
Le shell est loin derrière moi ...
Version imprimable
Bonjour,
Je veux convertir des images d'un dossier vers un autre :
Mais je perds le nom des images : *-0.png , *-1.png , etc ...Code:convert -trim ima_train/*.png ima_tron/*.png
Le shell est loin derrière moi ...
Bonjour,
Code:for i in "$dir"/*.png; do convet -trim "$i" "$autreDir/${i##*/}"; done
Mes deux dossiers sont i1 et i2 :
Aucune erreur avec ce script ne produit pas d'image dans i2Code:for i in "$i1"/*.png; do convert -trim "$i" "$i2/${i##*/}"; done
Code:
1
2
3
4
5
6
7
8
9
10
11 pat1-0.png pat1-10.png pat1-1.png pat1-2.png pat1-3.png pat1-4.png pat1-5.png pat1-6.png pat1-7.png pat1-8.png pat1-9.png
Tes dossiers sont "i1" et "i2" ou bien le contenu des variables "i1" et "i2"???
(ce n'est pas exactement la même chose!)
:tagcode: (en cliquant sur le "#" dans la barre d'outils)
Pour voir si le code fait bien ce que tu veux, tu peux ajouter un "echo":
puis tu prends l'une des lignes, genre convert -trim <i1>/pat1-0.png <i2>/pat1-0.png, que tu copies/colles pour voir si elle fait bien ce que tu veux.Code:for i in ${i1}/*.png; do echo convert -trim "$i" "${i2}/${i##*/}"; done
Bizarre, vous étes modérateur ou confirmé, et voici les dossiers i1,i2,13Code:
1
2
3 drwxrwxrwx 2 ... 4096 sept. 26 22:08 i1 drwxrwxrwx 2 ... 4096 sept. 26 23:03 i2 drwxrwxrwx 2 ... 4096 sept. 26 22:29 i3
avec tous les droits en lecture / écriture
i1/31a7fd05-b49d-4220-9268-33a61f4663a3.png est le premier fichier
C'est des fichiers anonymes du site machine learning de kagle
Aucun fichier dans i2 avec la ligne ci-dessusCode:for i in ${i1}/*.png; do echo convert -trim "$i" "${i2}/${i##*/}"; done
:mrgreen:
Et à priori, toi tu sais écrire, donc tu dois savoir lire ? :aie:
Donc, relis le post de jack-ft et fais ce qu'il dit ou dis nous ce que tu ne comprends pas.
Bonjour :coucou:
Bon. Déjà, ça, ça ne peut pas marcher, car le -trim est utilisé comme option du fichier d'entrée au lieu d'être appliqué comme transformation pour la sortie. Au minimum, il faudrait inverser le 2ème et le 3ème groupe de la commande.
Code:for i in ${i1}/*.jpg; do convert "$i" -trim "${i2}/${i##*/}"; done
Et pour le traitement de dossier entier, voici un exemple qui peut t'inspirer : transformation de toutes les images d'un dossier dans un autre
Code:convert ima_train/*.jpg -set filename:f '%t.png' +adjoin ima_tron/'%[filename:f]'
Merci Flodelarab :
Avec dossier i1 et i2 :Code:convert ima_train/*.png -set filename:f '%t.png' +adjoin ima_tron/'%[filename:f]'
[Résolu]Code:convert i1/*.png -set filename:f '%t.png' +adjoin i2/'%[filename:f]'
:bravo: