PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tracking von Objekten



vexus
16.01.2006, 10:33
Hallo zusammen,
ich soll für meine diplomarbeit objekte mit stereokameras verfolgen, sprich auf dem bild immer wieder lokalisieren. die tiefenextraktion mit zwei kameras läuft schon (allerdings sehr langsam).
ich dachte mir daher, nur einige linien in der mitte zu benutzen.
wenn ich nun zwei disparity maps (tiefen mappe) erhalte, die eine nach der anderen erstellt wurde, könnte ich doch mit hilfe von einer korrelationsfunktion die objecte vergleichen und somit die position der einzelnen objekte wiederfinden? meint ihr das könnte laufen?

gruss
eugen

ogni42
17.01.2006, 09:53
Kannst Du mal ein paar Randparameter geben:
Ist die Position des Objektes im Bild bekannt?
Ist das Objekt positions- und , rotationsinvariant, d.h. z.B. eine zu verfolgende Tasse ist immer aufrecht stehend direkt von vorne zu sehen)?

vexus
17.01.2006, 10:21
hi ogni42,
das objekt ist nicht bekannt, es handelt sich um grössere steine. ich will auch nicht alle objekte verfolgen nur einige um diese dann mit einer DEM (Digital Elevation Map) zu vergleichen. hiermit könnte dann die position des roboter auf der DEM berechnet werden. wie hoch die objekte sind ist mir in sofern egal, als dass sie nicht eine gefahr für den robo darstellen (sprich ca. 40cm)
da der robo fährt sind die objekte nicht "positions- und rotationsinvariant" aber da er sehr langsam fährt müsste es möglich sein die objekte trotzdem auf dem folgenden bild wieder zu finden.

gruss
eugen

ogni42
17.01.2006, 15:55
Da es um feste, unbewegliche Objekte geht, kommt mir folgende Idee:

Du hast zwei Tiefenmaps.
Du kennst die Geschwindigkeit mit der sich Dein Roboter bewegt.
Damit kannst Du anhand der ersten Tiefenmap und Deiner Geschwindigkeit eine erwartete Tiefenmap erstellen.

Objekte die nicht dem Erwartungswert entsprechen fallen schon mal raus (die bewegen sich und sind damit nicht die Steine).

Dann interessieren nur noch die verbleibenden Objekte. Dazu kannst Du im ersten Bild Kandidaten extrahieren (über einen beliebigen Algorithmus, z.B. labeling) und mit der Bounding Box der Kandidaten eine Kreuzkorrelation im zweiten Bild durchführen. Die Koordinate der höchsten Korrelation ist dann die Position des Steines aus dem ersten Bild.

Das kannst Du dann sukzessive für die anderen Kandidaten durchfürhren.

Das Ganze hat natürlich auch Nachteile:
Speicherbedarf
Rechenleistungsbedarf (Pixeloperationen sind halt teuer).

vexus
18.01.2006, 00:46
danke vielmals.
ich versuch dass nun mal zu realisieren. der speed wird halt nicht das wahre sein aber eben.

gruss
eugen

ogni42
18.01.2006, 17:54
Vielleicht reduziert die LTILib ja Deinen Aufwand etwas....

http://www.techinfo.rwth-aachen.de/Software/Ltilib/index.html

vexus
19.01.2006, 00:37
danke klingt wirklich interessant.