Abstract
Object detection is a broad area that comprises a variety of methods for measuring and categorising objects, through the use of various sensor systems. These sensor systems differ according to their environments, allowed lighting conditions and the type of objects that they can detect; they have advantages and disadvantages accordingly. This diploma thesis is about object detecion in the area of robotics, especially about its use in Robot-soccer - which is increasing in popularity due to the associated research possibilities. The designed robot is required to follow the rules of the Mirosot Category, specified by the international organisation for advancement of Robot-soccer called FIRA. A digital camera is the sensor used for object detection: Starting from constraints in the measurements (based on the Mirosot Category and Rules), this thesis presents an appropriate hardware-platform and the reasons for choosing particular components. Based on standard methods of image processing and approximations for their algorithmic complexity, a software concept was sought-after, that meets the requirements. The main aim is the detection of the ball (an orange golfball) and the coloured goalposts. Since standard methods are not optimized for the specific hardware, and the efficiency is a major concern, a concept is presented, which allows basic geometric shapes (e.g. circles, rectangles) to be detected and measured. This new concept partly uses well-known methods from the standard literature, that were optimized for the required tasks; but also includes a new approach that makes it possible to handle the detection-complexity of the dynamic motion of the target objects. The result is a image processing system with a detection-rate of 60 images per second. The precision of the ball-detection lies at +/- 1 mm at a mean distance of 50 cm. The average power consumption is 1,5 Watt and the hardware- dimensions are such, that the hardware could be housed in a cube with sides of 7.5cm length.
Kurzfassung
Objekterkennung ist ein weit gefächertes Gebiet und umfasst eine Vielzahl von Verfahren zur Vermessung und Kategorisierung von Objekten mittels unterschiedlichster Sensorsysteme, die je nach Umgebung, Beleuchtung und Art der Objekte die detektiert oder vermessen werden sollen, unterschiedlich geeignet sind und ensprechend ihre Vor- und Nachteile besitzen. Diese Diplomarbeit beschäftigt sich mit der Objekterkennung im Rahmen der Robotik, speziell im Roboterfußball, welcher sich in den letzten Jahren, aufgrund der sich daraus ergebenden Forschungsmöglichkeiten, immer größerer Beliebtheit erfreut. Der Roboter soll den Regeln der Mirosot Kategorie der internationalen Organisation zur Förderung des Roboterfußballs FIRA entsprechen. Als Sensor für die Objekterkennung dient eine Digitalkamera. So wird in dieser Arbeit ausgehend von den Einschränkungen in den Abmessungen, bestimmt durch die Regeln der Kategorie Mirosot, eine geeignete Hardware-Plattform erarbeitet und Gründe für den Entscheid zur Wahl bestimmter Komponenten dargelegt. Ausgehend von gängigen Methoden der Bildverarbeitung und der Aufwandsabschätzung für diese Algorithmen, wird nach einem Softwarekonzept gesucht, das auf der gewählten Plattform den gestellten Anforderungen entspricht. Ziel ist in erster Linie die Erkennung des Spielballes, ein oranger Golfball und der farbig markierten Tore. Da Standardverfahren aber nicht auf die spezielle Hardware optimiert sind und auch ansonsten hohe Anforderungen an die Rechenleistung stellen, wird ein Konzept vorgestellt, das es erlaubt einfache geometrische Formen wie Kreise oder Rechtecke zu detektieren und zu vermessen. Dieses neue Konzept greift teilweise auf in der Fachliteratur bekannte Methoden zurück die hierfür entsprechend optimiert werden, enthält aber auch einen neuen Ansatz, der es erlaubt den Anforderungen durch die hohe Dynamik der Bewegung der zu detektierenden Objekte Rechung zu tragen. So entstand ein Bilderkennungssystem mit einer Erkennungsrate von 60 Bildern pro Sekunde. Für den Spielball liegt die Genauigkeit bei +/- 1 mm in einer mittleren Entfernung von 50 cm. Dies bei einem durchschnittlichen Leistungsverbrauch von 1,5 Watt und Dimensionen der Hardware die in einem Würfel von 7,5 cm Kantenlänge Platz finden.
Danksagung
Ich möchte meinem Betreuer und meinen Freunden für ihre Unterstützung während des gesamten Studiums und der Diplomarbeit danken, besonders Herrn Stephan Tratter meinem „Studienorganisator“ ohne dem ich wohl manche Anmeldung versäumt hätte und dessen Unterlagen mir manche Prüfung erleichtert haben.
Ein besonderer Dank gilt meinen Eltern, natürlich für ihre Unterstützung sei es in finanzieller wie in jeglicher anderer Hinsicht, aber nicht zuletzt wegen ihrer schier unendlichen Geduld.
Abkürzungen
AD Analog Devices (Hersteller von Halbleitern) ADC Analog to Digital Converter (Analog-Digital-Wandler) AEC Automatic Exposure Control (Automatische Einstellung der Belichtungszeit) ALU Arithmetic Logic Unit (Einheit in Mikrocomputern) APS Aktiv Pixel Sensor AWB Automatic White Balance (Automatischer Weißabgleich) BGA Ball Grid Array (Ein Gehäusetyp für Halbleiterbausteine) BPS Bilder pro Sekunde (Bildwiederholrate) CIE Commision Internationale de l’Eclairage CCITT International Telegraph and Telephone Consultative Committee CCLK Core-Clock CPU Central Processing Unit (Hauptprozessor) Diskrete Fourier-Transformation DFT DMA Direct Memory Access (Prozessorunabhängiger Datentransfer) DSP Digitaler Signalprozessor EAV End of Active Video EBIU External Bus Interface Unit (Controller für peripheren Adress- Datenbus im Blackfin) FFT Fast Fourier Transformation FHS Farbton Helligkeit Sättigung FIRA Federation of International Robosoccer Association FPGA Fiel Programmable Gate Array FPS Frames per Second (Bildwiederholrate)
FPU Floating Point Unit (Fließkommaeinheit) GPIO General Purpose Input Output HSB Hue Saturation Brightness HSI Hue Saturation Intensity HSV Hue Saturation Value IDE Integrated Development Environment IEEE Institute of Electronics and Electrical Engineers (Weltweite Vereinigung von Ingenieuren aus dem Bereich Elektrotechnik) IFP Image Flow Processor ISR Interrupt Service Routine (Interruptbehandlungsfunktion) ITU International Telecommunication Union JTAG Jount Test Action Group (Eine Schnittstelle für das Hardware-Debugging) MAC Multiply Accumulate (Multiplikation und Addition) MMR Memory Mapped Register (Register die als Speicherzugriff zugänglich sind.) MOS Metal Oxide Semiconductor (Metalloxyd-Halbleiter) NTSC National Television System Committee PAL Phase Alternating Line PCI P eripheral Component Interconnect (Bus zur Verbindung von Geräten in PC-Systemen)
Personal Digital Assistant (Pocketcomputer) PDA
Purpose Flag (allgemeiner digitaler Ein- oder Ausgang) PF PLL Phase Locked Loop (Regelkreis zur Taktsynchronisation) PPI Parallel Peripheral Interface (Synchrone parallele Schnittstelle) PWM Puls Width Modulation (Puls-Pause-Modulation) RAM Random Access Memory RISC Reduced Instruction Set Computer (Eine Mikroprozessor Architektur) RTC Real Time Clock (Echtzeituhr) Start of Active Video SAV SCCB Serial Camera Control Bus (Steuerbus für Omnivision Kamerachips) SCLK System-Clock
SDRAM Synchronous Dynamic RAM SLD Shortline Detection SNR Signal to Noise Ratio (Signal- zu Rauschverhältnis) SPI Serial Peripheral Interface (Synchrone serielle Schnittstelle) SRAM Static RAM (Speicherzellen realisiert mittels Flip-Flops) UART U niversal Asynchronous Receiver Transmitter (Asynchrone serielle Schnittstelle) USB U niversal Serial Bus WDT Watchdog Timer
Inhaltsverzeichnis
Kapitel 1 Aufgabenstellung 5
1.1 Roboterfußball 5
1.1.1 FIRA 5
1.1.2 Robocup 8
1.2 Anforderungen and das Vision System 8
Kapitel 2 Begriffsbildung 12
2.1 Das menschliche Sehen 13
2.1.1 Der Aufbau des Auges 13
2.2 Farbton, Helligkeit und Sättigung 16
2.3 Farbräume und ihre Entstehung 18
2.3.1 Drei-Komponenten-Theorie 18
2.3.2 Der RGB-Farbraum 18
2.3.3 Von der analogen in die digitale Welt 20
2.3.4 Der FHS-Farbraum 22
2.3.5 FHS ähnliche Modelle 24
2.3.6 Das YUV-Farbmodell 24
2.3.7 Das YCbCr-Farbmodell 25
2.3.8 Abtastfrequenzen 26
2.4 Auflösung von digitalen Bildern 27
2.5 Videoübertragung 27
2.5.1 Bildübertragung allgemein 28
2.5.2 ITU-R BT.601 28
2.5.3 ITU-R BT.656 29
Kapitel 3 Methoden der Bilderkennung 32
3.1 Grundlegende Begriffe 32
3.2 Das Schichtenmodell 34
3.3 Aufnahme 35
3.4 Vorverarbeitung 36
3.4.1 Charakterisierung digitaler Bilder 36
3.4.2 Punktoperatoren 38
3.4.3 Globale Operatoren 42
I
3.4.4 Operationen im Frequenzbereich 47
3.4.5 Transformation der Ortskoordinaten 50
3.5 Segmentierung 51
3.5.1 Schwellwertverfahren 52
3.5.2 Kantendetektion 53
3.5.3 Kantennachbearbeitung 55
3.5.4 Morphologische Operatoren 55
3.6 Merkmalsextraktion und Objektidentifikation 57
3.6.1 Opening und Closing 57
3.6.2 Vektorisierung 58
3.6.3 Modellierung 59
3.7 Interpretation 60
3.8 Rückkopplungen 60
Kapitel 4 Systemarchitektur und Wahl der Komponenten 62
4.1 Rahmenbedingungen 62
4.1.1 Abmessungen 62
4.1.2 Leistungsverbrauch 63
4.2 Architektur des Objekterkennungssystems 63
4.3 Bildaufnahme 64
4.3.1 Objektiv 64
4.3.2 Fotosensor 65
4.3.3 Image-Sensoren und Kameramodule am Markt 72
4.3.4 Monokamera gegen Stereokamera 76
4.3.5 Kameramontage 76
4.4 Prozessor 78
4.4.1 Fixkomma gegen Fließkomma 79
4.4.2 DSPs am Markt 79
4.5 Speicher 82
4.5.1 RAM 83
4.5.2 Flash 83
4.6 Tinyphoon 83
Kapitel 5 Realisierung und Ergebnisse 85
5.1 Entwicklungstools 85
5.1.1 Altium Designer 85
5.1.2 VDSP 85
5.1.3 JTAG 86
5.2 Schaltplan und Platinenlayout 86
5.2.1 Schaltplan 87
5.2.2 PCB-Layout 88
5.3 Betriebssystem 88
5.4 Software-Bibliotheken zur Bilderkennung 89
II
5.5 Treibersoftware 89
5.5.1 PLL 89
5.5.2 SDRA-MController 90
5.5.3 GPIO 91
5.5.4 SCCB 91
5.5.5 Kamerainitialisierung 92
5.5.6 Kamerkalibrierung 93
5.5.7 PPI und DMA 94
5.5.8 Flashspeicher 94
5.6 Bootvorgang 94
5.7 Aufnahmetests 95
5.7.1 AEC und AWB 96
5.7.2 Auflösung und Objektgrößen 97
5.8 DMA und Speicherverwaltung 97
5.8.1 Framebuffer 99
5.8.2 Cache der Bilddaten 100
5.8.3 Synchronisation der DMA-Transfers 101
5.9 Der Objekterkennungsalgorithmus 105
5.9.1 Vorverarbeitung des Bildes 105
5.9.2 Wahl eines geeigneten Farbraums 105
5.9.3 Kantendetektion und Farbklassifizierung 108
5.9.4 Nachbearbeitung der Segmente 111
5.9.5 Das „Short Line Detection“ Konzept 111
5.9.6 Die Modellierung und Objektbestimmung 112
5.9.7 Bildkoordinaten 114
5.10 Transformation der Bild- in Roboterkoordinaten 115
5.10.1 Koordinatentransformation 116
5.10.2 Testaufbau 118
5.10.3 Methode der kleinsten Quadrate 119
5.10.4 Stückweise lineare Approximation 120
5.11 Ablauf und Timing des Algorithmus 122
5.12 Performance optimiertes Kodieren 124
5.13 Evaluierung der Performance 125
5.13.1 Genauigkeit 125
5.13.2 Ausführungszeit 127
5.13.3 Leistungsaufnahme 127
5.14 Erkenntnisse und Problembereiche 128
Kapitel 6 Weitere Entwicklungen 129
6.1 FPGAs 129
6.2 Drehbarer Stereokopf 129
6.3 Neue Prozessoren 130
III
6.4 Neue Kameramodule 130
6.5 Autofokus 130
6.6 Verbesserungen des Monokamerasystems 131
6.6.1 Verdoppelung der Framerate 131
6.6.2 Verringerung der Empfindlichkeit gegen Verdeckung 131
6.6.3 Verbesserte Objektdetektion 132
6.6.4 Weniger Empfindlichkeit gegenüber Helligkeitsänderungen 132
6.6.5 Verringerung der Ausführungszeit 132
6.7 Intelligenter Bildverarbeitungssensor 132
IV
Kapitel 1 Aufgabenstellung
Objekterkennung ist ein weit gefächertes Gebiet und es gibt mittlerweile zahllose Verfahren mittels unterschiedlichster Sensoren zur Detektion und Vermessung von Objekten. Im vorliegenden Fall geht es um die Entwicklung eines passiven bildgebenden Verfahrens zur Entfernungsbestimmung eines autonomen mobilen Roboters von anderen Objekten. Andere Objekte heißt in diesem Fall, da der Roboter Fußball spielen soll, um den Ball die Tore und evt auch die Gegner. Die Herausforderung liegt in den kleinen Abmessungen des Roboters und der damit verbundenen eingeschränkten Verfügbarkeit von Energie und Rechenleistung. Ziel ist somit die Entwicklung eines „intelligenten Sensors“ der die Abstände des Roboters zu Objekten definierter Größe an einer Kommunikationsschnittstelle zur Verfügung stellt. Die Bildaufnahme soll mittels einer Videokamera erfolgen. Getestet wird dieser Sensor im Rahmen von Roboter Fußballspielen.
1.1 Roboterfußball
Fußball spielende Roboter erfreuen sich immer größerer Beliebtheit, da dieses Spiel ein breites Forschungsfeld bietet und unterschiedlichste Disziplinen und
Forschungsschwerpunkte vereint. Nicht nur die Testmöglichkeiten unter „realen“ Bedingungen, sondern auch die hohe Dynamik des Spiels, das höchste Anforderungen an Sensorik und Mechanik stellt, bieten einen Anreiz sich diesem Thema zu widmen. Es gibt derzeit zwei große konkurrierende Verbände die internationale Meisterschaften im Roboterfußball in den unterschiedlichsten Kategorien veranstalten. Es sind dies die FIRA und der Robocup.
1.1.1 FIRA
FIRA steht für „Federation of International Robosoccer Association“. Sie wurde 1995 von Prof. Jong-Hwan Kim gegründet und organisiert seither jährlich internationale Meisterschaften im Roboterfußball in unterschiedlichen Kategorien [FIRA06]. Die Ligen
5
reichen von einer reinen Simulationsliga bis hin zu humanoiden Robotern die in einem Elfmeterschiessen gegeneinander antreten.
Im folgenden wird die Liga in der der Roboter antreten soll, vorgestellt und die Regeln für die physikalischen Grenzen des Roboters erläutert, um zu zeigen, mit welchen Bedingungen die Objekterkennung zurecht kommen muss. Mirosot:
Die Roboter der Mirosot-Liga besitzen in der derzeitigen Konfiguration kaum „Intelligenz“. Sie werden von einem externen Host-Rechner gesteuert der das gesamte Spielgeschehen mittels einer über dem Spielfeld montierten Kamera aufnimmt wie es in Abbildung 1.1 dargestellt ist. Jeder Roboter ist obenauf mit einer Farbkodierung gekennzeichnet um im von der globalen Kamera aufgenommenen Bild Gegner und die Spieler der eigenen Mannschaft unterscheiden zu können. Die gesamte Software zur Bildauswertung und Objekterkennung und auch jene Algorithmen zur Steuerung jedes einzelnen Roboters bzw. die „Strategie“ laufen auf einem handelsüblichen Desktop-Rechner. Dieser sendet nur mehr die Steuersignale an jeden einzelnen Roboter.
Die Roboter selbst sind würfelförmig mit einer Kantenlänge von maximal 75 mm. Sie werden von zwei unabhängigen Rädern an den Seiten angetrieben.
Gespielt wird mit einem orangen Golfball mit einem Durchmesser von ca. 43 mm [DGV04] auf grünem Untergrund. Die Abmessungen des Spielfelds hängen von der Unterkategorie ab. Derzeit werden Spiele mit 3, 5 oder 11 Spielern pro Mannschaft veranstaltet [FIRA06].
6
Abbildung 1.2 zeigt ein prinzipielles Problem der Mirosot Roboter. Durch die Funkstrecke zwischen dem externen Host-Rechner und den Robotern entsteht eine Verzögerung die den Roboter entsprechend verspätet auf die im momentan aufgenommenen Kamerabild sich bietende Situation reagieren lässt. Dieser Umstand ließe sich umgehen, würde ein entsprechender Sensor direkt am Roboter montiert und dort eine Bildauswertung und Steuerung vorgenommen, beisbielsweise in besonders zeitkritischen Situation wie etwa den Abfangen sehr schnell geschossener Bälle, die Geschwindigkeiten von 5 m/s [NVK02] erreichen können.
Die Roboter selbst bewegen sich mit Geschwindigkeiten an die 3 m/s [NVK02].
Die Verbesserung des Mirosot Systems soll jedoch nur ein Zwischenschritt sein auf dem Weg zum vollkommen autonomen Mirosot Roboter um aufzeigen zu können wie weit
7
fortgeschritten die Technologien im Bereich der „Embedded Systems“ schon sind und welche Entwicklungsstufen in den nächsten Jahren noch zu erwarten sind.
1.1.2 Robocup
Robocup ist der zweite große Veranstalter internationaler Turniere im Roboterfußball. Die Organisation hat ihre Anfänge im Jahr 1993 in Japan und wurde dort von einem japanischen Komitee angestoßen. Die ersten offiziellen internationalen Meisterschaften fanden 1997 statt [RBC06]. Die Kategorien des Robocup sind jenen der FIRA Meisterschaften sehr ähnlich.
1.2 Anforderungen and das Vision System
In Titel dieses Abschnitts spreche ich zum ersten Mal vom „Vision System“. Dieser Begriff wird im Verlauf der Arbeit noch einige Male gebraucht werden. Gemeint ist damit die gesamte Einheit, Software und Hardware, die notwendig ist, um vom aufgenommenen Bild zu Positionskoordinaten von Objekten zu kommen, relativ zum Ursprung des Roboterkoordinatensystems. Der Begriff beinhaltet selbstverständlich auch den Aufnahmesensor selbst.
Die im Abschnitt 1.1 dargelegten Daten vermitteln bereits einen Eindruck, welch hohe Anforderungen an eine Objekterkennung basierend auf einem bildgebenden Verfahren gestellt werden.
8
sehr geringe Abmessungen:
Die Außenabmessungen dürfen eine Kantenlänge von 7.5 cm nicht überschreiten Leistungsverbrauch:
Ein Spiel dauert zwei mal fünf Minuten, die ein Roboter auf jeden Fall ohne Wiederaufladen der Akkus durchhalten muss. Wünschenswert wäre eine halbe Stunde, vielleicht mehr. Es steht ein NiMh Akku-Paket, bestehend aus 9 Zellen zu je 1.2 Volt mit 500 mAh zur Verfügung. In Serie geschaltet ergibt dies eine Nennspannung von 7.2 Volt [NVK02]. Seine Leistung ist durch die zur Verfügung stehenden Abmessungen begrenzt. Der Großteil davon (ca. 60 % bis 70 %) entfällt dabei auf die Motoren. Die Hardwareplattform für die Strategieeinheit und der Mikrokontroller für die Steuerung der Motoren benötigen ebenfalls einen Anteil an der zur Verfügung stehenden Leistung. Unter diesen Gesichtspunkten sollte der Leistungsverbrauch des Vision Systems 2 Watt nicht übersteigen. Dynamik des Spiels:
Wie im Abschnitt 1.1.1 erwähnt bewegt sich der Ball mit einer Geschwindikeit von an die 3 m/s. Nehmen wir als Beispiel eine Bildwiderholrate von 25 Bildern pro Sekunde wie sie etwa der europäischen Fernsehnorm entspricht, so zeigt eine einfache Rechnung, dass sich der Ball innerhalb zweier aufeinander folgender Bilder bei einer Ball-Geschwindigkeit von 5 m/s um 20 cm weiterbewegt hat. Dies reicht aus um ihn zwischen der Aufnahme der Bilder gänzlich „aus den Augen“ zu verlieren. Gewünscht ist also eine Bildwiederholrate von mindestens 50 Bildern pro Sekunde (engl. „frames per second“), auch im Hinblick darauf einen Geschwindigkeitsvektor der Objektbewegung berechnen zu können, für die das Objekt für mindestens 2 im Zuge einer erhöhten Genauigkeit für 3 oder mehr Bilder im Blickfeld des Sensors sein muss. Nicht berücksichtigt ist dabei die Eigenbewegung des Roboters, sodass sich oben angenommene Ballgeschwindigkeit im schlimmsten Fall zur Geschwindigkeit des Roboters addiert.
Die hohe Dynamik birgt noch einen Nachteil der die Objekterkennung erschwert. In zwei aufeinander folgenden Bildern kann sich die Position des gesuchten Objekts im Bild vollständig ändern, sodass ein vermeintlicher Vorteil bei der Bilderkennung, nämlich dass ein einmal gefundenes Objekt sich im darauf folgenden Bild in der Umgebung der letzten bekannten Position befinden muss, hinfällig. Ein etwaiger daraus resultierender Geschwindigkeitsvorteil ist in vielen Spielsituationen nicht mehr vorhanden. Ob es trotzdem Vorteile bringt die Suche des Objekts bei einem Folgebild, auf die umliegenden Regionen der letzten detektierten Position zu konzentrieren, gilt es zu ermitteln. Trägheit des Roboters:
Die hohe Dynamik des Spiels bringt einen weiteren Nachteil mit sich. Die Kamera kann immer nur die Szene, die sie gerade im Blickfeld hat, beobachten. Somit sind Vorgänge die hinter dem Roboter passieren nicht erfassbar, bzw. braucht der Roboter bei einer schnellen Ballbewegung die den Ball auf die von der Kamera abgewandte Seite spielt, eine Zeit bis er
9
sich umgedreht hat. Wünschenswert wären somit zwei Kameras eine in jede Fahrtrichtung des Roboters, sodass vielleicht in einem Suchmodus der Bereich vor und hinter dem Roboter abgedeckt werden kann, bzw. sollte der Ball in den „Rücken“ des Roboters gespielt werden, sich dieser nicht umdrehen muss, sondern durch ein einfaches und wesentlich weniger zeitaufwendiges Umschalten der Kamera, der Ball weiter verfolgt werden kann. Entfernungen:
Die Abmessungen des Spielfeldes ändern sich je nach Anzahl der Roboter pro Mannschaft. Der Golfball ist das kleinste Objekt im Spiel, dieses sollte auf einer Entfernung von einem Meter noch erkennbar sein. Welche Auflösung für dieses Kriterium notwendig sein wird, gilt es zu bestimmen. Lichtverhältnisse:
Die Regeln der FIRA schreiben die Stärke der Beleuchtung über dem Spielfeld nicht exakt vor. Vorgeschrieben ist eine Beleuchtungsstärke von mindestens 500 Lux. Empfohlen wird eine flimmerfreie Lichtquelle [FIRR06]. Trotzdem kann es aus eigener Erfahrung, von Spielfeld zu Spielfeld zu erheblichen Schwankungen in der Beleuchtungsstärke kommen. Die Bilderkennung soll zu Demonstrationszwecken aber auch unter Lichtverhältnissen wie sie etwa in Büros herrschen, funktionieren. Dies erfordert eine gewisse Robustheit gegenüber Helligkeitsschwankungen. Dadurch, dass die Beleuchtung nicht genau spezifiziert ist, und zwar nicht nur in Art und Stärke sondern vor allem auch in der Position, entfallen von vornehinein alle Verfahren zur Objektidentifikation die mit Reflexionen arbeiten. Verdeckung:
Da der Blickwinkel der Kamera im Gegensatz zum System mit globaler Kamera parallel zum Spielfeld liegt, kann es bei den Objekten zu Verdeckungen kommen. Ein gewisser Grad an Verdeckung sollte zulässig sein. Zu bedenken gilt es an dieser Stelle auch, dass das gesucht Objekt sich erst in das Blickfeld bewegen bzw. sich daraus entfernen kann, wodurch es möglich ist, dass sich in manchen Bildern das gesuchte Objekt noch nicht vollständig im Blickfeld des Roboters liegt, was einer partiellen Verdeckung gleichkommt. Inwieweit es möglich ist, dies zu berücksichtigen, gilt es zu Untersuchen. Auch inwieweit die Genauigkeit der Erkennung mit dem Grad der Verdeckung verknüpft ist und ob sich diesbezüglich Aussagen treffen lassen, soll ermittelt werden. Variable Objektgröße:
Ein wichtiger Faktor der bei einer Bilderkennung für bewegliche Roboter im Allgemeinen zu berücksichtigen ist, ist die unterschiedliche Größe der Objekte im Bild je nach Entfernung des Roboters zum Objekt von Interesse. Die ist insofern wichtig da dadurch keine statischen Modelle für die Objekterkennung verwendet werden können, da die Größe des Objekts im Bild nicht im vorhinein feststeht wie sich zeigen wird, scheiden manche Verfahren zur Objektidentifikation bereits aus.
10
Genauigkeit:
Bei einer Roboterbreite von 7.5 cm und einem Balldurchmesser von 43 mm bedeutet dies, dass die Fläche des Roboters mit der der Ball gespielt wird, nicht einmal doppelt so breit ist wie der Ball selbst. Um dem Ball bei einem Schuss auch noch eine Richtung geben zu können, muss er also mit einer sehr hohen Genauigkeit getroffen werden. Sehr hoch bedeutet in diesem Fall die Abweichung sollte nicht mehr als 10 bis 20 mm betragen um sicher zu stellen, dass dem Ball gezielt eine Richtung gegeben werden kann. Dies gilt für den Nahbereich, wenn es zur Kollision mit dem Ball kommt. Ist der Ball weiter vom Roboter entfernt, reicht auch eine ungenaure Ballposition für die Entscheidungsfindung der Strategie, da im Zuge der Bewegung des Roboters die Positionen der einzelnen Objekte laufend aktualisiert werden.
Die Anforderungen lassen sich somit wie folgt zusammenfassen:
Kapitel 2 Begriffsbildung
In der Fachliteratur gibt es im Rahmen der Bildverarbeitung eine Reihe von Begriffen, die oft auch fälschlich verwendet werden. Da uns die Bildverarbeitung auch im täglichen Leben immer wieder begegnet und sich viele Begriffe im täglichen Sprachgebrauch wieder finden möchte ich dem Leser vermitteln woher die Begriffe rund um die Bildverarbeitung stammen, und wie sie in dieser Arbeit verstanden und verwendet werden.
Zuallererst aber ein Hinweis über die Schreibweise von Zahlen in dieser Arbeit. Wenn nicht anders angegeben werden Zahlen immer in Dezimalschreibweise verstanden. Da in der Computertechnik jedoch das hexadezimale Zahlensystem sehr häufig verwendet wird, werden auch in dieser Arbeit Zahlen in diesem Zahlensystem gebraucht. Um Verwechslungen vorzubeugen, werden Hexadezimalzahlen immer mit einem vorangestellten „0x“ gekennzeichnet. Entlehnt wird diese Schreibweise aus der sehr weit verbreiteten Programmiersprache „C/C++“.
Da letztendlich immer der Mensch derjenige ist, der ein bearbeitetes Bild oder die Ergebnisse einer Bildverarbeitung interpretiert, sind viele Modelle wie etwa jene der Farbräume dem menschlichen Sehen entnommen oder zumindest an dasselbige angelehnt. Die Bild- oder Objekterkennung versucht letztendlich das menschliche Auge oder allgemeiner das menschliche Sehen als ganzes zu modellieren oder imitieren, wenn das derzeit auch nur bis zu einem gewissen Grad gelingen kann, da hinter dem menschlichen Sehen die Leistungsfähigkeit des menschlichen Gerhirnes sitzt, mit all seinem Wissen, seiner Lernfähigkeit und der Möglichkeit zur Abstraktion. Dinge, die nach heutigem Stand der Forschung auf dem Gebiet der künstlichen Intelligenz nur in sehr stark vereinfachten Modellen verstanden und umgesetzt werden können. Letztendlich ist die Modellierung des menschlichen Sehvermögens in seiner Gesamtheit das Fernziel der Entwicklungen auf dem Gebiet der künstlichen Intelligenz und der Bilderkennung. Beide Gebiete können nicht voneinander getrennt betrachtet werden.
Ich möchte darauf hinweisen, dass viele Begriffe oder Abkürzungen der Bildverarbeitung im allgemeinen Sprachgebrauch aber auch in der deutschen Fachliteratur auf englisch verwendet werden, weshalb ich in dieser Arbeit auch die englischen Begriffe aufführen werde und wo es
12
mir sinnvoll erscheint auch jene anstelle der deutschen im weiteren Verlauf der Arbeit verwenden werde.
2.1 Das menschliche Sehen
Das menschliche Sehen ist in seiner Gesamtheit sehr komplex und noch nicht gänzlich verstanden, da es eng verbunden ist mit der menschlichen „Intelligenz“. Die Interpretation der vom Auge stammenden Bildinformationen hängt sehr mit unseren Erfahrungen unserer Lernfähigkeit zusammen, umfasst also alle Bereiche des menschlichen Denkens. Es soll hier auch nur auf das Auge selbst eingegangen werden und anhand von dessen Aufbau die Aufnahme der Farb- und Helligkeitsinformationen erläutert werden, dessen Verständnis für mehr Anschaulichkeit bei vielen Begriffen der Bildverarbeitung beitragen kann.
2.1.1 Der Aufbau des Auges
Die Bildaufnahme und die Bildverarbeitung sind beim menschlichen Auge untrennbar verbunden, da bereits im Auge eine Vorverarbeitung stattfindet [STN93]. Das menschliche Auge hat einen Durchmesser von ca. 24 mm und liegt in einem Fettpolster eingebettet in der Augenhöhle geschützt durch die es umgebenden Schädelknochen.
Abbildung 2.1 zeigt einen Querschnitt des menschlichen Auges und beschreibt die einzelnen Teile. Die Hülle des Augapfels besteht aus 3 Schichten. Die äußerste ist die Lederhaut die vorne in die durchsichtige Hornhaut (lateinische Bezeichnung Cornea) übergeht. Hinter der Hornhaut liegt die Pupille, eine Lichtdurchlässige Öffnung, die durch eine Veränderung ihres
13
Durchmessers, eine Regulierung der Lichteintrittsmenge erlaubt und somit die Blende des menschlichen Auges darstellt. Direkt an die Pupille grenzt die Linse. Der rund ums sie anliegende Ziliarmuskel erlaubt eine Änderung der Linsenform, sodass damit die Lichtbrechung und letztendlich die Fokussierung verändert werden kann. Innen an die Lederhaut legt sich die Aderhaut, die für eine gute Durchblutung des Auges sorgt. Die innerste Schicht des Auges bildet die Netzhaut (lateinische Bezeichnung Retina), die hinten in den Sehnerv übergeht, der die Reize der Netzhaut an das Gehirn weiterleitet. Licht fällt durch Hornhaut und Pupille und erzeugt im hinteren Teil der Netzhaut ein auf dem Kopf stehendes reelles Bild [BVN96, STN93]. Die Netzhaut:
Spezielle Zellen an der Netzhaut wandeln das eintreffende sichtbare Licht in elektrische Reize um, die über den Sehnerv ins Gehirn geleitet werden. Unterschiedliche Zellen reagieren dabei unterschiedlich stark auf Wellenlänge und Intensität des einfallenden Lichts. Man unterscheidet grundsätzlich zwei unterschiedliche Zellentypen an der Netzhaut: die Stäbchen und die Zäpfchen. Sie liegen in der äußersten Schicht der Netzhaut, darunter liegen die Ganglienzellen angedockt an den Nervenfasern die letztendlich in den Sehnerv münden [BVN96, STN93]. Abbildung 2.2 zeigt einen Querschnitt durch die Netzhaut mit der Lage der Stäbchen und Zäpfchen.
Die Zäpfchen:
Sie sind die Farbsensoren des Menschen. Sie reagieren also vorwiegend auf Unterschiede in der Wellenlänge des Lichts. Der Mensch besitzt drei verschiedene Arten von Zäpfchen, die sich in ihrer spektralen Empfindlichkeit unterscheiden, das heißt, jede Zapfenart hat ihre maximale Empfindlichkeit in einem anderen Wellenlängebereich. Somit unterteilt man die drei Arten nach dem Maximum der Empfindlichkeit in blaue, rote und grüne Zäpfchen. In der Abbildung 2.3 ist die spektrale Empfindlichkeit bzw. der Absorptionsgrad der drei Arten dargestellt. Die Ordinate stellt die normierte Empfindlichkeit in % dar. Die Kurven der drei
14
Zäpfchen bz für die blauen, rz für die rotempfindlichen und gz für die grünen, sind in dieser Grafik gleich stark gewichtet, was nicht ganz der Realität entspricht. Die blauen Zäpfchen weisen in Wahrheit eine etwas höhere Maximalempfindlichkeit auf [RDG93]. Für das Verständnis ist dies aber von geringerer Bedeutung. Die Zahlen am Scheitelpunkt der Kurven geben jeweils die Wellenlänge an, bei der der entsprechende Zäpfchentypus seine maximale Empfindlichkeit respektive den maximalen Absorptionsgrad hat. Deutlich erkennbar die starke Überlappung der rot- und grünempfindlichen Zäpfchen. Zum Gesamteindruck trägt aber nicht nur die Empfindlichkeit der drei Rezeptoren bei, sondern natürlich auch deren Verteilung auf der Netzhaut. So ist der Anteil der grünempfindlichen Zellen höher als der der blauen oder roten. Zusätzlich ist auch deren Verteilung auf der Netzhaut nicht konstant. Die größte Konzentration findet man im so genannten „Gelben Fleck“ [BVN96]. Die Summe dieser Faktoren bestimmt schlussendlich unser Farbsehen. In der Abbildung 2.4 ist die aufsummierte Gesamtempfindlichkeit für das Tag- und Nachtsehen in Abhängigkeit der Wellenlänge dargestellt. Tagsehen bedeutet in diesem Fall, die Beleuchtungsstärke reicht aus um die Zäpfchen anzuregen. Liegt sie unter einem bestimmten Schwellwert so spricht man von Nachtsehen, da nur mehr die Reize der Stäbchen (siehe unten) im Gehirn verarbeitet werden [RDG93]. In der Literatur wird die Hellempfindlichkeitskurve für Tagsehen auch als fotoptische spektrale Empfindlichkeit bezeichnet, jene für Nachtsehen als skotopische spektrale Empfindlichkeit [RDG93].
Abbildung 2.3: Spektrale Verteilung der Absorption der einzelnen Zäpfchentypen
Die maximale Empfindlichkeit für Tagsehen liegt bei etwa 555 nm. Das menschliche Auge besitzt somit für die Farbe „gelbgrün“ die größte Empfindlichkeit. Dieser wichtige Umstand findet in der Bildverarbeitung allgemein und auch im weiteren Verlauf dieser Arbeit Berücksichtigung.
15
Die Farbe „gelbgrün“ war in der frühen Periode der Menschheit die dominante Farbe bei der Suche nach pflanzlicher Nahrung. Eine Tatsache, die die Empfindlichkeit genau für diese Farbe evolutionstechnisch erklären könnte [RDG93].
Abbildung 2.4: Normierte spektrale Empfindlichkeit für das Tag- und Nachtsehen
Die Stäbchen:
Liegt die Beleuchtungsstärke unter einem bestimmten Schwellwert, so reagieren die Zäpfchen nicht mehr in ausreichendem Maße auf eintreffendes Licht. An ihrer Stelle treten dann die Stäbchen die einerseits in größerer Zahl auftreten, ca. 75 bis 150 Millionen im Gegensatz zu den 6 bis 7 Millionen Zäpfchen [STN93], andererseits sind auch immer mehrere Stäbchen mit einem Nerv verbunden, im Durchschnitt an die 130 [STN93]. Diesen zwei Faktoren verdanken wir es, dass die Empfindlichkeit der Stäbchen um einige Größenordnungen höher als jene der Zäpfchen liegt, wodurch sehen auch unterhalb des Schwellwertes bei dem Zäpfchen noch angeregt werden, möglich ist. Da es von den Stäbchen aber nur einen Typus gibt ist in der Dunkelheit eine Farbunterscheidung nicht mehr möglich. Die unterschiedliche Anzahl und Verteilung bedingt aber auch, dass das menschliche Auge eine wesentlich bessere räumliche Auflösung für Helligkeits- als für Änderungen im Farbton hat. Ein weiterer Umstand der in der Bildverarbeitung Verwendung findet.
2.2 Farbton, Helligkeit und Sättigung
Die von den drei im Abschnitt 2.1.1 beschriebenen Farbdetektoren des menschlichen Auges ausgesendeten Signale werden unabhängig voneinander in das Gehirn gesendet und dort zu einem Gesamteindruck kombiniert und ergeben somit unser Farbempfinden [HBL89].
16
Der Mensch charakterisiert eine Farbe im Allgemeinen nach den drei Größen Farbton, Helligkeit und Sättigung. Diese Begriffe finden sich auch in der Bildverarbeitung wieder. Im Folgenden sollen die Begriffe nun erläutert werden. Sie werden im Zuge dieser Arbeit auch noch unter mathematischen Gesichtspunkten betrachtet werden. Da diese Begriffe immer wieder auch in der deutschen Fachliteratur in ihrer englischen Fassung verwendet werden, wird diese ebenfalls angeführt. Farbton (engl. hue):
Der Farbton definiert die Art der Farbe als solches ohne Berücksichtigung der Helligkeit oder der Sättigung, z.B. Rotton oder Gelbton. Werden als Beispiel nur die grünen und roten Farbrezeptoren stimuliert, empfinden wird den Farbton als Gelb. Werden grüne und blaue Zäpfchen stimuliert sehen wir Cyan. Bei einem gleichmäßigen Reiz aller drei Typen empfindet man den Farbton weiß und je nach Intensität der Strahlung unterscheiden wir die unterschiedlichen Grautöne [RDG93].
Im allgemeinen Sprachgebrauch wird mit dem Begriff Farbe, meistens der Farbton gemeint. Helligkeit (engl. brightness):
Bleibt das Verhältnis der Erregung der drei unterschiedlichen Zäpfchen konstant, aber die Stärke des auf die Netzhaut treffenden Lichts ändert sich, empfinden wir den durch das spektrale Verhältnis bestimmten Farbton als heller oder dunkler je nachdem ob die Lichtstärke zu- oder abnimmt. Bei den unbunten Farben, wie die Graustufen auch oft genannt werden, verschiebt sich die Empfindung von schwarz über unterschiedlich helles grau bis hin zu weiß [RDG93]. Sättigung (engl. saturation):
Die Sättigung einer Farbe beschreibt salopp ausgedrückt den Weißanteil der Farbe. Reine Spektralfarben, das heißt, Licht das aus nur einer Wellenlänge besteht auch monochromatisches Licht genannt, ist vollständig gesättigt. Es besitzt keinen Weißanteil. Weiß ist ungesättigt [RDG93]. Anders formuliert ist die Sättigung ein Maß für die spektrale Reinheit einer Farbe. Je breiter der Wellenlängebereich der zur farbempfindung beiträgt, desto geringer die Reinheit. Umgekehrt bedeutet ein schmaler Wellenlängebereich eine größere Reinheit und damit Sättigung [KSC96].
Die Sättigung wird in Prozent bzw. normiert mit einem Maximalwert von 1 angegeben. Liegt der Sättigungsgrad zwischen 10 und 20% so spricht man von schwacher Sättigung. Liegt sie zwischen 40 und 60% bezeichnet man sie als stumpf und eine als kräftig bezeichnete Farbe hat einen Sättigungsgrad von 80 bis 100% [RDG93]. Diese Angaben sind in Tabelle 1.1 noch einmal zusammengefasst.
17
Im weiteren Verlauf wird auch ein mathematischer Zugang zu den Begriffen im Sinne der Bildverarbeitung erarbeitet.
2.3 Farbräume und ihre Entstehung
Aus der Betrachtung der Funktionsweise des menschlichen Auges erkennt man, dass der Farbeindruck eine Kombination aus dem Grad der Anregung der drei unterschiedlichen Farbrezeptoren ist. Das heißt, fällt Licht auf die drei Zäpfchentypen wird von jedem ein seinem Spektralbereich entsprechender Reiz ins Gehirn übertragen, welches diese drei getrennten Reize zu einem Farbton kombiniert oder „mischt“.
2.3.1 Drei-Komponenten-Theorie
Diese Erkenntnis legt die Vorgehensweise nahe, den Farbraum als eine Kombination dreier linear unabhängiger Basisvektoren zu interpretieren, wie es im Folgenden dargestellt ist. Als Strahlungsquelle dient ein monochromatischer Sender, der mit einer bestimmten
r
Wellenlänge λ sendet. Seine spektrale Farbvalenz kann dann wie folgt als ein Vektor ) (λ F
im Farbraum dargestellt werden: r r r r
λ λ λ λ = + + F( ) A( )A B( )B C( )C (2.1) r , B r und C v können dabei jeweils eine bestimmte Wellenlänge im
Die drei Basisvektoren A
Farbraum repräsentieren oder selbst wieder eine Vektorsumme darstellen. Im Allgemeinen wird ersteres verwendet. Die Komponenten A, B und C heißen spektrale Farbwerte und hängen von λ ab. Die Farbvalenz stellt sich somit als gewichtete Summe dreier linear unabhängiger Basisvektoren dar [RDG93].
2.3.2 Der RGB-Farbraum
Wie im vorigen Abschnitt beschrieben, ist die Wahl der Basisvektoren für den Farbraum nicht eindeutig. Nahe liegend wäre eine Verwendung der mittleren Wellenlängen der
18
Spektralbereiche Blau, Grün und Rot. Sie liegen für Rot bei 700 nm, 546 nm für Grün und für Blau bei 436 nm. Tut man dies, so spricht man vom RGB-Farbraum [RDG93]. Die
r für Grün bei λ = r , B r und C r für Rot bei λ = 700 nm, G v nennen wir dann R
RGB-Raum und die Farbvalenz für diesen Raum berechnet sich wie folgt: r r r r .
λ λ λ λ = + + F( ) R( )R G( )G B( )B (2.2)
Für die spektralen Farbwerte gilt dabei: L R L R L R λ λ λ = = = ) ( ) ( ) ( r R ) ( ) ( ) ( g G ) ( ) ( ) ( b B , , .
R ) (λ L , die spektrale Strahlungsdichte beschreibt im Wesentlichen die abgestrahlte Leistung eines monochromatischen Senders bei der Wellenlänge λ pro Flächeneinheit. Sie wird mit der spektralen Empfindlichkeit der Quelle gewichtet. Abbildung 2.5 zeigt die drei spektralen Empfindlichkeiten ) (λ r , ) (λ g und ) (λ b der Quelle, wie sie für einen Standardbeobachter von
der CIE (Commision Internationale de l’Eclairage) 1931 bzw. nach DIN5033 und noch einmal 1964, nach empirischer Ermittlung definiert worden sind.
Spektrale Empfindlichkeit
Deutlich erkennbar ist, dass ) (λ r negative Werte annehmen kann, diese Farbwerte zwischen ca. 450 und 550 nm wären somit physikalisch nicht realisierbar. Durch lineare Transformation gelangt man aber zu drei neue Basisvektoren die keine negativen Werte mehr aufweisen, dieser neue Farbraum wird in der Literatur verallgemeinert als XYZ-Farbraum bezeichnet [RDG93].
Mit Hilfe dieses Farbmodells lassen sich nun alle in der Natur vorkommenden Farben darstellen. Dies stellt nur einen kleinen Auszug aus der Theorie der Farbenlehre dar und sollte nur als Hintergrundinformation dienen um zu einem besseren Verständnis zu kommen woher sich, die in heutigen Bildverarbeitungssystemen gebräuchlichen Farbdarstellungen, ableiten. Weiterführende Informationen finden sich in [FBS86].
2.3.3 Von der analogen in die digitale Welt
Die kontinuierlichen analogen Signale des Spektrums des sichtbaren Lichts müssen zur Bildverarbeitung in diskreter Form in der digitalen Welt repräsentiert werden. Dabei wird die von einem Aufnahmegerät aufgenommene Szene in einem Raster digitaler Bildpunkte umgesetzt, wobei jedem Bildpunkt eine Leuchtdichte zugeordnet wird. In der digitalen Bildverarbeitung bezeichnet man diesen Wert jedoch nicht als Leuchtdichte, da er nicht der physikalischen Interpretation des Begriffs, wie im obigen Abschnitt verwendet, entspricht, sondern als Grauwert (siehe folgende Abschnitte). Die digitale Repräsentation der aufgenommenen Szene nennen wir Grauwertbild oder Graubild. Der Grund für diese Bezeichnung wird aus den Erläuterungen der folgenden Abschnitte ersichtlich. Das Grauwertbild stellt somit eine Funktion f(x,y) von Grauwerten dar. Bei farbigen Bildern wird jeder Bildpunkt als ein n-Tupel von Funktionen repräsentiert (f 1 (x,y), f 2 (x,y),…,f n (x,y)). Die Anzahl und Art der Funktionen sind dabei Abhängig vom verwendeten Farbmodell, welche in den folgenden Abschnitten beschrieben werden.
20
Der digitale RGB-Farbraum
In der praktischen Anwendung in digitalen Bildverarbeitungssystemen ist der verallgemeinerte XYZ-Farbraum ohne Einschränkung nicht unmittelbar verwendbar. In der digitalen Welt muss auf Quantisierung und darstellbarem Wertebereich geachtet werden. In der Praxis wird für die drei Basisvektoren R, G, und B jeweils ein Wertebereich von 0 bis 255 festgelegt. Dieser Bereich ist mittels 8 Bit Datenbreite darstellbar. Die Farbe eines jeden Bildpunktes ) , ( y x C in einem dreikanaligen Farbbild C ist somit eine Funktion der drei Variablen Rot, Grün und Blau auch Primärfarben oder Primärvalenzen genannt [KSC96], die jeweils Werte zwischen 0 und 255 einnehmen. Die Variablen x und y beschreiben hierbei die Position des Punktes im Bild. = ) , ( ) , ( B G R y x C .
Es lassen sich durch oben genannte Einschränkungen nicht mehr alle in der Natur vorkommenden Farben darstellen. Bei drei Byte pro Bildpunkt sind aber immerhin noch 16 772 216 Farben unterscheidbar.
Stellt man den Farbraum als dreidimensionales Diagramm dar, wobei jede der Primärfarben eine Achse einnimmt, so gelangt man zum RGB-Farbwürfel wie er in Abbildung 2.7 = dargestellt ist. Schwarz liegt dabei im Koordinatenursprung ) 0 , 0 , 0 ( ) , ( y x C , und Weiß an = der Hauptdiagonale am Würfelrand ) 255 , 255 , 255 ( ) , ( y x C . Die Hauptdiagonale wird auch
Unbuntgerade genannt, da ihr entlang die oft auch als unbunte Farben bezeichneten Grauwerte liegen [RDG93].
Die Farbdarstellung soll hier nur als Vorstellungshilfe dienen und nicht als
reale Darstellung der Farben, da die Farbwiedergabe von Medium zu
Medium unterschiedlich sein kann.
Die Farbechtheit ist in dieser digitalen Form des RGB-Farbraums nicht mehr gegeben, da die Primärfarben von jedem Darstellungsgerät etwas anders wiedergegeben werden.
21
Im Folgenden werden andere Farbräume und die Umrechnung aus dem RGB-Raum erläutert. Dabei wird aber nur mehr auf die in der digitalen Bildverarbeitung verwendeten eingegangen, ohne ausführlich auf das theoretische Farbmodell aus Abschnitt 2.3.2 zurückzugreifen.
2.3.4 Der FHS-Farbraum
FHS steht in diesem Fall für die Begriffe Farbton, Helligkeit und Sättigung. Sie dienen als Basis dieses Farbraumes, der näher am menschlichen Farbempfinden angelehnt ist. Im theoretischen Farbmodell werden diese neuen Basisvektoren durch Linearkombinationen aus den verallgemeinerten XYZ Vektoren gebildet (siehe Abschnitt 2.3.1) [RDG93]. Im Folgenden soll nun im Einzelnen erläutert werden, wie man von den im vorigen Abschnitt beschriebenen RGB Werten zu den Werten für Farbton, Helligkeit und Sättigung gelangt. Farbton:
Der Farbton, englische Bezeichnung hue, charakterisiert die in einem Bildpunkt eines Farbbildes dominant enthaltene Farbe. Er wird in Grad angegeben und besitzt somit einen Wertebereich von 0° bis 360°, wobei beide Werte denselben Farbton beschreiben und dieser Punkt als Rot festgelegt wird. Formal ist H gegeben durch F=δ für alle B≤G und F=360°- δ für alle B>G, wobei gilt:
δ = Für Rottöne gekennzeichnet durch B=G=0 und R≠0 gilt beispielsweise ) 1 arccos( , das
heißt, F=δ=0° [KSC96]. Aus der Gleichung ist ersichtlich, dass es einen undefinierten Wert für R=G=B gibt. Diese RGB-Konstellation definiert einen Grauwert, womit der Farbton obsolet ist. Er wird daher in den meisten Fällen gleich null gesetzt.
22
Helligkeit:
Die hier beschriebene Helligkeit ist nicht gleich zu setzten mit der im Abschnitt 2.3.1 beschriebenen, da der Begriff im Zusammenhang mit dem FHS-Farbraum keine Aussage über die Leuchtstärke der Quelle erlaubt. Es handelt sich hier eigentlich um den der Farbe entsprechenden Grauton, sprich der Projektion der Farbe auf die Unbuntgerade des RGB-Farbwürfels (siehe Abschnitt 2.3.2). In der Literatur hat sich aber der Begriff Helligkeit durchgesetzt, weshalb er auch in dieser Arbeit für diesen Farbraum verwendet wird. Oft ist auch der Begriff Intensität im Gebrauch, der aber ebenfalls mit der physikalischen Intensität der Strahlung eines Senders verwechselt werden kann und deshalb im Sinne einer konsistenten Terminologie hier genauso wenig verwendet werden sollte. Ebenso verhält es sich auch für die englischen Begriffe für Helligkeit (Brightness) und Intensität (Intensity) [RDG93].
Formal ist der Parameter der Helligkeit gegeben durch
und entspricht dem arithmetischen Mittel der drei Farbkanäle R, G und B. Der Wertebereich für die Helligkeit ist derselbe wie jener im RGB-Farbraum. Sättigung:
Die Interpretation des Begriffs Sättigung ist analog zu der im Abschnitt 2.2 beschriebenen. Der Wert der Sättigung ist abhängig von der Anzahl der Wellenlängen die zum Gesamteindruck der Farbe beitragen. Er lässt sich berechnen aus
Für R=G=B≠0, dies entspricht einem Grauwert ist die Sättigung gleich 0. Ist entweder R, G oder B null, die Summe jedoch ungleich null, so ist S stets maximal. Der Wertebereich für die Sättigung entspricht dem des RGB-Farbraums [KSC96].
Der FHS-Farbraum lässt sich in einer Doppelkegelform darstellen. Abbildung 2.9 zeigt eine solche Darstellung.
23
Arbeit zitieren:
Roland Oberhammer, 2007, Echtzeit Objekterkennung auf low power embedded systems, München, GRIN Verlag GmbH
Dieser Text kann über folgende URL aufgerufen und zitiert werden:
Einbetten
DOI
Formatvorlage (Microsoft Word) für eine Diplomarbeit, Masterarbeit, Ha...
Für MS Word 2003 - Update 2010
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 25 Seiten
Formatvorlage (OpenOffice) für eine Diplomarbeit, Masterarbeit, Hausar...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 35 Seiten
Formatvorlage / Vorlage zur Erstellung einer Diplomarbeit, Bachelorarb...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 15 Seiten
Formatvorlage / Vorlage für eine Diplomarbeit / Hausarbeit
Für MS Word 2007 - dotx
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 25 Seiten
Anleitung zum Erstellen schriftlicher Arbeiten: Der Aufbau einer wisse...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 20 Seiten
Erstellen einer schriftlichen Hausarbeit
Vorlagen, Muster, Formulare, Infobroschüren
Hausarbeit, 14 Seiten
Grundtechniken wissenschaftlichen Arbeitens
Bibliografieren - Reden - Schr...
Vorlagen, Muster, Formulare, Infobroschüren
Skript, 46 Seiten
Ratgeber zur Erstellung wissenschaftlicher Arbeiten. Diplomarbeiten - ...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 39 Seiten
Roland Oberhammer's Text Echtzeit Objekterkennung auf low power embedded systems ist nun auf dem Buchmarkt erhältlich
Roland Oberhammer hat den Text Echtzeit Objekterkennung auf low power embedded systems veröffentlicht
Roland Oberhammer hat einen neuen Text hochgeladen
0 Kommentare