Digital Signal Processing Reference
In-Depth Information
11.3 Reprasentation von Bildregionen
11
Regionen in Binarbildern
11.3.1 Matrix-Reprasentation
Eine naturliche Darstellungsform fur Bilder ist eine Matrix bzw. ein zwei-
dimensionales Array, in dem jedes Element die Intensitat oder die Farbe
der entsprechenden Bildposition enthalt. Diese Reprasentation kann in
den meisten Programmiersprachen einfach und elegant abgebildet wer-
den und ermoglicht eine naturliche Form der Verarbeitung im Bildraster.
Ein moglicher Nachteil ist, dass diese Darstellung die Struktur des Bilds
nicht berucksichtigt. Es macht keinen Unterschied, ob das Bild nur ein
paar Linien oder eine komplexe Szene darstellt - die erforderliche Spei-
chermenge ist konstant und hangt nur von der Dimension des Bilds ab.
Binare Bildregionen konnen mit einer logischen Maske dargestellt
werden, die innerhalb der Region den Wert
true
und außerhalb den
Wert
false
enthalt (Abb. 11.12). Da ein logischer Wert mit nur einem
Bit dargestellt werden kann, bezeichnet man eine solche Matrix haufig
als
”
bitmap“.
5
Abbildung 11.12
Verwendung einer logischen Bild-
maske zu Spezifikation einer Bild-
region. Originalbild (a), Bild-
maske (b), maskiertes Bild (c).
(a)
(b)
(c)
11.3.2 Lauflangenkodierung
Bei der Lauflangenkodierung (
run length encoding
, RLE) werden auf-
einander folgende Vordergrundpixel zu Blocken zusammengefasst. Ein
Block oder
”
run“ ist eine moglichst lange Folge von gleichartigen Pixeln
innerhalb einer Bildzeile oder -spalte. Runs konnen in kompakter Form
mit nur drei ganzzahligen Werten
Run
i
=
row
i
, column
i
, length
i
dargestellt werden (Abb. 11.13). Werden die Runs innerhalb einer Zeile
zusammengefasst, so ist naturlich die Zeilennummer redundant und kann
5
In Java werden allerdings fur Variablen vom Typ
boolean
immer 8 Bits
verwendet und ein
”
kleinerer“ Datentyp ist nicht verfugbar. Echte
”
bitmaps“
konnen daher in Java nicht direkt realisiert werden.