2011-03-11 8 views
3

J'ai besoin de déterminer l'existence d'une image plus petite dans une image plus grande.Parties de correspondance floue d'une image

Le match doit être flou et, de préférence, je devrais savoir à quel point il correspond (%), mais je peux calculer la précision de mon auto après que le match soit fait si nécessaire.

Mon objectif est de faire correspondre un spectrogramme FFT (Fast Fourier Transfrom) (visualisation des fréquences en musique) avec la piste musicale originale. La petite image avec laquelle je fais correspondre est seulement un sous-ensemble (à la fois dans le temps et dans la gamme de fréquence) de la piste d'origine (comme une découpe de l'image ci-dessous).

Où dois-je commencer? Les mêmes algorithmes utilisés pour la reconnaissance d'objets conviennent-ils à cette tâche?

Je cherche principalement des bibliothèques/échantillons C#/.Net, mais aussi des informations sur les implémentations et les problèmes/pièges. J'envisage d'utiliser des réseaux neuronaux artificiels pour l'apprentissage de la reconnaissance. Des pensées?

Exemple de ce que les images que je veux correspondre peut ressembler à: http://img812.imageshack.us/img812/548/musicspectogram2.png

Répondre

0

Je pense que traiter ce problème comme un problème de reconnaissance d'image ignore la structure sous-jacente du problème. Plus précisément, vous voudrez peut-être regarder comment Shazam résout le problème. Cette question sur Quora a quelques liens intéressants:

http://www.quora.com/How-does-Shazam-work

D'abord, an academic paper décrivant l'algorithme. Vous remarquerez qu'ils commencent également avec un spectrogramme, mais à partir de là, choisissez un petit nombre de points de repère en utilisant un algorithme adapté au problème. Ils l'utilisent ensuite essentiellement comme identifiant d'empreinte digitale dans une base de données.

Deuxièmement, an article on Slate, ce qui est compréhensible à un niveau plus élevé, mais peut être utile.

+0

J'ai fini par l'implémenter moi-même et j'utilise certaines des mêmes techniques que Shazam. Si j'avais vu cela auparavant, ça aurait beaucoup facilité le processus (en n'ayant pas à passer par là;)). J'envisage de faire un article de blog décrivant mon approche, je suis à peu près sûr que cela ne viendra pas briser les brevets de Shazam. –

0

Une image de corrélation peut fonctionner. Cela dépend des différences entre votre image complète et la partie partielle.

Exemple Mathematica:

enter image description here

Si vous publiez un exemple complet d'une image complète et partielle, peut-être nous pouvons travailler plus.

D'autres alternatives existent également: la comparaison des FFT et l'analyse des ondelettes, pour n'en nommer que deux autres.

Questions connexes