IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenCV Discussion :

Utilisation de cvHaarClassifierCascade


Sujet :

OpenCV

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de xtra.creativity
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 108
    Par défaut Utilisation de cvHaarClassifierCascade
    Salut,

    Je regarde comment fonctionne le CvHaarClassifierCascade dans l'exemple facedetect mais j'ai un peu de mal a comprendre le fonctionnement. Comment puis je creer mon propre classifieur ? En guise d'exemple on trouve la detection du visage, des yeux .... si je veu faire pour la bouche par exemple, comment puis je proceder ?

    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 9
    Par défaut
    salut

    j'ai fait un tuto sur la génération d'un classifier tu peux la trouver
    de même j'ai commencé à bosser sur un projet qui la met en oeuvre :
    http://www.deb-indus.org/concombre
    c'est un petit programme qui permet de remplacer des objets détectés dans un flux webcam et de les remplacer par autre chose
    tu peux regarder les sources si tu veux d'autres exemples

  3. #3
    Membre confirmé Avatar de xtra.creativity
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 108
    Par défaut
    Cool, je regarde ca de suite

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 15
    Par défaut
    Salut AntalGeek,

    Merci pour ton tutoriel qui m'a beaucoup aidé á comprendre certains paramétrages d'OpenCV.

    J'ai lancé l'apprentissage avec tes propres fichiers et les paramètres que tu as utilisés (j'ai copier-coller ta même ligne de commande).
    Mais pourtant après 3 apprentissage, le nombres de stages du classifier abouti est différent : la première fois 19 en 2 jours, la seconde je l'ai arrêté á 22 parce que ca faisait près de 10 jours qu'il tournait, la je l'ai relancé et il est au 17e stage en une demi-journée (j'attends donc pour voir)...

    Pour le premier apprentissage :
    Je ne sais pas trop a quoi m'attendre comme résultat avec le haartraining. Peut-etre suis-je trop exigeant mais je trouve que 2-4 fausses positives par images en lancant le classfier sur le TRAINING set ca fait un peu beaucoup, surtout pour un modèle d'objet aussi simple que la bouteille.
    En plus, je me demande s'il se base pas sur le fond blanc de l'imagette insérée de la bouteille pour la détecter. Ca serait trop facile de détecter la bordure de l'imagette insérée.

    Pour le deuxieme apprentissage (que j'ai moi meme stopper car ca faisait qd meme 10 jours qu'il tournait et 2 jours sur le meme stage) :
    Il n'y avait quasiment aucun faux positifs mais le taux de faux negatifs etait pres de 40 % si c'est pas plus. C'est que le classifier etait trop restrictif et je ne pense pas que cela aurait arrangé les choses si je l'avais laissé continuer l'apprentissage.

    Sinon, pourrais-tu m'expliquer ce qu'opèrent les parametres suivants ? Je n'ai toujours pas compris malgré dse recherches sur Internet :
    [-nsplits <number_of_splits = 1>] le nombre de splits dans le decision tree... ? Le decision tree c'est le weak classifier ? Du coup, il y aurait deux tests à passer pour le weak classifier ? Comment sachant que : Haarfeature=PoidsRectNoir*SumPixelsRectNoir+PoidsRectBlanc*SumPixelsRectBlanc
    Je ne vois vraiment pas a quoi cela pourrait correspondre.

    Et par curiosité ceux la aussi :

    [-weighttrimming <weight_trimming = 0.950000>]

    [-eqw]

    [-err <misclass (default) | gini | entropy>]

    [-maxtreesplits <max_number_of_splits_in_tree_cascade = 0>]

    [-minpos <min_number_of_positive_samples_per_cluster = 500>]

    Une derniere question :
    Supposons que l'objet a detecter fait 50*100 pixels. Afin d'extraire le plus d'info possibles de l'objet
    a detecter, il fautdrait une taille des fenetres : sample_width = 50 et sample_height = 100, non ? Mais comme cela impliquerait de creer tellement de features que l'apprentissage durerait une eternite on prefere se limite a des tailles de fenetres plus petites... ?

    Cependant, j'ai l'impression que j'ai plus de fausses positives (en testant avec mes propres positives/negtatives) en augmentant la taille des fenetres (-w -h) (en faisant varier que ce parametre) . Cela te parait-il logique ?

    Merci d'avance pour toute ton aide et a tous ceux qui y contriburont.
    Je sais que ca en aidera surement pas mal d'autres aussi qui passeront par la.

    Vince

  5. #5
    Membre confirmé Avatar de xtra.creativity
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 108
    Par défaut
    J'ai trouver un document bien simpas :

    http://fsa.ia.ac.cn/files/OpenCV_Fac...ion_June10.pdf

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 15
    Par défaut
    Merci. Malheureusement, j'etais deja tombe dessus et ca m'a pas eclaire davantage....

    -Ca n'expique tjrs pas pourquoi en lancant deux fois le meme apprentissage les resultats differents...

    -Par rapport au parametre -nsplits et au weak classifier : un weak classifier est donc un decision tree ? et a chaque fils de l'arborescence, il y a un test par rapport a un masque de haar ? et le nombre de split correspond au nombre de masques de haar utilises dans un stage ?
    Desole si je m'exprime mal.

    -Quand on choisi la taille -w 20 -h 50, quelle taille ont les masques de haar qui sont crees ? Est-ce que ce sont tous les masques possibles de rapport width/heigth=2/5 sur toute la fenetre de taille 20 / 50 qui sont crees OU ce sont uniquement les masques de haar de taille w=20 et h=50 ?

    Je suis en train de lire l'article Empirical Analysis of Detection Cascades of Boosted Classifiers for Rapid Object Detection de Rainer Lienhart, Alexander Kuranov, Vadim Pisarevsky, 2002.
    Ca devrait peut-etre m'aider.

    Merci en tout cas

  7. #7
    Membre habitué
    Inscrit en
    Juin 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 10
    Par défaut Syntaxe
    Bonjour,

    Je vais devoir générer un classifier pour une pièce donnée dans le cadre d'un stage.

    Antalgeek, en ce qui concerne la syntaxe de negative.txt par exemple, tu y mets tous tes fichiers, en désordre. Pour pas dans l'ordre ?

    Merci

  8. #8
    Membre confirmé Avatar de xtra.creativity
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 108
    Par défaut
    Je suis partie sur autre chose temporairement (j'attends des ressources pour mon classifier) mais des que je mis remet je serai ravis de participer a la realisation d'un tuto. Et de tout maniere moi aussi c'est pour un stage donc il faut que je fasse une doc de son l'utilisation.

  9. #9
    Membre habitué
    Inscrit en
    Juin 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 10
    Par défaut Windows
    Bonjour !

    Je travaille sous windows et j'ai quelques questions à propos des lignes de commandes.
    Je teste avec les images de Antalgeek (les dossiers négative et positive, les fichiers négative.txt et positive.txt et les deux script) juste pour assimiler.
    Je souhaite lancer la première commande
    perl createtestsamples.pl positive.txt negative.txt training/ (sous DOS)
    et j'ai :
    'opencv-createsamples' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commande.

    Si quelqu'un pouvait m'aider ? J'ai déjà passé plusieurs heures dessus.
    (Je suis dans le bon répertoire (mon répertoire de travail) et la library OpenCV dans C:\ProgramFile\OpenCV et perl est installé)

    Merci

  10. #10
    Membre confirmé Avatar de xtra.creativity
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 108
    Par défaut
    Regarde tes variables d'environement...

  11. #11
    Membre habitué
    Inscrit en
    Juin 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 10
    Par défaut
    Bonjour

    J'ai eu un coup de génie et j'ai trouvé ! Merci
    Je suis arrivé à générer le ficher xml.

    En parallèle je monte un petit tuto pour les utilisateurs de windows (ce qui servira par la suite aux autres stagiaires et à ceux qui pourraient être intéressé).

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  2. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo