2012-11-17 13 views
5

Ich muss eine Software zur Verfolgung von bewegten Objekten in Bildströmen mit dem Kondensationsalgorithmus und der OpenCV-Bibliothek implementieren. Ich habe gelesen, dass OpenCV eine Implementierung dieses Algorithmus beinhaltet, aber ich habe keine Beispiele oder Tutorials gefunden, die erklären, wie man die entsprechenden Funktionen von OpenCV benutzt.Wie funktioniert der in OpenCV verfügbare Kondensationsalgorithmus?

cvCreateConDensation Die Funktion ordnet die CvConDensation Struktur und erfordert die Dimension des Zustandsvektors (dynam_params), die Dimension des Messvektors (measure_params) und die Anzahl der Proben (sample_count).

  • Die Dimension des Zustandsvektors zu den Objektstatus beziehen soll: Wenn beispielsweise der Zustand der Mittelpunkt des verfolgten Objekts sein könnte, dann sollte der Zustandsvektor die beiden Koordinaten des Zentrums des Objekts enthalten, , so sollte die Dimension des Zustandsvektors in diesem Fall 2 sein; in ähnlicher Weise, wenn der Zustand eines Objekts durch S Punkte, die zu ihrer Form gebildet ist, dann werden I angeben 2 * S als dynam_params Wert (dh die Anzahl der Koordinaten gleich 2 * S). Ist das richtig?
  • Die Anzahl der Proben ist die Anzahl der Partikel. Daher muss der Parameter sample_count mit der Anzahl der Partikel festgelegt werden, die für die Verfolgung des Objekts verwendet werden sollen.
  • Was ist mit der Dimension des Messvektors? Was ist der Zweck der measure_params Parameter?

Die Funktion cvConDensInitSampleSet initialisiert den Probensatz für den Kondensationsalgorithmus. Mit welcher Regel wird der Mustersatz initialisiert? Mit welcher Verteilung wird der Stichprobensatz initialisiert? Gibt die Startposition und die Bounding Box des zu verfolgenden Objekts an, wie diese Funktion den Beispielsatz initialisiert?

Was ist die Funktion, die eine vollständige Interaktion führt (wählen, vorhersagen und Maß) des Algorithmus? Wie werden die Proben aktualisiert?

Gibt es ein Tutorial, das im Detail erklärt, wie man die in OpenCV verfügbaren Funktionen benutzt?

+1

http: // Antworten .opencv.org/question/6985/Syntax-für-Partikel-Filter-in-opencv-243/könnte helfen? – nkint

+0

In den letzten Monaten konnte ich das Problem lösen, indem ich den Algorithmus ohne Verwendung von OpenCV implementierte, aber Ihre Verbindung könnte für andere Benutzer nützlich sein. – enzom83

+0

hast du deinen Code veröffentlicht? (Ich arbeite an Multi-Target-Tracking mit opencv und ich suche nach Methoden Implementierungen Papierreferenzen was auch immer) – nkint

Antwort

1

Here ist eine weitere Implementierung eines Partikelfilters, und die OpenCV und GSL-Bibliotheken wurden verwendet. Der Quellcode des Autors ist leicht zu lesen. Vielleicht kannst du etwas daraus lernen.

+1

Willkommen bei SO. Es wäre großartig gewesen, eine spezifischere Antwort zu erhalten, insbesondere mit Beispielen, wie genau die in der Frage erwähnten Funktionen verwendet werden. – jogojapan

+1

Leider ist die Datei mit dem Quellcode nicht mehr auf dieser Website vorhanden. – enzom83