Guten Morgen, mit einer WebCam soll der Abstand zu einer blinkenden LED gemessen werden. Wie ist die genau Vorgehensweise, damit der Abstand detektiert werden kann? (Daten WebCam: Logitech c920, HD, AutoFocus, Brennweite 3,67mm, Diagonales Sichtfeld 78°)
Wenn's keine Stereo-Webcam ist, würde ich sagen, gar nicht. Woher soll die Webcam die Entfernung haben? Sie "sieht" die LED als Punkt. Wenn sich deren Abstand ändert, aber die X- und Y-Position auf dem Sensor nicht, dann merkt die Kamera nix davon. Eine Lösung wäre meiner Meinung nach nur eine Stereo-Kamera (3D) oder eine zweite Kamera (was dann auf das Gleiche rauskommt) und dann mit den beiden Bildern eine Triangulation machen... Nur so ein Gedanke: Halt dir mal ein Auge zu und versuche dann mal den Abstand zu einem Gegenstand so abzuschätzen, daß du ihn auf Anhieb antippen kannst. Mit zwei Augen kein Problem, aber mit einem...
GHi Bernd S., vielen Dank für deinen Beitrag. Mit einer zweiten LED könnte man aber den Abstand detektieren oder?
WebCamUser schrieb: > Mit einer zweiten LED könnte man aber > den Abstand detektieren oder? Genau! Man braucht exakt 2 Lichtquellen um mit nur einem Auge räumlich sehen zu können. Halleluja!
Wenn man den Abstand zwischen den beiden LED's kennt, könnte man eine Triangulation machen. Den Pixelabstand der Kamera müßte man dann in einen Winkel umrechnen und kann dann beispielsweise sagen: "Die beiden LED's sind 12° auseinander." Wenn man den Abbildungsmaßstab der Kamera bzw. deren Objektiv kennt (das Objektiv dürfte auch keinerlei Verzerrungen haben), kann man aus dem bekannten Abstand zwischen den LED's und dem Winkel (in dem Beispiel 12°) dann die Entfernung zu den LED's berechnen. Stichworte: Trigonometrie, Dreiecksberechnung
Petra schrieb: > WebCamUser schrieb: >> Mit einer zweiten LED könnte man aber >> den Abstand detektieren oder? > > Genau! Man braucht exakt 2 Lichtquellen um mit nur einem Auge räumlich > sehen zu können. Halleluja! Mit zwei beliebigen LED's, die man irgendwo sieht, geht das natürlich nicht. Da hast du schon Recht. Aber wenn man den Abstand zwischen den LED's kennt und die beiden auch die gleiche Entfernung zur Kamera haben (das ist wichtig!), dann sollte es schon gehen.
Bernd S. schrieb: > > Nur so ein Gedanke: Halt dir mal ein Auge zu und versuche dann mal den > Abstand zu einem Gegenstand so abzuschätzen, daß du ihn auf Anhieb > antippen kannst. Mit zwei Augen kein Problem, aber mit einem... Der Autofocus einer Kamera 'sieht' nicht stereoskopisch, kann aber trotzdem (indirekt) die Entfernung zum Objekt erkennen und präzise den Focus einstellen. Rein theoretisch könnte man also die aktuelle Position des Autofocus auslesen und somit die Entfernung ermitteln.
Hallo Bernd, den Pixelabstand von beiden Leuchtquellen kann ich bereits mit der WebCam ermitteln. Was hat es nun mit der Triangulation auf sich ?
Unter der Voraussetzung, dass die Verbindungslinie zwischen den beiden LEDs parallel zur Bildebene der Kamera liegt, kannst du aus dem Abstand zwischen den LEDs, dem Abstand der Bilder der LEDs auf dem Sensorchip und der Brennweite der Kamera mittels Strahlensatz den Abstand der LEDs von der Kamera berechnen. Ist das Kameraobjektiv nicht verzeichnungsfrei (wovon bei einer Webcam auszugehen ist), musst du je nach Genauigkeitsanforderungen zusätzlich noch die Verzerrungen bestimmen und herausrechnen.
Mit vier LEDs in Tetraederform könntest Du den Mittelpunkt auch dann errechnen, wenn die Ebene frei ist. Eindeutig allerdings nur, wenn die LEDs unterschiedliche Farben haben.
WebCamUser schrieb: > Hallo Bernd, > > den Pixelabstand von beiden Leuchtquellen kann ich bereits mit der > WebCam ermitteln. Was hat es nun mit der Triangulation auf sich ? Wie Yalu schon sagt, schau mal nach "Strahlensatz", damit kannst du die Entfernung berechnen. Wenn du den Abstand der LED's kennst und auch den Abstand der Kamerapixel, kannst du die beiden ins Verhältnis setzen. Und das so gewonnene Verhältnis benutzt du auf die Brennweite und kriegst damit die Entfernung zu den LED's.
>Man braucht exakt 2 Lichtquellen um mit nur einem Auge räumlich >sehen zu können. Halleluja! Wobei es auch eine Quelle und ein Spiegel sein könnte.
Lass' die Kamera schräg auf die Szene schauen, dann bewegt sich das Bild der LED horizontal oder vertikal im Bild - daraus kann man die Entfernung ableiten. Wenn du die Kamera mit dem Blinken der LED synchronisieren kannst, dann mach' je eine Aufnahme mit eingeschalteter LED und eine mit ausgeschalteter LED. Durch einfaches pixelweises Subtrahieren der beiden Bilder hast du den Lichtpunkt perfekt isoliert ...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.