J'ai besoin d'une manière simple et rapide pour comparer deux images de la similitude. I. e. Je veux obtenir une valeur élevée si elles contiennent exactement la même chose, mais peut avoir quelques fond légèrement différents et peuvent être déplacés ou redimensionnés par quelques pixels.
(De plus concret, si ce qui compte: une image est une icône et l'autre image est une sous-zone de capture d'écran et je veux savoir si cette sous-zone est exactement l'icône ou pas.)
J'ai OpenCV , mais je me suis toujours pas habitué.
Une possibilité, j'ai pensé: Diviser les deux photos en 10x10 cellules et pour chacune de ces 100 cellules, de comparer l'histogramme de couleur. Ensuite, je peux mettre quelques constitué de la valeur seuil, et si la valeur que je reçois est au-dessus de ce seuil, je suppose qu'ils sont similaires.
Je n'ai pas encore essayé de comment ça fonctionne, mais je suppose que ce serait assez bon. Les images sont déjà à peu près similaires (dans mon cas d'utilisation), donc je peux l'utiliser plutôt une haute valeur de seuil.
Je pense qu'il y a des dizaines d'autres solutions possibles pour ce qui serait plus ou moins (comme la tâche elle-même est assez simple car je ne veux détecter la similarité s'ils sont vraiment très similaires). Que suggérez-vous?
Il y a quelques très liés / questions similaires à propos de l'obtention d'une signature ou empreinte digitale/hachage à partir d'une image:
- OpenCV / SURF Comment générer un hash de l'image / empreinte / signature de l'descripteurs?
- Image d'empreinte digitale afin de comparer la similarité de nombreuses images
- Près De-Dupliquer Image De Détection
- OpenCV: Image des Empreintes digitales et de les Comparer à l'Encontre de la Base de données
Aussi, je suis tombé sur ces implémentations qui ont de telles fonctions pour obtenir une empreinte digitale:
- libphash
- imgSeek (dépôt GitHub) (GPL) sur la base du document Rapide Multirésolution de l'Image de l'Interrogation
Un peu hors-sujet: Il existe de nombreuses méthodes pour créer des empreintes numériques. MusicBrainz, un service web qui fournit de l'empreinte de recherche pour les chansons, a un bon aperçu de leur wiki. Ils sont à l'aide de AcoustID maintenant. C'est pour la recherche exacte (ou la plupart du temps exact) matchs. Pour trouver une allumettes (ou si vous n'avez que quelques extraits ou de bruit élevé), jetez un oeil à Echoprint. Une relative DONC, la question est ici. Donc il semble que ce problème est résolu pour l'audio. Toutes ces solutions fonctionnent très bien.
Un peu plus générique question à propos de la recherche floue, en général, est ici. E. g. il est de la localité sensible de hachage et le plus proche voisin de recherche.