Handerkennung mit OpenCV

8

Ich verwende die OpenCV-Bibliothek für ein Bildverarbeitungsprojekt, um Hände zu erkennen. Ich initialisierte das Bild in iplimage , färbte es und konvertierte es dann in HSV mit cvCvtColor(imageHand,imageHand,CV_BGR2HSV ); Ich kenne den effizienten Algorithmus nicht, das ist mein Problem. Bitte überprüfe meinen Code:

%Vor%

Ich denke, der Bereich des gesuchten h ist > 85 !? Wenn du einen besseren Algorithmus kennst als mich, führe mich bitte.

    
Mohamed Kamal 06.02.2012, 23:15
quelle

2 Antworten

6

Wenn Sie sich diese Seite ansehen, Handerkennung mit opencv , finden Sie ein ähnliches < ein href="http://www.andol.info/wp-content/uploads/2009/03/handdetection.cpp"> Algorithmus zu dem, was Sie verwenden. Ich würde sagen, dass der einfachste Weg zur Erkennung einer Hand durch die Verwendung von Farbe (d. H. Hautdetektion) erfolgen würde. Ich würde definitiv empfehlen, zuerst den von dieser Seite bereitgestellten Algorithmus zu betrachten. Es gibt einen anderen Teil, der auch in die Gestenerkennung eingreift, wenn es sich um ein eventuelles Problem handelt, mit dem Sie umgehen müssen.

Andere Möglichkeiten sind:

  • Hintergrund Subtraktion
    • Das ist sehr einfach und fehleranfällig, besonders wenn Sie planen, dass sich der Hintergrund ändert. Aber wenn du erwartest, dass du es nur vor einer, sagen wir, weißen Wand verwendest ... könnte das ein einfacher Weg sein, darüber zu gehen.
  • Formanalyse
    • Es hat einige Erfolge mit Erkennung von Fingerspitzen mit der verallgemeinerten Hough-Transformation gegeben . Falsche Positive können jedoch zu einer Sorge werden, und Effizienz ist eine Sorge, insbesondere in Situationen mit einer beträchtlichen Menge an Hintergrundinformationen.
Ancallan 09.02.2012, 08:27
quelle
2

als Ancallan hat Handerkennung mit opencv oben, möchte ich einige weitere Informationen zum Thema Gestenerkennung hinzufügen. In diesem Beitrag verwendete der Autor eine Methode der Hautfarbensegmentierung, die unter bestimmten Umständen recht gute Ergebnisse erzielt hat.

Ein neuer Beitrag zur Erkennung von Handgesten mit openCV wurde aktualisiert, in dem der Autor einen HAAR-Klassifikator zur Erkennung geschlossener Handflächen verwendet hat , und die Ergebnisse sind viel robuster als die früheren. Es muss jedoch darauf hingewiesen werden, dass die Erkennungsobjekte irgendwie eingeschränkt sind, da ein Klassifikator nur für eine Geste funktioniert.

    
Andol Li 09.11.2012 15:52
quelle