Aller au contenu

Comment comparer deux images pixel par pixel

Le comparateur dessine les deux images sur une même toile, parcourt chaque pixel et peint dans une carte des différences ceux qui s’écartent au-delà du seuil. La comparaison se fait dans la mémoire Canvas de la page : aucune image n’est téléversée et la page continue de fonctionner hors connexion.

La toile n’est pas le fichier. Les deux images sont étirées vers une taille commune avant le premier pixel comparé : le résultat décrit donc leur apparence à cette taille, pas l’égalité de leurs octets.

  1. Ajoutez exactement deux images avec le sélecteur ou en les déposant sur la zone de dépôt. Les fichiers PNG, JPEG, WebP, GIF, BMP et SVG se chargent ; tout autre fichier est refusé avec « Ce type de fichier n’est pas pris en charge ici. » sans toucher à ceux déjà choisis.
  2. Placez en tête avec les flèches ↑ et ↓ l’image qui doit définir la toile : « Faire correspondre la première image » reprend la taille de la première ligne.
  3. Choisissez la Toile de comparaison : Faire correspondre la première image, la deuxième, ou Les plus grandes dimensions.
  4. Réglez le Seuil de pixels (0–255), l’écart par pixel qui doit être dépassé pour compter comme un changement. Le champ démarre à 24.
  5. Cliquez sur Comparez les images pour obtenir les aperçus avant, après et différence ainsi que les quatre mesures. Télécharger le différentiel PNG enregistre la carte ; Effacer vide la liste, les aperçus et l’export ensemble.

Seuil, toile de comparaison et carte des différences

Ce qui compte comme pixel modifié

Le rouge, le vert, le bleu et l’alpha sont comparés séparément pour chaque pixel et la plus grande des quatre différences décide. Cette valeur doit dépasser le seuil de façon stricte : avec la valeur par défaut 24, un pixel à +10 dans le canal rouge est ignoré et l’exécution annonce 0 pixel modifié ; la même paire avec un seuil de 5 annonce 1 pixel modifié sur 64 (1,56 %).

L’alpha fait partie de la comparaison, pas seulement la couleur. Deux carrés de 4 × 4 de même couleur avec un seul niveau d’écart de transparence ont donné 16 pixels modifiés sur 16 avec un seuil de 0.

La différence moyenne est la moyenne des quatre écarts de canal sur toute la toile ; elle reste donc faible quand la zone modifiée est petite : un seul pixel à un niveau d’écart sur une toile de 64 pixels s’arrondit à 0,00 / 255 alors que Pixels modifiés affiche 1.

La toile de comparaison et ses limites

Faire correspondre la première image compare selon la largeur et la hauteur de la première, la deuxième selon celles de la seconde, et Les plus grandes dimensions retient la plus grande largeur et la plus grande hauteur. Les deux images sont étirées sur cette toile : une paire 4 × 8 et 8 × 4 a été comparée en 8 × 8 avec Les plus grandes dimensions.

La toile est plafonnée à 4096 pixels sur son plus grand côté et à 16 000 000 de pixels au total ; une paire de 5000 × 100 a été comparée en 4096 × 82. La mesure Dimensions indique toujours la toile réellement comparée, pas la taille des deux fichiers.

Dans la carte des différences, les pixels modifiés apparaissent en rose plein sur une copie atténuée en niveaux de gris de la première image : c’est pourquoi l’aperçu ressemble encore à l’image comparée.

Ce qui quitte la page

Rien. Les deux images sont décodées par le lecteur du navigateur et comparées dans la mémoire Canvas, et le PNG des différences est produit par la toile elle-même avant d’arriver dans la fenêtre de téléchargement. Une exécution qui surveillait le réseau n’a vu aucune requête pendant l’ajout, la comparaison, le téléchargement et l’effacement.

Les chiffres décrivent une seule toile : changer le seuil, la toile ou l’ordre des fichiers change le résultat, et chaque nouvelle exécution remplace la précédente. Effacer remet à zéro la liste, les quatre mesures et les trois aperçus, et retire le PNG terminé du bouton de téléchargement.

Outils récents :