Est Haar Cascade la seule technique disponible pour la reconnaissance d'images dans OpenCV
Je sais qu'il existe de nombreuses techniques de détection dans OpenCV, comme le SURF, la STAR, ORBE, etc...mais ces techniques sont pour la fonctionnalité de détection de nouveaux flux vidéo, pas pour traiter les cas spécifiques d'objets qui nécessitent un apprentissage préalable. OpenCV la documentation n'est pas tout à fait aussi facile à feuilleter et je n'ai pas encore été en mesure de trouver quelque chose en plus de Haar, dont je sais qu'il traite mieux avec la reconnaissance des visages.
Alors y at-il d'autres techniques en plus de Haar? Le Haar technique remonte à la recherche il y a 10 ans, donc, idéalement, j'espère que certains ont plus de progrès depuis qu'ont été mis en œuvre dans OpenCV.
OriginalL'auteur mugetsu | 2011-09-29
Vous devez vous connecter pour publier un commentaire.
Si vous êtes à la recherche pour OpenCV l'apprentissage de la machine algorithmes de type, découvrez cette lien.
Pour un état de l'art sur la volée de l'objet de l'algorithme de détection, ont un oeil à OpenTLD. Il utilise les boîtes englobantes et forêts aléatoires d'apprendre à propos d'un objet au cours du temps. Découvrez la vidéo de démo ici.
Aussi consulter les matching_to_many_images.cpp l'échantillon de OpenCV. Il utilise la fonctionnalité de descripteurs pour correspondre à des objets comme Google Goggles œuvres. Un exemple associé à cela est le bagofwords_classification.cpp de l'échantillon. Il est peut-être ce que vous cherchez dans ce cas. Il utilise la fonction des détecteurs (SURF, TAMISER, etc...) afin de détecter des objets et de les classer en comparant les positions relatives des fonctionnalités à un tirées de la base de données de caractéristiques. Jetez un oeil aussi à cette tutoriel du MIT.
L'latentsvmdetect.cpp peut aussi être un bon point de départ pour vous.
Espère que ça aide!
Ce type d'objets que vous essayez de détecter? Comme si vous essayez de détecter la présence de personnes, vous pourriez regarder la opencv peopledetect de l'échantillon. Il utilise HoG descripteurs et SVM (je crois) pour le train.
Je suis en train de détecter tous les objets, y compris les personnes. Idéalement dans mon application je veux le logiciel à reconnaître des milliers d'objets de différentes classes et les instances. J'ai été assez coincé sur la recherche de l'algorithme le mieux adapté pour cela. Est Haar, la seule chose que je peux utiliser dans OpenCV?
Afin de classer tous les objets dans une scène, vous avez besoin d'avoir formé votre logiciel à ce que ces objets sont avant de la main. Les exigences de collecte de données sur la tâche sera un peu raide 🙂 Il sera nécessaire de recueillir des images de chaque objet que vous voulez classer (ça va prendre plus de votre temps). Vous aurez besoin d'utiliser une sorte de classificateur (par exemple, Haar Cascades, SVM, de Porcs, de Boosté les arbres, etc...) pour se renseigner sur un patch de pixels que vous de segment. La segmentation pourrait impliquer la détection de contours ou peut-être soustraction du bruit de fond, ou encore la segmentation manuelle.
quel type de classificateur serait de travailler plus efficacement? Je suis actuellement limité à un consommateur de la classe de l'ordinateur portable. Tous ces classificateur incapable d'atteindre à la volée de la détection d'objet comme openTLD? Je veux réaliser quelque chose de semblable, mais sans le kinect:youtube.com/watch?v=fQ59dXOo63o
OriginalL'auteur mevatron