Cher journal,
J'avais cherché un petit soft gtk qui puisse remettre à l'endroit mes images à la sortie de mon appareil photo numérique, les renommer et les redimentionner. Il y en avait plein en ligne de commande, ou dont les fonctionnalités étaient incluses dans des softs de galeries, mais jamais de petit soft léger et pratique qui ne fasse que l'essentiel, mais bien et rapidement.
J'ai donc décidé de me mettre à la tâche, et quelques jours plus tard, voici ce qui en sort :
http://w3.nonsenz.org/gtk-batch-resizer/
Si vous vous sentez l'envie de l'essayer, n'hésitez pas car je n'ai pas beaucoup d'utilisateurs/testeurs.
# redimensionner
Posté par BAud (site web personnel) . Évalué à 2.
sinon ça fait bizarre d'avoir une interface graphique contenant le mot "batch" mais bon ça change des pyphotoresize ;-)
j'espère que tu auras pas mal de testeurs, perso j'ai pas encore d'appareil photo numérique :/
[^] # Re: redimensionner
Posté par Anthony Levaufre (site web personnel) . Évalué à 2.
Sinon pour le choix du nom, je faisais référence au batch processing, traitement par lots, mais c'est vrai que ça rappelle un peu les scripts shell...
[^] # Re: redimensionner
Posté par Matthieu . Évalué à 3.
1. dans la capture d'écran, pour redimmensionner, je peux choisir linéaire, cubique... Qu'est-ce donc ?
2. J'ai regardé un peu les sources, et je te conseilles fortement de le commenter : dire à quoi sert une classe, ce que font les fonctions, ce que sont les arguments, ce que la fonction retourne.... bref, tout ce qui peut permettre de rentrer plus facilement dans le code.
J'ai voulu faire quelques modifications dans le code de gnome-sudoku, et en même temps apprendre python. Le code est plus important que le tien, et il n'y a aucun commentaire. J'ai vite abandonné ! c'est dommage.
Une question :
1. Est-ce que ton programme peut-être appelé comme script nautilus ? du genre, je cliques droit sur un fichier ou un dossier, je choisis script puis ton script et ça me lance ton programme avec tout ce qui est possible de pré-configurer ?
Voila, sinon c'est bien.
[^] # Re: redimensionner
Posté par Anthony Levaufre (site web personnel) . Évalué à 2.
1- Les filtres de redimensionnement sont les mêmes que dans GIMP. Je ne suis pas spécialiste du traitement de l'image mais disons qu'il existe plusieurs algorithmes pour agrandir ou rétrécir la taille d'une image. La première méthode est plus rapide mais donne de moins bons résultats que la troisième (cubique) qui est plus lente mais donne une meilleure qualité. La seconde est entre les deux (sur les deux plans)
2- Tu as tout à fait raison pour les commentaires, c'est insuffisant, je vais m'appliquer de ce côté
3- Tu peux effectivement lancer le script depuis Nautilus. Par exemple en double-cliquant sur batch-resizer.py nautilus me demande si je souhaite afficher/lancer dans un terminal/lancer et je choisis "lancer".
[^] # Re: redimensionner
Posté par Matthieu . Évalué à 2.
( ) qualité moyenne ( ) qualité normale ( ) haute qualité
et en mettant un tooltip qui donne le nom de la méthode
( ) qualité moyenne ( ) qualité normale ...
[ méthode linéaire, rapide]
?
3. Il faut mettre le script dans ~/.gnome2/nautilus-scripts/ pour le voir apparaître dans le menu contextuel.
Le site http://g-scripts.sourceforge.net/ est le site du projet. La page http://g-scripts.sourceforge.net/faq.php te donnera la liste des arguments qui seront donné lors de l'appel.
[^] # Re: redimensionner
Posté par Anthony Levaufre (site web personnel) . Évalué à 1.
Je regarderai tout ça pour une version 1.2.
Merci encore pour tes remarques.
[^] # Re: redimensionner
Posté par Anonyme . Évalué à 2.
Lorsque tu redimensionnes, il y perte d'information. Quand on fait une redimension avec un multiple entier (2x moins, 4x moins), la vieille méthode brutor c'est de prendre un pixel sur deux sur une ligne sur deux, mais cela provoque un crénelage dégueulasse. L'idée est de prendre un algo d'anticrénelage. Sur le cas d'un redimensionnement avec les multiples entiers, on peux faire une moyenne entre les pixels gardés et enlevés contigus, comme cela on réintroduit une partie de l'information perdue. C'est un algo linaire et restrictif, et pas terros en terme de qualité.
Pour généraliser, l'idée de faire une espèce de moyenne entre des pixels contigus, pour cela il y a plein d'algorithmes différents, avec comme critère principal le rapport qualité/vistesse d'exécution. Ces algorithmes sont souvent des algo d'interpolation, le cas général de la moyenne. L'interpolation linéaire est une moyenne toute bête (moyenne entre deux points => point médian qui passe par la droite entre les deux points), après on peut faire des interpolations ou on va prendre plus de deux points pour calculer notre moyenne. (carré => parabole passant entre trois point, on prend la valeur qui nous intéresse sur cette parabole, cubique => équation f(x) = ax³+bx²+cx+d avec quatre points pour la résoudre puis on prend le f(x) qui nous intéresse sur cette courbe)
Plus on monte dans la complexité d'interpolation, plus la qualité est meilleure, mais la qualité finale augmente très peu par rapport a l'énorme quantité de calculs suplémantaire quand on passe de linéaire => carré, carré => cubique.
En gros, en linéaire on fait le gros du boulot, après c'est toujours un peu meilleur mais bien plus cher en temps CPU.
[^] # Re: redimensionner
Posté par gc (site web personnel) . Évalué à 4.
Je ne suis pas trop d'accord, et ça dépend de l'image d'origine. En général le linéaire est bon lorsque les valeurs évoluent relativement continûment (dérivée seconde à valeurs faibles), par contre lors d'évolutions "saccadées", il donne un effet de flou. Ça dépend au final des tailles concernées, mais s'il y a des bords francs sur l'image d'origine c'est probable que le cubique conservera une bonne qualité de bord franc et non le linéaire.
Au cours de mon travail sur un jeu qui va sortir en version 2 bientôt, j'ai utilisé plusieurs types d'algorithme de lissage au cours d'une rotation d'image, et le résultat illustre bien mon propos :
http://zarb.org/~gc/t/fb2-rotate.png
[^] # Re: redimensionner
Posté par daggett . Évalué à 2.
Hmmm, ne serait-ce pas là une tentative à peine subtile de lancer le buzz ?...
[^] # Re: redimensionner
Posté par Olivier Serve (site web personnel) . Évalué à 2.
[^] # Re: redimensionner
Posté par gc (site web personnel) . Évalué à 4.
et ce n'est pas parce que ce jeu est tout bonnement fantastique et qu'en français on pourrait le traduire par bulles glacées que ça va y changer quoi que ce soit.
[^] # Re: redimensionner
Posté par seginus . Évalué à 2.
Je compte justement me mettre à la programmation en python, et plus particulièrement python / glade (j'aime bien cette approche de glade, ça me fait penser au xhtml / css) et c'est vrai que ce genre d'application permet d'avoir un exemple concret pas trop gros donc normalement plus simple à assimiler. En plus, c'est vrai que le Python, c'est agréable à lire (merci de laisser ce troll mourir de faim). Donc des commentaires en plus, ce serait génial.
De plus, l'application en elle même est utile (d'ailleurs, je pense que c'est pour ça que tu l'as fait). Je vais donc tester ça quand j'aurais un peu de temps.
En tout cas merci d'avoir fait ce journal et mis ton programme à disposition, je sais que quand on fait juste un petit programme dans son coin, on n'a pas tendance à le partager, alors qu'ils sont souvent utile et pour les apprentis programmeurs, un peu plus digeste que le code source d'openoffice (exagération volontaire).
Voilà encore merci et bonne continuation.
# petite question...
Posté par cosmocat . Évalué à 3.
[^] # Re: petite question...
Posté par Anthony Levaufre (site web personnel) . Évalué à 1.
Je vais quand même continuer à chercher.
[^] # Re: petite question...
Posté par Yusei (Mastodon) . Évalué à 2.
# Ca existe déjà...
Posté par TemPi . Évalué à 2.
[^] # Re: Ca existe déjà...
Posté par Bertrand Mathieu . Évalué à 1.
C'est facile: sélectionner les images et explorer le menu "outils".
[^] # Re: Ca existe déjà...
Posté par Anthony Levaufre (site web personnel) . Évalué à 1.
D'ailleurs le changement de nom (qui existe uniquement par la fonction de redimensionnement) ou de répertoire n'est pas satisfaisante à mon avis (ne permet pas de mettre un préfixe, un suffixe et d'incrémenter le nom de l'image...)
[^] # Re: Ca existe déjà...
Posté par gc (site web personnel) . Évalué à 4.
[^] # Re: Ca existe déjà...
Posté par Anthony Levaufre (site web personnel) . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.