22 votes

Quel est un bon programme pour redimensionner en lot 100 000 images JPEG ?

Le programme doit s'exécuter en mode batch pour redimensionner tous les fichiers d'un dossier puis enregistrer les nouveaux fichiers dans un dossier différent. Une option pour définir la qualité JPEG serait également la bienvenue.

3 votes

Une combinaison de find et ImageMagic.

31voto

Alex Points 1459

Je suis un peu surpris que personne n'ait mentionné l'option la plus simple, la moins chère et la moins technique :

Automator

Tout d'abord, ouvrez Automator, qui se trouve dans votre dossier Applications.

Ensuite, choisissez de créer un nouveau flux de travail :

Créer un flux de travail Automator

Ensuite, ajoutez les étapes suivantes au flux de travail en les faisant glisser et en les déposant :

étapes du flux de travail

Lorsque vous exécutez cela, Automator va :

  1. afficher une fenêtre vous demandant de choisir des fichiers (autant que vous le souhaitez)
  2. afficher une autre fenêtre demandant où vous voulez enregistrer les copies redimensionnées
  3. vous demander quelle taille vous souhaitez pour les copies redimensionnées. Vous pourrez choisir soit une taille fixe, soit un pourcentage. Toutes les images seront redimensionnées soit à cette taille, soit de ce pourcentage.

(La case à cocher "afficher cette action lorsque le flux de travail s'exécute" signifie que le flux de travail va faire une pause, afficher l'option et vous permettre de la modifier à ce moment-là)

Une fois que vous avez fait cela, Automator va se mettre en route, et quand il a fini, il vous fera une alerte sonore.

Malheureusement, il ne semble pas avoir d'option pour choisir la qualité JPEG. Cependant, pour le prix (gratuit), c'est assez pratique.

0 votes

Il se peut que ce soit le moins technique pour quelqu'un qui n'utilise pas le Terminal. Et peut-être le plus simple, mais ce n'est pas le moins cher parmi les réponses ici. Sips est inclus dans la version Unix du Mac. Et ImageMagick est également gratuit.

3 votes

Il est sûr de présumer que Automator est, dans le cadre de cette discussion, gratuit car il est raisonnable de supposer que @mototribe utilise OS X. Ma seule préoccupation serait de savoir comment Automator gérerait 100 000 images mais, en supposant qu'elles ne sont pas toutes dans un seul dossier, je continuerais simplement à les lui donner un dossier à la fois jusqu'à ce qu'il ait fini. J'ai exécuté ce flux de travail même contre des centaines d'images sans difficulté. Je ne vois aucune raison pour laquelle cela ne fonctionnerait pas contre de nombreux milliers, car chaque image est poussée une par une, mais je serais en mode confiance mais vérification.

1 votes

Oui, Automator a parfaitement fait le travail. Je suis venu ici en pensant "J'ai besoin de trouver une utilité en ligne de commande pour redimensionner en lot des images"... Parfois, la solution la plus simple est également la meilleure. Cheers.

20voto

J'aime utiliser ImageMagick. sips et Automator (qui utilisent une méthode de redimensionnement identique) rendent les images trop floues à mon avis sans affûtage supplémentaire.

Vous pouvez installer ImageMagick avec brew install imagemagick après avoir installé Homebrew ou avec sudo port install imagemagick après avoir installé MacPorts. Ensuite, exécutez une commande comme celle-ci:

mogrify -filter lanczos2 -resize '500x500>' -format jpg -quality 90 -path /tmp/ *.jpg

500x500> permet aux images plus larges ou plus grandes que 500px de s'adapter à 500x500px. 500x changerait toujours la largeur en 500px et 500x500^ ferait en sorte que toutes les images aient au moins 500x500px. -path /tmp/ enregistre les fichiers de sortie dans /tmp/ au lieu de les modifier sur place.

Lanczos2 ou le 2-lobes Lanczos est très similaire à Catrom. Comparé à Lanczos (Lanczos3), ils sont légèrement moins nets, produisent moins d'artefacts de halo et plus de motifs de Moiré. Le filtre par défaut pour diminuer la taille des images est Triangle, ce qui rend souvent les images trop floues à mon avis.

-quality 100 crée des fichiers environ deux fois plus grands que -quality 95, qui crée des fichiers environ deux fois plus grands que -quality 88.

Plus d'informations:

Voici une commande similaire qui utilise sips:

for f in *.jpg; do sips -Z 500 -s format jpeg -s formatOptions 80 "$f" /tmp/; done

-Z 500 est similaire à 500x500> dans ImageMagick.

Si d'autres ont moins de 100 000 images, vous pouvez également utiliser Aperçu:

entrez ici la description de l'image

Preview utilisait la même méthode de redimensionnement que sips et Automator, mais elle en utilise une différente depuis 10.7. Je préfère Lanczos2 d'ImageMagick cependant.

1 votes

Je voudrais vous avertir d'utiliser mogrify : cela convertit les fichiers sur place, en écrasant les originaux ! Si quelque chose se passe mal, vous avez perdu vos fichiers ! Il vaut mieux utiliser convert (également d'ImageMagick).

1 votes

@KurtPfeifle Cela ne fonctionne pas si vous spécifiez l'option -path (que convert n'a actuellement pas).

0 votes

Si vous recherchez la vitesse, alors sips est peut-être le meilleur choix. Lors d'un test rapide avec 1 000 JPG d'environ 5 Mo redimensionnés en largeur à 800 px, cela a pris environ 1 minute avec sips et environ 8 minutes avec mogrify (en purgant les tampons disque, en utilisant GNU Parallel sur un quadricoeur).

13voto

the_karel Points 275

ImageMagick est un programme en interface de ligne de commande conçu à cette fin. L'utilisation et l'installation d'ImageMagick peuvent être intimidantes, mais ce package de manipulation d'images est le plus puissant que j'ai rencontré jusqu'à présent. Comme l'installation à partir de la source peut être une corvée pour les utilisateurs natifs d'OS X, je vous conseille d'utiliser Homebrew.

Pour installer ImageMagick en utilisant Homebrew, exécutez cette ligne de commande dans votre terminal :

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

Homebrew est maintenant installé, il est conseillé de suivre les suggestions de l'installateur après l'installation. Maintenant nous installons ImageMagick en utilisant brew.

brew install imagemagick

ImageMagick est désormais installé et son programme convert peut être utilisé à votre fin. Pour convertir une grande image jpg en une plus petite image png, vous pouvez exécuter :

convert input.jpg -geometry 800x600 output.png

Pour répondre à votre question "Comment redimensionner tous les fichiers d'un dossier et les enregistrer dans un dossier différent", vous pouvez exécuter le script suivant.

# créer un dossier de sortie
mkdir -p "../resized"

# Convertir tous les fichiers .jpg dans le dossier actuel
for image in *.jpg; do
    convert $x -geometry 800x600 resized/$x

ImageMagick peut convertir plus de 100 formats d'image différents, et presque tous les effets que vous pouvez réaliser avec Photoshop peuvent être faits avec ImageMagick.

0 votes

Merci, c'est ce que j'ai fini par utiliser - cependant je l'ai installé sur Drupal puisque j'importe les images dans Drupal.

0 votes

@the_karel, Je viens de améliorer votre post précédent. J'espère que cela ne vous dérange pas.

7voto

Plusieurs personnes ont mentionné ImageMagick. Voici une recette: Pour simplifier, supposez que tous les fichiers sont dans un seul dossier (et que le dossier ne contient rien d'autre). Ouvrez une fenêtre de terminal, cd dans ce dossier, puis exécutez

mkdir ../resized
for x in *.jpg; do convert -geometry 800x600 $x ../resized/$x

où vous remplacez le 800x600 par la taille de votre choix.

Les avantages incluent une grande flexibilité dans convert d'ImageMagick, tels que la possibilité de sélectionner différents réglages de qualité pour l'image cible, ou de définir l'option de redimensionnement en pourcentage. Ou vous pouvez utiliser -geometry 800x800, auquel cas le rapport hauteur/largeur sera préservé, mais le maximum de la largeur et de la hauteur sera de 800 pixels.

Les inconvénients sont évidents: cela nécessite une certaine familiarité avec la ligne de commande, plus une volonté de parcourir les options de la ligne de commande de convert pour les réglages que vous souhaitez. Ce n'est pas une tâche pour les âmes sensibles.

7voto

Je soutiens la recommandation de Robert pour GraphicConverter. Je suis un utilisateur enregistré depuis 16 ans. Son objectif principal est le traitement par lots de l'édition d'images, et il possède une bonne interface utilisateur pour concevoir des flux de travail personnalisés et les sauvegarder.

Vous pouvez également l'utiliser en conjonction avec Automator, mais vous n'aurez probablement pas besoin de le faire.

Voici quelques informations provenant de la page de GraphicConverter expliquant les fonctions d'édition d'images par lots.

Conversion par lots avec des fonctions supplémentaires

GraphicConverter vous offre un traitement par lots sophistiqué qui automatise entièrement les tâches répétitives appliquées à une sélection d'images :

  • Convertir facilement et rapidement toutes les images sources sélectionnées dans un nouveau format - que vous ayez 5 ou 5 000 fichiers image ; vous définissez simplement le type de conversion et réglez les détails
  • Pendant le processus de conversion, vous pouvez appliquer jusqu'à 60 fonctions par lots supplémentaires telles que la rotation, le redimensionnement, le changement de résolution, etc.
  • Automatiser la suppression des Ressourcefork de Mac OS avant que les documents ne soient téléchargés s'il y a des problèmes de compatibilité lorsque les fichiers image sont placés sur internet
  • Créer des catalogues au format HTML pour une publication sur internet et ajuster les couleurs, tailles, etc. selon vos besoins individuels (voir exemples)
  • Renommer une sélection de documents selon des critères spéciaux rapidement et facilement
  • Assembler des images (par exemple pour QuickTime VR)
  • Insérer ou extraire des informations IPTC dans ou hors de divers formats de documents
  • et bien plus encore ...

saisissez une description de l'image ici

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X