Mes propres favoris sont ces deux:
compare image1 image2 -compose src diff.png
compare image1 image2 -compose src diff.pdf
La seule différence entre les 2 commandes ci-dessus: la première montre la différence visuelle entre les deux images sous forme de fichier PNG, la seconde sous forme de PDF.
Le fichier diff résultant affiche tous les pixels de couleur rouge différente. Celles qui restent inchangées apparaissent en blanc.
Court et doux.
Notez que vos images ne doivent pas nécessairement être du même type. Vous pouvez même mélanger JPEG, TIFF, PNG - sous une condition: les images doivent être de la même taille (dimension de l'image en pixels). Le format de sortie est déterminé par l'extension du nom de fichier de sortie.
Si, pour une raison quelconque, vous avez besoin d'une résolution plus élevée que la résolution par défaut (72 dpi), ajoutez simplement un -density
paramètre approprié :
compare -density 300 image1 image2 -compose src diff.jpeg
Exemples illustrés
Voici quelques illustrations des résultats pour les variations de la commande ci-dessus. Remarque: les deux fichiers comparés étaient même des fichiers PDF , donc cela fonctionne aussi avec ceux-ci (du moment qu'il s'agit d'une page)!
Gauche: Image avec texte Centre: Image originale Droite: Différences (= texte) en pixels rouges.
compare \
porsche-with-scratch.pdf porsche-original.pdf \
-compose src \
diff-compose-default.pdf
C'est la même commande que j'ai suggérée plus haut.
Gauche: Image avec texte Centre: Image d'origine Droite: Différences en pixels «vert de mer».
compare \
porsche-with-scratch.pdf porsche-original.pdf \
-compose src \
-highlight-color seagreen \
diff-compose-default.pdf
Cette commande ajoute un paramètre pour rendre les pixels de différence 'seagreen' au lieu du rouge par défaut.
Gauche: Image avec texte Centre: Image originale Droite: Diffs bleus (mais avec un arrière-plan contextuel)
l
compare \
porsche-with-scratch.pdf porsche-original.pdf \
-highlight-color blue \
diff-compose-default.pdf
Cette commande supprime la -compose src
partie - le résultat est le comportement par défaut compare
qui conserve comme arrière-plan éclairé la première des 2 images différentes. (Cette fois, avec un paramètre ajouté pour faire apparaître les pixels de différence en bleu.)