3. ErweiterungDa man auf diese Weise nur exakt spezifizierte Segmente extrahieren kann, möglicherweiseaber nur Grenzwerte bekannt sind, führt man eine Erweiterung ein um etwas Varianzzu erlauben. Einzelne Elemente des Strukturelements dürfen nun auch undefiniert sein;dies wird durch ein x symbolisiert. Bei der Erosions-Operation ist es egal, ob der Bildpunktunter so einem Element gesetzt ist oder nicht, bzw. welchen Wert er im Falleeines Grauwertbildes besitzt. Er wird schlicht ignoriert. Auf diese Weise kann mannach Varianten oder Abstufungen von bestimmten Mustern suchen. Ein Beispiel ist dasStrukturelement⎛⎞s =⎜⎝0 0 0 0 0 0 00 x 1 1 1 x 00 0 0 0 0 0 0Das zugehörige Komplement ist in diesem Fall⎛¯s =⎜⎝1 1 1 1 1 1 11 x 0 0 0 x 11 1 1 1 1 1 1Würde man in s statt der beiden x jeweils eine 0 setzen, so fände man nur Linien mitder Länge 3 (Pixel). Hingegen würde man für die beiden x je 1 setzen, so erhielte mannur Linien mit der Länge 5. Mit dem hier gegebenen Strukturelement jedoch findet manLinien mit den Längen [3; 5].d. Skelettierung / Medial Axis Transform1. Zweck/Nutzen⎟⎠ .⎞⎟⎠ .Figure 9: Prinzip der SkelettierungSkelettierung ist ein Verfahren, bei dem alle Information eines Segments in ein anderes”Datenformat” umgewandelt wird. Statt durch die Koordinaten seiner enthaltenenVordergrundpixel wird das Segment nach dieser Transformation durch die Menge der12
Mittelpunkte maximal großer Inkreise und den dazugehörigen Radien repräsentiert. Dasbedeutet es wird für jeden Randpunkt des Segments von allen ihn berührenden Kreisenderjenige gesucht, der den größtmöglichen Radius besitzt, gleichzeitig aber gerade nochim Segment liegt. Die Menge der Mittelpunkte dieser Kreise bildet bei Segmenten, dieauf einem reellen Wertebereich definiert sind, immer ein zusammenhängendes Gebilde.Dieses nennt man Skelett (engl., ”medial axis”). Aus der Menge dieser Paare lässt sichdas Segment (theoretisch) vollständig wiederherstellen. Es besteht aus der Vereinigungall dieser maximal eingeschriebenen Kreise.Das Skelett kann ein wichtiges Instrument für die Segmentklassifizierung sein. AlsBeispiel sei die Erkennung von Text in einem Bild (OCR — Optical Character Recognition)erwähnt. Es ist sehr schwer bis unmöglich, allein mit den bisher genannten Operatoreneine verlässliche Texterkennung zu implementieren, denn es gibt eine Vielzahlverschiedener Schriftarten, die sich zum Teil sehr stark unterscheiden. Die Skelettierungbietet uns hier eine große Hilfestellung. Mit ihrer Hilfe ist es zumindest rudimentärmöglich, einzelne Segmente auf ihr Wesentliches zu reduzieren. Anhand dessen kann esbedeutend leichter fallen, die markanten Merkmale einzelner Buchstaben oder Zahlen zuerkennen.2. VorgehensweiseEs müssen zunächst zwei Bedingungen gestellt werden um das Skelett konstruieren zukönnen:1. Der Kreis um den Skelettpunkt muss vollständig im Segment liegen.2. Wird ein Randpixel des Segments von einem Kreis berührt, so ist dessen Mittelpunktgenau dann ein Skelettpunkt, wenn es keinen Kreis mit größerem Radiusgibt, der die erste Bedingung erfüllt.Für die erste Bedingung ist uns die Arbeitsweise der Distanztransformation sehr nützlich.Führt man sie auf einen beliebigen Bildpunkt innerhalb des Segments aus, so wird diesemPunkt seine minimale Entfernung zum Rand zugewiesen. Man kann also um jedes Segmentpixelzumindest einen Kreis mit dieser ihm eigenen Distanz als Radius definieren– er wird immer innerhalb des Segments liegen und dabei gleichzeitig zumindest einenRandpunkt berühren.Allerdings gibt es möglicherweise Kreise, die den selben Randpunkt berühren undeinen größeren Radius besitzen. Um also auch die zweite Bedingung zu erfüllen, giltes von allen Mittelpunkten, deren Kreise diesen Randpunkt berühren, denjenigen zufinden, dessen von der Distanztransformation zugewiesene Wert der höchste, also einlokales Maximum ist. Die gesuchten Kreismittelpunkte liegen also auf den ”Graten” desDistanzbildes, auf den Linien, an denen die Maxima entlang laufen.Diese Linien dürfen per Definition nicht gebrochen werden. Deshalb definiert manStrukturelemente, die mittels Hit-or-Miss-Operation für alle acht Richtungen (vertikal,horizontal und diagonal) alle Pixel finden, die gelöscht werden dürfen, ohne dass dabeieine Linie unterbrochen wird. Diese Strukturelemente sind für links (l), rechts (r), oben13