2010-04-24 2 views
3

J'espérais que quelqu'un pourrait me pointer dans la bonne direction ici. Avec une image d'un dé (d'en haut) je veux reconnaître quel côté est en place.Reconnaissance d'objet à partir de gabarits

Je comprends les bases en jeu ici, mais j'ai du mal à saisir la puissance d'OpenCV. J'imagine que je veux une photo de chaque côté du dé. Ensuite, je peux en quelque sorte les comparer tous à l'image actuelle pour être classés. Comment puis-je utiliser OpenCV pour cela?

Merci, Jonathan

Répondre

5

Alors que cela pourrait fonctionner et OpenCV a des fonctions de correspondance de modèle, il serait probablement plus difficile que nécessaire. De bons résultats nécessiteraient que l'éclairage soit plus ou moins inchangé entre toutes les images, et que la caméra soit fixe et qu'aucune distorsion projective ne se produise.

Au lieu de cela, je ferais quelque chose comme ceci:

  1. Dans l'image, recherchez la filière. La difficulté ici variera en ce qui concerne l'apparence de la filière et l'arrière-plan. Si vous avez un dé blanc sur un fond noir lpain (ou un autre couleur) alors trouver le dé sera facile.

  2. Lorsque le dé a été localisé, trouvez les yeux. Cela peut être fait en trouvant simplement tous les blobs noirs.

  3. Si nécessaire, assurez-vous que les yeux trouvés forment un motif cohérent. Par exemple. si le côté est à quatre, vous vous attendez à trouver les yeux comme les coins d'un carré, pas sur une ligne droite.

  4. Nombre d'yeux valides. Il y a ton côté.

Ce plan est assez vague car il y a beaucoup de façons d'effectuer chaque étape. Je crois cependant que tout ce dont vous avez besoin est disponible dans OpenCV. Bonne chance!

+1

+1 Belle reformulation d'une approche beaucoup plus facile du problème. – tom10