Winter 2011/ Projekt kd- Trees. achsenparallelen Farbwürfel angeordnet. Die beiden schwarz- weiß- Ecken verbindet eine Graulinie.

Ähnliche Dokumente
Aufgabe zu KD Bäumen

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

Inhaltliche Planung für die Vorlesung

Farbtiefe. Gängige Farbtiefen

(query by image content)

Automatisch-generierte Texturen aus Laserpunktwolken

Voraussetzung wieder: Datenraum mit Instanzen, mehrere Attribute - kein ausgezeichnetes Zielattribut, keine vorgegebenen Klassen

Datenstrukturen & Algorithmen

Quadtrees. Christian Höner zu Siederdissen

Grafikformate. Auflösung Farbtiefe Farbmodelle

Grafikdateien. Bei Computergrafiken werden grundsätzlich drei Kategorien unterschieden: Vektor-Format

Landesabitur 2007 Beispielaufgaben 2005_M-LK_A 7. Eine quadratische Pyramide (Grundkante 4 und Höhe 6) steht neben einer Stufe. 1.

Kenngrößen von Projektoren

Das Voronoi Diagramm. 1. Definition. 2. Eigenschaften. 3. Größe und Speicherung. 4. Konstruktion. 5. Verwendung

Programmierpraktikum WS 16/17

Tutoren Simon Andermatt Lukas Beck. Alexis Peter Thomas Ritter

Objektorientierte Bildverarbeitung Methodische Grundlagen

Seminar: Multimediale Informationssysteme

Tutoren Jan Ebbe Pat Mächler Valentino Rugolo Sascha Scherrer. Grundlagen der Programmierung (CS101) - Blatt 8 Theorie [4 Punkte] - Praxis [12 Punkte]

Kartographische Visualisierung

Kapitel 31 Bild- und Tonretrieval. HHU Düsseldorf, WS 2008/09 Information Retrieval 483

Morphologische Bildverarbeitung II

Im Original veränderbare Word-Dateien

Speicherkonzepte von Pixel- und Vektorgrafik

Theoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke

Binäre Suchbäume. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps

I1: Computergrafik (14)

Woraus besteht ein Bild? (c) Winfried Heinkele

Bildbearbeitung: Grafikformate II und Farbmodelle

Farben. Grundlagen und Farbräume. Spektrale Zerlegung der sichtbaren Lichtes

DPF Dynamic Partial distance Function

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Dokumentation HGKZ IAD 1. Semester WS 2004/05 Exploring Color

Algorithmen für Ad-hoc- und Sensornetze Nachtrag zu VL 06 Doubling Dimensions

6 Bestimmung linearer Funktionen

Digitale Bilder. Ein Referat von Jacqueline Schäfer und Lea Pohl Am

8 Baum in perfekter Komposition

9th NEMO-SpectroNet Collaboration Forum

Bildverarbeitung Herbstsemester. Binärbildanalyse

Einführung in Excel. Zur Verwendung im Experimentalphysik-Praktikum. für Studierende im Sem. P3

Tutorium Algorithmen & Datenstrukturen

Datenbanken und Informationssysteme. Bildbearbeitung. DI (FH) Levent Öztürk

Uberblick 1. Kurzeste Wege 2. Sichtbarkeitsgraphen 3. Berechnung des Sichtbarkeitsgraphen 4. Kurzeste Wege fur polygonale Roboter 1

Lösung zur Aufgabe Würfel färben von Heft 20

Anwendungen der Hauptkomponentenanalyse. Volker Tresp vertreten durch Florian Steinke

Koordinatensystem. 1. Zeichne ein Gitternetz und trage die Punkte A(3 2), X(3 1) und Y(6 9) ein.

Farbe in der Computergrafik

Übung Datenstrukturen. Objektorientierung in C++

Mengenlehre. ALGEBRA Kapitel 1 MNProfil - Mittelstufe KZN. Ronald Balestra CH Zürich Name: Vorname:

Digitale Bildverarbeitung (DBV)

1 Karol stellt sich vor

D C. Man unterscheidet in der Geometrie zwischen Körpern, Flächen, Linien und Punkten.

Mathematik: Geometrie und Anwendungen in der Wirtschaft

Quader und Würfel. 1. Kreuze jene Wörter oder Bilder an, die Körper bezeichnen. Mathematische Bildung von der Schulstufe

14. Rot-Schwarz-Bäume

PRODUKTION UND GESTALTUNG INTERAKTIVER MEDIEN

Datenstrukturen & Algorithmen

Suche in Multimedialen Daten - Image Retrieval -

Datenbanken und Informationssysteme. Bildbearbeitung. DI (FH) Levent Öztürk

Farbdarstellung. aber mit einem ausgeprägten Empfindlichkeitsmaximum im roten, grünen bzw. blauen Bereich.

Kombinatorische Abzählverfahren

Kapitel 9 Algorithm. Geometrie. Kürzeste Abstände Konvexe Hülle

Software Engineering in der Praxis

Standardisierte Vorgehensweisen und Regeln zur Gewährleistung von: Eindeutigkeit Schlussfolgerungen aus empirischen Befunden sind nur dann zwingend

entspricht der Länge des Vektorpfeils. Im R 2 : x =

368 4 Algorithmen und Datenstrukturen

Softcomputing Biologische Prinzipien in der Informatik. Neuronale Netze. Dipl. Math. Maria Oelinger Dipl. Inform. Gabriele Vierhuff IF TIF

Antwort: h = 5.70 bit Erklärung: Wahrscheinlichkeit p = 1/52, Informationsgehalt h = ld(1/p) => h = ld(52) = 5.70 bit

Handbuch DatInf Measure

Definition. Gnutella. Gnutella. Kriterien für P2P-Netzwerke. Gnutella = +

Übungen Softwaretechnik I

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken. Raimar Lill Matthias Meitner David Föhrweiser Marc Spisländer

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Im Original veränderbare Word-Dateien

Foto und Grafik. Arbeitsheft für den Informatikunterricht. Fotos, Pixel und Vektoren sowie Bildbearbeitung am PC. Name. ... Klasse ...

Grundlagen der Programmierung

Nichtrealistische Darstellung von Gebirgen mit OpenGL

Dokumentation und Informationen zur Berechnung von Winkelgrössen für die Darstellung von Punktsymbolen unter ArcView

Statistik, Datenanalyse und Simulation

Algorithmische Mathematik

Diana Lange. GENERATIVE GESTALTUNG Komplexe Datentypen: PShape

Informatik II Grundbegriffe der Wahrscheinlichkeitsrechnung

Ausgewählte Themen zu Bildverstehen und Mustererkennung. Challenges for Driver Assistance Systems Lane Detection. Christoph Bartenhagen.

Clusteranalyse. Anwendungsorientierte Einführung. R. Oldenbourg Verlag München Wien. Von Dr. Johann Bacher

Protokoll. Farben und Spektren. Thomas Altendorfer

Lokale Beleuchtungsmodelle

Wima-Praktikum 2: Bildsynthese-Phong

Informatik II, SS 2014

Seminar Künstliche Intelligenz WS 2013/14 Grundlagen des Maschinellen Lernens

SS 2016 Torsten Schreiber

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert

Universität Duisburg - Essen

6. Künstliche Intelligenz

Objekterkennung durch Vergleich von Farben. Videoanalyse Dr. Stephan Kopf HWS2007 Kapitel 5: Objekterkennung

Kollisionserkennung

Vorbereitungsaufgaben

Geometrische Objekte im 3-dimensionalen affinen Raum oder,... wie nützlich ist ein zugehöriger Vektorraum der Verschiebungen

Kinect Nils Röder, Björn Frömmer

Bearbeite die folgenden Aufgaben mit Hilfe der Lerneinheit im Internet. Notiere Deine Lösungen auf dem Arbeitsblatt.

Nachtrag zu binären Suchbäumen

Transkript:

Praktikum Algorithmik Prof. Dr. Heiner Klocke Winter 2011/2012 12.11.2011 1. Erläuterung des Umfeldes Projekt kd- Trees Bei der Bildanalyse sollen Farbpunkte eines Bildes klassifiziert werden. Die Farbe eines Bildpunktes (Farbobjekt) hat im RGB Farbraum drei Farbdimensionen rot, grün und blau, rgb 0, 1! R bzw. rgb 0: 255! N!. Die Farben werden in einem achsenparallelen Farbwürfel angeordnet. Die beiden schwarz- weiß- Ecken verbindet eine Graulinie. (From: http://www.beta45.de/farbcodes/theorie/farbmodelle/rgb_modell.html Anhand eines vorgegebenen Lernbildes können aus den darin enthaltenen Farbpunkten Kategorien gebildet werden, die nicht notwendig disjunkt sein müssen. Angenommen, ein Testbild soll analysiert werden. Folgende Anfragen sind von Interesse: 1. Zu welchen Kategorien gehört Farbobjekt aus dem Testbild. 2. Welches ist der nächste Nachbar eines Farbobjekts Der Abstand zweier Farbobjekte wird durch den euklidischen Abstand ermittelt. Zwei Punkte x, y haben im RGB- Farbraum den euklidischen Abstand d x, y = (x! y! )!!!!,!,! Der euklidische Abstand zwei Punkte ändert sich mit allen drei Farbdimensionen rot, grün und blau.

2. Darstellung von RGB- Farbräume durch kd- Bäume Die Farbobjekte eines Bildes werden mit dem RGB- Farbwürfel modelliert und in binären kd- Baum mit den drei Dimensionen rot, grün und blau gespeichert. Ein Bildpunkt (x,y) in einem 2- dimensionalen Bild ist im RGB- Farbmodell ein Farbobjekt mit den Koordinaten (r,g,b): Aufgaben [x, y, r, g, b] 1. Überlegen Sie sich sinnvolle Farbkategorien und erstellen Sie dazu ein Lernbild, z.b. könnten die 8 Eckpunkte des RGB- Würfels als Farbkategorien verwendet werden. Sie müssen keine realen Bilder verwenden, sondern können 2- dimensionale Arrays mit rgb- Werten verwenden. 2. Speichern Sie die Farbobjekte des Bildes in einem kd- Baum. Als Schlüssel sollen die rgb- Werte und als beschreibende Daten die x,y- Koordinaten verwendet werden. 3. Suche nach dem nächsten Nachbarn mit dem Euklidischen Abstand als Ähnlichkeitsmaß. Diese Aufgabe beschleunigt der kd- Baum. Wenn der Abstand vom aktuellen Knoten auf der projezierten Dimension (r, g oder b) schon weiter ist als der bisher als bestmögliche gefundene Gesamtabstand, dann muss die Suche beim zweiten Kind nicht mehr fortgesetzt werden. Denn auf den anderen Dimensionen kommt man nicht näher an das Farbobjekt heran. 4. Suche und Auflisten der Farbkategorien, zu denen ein aktuelles Farbobjekt gehört. 5. Entwickeln Sie eine Testumgebung, mit der Anfragen wie Nächster Nachbar oder zugehörige Kategorien durchgeführt und verständlich dargestellt werden könnten. 6. Überlegen Sie sich weitere Anfragen, die bei Bildanalysen interessant sind und realisieren Sie diese. Die Wahl der Programmiersprache ist freigestellt. Auch freigestellt ist, ob Sie reale Bilder verwenden oder Bilder einfach durch 2- dim. Arrays simulieren. 2

3. Beispiel Gegeben ist folgendes Bild mit 8 x 8 = 64 Farbobjekten (Pixeln). Die Punkte mit der Nummerierung werden in einem kd- Baum als Referenz- Objekte gespeichert. Wird als Einfügereihenfolge die angegebene Nummerierung verwendet, so entsteht folgender kd- Baum (bitte auf Richtigkeit prüfen): Aufgabe: Prüfe, welcher Knoten im kd- Baum der nächste Nachbar zu dem Farbobjekt (point 5,4,100,150,250) ist. Lösung: Traversiere den kd- Baum unter Beachtung der Dimensionen rot, grün, blau. Berechne für jeden besuchten Knoten den Euklidischen Abstand zu (point 5,4,100,150,250) und merke den bisher kleinsten gefundenen Abstand. Die Excel- Tabelle zeigt diese Berechnung: 3

Das Pixel (4,5) ist der nächste Nachbar zu (point, 100, 150, 200). Beobachtungen: 1. Die Grün- Distanz von (8,8) mit 145 ist bereits größer als die bisher gefundene kleinste Distanz von (4,5) mit 134,42. Alle Knoten im kd- Baum, die links unter (8,8) liegen, würden die Gründistanz und damit den euklidischen Abstand nicht kleiner machen als die Gründistanz des Punktes (8,8). Diese Knoten müssen also nicht mehr geprüft werden. 2. Die Rotdistanz des Knotens (2,1) mit 154 ist ebenfalls schon größer als der bisher gefundene kleinste Abstand von (4,5) mit 134,42. Jede weitere Verzweigung nach rechts würde den euklidischen Abstand niemals unter den Wert von 154 sinken lassen. Daher müssen Knoten, die rechts unter (2,1) liegen, nicht mehr betrachtet werden. 4. Anwendungsbeispiele kd- Bäume werden heute in vielen Softwaresystemen verwendet, bei denen die Partitionierung von Objekten nach mehreren Dimensionen erfolgen soll. Beispiele finden sich in Anwendungen für Automatisierung (Industrieroboter), Bildersuche, Verkehrsnavigationssysteme, usw. Ein wichtiger Vorverarbeitungsschritt ist oft die (Farb- ) Segmentierung von Objekten, die dadurch klassifiziert werden: Gleichfarbige Flächen zusammenfassen, um Objekte im Bild einfacher zu erkennen und ihre Position zu bestimmen. Durch Klassifizierung werden die Objekte (Kandidaten) nach vorgegebenen oder gelernten Kriterien bestimmten Klassen zugeordnet. Beispiele finden sich in der Medizin: Bilder von Zellen (gesund, gefährdet, erkrankt) Handschrifterkennung: Fernerkundungen anhand von Bildern - > Wälder, Gewässer, Nutzfläche 4

Die Objekte werden durch mehrere quantitative Merkmale in einem Merkmalsraum beschrieben, z.b. Pixel durch RGB- Farbwerte im RGB Farbraum: Bei der Klassifizierung unterscheidet man zwischen überwachten Verfahren, bei denen die Klassen anhand von Stichproben vorgegeben werden und unüberwachten Verfahren, wo sich die Klassen durch die Analyse des Merkmalsraums ergeben. Bei der k- nächste- Nachbar Klassifizierung handelt es sich um ein überwachtes Verfahren, bei dem anhand von Beispiel- Pixeln die typischen Merkmale der Klassen vorgegeben werden. Durch Trainingsbeispiele kann die Klassenzuordnung z.b. unter Berücksichtigung der k- nächsten Nachbarn gelernt werden: Im Referenzbereich des Kreises um das zu kategorisierende Objekt befinden sich 3 rote und 2 blaue Objekte, k=5. Damit wird das neue Objekt der Kategorie rote Kreise zugeordnet. Die Trainingsdaten werden in einem kd- Baum gespeichert. Neue Objekte werden entsprechend einem Distanzkriterium, z.b. euklidischer Abstand im RGB- Farbraum, den Kategorien zugeordnet. Eine Strategie zum Auffinden des nächsten Nachbarn ist folgende: 1. Blattposition des neuen Kandidaten (hier Farbobjekt) finden 2. Euklidischen Abstand zum Vaterknoten bestimmen 3. Rekursiv Suchregionen ausschließen (vgl. Beispiel unter Punkt 3) und ggf. nähren oder mehrere nähere Nachbarn finden Das folgende Bildbeispiel zeigt die Extraktion von Merkmalen aus Bildern. Vorgegeben sind hier als Kategorien die drei Farbobjekte rot, weiß und schwarz. Alle anderen Bildpixel diesen Kategorien zugeordnet. 5

In der Literatur werden kd- Bäume auch oft im Zusammenhang mit Instanzbasiertem Lernen genannt. Dieses Thema soll hier aber nicht weiter vertieft werden, weil es in diesem Algorithmik- Praktikumsprojekt in erster Linie um die Implementierung und das Verständnis von kd- Bäumen und nicht primär um ihre Anwendung geht. 6