Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Effiziente Suche in Bilddatenbanken

Ähnliche Präsentationen


Präsentation zum Thema: "Effiziente Suche in Bilddatenbanken"—  Präsentation transkript:

1 Effiziente Suche in Bilddatenbanken

2 1. Wieso nicht lineare Suche?
sinnige Datenbanken haben 100+ Bilder kleine Referenzbilder (640*480) keys im Schnitt bei 1120*840 sind es keys im Schnitt die Dimension eines keys ist 128 Nearest Neighbour Abstandsmaß: Euklidscher Abstand => Lineare Suche dauert bei 100 größern Bildern 1 Stunde und mehr

3 2. Was haben wir gemacht? Aufbau eines KD-Baumes
Binärbaum mit bucketsize an Elementen in einem Blatt Nearest Neighbour Suche auf dem KD-Baum Beschleunigung der Suche mittels einer Heuristik Optimierung mittels BestBinFirst Auswertungen und Messungen

4 3.1 Aufbau des KD-Baum 1. Berechne die Varianz aller Keys in jeder Dimension 2. Wähle die Dimension mit der größten Varianz 3. Sortier über die Dimension und ermittle den Median 4. Teile die Keymenge durch einen Knoten am Median, vermerke Median und Dimension im Knoten 5. Wiederhole die Schritte für die Söhne bis nur noch bucketsize oder weniger keys existieren 6. Erstelle ein Blatt, in das die übrig Keys gepackt werden

5 3.2 Übersicht KD-Baum Innerer Knoten: ... Median Dimension Blatt:
KD-Tree Blatt: bucketsize an keys Innerer Knoten: Median Dimension

6 3.3 Aufbau an einem Beispiel
Gegeben: 3,3 0,3 0,1

7 4.1 Nearest Neighbour Suche im KD-Baum
1. Solange man nicht in einem Blatt ist: Betrachte den nächsten Knoten und entscheide anhand der Dimension und des Median ob nach links oder rechts abgestiegen wird 2. Im Blatt angekommen: Berechne den Abstand zu allen Keys, merke dir den minimalen Abstand und den dazu passenden Key

8 4.2 Nearest Neighbour Suche im KD-Baum
3. Kletter den Baum wieder hoch und check bei jedem Knoten auf dem Weg nach oben, ob der Abstand in der Dimension zum Median kleiner gleich dem bis dato kleinsten Abstands ist 3.a. ist er kleiner gleich dem Median, so wandere den Teilbaum herunter 3.b ist er größer wandere weiter hoch 4. Ist man in der Wurzel angekommen und muss nicht mehr runterklettern ist man fertig

9 5.1 Lowe-Heuristik Heuristik: Besuche maximal n Blätter
=> maximal n*bucketsize an Vergleichen => Man ist auf konstante Zeit runter, aber man macht viele Fehler

10 5.2 Beispielsuche mit NN Fertig !! Nearest Neighbour:
Nearest Neighbour von: Distanz: 3,3 0,3 0,1 mit hlowe = 2, wäre hier Ende uninteressant uninteressant Fertig !!

11 6.1 Best Bin First 1. Merke dir beim Herunterwandern den Abstand
zu jedem Knoten den Du besucht hast 2. Besuche beim Herraufwandern immer erst den Knoten mit dem kleinsten Abstand

12 6.2 Beispielsuche mit BBF Nearest Neighbour: Nearest Neighbour von:
Distanz: 3,3 0,3 0,1 Mit hlowe = 2 => Fertig !

13 7. Laufzeiten Laufzeiten:
NN auf KD-Tree für kleine Dimensionen O(n log(n)) NN auf KD-Tree für große Dimensionen O(n) NN mit hlowe auf KD-Tree O(const) BBF mit hlowe auf KD-Tree O(const) Suche nach ca Keys auf einer Datenbankt mit ca Keys: Linear&NN etwa 60min NN/BBF mit hlowe: hlowe: -1 20 1000 5000 10000 20000 Zeit:(ca.) 60min 2.5sek 1 min 6 min 12 min 24 min => Linear in Anzahl an Keys, der Keys Datenbank und hlowe

14 8. Genauigkeit Referenz: Linearesuche NN/BBF mit hlowe: Beobachtung:
-1 20 1000 5000 10000 20000 NN: - 80% 50% 35% 25% 15% BBF 65% 10% 5% 3% Zeit:(ca.) 60min 2.5sek 1 min 6 min 12 min 24 min Beobachtung: wenn nur Bilder gematched werden sollen reicht hlowe 100 (< 1% Bild-Fehlzuweisungen) ansonsten BBF&hlowe + Linearesuche auf dem Match

15 Danke für‘s zuhören ! Quelle: Distinctive image features from scale-invariant keypoints by David G. Lowe, International Journal of Computer Vision, 60, 2 (2004), pp


Herunterladen ppt "Effiziente Suche in Bilddatenbanken"

Ähnliche Präsentationen


Google-Anzeigen