Technische Universit˜at M˜unchen Fakult˜at f ur...

19
Technische Universit ¨ at M ¨ unchen Fakult ¨ at f ¨ ur Informatik Forschungs- und Lehreinheit Informatik IX Grundlagen der digitalen Bildverarbeitung: Punktoperatoren Proseminar Alexander C. Perzylo Betreuer: Dipl.-Inform. Dimitris Golias Abgabetermin: 11. Mai 2004

Transcript of Technische Universit˜at M˜unchen Fakult˜at f ur...

Page 1: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

Technische Universitat

Munchen

Fakultat fur Informatik

Forschungs- und Lehreinheit Informatik IX

Grundlagen der digitalen Bildverarbeitung: Punktoperatoren

Proseminar

Alexander C. Perzylo

Betreuer: Dipl.-Inform. Dimitris Golias

Abgabetermin: 11. Mai 2004

Page 2: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

Inhaltsverzeichnis

1 Operatoren - ein Uberblick 2

2 Hilfsmittel 42.1 Histogramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.2 Look-Up-Tabellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3 Punktoperatoren 63.1 Farb-Invertierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.2 Graustufen-Konvertierung . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.3 Binarisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.3.1 mit konstantem Schwellenwert . . . . . . . . . . . . . . . . . . . . . 83.3.2 mit rekursiver Schwellenwertsuche . . . . . . . . . . . . . . . . . . . 9

3.4 lineare Grauwertskalierung . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.4.1 mit konstanten Parametern . . . . . . . . . . . . . . . . . . . . . . 103.4.2 mit Vorgabe von Mittelwert und Varianz . . . . . . . . . . . . . . . 113.4.3 Grauwertspreizung . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.5 nicht lineare Grauwertskalierung . . . . . . . . . . . . . . . . . . . . . . . . 133.5.1 Gamma-Korrektur . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.6 Grauwertaqualisation (Histogrammausgleich) . . . . . . . . . . . . . . . . 143.7 Erzeugen von verrauschten Bildern . . . . . . . . . . . . . . . . . . . . . . 15

3.7.1 Punktrauschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.7.2 gleichverteiltes Rauschen . . . . . . . . . . . . . . . . . . . . . . . . 163.7.3 normalverteiltes Rauschen . . . . . . . . . . . . . . . . . . . . . . . 16

Literaturverzeichnis 17

Stichwortverzeichnis 18

1

Page 3: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

Kapitel 1

Operatoren - ein Uberblick

Ein Bildbearbeitungsoperator ist eine Abbildung, die ein Bild, auf welches er angewendet

wird, in ein verarbeitetes Bild umwandelt. Er kann eventuell nur auf bestimmte Arten

von Bildern, wie z.B. Graustufen- oder dreikanaligen Bildern (z.B. RGB), definiert sein.

Aufgrund ihrer Funktionalitat konnen Operatoren in vier Klassen eingeteilt werden:

Geometrische Operatoren, globale Operatoren, lokale Operatoren und Punktoperatoren.

Ein geometrischer Operator fuhrt Koordinatentransformationen aus. Dabei wird

ein Eingabebild durch eine allgemeine Transformationsvorschrift in ein Ausgabebild

uberfuhrt. Beispiele hierfur sind die Rotation, die ein Bild um einen beliebigen Wert um

einen Drehpunkt rotieren laßt, die Translation, die eine Verschiebung der Bildkoordinaten

bewirkt, und die Inversion, der eine Spiegelung der Bildpunkte an festgelegten Achsen

zugrunde liegt. Wenn eine Transformation das Ausgabebild im Vergleich zum Eingabebild

verkleinert, spricht man von einem kontrahierenden Operator. Fallt das Resultatsbild

großer aus als die Eingabe, so nennt man den Operator expandierend. Ein einfaches

Beispiel hierfur ist die Bildskalierung, welche ein Bild auf neue Abmessungen abbilden

kann.

Globale Operatoren beziehen sich bei der Bestimmung der Ausgabebildpunkte enweder

auf alle Bildpunkte des Eingabebildes oder es muss erst durch weitere Berechnungen

ermittelt werden, welche Bildpunkte der Eingabe Einfluss auf das Ergebnis haben. Die

Menge der globalen Operatoren ist die rechen- und speicherintensivste. Beispiele sind

signaltheoretische Transformationen, basierend auf z.B. der Fourier- oder Walshtransfor-

mation.

Lokale Operatoren verwenden zur Berechnung eines Bildpunktes im Ausgabebild ei-

ne fixierte Fensterfunktion, die den entsprechenden Bildpunkt des Eingabebildes als

Mittelpunkt enthalt und noch weitere Punkte in seiner Nachbarschaft umfasst. Aus

dieser Menge von Punkten wird nun der Wert eines Ausgabebildpunktes ermittelt.

Liegt ein Bildpunkt der Eingabe zu nah am Bildrand, so dass das Fenster nicht mehr

ausgefullt ist, wird dieser Bildpunkt einfach in das Ausgabebild ubernommen, ohne

2

Page 4: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 1. OPERATOREN - EIN UBERBLICK 3

weitere Berechungen durchzufuhren. Man bezeichnet einen lokalen Operator als parallel,

wenn die von der Fensterfunktion berechneten Bildpunkte in ein von der Eingabe

unterschiedliches Ausgabebild eingetragen werden. Wenn jedoch das Eingabebild mit

den Ausgabebildpunkten uberschrieben wird und somit eine schrittweise Veranderung

des Ursprungsbildes eintritt, spricht man von einem sequentiellen lokalen Operator. Ein

homogener lokaler Operator fuhrt seine Fensterfuntkion auf alle Nicht-Rand-Bildpunkte

aus und jeder Ausgabebildpunkt kann mit einem Eingabebildpunkt identifiziert werden.

Ist dies nicht der Fall, handelt es sich um einen inhomogenen Operator.

Die Punktoperatoren konnen als Spezialfall der homogenen, lokalen Operatoren gesehen

werden, dann wenn man fur die Operatorberechungen ein Fenster der Große 1x1

zugrunde legt, also fur die Berechnung eines Ausgabebildpunktes nur der entsprechende

Eingabebildpunkt herangezogen wird. Zusatzlich kann ein Punktoperator auch die

Position eines Bildpunktes als Berechnungskriterium berucksichtigen. Hierbei spielt es

fur das Ergebnis offensichtlich keine Rolle, ob ein Punktoperator parallel oder sequentiell

arbeitet.

Punktoperatoren werden hauptsachlich mit Grauwerttransformationen in Verbindung

gebracht, die auch den Schwerpunkt dieser Arbeit bilden, jedoch lassen sich einige

Funktionen auf mehrkanalige Bilder ubertragen (z.B. Farbinvertierung). Sie dienen

der Verbesserung des visuellen Eindrucks, sowie der Aufbereitung der Bilddaten fur

weitergehende Bearbeitungsschritte oder Analysen.

Page 5: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

Kapitel 2

Hilfsmittel

2.1 Histogramme

Die Grauwerthaufigkeit eines Bildes wird im Histogramm dargelegt. Dazu werden die ein-

zelnen Graustufen g in ihrer Haufigkeit abgezahlt und in das Histogramm H eingetragen.

H(g) ist somit eine diskrete Funktion. Das Histogramm ist fur die Punktoperatoren eine

große Hilfe, da es den Operatoren erlaubt, die Grauwertverteilung eines Bildes schnel-

ler zu untersuchen als dies im Eingabebild selbst der Fall ware. Der mittlere Grauwert,

die Varianz, sowie andere statistische Bildeigenschaften lassen sich aus ihm ableiten. Ei-

ne andere Moglichkeit die Grauwertverteilung in einem Histogramm aufzuzeigen, ist das

Grauwert-Summenhaufigkeitshistogramm, in welchem die Werte von sumH(g) sich aus

der Summe der Haufigkeit der Graustufe g und der Haufigkeiten aller Grauwerte < g

berechnet. sumH(g) ist fur jedes Bild eine monoton steigende Funktion.

Abbildung 2.1: Bild (links), Histogramm (mitte), Summenhistogramm (rechts)

4

Page 6: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 2. HILFSMITTEL 5

2.2 Look-Up-Tabellen

Angesichts großer, hochauflosender Bilder kann sich die Anzahl an Pixeln in einem Bild

in Millionenhohe befinden. Um zu vermeiden, dass die selben Berechnungen fur unter-

schiedliche Bildpunkte, die jedoch den gleichen Grauwert haben, unnotigerweise wieder-

holt ausgefuhrt werden, kann eine sogenannte Look-Up-Tabelle (LUT) angelegt werden.

Fur jeden Grauwert (bei 8bit Graustufenmodus: 0 − 255) wird die Rechenfunktion des

Punktoperators ausgefuhrt und das Ergebnis in der LUT an der Stelle des korrespondie-

renden Grauwerts gespeichert, so dass nun bei der Anwendung des Operators mit den

Grauwerten aus dem Eingabebild als Index auf die LUT zugegriffen werden kann. Das

gefundene Ergebnis kann direkt in das Ausgabebild geschrieben werden. Mit diesem Vor-

gang kann kostbare Rechenzeit gespart werden.

Was fur ein Graustufenbild ein gutes Werkzeug ist, hilft bei Bildern mit großerer farbli-

cher Vielfalt nicht mehr weiter. Bei 24bit RGB-Bildern mußte die LUT 256 ∗ 256 ∗ 256 =

16.777.216 Eintrage umfassen, obwohl in einem Bild normalerweise nur ein Bruchteil da-

von zu finden ware. Somit lohnt sie sich in diesem Fall in der Regel nicht mehr.

Page 7: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

Kapitel 3

Punktoperatoren

3.1 Farb-Invertierung

Die Farb-Invertierung ist ein denkbar einfacher Punktoperator, der statisch die Farbwerte

der Eingabebildpunkte in die jeweilige Komplementarfarbe wandelt. Fur Graustufenbilder

bietet sich deshalb eine LUT an. Zu diesem Zweck berechnet man fur alle Grauwerte g

den inversen Grauton und speichert ihn in der LUT ab:

Sei G die Anzahl der zur Verfugung stehenden Graustufen

ginvers = (G− 1)− g (3.1)

LUT [g] = ginvers (3.2)

Nach dieser Vorbereitung arbeitet der Operator alle Eingabebildpunkte ab und tauscht

die Grauwerte gegen ihr Komplement:

gresultat = LUT [g] (3.3)

Abbildung 3.1: UrBild (links), invertiertes Bild (rechts)

6

Page 8: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 7

Fur ein dreikanaliges Farbbild (RGB) bietet sich die LUT, wie unter 2.2 angesprochen,

nicht mehr an. Daher benotigt man ein Verfahren, um fur jeden Farbwert die Komple-

mentarfarbe auf effiziente Art zu berechnen. Anstelle der getrennten Umwandlung der

drei Farbkanale kann der ganze RGB-Wert bitweise invertiert werden, was ebenfalls dem

Komplement entspricht, da die Anzahl der moglichen Werte eines Farbkanals einer Zwei-

erpotenz entspricht (28) und somit alle Bitmuster von 00000000 bis 11111111 eindeutigen

Farbwerten eines Kanals zugeordnet werden konnen.

Page 9: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 8

3.2 Graustufen-Konvertierung

Um ein dreikanaliges Bild (RGB) in 256 Graustufen zu konvertieren, muss man zunachst

berucksichtigen, dass das menschliche Auge die Helligkeiten der verschiedenen Farbkanale

unterschiedlich stark wahrnimmt. Grunanteile einer Farbe sind zu ca. 60% auschlaggebend

fur die wahrgenommene Helligkeit (Luminanz). Rot hat einen Einfluss von ca. 30%, Blau

nur noch von ca. 10%. Damit ergibt sich die Umwandlung:

Fur jedes Pixel p des Eingabebildes gilt

Grauwert(p) = 0.299 ·RKanal(p) + 0.587 ·GKanal(p) + 0.114 ·BKanal(p) (3.4)

Abbildung 3.2: RGB-Bild (links), 8bit-Graustufen Bild (rechts)

3.3 Binarisierung

Die Binarisierung wandelt ein Eingabebild in ein Schwarz-Weiss-Bild um.

3.3.1 mit konstantem Schwellenwert

Bei einer Binarisierung mit konstantem Schwellenwert, werden den Bildpunkten des Ein-

gabebildes, welche einen Grauwert g haben, der kleiner als der Schwellenwert t ist, die

Farbe Weiss zugeordnet. Alle anderen Bildpunkte werden schwarz gefarbt:

Sei G die Anzahl der zur Verfugung stehenden Graustufen. Fur jedes Pixel p des Einga-

bebildes gilt

Grauwertneu(p) =

{0 fur Grauwert(p) < t

G− 1 fur Grauwert(p) ≥ t(3.5)

Page 10: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 9

3.3.2 mit rekursiver Schwellenwertsuche

Dieser Operator berechnet zunachst iterativ eine geeignete Binarisierungsschwelle, be-

vor er diese auf das Eingabebild anwendet. Fur die Schwellenwertsuche wird das globale

Grauwerthistogramm verwendet. Die Idee des Algorithmus ist es, nachdem anfanglich der

Schwellenwert t0 auf die Halfte des zur Verfugung stehenden Grauspektrums G gesetzt

wurde, in der nachsten Iteration t1 zwischen die mittleren Grauwerte µ1 und µ2, der durch

to aufgeteilten Bereiche zu setzen. Dies wird solange rekursiv fortgesetzt bis | tx−tx−1 |< ε.

Sei G die Anzahl der zur Verfugung stehenden Graustufen, H das Histogramm des Ein-

gabebildes und g ein Grauwert

tx =µ1 + µ2

2= (3.6)

=1

2

tx−1∑

g=0

gH(g)

·

tx−1∑

g=0

H(g)

−1

+

G−1∑

g=tx−1+1

gH(g)

·

G−1∑

g=tx−1+1

H(g)

−1

Der durch dieses Verfahren berechnete Schwellenwert t, ist der Wert, fur den die gesamte

mittlere quadratische Abweichung e fur jeden der beiden mittleren Grauwerte getrennt

gerechnet, minimal ist:

e =t∑

g=0

(g − µ1)2H(g) +

G−1∑

g=t+1

(g − µ2)2H(g) (3.7)

Abbildung 3.3: UrBild (l.), fester Schwellenwert t=128 (m.), rekursive Schwellenwertsuche (r.)

Page 11: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 10

3.4 lineare Grauwertskalierung

Lineare Grauwertskalierungen dienen dem gleichmaßigen Verschieben, Strecken oder

Komprimieren des Grauwertumfangs eines Bildes. Dabei konnen subjektive Bildverbes-

serungen erreicht werden, auch wenn das Bild tatsachlich weniger Informationsgehalt hat

als vor der Skalierung.

3.4.1 mit konstanten Parametern

Die lineare Grauwertskalierung mit konstanten Parametern fuhrt folgende Berechnung auf

allen Bildpunkten des Eingabebildes durch:

Sei g der Grauwert eines Bildpunktes

gneu = (g + c1) · c2 (3.8)

In dieser linearen Transformation bewirkt die Konstante c1 eine Verschiebung der Grau-

werte in den helleren bzw. dunkleren Bereich (Helligkeitseinstellung). Die Konstante c2

verandert den Kontrast des Eingabebildes. Fur 0 < c2 < 1 wird der Kontrast verringert,

fur c2 > 1 erhoht. Damit die Transformation stets zulassige Werte liefert, muss der Grau-

wertbereich, in den abgebildet wird, begrenzt werden:

Sei G die Anzahl der zur Verfugung stehenden Graustufen und g ein Grauwert

gneu =

{ 0 fur (g + c1) · c2 < 0G− 1 fur (g + c1) · c2 ≥ G

(g + c1) · c2 sonst(3.9)

Abbildung 3.4: UrBild (links), skaliertes Bild mit c1 = 25 und c2 = 1.3 (rechts)

Page 12: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 11

3.4.2 mit Vorgabe von Mittelwert und Varianz

Die lineare Skalierung mit Vorgabe von Mittelwert und Varianz fuhrt die bereits bekannte

Transformation auf die Bildpunkte des Eingabebildes aus, mit dem Unterschied, dass die

Parameter c1 und c2 nicht frei wahlbar sind, sondern erst vom Operator berechnet werden.

gneu = (g + c1) · c2

Die Konstanten c1 und c2 lassen sich so wahlen, dass vorgegebene Werte fur den mittleren

Grauwert, sowie fur die Varianz des Eingabebildes erreicht werden. Dafur berechnet der

Operator zunachst die Werte fur c1 und c2 in Abhangigkeit der zu erzielenden Großen

und wendet dann die lineare Skalierung auf alle Bildpunkte p des Eingabebildes B an.

Sei m der mittlere Grauwert und q die Varianz des Eingabebildes, m′ der gewunschte

Mittelwert, q′ die gewunschte Varianz des Ausgabebildes B′, g ein Grauwert. |B| entspricht

hierbei der Anzahl an Pixeln in B

m′ =1

|B| ·∑

p∈B

(g(p) + c1)c2

=

1

|B| ·∑

p∈B

g(p)

c2 + c1c2

= m · c2 + c1c2 (3.10)

q′ =1

|B′| ·∑

p∈B′(g(p)−m′)2

=1

|B| ·∑

p∈B

((g(p) + c1)c2 − (mc2 + c1c2))2

=1

|B| ·∑

p∈B

(g(p)−m)2 · c22

= c22 · q (3.11)

Durch Auflosen der Gleichungen nach c1 und c2 bekommen wir die benotigten Werte fur

die Parameter der linearen Skalierung, um im Ergebnisbild die geforderten Großen fur

Mittelwert und Varianz zu erhalten:

c2 =√

q′q

, c1 = m′c2−m (3.12)

Page 13: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 12

3.4.3 Grauwertspreizung

Die Grauwertspreizung ist eine stuckweise lineare Skalierung. Dabei wird ein festzule-

gender Grauwertbereich auf die gesamte zur Verfugung stehende Graupalette abgebildet.

Werte, die sich außerhalb dieses Bereichs befinden, werden entfernt, und der bestimmte

Grauwertbereich wird kontrastreicher dargestellt. Der Operator dient somit der Hervor-

hebung relevanter Bildbereiche.

Sei G die Anzahl der zur Verfugung stehenden Graustufen, g1 und g2 die Grenzen des zu

bearbeitenden Grauwertbereichs

gneu =

{ 0 falls g < g1g−g1

g2−g1· (G− 1) falls g ∈ [g1 : g2]

G− 1 falls g > g2

(3.13)

Abbildung 3.5: UrBild (l.o.), skaliertes Bild (l.u.), zugehorige Histogramme jeweils rechts

Page 14: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 13

3.5 nicht lineare Grauwertskalierung

Die nicht lineare Grauwertskalierung transformiert die verschiedenen Grauwerte eines Ein-

gabebildes nicht gleichmaßig, sondern variiert in der Starke der Skalierung.

3.5.1 Gamma-Korrektur

Die Gamma-Korrektur als Anwendungsbeispiel einer nicht linearen Skalierung dient z.B.

der Kompensation von Farbdarstellungen auf Monitoren. Bei einem Monitor/Fernseher

wird aus einem Spannungssignal die Lichtintensitat bestimmt. Jedoch wachst mit steigen-

der Spannung die Intensitat nicht linear. Im dunkleren Farbspektrum steigt die Intensitat

langsamer als im helleren Bereich. Um eine verfalschte Wiedergabe zu verhindern, wer-

den Bilder mit Hilfe der Gamma-Korrektur vorentzerrt. Meist erfolgt eine Vorentzerrung

bereits bei der Aufnahme von Bildern.

Gamma-Werte zwischen 0 und 1 fuhren zu einer Verdunkelung des Bildes, wahrend Werte

großer als 1 das Bild aufhellen. Ein Gamma-Wert von 1 fuhrt zu keiner Veranderung.

Sei G die Anzahl der zur Verfugung stehenden Graustufen, g ein Grauwert,

γ der Parameter der Gamma-Korrektur

gneu =(

g

G− 1

) 1γ · (G− 1) (3.14)

Abbildung 3.6: UrBild (links), linear skaliert mit Mittelwert m = 155 (mitte), Gamma-korrigiert mit Mittelwert m = 155 (rechts)

Page 15: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 14

3.6 Grauwertaqualisation (Histogrammausgleich)

Wahrend die Skalierungsoperatoren das Histogramm eines Bildes nur strecken oder stau-

chen, soll bei der Grauwertaqualisation eine moglichst gleichhaufige Verteilung der ein-

zelnen Graustufen erreicht werden. Da eine exakte Gleichverteilung nicht mit einfachen

Mitteln zu bewerkstelligen ist, beschrankt man sich meist auf die Bedingung, dass in kon-

stanten Grauwert-Intervallen gleich viele Bildpunkte liegen.

Sei HB das Histogramm eines Bildes B. Das Ergebnisbild A soll nun eine gleichmaßige

Grauwertverteilung haben:

HA(gneu) = C (3.15)

Ferner muß gelten:

HB(g)dg = HA(gneu)dgneu = Cdgneu → dgneu

dg=

1

C·HB(g) (3.16)

Durch Integration erhalt man:

gneu(g) =1

C·∫ g

0HB(g)dg (3.17)

Wir sehen nun, dass die transformierende Funktion des Operators aus der Histogramm-

dichtefunktion abgeleitet wird. Zunachst wird die mittlere im Histogramm auftretende

Haufigkeit ermittelt. Beginnend mit der niedrigsten Graustufe werden dann solange Grau-

werte zusammengefasst, bis die mittlere Histogrammhaufigkeit erreicht ist. Die Grauwer-

te im berechneten Intervall werden nun auf den niedrigsten im Intervall vorkommenden

Grauwert reskaliert. Dadurch ergibt sich eine Verminderung der Graustufen, was aber auf-

grund der begrenzten Wahrnehmungsfahigkeit des menschlichen Auges keine Rolle spielt.

Das aqualisierte Bild erscheint informationsreicher.

Im diskreten Fall muß das normierte Histogramm HnormBdes Eingabebildes B berechnet

werden, um eine LUT erstellen zu konnen:

Sei G die Anzahl der zur Verfugung stehenden Graustufen

HnormB(g) =

∑gu=0 HB(u)

∑G−1u=0 HB(u)

(3.18)

LUT (g) = (G− 1) ∗g∑

u=0

HnormB(u) (3.19)

Wie in Abbildung 3.7 zu sehen ist, ergibt sich fur die kumulative Haufigkeit der Grauwerte

im aqualisierten Bild eine konstant steigende Funktion. Dies liegt daran, dass innerhalb

eines Grauwertintervalls alle Grauwerte konstant sind.

Page 16: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 15

Abbildung 3.7: UrBild (l.o.), Grauwertaqualisiertes Bild (l.u.), zugehorige Summenhisto-gramme jeweils rechts

3.7 Erzeugen von verrauschten Bildern

Punktoperatoren, die in einem Bild Storungen erzeugen, mogen auf den ersten Blick

unschlussig erscheinen. Es ist jedoch so, dass zum Testen von Rauschfiltern und anderen

bildverbessernden Operatoren das gezielte Einsetzen von Storungen erwunscht ist. Es

lassen sich verschiedene Arten von Rauschen in ein Bild einfugen.

3.7.1 Punktrauschen

Das Punktrauschen fugt einem Eingabebild positive und negative Impulsstorungen in un-

gefahr gleichem Verhaltnis zu. Dabei lasst sich sowohl die Starke des Storimpulses, wie

auch die durchschnittliche Storrate einstellen.

Sei G die Anzahl der zur Verfugung stehenden Graustufen, Q die Storrate, S die Im-

pulshohe, r eine zwischen 0 und 1 gleichverteilte Zufallszahl, p ein Bildpunkt des Einga-

bebildes und g(p) dessen Grauwert

gneu(p) =

{ max{0, g(p)− S} wenn r(p) < qneg

g(p) wenn qneg ≤ r(p) ≤ qpos

min{G− 1, g(p) + S} wenn r(p) > qpos

(3.20)

mit: qneg = 12Q

und qpos = 1− qneg

Page 17: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

KAPITEL 3. PUNKTOPERATOREN 16

3.7.2 gleichverteiltes Rauschen

Dieser Punktoperator bewirkt ein gleichverteiltes Rauschen im Eingabebild. Um dies zu

erzielen wird jedem Bildpunkt abhangig von einer gleichverteilten Zufallsgroße ein varia-

bler Storimpuls addiert bzw. subtrahiert.

Sei G die Anzahl der zur Verfugung stehenden Graustufen, S die Streubreite der Gleich-

verteilung, re eine zwischen 0 und 1 gleichverteilte Zufallszahl, p ein Bildpunkt des Ein-

gabebildes und g(p) dessen Grauwert

gneu(p) =

{ 0 falls g(p)− S2

+ Sre < 0G− 1 falls g(p)− S

2+ Sre > 255

g(p)− S2

+ Sre sonst(3.21)

3.7.3 normalverteiltes Rauschen

Dieser Punktoperator bewirkt ein normalverteiltes Rauschen im Eingabebild. Hierbei wird

jedem Bildpunkt abhangig von einer normalverteilten Zufallsgroße mit Erwartungswert 0

und Standardabweichung 1 ein variabler Storimpuls addiert bzw. subtrahiert.

Sei G die Anzahl der zur Verfugung stehenden Graustufen, S die Streuung der Normal-

verteilung, rn eine normalverteilte Zufallszahl, p ein Bildpunkt des Eingabebildes und g(p)

dessen Grauwert

gneu(p) =

{ 0 falls g(p) + Srn < 0G− 1 falls g(p) + Srn > 255

g(p) + Srn sonst(3.22)

Abbildung 3.8: UrBild (l.o.), mit Punktrauschen (2.v.l.o.), gleichverteiltes Rau-schen(2.v.r.o.), normalverteiltes Rauschen(r.o.), zugehorige Histogramme jeweils darunter

Page 18: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

Literaturverzeichnis

[1] Wolfgang Abmayr.

Einfuhrung in die digitale Bildverarbeitung

B.G. Teubner Stuttgart (1994), ISBN 3-519-06138-4

[2] Herbert Kopp.

Bildverarbeitung interaktiv

B.G. Teubner Stuttgart (1997), ISBN 3-519-02995-2

[3] Reinhard Klette, Piero Zamperoni.

Handbuch der Operatoren fur die Bildbearbeitung

Friedr. Vieweg und Sohn (1992), ISBN 3-528-06431-5

[4] Walter Schmidt, Jorg Knappen, Hubert Partl, Irene Hyna:

LATEX2e-Kurzbeschreibung

(2003) ftp://dante.ctan.org/tex-archive/info/lshort/german/

17

Page 19: Technische Universit˜at M˜unchen Fakult˜at f ur Informatik˜home.in.tum.de/~perzylo/Proseminar/Punktoperatoren.pdf · Sei G die Anzahl der zur Verf˜ugung stehenden Graustufen,

Index

Bildrauschen, 15

Bildstorung, 15

Binarisierung, 8

expandierender Operator, 2

Farbinvertierung, 6

Gamma Korrektur, 13

Geometrische Operatoren, 2

gleichverteiltes Rauschen, 16

Globale Operatoren, 2

Graustufenbild, 8

Grauwertaqualisation, 14

Grauwertspreizung, 12

Helligkeit, 10

Histogramm, 4

Histogrammausgleich, 14

homogener Operator, 2

inhomogener Operator, 2

Komplementarfarbe, 6

kontrahierender Operator, 2

Kontrast, 10

Konvertierung, 8

lineare Skalierung, 10

lokale Operatoren, 2

Look-Up-Tabelle(LUT), 5

Luminanz, 8

Mittelwert, 11

nicht-lineare Skalierung, 13

normalverteiltes Rauschen, 16

Operator, 2

paralleler Operator, 2

Punktoperatoren, 2

Punktrauschen, 15

Rauschen, 15

rekursive Schwellenwertsuche, 8

Schwarz-Weiss-Bild, 8

Schwellenwert, 8

sequentieller Operator, 2

Summenhaufigkeitshistogramm, 4

Varianz, 11

18