Image
Réenregistrer une image dix fois : quand la qualité se dégrade vraiment (et quand elle ne bouge pas)
C'est un conseil répété partout : « n'enregistrez pas un JPG plusieurs fois, il perd de la qualité à chaque fois ». L'idée est juste dans son principe, puisque le JPG est un format avec perte. Mais à quel point ? Et dans quelles conditions ? Pour le savoir, nous avons soumis la même photo à dix conversions successives, dans plusieurs scénarios, en mesurant à chaque étape sa fidélité à l'original. Certains résultats nous ont surpris.
Ce qu'on appelle la perte de génération
Une « génération », c'est une copie de copie. Avec un format sans perte comme le PNG, la dixième génération est strictement identique à la première : chaque pixel est restitué tel quel. Avec un format avec perte comme le JPG ou le WebP, chaque encodage simplifie l'image pour gagner de la place, et l'on s'attend à ce que ces simplifications s'additionnent d'une copie à l'autre.
En pratique, cela arrive quand on retouche une photo puis qu'on la réenregistre, quand une image passe par plusieurs applications qui la recompressent chacune (messagerie, réseau social, logiciel de présentation), ou quand on la convertit d'un format à l'autre au gré des besoins.
Notre protocole
Nous sommes partis d'une photo de plage de 2048 × 1152 pixels, prise au smartphone et enregistrée en JPG (529 Ko), riche en texture fine. Chaque génération est produite par FFmpeg avec les réglages de FileXvert, à partir de la génération précédente, et comparée à l'original avec l'indice SSIM : 1 signifie identique, au-dessus de 0,99 la différence est invisible à l'œil nu, et en dessous de 0,97 des défauts apparaissent en zoomant.
Nous avons testé six scénarios : trois qualités de JPG répétées à l'identique, un WebP répété, une alternance WebP et JPG, et une alternance entre deux qualités de JPG.
Les résultats
Voici la fidélité mesurée après la première, la deuxième, la cinquième et la dixième génération.
| Scénario | 1re | 2e | 5e | 10e |
|---|---|---|---|---|
| JPG haute qualité, répété (sans réduction) | 0,998 | 0,998 | 0,998 | 0,998 |
| JPG qualité moyenne, répété (équilibré) | 0,995 | 0,995 | 0,995 | 0,995 |
| JPG compressé, répété (taille minimale) | 0,985 | 0,985 | 0,985 | 0,985 |
| WebP, répété (équilibré) | 0,983 | 0,979 | 0,976 | 0,974 |
| Alternance WebP puis JPG | 0,983 | 0,982 | 0,969 | 0,956 |
| Alternance de deux qualités de JPG | 0,995 | 0,961 | 0,960 | 0,960 |
| PNG, répété (sans perte) | 0,995 | — | 0,995 | — |
La valeur du PNG, légèrement inférieure à 1, ne vient pas d'une perte : la photo d'origine stocke ses couleurs à demi-résolution, comme tout JPG, et leur conversion en pixels complets introduit un écart de calcul constant. Ce chiffre ne bouge plus ensuite, quelle que soit la génération.
Première leçon : le même réglage ne dégrade presque pas
C'est le résultat le plus contre-intuitif : un JPG réenregistré dix fois avec exactement le même encodeur et la même qualité reste stable. Le SSIM ne bouge qu'à la sixième décimale, et le poids reste identique à quelques octets près.
L'explication tient au fonctionnement du JPG. L'image est découpée en blocs de 8 × 8 pixels, transformés en fréquences puis arrondis selon une grille fixée par la qualité. Si l'on réencode l'image avec la même grille, les valeurs déjà arrondies tombent pile dessus : il n'y a presque plus rien à arrondir. La perte a lieu à la première génération, pas aux suivantes.
Ce résultat suppose toutefois des conditions précises : même logiciel, même qualité, et aucune modification de l'image entre deux enregistrements. C'est rarement le cas dans la vraie vie.
Deuxième leçon : ce qui abîme vraiment une image
Dès que l'une de ces conditions change, la dégradation devient réelle et cumulative :
- Changer de qualité : passer d'un JPG de qualité moyenne à un JPG plus compressé, puis l'inverse, fait chuter le SSIM à 0,961 dès la deuxième génération. C'est pire que de compresser directement l'original au niveau le plus fort (0,985) : les deux grilles d'arrondi se contrarient.
- Changer de format : alterner WebP et JPG dégrade l'image à chaque étape, jusqu'à 0,956 à la dixième génération. Chaque format simplifie l'image selon sa propre logique, et ces simplifications ne coïncident pas.
- Le WebP seul se dégrade lentement mais sûrement, de 0,983 à 0,974 en dix générations : son encodeur, plus élaboré, ne retombe pas exactement sur ses propres arrondis.
- Redimensionner : réduire une photo puis la ramener à sa taille d'origine, en JPG équilibré, donne un SSIM de 0,957. Les détails perdus à la réduction ne reviennent jamais.
Les bons réflexes
Ces mesures se traduisent en quelques règles simples :
- Gardez toujours l'original, et repartez de lui pour chaque nouvelle version plutôt que de convertir une copie de copie.
- Choisissez le format final une fois pour toutes ; évitez les allers-retours entre JPG, WebP et autres formats avec perte.
- Pour une image que vous retoucherez souvent, travaillez dans un format sans perte (PNG, ou le format natif de votre logiciel), et n'exportez en JPG ou WebP qu'à la fin.
- Si vous devez réduire la taille d'une image, faites-le en une seule étape, au niveau voulu, depuis l'original.
- Méfiez-vous des chaînes invisibles : une photo envoyée par messagerie, téléchargée, publiée puis partagée à nouveau a souvent été recompressée plusieurs fois, par des logiciels différents.
Avec FileXvert, chaque conversion part du fichier que vous déposez : en déposant l'original plutôt qu'une copie déjà convertie, vous limitez la perte à une seule génération.