1

J'ai la tâche suivante: reconnaître un ensemble de formes simples dessinées à la main sur une feuille de papier à partir d'une image fixe (pas un flux vidéo), donc ils peuvent ne pas être exactement identiques pixelwise. Ces formes sont essentiellement des symboles pour les portes, les fenêtres, etc. dans un plan d'étage (voir l'image ci-jointe), elles peuvent donc être légèrement écaillées ou pivotées (pas de 90 °). Il y a environ 5 différents.Reconnaître la forme dessinée à la main dans OpenCV

Jusqu'à présent, je suis tombé sur EIPD (et ses variantes OpenCV-SURF et ORB) ainsi qu'un classificateur en cascade à reconnaître les caractéristiques comme Haar.

Pour SIFT, il semble y avoir trop peu de points clés dans une telle forme alors que je n'ai pas réussi à faire fonctionner le classificateur en cascade haar-formés. En outre, un classificateur en cascade semble un peu lourd pour reconnaître des formes aussi simples, non?


Est-ce que quelqu'un d'entre vous a de bons indices ou des approches alternatives? Ou peut-être avez-vous même un petit bout de code que je peux utiliser?

Symbol for a door

+0

Pas exactement en double, mais probablement utile: http://stackoverflow.com/q/31974843/5008845 – Miki

+0

merci @Miki, l'essayer dès que j'ai une chance –

Répondre

1

Je pense que des gradients (histogrammes HOG) devraient fonctionner très bien pour ces éléments.

+1

je vais essayer HOG. Pour info, j'ai trouvé ce [github repo] (https://github.com/DaHoC/trainHOG) qui donne un exemple de code C++. –

+0

Merci, cela peut être utile. –