Robotvision: Unterschied zwischen den Versionen

Aus II-Wiki
Zur Navigation springen Zur Suche springen
Zeile 204: Zeile 204:
 
* benötigt für den Aufbau von Multi-Cue Ansätzen (z.B. Detektion von Gesichtern anhand von Farbe, Textur und Kopfsiluette)
 
* benötigt für den Aufbau von Multi-Cue Ansätzen (z.B. Detektion von Gesichtern anhand von Farbe, Textur und Kopfsiluette)
  
== Randprobleme ==
+
== Techniken zur Behandlung der Randprobleme ==
  
 
Randbehandlung der Operatoren:
 
Randbehandlung der Operatoren:

Version vom 21. Juli 2009, 08:38 Uhr

<hiddenlogin linktext="Login">nistudws0809:WS0809N!</hiddenlogin>

Basisoperationen für die vision-basierte Roboternavigation

Neuronaler Instruktionssatz

  • Basisoperationen bzw. Verarbeitungsprinzipien mit denen sich biologisch inspirierte Systeme:
    1. mathematisch Beschreiben lassen
    2. algorithmisch umsetzen lassen
    3. technisch nachbilden lassen
  • umfasst folgende wesentliche Operationen und Prinzipien:
    1. Funktionelle Abbildungen
    2. Topographische Abbildungen
    3. Ortsvariante Info-verarbeitung
    4. Auflösungspyramiden
    5. Topologisch kodierte neuronale Felder im
    6. Neuronale Felddynamiken
    7. Geschichtete 2D-Repräsentationen

Funktionelle Abbildungen Fehler beim Parsen (Syntaxfehler): {\displaystyle R^n \rightarrow R²}

  • Beschreibung der Abbildung der n-dimensionalen Sensor/Merkmalskarten auf 2-dimensionale Karten
  • beschreiben lineare und nicht lineare, ortszeitliche Faltungsprozesse
  • Typische Vertreter:
    • Filteroperationen
    • lokal operierende Klassifikatoren (Gesichtserkennung)
    • beliebige lokale Abbildungen (Funktionsapproximation mit z.B. neuronalen Netzen)

Orts-& Zeitvariante, nichtlineare Abbildung

Orts-& Zeitinvariante, lineare Abbildung

Beispiele:

  • Boxoperator (Mittelwertoperator)
  • Gaußtiefpass
  • Laplace-Operator
  • Soebel-Operator
  • Kirsch-Operator (Kantendetektion)

Der DoG Operator

  • Zwei mögliche Realisierungen:
    • erregendem Zentrum und hemmendem Saum (on-center)
    • hemmendem Zentrum und erregendem Saum (off-center)
  • Inspiriert durch die Retina und dem visuellem Cortex
  • Wird gebildet durch die Differenz zweier Rotationssymetrischer 2D- Gaußverteilungen
  • Das Integral über den DoG sollte 0 sein (inhibitorischer Anteil = exzitatorischer Anteil) -> Faltungsoperator ist dann mittelwertfrei

ortsvarianter DoG Operator:

  • im Zentrum kleine DoG-RF (rezeptive Felder) zur Extraktion visueller Details
  • zum Rand hin immer größer werdend zur Erhöhung der Empfindlichkeit bei Verringerung der Auflösung
  • Polarkoordinaten mit Abhängigkeit vom Radius:

Gabor-Wavelet-Funktionen

  • Faltungskerne zur Detektion von orientierten Kanten, Linien bzw. Grauwertverläufen
  • spezifisch angepasst auf bestimmte Orientierungen und Ortsfrequenzen
  • enstehen durch multiplikative Überlagerung
    • einer Gaußfunktion -> Lokalisierung im Ort
    • einer komplexwertigen Exponentialfunktion (Sin-Cos Kombination) -> Frequenz- und Orientierungsspezifik
  • dienen der Ermittlung von lokalen Änderungen (Grauwert, Farbe) im Inputbild mit bestimmter Vorzugsrichtung, -frequenz
  • wichtig für Bewegungs- und Szenenanalyse
  • haben richtungsselektiven Bandpasscharakter
    • kleine Varianz im FB
    • bestmögliche Beschränkung im ZB
    • Unschärferelation der Signaltheorie beachten!

mathematische Beschreibung:

  • 1D:
  • 2D:

Analyse im FB:

  • statt Faltung im ZB Verarbeitung im FB
  • d.h. Multiplikation des transformierten Inputs mit Gaußfiltern im FB, die sich in Vorzugsrichtung und Frequenz unterscheiden
  • Vortel: deutlich verringerte Berechnungskomplexität

Jets:

  • Filterung des Bilders mit klar definiertem Satz von Gaborfiltern unterschiedlicher Vorzugsrichtung und Frequenz
  • Ziel: gleichmäßige Abdeckung des gesamten Frequenz- und Orientierungsbereichs
  • alle Filterergebnisse an einem Bildpunkt werden als Jet bezeichnet

Topographische Abbildungen

Wesen:

  • lokal nachbarschaftserhaltende Abbildung
  • lokale Nachbarschaften bleiben, können aber verzerrt sein

Zweck:

  • Datentransfer
  • um für nachfolgende Operationen geeignete Repräsentationen zu erzeugen und Invarianzleistungen zu erzielen

Retino-cortikale Projektion

  • kommt aus der biologischen Verarbeitung von Bildern im Gehirn
  • nachgewiesen durch Tierversuche mit radioaktiver Glukose

Charakteristika:

  • topographische Abbildung
  • Topologieerhaltung
  • Punkt-zu-Punkt Projektion (Bereiche in der Mitte des Sehfeldes werden größer abgebildet als periphere Bereiche)

Mathematische Modellierung:

  • komplexe Exponentialfunktion:
    • von Rechteck in z-Ebene (Cortex) → Kreisring in w-Ebene (Retina)
    • ,
    • horizontale Linien → Radialstrahlen
    • vertikale Linien → Kreise
    • Kreisring im Ursprung nicht definiert
  • komplexe Logarithmusfunktion:
    • von Kreisring in w-Ebene → Rechteck in z-Ebene
    • ,

Abbildungseigenschaften:

  • Skalierung
    • Multiplikation aller Pixel mir reeler Konstante
    • Translation in x-Richtung
    • Erhalt der geometrischen Ähnlichkeit → Pseudoinvarianz
  • Roation über Ursprung
    • Multiplikation aller Pixel mit komplexer Zahl
    • Translation in y-Richtung
    • Erhalt der geometrischen Ähnlichkeit → Pseudoinvarianz
  • Translation
    • keine Formerhaltung
    • aktive Sehsysteme erforderlich

Ortsvariante Informationsverarbeitung

  • Realisierung ortsabhängiger funktioneller Abbildungen
  • zur Reduktion des Datenstromes
  • zur Organisation unterschiedlicher Repräsentationen (Menschliches Sehsystem hat hohe Auflösung im Zentrum und geringe am Rand)

Auflösungspyramiden

  • erlaubt kleinere Operatoren auf großen Bildern
  • Auflösungspyramiden erhöhen die Ortsfrequenzen in Bildern
  • erzeugen verschiedene Skalierungsstufen durch Unterabtastung des Originalbildes
  • damit können, mit einem Fenster konstanter Größe, große Gesichter im verkleinerten Bild und kleine Gesichter im Originalbild gefunden werden
  • Jedes Bild muss vor der Skalierung mit einem Tiefpass gefiltert werden, da sonst das Nyquistkriterium verletzt wird
    • Realisierung TP-Filter: Gauß, Mittelwert, optische TP-Filter

Vorteile:

  • Effizienzerhöhung der Filteroperation
  • Verwendbarkeit eines Operators auf allen Ebenen

Nachteile:

  • hoher Berechnungsaufwand
  • starres Ebenenraster

Topologisch kodierte neuronale Felder im

  • einheitliches Datenformat zur Kodierung und Kommunikation über Karten
  • in Anlehnung an Fuzzy-Logic
  • räumliche Kodierung durch Blobs (Gaußähnliche Verteilung von Werten auf der Karte)
    • die Position eines Blobs kodiert die Bedeutung
    • die Breite des Blobs kodiert die Sicherheit
    • die Höhe des Blobs kodiert sein Gewicht/Stärke
  • erlaubt einfache Verhaltenskoordination durch additive oder multiplikative Überlagerung verschiedener Karten

Neuronale Felddynamiken

  • Selektion von sensorischen/motorischen Alternativen innerhalb einer m-dimensionalen Karte
  • Verwendung nichtlinearer rückgekoppelter neuronaler Felder
  • verschiedene Spielarten:
    • AMARI-Dynamik → Regionsbasierter Ansatz (am stärksten aktivierte Region gewinnt)
    • KOHONEN-Dynamik → Punktbasierter Ansatz (das am stärksten aktivierte Neuron gewinnt)

AMARI-Dynamik

  • beschrieben durch eine DGL:
  • Der Faltungskern w bestimmt die Selektionseigenschaften
    • Gauß → mehr zentrale Bereiche
    • DoG → "auffällige" hochfrequente Bereiche

Eigenschaften:

  1. Bedingte Maximum-Selektion
    • Selektion eines Gewinnerblob wenn
      1. Inputaktivität überschreitet
        • eine Mindestamplitude
        • räumliche Ausdehnung
        • Zeitdauer des Anliegens
      2. Zeitliche Vorgeschichte (Hystereseverhalten)
  2. Hystereseverhalten
    • keine sofortige Verlagerung auf neue Region
    • Winnerblob für bestimmte Zeit auf ursprünglicher Region gehalten
  3. Gewinnerblobs werden auch räumlich verfolgt → effizientes Objekt-Tracking möglich

Implementierung

  • die AMARI-Dynamik ist relativ unempfindlich gegenüber numerischen Lösungverfahren
  • typischerweise wird die Einschrittapproximation nach EULER eingesetzt
  • aus der DGL wird so eine iterativ lösbare Gleichung

Geschichtete 2D-Repräsentation

  • Verrechnung von 2D - Daten im → Form der Sensorfusion
  • Multi-Cue Ansatz zur Verrechnung der Merkmalskarten bei gleichzeitiger Bewahrung ihrer Spezifität
  • Operationen zwischen den Karten:
    • Mittelwertbildung
    • Fuzzy-Operatoren
      • Fuzzy-Und, Fuzzy-Oder
      • Min-Max-Operator
      • Gamma-Operator (kompensatorisches Und)
    • 3D-Amari-Dynamiken
  • benötigt für den Aufbau von Multi-Cue Ansätzen (z.B. Detektion von Gesichtern anhand von Farbe, Textur und Kopfsiluette)

Techniken zur Behandlung der Randprobleme

Randbehandlung der Operatoren:

  1. auffüllen fehlender Werte
    • mit Nullen, zufällige Werte
    • Mittelwert
    • Spiegelung
    • Extrapolation
    • Wrap-around-Technik
  2. Weglassen der Ränder (Ergebnis wird kleiner)
  3. Anpassen der Operatoren an den Rändern

Farbverarbeitung

[...]

Basisoperationen für die Visuelle Wahrnehmung der Umgebung

Bewegungsanalyse

  • Ziel: Erfassen von Bewegungsgrößen innerhalb einer Sezene durch Zeitlicheauswertung von Bildsequenzen
  • Interpretation der gefundenen Änderungen
    1. Bewegung des Objektes
    2. Eigenbewegung des Sehsystems
  • Suchen der Bewegung in einem 3D-Raum durch stapeln der einzelnen Aufnahmen
  • Typischer Ablauf
    1. Extraktion bestimmter Bildmerkmale (Textur, Ecken, Konturlinien Grauwert- oder Farbwertverläufe)
    2. Matching der Verwendeten Bildmerkmale in den anderen Bildern der Bildsequenz
    3. Aus dem Matching dann Bewegungsschätzungen ableiten
  • Die Bildmerkmale sind vielfältigen Störungen unterworfen
    • bildspezifische Störungen (Verdeckung, Beläuchtungsänderung, Bewegungsänderung durch Eigenbewegung)
    • statistische Rauscheinflüsse (Pixelrauschen, Umweltschwankungen,...)
    • Reduktion der Bildinformation (Quantisierung bei der Umwandlung)

Optischer Fluss

  • Der optische Fluss ist die Scheinbewegung, die aus der zeitlichen Änderung von Helligkeitsmustern in Bildsequenzen entsteht
    • Verschiebung der Bildkoordinaten ist von der Entfernung abhängig → implizite Tiefeninformation
  • Das Bewegungsfeld in einem bild entsteht durch reale Bewegungen der Objekte welche auf die Bildebene projiziert werden
    • Beschreibung erfolgt durch ein Vektorfeld
  • Die Schätzung des optischen Flusses basiert auf dem Korrespondenzproblem
  • Verschiedene Spielarten für Schätzung der Bewegung möglich
    • Merkmalsbasiert
      • Sift
      • Surf
    • helligkeitsbasiert
      • Korrelationsansatz
      • phasenbasiert
      • differentiell
  • Typischer Ablauf
    1. Vorselektion mit Hilfe eines Interest Operators um die geeignete Bildregionen zu finden (z.B. besonderst starke Grauwertänderungen)
    2. Berechnung der Flussverktoren an den selektierten Stellen (z.B. mit Korrelationsverfahren(SAD))
    3. Bewertung der Berechneten Flussvektoren auf ihre Eignung für die Nachfolgenden Berechnungsschritte
      • Es werden nur Vektoren ausgewählt für die die Korrelation über einer Schwelle liegt und der zweitbeste einen bestimmten Sicherheitsabstand vom besten gefundenen Wert hat

Das Korrespondenzproblem

  • Problem: Auffinden von Bildpunkten in aufeinanderfolgenden Bildern, die in der realen Umwelt den gleichen Ursprung haben

Das Apertur- (Blenden) Problem

  • Intensitätsänderungen können bei der Bildanalyse nicht eindeutig detektiert werden wenn zu kleine Bildauschnitte verwendet werden
  • die Verschiebung von geraden linien kann nicht exakt bestimmt werden wenn die Eckpunkte nicht bekannt sind

Spielarten des Korrespondenzproblems

  1. bei deformierbaren Körpern kann man nicht auf die innere Bewegung schließen, da keine eindeutigen Merkmale vorhanden sind
  2. bei periodische Texturen kann ein lokaler Operator nicht entscheiden ob es sich um eine einfach oder vielfache Bewegung um die Periode handelt (Verwechslungsgefahr)
  3. viele ähnliche Objekte können nur durch Hochgeschwindigkeitsaufnahmen unterschieden werden, bei denen sich die Objekte langsamer bewegen als der mittlere Abstand zwischen diesen ist. (Auch hier gilt: Verwechslungsgefahr)
  • Weitere Probleme:
    • Homogene unstrukturierte Bereiche
    • Perspektivische Ansichtsänderung
    • Lokale Helligkeitschwankungen
    • Bildrauschen
    • Kameraverzeichnung

Korrelationsbasierte Schätzverfahren

  • Suche nach Bildregionen im Folgebild
  • Ähnlichkeitsmaß ist die Korrelation der Grauwertgebirge
  • Wird für alle möglichen Verschiebungen berechnet
    • sehr Rechenaufwendig
    • mögliche Verschiebungen müssen auf sinnvolle Bewegungen begrenzt werden
    • sinnvolle Definiton der Größe
  • Mögliche Korrelationsmaße
    • Kreuzkorrelation
    • Kovarianz
    • Summe der absoluten Differenzen
    • Summe der quadratischen Differenzen
    • Normierte Kreuzkorrelation
    • Summe der absoluten Streuungsdifferenzen

Tiefenwahrnehmung

  1. Okulomotorische Tiefeninformation
    • Akkomodation der Augen, um Scharf zu sehen → Nahbereich 0.2m - 3 m
    • Konvergenzbewegung der Augen, um ein Objekt zu fokusieren → Nahbereich bis max. 6 m
    • relative Höhe im Blickfeld (Auslenkung der Augen aus der Horizontallinie, um ein Objekt zu Fokusieren)
  2. Monokulare Tiefeninformation
    • Verdeckung von Objekten
    • relative Höhe/Größe im Gesichtsfeld
    • "Gewohnte" Größe
    • Lineare Perspektive
    • Schattierung, Texturgradient
    • Atmosphärische Perspektive
  3. Bewegungsinduzierte Tiefeninformation
    • Relativbewegung von beobachteten Objekten
  4. Binokulare, stereoskopische Tiefeninformation
    • Tiefeninformation ist in den leicht unterschiedlichen Bildern der selben Szene enthalten (Disparität)
  5. Polyokulare Tiefeninformation
    • Wie Binokulare Systeme nur das eine höhere Genauigkeit möglich ist, da mehrere Bilder verwendet werden können

Binokulares Stereosehen

  • Grundbegriffe:
    • Basisabstand: Abstand zwischen den Augen/Kameras
    • Binokulares visuelles Feld: Region in der sich die Sichtbereiche beider Augen/Kameras überlappen
    • Retinale Disparität: horizontale Verschiebung eines Objektes zwischen der Position auf der Bildebene im linken und rechten Auge
    • Horopter: Imaginärere 3D Kurve im Raum auf der alle Punkte eine Disparität von Null haben
    • Gekreuzte Querdisparität: Punkte die vor dem Horopter liegen (Bei der Projektion ins linke Auge werden die Punkte rechts von der Fixationsline abgebildet)
    • Ungekreuzute Querdisparität: Punkte die hinter dem Horopter liegen (Bei der Projektion ins linke Auge werden die Punkte links von der Fixationslinie abgebildet)
    • Panums-Area: Der Bereich um den Horopter , in dem eine fusion der Stereobilder möglich ist
  • verwendete Kameras müssen Kalibriert werden um Unterschiede ausgleichen zu können
  • Eine geeignete Kalibrierung kann die Korrespondenzanalyse stark vereinfachen
  • Schritte zur Berechnung einer 2D-Tiefenkarte
    1. Bildvorverarbeitung
    2. Korrespondenzanalyse (erstellen eines Disparitätswürfel)
    3. Aggregation (innerhalb des disparitätswürfels)
    4. Disparitätsauswahl
    5. Tiefenberechnung

Parallelangeordnete Kameras

  • Fixationspunkt liegt im Unendlichen → immer gekreuzte Disparität
  • jeder Punkt der Szene wird immer unterschiedlich abgebildet
  • die Linie die die beiden abgebildeten Punkte verbindet heißt Epipolarlinie und sie verläuft immer parallel zur Basislinie
    • Damit müssen Korrespondenzen nur auf dieser Linie gesucht werden
  • Nachteil der Anordnung: nur sehr kleines binokulares visuelles Feld
  • Berechnung der Tiefe erfolgt mit Triangulation

Kameras mit Fixationspunkt

  • Fixiertes Objekt hat stets die Disparität Null
  • Rückschluss von den Bildkoordinaten ist recht aufwendig da die Orientierung der Kameras mit erfasst werden muss
  • benötigt Active-Vision-System zur Kameranachführung
  • Objekte werden auf der linken und rechten Bildebene unterschiedlich abgebildet → Korrespondenzproblem

Methoden zur Korrespondenzanalyse

  • intensitätsbasiert
    • 2D Korrelation
    • Genauigkeit hängt von der Größe des Suchfensters ab
  • Merkmalsbasiert
    • Berechnen von Charakteristischen Merkmalen aus den Intensitätsverteilung
    • Merkmale sollten robust gegenüber von Störungen sein
    • Unter Umständen werden nur wenige Merkmale gefunden → spärliche Tiefeninformation
    • Ein Merkmal kann mit jedem anderen Merkmal korrespondieren → sehr spezifische Merkmale nötig um Verwechslungen auszuschließen
  • Phasenbasiert
    • Bestimmung der Phasenlage in lokalen Bildregionen (z.B. mit Gaborfilter)
    • Phasenverschiebung entspricht der disparität
  • Probleme sind die selben wie beim Optische Fluss
  • alle möglichen Korrespondenzen werden im Disparitätswürfel gespeichert

Heuristiken für eine robuste Suche

  1. Epipolar Constraint (bei parallelen kammeras müssen die Korrespondenzen auf einer Linie liegen)
  2. Compatibility Constraint (hohe Korrelation gefordert)
  3. Uniqueness Constraint (Ein Punkt kann nur einmal Matchen)
  4. Ordering Constraint (Reihenfolge der primitiven muss gleich der Reihenfolge auf der Bildzeile sein)
  5. Continuity Constrain (Disparität darf sich nicht sprunghaft ändern)
  6. Disparity Gradient Limit (Gradient darf eine bestimmte Schwelle nicht überschreiten)
  7. Geometric Similarity Constraint (Liniensegmente müssen in beiden Bildern ähnliche Orientierungen und Längen haben)
  8. Coarse-to-fine multiresolution matching scheme (Arbeiten auf auflösungspyramiden und mit der gröbsten Ebene Anfagen)

Aggregation des Disparitätswürfels

  • Ziel ist die Nachbearbeitung der gestörten Einzelergebnisse
  • Berücksichtigung der Heuristiken
  • Aggregationsarten
    • Glättungsfilter 2D / 3D
    • 2D-Aggregation mittels Membran-Diffusion
      • iteratives Verfahren
      • nur eine Ebene im Disparitätswürfel → Fehler bei schrägen Flächen
      • berücksichtigt das koninuitäts kriterium
      • Faltungskern ist einem Tiefpassfilter ähnlich
    • 2D-Aggregation mittels Support Region

Disparitätsauswahl

  • Ziel ist die Auswahl der richtigen Disparität für jede x-y-position aus dem Disparitätswürfel
  • Arten
    • Max- Auswahl (nimm einfach den besten Match ... berücksichtigt Heuristiken nicht und hat Probleme bei Mehrdeutigkeiten)
    • WTA-Auswahl (Verrechnung von lokalen Hypothese aus der Nachbarschaft)
    • Dynamische Programmierung (Suche den Weg mit den geringsten Kosten durch den Disparitätswürfel)

Tiefenberechnung

  • Berechnung des Teifenwertes aus der Disparität
  • Representation meist in Grauwertbildern → Tiefenbilder
  • Berechnung erfolgt mittels Triangulation
    • ... Abstand zu Basislinie
    • b ... Basisabstand
    • d ... Disparität

Vision-basierte Roboternavigation

Visuelle Hindernisvermeidung

  • Robuste Hindernisvermeidung ist Voraussetzung für Roboter im Praxiseinsatz
  • Sonar- und Laser erfassen nur einen kleinen Teil des Raums

Monokulare Verfahren

  • kein Kalibrierungsaufwand für eine zweite Kamera
  • nur geringer Platzbedarf am Roboter

ALVINN

  • Basiert auf Expertenkloning mit einem neuronalen Netzwerk
  • Realisierung einer komplexen Funktionsapproximation von Bilddaten auf den Lenkwinkel
  • 32x32 Bild Eingabe Neuronen + 8x32 Laserscanner Neuronen 29 Neuronen in einer Hiddenschicht 45 Ausgabeneuronen für den Lenkwinkel
  • Der Lenkwinkel wird in der Teachingphase Fuzzyfiziert
    • Erhöht Lerngeschwindigkeit durch vergrößerte Kodierungskapazität
    • Erhöht Robustheit durch Nachbarschaftserhaltung
    • In der Kannphase muss der Lenkwinkel dann entsprechend Defuzzyfiziert werden
      • wird durch "intelligente" Schwerpunktbildung realisiert
  • Neuronen fungieren als Detektoren für ganze Straßenverläufe und Straßenränder
  • Ein einzelnes Neuron kann den Wagen nicht steuern ', erst die Gesamtheit schafft das
  • Funktioniert im Indoo und Outdoor bereich sehr gut
  • Probleme bei Wechselnder Texturierung der Hindernisse und des Untergrundes
  • Ablaufphasen
    1. Vorführphase
      • Experte steuert Fahrzeug
      • Lenkwinkel und Expertensicht wird Synchron aufgezeichnet
      • Daten enthalten implizit die gewünschte Fahrstrategie und auch die Fahrzeugeigenschaften
    2. Trainingsphase
      • Lernen der Abbildingsfunktion mittels Supervised Lerning
      • Trainingsdaten werden Generalisiert und sind auch auf unbekannte Situatuionen anwendbar
    3. Reproduktionsphase
      • Das trainierte Netzwerk wird eingesetzt um das Fahrzeug zu steuern

flussbasierte Hindernisvermeidung

  • weit entfernte Objekte erzeugen einen kleinen Flussvektor
  • nahe Objekte erzeugen einen großen Flussvektor
  • Freiraum erzeugt nahezu keine Flussvektoren
  • Durch Symetrierung der Flussvektoren zwischen der linken und rechten Bildhälfte kann eine einfach Navigationsstrategie erreicht werden

Untergrund Referenz-Fluss zur Hindernisvermeidung

  • Kamera schräg auf den Boden gerichtet
  • Optischer Fluss, der durch Hindernisse verursacht wird unterscheidet sich deutlich von dem des Untergrundes
  • Durch Klassifikation des Flusses ist so einen einfache Hindernisvermeidung möglich
  • Analyse des Flusses erfolgt nur über eine Bildzeile
    • Entfernung die die Zeile sieht bleibt immer konstant
  • Zur Klassifikation des Flusses muss der Referenzfluss für den Untergrund bestimmt werden (Annahme der Roboter sieht am Anfang nur Freiraum)
  • Mit Hilfe von Korrelation kann nun der Fluss ermittelt werden bei abweichungen zum Referenzfluss wird ein Hindernis detektiert
  • Um Fehldetektionen zu verhindern muss die Abweichung über mehrere Bilder bestehen bleiben
  • Einfache Regeln zum Umfahren der Hindernisse (Hier eignen sich Fuzzy Regeln → guter Querverweis)
  • Robust gegenüber Texturveränderungen da diese den Fluss kaum beeinflussen
  • Blöd bei unstrukturiertem Boden (Mindeststrukturierung notwendig)
  • einfach zu Berechnen

Untergrund Farbreferenz

  • Detektion der Hindernisse aufgrund ihrer Farbe (im HSL/HSI Farbraum)
  • Untergrundsegmentierung durch angelerntes Untergrundfarbhistogramm
  • Annahmen
    • flacher Untergrund
    • Hindernisse unterscheiden sich vom Untergrund
    • alle Hindernisse stehen auf dem Boden
    • beim Start sind keine Hindernisse vor dem Roboter
  • Ablauf
    1. Gaußfilter
    2. Transformation in HSI bzw HSL Farbraum
    3. Referenzhistogramme für Untergrund berechnen
    4. Pixelweise klassifikation des Bildes
  • Licht Reflexionen führen zu Scheinhindernissen
    • Können aber entfernt werden da diese sich immer vor dem Roboter her bewegen
  • Histogramme des Untergrundes können zur Lokalisierung verwendet werden
  • Kartenaufbau anhand der Hindernissegmentierung möglich


Binokulare Verfahren

  • Typische Schritte
    1. Berechnen der Disparitäts und Tiefenkarte (Siehe Binokulares Stereosehen)
    2. Bei bedarf Transformation der Daten in Roboter koordinaten
    3. Grundfläche muss entfernt werden
      • Durch implizites schätzen (Anpassen einer Ebene durch die Punktwolke (Annahme die meisten Punkte sind Grundfläche))
      • Durch Explizite Berechnung unter Berücksichtigung der Kamerageometrie
    4. Berechnung einer 3D Hinderniskarte ohne die Grundfläche
      • Distanz des Punktes zur Grundfläche
      • Schwellwertoperationen
    5. Projektion der Karte in eine 2D-Draufsicht
      • 3te Dimension wird einfach entfernt
    6. Übernehmen der 2D-Hinderniskarte in eine Belegtheitskarte
  • Belegtheitskarte wird dann zur Hindernisvermeidung eingesetzt

Vektorfeldhistogramm

Siehe KogRob Vektorfeldhistogramm

Visuelle Selbstlokalisation

  • Kenntnis der Position oder der Pose des Roboters ist für eine Planung von Handlungen notwendig
  • Aufgaben der Lokalisation
    1. Position/Pose Tracking
      • Anfangsposition und Pose sind bekannt und müssen aktualisiert werden
    2. Global Localisation
      • Anfangsposition und Pose unbekannt, globale Pose muss anhand der Umgebung ermittelt werden
    3. Kidnapped Robot
      • Roboter denkt er sei woanderst und muss erkennen das er sich irrt und seine neue Position ermitteln
  • Roboter nutzt zur Visuellen Wahrnehmung seiner Umwelt eine omnidirektionale Kamera → 360° Ansicht
  • Regelmäßige Gangstrukturen können sich mit einer Kamera besser unterscheiden lassen
  • Verwendung aller Bilddaten würde zu viel Rechenaufwand bedeuten → Merkmalsextraktion
  • Karte der Umgebung enthält Referenzmerkmale
    • Diese Merkmale werden nicht Kontinuierlich in der Karte abgelegt sonder lediglich markante stellen werden gespeichert
  • Um dann eine lokalisierung des Roboters durchzuführen kann ein deterministisches Verfahren zum Einsatz kommen meist wird aber ein Probabilistisches Verfahren (KogRob) eingesetzt

Visuelles SLAM

  • Gleichzeitiger Kartenaufbau und Lokalisation
  • Roboter bewegt sich in einer unbekannten Umgebung, ohne Positionsinformationen
  • Aufgabe ist das gleichzeitige Schätzen der Pose und der Karte der Umgebung aus den Beobachtungen
  • geschlossene Lösung nicht möglich
  • Lösung nur durch Separierung des Problems in
    • Posenschätzung
    • Kartenaufbau
  • Verwendung von Kalman-, und Partikelfiltern

Rao-Blackwellized Particele Filters

  • Partikel modellieren eine mögliche Position
  • jeder Partikel baut seine eigene Karte anhand seiner Position und seinem Weg
    • dafür hat jedes Partikel eine Globale Karte und eine lokale Karte
    • Das Gewicht jedes Partikels ergibt sich aus der Übereinstimmung der Lokalen mit der globalen Karte
    • Die Lokale Karte wird Zeitverzögert in die globale Karte übernommen
    • Jedes Partikel wird bei der Bewegung des Roboters mit bewegt und ein wenig Rauschen wird noch hinzugefügt unter Berücksichtigung des Bewegungsmodells
  • Map-Match mit Graphen funktioniert ähnlich nur das Graphen aufgebaut werden und keine Gridkarten (andere Abstraktionsebene der Umgebung)

Konsultation

  • Bewertung von optischen Flußvektoren
    • Suche nach Minimum (Summer der Absoluten Differenzen (SAD))
    • Mehrere Lösungen möglich ... durch Aggergation wird eine Lösung ausgewählt
      • Minimas ersteinmal finden
      • Sicherheitsspanne zwischen den Lösungen
  • Amari-Dynamik
    • Pixel eines Videodatenstroms werden Neuroknoten zugeordnet
    • Jeder Input hat x,y und t als Inputparameter
    • Jedes Inputneuron projeziert auf sein Korrespondierendes Neuron in der Amari schicht
      • Jedes Neuron wird druch seine Nachbarn möglicherweise unterstützt (Gaus) ... durchsetzen der Mitte (Bei Rechteck im Input)
      • Jedes Neuron wird durch seine Nachbarn unterstützt aber auch gehemmt (DoG) .. durchsetzen der Ecken (Bei Rechteck im Input)
    • Wächterneuron
      • Geht eigentlich auch ohne
      • hämmd das ganze Feld um die "Grundlast" um Hintergrund zu unterdrücken
      • Zeitlich versetzt
    • Gleichung für jedes Neuron(Folie 2c-6)
      • -z(r,t) ... Abklingterm (Neuron als leaky Integrator), RC-Glied als Analogie
      • I(r,t) ... Input (1:1 vom Videobild)
      • -h(t) ... Wächterneuron
      • Integral (Nachbarschaft)
        • w(r-r') ... Die Funktion der Nachbarschaft (zum simulieren des DOG wird die Gaußfunktion manchmal um H0 nach unten verschoben)
      • z(r',t) ... Aktivierung des Neuron r' (Nachbar)
      • S[] ... Sättigung zum Begrenzen der Aktivität
    • Durch Nachbarschaft werden Peaks unterdrückt
    • Aktivität muss sich erst aufbauen
    • Gleichung Folie (2c-12)
      • "Lösung" der DGL von 2c-6
    • Gute Selektionseingenschaften ... besser als Maximumssuche
    • Hystherese ist in der Amari Dynamik eingebaut
  • Disparitätsauswahl
    • WTA ... Winner takes all
    • Durch die Nachbarn wieder unterstützt und der beste setzt sich durch
  • Vektrofeldhistogram
    • Hindernisse die weiter weg sind als D_max werden nicht berücksichtigt
  • Particelfilter = Montecarlolocalisation
  • Localisation
    • Nur bei Karte begrenzt (kann mich halt nur auf der Karte befinden)
  • Kalmanfilter
    • Nur eine Gaußapproximation pro Filter möglich