Entwickler-Ecke
Multimedia / Grafik - Webcam Bewegungserkennung
Boldar - Do 08.01.09 20:14
Titel: Webcam Bewegungserkennung
Ich hab erstmal ne rein theoretische Frage:
Kann man es mit delphi hinkriegen, dass wenn man ein Objekt zügig in gerader Linie Durch das "Blickfeld" einer Webcam bewegt, das Festzustellen, und auch Richtung und Winkel (So auf 45 Genauigkeit) zu ermitteln?
Ist das Sehr komplex?
Also einen Bewegungsmelder mit Delphi + Webcam habe ich schonmal gesehen, aber das is ja wohl einfacher...
mfg Boldar
Shorty - Do 08.01.09 21:37
Um was für ein Objekt handelt es sich denn? Ein einfarbiges Objekt auf einer andersfarbigen Fläche oder z.B. eine Hand vor einem Zimmerhintergrund?
Ersteres ist recht einfach, man durchsucht die aufgenommenen Bilder nach der Farbe des Objekts, nimmt von beiden Bildern den jeweils höchsten Punkt und bildet ihr x- und y-Differenz. Mit diesen Werten und dem Tangens bestimmt man dann den Winkel der Bewegung.
Ist es ein komplexeres Bild, wird es schon schwerer, da die Erkennung wesentlich schwieriger ist.
MfG Shorty
Boldar - Do 08.01.09 21:50
mmh also es soll eine Hand vor einem Hintergrund sein, allerdings ändert sich der Hintergrund nie und ist andersfarbig (weiss) wie die Hand.
Shorty - Do 08.01.09 22:04
Wenn der Hintergrund weiss ist, kannst du nach den Pixel suchen, die mit einer gewissen Toleranz nicht weiss sind. Wenn du dann die beiden oberen Pixel nimmst, bekommst du sowas raus:
Quelltext
1: 2: 3: 4: 5:
| P1 o | | P2 |_______________o |
Daraus lässt sich ein rechtwinkliges Dreieck bilden, von denen du die bei Katheten kennst. Den Winkel an P2 kannst du dann über die Umkehrfunktion des Tangens berechnen:
winkel:= arctan(ydiff / xdiff)
Das ergibt den Winkel im Bogenmaß, den musst du dann gegebenfalls noch umwandeln.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!