le code python pour comparer les images en python
Je suis en train de travailler sur un projet dans lequel, à un moment, j'ai besoin de comparer deux images.quelqu'un peut-il m'aider avec une méthode pour le faire so..By la manière dont les images sont des captures d'écran d'un logiciel.
je voulais vérifier si les deux images sont identiques, y compris les chiffres et les lettres affichées dans l'image(capture d'écran du logiciel)..
- Que voulez-vous dire quand vous dites que comparer? Voulez-vous voir si elles sont identiques? Vous êtes à la recherche pour plus de détails sur la façon de le faire en Python ou comment comparer des images en général?
- oui, je voulais comparer pour voir si elles sont identiques, y compris les chiffres/de lettres affichées dans le logiciel
Vous devez vous connecter pour publier un commentaire.
Il y a des manières suivantes pour faire la comparaison.
Obtenir une mesure de la similarité de deux images, vous pouvez calculer la moyenne quadratique (RMS) de la valeur de la différence entre les images. Si les images sont exactement identiques, cette valeur est égale à zéro. La fonction suivante utilise la différence de la fonction, et calcule ensuite la valeur RMS de l'histogramme de l'image résultante.
Le moyen le plus rapide pour déterminer si les deux images ont exactement le même contenu est d'obtenir la différence entre les deux images, puis de calculer la boîte englobante de la non-zéro régions dans cette image. Si les images sont identiques, tous les pixels dans l'image de différence est égale à zéro, et la boîte englobante de la fonction renvoie None.
range(256)
avecrange(len(h))
pour la robustesse.map(lambda x, i: x*(i**2), h, range(len(h)))
. Cheers! 😉return math.sqrt(reduce(operator.add, map(lambda h, i: i%256*(h**2), h, range(len(h))) ) / (float(im1.size[0]) * im1.size[1]))
Je suis le maintien d'une bibliothèque Python appelé pyssim qui utilise le Structuré de Similarité (SSIM) méthode pour comparer deux images.
Il n'a pas de liaisons python, mais le perceptualdiff programme est aussi génial à la comparaison de deux images - et assez rapide.
Je ne peux pas donner un prêt à l'usage de réponse, mais je vais vous (je pense) la bonne direction.
Une façon simple de comparer deux images est de faire une table de hachage de leurs représentations binaires et ensuite voir si ces hashs sont les mêmes. Un problème avec cela, c'est avec la fonction de hachage que vous souhaitez utiliser et vous devez en chercher un qui ont peu de chances de collisions, et l'autre est un fichier image a probablement les métadonnées attachées à l'origine des informations binaires, de sorte que vous aurez à examiner la façon de couper les métadonnées afin de comparer les images uniquement à l'aide de leurs binaire info.
Aussi, je ne sais pas pour vous, mais probablement la représentation binaire d'une image codée au format jpg est différente à partir d'une image codée en png, donc vous devriez être conscient de cela.