34
Bildmerkmalssuche Seminar Computational Photography Visual Computing Department of Computer Science

Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Bildmerkmalssuche

Seminar Computational Photography

Visual ComputingDepartment of Computer Science

Page 2: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

EINFÜHRUNG

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche2

Page 3: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Einführung• Bildmerkmalssuche: sehr wichtiges Thema des künstlichen 

Sehens

• Erkennen von Objekten auf dem Bild oder in einer Bildsequenz anhand von markanten Regionen

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche3

Page 4: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Anwendungsbeispiele

Autos: automatisches Erkennen von Verkehrszeichen

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche4

Page 5: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Anwendungsbeispiele

Nao Roboter: GesichtserkennungGesichtserkennung.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche5

Page 6: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Anwendungsbeispiele• RoboCup Soccer League:

Roboter spielen Fußball

• Roboter müssen in der Lage sein:– sich völlig autonom auf dem 

Spielfeld zu orientieren

– den Ball und die anderen Roboter zu finden

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche6

Page 7: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Anwendungsbeispiele• RoboCup Rescue League: 

Rettungsroboter

• Roboter müssen autonom agieren:– Durchqueren einen Parcours 

aus Hindernissen

– Finden simulierter Opfer undFinden simulierter Opfer und Einzeichnen in der von dem Roboter erstellten Karte

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche7

Page 8: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Was sind Bildmerkmale?

• Bildmerkmale (lokale) bezeichnen Bildmuster, die sich von ( ) ,ihrer dichten Umgebung unterscheiden und  üblicherweise mit einer Änderung von einer oder mehreren Bildeigenschaften assoziiert sind.

• Beispiele: – weiße Flecken auf dunklem Hintergrund (Kontraständerung)

– Kanten, Ecken (gut strukturierte Objekte)

– Regionen deren Farbe sich von anderen Objekten sehr gut– Regionen, deren Farbe sich von anderen Objekten sehr gut unterscheiden lässt

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche8

Page 9: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Motivation• Bildmerkmalssuche: Problemstellung:

– Finden repräsentativer Bildmerkmale

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche9

Page 10: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Motivation• Bildmerkmalssuche: Problemstellung:

– Finden repräsentativer Bildmerkmale

– Zuordnen dieser mit denen eines anderen Bilds

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche10

Page 11: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Motivation• Bildmerkmalssuche: Problemstellung:

– Finden repräsentativer Bildmerkmale

– Zuordnen dieser mit denen eines anderen Bilds

• Bildmerkmalssuche: Lösung:– Markante Regionen in Bilddaten finden – Detektionsschritt 

– Eigenschaften dieser Regionen in kompakter Form beschreiben –Deskriptor bildenDeskriptor bilden 

– Anhand dieser Eigenschaften Korrespondenzen zwischen verschiedenen Bildern des selben Objektes bestimmen –Matching 

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche11

Page 12: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Algorithmen: Eigenschaften• Graustufenbilder oder Farbbilder

• Invarianz gegen:g g– Affine Transformation (Verschiebung, Drehung)

– Perspektivische Transformation

– Koordinatentransformation (Translation, Skalierung, Rotation)

– Photometrische Transformation

L k l d l b l M k l• Lokale oder globale Merkmale

• Laufzeit

M hi L f i d äh d d L h• Matching zur Laufzeit oder während der Lernphase

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche12

Page 13: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

SURF

ALGORITHMENSURF

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche13

Page 14: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

SURF: Allgemeines• SURF – Speeded Up Robust Features

• Nachfolger von SIFTg

• Key‐Point basierter Algorithmus (lokale Bildmerkmale)

• Verwendung von Integral ImagesVerwendung von Integral Images

• Detektion von Key‐Points mit Hilfe eines Hesse‐Matrix basierten Feature‐Detektors

• Skalen‐ und rotationsinvariante Detektion

• Die Key‐Points werden durch einen Eigenschaftsvektor mit 64 y gEinträgen charakterisiert

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche14

Page 15: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Integral Image Darstellung• Es wird die Summe der Intensitätswerte der Pixel eines Bildes 

die links bzw. oberhalb des Pixels an Position (x, y) liegen.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche15

Page 16: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Integral Image Darstellung• Wesentlicher Vorteil: Jede Flächensumme kann nur mit drei 

Additionen und vier Speicherzugriffen gefunden werden.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche16

Page 17: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektion: Fast‐Hessian Detektor• Die Hessematrix enthält die zweiten partiellen Ableitungen 

der Bildintensitäten in x‐ und y‐Richtung

• Kern‐Charakteristiken:

• Die Maxima von den beiden Werten entsprechen Blob‐pähnlichen Strukturen im Bild.

• Die partiellen Ableitungen können durch Faltung des Bildes mit geeigneten Filter‐Masken berechnet werden.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche17

Page 18: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektion: Fast‐Hessian Detektor• Zweite Ableitungen von den Intensitätswerten sind gegen 

Bildrauschen sehr empfindlich → Bilder mit Gauß‐Filter glätten

• Gleichzeitig Invarianz gegen Skalierung

• Erweiterte Hessematrix:

• ist die Faltung des Bildes (Bildintensität) mit dem Glättungskern  

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche18

Page 19: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektion: Fast‐Hessian Detektor

Originalbild, σ = 0

Gauß‐Filter, σ = 1,2

Gauß‐Filter, σ = 2,0

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche19

Page 20: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektion: Fast‐Hessian Detektor• Bei SURF werden die zweiten Ableitungen von            durch 

Faltung des Bildes mit Filter‐Masken gewonnen.

Als Filter aber in dieser Form nicht db → danwendbar → werden 

approximiert und diskretisiert.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche20

Page 21: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektion: Fast‐Hessian Detektor

SURF Box‐Filter

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche21

Page 22: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektion: SURF‐Filterpyramide• Ziel: Invarianz gegen Skalierung.

• Es wird aber nicht das Bild wiederholt mit Gauß‐Filter geglättet und dann verkleinert.

• Filtermatrizen werden vergrößert und auf das original Bild 

dt (I t l Iangewandt (Intergral‐Image +  Box‐Filter)

• Vorteil: sehr effizient und keine• Vorteil: sehr effizient und keine Aliasing‐Effekte 

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche22

Page 23: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektion: SURF‐Filterpyramide• Minimale Filtergröße: 9*9 Pixel (σ = 1.2)

• Skalen‐Schritt 6 Pixel (Δσ = 0.8)( )

• Skalenraum wird in Oktaven unterteilt. 

• Jede Oktave besteht aus 4 Bildern mit unterschiedlichenJede Oktave besteht aus 4 Bildern mit unterschiedlichen Skalen.

• Erste Oktave: 9*9, 15*15, 21*21, 27*27, , ,

• Zweite Oktave: 15*15, 27*27, 39*39, 51*51

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche23

Page 24: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Feature‐Detektor: Lokalisierung der Schlüsselpunkte

• Die Determinante der Hessematrix für jeden Punkt auf dem Bild wird bestimmt.

• Der mögliche Schlüsselpunkt wird mit 26 Nachbarn verglichen.mit 26 Nachbarn verglichen.

• Positionen der Punkte, die über alle Skalen markant sind, werden 

i h tgespeichert.

• So wird die Invarianz gegen Skalierung gewährleistet. 

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche24

Page 25: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Interest Point Descriptor: Orientierung• Ziel: Rotationsinvarianz

• Es werden die Gradienten in k feiner kreisförmigen Region          

(r = 6σ) um den Schlüsselpunkt berechnet.

• Dann werden sie in x‐ und y‐Richtung approximiert, abgetastet und gewichtetabgetastet und  gewichtet.

• Es wird ein π/3 großes Fenster durch die Region verschoben.

• In jedem Fenster wird die Summe der Punkte gebildet.

• Der längste Vektor wird alsDer längste Vektor wird als Orientierung genommen.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche25

Page 26: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Bestimmung des Descriptors• Über den Schlüsselpunkt wird ein Quadrat 

(Seite = 20σ) gelegt ausgerichtet nach der Orientierung des SchlüsselpunktsOrientierung des Schlüsselpunkts.

• Das Quadrat wird in 16 Regionen unterteilt.

• Für jede Region wird der Gradientenverlauf in j gx‐ und y‐Richtung  für 25 Punkte berechnet.

Dann wird für jede Region ein DescriptorDann wird für jede Region ein Descriptor gebildet:

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche26

Page 27: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Bestimmung des Descriptors

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche27

Page 28: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

SURF: Matching• Spur der Hessematrix

– Ist bereits vorhanden: wurde beim Detektieren schon berechnet

– weist auf den Kontrast der Umgebung im Vergleich zum Schlüsselpunkt hin

Punkte bei denen keine Übereinstimmung gefunden wird werden– Punkte, bei denen keine Übereinstimmung  gefunden wird, werden ausgeschlossen.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche28

Page 29: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

SURF: Matching• Nearest Neighbour Ratio:

– Zu jedem Schlüsselpunkt mit dem Deskriptor v (Originalbild) werden zwei Schlüsselpunkte mit den Deskriptoren v1 und v2 (Objektbild) gesucht, die den kleinsten euklidischen Abstand zu v haben.

– Der Quotient aus diesen beiden Abständen wird als Nearest NeighbourDer Quotient aus diesen beiden Abständen wird als Nearest Neighbour Ratio bezeichnet.

– Ist er kleiner als ein bestimmter Schwellenwert, wird dem Punkt mit k i d k i d k i dDeskriptor v dem Punkt mit dem Deskriptor v1 zugeordnet.

– Ziel: sicherzustellen, dass v1 eindeutiger Matching‐Punkt ist.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche29

Page 30: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

SURF: Bespielbilder

11801180Schüsselpunkte gefunden

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche30

Page 31: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

SURF: Bespielbilder

73 Schüsselpunkte gematchtgematcht

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche31

Page 32: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

SURF: Zusammenfassung• Deutliche Effizienzsteigerung im Vergleich zu SIFT:

– Intergral Images, Box‐Filter, Filterpyramide, nur 64 Einträge im Descriptor

• Invarianz gegen Skalierung:– Filterpyramide, markante Regionen werden über allen Skalen gesucht

• Invarianz gegen Rotation: Gl it d F t j d S hlü l kt i d di O i ti– Gleitendes Fenster, jedem Schlüsselpunkt wird die Orientierung zugewiesen.

• Vorteile:– Robust, relativ schnell

• Nachteile:– Closed Source, immer noch SEHR rechenintensiv

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche32

Page 33: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Bildmerkmalssuche: Andere Algorithmen• SIFT

• Punktdetektor von Harris

• Randomized Trees

• Neuronale NetzeNeuronale Netze

• …

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche33

Page 34: Seminar Computational Photography · Einführung • Bildmerkmalssuche: sehr wichtiges Thema des künstlichen Sehens • Erkennen von Objekten auf dem Bild oder in einer

Quellen:• Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc van Gool: 

Speeded‐Up Robust Features (SURF)

• Christopher Evans: Notes on the OpenSURF Library

• C. Harris, M. Stephens: A combined corner and edge detector

• Vincent Lepetit, Pascal Fua: Keypont Recognition usingRandomized Trees

• David G. Lowe: Distinctive Image Features from Scale‐Invariant Keypoints.

Visual ComputingDepartment of Computer Science

Kirill Yasinovskiy: Bildmerkmalssuche34