Page d'accueil > Photo > IrfanView > Comment redimensionner des photos:


maj: 11/2016
page créée en 2007


Les appareils photo numériques (APN) récents ont de plus en plus de pixels et leurs images prennent de plus en plus de place sur les disques. La plupart du temps, cela fait perdre inutilement de l'espace sur vos disques, etc... Voyons un peu comment gagner de la place.

Quelques notions pour commencer
Vous pouvez sauter cette partie si ça vous prend la tête, mais vous le regretterez plus tard.

Le codage des couleurs dans un fichier brut:
Je suppose qu'on s'intéresse à une image typique prise par un APN.
Si vous avez une image avec 7 millions de pixels (les points colorés), chaque point coloré est composé de 3 couleurs (RVB) qui sont en général codées chacune sur 256 niveaux, ce qui donne 256×256×256 = 16.7 millions de couleurs pour chaque pixel:
(R,V,B) = (0,0,0) = noir
(R,V,B) = (255,255,255) = blanc
(R,V,B) = (255,0,0) = rouge vif et saturé
(R,V,B) = (127,0,0) = rouge sombre
Pour coder chaque couleur sur 256 niveaux, on utilise 8 bits. Chaque bit ayant deux états (0 ou 1), 8 bits permettent de coder 2×2×2×2×2×2×2×2 = 256 valeurs. Comme il y a 3 couleurs, on utilise 3×8 = 24 bits pour coder la couleur de chaque pixel.
En informatique, on parle souvent en octets (un octet = 8 bits). Et donc chaque couleur est stockée sur 3 octets.
On en vient au coeur du problème:
7 millions de pixels × 3 octets = 21 Mo, ce qui est la taille de votre image brute (c'est par exemple à peu de chose près la taille occupée sur le disque par le format de fichiers BMP qui n'est pas compressé).
On peut également diminuer le nombre de couleurs pour diminuer la taille des fichiers. Par exemple, si on n'utilise que 8 bits pour coder la couleur de chaque pixel, on aura 256 couleurs possibles pour chaque pixel. On est passé de 16.7 millions de couleurs à 256 couleurs, de 24 bits par pixel à 8 bits par pixel, et la taille du fichier sera divisée par 3.

La compression:
Un exemple pour bien comprendre: imaginons que votre image soit entièrement monochrome (supposons rouge). Au lieu de stocker dans le fichier 7 millions de fois consécutives "afficher un pixel rouge, afficher un pixel rouge, afficher un pixel rouge,...", on peut stocker une seule fois l'information "afficher 7 millions de pixels rouges". Dans ce cas, le fichier passe de 21 Mo à quelques octets, sans aucune perte d'information (l'image affichée sera exactement la même): on parle de compression non destructive. Un des meilleurs formats de compression non destructive est le format PNG, qui est donc particulièrement adapté à des images qui ont des aplats de couleurs importants (copies d'écran de bureautique par exemple).
Pour les photos, le format de compression usuel est le format JPEG (extension .JPG). C'est un format destructif: il fait une cuisine complexe pour remplacer des pixels adjacents de couleurs similaires par des blocs de pixels contigus de couleur identique. Bref, il réduit la taille de l'image, mais il supprime en même temps quelques détails. On peut régler le niveau de compression. Evidemment, plus de compression = moins de détails. Tout est dans le dosage.
Pour plus de détails, voir compression d'images dans wikipedia.


En pratique (sous Windows)
Il existe des montagnes de situations auxquelles vous pouvez être confronté, et qui de plus dépendent de votre environnement de travail, de vos logiciels, de ce que vous voulez faire, de vos compétences en informatique, etc... C'est pour ça qu'il vaut mieux lire le paragraphe précédent pour avoir quelques points de repères.
Tous les logiciels graphiques devraient pouvoir afficher les caractéristiques des images, et en particulier celles qui nous intéressent ici: nombre de pixels, nombre de couleurs, format de compression.

Prise en main d'IrfanView

1) Installez IrfanView si ce n'est pas déjà fait (c'est gratuit, et ce logiciel vous servira sans cesse pour bricoler vos images, changer de format, faire des copies d'écran, visionner vos photos,....). 

2) Si ce n'est pas fait, réglez les options commodes.

3) Dans IrfanView, ouvrir le répertoire contenant vos photos:
- soit par le menu File > Open
- soit en posant (au moyen de la souris, depuis l'Explorateur Windows par exemple) une des photos dans la fenêtre de IrfanView
Puis vous pouvez afficher toutes les photos du répertoire avec File > Thumbnails, ou en appuyant sur la touche T du clavier, ou par le bouton Thumbnails (qui n'apparait pas par défaut, il faut configurer IrfanView pour cela, par Options > Properties/Settings > Toolbar > et cocher la case devant Thumbnails.

4) Voir les propriétés d'une image: une fois l'image ouverte dans IrfanView, vous voyez les informations essentielles en bas et à gauche:
    ../../Irfanview/Image_properties_01.png
Par exemple, ici, vous voyez que l'image fait 3072×2304 = 7 millions de pixels, qu'elle est codée avec 24 bits par pixels, que c'est la 3ème image d'un répertoire qui en contient 3, qu'elle est affichée à 4% de sa taille réelle, que le fichier fait 3.39 Mo [les anglo-saxons appellent "byte" notre "octet", d'où la notation MB, ce qui conduit à de multiples confusions car 1 byte (En) = 8 bits (Fr et En)], tandis que le fichier non compressé ferait 20.25 Mo, et enfin la date et l'heure du fichier.

Pour avoir plus d'informations sur la photo, utiliser le menu
Image > Information > EXIF info
et vous verrez alors plein d'autres informations (données EXIF) qui sont enregistrées dans le fichier avec la photo, comme le modèle de l'appareil qui a pris la photo, la date et l'heure à laquelle la photo a été prise (si l'APN a été mis à l'heure correctement, évidemment), les paramètres d'exposition de la photo, diaphragme, vitesse, flash, etc...


Exemple: redimensionner une image avec IrfanView
Je vais chercher une image prise avec un Panasonic Lumix DMC-FZ8 sur cet excellent site.
Voila le fichier directement issu de l'appareil: p1000573.jpg . L'image fait 3072×2304 = 7 millions de pixels, et le fichier 3.16Mo. Si vous avez cliqué sur le lien ci-contre, vous avez donc téléchargé 3.16Mo de données, et votre navigateur l'a affiché dans une fenêtre incapable d'afficher autant de pixels. C'est du gaspillage. Il y a quand même un avantage: si vous cliquez sur l'image, elle devrait s'afficher en "taille réelle" (il vaudrait mieux dire qu'un pixel enregistré dans le fichier occupe exactement un  pixel de l'écran), et vous pouvez donc "zoomer" sur des détails de l'image.

Pour redimensionner l'image, on joue sur 2 paramètres:
- le nombre de pixels, qu'il suffit d'adapter à ce que l'on veut faire de l'image,
- la compression.

Exemple: on réduit l'image à une hauteur de 1600 pixels, ce qui est ce que peuvent afficher les tout meilleurs écrans 24 pouces actuels (et donc probablement bien plus que ce que peut afficher le vôtre). Récupérez  p1000573.jpg sur votre disque (clic droit sur le lien). Ouvrez-le avec IrfanView. Puis menu Image > Resize/resample, en ajustant les valeurs dans les cases "Set new size":
resize1600.png
Nota: ici, le filtre "sharpen" est resté coché. Cela peut transformer l'image. Noter également que le fait de réduire la taille des images tend à en diminuer le contraste apparent. Il est donc souvent judicieux de compenser cet effet au moyen d'un léger effet "sharpen" qui renforce le contraste apparent. Je vous conseille de ne pas l'appliquer si vous devez faire d'autres retouches ultérieures sur l'image. Je vous conseille également de ne pas l'appliquer sur des images que vous ne regarderez pas en pleine résolution, car faire un "zoom" avant ou (surtout) arrière sur une image sur laquelle on a appliqué un filtre "sharpen" peut donner des résultats horribles. Noter aussi qu'en utilisant le menu "Batch conversion" d'IrfanView, vous avez la possibilité de doser l'effet (voir plus bas).
Bref, dans un premier temps et si vous ne savez pas quoi faire, n'appliquez pas ce filtre pour simplifier!

Puis vous sauvez l'image au format JPEG (c'est le format recommandé pour les photos) avec: File > Save as > Type: JPG - JPEG Files:
save_picture_as.png
Repérez bien dans quel répertoire sera enregistrée l'image (ici, dans "Mes images"), et donnez un nom au fichier que vous enregistrez (ici: p1000573b80).

Vous pouvez régler le taux de compression dans la fenêtre suivante.
80 donne un très bon résultat. On peut souvent prendre 70, voire nettement moins, pour obtenir des images plus comprimées. Après essais, j'utilise très souvent 60 pour les images de 7 à 12 Mpixels. 
Laissez cochées les cases concernant les données enregistrées avec l'image, de sorte que l'image comprimée conserve les informations de l'image originale:
JPEG-GIF_save_options.png

Voila le résultat (en cliquant sur les liens, ils s'ouvrent dans de nouvelles fenêtres. En cliquant sur les images, elles devraient apparaître à leur résolution réelle):
Image originale, 3072×2304 = 7 Mpixels, taille du fichier 3232 ko, issu de l'appareil avec les réglages par défaut (compression JPEG faible).
Image retaillée à 1600×1200 = 2 Mpixels, compression 80, taille du fichier 490 ko
Image retaillée à 1280×960 = 1.2 Mpixels, compression 70, taille du fichier 276 ko, soit 12 fois moins que l'image originale. Très correct.
Image retaillée à 1280×960 = 1.2 Mpixels, compression 40, taille du fichier 170 ko => on commence à voir apparaître quelques défauts.
Image retaillée à 1280×960 = 1.2 Mpixels, compression 20, taille du fichier 119 ko => aspect typique d'une image trop compressée.
Image retaillée à 1280×960 = 1.2 Mpixels, compression 10, taille du fichier  85 ko => massacre! Mais on voit bien comment procède la compression JPEG.
Vous avez probablement constaté que le fait de ne pas afficher l'image à la résolution réelle provoque quelques effets d'escaliers sur les colonnes de cette photo, ce qui n'est pas toujours très heureux. dans ces conditions, autant la réduire encore, pour l'afficher à sa taille réelle (si votre écran le permet):
Image retaillée à 800×600 = 0.5 Mpixels, compression 70, taille du fichier  151 ko => peut probablement s'afficher en taille réelle sur votre écran. Et si ca se trouve, c'est cette image, pourtant la plus petite, qui apparait le mieux sur votre écran.



Quelques conseils et points de repère
Les tailles des écrans, leur nombre de pixels, etc... Un fichier Excel (original), ou son équivalent en ligne (mise en page approximative, et je n'ai pas vérifié si les formules fonctionnent).

Il est important de garder de la résolution (beaucoup de pixels) pour les impressions de photos. On considère en général qu'il faut au minimum 200 pixels par pouce pour imprimer une photo de qualité. Les calculs pour vous guider se trouvent dans un fichier Excel (original), ou son équivalent en ligne (mise en page approximative, et je n'ai pas vérifié si les formules fonctionnent).

Si vous lisez la documentation de votre appareil photo, vous y trouverez probablement des réglages qui vous permettent d'augmenter le taux de compression des images pour économiser de l'espace disque de stockage, mais aussi pour faire tenir plus de photos sur la carte mémoire de votre appareil photo.
Ayez à l'esprit que la course aux pixels est plus un argument de vente qu'autre chose, et que si vous ne retravaillez pas vos photos sur l'ordinateur, et si vous ne faites pas d'agrandissements géants, un appareil de 5 mégapixels est largement suffisant!


Exemple: redimensionner une série d'images avec IrfanView
Je vous entends râler, c'est fastidieux.
Eh bien non, tout peut être automatisé.
Ouvrez dans IrfanView une des photos du répertoire dont vous voulez traiter les images.
File > Batch conversion/rename

batch_conversion.png

1) Faire passer les photos à traiter de haut en bas avec Add ou Add all (seules les images qui sont dans la fenêtre du bas seront traitées).
2) Output directory: le répertoire où vont aller les photos créées lors de l'opération
3) Work as: on peut soit uniquement convertir les photos, soit les renommer, soit les deux. Au diable l'avarice, on va faire les deux.
4) Output Format > Options : on retrouve exactement les mêmes choses que plus haut. C'est ici que vous spécifiez que vous voulez conserver les données EXIF, IPTC, et commentaires éventuels.
5) Advanced : cela fait apparaître une fenêtre d'options:
    conversion_advanced_options.png
CROP permet de retailler un rectangle dans l'image (et de virer tout ce qu'il y a autour). On ne s'en sert pas ici.
RESIZE permet de redimensionner l'image. C'est donc ici qu'on peut réduire le nombre de pixels, et imposer soit un pourcentage de l'image initiale (par exemple 50%), soit un nombre de pixels (par exemple: Set long side to 1600 pixels).
Sharpen permet de donner un peu plus de croustillant à l'image. La plupart du temps, il vaut mieux s'abstenir si vous ne redimensionnez pas l'image. Par contre, c'est conseillé quand on réduit la taille de l'image avec Resize. Essayez avec 10 pour commencer (le mieux est d'expérimenter sur une image pour se faire une idée). Lire aussi un peu plus haut.
Save files with original date/time: à cocher si vous voulez que le nouveau fichier ait la même date que le fichier original.

6) Batch rename settings: ce sont les paramètres pour renommer les fichiers. Cliquer sur "Options" pour avoir plus d'explications. $N signifie l'ancien nom. Donc $N_b va rajouter un "_b" au nom du fichier. Il y a plein d'autres possibilités que je vous laisse découvrir. J'en donne un exemple plus évolué dans cette autre page.

7) Start démarre la conversion. Une fenêtre apparait pour vous montrer l'avancement du travail. Quand c'est fini, il n'y a plus qu'à aller chercher les photos (voir au point 2).

Notez que tous ces réglages restent enregistrés pour la prochaine utilisation de la commande "Batch conversion/rename" d'IrfanView.



Autres solutions de compression
Il en existe des tonnes. Chaque logiciel graphique peut y contribuer.
Vous pouvez utiliser Picasa. Voir par exemple ici. L'astuce est d'utiliser la fonction "Exporter" (sélectionner les photos, puis cliquer sur l'icône "Exporter" au bas de la page).