2012-12-09 7 views
7

Je suis encore un débutant dans OpenCV.Détecter une forme spécifique en utilisant OpenCV

Actuellement, j'essaie de détecter une forme spécifique comme dans l'image dans le lien ci-dessous en utilisant OpenCV.

enter image description here

J'ai lu de nombreux blogs et des articles sur la détection de formes en utilisant OpenCV mais je ne l'ai pas trouvé quoi que ce soit lié à ce que je travaille.

De même, je ne peux pas utiliser des méthodes comme cvHistogram, parce que je ne veux pas trouver de correspondances dans deux images presque identiques, mais je veux détecter une forme spécifique, et non des formes géométriques comme des rectangles, des cercles

Connaissez-vous un moyen de le faire?

Merci à l'avance.

+2

Votre question peut utiliser un peu de raffinement: quelle est la forme que vous cherchez? Quelles sont les méthodes que vous avez essayées et qui n'ont pas fonctionné pour vous? pourquoi n'êtes-vous pas satisfait des autres méthodes que vous avez vues dans les blogs etc? – Shai

+0

Si seulement les choses étaient si faciles ... tout ce que vous auriez à faire dans ce cas est de détecter si une courbe est ouverte ou fermée. Dans le cas binaire, c'est trivial à faire quand il ne se croise pas avec d'autres lignes. Mais je crois que votre exemple ne représente pas votre problème réel. Voudriez-vous poster un vrai exemple? – mmgp

Répondre

4

Il est difficile de dire comment détecter cette forme. Vous devriez spécifier quelques critères sur la forme que vous voulez détecter. Par exemple dans votre cas:

  1. devrait-il toujours être dans un autre contour?
  2. devrait-il avoir ce gros blob noir?

Et ainsi de suite.

Et après cela, il sera plus facile de trouver un bon algorithme de détection.

Par ailleurs la lecture de ces documents seront utiles:

  1. Finding contours in your image
  2. Structural Analysis and Shape Descriptors
Questions connexes