280 likes | 389 Views
Kamerabasierte Sensordatenverarbeitung. Optimierung der Kamera-parameter-Einstellung in farbkodierter Umgebung Adaptive Objektverfolgung. Benjamin Rank 24. Januar 2005. Übersicht. Optimierung der Kameraparameter-Einstellungen in farbkodierten Umgebungen
E N D
Kamerabasierte Sensordatenverarbeitung Optimierung der Kamera-parameter-Einstellung in farbkodierter Umgebung Adaptive Objektverfolgung Benjamin Rank 24. Januar 2005
Übersicht • Optimierung der Kameraparameter-Einstellungen in farbkodierten Umgebungen • Farbkodierte Umgebungen und ihre Probleme • Was sind die Voraussetzungen für die Optimierung? • Vorstellung eines genetischen Algorithmus • Ergebnisse in der Praxis des Robocup Kamerabasierte Sensordatenverarbeitung
Übersicht • Anwendung einer Kamera zur Adaptiven Objektverfolgung mit einem menschenähnlichen Roboterkopf • Aufbau des Roboterkopfes • Beschreibung des verwendeten demokratischen Integratiossystems • Auge-Hals-Motor-Koordination • Anwendung in Versuchen Kamerabasierte Sensordatenverarbeitung
Wo sind wir? • Optimierung der Kameraparameter-Einstellungen in farbkodierten Umgebungen • Anwendung einer Kamera zur Adaptiven Objektverfolgung mit einem menschenähnlichen Roboterkopf Kamerabasierte Sensordatenverarbeitung
Farbkodierte Umgebungen • Spezielle Menge von Farben vorgegeben • Semantik eines Objekts durch seine Farbe bestimmt • Probleme • Meist nur Name der Farbe • Lichtverhältnisse • Betriebsdauer • Kameraparameter Kamerabasierte Sensordatenverarbeitung
Kameraparameter • Veränderbare Parameter für im Folgenden verwendete Kamera [mögliche Werte] • Exposure: Belichtung und Empfindlichkeit [0, ..., 498] • Iris: Belendeneinstellung [0, ..., 4] • Gain: Verstärkung (Signal) im CCD-Chip [0, ..., 255] • Saturation: Sättigung [0, ..., 255] • WhiteBalance (red–blue): Weißausgleich [0,...,255] • Brightness: Helligkeit [0, ..., 511] • Gamma: Gammakorrektur [0, 1] • Teilmenge des IEEE1394 IIDC Standard Kamerabasierte Sensordatenverarbeitung
Warum ein besonderer Algorithmus? • Manuelle Einstellung sehr zeitaufwendig • Ergebnis hängt stark von Einstellungen der Parameter ab • Automatische Einstellungen der Kamerahersteller oft nicht für Anwendung geeignet (zu generell) Kamerabasierte Sensordatenverarbeitung
Was muss der Algorithmus leisten? • Ziel: Parameter der Kamera so wählen, dass dargestellte Farben möglichst nahe bei ihrem Farb-Prototyp liegen • Prototypen sind z.B. Ecken des RGB-Würfels (im Robo-Cup) Kamerabasierte Sensordatenverarbeitung
Eingaben für den Algorithmus • Manuelle Markierung von Gebieten jeder Farbe • Bewertung einer Einstellung • Abstand von durchschnittlichem Farbwert eines Gebietes zu Prototyp • für alle Farben parallel zu berechnen Kamerabasierte Sensordatenverarbeitung
Wie lässt sich das Problem lösen? • Genetischer Algorithmus, da • Bewertungsfunktion ist weder linear noch kontinuierlich • Kein analytisches Modell für Abhängigkeiten der Variablen vorhanden • Großer Suchraum • Goldberg‘s Simple Genetic Algorithm Kamerabasierte Sensordatenverarbeitung
Goldbergs Simple Genetic Algorithm • Erzeugung zufälliger Population • Bewertung aller Individuen und Weiterverwendung der besten (Berechnung der Fitness) • Erzeugung neuer Individuen durch Anwendung der Operatoren Crossover und Mutation (mit bestimmten Wahrscheinlichkeiten) • Weiter bei (2) bis Abbruchkriterium erreicht(z.B. maximale Anzahl von Generationen) • Monotoner Any-Time-Algorithmus Kamerabasierte Sensordatenverarbeitung
Entwicklung einer Population Kamerabasierte Sensordatenverarbeitung
Beispielbilder RGB-Bild mit Standard-Einstellung Klassifiziertes Bild mit Standard-Einstellung RGB-Bild nach Anwendung des Algorithmus Klassifiziertes Bild mit verbesserter Einstellung Kamerabasierte Sensordatenverarbeitung
Zusammenfassung • Kamera-Parametereinstellungen sehr wichtig • Manuell nicht sinnvoll möglich • Kamerainterne Algorithmen nicht brauchbar • Genetischer Algorithmus liefert gute Ergebnisse Kamerabasierte Sensordatenverarbeitung
Wo sind wir? • Optimierung der Kameraparameter-Einstellungen in farbkodierten Umgebungen • Anwendung einer Kamera zur Adaptiven Objektverfolgung mit einem menschenähnlichen Roboterkopf Kamerabasierte Sensordatenverarbeitung
Roboterkopf • Simuliert menschliches Hals-Augen-System • 9 Freiheitsgrade (DoF) • Zur Objektverfolgung nur 6 DoF verwendet • Servomotoren Kamerabasierte Sensordatenverarbeitung
Ziele der Arbeit • Langfristig • Verständnis des biologischen Sehlernvorgangs • Kurzfristig • Komplett autonomes Lernen und Verfolgen von unbekannten Objekten • Schnelle Bewegungen über weite Strecken • Echtzeitverarbeitung (mit 30 Hz Bildeingabe) • Möglichst nah an biologischen Vorgaben Kamerabasierte Sensordatenverarbeitung
Demokratisches Integrationssystem • Extraktion verschiedener Hinweise (Cues) aus Bild • Autonomes Zusammenführen von mehreren Hinweisen zu einem Resultat • Ständige Anpassung der Zuverlässigkeit jedes Hinweises • Ständige Anpassung des Modells jedes Hinweises Kamerabasierte Sensordatenverarbeitung
Von Hinweisen zum Blickpunkt Interessantester Punkt im Bild I(x,t) – Bild der Kamera CueN – Hinweise pN – Modelle zu Hinweisen AN(x,t) – Auffälligkeitsmatrix R(x,t) – resultierende Matrix rN – Zuverlässigkeit zu Hinweisen Kamerabasierte Sensordatenverarbeitung
Berechnung der Qualität • Zuverlässigkeit orientiert sich an Qualität des Hinweises (für jeden Hinweis getrennt) • Qualitätsmaß orientiert sich an durchschnittlicher Auffälligkeit • Qualitätsmaß (für Hinweis i) • Normierung von zu Kamerabasierte Sensordatenverarbeitung
Anpassen der Zuverlässigkeitund des Modells eines Hinweises • Zuverlässigkeit (Anpassungskonstanteαrel) • Jeder Hinweis bildet sich ein Modell an Hand dessen die Auffälligkeitsmatrix berechnet wird • Anpassung an aus Bild extrahierteFeatures fi(t) (Anpassungskonstante αcue) Kamerabasierte Sensordatenverarbeitung
Initialisierung • Bevorzugung einiger visueller Reize vor anderen bei Neugeborenen • Möglichkeit Modelle vorzugeben, die System dann anpasst (sonst beliebiger Wert) • Hinweise ohne Modellvorgabe werden automatisch integriert Kamerabasierte Sensordatenverarbeitung
Auge-Hals-Motor Steuerung • Verfolgtes Ziel aus Bildmittelpunkt Korrektur des visuellen Fehlers • Augen folgen schnellen Bewegungen, da klein und leicht • Bewegung des gesamten Kopfes durch Gelenke im Hals als Ausgleich • Augen sollen möglichst wieder in zentrale Position gelangen Kamerabasierte Sensordatenverarbeitung
Sicht des Roboters Kamerabasierte Sensordatenverarbeitung
Auge-Hals-Motor Regelung • Zwei PD-Regler in Reihe geschaltet (Regelung der Abweichung auf Null) • Erster PD-Regler erhält als Abweichung des interessantesten Punktes vom Bildmittelpunkt • Neue Stellung Auge • Steuerung Auge • Zweiter Regler arbeitet nach gleichem Prinzip Kamerabasierte Sensordatenverarbeitung
Anwendung • Verfolgung eines Gesichtes • Hautfarbe als Ausgangsmodell vorgegeben Kamerabasierte Sensordatenverarbeitung
Anwendung Kamerabasierte Sensordatenverarbeitung
Referenzen • Erio Grillo, Matteo Matteucci, Domenico G. Sorrenti: Getting the most from your color camera in a color-coded world, 2004 • Hyundo Kim, Boris Lau, Jochen Triesch:Adaptive Object Tracking with an Anthropomorphic Robot Head, 2004 Kamerabasierte Sensordatenverarbeitung