Verfolgung von farblich markierten Objekten Seminarvortrag Computergrafik II



Ähnliche Dokumente
Die "Goldene Regel der Messtechnik" ist nicht mehr der Stand der Technik

Vorgehen zur Kalibrierung von Kamerabildern

Der Approximationsalgorithmus von Christofides

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

1 topologisches Sortieren

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Primzahlen und RSA-Verschlüsselung

Grundlagen der Theoretischen Informatik, SoSe 2008

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

Advanced Rendering Interior Szene

Erstellen von x-y-diagrammen in OpenOffice.calc

Schaltungen mit nichtlinearen Widerständen

1. Theoretische Grundlagen

Projektmanagement in der Spieleentwicklung

Anwendungshinweise zur Anwendung der Soziometrie

Elementare Bildverarbeitungsoperationen

Charakteristikum des Gutachtenstils: Es wird mit einer Frage begonnen, sodann werden die Voraussetzungen Schritt für Schritt aufgezeigt und erörtert.

Stammdatenanlage über den Einrichtungsassistenten

Kompetitive Analysen von Online-Algorithmen

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

GEVITAS Farben-Reaktionstest

Belichtung mit Tonwertkorrektur verbessern

Beweisbar sichere Verschlüsselung

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

6.2 Scan-Konvertierung (Scan Conversion)

Plotten von Linien ( nach Jack Bresenham, 1962 )

Anmerkungen zur Übergangsprüfung

Gutes Leben was ist das?

Evangelisieren warum eigentlich?

1. Einführung Erstellung einer Teillieferung Erstellung einer Teilrechnung 6

Informationsblatt Induktionsbeweis

Bildverarbeitung Herbstsemester. Binärbildanalyse

Schnelleinstieg. Datenimport für die EXPOSÉ - Familie. Import von Adress / Objektdaten aus MS Excel. = Datenintegration aus anderen Lösungen

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

Rasterpunkte und Rasterdichte (Knoten/km)

SUDOKU - Strategien zur Lösung

Mind Mapping am PC. für Präsentationen, Vorträge, Selbstmanagement. von Isolde Kommer, Helmut Reinke. 1. Auflage. Hanser München 1999

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Repetitionsaufgaben Wurzelgleichungen

Kulturelle Evolution 12

Gruppenrichtlinien und Softwareverteilung

Hohe Kontraste zwischen Himmel und Landschaft abmildern

Korrelation (II) Korrelation und Kausalität

Menü auf zwei Module verteilt (Joomla 3.4.0)

7 Rechnen mit Polynomen

QM: Prüfen -1- KN

Whitepaper. Produkt: combit factura manager. Mehrwertsteuererhöhung durchführen. combit GmbH Untere Laube Konstanz

TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE!

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

AutoCAD Dienstprogramm zur Lizenzübertragung

Rente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen

Tipp III: Leiten Sie eine immer direkt anwendbare Formel her zur Berechnung der sogenannten "bedingten Wahrscheinlichkeit".

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Microsoft Excel 2010 Mehrfachoperation

Lineare Gleichungssysteme

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

ONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele

Bilder Schärfen und Rauschen entfernen

Diese Prozesse und noch viele andere Tricks werden in der Digitalfotografie mit Hilfe von Bildbearbeitungsprogrammen, wie z. B. Gimp, bewältigt.

Anleitung über den Umgang mit Schildern

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Programme im Griff Was bringt Ihnen dieses Kapitel?

Einführung in. Logische Schaltungen

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

1 Mathematische Grundlagen

1. Trennlinie mit hr Eine dünne Trennlinie wie die obige in der Regio-Farbe (gelb) kann man recht einfach erstellen. Dafür reicht der Befehl

Im Original veränderbare Word-Dateien

Abschluss Version 1.0

CMS.R. Bedienungsanleitung. Modul Cron. Copyright CMS.R Revision 1

Behörde für Bildung und Sport Abitur 2008 Lehrermaterialien zum Leistungskurs Mathematik

Insiderwissen Hintergrund

Konzepte der Informatik

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

BaseCamp OS X, Zümo 590 und die unterschiedliche Punkte in einer Route:

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

ScandSorb C. Patronen- und Filtersysteme

Alle Schlüssel-Karten (blaue Rückseite) werden den Schlüssel-Farben nach sortiert und in vier getrennte Stapel mit der Bildseite nach oben gelegt.

Eigene Dokumente, Fotos, Bilder etc. sichern

2.5.2 Primärschlüssel

Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren

Pädagogik. Melanie Schewtschenko. Eingewöhnung und Übergang in die Kinderkrippe. Warum ist die Beteiligung der Eltern so wichtig?

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Zeichen bei Zahlen entschlüsseln

Anleitung Postfachsystem Inhalt

Kreativ visualisieren

Änderung des IFRS 2 Anteilsbasierte Vergütung

Matrizennorm. Definition 1. Sei A M r,s (R). Dann heißt A := sup die Matrixnorm. Wir wissen zunächst nicht, ob A eine reelle Zahl ist.

Dokumentation IBIS Monitor

Formung einer Brustzugabe

Springer bringt Scoop-Titel auf den Weg

Woraus besteht ein Bild? (c) Winfried Heinkele

Hilfedatei der Oden$-Börse Stand Juni 2014

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Verwalten und Organisieren von Fotos,

Das Vermögen der privaten Haushalte in Nordrhein-Westfalen ein Überblick auf der Basis der Einkommens- und Verbrauchsstichprobe

1. Standortbestimmung

Die reellen Lösungen der kubischen Gleichung

Lineare Funktionen. 1 Proportionale Funktionen Definition Eigenschaften Steigungsdreieck 3

Transkript:

Verfolgng von farblich markierten Objekten Seminarvortrag Comptergrafik II Sascha Lange 07.02.2003 Zsammenfassng Die Bildanalse ist neben der Bilderzegng ein großer Bereich der Comptergrafik. Es wird ein krzer Überlick über die in diesem Gebiet verwendeten Begriffe nd Methoden gegeben, m dem Neling tiefere Einblicke in das Compter Vision Tool Kit geben z können. 1 Bildanalse Im folgenden wird ein weiterer, krzer Versch nternommen, die Bildanalse z definieren nd einen krzen Überblick über die klassiche Bildverarbeitng z geben. Abweichngen von diesem klassischen Paradigma in der neeren Zeit werden afgezeigt. Anschließend liegt die Konzentration in dieser Seminararbeit af der Erzegng des Regionenbildes, aber ach andere Techniken werden krz angerissen. 1.1 Definition Das Feld der Bildanalse wird sehr nterschiedlich definiert nd gegenüber den anderen Bereichen der Comptergrafik abgesteckt. Konsenz besteht aber darüber, dass die Bildanalse sich mit Techniken zr Generierng von Beschreibngen nd Interpretation von Bildern beschäftigt. Allgemein ist die Bildanalse der Weg von der ikonischen Darstellng des Bildes z einer smbolischen - oder zmindest andersartigen - Beschreibng. Mit dem Wort smbolisch mß man an dieser Stelle hinsichtlich der neeren Entwicklngen vorsichtig sein, denn z.b. wird im Bereich des Image/Exemplar Based Content Retrieval nter Umständen af einer Analsestfe abgebrochen, die zwar effiziente Vergleiche zwischen Bildern ermöglicht aber von einer bedetngsvollen Beschreibng des Bildinhaltes weit entfernt ist 1

nd nter dieser rsprünglichen Verwendng des Begriffs nicht als smbolische Beschreibng bezeichnet werden würde. 1.2 Klassische Bildverarbeitng nd neere Entwicklngen Bei Jähne [5] findet man für die Afgabe des Bildverstehens die in Abbildng 1 dargestellte hierarchische Strktrierng der notwendigen Bildoperationen zr Analse eines Einzelbildes im Sinne der klassischen Bildverarbeitng. Die Bildanalse wird hierbei als mehrstfiger Prozess von der Bildafnahme bis zm Bildverstehen afgefaßt. Die Strktrierng enthält keinerlei Rückkopplngen zwischen den einzelnen Verarbeitngsschritten, sondern verscht, die Analse in klare, saber getrennte Einzelschichten afzteilen. Die einzelnen Operationen lassen sich ach grob in die Kategorien Bilderfassng, Bildverbesserng, Segmentierng, Bildsmbolverarbeitng nd reine Smbolverarbeitng afteilen. Die Bilderfassng bezeichnet die phsikalische Erzegng nd Erfassng des Bildes mit einem Sensor. Bevor die eigentliche Analse begonnen werden kann, gilt es oftmals das Bild z verbessern. Die Operationen der Bildverbesserng arbeiten af den erfassten Bildern - haben also sowohl als Ein- wie ach als Asgabe ein Bild. Unter dem Oberbegriff Segmentierng werden Operationen zsammengefaßt, die Bildregionen identifizieren nd markieren. Anschließend mß nn mittels bildsmbolverarbeitender Operationen eine rein smbolische Beschreibng as dem Merkmalsbild, das noch ikonische Darstellngen der Regionen nd Merkmale enthält, generiert werden. Hier schließen sich nn beliebige, rein smbolische Verarbeitngsstfen an. Nach Jähne läßt sich jede denkbare Operation in diese Hierarchie einordnen. Ziel dieser klassischen Verarbeitngskette ist krz gefaßt die Erzegng einer smbolische Beschreibng des ikonischen Bildes ( Objektbeschreibng nd Objektklassen ). Ein häfiges Zwischenziel ist das sogenannte Regionenbild. In der neeren Zeit gibt es aber immer mehr Anwendngen, die den Umweg über eine smbolische Beschreibng im herkömmlichen Sinne nicht mehr machen. So werden zm Beispiel Reaktionen af bestimmte visell erfaßte Sitationen oder Reize direkt af den Bildern gelernt, ohne daß in einer Verarbeitngstfe eine Beschreibng des Bildinhaltes, geschweige denn einer Klassifizierng der erfaßten Objekte vorhanden wäre (Beispiel: EROSAL). Ach in der Biometrie ist eine smbolische Beschreibng bzw. Klassifizierng oftmals nicht notwendig. Vielmehr gilt es hier sogenannte Featre-Points z matchen (s. Abbildng 2). Ein weiteres großes Feld, in dem Inhalte manchmal nicht mehr explizit repräsentiert werden, ist der Bereich des Content Based Image Retrieval. Dort sind nter anderem Ssteme z finden, die z einem vorgelegt Bild oder einer einfachen Skizze Bilder mit gleichem Inhalt afgrnd der Ähnlichkeit zr Vorlage finden (Qer b example). In 2

2D-, 3D- Objekt Qantitative Visalisierng Bildgewinnng Belechtng 2D-Bild Digitalisierng Digitales Bild Restarierng nd Rekonstrktion Kalibrierng Digitales Bild Mittelng nd Kantendetektion Extraktion ein- facher Strktren Textr- beschreibng Bewegngs- bestimmng Merkmalsbild Regionen- identifikation Formanalse Regionenbild Objekt- beschreibng Pixel- oder objektbezogene Klassifizierng Objekt- klassen Abbildng 1: Hierarchie der Bildverarbeitngsoperationen nach Jähne. Rechtecke entsprechen den Operationen, Ovale den Datenstrktren. 3

Abbildng 2: Zwischenschritte bei der Analse eines Fingerabdrckes. Ziel ist es, die Position der rechts dargestellten markanten Featres z finden nd mit einer Datenbank z vergleichen. (Herknft nbekannt) Abbildng 3: Anfrage nd Ergebnis im Qer b example Verfahren. Links sieht man die Analse des Anfragebildes, links die drei besten, bzw. ähnlichsten Ergebnisse, die das Sstem als Antwort liefert. (Fotos von http://elib.cs.berkele.ed/photos/blobworld/) vielen Sstemen wird nicht die Ähnlichkeit einer smbolischen Beschreibng des Bildinhaltes, sondern eine abstrakte Bildbeschreibng verglichen. Die verwendeten Ähnlichkeitsmaße arbeiten oftmals bloß af der Farbe oder der Form einzelner wichtiger Bildregionen. Eine Garantie, daß solche ähnlichen Bilder ach gleiche Inhalte zeigen, gibt es natürlich nicht. Bloß eine hohe Wahrscheinlichkeit kann postliert werden (s. Abbildng 3). In der Tabelle 1.2 sind einige praktische Anwendngen der Bildverarbeitng afgelistet. 1.3 Segmentierng Ein wichtiges Zwischenziel der Verabeitngskette ist das Regionenbild, dessen Gewinnng im folgenden näher nterscht werden soll. Die zr Erzegng des Regionenbildes verwendeten Techniken werden oftmals nter dem Oberbegriff Segmentierng zsammengefaßt. Ursprünglich bezeichnet Segmentierng eigentlich nr den Vorgang der Trennng, bzw. Hervorhebng von Bildvordergrnd gegenüber dem Hintergrnd. Im weiteren Sinne zählt aber ach die Identifikation nd Abgrenzng einzelner Bildregionen hinz. Diese Bildregionen dürfen aber nicht mit einer Identifikation der Objektflächen verwechselt werden. Während Objektflächen eine erzegende Ursache für eine abgrenzbare Bildregion sein können, 4

Medizin Indstrielle Atomatisierng Überwachng Vermessngswesen / Fernerkndng Hman Compter Interface Biometrie Archivierng Tomographie, Radiologie, Gewebeschnitte Qalitätskontrolle, Sortierng, Transport Gebädeüberwachng, Schen in Menschenmengen Landvermessng, Satellitenbildaswertng, Radarbilder Gestre Recognition Fingerabdrücke, Athentifizierng Content Based Image Retrieval Tabelle 1: Einige Anwendngen der Bildanalse. entstehen solche Regionen aber ach drch Schatten af den Oberflächen, Farboder Textränderngen oder einfache Überdeckngen. Bildregionen sind also nicht mit Objektflächen identisch. Um solch eine Beziehng herstellen z können, sind vielmehr weitere, zmeist smbolische Verarbeitngsschritte notwendig. 1.3.1 Kantendetektion Eine Möglichkeit, die Bildregionen z finden, führt über die Regionengrenzen selbst. Mit Hilfe sogenannter Kantendetektoren können diese Grenzen gefnden werden. Eine Kante ist dabei zmeist eine abrpte Helligkeitsänderng. Die meisten Verfahren verwenden zr Berechnng eines Kantenbildes eine Faltng (siehe Anhang) des z nterschenden Bildes mit einem bestimmten Kernel - dem Kantendetektor. Ergebnis ist eine Pixelmatrix, die pro Pixel einen Wert enthält, deren Betrag die Kantenstärke angibt. Je nach Kernel kann das Vorzeichen ebenfalls eine Bedetng, z.b. über den Farbverlaf (hell nach Dnkel, Dnkel nach Hell) der Kante besitzen. Diese Bilder werden in der Regel zr Darstellng, bzw. zr Weiterverarbeitng normiert. Mit Hilfe eines Schwellwertes können nr Regionenkanten einer gewünschten Intensität drchgelassen werden. Die einfachste Art von Detektoren, die hier vorgestellt werden soll, verwendet die 1. Ableitng des Bildes, betrachtet also den Helligkeitsgradienten. Die Ableitng wird dabei drch Differenzfilter, die teilweise das Bild vorher senkrecht zr horizontalen oder vertikalen Ableitngsrichtng mitteln, berechnet (s. Abbildng 4). Solche mittelnden Operatoren sind die Sobel-Operatoren für die vertikale nd 5

% horizontale Kantenrichtng: Wobei den Differenzoperator! " $# nd den Mittelngsspaltenoperator % bezeichnen. nd bezeichnen die entsprechenden Spalten- bzw. Zeilenvektoren. Den Absoltbetrag des Gradienten erhält man nach getrennter Anwendng der beiden Kernel z.b. drch eine einfache eklidsche Kombination: & & (' *) Natürlich geht aber drch diese einfache Kombination die in den nterschiedlichen Werten von nd kodierte Information über die Richtng der Kante verloren. Das Ansprechen des Sobeloperators wächst also mit der betragsmäßigen Größe des Helligkeitsgradienten. Zwar nimmt dieser Operator schon eine einfache Glättng senkrecht zr Ableitngsrichtng vor, afgrnd der kleinen Umgebng ist er aber relativ anfällig für Raschen. Aßerdem erhält man von diesem Operator nr breite, zmeist diffse Linien. Demgegenüber kann der Laplace-Operator, der af der zweiten Ableitng arbeitet, Kanten jeglicher Orientierng detektieren: + # Die Verwendng der zweiten Ableitng hat gegenüber der ersten Ableitng den Vorteil, daß bei diffsen Kanten drch die Detektion des Schnittpnktes mit der x- Achse der zweiten Ableitng (Änderng des Helligkeitsgradienten) deren Mitte gefnden werden kann. Damit erhält man in jedem Falle einen klaren Kantenverlaf. " " 6

Abbildng 4: Anwendng des Sobel Operators. (oben links) Originalbild (oben rechts) Ergebnis des vertikalen Sobel Operators (nten links) Ergebnis des horizontalen Sobel Operators (nten rechts) Kombination der beiden Ergebnisse nach Anwenng eines Thresholds. 7

1 Allerdings ist dieser Operator gena wie der Sobel Operator anfällig gegenüber Raschen. Hildreth nd Marr schlgen dagegen einen verbesserten Operator vor, der zdem den af der menschlichen Retina vorgenommenen Verarbeitngen entsprechen soll [9]. Der Operator ist eine Kombination as dem Laplace Operator mit einem Gass schen Glättngsoperator gleicher Größe nd wird dementsprechend Laplace of Gassian (krz: LoG) oder nach seinen Begründern Hildreth-Marr Operator genannt. Der Faltngskernel berechnet sich folgendermaßen:,.-0/ 2143 5 - / ) 698 76 3;:=?>A@2BDC2@ @0E @ wobei c einen normalisierenden Koeffizienten nd 6 die Standardabweichng des der Gassglocke bezeichnet (nach [15]). Die diskrete Approximierng eines 5x5 Kernels sieht zm Beispiel so as:,gf IH Der Operator liefert einen dünnen Kantenverlaf, dessen Feinheit drch die Standardabweichng der Gaßglocke kontrolliert werden kann. Es treten keinerlei Kanten af, die nicht drch die zweiten Ableitng nterstützt werden. Das verhindert zm Beispiel, dass in einer Objektfläche, die af eine Lichtqelle zläft nd deshalb einen gleichmäßigen, hohen Helligkeitsgradienten afweist, Kanten gefnden werden. 1.3.2 Constant Thresholding Andere Methoden verschen nicht die Kanten, sondern die Bildregionen direkt anhand der Farbwerte z identifizieren. Beim constant thresholding wird ein konstanter Schwellwert J verwendet, m für jedes Pixel anhand des Helligkeitswertes einzeln z entscheiden, in welche von zwei Klassen es fällt. Diese Klassen sind Hintergrnd nd Vordergrnd, -0/ -0M hier bezeichnet mit 0 nd 1. Liegt ein Mehrkanalbild, z.b. K 21L3 ;NOPQ3 vor, -0M kann man als einfachste Lösng eine Fnktion R ;NOPQ3 verwenden, die eine wie ach immer geartete Lminosität berechnet nd damit das Bild in ein Grawertbild transformiert. Natürlich gibt es ach spezielle Farbsegmentierngsverfahren, die direkt mit den gesamten Kanälen arbeiten. 8

S S - S - - R K -0/ Das segmentierte Bild S 2143 berechnet sich dann drch die einfache Entscheidng, ob die Lminosität nter oder oberhalb des Schwellwertes liegt: -0/ 2143 R 3-0/ UT RWVXJ RWYXJ 214323A3 Af diesem Binärbild wird eine Region nn über die Nachbarschaft der Pixel definiert: Alle Pixel, die den gleichen Wert zgewiesen bekommen haben nd im Sinne der 4er oder 8er Nachbarschaft benachbart sind, gehören zr selben Region. Asgehend von einem Pixel einer Region, läßt sich damit rekrsiv die gesamte Region identifizieren. Probleme bereiten diesem einfachen Verfahren starke Belechtngsgradienten oder helle z erkennende Objekte vor einem dnklen Hintergrnd, af die starke Schatten geworfen werden. In solchen Sitation ist häfig kein Schwellwert mit befriedigender Qalität (im Sinne richtig klassifizierter Pixel) z finden. 1.3.3 Adaptive Thesholding Um dem Problem mit ngleichmäßig asgelechteten Bildern entegenzwirken, kann man anstelle des konstanten, für das gesamte Bild gültigen Schwellwertes einen von der Bildposition abhängigen Schwellwert verwenden. Solche adaptive Thresholds können Helligkeitsnterschiede zwischen verschiedenen Bildregionen recht gt asgleichen, sofern sich möglichst große, zsammenhängende Bereiche finden lassen, die relativ niform asgelechtet wrden. An dieser Stelle seien zwei Verfahren zr Bestimmng dieses adaptiven Thresholds genannt: Local thresholding nd Adaptive Thresholding nach Chow nd Kaneko. Beim Local Thresholding wird für jedes Pixel anhand seiner Umgebng mit Hilfe einer statischen, geeigneten Fnktion (z.b. Median, Drchschnitt) ein eigener Schwellwert berechnet. Dabei kann die Umgebngsgröße variiert werden. Probleme bereiten hier aber nter Umständen niforme Bildregionen, die größer als die betrachtete Umgebng sind. Aßerdem ist dieses Verfahren relativ langsam, da sich die Vergrößerng der pro Pixel betrachteten Umgebng direkt af die Rechenzeit aswirkt. Sei die Größe drch n (nxn Pixel) gegeben, so beträgt der -0[ Rechenafwand nabhängig von der verwendeten Fnktion zmindest Z 3. Beim Verfahren nach Chow nd Kaneko wird daher nicht für jedes Pixel die lokale Umgebng betrachtet. Das Bild wird vielmehr in n rechteckige Regionen afgeteilt, für die jeweils wie beim einfachen Constant Thresholding ein Schwellwert berechnet wird. Nach Chow nd Kaneko ist die Wahrscheinlichkeit der niformen Aslechtng bei diesen Teilbildern größer. Der lokale Schwellwert für 9

3 3 _ ein Pixel wird nn drch Interpolation der Schwellwerte der Regionen berechnet. Je näher die Region am Pixel liegt, desto mehr geht deren Schwellwert ein. Bei asreichend großen Teilbildern ist dieses Verfahren bei ähnlichen Ergebnissen wesentlich schneller als das Local Thresholding. 1.3.4 Regiongrowing Eine weitere Methode zm direkten Identifizieren von Regionen ist das sogenannte Regiongrowing. Für das Regiongrowing definiert man wiederm eine Nachbarschaftsrelation - üblicherweise die 4er oder 8er Nachbarschaft - nd eine zsätzliche Homogenitätsbedingng für Regionen,.-]\ ^ T _ \` a bc*+edfa,.-]\^ \` a wobei im finalen Regionenbild dann gelten mss 3 \ ^ für alle nd,g-]\ ^ihj\lk bc +mdfa \^ für alle benachbarten Regionen /n^po\ ^ \lk,. /qk!ox\lk Zwei Regionen sind hierbei benachbart, wenn zwei beliebige Pixel nd in der Nachbarschaftsrelation stehen. Als Homogenitätskriterien kommen zm Beispiel niforme Helligkeit, Farbe oder Textr sowie beliebige Kombinationen in Frage. Mittels dieser Definition eines gültigen Regionenbildes lässt sich iterativ ein Regionenbild direkt as dem Pixel- oder vorsegmentierten Bild berechnen. Dabei sind im wesentlichen zwei Vorgehensweisen z nterscheiden: 1. Beim Region Merging wird mit einem übersegmentierten Bild begonnen (z.b. dem Pixelbild). Die Regionen werden iterativ mit Hilfe eines Verschmelzngskriterims verschmolzen, bis die oben definierten Bedingngen,.-]\^nh ztreffen. Als Verschmelzngskriterim kann zm Beispiel direkt \ k 3 dienen. 2. Beim Region Splitting wird hingegen mit einem ntersegmentierten Bild (z.b. gesamtes Bild als eine Region) begonnen, nd die Regionen werden iterativ afgeteilt (z.b. geviertelt), bis,g-]\^ 3 für alle Regionen erfüllt ist. Die beiden Verfahren können drchas nterschiedliche Ergebnisse für das gleiche Bild liefern. As Gründen der Effizienz sollte beachtet werden, dass für eine Implementierng in der Regel eine Datenstrktr zr Repräsentierng der Adjazenzen benötigt wird. Das neerliche Nachprüfen der Nachbarschaft zwischen der betrachteten mit allen anderen Regionen ist afgrnd der Definition über die Nachbarschaft zweier Elementpixel z afwändig. Das Verfahren, dass nn tatsächlich häfig verwendet wird, ist eine Kombination dieser beiden Verfahren. Beim Split and Merge Verfahren wechseln sich 10

Schritte des Teilens nd Verschmelzens ab. Die Adjazenzen werden hierbei in einem Qadtree repräsentiert, der bei den einzelnen Iterationen afgebat nd aktalisiert wird. Die Regionen werden beim Splitten deshalb immer geviertelt. 1.4 Regionen beschreiben Nachdem nn die Regionen identifiziert nd in einem Binärbild kodiert wrden, gilt es eine platzsparendere nd effizienter z bearbeitende Beschreibng z finden. Man macht nn den Schritt von der ikonischen Darstellng hin zr smbolischen Verarbeitng. Dabei sind in der Regel möglichst topologisch invariante Beschreibngen gewünscht. Die Vielzahl der möglichen Darstellngen lassen sich wiederm grob in zwei Klassen einteilen: 1.4.1 Kontrbasierte Beschreibngen Kontrbasierte Darstellngen beschreiben den Kantenverlaf der Region. Übliche Kodierngen sind z.b. die Kettenkodes oder die Forierdescriptoren. Af diesen Beschreibngen lassen sich wiederm kontrbasierte Maße definieren, die für einen Vergleich zweier Regionen herangezogen werden können. Tpisch sind hier zm Beispiel die Krvigkeit (engl: crvatre ), die Kantenlänge / der Umfang, oder ach die Biegngsenergie (engl: bending energ ). 1.4.2 Regionenbasierte Beschreibngen Regionenbasierte Beschreibngen verschen dagegen die Form der Region an sich z analsieren, wobei der exakte Kantenverlaf verloren gehen kann. Beispiele sind z.b. die Skelettierng ( nicht-zerteilende Erosion der Region bis af ein 1-Pixel dickes Skelett) oder alle dekompositionellen Beschreibngen (z.b. mittels eines Bams). Ach af diesen Beschreibngen lassen sich dann regionenbasierte Vergleichsmasse, je nach gewählter Beschreibng mehr oder weniger einfach berechnen. Tpische Maße sind hier: Fläche, Zentrm, Höhe nd Breite, die Exzentrizität (das Verhältnis zwischen Hapt- nd Nebenachse), die Länglichkeit (engl: Elongatedness, größter Drchmesser drch Fläche) oder die Kompaktheit (Umfang drch Fläche). 1.5 Objekterkennng Mit Hilfe der nn vorhandenen effizient z bearbeitenden Beschreibngen der Bildregionen lassen sich afwändigere smbolische Verfahren zr Objekterkennng bzw. -klassifizierng drchführen. Eine solche Klassifizierng kann nicht 11

_ ^ ^ ) k o ^ mehr alleine mit den Bilddaten drchgeführt werden, es wird nn zsätzliches (Welt-)Wissen benötigt. Zr Klassifizierng der Objekte stehen verschiedene Techniken zr Aswahl. Statistische Verfahren as der Mstererkennng, Neronale Netze, sntaktische Mstererkennng nd das Graphenmatching seien hier exemplarisch als Vertreter genannt. Af eine Beschreibng dieser Techniken nd weiterer Optimierngsverfahren wird an dieser Stelle verzichtet. 1.6 Bildfolgen Wenn die Verarbeitng von ganzen Bildfolgen gefordert ist, gilt es nnmehr nicht nr die Objekte in den einzelnen Bildern heraszfinden nd z bezeichnen. Zsätzlich kann ach eine Korrespondenz der in den einzelnen Bildern afgezeichneten Objekte drch die Bildfolge hindrch hergestellt werden. Die Verarbeitng ist dann oftmals drch die Fragestellng Wohin hat sich Objekt x as Bild A in Bild B bewegt, bzw. ist es in Bild B überhapt noch vorhanden? gekennzeichnet. 1.6.1 Featre Point Tracking Nach der Analse der Einzelbilder sind die Positionen von sogenannten Featre Points im Bild bekannt. Featre Points können hier interessante Pnkte (z.b. Ecken) oder ach ganze Objekte sein. Die Problemstellng für die Bildserie bleibt die gleiche: Liegt zm Zeitpnkt J eine Menge rts von Featre Pnkten s^ nd zm Zeitpnkt J eine Menge von rvsxwz Featre Pnkten vor, welche zwei Pnkte s^ o r s nd sxwz r sxwz bezeichnen denselben Pnkt, bzw. dasselbe Objekt? Man könnte meinen, dass ein einfacher Vergleich der Position asreichen würde nd jeweils die zwei am nächsten zsammenliegenden Pnkte as r{s nd rzsxwz korrespondien. Wie man aber leicht an Abbildng 5 erkennen kann, führt eine solche globale Minimierng des Abstandes alleine nicht nbedingt zm Erfolg. Daher ist eine nähere Betrachtng dieses Problems nmgänglich, wenn Objekte drch eine Bildserie verfolgt werden sollen. Ziel dieses Featre Point Trackings ist also das Finden von Trajektorien ^ - Q } } } i~ 3 für die drch die Einzelbilder der Serie definierten diskreten Zeitscheiben JeVX [10]. Zr Lösng dieser Afgabe wird in der Regel eine Pfadkohärenzfnktion definiert, die eine gegebene Trajektorie bewertet. Die Fnktion verwendet oftmals vereinfachte phsikalische Modelle, m die Plasibilität oder Wahrscheinlichkeit einer in der Trajektorie kodierten Bewegng abzschätzen (zm Beispiel drch die Berücksichtigng des Trägheitsgesetzes, das plötzliche, starke Beschlenigngsänderngen ohne Zsammenstöße zmindest nwahrscheinlich macht). Mit 12

s^ - _ ^ ks ^ - _ s^ ^ s^ s^ k s k s s ks Abbildng 5: Segmentierng zweier afeinanderfolgender Einzelbilder. Es ist nicht feststellbar, welches der beiden Objekte sich nach oben nd welches sich nach nten bewegt hat. Diese Zordnng kann nr anhand der gesamten Bewegng vollzogen werden. einer solchen Kohärenzfnktion 3 erhält man dann ein Optimierngsproblem, bei dem die Trajektorien in Hinblick af die globale Kohärenz (z.b. gewichete Smme von 3 für alle _ ) maximiert werden mß. Die optimale Pfadkohärenzfnktion existiert hierbei alleine schon as Gründen der Effizienz nicht, es gilt vielmehr mittels eines phsikalischen Modells der z beobachtenden Bewegngen geignete Constraints für diese Fnktion z finden. In einem Sstem, in dem sich Objekte passiv nd ohne Zsammenstösse bewegen (z.b. bei der Beobachtng von mehreren, in verschiedenen Ebenen frei schwingenden Pendel), ist in der Regel eine andere Fnktion sinnvoll als zm Beispiel bei der Beobachtng eines Atoscooters, bei dem die Objekte einen eigenen Antrieb besitzen nd des öfteren zsammenstossen. Bei der häfig verwendeten Pfadkohärenzfnktion nach Sethi nd Jain [14] werden zm Beispiel Richtngs- nd Geschwindigkeitsänderngen berücksichtigt. Die angegebene Fnktion wird dabei immer für eine Zeitscheibe J berechnet nd s^ m eine lokale Bewertng z be- nd berücksichtigt die Positionen rechnen: sƒ # l # k sƒ # sƒ 13

s s^ s^ k s k s ks ks s^ @ s^ s^ 3 ks sƒ ) l sƒ 2 9ˆ sƒ Der erste - - Term berechnet hierbei den Kosins der Richtngsvektoren nd ^ s^ 3 (0, wenn senkrecht zeinander), der zweite Term bestraft Längennterschiede zwischen diesen beiden Richtngsvektoren. Der Wert dieser Kohärenzfnktion wird nn für alle möglichen Trippel berechnet, m das globale Maximm heraszfinden nd dementsprechend die Paarngen in den Trjaektorien an der Stelle J X lokal z optimieren. Ein Problem dieser Fnktion ist natürlich das Finden der richtigen Gewichte nd. Aßerdem wird sie oftmals in Sstemen angewendet, die nicht ganz dem Modell entsprechen (z.b. im Robocp, wo der Ball mit Robotern zsammenstossen nd doch plötzlich die Richtng ändern kann). Neben dem Finden geeigneter Koheränzfnktionen stellen Ein- nd Astritte von Objekten in der Bildserie ein Problem dar. Ach Überdeckngen oder zwischenzeitlich nicht detektierte Pnkte breiten Probleme [13]. 1.6.2 Active Vision In den Anfängen der Compter Vision wrde die Verarbeitng von Bildfolgen eher als zsätzliche Erschwerng des Problems gesehen. Man hat sich in der Regel af die Verarbeitng nd Analse von Einzelbildern, nabhängig von den vorhergehenden oder nachfolgenden Bildern beschränkt nd allenfalls eine nachträgliche Integration der so gewonnenen nabhängigen Daten bemüht. Neerdings wird die Verarbeitng von Bildfolgen ach als Chance bzw. als Vereinfachng des Problems wahrgenommen. Wenn die Daten eines Einzelbildes alleine nicht für eine eindetige Klassifizierng asreichen, kann beim Active Vision das Sstem aktiv die Kontrolle über die Kamera bzw. die Datenaqirierng im Allgemeinen übernehmen, m mit Hilfe einer vorläfigen Analse gezielt weitere Daten z aqirieren, die die Analse verbessern. Hier steht aber letztendlich immer noch die Analse eines statischen Bildes im Vordergrnd. Andere Ansätze verschen aber as der in einer Bildfolge erfassten Bewegng selbst Daten z gewinnen, die sonst üblicherweise as einem Einzelbild gewonnen wrden: Bei den Verfahren Shape from Motion wird z.b. die Form von Regionen, bzw. Objekten as einer Bildserie herasgerechnet (Vereinfacht: Featrepnkte, die sich in der gleichen Richtng nd Geschwindigkeit bewegt haben, gehören vermtlich zm gleichen Objekt). 14

Solche Ansätze werden aßerdem drch phsiologische nd pschologische Unterschngen an den Sehapparaten von Menschen nd Tieren nterstützt. Als Beispiel seien hier der Mechanisms, mit dem Frösche Fliegen fangen nd die kaskadischen Agenbewegngen des Menschen genannt, der niemals ein komplettes Einzelbild in einem Rtsch analsiert, sondern vielmehr geschickt lokale Einzelanalsen integriert. Obwohl an dieser Stelle nicht näher af die einzelnen Verfahren eingegangen werden kann, sei dennoch erwähnt, dass die klassische Afgabenstellng Einzelbild vollständig verstehen illformed nd damit nicht vollständig nd korrekt lösbar ist. Man bedenke, dass die Projektion des dreidimensionalen Rames af eine zweidimensionale Fläche mehrdetig ist, solange nr eine Ansicht zr Verfügng steht. Unserem Gehirn gelingt eine solche Verarbeitng, wenn wir ns ein Age zhalten, dennoch recht gt, weil es Erfahrngen nd bestimmte Gesetzmäßigkeiten berücksichtigt. Es gibt aber eine Vielzahl von nterschten Sinnestäschngen, mit denen sich jeder dieser Mechanismen gezielt überlisten lässt. Erst drch das Hinzziehen von Bildserien (oder verschiedenen Ansichten) erhält man eine wohlgeformte Problemstellng. Drch die aktellen Entwicklngen in der Robotik kommt solchen dnamischen, echtzeitfähigen Ansätzen ( Vision as Process ) znehmende Bedetng bei. 1.7 Exemplar Based Image Recognition Nicht nerwähnt bleiben soll hier ein an nserer Universtität verfolgter Ansatz, der einen komplett anderen Weg geht. Im Stdentenprojekt EROSAL [?] werden Einzelbilder nicht mehr analsiert nd smbolisch repräsentiert m eine Klassifizierng bzw. Entscheidng, herbeizführen. Stattdessen werden alle gesehenen Bilder zsammen mit ihrer getroffenen Klassifizierng nd einem von der Umgebng mittelbar af diese Klassifizierng erhaltenen Feedback (Reinforcement Signal) exemplarisch abgespeichert. Wird ein nees Bild afgenommen, so wird es zm Zwecke der Klassifizierng mit den vorhanden Exemplaren mit Hilfe eines Ähnlichkeitsmaßes verglichen. Die Klassifizierng wird dann anhand der ähnlichsten Exemplare nd deren Reinforcement bestimmt. Die Analse geschieht hier also nicht mehr drch eine smbolische Verarbeitngskette nd vorgegebenes Weltwissen, sondern wird über die Ähnlichkeit von Bildern modliert. Interessant ist hierbei ach der Ansatz, die Bilder nicht in vorgegebene (Objekt-)Klassen einzteilen, sondern direkt mit einer Handlng z verknüpfen. Klassen entstehen hierbei dnamisch über die gleichen richtigen, also die positiv verstärkten Handlngen. Sind af zwei Bilder nterschiedliche Reaktionen nötig, m positives Reinforcement z erhalten, gehören diese Bilder folglich ach zwei verschiedenen Klassen an. 15

Die Herasforderng stellt hierbei das Finden eines für die Afgabe geeigneten Ähnlichkeitsmaßes dar. In ein solches Ähnlichkeitsmaß können dann ach zm Teil die traditionellen analtischen Schritte einfließen. Biologisch motivierte Ähnlichkeitsmaße werden zm Beispiel von den Pschophsikern des MPI in Tübingen nterscht (Stichworte: Earl Vision, Visal Recognition, vgl. [1]). 16

2 Compter Vision Tool Kit Im folgenden wird krz das Compter Vision Tool Kit [6] vorgestellt, dass als öffentlich zgängliche Lösng für die Small Size Leage des Robocps [11] entstanden ist, aber ach in ähnlichen Problemstellng zr Anwendng kommen kann. So war das Afzeichnen von Pendelschwingngen ein weiteres Benchmark. 2.1 Überblick Das CVTK implementiert eine einfache klassische Bildverarbeitngskette von den Pixelmatrizen z Obejktbeschreibngen (bottom p), wobei z den einzelnen Objekten Korrespondenzen über die Einzelbilder der von der Videokamera gelieferten Bildserie hinweg hergestellt werden. Dabei wrden die einzelnen, die notwendigen Schichten realisierenden Techniken speziell für die Domäne des Robocps - globale Kamera, 2 dimensionale Spielebene nd farblich markierte Objekte - nd hinsichtlich der folgenden allgemeinen Designkriterien asgewählt. (Echtzeitverarbeitng) Die Bildverarbeitng mß in Echtzeit, soll heißen, mit mindestens 25 fps nd geringer Verzögerng arbeiten. (Robstheit) Das Sstem mß möglichst zverlässig arbeiten nd ach über längere Zeit keine Fehler machen oder diese selbstständig bemerken nd korrigieren können. (Kalibrierng) Das Sstem mß so angelegt sein, daß der Bentzer bei der Kalibrierng nterstützt wird nd die hierz benötigten Werkzege leicht bereitgestellt werden können. (Flexibilität) Die Bilderkennng mß sich leicht af wechselnde Anforderngen nd Umgebngen anpassen lassen. Es sollte nicht ein spezielles Problem, sondern ein größerer Bereich, eine Problemklasse, abgedeckt werden. (Modlarität) Einmal erarbeitete Datenstrktren, Algorithmen nd Oberflächen sollen möglichst wiederverwendbar nd astaschbar sein. In Abbildng 6 sieht man eine schematische Darstellng der verwendeten, z Jähnes Klassifizierng der Bildverarbeitngstechniken analogen Schichtenarchitektr. Bemerkenswert ist hier, dass zwischen Bildgewinnng nd Segmentierng keine Bildverbesserngsschichten z finden sind. Afgrnd der Bedingng Echtzeitverarbeitng scheiden sinnvolle Filteroperationen wie Glättngen nd Helligkeitsabgleich leider as. Solche Operationen lassen sich bei der geforderten Aflösng (Die meisten Kameras liefern 640x480 Pixel mit 24, bzw. 32 bpp) für 17

Bild Matrix Segmentierng Regionen Matrix Abstraktion der Regionenbeschreibng Regionen Kodierng Objekt Erkennng Objekte grppiert in einer Liste Objekt Geschichte Objektgeschichten grppiert in einer Liste Berechnng des Asgabevektors (Tp, ID, Position, [Orientierng,] Geschwindigkeit, Richtng) Abbildng 6: Schichtenarchitektr des Bildanalsesstems af einer konzeptionellen Ebene. 18

M 5 größere Pixelmgebngen entweder nr in Hardware (Verwendng von spezialisierten DSPs) oder nter Zhilfenahme spezieller optimierter Befehlssätze (MMX nd SSI) möglich. Da solche Bildverbesserngsoperatoren aber direkt af den Pixelmatrizen arbeiten, lassen sie sich ach noch ohne weiteres nachträglich einfügen. 2.2 Farbsegmentierng Für CVTK wrde eine einfache Farbsegmentierng gewählt. Dabei wird der RGB- -0M as dem RGB Wert jedes Pixels drch eine 5 - konstante Fnktion S Š ;NŒP 3pŽ Ram af eine Farbklasse abgebildet. 0 kodiert dabei den Hintergrnd, Werte Y bezeichnen beliebig viele definierte Farbklassen. Um dem Bentzer beliebige Abbildngen des RGB-Rames af diese Farbklassen z ermöglichen (nicht bloß eine konstante Schwelle oder die üblichen Voronoi-Poltope) wird die eigentliche Arbeit der problembezogenen Afteilng des RGB-Rames in Farbklassen af ein externes Kalibrierngstool verlagert. Diese Tools müssen eine Nachschlagetabelle vorbereiten, in der die komplette diskrete Fnktion S für die übliche Kodierng des RGB-Rames (rgb-tripplet mit V ;NŒP V ) abgespeichert ist. Diese Nachschlagetabelle wird dann in die Segmentierngsschicht geladen, die die Farbklasse dann für jedes einzelne Pixel drch eine einfache Nachschlageoperation berechnen kann. 2.3 Kettenkodierng Die in der ikonischen Darstellng vorliegenden Regionen werden nn wahlweise mit der Vierer- oder Achternachbarschaft in der Freeman - (Ketten)kodierng [4] kodiert. Dabei wird z jeder Region ein Anfangspnkt des Kettenkodes, der af der Kontr der Region liegt, zsammen mit einer Seqenz von Nmmern abgespeichert. Die Seqenz kodiert hierbei die Richtngen in der beim Abschreiten der Kontr z gehenden Einzelschritte (siehe Abbildng 7). Diese Art der Kodierng ermöglicht die schnelle Berechnng von Zentrm nd Fläche, die in den folgenden Schichten für die Erkennng der Objekte verwendet werden sollen. 2.4 Objekterkennng Zm Finden von Objekten in dem Bild wird die Liste der gefnden Regionen nach vorgegebenen, expliziten Beschreibng der Objekte drchscht. Es werden mehrere Regionen, die ein bestimmtes Objekt bilden, nd ihre Lage zeinander benannt. Bei der Beschreibng der Regionen werden nr die Farbe nd optional die Fläche verwendet. Die Form der Regionen bleibt nbeachtet. Ein Objekt besteht as mindestens einer Fläche, die das Zentrm markiert. Eine weitere Region des Objektes 19

1 2 0 3 Abbildng 7: Nmmerierng der Nachbarn einer 4er-Nachbarschaft nd Kodierng einer Kontr. Die Kontr wird drch folgenden Kettenkode beschrieben: 3,0,0,3,0,1,1,2,2,2 etabliert 4 dann eine Objektachse. Hier wird aßerdem der (Eklidsche) Abstand vom Zentrm angegeben: O 4 ' - n 3 ) - 3 (1) wobei nd Œ die Zentren der beiden Regionen seien. Besitzt das Objekt weitere Marker, wird ebenfalls ihr Abstand zm Zentrm nd ihr Winkel z der drch die ersten zwei Marker etablierten Achse angegeben (Abbildng 8). Diese Beschreibng ist im Gegensatz z Schablonen rotationsinvariant nd mß daher nicht in verschiedenen Rotationen getestet werden. Zr Ablage dieser Beschreibngen wird eine sehr einfache Objektbeschreibngssprache samt Parser nd Generator definiert. Die Beschreibngsdateien liegen dabei in für Menschen lesbarer nd dokmentierter Form vor, so daß das Editieren von Hand leicht möglich ist. Für die Definition der Objekte wird eine einfache Grammatik verwendet: BESCHREIBUNGSDATEI: OBJEKT [OBJEKT..] OBJEKT: object ID 20

ƒ ƒ Markierng d Mark w Mark Zentrm d Achse Achse Abbildng 8: Links die Ansicht eines Objektes mit Farbmarkern nd rechts die Visalisierng einer möglichen Beschreibng. O A ist dabei der Abstand der Markierng vom Zentrm, nd der Winkel des Positionsvektors der Markierng zr Objektachse. ZENTRUM [ACHSE [MARKIERUNG..]] end ZENTRUM: center FARBKLASSE [FL\"ACHE FL\"ACHE_TOLERANZ] ACHSE: axis FARBKLASSE ABSTAND ABSTAND_TOLERANZ [FL\"ACHE FL\"ACHE_TOLERANZ] MARKIERUNG: mark FARBKLASSE ABSTAND ABSTAND_TOLERANZ WINKEL WINKEL_TOLERANZ [FL\"ACHE FL\"ACHE_TOLERANZ] ID, FARBKLASSE, ABSTAND, FL\"ACHE, ABSTAND_TOLERANZ, FL\"ACHE_TOLERANZ, WINKEL_TOLERANZ: 21

eine positive ganze Zahl WINKEL: eine positive ganze Zahl kleiner als 360 wobei die in eckige Klammern gesetzte Angabe der Fläche samt Toleranz eine optionale Angabe darstellt. Die in Abbildng 8 gezeigte Beschreibng könnte zm Beispiel (maßstabsfrei) folgendermaßen formliert werden: object 0 center 1 200 30 axis 0 60 10 160 25 mark 3 60 10 90 10 200 30 end Eine solche Beschreibng der Objekte soll aber nicht von Hand, sondern vielmehr mit dem bereitgestellten grafischen Werkzeg erstellt werden. Hier sollen ach die Toleranzgrenzen sinvoll eingestellt werden. Übereinstimmngen werden drch einen einfachen, intitiven Algorithms gescht. Hierbei werden rekrsiv die einzelnen spezifizierten Markierngen mit den gefndenen Regionen verglichen. Da die Regionen nach ihrer Farbe grppiert vorliegen, müssen nicht für jede Markierng alle Regionen, sondern nr die mit gleicher Farbklasse verglichen werden. Nachdem eine Übereinstimmng gefnden wrde, wird nach weiteren Übereinstimmngen der gleichen Schablone gescht, bis alle in Frage kommenden Regionen nterscht wrden. Hierbei handelt es sich im Prinzip m eine Tiefensche in einem Zordnngsbam, bei dem in jedem Sohn eine weitere Markierng einer Region zgeordnet wird. In den Blättern des Bames finden sich dann vollständige Zordnngen. Die Tiefe des Bames wird drch die Anzahl der Markierngen in der Beschreibng bestimmt nd ist damit beschränkt. Obwohl diese einfache Sche keine Heristiken verwendet, ist sie bei der aftretenden Zahl von Objekten (11 im RoboCp) mehr als schnell geng. Zrückgegeben werden die gefndenen Objekte nach ihrem Tp (die ID der Beschreibng, mit der sie gefnden wrden) zsammengefaßt. Ein Objekt ist dabei eine Instanz der Klasse CObject, wobei die Eigenschaften Klasse, Position nd Orientierng gültige Werte besitzen. Die ID nd die Geschwindigkeit müssen erst noch bestimmt werden. 22

[ [ s [ ^ 2.5 Objektverfolgng Für die Bestimmng der Geschwindigkeit nd zr Afzeichnng von objektbezogenen Daten über einen längeren Zeitram gilt es, eine Korrespondenz zwischen den Objekten afeinanderfolgender Einzelbilder z etablieren. Können die Objekte nicht anhand eindetiger Merkmale differenziert werden, gestaltet sich die Zordnng als nicht triviales Problem. In einem solchen Fall hat man eine Menge Z s von nnterscheidbaren Objekten gleichen Tps in einem Bild nd eine Menge Z s [ mit Objekten im aktellen Bild s gefnden. Hierbei bezeichne 9s] die Position des š -ten Objektes as Z s. Afgrnd der schon erläterten Möglichkeit der nvollständigen Pfade mß nicht zwingend gelten nd jedes Objekt der einen Menge einen Nachfolger bzw. Vorgänger in der anderen Menge besitzen. Um die Zordnngen z finden, soll die Pfadkohärenz nach Sethi nd Jain maximiert werden. Die Minimierng wird hier drch die Formlierng als Schproblem realisiert werden. Bezüglich nvollständiger Pfade werden einige vereinfachende Annahmen afgestellt: 1. Ein- nd Astritte treten nr einzeln af. Wenn Y gilt, sind Objekte asgetreten. Gilt œ [, sind Objekte eingetreten, gilt hingegen [, liegen weder Ein- noch Astritte vor. Diese Annahme ist nicht nr in Umgebngen, wo Ein- nd Astritte nr selten aftreten, plasibel, sondern ist wohl ach mit einer hohen Wahrscheinlichkeit ganz allgemein korrekt, wenn man eine hohe Bildrate nd relativ wenige Objekte vorassetzt. 2. Ein einmal asgetretenes Objekt tritt nicht wieder ein. Das bedetet, daß die ID eines asgetretenen Objektes nicht wieder vergeben wird. Das Unterscheiden von Ein- nd Wiedereintritten spielt für die Bestimmng der Geschwindigkeit wie ach für reaktive Agenten keine Rolle. Sollte die Entdeckng z.b. für die Generierng von Steerbefehlen benötigt werden, mß ein Wiedereintritt in einer höheren Verarbeitngsschicht festgestellt werden. Verdeckngen werden drch ein Fortschreiben nicht entdeckter Objekte anhand von linearen Modellen gelöst. Erst wenn das Objekt in mehreren afeinanderfolgenden Bildern nicht wiedergefnden werden kann, wird das Objekt gelöscht nd gilt als asgetreten. Bevor der afwendige Matching-Algorithms selbst angeworfen wird, werden zerst alle Objektklassen nterscht nd die Fälle assortiert, für die eine Zordnng ad hoc möglich ist. Eine Zordnng kann in folgenden Fällen direkt vorgenommen werden: n=0 Es wrden im aktellen Bild keine Objekte gefnden. Alle Objekte der Menge Z s werden entweder anhand eines linearen Modells fortgeschrieben 23 [

[ oder gelöscht. m=0 Alle Objekte sind ne eingetreten nd erhalten daher eine nee Identifizierngsnmmer nd eine leere Geschichte. Z s zge- m=n=1 Das einzige Objekt in ordnet werden. Z s kann direkt dem einzigen Objekt in indem, falls œ Nr für die restlichen Fälle wird ein Algorithms, mit dem die Schicht konfigriert wrde, zm Finden einer wahrscheinlichen Zordnng angestoßen. Zm Finden der Zordnng wird hier eine Uniform-Cost-Sche verwendet [12]. In jeder Ebene des Schbames wird eine Zordnng mehr vorgenommen. Dabei werden nacheinander den Objekten der Menge Z s alle Objekte der Menge Z s zgeordnet. Die Sche beginnt also mit einem Knoten, in dem noch keine Zordnngen getroffen wrden. Wird dieser Knoten expandiert, werden dem ersten Objekt as Z s in neen Knoten alle Objekte as Z s zgeordnet. Wird wiederm einer dieser neen Knoten expandiert, werden nn in G neen Knoten dem zweiten Objekt as Z s alle in Z s verbliebenen Objekte zgeordnet. Ein Sonderfall ergibt sich beim Expandieren, wenn Ÿž gilt. In einem solchen Fall bleiben [ Elemente einer Menge nzgeordnet. Dies wird beim Afspannen berücksichtigt, gilt, ein Knoten angelegt wird, bei dem das aktell zzordnende Objekt as Z s explizit als nzgeordnet gespeichert wird. Die Reihenfolge, in der der Schbam drchlafen wird, wird bei der Uniform Cost Search anhand einer Kostenfnktion bestimmt. Die Söhne des billigsten Knotens werden zerst nterscht. Die Uniform-Cost Search ist hierbei vollständig nd optimal, d.h. es wird in jedem Fall die günstigste Zordnng gefnden. Als Orientierng diente die von Rssell nd Norvig beschriebene Schshell wie in Abbildng 9 dargestellt, mit der sich verschiedene Schalgorithmen von der Tiefensche bis hin z A implementieren lassen. Kern dieser Implementierng sind die Expandierngsfnktion, die die Söhne eines Knoten liefert, eine Einreihngsfnktion, die die expandierten Knoten anhand der Strategie in eine Verarbeitngsliste einordnet nd ein Goal-Test, der Knoten af den Zielzstand testet. Im Ergebnis dieser Schicht liegt dann eine Grppierng der Objektgeschichten nach ihrem Tp vor. Jede dieser Objektgeschichten besitzt eine eindetige ID. 2.6 Berechnng der Asgabe Anhand der nn vorliegenden in der Objektgeschichte kodierten Trajektorien kann nn die benötigte Asgabe berechnet werden. Für jedes gefndene Objekt wird die Position, Orientierng, Bewegngsrichtng nd die Geschwindigkeit zrückgegeben. Allerdings werden diese Werte z.zt. nicht geglättet, was gerade bei lang- 24

fnction GENERAL-SEARCH(problem, QUEUING-FUNCTION) retrns a soltion or failre nodes MAKE-QUEUE(MAKE-NODE( INITIAL-STATE[problem])) loop do if nodes is empt then retrn failre node REMOVE-FRONT(nodes) if GOAL-TEST[problem] applied to STATE(node) scceeds then retrn node nodes QUEUING-FUNCTION(nodes, EXPAND( node, OPERATORS[problem])) end Abbildng 9: Allgemeiner Schalgorithms nach Rssell nd Norvig. samen Geschwindigkeiten größere Schwankngen hervorrfen kann. Hier ist später noch eine geeignete Glättng nd die Verwendng von statistischen Methoden (Stichwort: Kalman-Filter) vorgesehen. 2.7 Asblick Obwohl die Bibliothek für die Small-Size-Leage nd nr für 2-dimensionale Bilderkennngsafgaben konzipiert wrde, werden Teile von ihr derzeit in ein Team der MidSize-Leage integriert. So haben die Brainstormer Tribots (vorläfiger Name) as Dortmnd ihre Entwicklngen asgehend von dieser Bibliothek begonnen. Aßerdem soll diese Bibliothek die bisherige mechanische Sensorik beim in Karlsrhe nd Dortmnd verwendeten Pendelwagen ersetzen. Anhand der visell erfassten Stellng eines Stabes soll ein Reinforcement Regler daraf trainiert werden, diesen freistehenden Stab af einem Wagen z balancieren. 25

œ œ A Faltng Unter Faltng versteht man bezüglich zweidimensionaler, diskreter Pixelmatrizen folgende Operation: -0/ 2143 $ b -0/ )«ª X / ) P X 3 b wobei die Bildmatrix nd ~ c mit nd den sogenannten Kernel oder Faltngsmaske (engl.: convoltion mask ) bezeichnen. Das Ergebnis dieser Operation ist die kleinere Matrix wz2 ~ wz, wobei die Operation für jede Stelle 2143 der resltierenden Matrix berechnet werden mß. Zr -0/ Berechnng der resltierenden Matrix wird der Kernel also qasi über die Bildmatrix bewegt. Dabei werden die Einträge des Kernels mit dem darnter liegenden Pixel mltipliziert. Die Smme dieser Prodkte bildet dann den Eintrag an der aktellen Stelle 21L3. -0/ Je nach Kernel hat die Faltng eines Bildes andere Aswirkngen. Tpische Anwendngen sind Filteroperationen. So kann das Bild zm Beispiel drch Aswahl eines einfachen Gasskernels geglättet werden. - ª P 3 26

Literatr [1] MPI for Biological Cbernetics, Pblications, http://www.kb.tebingen.mpg.de/b/pblication.html, Tübingen, 2003 [2] Chetverikov, D., Verstó, J., Featre Point Tracking for Incomplete Trajectories. Compting, 1999 [3] Fisher, R., Perkins, S., Walker, A., Wolfart, E., Image Processing Learning Resorces, http://www.dai.ed.ac.k/hipr2/,2002 [4] Freeman, H., On the encoding of arbitrar geometric configration. IRE Transactions on Electronic Compters, EC-10(2):260-268, 1961 [5] Jähne, B., Digitale Bildverarbeitng, 4., nebearbeitete Aflage, Springer- Verlag, Berling nd Heidelberg 1997 [6] Lange, s., Compter-Vision-Tool-Kit Projekt Dokmentation nd Bachelor Arbeit, http://www.cvtk.sf.net, Osnabrück 2001 [7] Liedtke, C.-E., Digitale Bildverarbeitng, Script zr Vorlesng, http://www.tnt.ni-hannover.de/ed/vorlesngen/bildverarb/,hannover 2000 [8] Lüning, A., Kantenerkennng nd Skelettierng, Seminarvortrag Comptervision, Berlin 1999 [9] Marr,D., Vision, W.H. Freeman and Compan, New York 1982 [10] Rangarajan, K., Shah, M., Establishing motion correspondence. CVGIP: Image Understanding, 54:56-73, 1991 [11] RoboCp Federation, Rles and Reglations, http://www.robocp.org [12] Rssel, S., Norvig P, Artificial Intelligence: A Modern Approach, Prentice Hall, New Jerse 1995, S.46-47 [13] Salari, V., Sethi, I.K., Featre point correspondence in the presence of occlsion. IEEE Trans. Pattern Analsis and Machine Intelligence, 12:87-91, 1990 [14] Sethi, I.K., Jain, R., Finding trajectories of featre points in a monoclar image seqence. IEEE Trans. Pattern Analsis and Machine Intelligence, 9:56-73, 1987 27

[15] Sonka, M., Hlavac, V., Bole, R. Image Processing, Analsis, and Machine Vision, second edition Brooks/Cole Pblishing Compan, Pacific Grove 1999 [16] Vornberger, O., Müller, O., Comptergrafik, Script zr Vorlesng, http://www-lehre.inf.os.de/ cg/2000/, Osnabrück 2000 28