DIGITALE BILDER (DIGITAL IMAGES)

DIGITALE BILDER (DIGITAL IMAGES) STUDIENBRIEF BM − DIGITALE BILDER MARTIN WERNER FULDA 2016 │2 Inhalt 1 Digitale Bilder ............................
Author: Achim Lorentz
3 downloads 2 Views 596KB Size
DIGITALE BILDER (DIGITAL IMAGES)

STUDIENBRIEF BM − DIGITALE BILDER MARTIN WERNER FULDA 2016

│2

Inhalt 1

Digitale Bilder .......................................................................................................... 3

1.1

Abbildung durch Auge und Kamera ......................................................................... 4

1.1.1 1.1.2 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6

Sammellinse......................................................................................................... 4 Schärfentiefe ........................................................................................................ 6 Digitale Bildmatrix ................................................................................................... 9 Rasterbild ........................................................................................................... 10 Schwarz-Weiß-Bilder ........................................................................................ 11 Grauwertbilder ................................................................................................... 11 Farbbilder........................................................................................................... 12 Bildgröße ändern und Bildbereich ausschneiden............................................... 14 Abstände zwischen Bildobjekten ....................................................................... 16

1.3

Aufgaben................................................................................................................. 17

1.4

Zusammenfassung .................................................................................................. 19

1.5

Lösungen zu den Aufgaben .................................................................................... 19

1.6

Programmbeispiele ................................................................................................. 20

Literatur und Quellen ........................................................................................................ 23 Sachverzeichnis ................................................................................................................. 24

Dieser Studienbrief ist der erste der Serie von Studienbriefen zur Bildverarbeitung und Mustererkennung.

BM Digitale Bilder  Martin Werner, 2016

│3

1

Digitale Bilder

Zusammenfassung. Wie das menschliche Auge basiert die Bilddarstellung durch eine Kamera auf der Abbildung mit einer dünnen Sammellinse. Die aufgenommenen Rasterbilder werden im Rechner als Bildmatrizen interpretiert. Bei einem Grauwertbild wird für jedes Bildelement ein Grauwert in die Bildmatrix aufgenommen. Die Bildverarbeitung geschieht durch gezielte Manipulation der Grauwerte. Bei Farbbildern werden äquivalent die Farbkomponenten verarbeitet. Schlüsselwörter. Abbildungsgleichung (thin lens formula), Abbildungsmaßstab (reproduction scale), Blende (diaphragm), Blendenöffnung (aperture), Blendenzahl (f-number), Bildelement (picture element, pel), Bildformat/-typ (image format/type), Bildgröße (image size), Binärbild (binary image), Brennweite (focal length), Digitalkamera (digital camera), Grauwertbild (grayscale image), hyperfokaler Abstand (hyperfocal distance), Linsengleichung (thin lens formula), Pixel (pixel), Rasterbild (raster graphics/image, bitmap), RGB-Bild (RGB image), Sammellinse (biconvex lens), Schärfentiefe (depth of field, DOF), Schwarz-Weiß-Bild (black-and-white image)

Spätestens mit der Verbreitung preiswerter Mobiltelefone mit integrierter Kamera sind digitale Bilder praktisch für jedermann zugänglich geworden. In gleichem Maße ist der Wunsch gestiegen, die Bilder zu bearbeiten, sei es um die Bildgröße anzupassen oder sogar Bildinhalte zu verändern. Hierfür sind kommerzielle und frei erhältliche Softwarepakete entstanden, wie beispielsweise das bekannte Programm GIMP (General Image Manipulation Program). Bildverarbeitung. Man unterscheidet zwischen Bildbearbeitung und Bildverarbeitung. Obwohl es viele Überschneidungen gibt sind die Aufgaben grundsätzlich verschieden. Steht bei der Bildbearbeitung das Ergebnis für bzw. die Wirkung auf den Betrachter im Vordergrund, z. B. bei der Gestaltung eines Fotoalbums oder einer Werbebroschüre, so ist die Bildverarbeitung primär an der enthaltenen Information und ihrer automatischen Verarbeitung interessiert. Dazu gehört beispielsweise das scheinbar simple Zählen von unterschiedlichen Werkstücken auf einem Förderband oder die Unterscheidung von Gewebearten in einer Computertomographie(CT)-Aufnahme. MATLAB 1. In Folgenden werden elementare Grundlagen zu den digitalen Bildern und ihrer Verarbeitung vorgestellt. Für praktische Übungen wird das verbreitete Programmsystem der Firma MathWorks MATLAB® mit der Image Processing Toolbox eingesetzt. Da die Bildverarbeitung stark werkzeugorientiert ist, ist es unvermeidlich, dass im Weiteren immer wieder direkt Bezug auf MATLAB genommen wird. Um Missverständnisse zu vermeiden, werden Begriffe und Definitionen möglichst kompatibel zu MATLAB eingeführt. Warum digitale Bildverarbeitung mit MATLAB?

1

MATLAB ist ein eingetragenes Warenzeichen der Firma The MathWorks, Inc., USA,

www.mathworks.com BM Digitale Bilder  Martin Werner, 2016

│4

Vier Gründe sprechen für den Einsatz von MATLAB: −

MATLAB ist ein weltweit benutztes Werkzeug für die digitale Signalverarbeitung und wird auf PCs und Arbeitsplatzrechnern eingesetzt;



Wegen der einfachen Bedienbarkeit sowie der guten grafischen Eigenschaften kann sofort mit der Signalverarbeitung begonnen werden;



Die Kombination von MATLAB und PC ermöglicht es auf einfache und kostengünstige Weise reale Audio- und Bildsignale zu verwenden;



MATLAB ist als preiswerte Studentenversion erhältlich und wird mit einer ausführlichen Online-Hilfefunktion sowie thematischen (Video-)Einführungskursen ausgeliefert.



Und nicht zuletzt, bietet die MATLAB-Bedienoberfläche nützliche Hilfen an.

Es liegt in der Natur der Sache, dass ein mächtiges Werkzeug wie MATLAB® weder auf wenigen Seiten beschrieben, noch in den wichtigsten Funktionen schnell beherrscht werden kann. Dieses Kapitel soll Sie deshalb auch bei den ersten Schritten in MATLAB® unterstützen. Mit zunehmender Übung, werden sich Ihnen die Möglichkeiten von MATLAB® mehr und mehr erschließen. Die kommentierten Programmbeispiele zu den Übungen und die ausführliche Online-Dokumentation von MATLAB® helfen Ihnen dabei. Im Weiteren beziehen sich die praktischen Übungen und Aufgaben, soweit sie am Computer durchzuführen sind, auf das Programmsystem MATLAB®, Version R2014b. Der besseren Lesbarkeit halber wird im Text auf entsprechende Hinweise verzichtet.

1.1

Abbildung durch Auge und Kamera

Für uns Menschen entstehen Bilder als Abbildung der physikalischen Realität über die Augen im Gehirn. Sie sind stets der subjektiven Wahrnehmung unterworfen. Digitale Bilder entstehen durch Bildaufnehmer, wie beispielsweise der Kamera eines Smartphone. Auge und Kamera liegt ein physikalisches Prinzip zugrunde, das zunächst anhand des menschlichen Auges vorgestellt wird. 1.1.1

Sammellinse

Das vereinfachte Schnittbild des menschlichen Auges in Abbildung 1.1 veranschaulicht das Sehen bzw. die Bildaufnahme durch eine Kamera. Das von einem Gegenstand vor dem Auge aktiv ausgesandte bzw. passiv reflektierte Licht gelangt durch den optischen Apparat (Hornhaut/Kornea und Linse) auf die lichtempfindliche Netzhaut (Retina). Dabei findet eine Umkehrung von oben und unten statt. Physikalisch wird die Abbildung des Gegenstandes auf die Netzhaut durch das Modell der Abbildung mittels einer dünne Sammellinse in Abbildung 1.2 modelliert. Für viele praktische Anwendungen, z. B. der Längenmessung von Objekten, ist es wichtig, die Größen von Gegenständen und ihren Bildern zueinander ins Verhältnis zu setzen.

BM Digitale Bilder  Martin Werner, 2016

│5

Vordere Augenkammer

Retina

Hornhaut

Linse

Iris Hintere Augenkammer

Fovea

Papille Glaskörper

Sehnerv

Abbildung 1.1 Schnittbild durch das menschliche Auge

Brennweite

d

f

Gegenstand

d'

f

Linse

GegenstandsG größe

Brennpunkt optische Achse Brennpunkt

B Bildgröße reelles Bild

g

b

Gegenstandsweite

Bildweite

Abbildung 1.2 Abbildung durch eine dünne Sammellinse mit b < g Linsengleichung. Die Bildgröße B und die Gegenstandsgröße G in Abbildung 1.2 lassen sich über einfache Dreiecksbeziehungen mit der für die Linse charakteristischen Brennweite f und dem bildseitigen und dem objektseitigen Abstand d' bzw. d verknüpfen. Auf der Bildseite gilt G B = f d ′ und auf der Gegenstandsseite entsprechend G B = d f . Aus beiden Gleichungen folgt unmittelbar die newtonsche Abbildungsgleichung (Isaac Newton, 1642−1726). d′⋅ d = f2

Benutzt man statt dessen die Abstände zur Linse, die Gegenstandsweite g und die Bildweite b, so erhält man die gaußsche Abbildungsgleichung (Johann Carl Friedrich Gauß, 1777−1855), die bekanntere Linsengleichung 1 1 1 + = b g f

Die Äquivalenz mit der newtonschen Abbildungsgleichung zeigt man durch Umformung obiger Gleichung.

BM Digitale Bilder  Martin Werner, 2016

│6

Das Größenverhältnis von Bild B und Gegenstand G hängt von den jeweiligen Abständen b bzw. g ab und wird durch den (lateralen) Abbildungsmaßstab beschrieben. m=

B b f d′ = = = G g d f

Sind Brennweite und Abstände bekannt, so kann aus der Bildgröße die Gegenstandsgröße errechnet werden. 1.1.2

Schärfentiefe

Eine weitere wichtige Kenngröße der Bildaufnahme ist die Schärfentiefe, also der Entfernungsbereich für die Objekte bei der die systembedingte Unschärfe die Bildqualität nicht beeinträchtigt. Maßgeblich dafür ist die Größe der digitalen Sensorelemente. Sie beeinflusst die Bildqualität. Das heißt, kleinere Strukturen als die Sensorgröße können durch die Kamera nicht aufgelöst werden. Die Situation veranschaulicht Abbildung 1.3 Dort wird zunächst die Blendenöffnung, die Apertur der Kamera, eingeführt. Als Kenngröße weit verbreitet ist das Verhältnis von Brennweite zur Apertur, die Blendenzahl (für dünne Linsen). k=

f 2⋅r

Bei der in Abbildung 1.3 gezeigten Anordnung der Blende in der Linsenebene handelt es sich um ein Standardobjektiv. Für spezielle Aufgaben werden auch Blenden auf der Bildseite im Brennpunkt bzw. dahinter eingesetzt. Dann spricht man von telezentrischen bzw. hypergeometrischen Objektiven. Unschärfekreis. Es wird angenommen, dass die Kamera auf die Gegenstandsweite g und die Bildweite b scharf eingestellt ist. Befindet sich ein Objekt um ∆a außerhalb der der Gegenstandsweite oder um ∆i innerhalb, so kreuzen sich die zugehörigen Strahlen in den Punkten Px bzw. Py vor bzw. hinter der Bildebene mit den Abständen x bzw. y. Statt eines idealen Punktes resultiert in der Bildebene der Unschärfekreis, auch Streuungskreis genannt, mit dem Radius ε. Schärfentiefe. In der Praxis ist die umgekehrte Fragestellung interessant. Für einen vorgegebenen Radius ε soll der Bereich vor der Kamera bestimmt werden, für den die resultierenden Unschärfekreise den vorgegebenen Radius nicht übersteigen. Dies führt auf die Schärfentiefe. Sie soll im Folgenden berechnet werden. Aus der Linsengleichung erhält man zunächst zu den Schnittpunkten Px bzw. Py in Abbildung 1.3

1 1 1 = + f g + ∆a b − x

BM Digitale Bilder  Martin Werner, 2016

und

1 1 1 = + f g − ∆i b + y

│7 Linse mit Blende Objektseitige Schärfentiefe

∆a

Py

Px y

x

∆i Apertur

2⋅r Unschärfekreis

g

mit Radius ε

b

Bildebene

Gegenstandseben

Abbildung 1.3 Zur Berechnung der Schärfentiefe (Standardoptik)

Über die Abstände x und y lassen sich die Blendenöffnung und der Radius des Unschärfekreises in die Gleichungen einbringen. Aus einfachen geometrischen Überlegungen gelten für die Strecken r, ε, b − x und x bzw. b + y und y die Verhältnisse r b−x b+ y . = = ε x y

Auflösen nach x bzw. y liefert x =

ε ⋅b ε ⋅b . und y = ε +r ε −r

Nun werden obige Abstände x und y in die beiden Ansätze zur Schärfentiefe eingesetzt. Nach den interessierenden Abständen aufgelöst, erhält man die gesuchten objektseitigen Abstände für den Schärfebereich

= ∆a

2 ⋅ε ⋅ k ⋅ g ⋅( g − f ) und ∆ i = f 2 − 2 ⋅ε ⋅ k ⋅( g − f )

2 ⋅ε ⋅ k ⋅ g ⋅( g − f )

f 2 + 2 ⋅ε ⋅ k ⋅( g − f )

.

Die Schärfentiefe wird folglich durch die beiden Abständen begrenzt, sie ist gleich ∆a + ∆i. In obiger Formel ist erkennbar, dass die Schärfentiefe bei unveränderter Kameraeinstellung mit zunehmender Gegenstandsweite ebenfalls zunimmt. Hyperfokaler Abstand. Von besonderem Interesse ist dabei der Grenzfall unendlicher Schärfentiefe. Dazu betrachte man für konstante Blendenzahl und Brennweite die Nullstelle im Nenner von ∆a f 2 − 2 ⋅ ε ⋅ k ⋅ ( gH − f ) = 0.

(1.1)

Es ergibt sich der hyperfokale Abstand f  r   gH = f ⋅ 1 +  = f ⋅ 1 +  . 2 ⋅ε ⋅ k    ε

(1.2)

BM Digitale Bilder  Martin Werner, 2016

│8

Beispiel 1.1 Schärfentiefe Wir betrachten eine hochauflösende CCD-Kamera (Charge-coupled Device) mit Bildsensorelementen der Größe 10 mal 10 µm. Die Blendenzahl sei 2 und die Brennweite 15 mm. Wir legen eine Fernaufnahme zugrunde. Das heißt, der Objektabstand ist mit 1,5 m deutlich größer als die Brennweite. (a) Der Abbildungsmaßstab ist hier 0,01, womit das Bild des Objektes auf dem Sensor wesentlich verkleinert wird. (b) Für die Berechnung der Schärfentiefe legen wir den Radius des Unschärfekreises mit 5 µm gleich der halben Sensorhöhe fest. Damit ergibt sich die Schärfetiefe von circa 0,4 m. (c) Wie weit sollte bei den gegebenen Einstellungen der fokussierte Gegenstand entfernt sein, damit der gesamte Hintergrund scharf abgebildet wird? Der hyperfokale Abstand beträgt circa 11,2 m. Beispiel 1.2 Berechnung der Schärfentiefe mit MATLAB Die notwendigen Berechnungen im Beispiel 1.1, z. B. mit dem Taschenrechner durchgeführt, können als einfaches MATLAB-Programm formuliert werden. Eine mögliche Umsetzung in MATLAB zeigt das kommentierte Programm 1.1. Programm 1.1 Schärfentiefe % Schärfentiefe % bm_digbild_1 * mw * 31.03.2015 %% Eingaben fprintf('\n') fprintf('Schärfentiefe 31.03.2015\n') fprintf('Eingaben\n') k = input('Blendenzahl................... k f = input('Brennweite in mm.............. f g = input('Gegenstandsweite in m......... g epsilon = input('Unschärferadius in mm... epsilon %% Berechnungen fprintf('Ergebnisse\n') f = f*1e-3; epsilon = epsilon*1e-3; % Normierung, b = f*g/(g-f); % Bildweite in m if b >= g % Voraussetzung b