OpenCV: Wie benutzt man die HOGDescriptor :: detect Methode?

8

Ich konnte bewegte Objekte in einem Video verfolgen.

Ich möchte jedoch entscheiden, ob ein Objekt Person ist oder nicht. Ich habe das HOGDescriptor in OpenCV versucht. HOGDescriptor hat zwei Methoden zum Erkennen von Personen: HOGDescriptor::detect und HOGDescriptor::detectMultiScale . OpenCV "sources \ samples \ cpp \ peopledetect.cpp" zeigt, wie HOGDescriptor::detectMultiScale verwendet wird, die das Bild in unterschiedlichem Maßstab durchsuchen und sehr langsam ist.

In meinem Fall habe ich die Objekte in einem Rechteck verfolgt. Ich denke, mit HOGDescriptor::detect zu erkennen, das Innere des Rechtecks ​​wird viel schneller sein. Aber das OpenCV-Dokument hat nur die gpu::HOGDescriptor::detect (ich kann immer noch nicht erraten, wie man es benutzt) und verpasste HOGDescriptor::detect . Ich möchte HOGDescriptor::detect verwenden.

Könnte jemand mir ein C ++ - Code-Snippet zur Verfügung stellen, das die Verwendung von HOGDescriptor::detect zeigt?

danke.

    
gouchaoer 17.01.2014, 18:15
quelle

2 Antworten

10

Da Sie bereits eine Liste von Objekten haben, können Sie die Methode HOGDescriptor::detect für alle Objekte aufrufen und die Ausgabe foundLocations array überprüfen. Wenn es nicht leer ist, wurde das Objekt als Person klassifiziert. Die einzige Sache ist, dass HOG standardmäßig mit 64x128 windows arbeitet, also müssen Sie Ihre Objekte neu skalieren:

%Vor%     
jet47 18.01.2014, 10:49
quelle
1
  • Wenn Sie OpenCV nicht mit CUDA aktiviert haben, ist der Aufruf von gpu::HOGDescriptor::detect gleich dem Aufruf von HOGDescriptor::detect . Keine GPU wird aufgerufen.

  • Auch für Code können Sie

    verwenden %Vor%

Bearbeiten:

  

Ich möchte jedoch entscheiden, ob ein Objekt Person ist oder nicht.

Ich glaube nicht, dass Sie diesen Schritt brauchen. HOGDescriptor::detect selbst wird verwendet, um Personen zu erkennen, sodass Sie sie nicht überprüfen müssen, da es sich bei den Personen um Personen handelt, die Ihrer Einrichtung entsprechen. Auf der anderen Seite können Sie den Schwellenwert festlegen, um die erkannte Qualität zu steuern.

    
herohuyongtao 18.01.2014 02:37
quelle

Tags und Links