Lokale Neuronale Filter

Der Fehler ist eine Funktion aller Gewichte und Schwellen des Netzes und soll durch .... der Anzahl der beim Anwenden zu erzeugenden Outputbilder uberein.
143KB Größe 3 Downloads 344 Ansichten
Lokale Neuronale Filter B. Flach



H. Guth

y

Januar 1992

 y z

Zentralinst. f. Kernforschung Rossendorf Kernforschunszentrum Karlsruhe Zentralinst. f. Kernforschung Rossendorf

0

R. Osterland

z

Zweck Entwicklung eines Neuronalen Moduls zur Erkennung von Teilcheneinschu ssen auf CR-39 Filmen (KALIF-Experiment) fur ein automatisiertes Bildverarbeitungssystem.

Zusammenfassung Es wird ein auf Neuronalen Netzen basierendes Modul zur Bildverarbeitung vorgestellt. Es realisiert einen lokalen Filter der aus einem Feed-ForwardNetz besteht. Die gewunschte Bildtransformation des Filters kann dem System auf nichtalgorithmische Weise, { durch einen Lernprozess aufgepragt werden. Dies wird fur einen speziellen Einsatzzweck { die Erkennung von Teilcheneinschu ssen auf CR-39 Filmen untersucht und vorgefuhrt.

1

Contents

1 Einfuhrung 2 Realisierung

2.1 Losungsansatz : : : : : : : : : : : : : : : 2.2 Neuronale Netze : : : : : : : : : : : : : 2.2.1 Der Lernalgorithmus : : : : : : : 2.3 Implementierung des neuronalen Filters

3 Experimente und Resultate

: : : :

: : : :

: : : :

: : : :

: : : :

: : : :

: : : :

: : : :

: : : :

: : : :

: : : :

: : : :

3.1 Anlernen des Systems : : : : : : : : : : : : : : : : : : : : : : 3.2 Resultate : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 3.2.1 Suche nach einer gunstigen Markierung der Einschu sse 3.2.2 Resistenz des angelernten Systems gegegenuber Storein u ssen beim Anwenden : : : : : : : : : : : : : : : : 3.2.3 Suche nach einer gunstigen Netzstruktur : : : : : : : : 3.2.4 Zeitverhalten des Systems beim Anlernen und Anwenden

4 Bewertung und Ausblick

3 4

4 5 6 8

11

11 13 13 13 15 15

16

2

1 Einfuhrung Fur ein System zur automatischen Bildverarbeitung, das am KFK entwickelt wurde, sollte eine Komponente, die auf neuronalen Netzen basiert, entwickelt werden und mit der klassischen Losung verglichen werden. Dabei ging es um einen speziellen Einsatzfall des Systems: Die automatische Auszahlung von Teilcheneinschu ssen auf CR-39 Filmen, die im Rahmen des KALIFExperiments erhalten werden (siehe Bild A-1). Die Bilder werden mittels eines automatisierten Mikroskops und einer CCD-Kamera aufgenommen und digitalisiert (256  256 Pixel 256 Grauwerte). Fur die Auswertung des Films mussen ca 103 solcher Bilder aufgenommen und bearbeitet werden. Da dies automatisiert ist, die Filme aber nicht vollkommen plan sind, werden die Bilder in einigen Bereichen des Films defokussiert aufgenommen, wenn im System kein Software-Autofokus eingebaut ist. Man vergleiche dazu Bild A-2 mit Bild A-1. Ein weiteres Problem stellt das systematische Shading in den aufgenommenen Bildern dar. Aus der Sicht der Bildverarbeitung kommt weiterhin hinzu, da die Einschusse sehr oft uberlappen. Aus diesen Problemen ergab sich die Frage, ob fur diese Aufgabe ein geeignetes Modul zur Erkennung der Einschusse entwickelt werden kann, das auf neuronalen Netzen basiert. Allgemeine Vorteile von neuronalen Netzen sind ihre Lernfahigkeit, Verallgemeinerungsfa higkeit und Fehlertoleranz.

3

2 Realisierung

2.1 Losungsansatz

Das neuronale Netz soll zunachst, wie auch das klassische Verfahren, die Einschustellen (eventuell nach ihrer Groe sortiert) in einem Output-Bild markieren. In einem zweiten Schritt werden dann die markierten Stellen gezahlt.

Abb.1: Lokaler neuronaler Filter Da es von vornherein klar war, da es nicht moglich ist, ein einfaches neuronales Netz zu entwerfen, welches ein ganzes Bild als Input erhalt und dieses dann global bewertet1, wurde folgender Ansatz gewahlt: Das Netz "sieht\einen quadratischen Bildausschnitt (Template) von einigen 102 Pixeln und soll bewerten, ob das zentrale Pixel des Templates sich mehr oder weniger im Zentrum eines Einschusses be ndet oder nicht. Diese Wertung wird am Output des Netzes abgelesen (Das Netz hat im einfachsten Falle ein Output-Neuron). Es wird somit ein lokaler neuronaler Filter realisiert. Selbst der Mensch erfasst zwar die Einschu sse als ganzes, d.h. parallel, wurde sie aber letztendlich sequentiell zahlen 1

4

Das Template wird nun Pixel fur Pixel und Zeile fur Zeile uber das InputBild bewegt und die jeweiligen Outputs ergeben dann das Output-Bild (siehe Abb.1). Die Outputs des Netzes werden hierbei als Grauwerte interpretiert. Das Netz soll vorher so angelernt werden, da der Output des Netzes dann und nur dann gro ist, wenn sich das zentrale Pixel des Templates in etwa im Zentrum eines Einschusses be ndet. Die Auszahlung der Einschusse erfolgt dann in einem zweiten Schritt. Dazu wird das Resultatbild zunachst mittels eines Schwellwertes binarisiert. Dann mu die Zahl der zusammenhangenden Gebiete gezahlt werden. Da die hierbei auftretenden Gebiete einfach zusammenhangend sein werden, stimmt die Eulersche Charakteristik des Bildes mit der Anzahl der Gebiete uberein [1]. Die Eulersche Charakteristik eines digitalisierten Binarbildes kann ihrerseits mittels eines einfachen lokalen Filters ermittelt werden. Es verbleibt somit nur die Frage, was fur ein neuronales Netz fur die zuerst beschriebene Filteroperation zu nehmen ist und wie es anzulernen ist.

2.2 Neuronale Netze

Abb.2: Modellneuron Die Netze die hier betrachtet wurden, sind aus analogen Neuronen aufgebaut. Das Neuron ist ein Prozesselement mit n Eingangen und einem Ausgang. 5

Interne Parameter des Neurons sind seine Gewichte und die Schwelle: s = f(

X w s + e) = f (a); f (a) = tanh(a) i

i i

(1)

Hierbei sind die si - die (analogen) Inputsignale, s - der Output, wi - die Gewichte, e - die Schwelle und a - das Zellpotential, des Neurons (siehe Abb.2). Diese Neuronen konnen nun zu beliebigen Netzen verschaltet werden. Fr die betrachtete Aufgabe wurden Feed-Forward Netze (FF-Netze) untersucht. Bei diesem Netztyp sind die Neuronen in Schichten angeordnet und so verschaltet, da alle Neuronen der nachfolgenden Schicht als Inputs alle Outputs der Neuronen der vorherigen empfangen (siehe Abb.3). Die erste Schicht wird als Input-Schicht bezeichnet, die letzte - als Outputschicht. FF-Netze konnen insbesondere als Klassi katoren eingesetzt werden: Das entsprechend angelernte Netz soll beim Anlegen eines zu klassi zierenden Inputmusters als Output die Klassenzugehorigkeit liefern.

Abb.3: Feed-Forward-Netz

2.2.1 Der Lernalgorithmus Das betrachtete FF-Netz soll aus N Schichten bestehen. Wir bezeichnen mit sni den Output des i-ten Neurons der n-ten Schicht, mit eni seine Schwelle und mit wijn seine Gewichte. Die adaptiven Parameter des Netzes, die wahrend 6

des Lernvorganges eingestellt werden, sind die Gewichte und Schwellen aller Neuronen. Will man ein FF-Netz als Klassi kator betreiben, so bietet sich als Standardlernverfahren das Error-Back-Propagation (EBP) an [2]. Dazu wird ein Satz von Lernmuster-Paaren bentigt. Ein Lernmusterpaar besteht aus einem Inputmuster und einem gewnschten Outputmuster. Wir bezeichnen die Lernpaare mit fi ; jg=1;::;q . Das Ziel ist nun, durch den Lernvorgang zu erreichen, da die Gewichte und Schwellen des Netzes so eingestellt werden, da beim Anlegen eines Inputmusters am Output genau das gewnschte Outputmuster entsteht. Am Anfang werden alle Gewichte und Schwellen zufllig initialisiert. Wahrend eines Lernzyklus werden an das Netz nacheinander alle Inputmuster des Lernsatzes angelegt. Fur jedes Inputmuster wird das aktuelle Outputmuster mit dem gewunschten verglichen und der quadratische Fehler betrachtet: E =

X(sN ? N )2 i

i

i

(2)

Der Fehler ist eine Funktion aller Gewichte und Schwellen des Netzes und soll durch deren Adaption verkleinert werden. Stellt man sich nun die Funktion E als Fehlergebirge uber dem Parameterraum vor, so ist heuristisch klar, da man die Gewichte und Schwellen in Richtung des starksten Abfalls von E andern mu: @E wijn = ? @w n

(3)

ij

Hierbei ist  ein empirisch zu wahlender Faktor { die Lernstarke. Aus (1),(2) und (3) erhalt man nach einigen Umformungen: wijn ?! wijn ? dni snj ?1 eni

?! ? eni

dni

(4)

Hierbei sind die d-s die Ableitungen de Fehlerfunktion nach den enstprechenden Zellpotentialen. Sie konnen rekursiv berechnet werden: dNi = 2(sNi ? i)f 0 (aNi ) dni ?1 =

P dnwn f 0(an?1) j j ji

i

(5)

Das Ziel ist nun, die Fehler fur alle Muster des Lernsatzes zu verkleinern. Deswegen werden die Lernzyklen solange wiederholt, bis alle Fehler eine vorgegebene Schranke unterschritten haben. 7

Betrachtet man nun ein einfaches Netz, das nur aus einer Input- und Outputschicht besteht, so lat sich zeigen, da das EBP{Verfahren bezuglich der Lerngeschwindigkeit ungunstig ist [3]. Deswegen wurde das Lernverfahren modi ziert: Es wird nicht der Fehler im Output, sondern im Zellpotential betrachtet: Ee =

X(aN ? )2 i

i

i

(6)

Hierbei sind die i { die gewunschten Zellpotentiale: f ( i ) = i . In (5) ist dann dNi = 2(aNi ? i ) :

(7) Weiterhin werden die Gewichte beim Anlegen eines Musters im Lernzyklus nur geandert, wenn der Fehler die vorgegebene Schranke uberschreitet. Diese Modi kation des Lernens fuhrt zu einer Erhohung der Lerngeschwindigkeit um etwa eine Groenordnung.

2.3 Implementierung des neuronalen Filters

Beim Anlernen des Systems sind die Gewichte und Schwellen aller Neuronen eines FF-Netzes so zu einzustellen, da das FF-Netz die Aufgabe eines lokalen Filters bei der gewunschten Bildtransformation erfullt. Die vom System geforderte Bildtransformation wird durch ein vorgegebenes Eingangsbild und das dazugehorende gewunschte Outputbild an einem Beispiel beschrieben. Anhand dieses Lernbildpaares wird das System so angelernt, da das System beim Anwenden auf andere Eingangsbilder die geforderte Bildtransformation moglichst gut realisiert. Die Gute, mit der die gewunschte Transformation vom angelernten System ausgefuhrt wird, hangt naturlich wesentlich von dem vorgegebenen Bildpaar ab. Im einfachsten Fall ist es moglich, zu einem vorhandenen realen Eingangsbild ein gewunschtes Outputbild mit Hilfe eines Bildeditors zu erzeugen. Der fur das Angleichen benotigte Satz von Lernmusterpaaren wird aus einem Eingangsbild und dem dazugehorigen gewunschten Outputbild gewonnen. Fur jede Pixelposition  (ausgenommen eines Bildrandes) wird ein Lernmusterpaar f  ;   g gebildet. Dabei werden die Komponenten des jeweiligen Inputmusters aus den Grauwerten gebildet, die sich innerhalb eines Templates im Eingangsbild be nden. Das Zentrum dieses Templates stimmt mit der Position des Pixels im Outputbild uberein, dessen Grauwert die einzige Komponente des Outputmusters   bildet (vgl. 8

Abb1). Die Breite des Bildrandes entspricht dem Abstand des zentralen Pixels des Inputtemplates zum Templaterand. Beim Anwenden des angelernten Netzes auf ein Eingangsbild werden die einzelnen Grauwerte des Outputbildes mit Hilfe des lokalen Filters ermittelt, dessen Verhalten durch das angelernte FF-Netz bestimmt wird. Das Programmsystem fur das Experimentieren mit FF-Netzen wurde in zwei getrennt abarbeitbaren Teilen implementiert. Fur das Editieren von Lernmustern wurde das Programm "kfk edit\ entworfen. Dieses Programm gestattet das Erzeugen bzw. das Nachbearbeiten von als Bit-Maps abgespeicherten Bildern. Auerdem konnen mit diesem Programm erzeugte Resultatbilder ausgewertet werden. Es werden im Einzelnen folgende Funktionen realisiert:  Zeichnen von Kreisen, Rechtecken, Geraden und Freihandlinien mit einem vorher ausgewahlten Grauwert.  Kopieren von Bildausschnitten aus einem anderen Bild  Kopieren und Verschieben von Bildausschnitten aus demselben Bild.  Abspeichern eines gesamten Bildes oder eines Bildausschnittes  Markieren eines bestimmten Grauwertes  Anzeige des Grauwertgebirges eines Bildausschnittes  Zahlen von Zusammenhangsgebieten mit Grauwerten, die eine vorgegebene Schwelle ubersteigen. Die Bilder konnen mit 256 Graustufen abgespeichert und verarbeitet werden. Aus Hardwaregrunden besteht aber die Einschrankung, da die Bilder nur mit 64 Graustufen angezeigt werden konnen. Erkannte Einschsse sollen im entsprechenden Resultatbild als zusammenhngende helle Gebiete gekennzeichnet werden. Diese Transformation wird durch das neuronale Netz realisiert. Die hellen Zusammenhangsgebiete werden mit Hilfe eines Schwellwertkriteriums binarisiert und schlielich unter Anwendung der Eulerschen Charakteristik ausgezhlt. Das Auszahlen kann mit dem lokalen Filter erfolgen, dessen Inputtemplate in Abb.4 dargestellt ist. Dabei werden die Resultatwerte dieses lokalen Filters fr alle Pixel des Bildes aufsummiert. Der neue Resultatwert fr das zentrale Pixel a5 kann nach der folgenden Formel bestimmt werden: 1 1 a05 := a5 (1 ? a2 )[(1 ? a1 )(1 ? a4 ) + (1 ? a3 )(1 ? a6 ) ? 1] 2 2 9

Abb.4: Inputtemplate des lokalen Filters zur Bestimmung der Eulerschen Charakteristik Fur das Anlernen eines FF-Netzes und das Anwenden eines bereits angelernten Netzes auf ein Eingangsbild wurde das Programm "tebp img\ entwickelt. In diesem Programm wurden folgende Funktionen realisiert:  Vereinbaren der Struktur des anzulernenden Netzes.  Auswahl einer Datei in welcher Indizes von Gewichten vermerkt sind, die whrend des Lernens stndig auf Null zu setzen sind. Mit dieser Einschrnkung der Netzstruktur kann der Lernproze beein ut werden, indem z.B. rezeptive Felder gebildet werden.  Auswahl eines Lernmusterpaares bestehend aus einem Eingangsbild und dem dazugehorigen gewunschten Resultatbild. Es ist auch mglich mehrere gewnschte Resultatbilder auszuwhlen, wenn mit einem Netz mehrere Bildtransformationen in einem Schritt ausgefhrt werden sollen (z.B. Klassi kation von Einschssen nach mehreren Grenklassen).  Anlernen des Netzes. In mehreren Zyklen werden die Gewichte und Schwellen so eingestellt, da das Netz die durch das Lernmusterpaar beschriebene Bildtransformation ausfhren kann.  Visualisierung der Gewichtswerte.  Abspeichern des Zustandes eines angelernten Netzes, indem alle Schwellen und Gewichte in einer Datei abgelegt werden.  Laden des Zustandes eines bereits angelernten Netzes.  Anwenden einer bereits angelernten Bildtransformation auf ein Eingangsbild. Das Programm wurde fur einen PC, der mit einer Transputerkarte erweitert wurde entwickelt. Dabei wird der Transputer als schneller RISC-Prozessor genutzt, zum einen fur das Adaptieren der Gewichte und Schwellen beim 10

Lernproze und zum anderen beim Anwenden eines angelernten Netzes auf ein Eingangsbild. Da das verwendete System durch die Transputererweiterung ein Mehrprozessorsystem darstellt, besteht das Programm aus zwei Komponenten. Die Komponente, die auf dem Transputer abgearbeitet wird, realisiert die rechenzeit- und speicherintensiven Elemente des Verarbeitungsprozesses. Eine weitere Komponente, die auf dem Host-PC abgearbeitet wird, steuert die einzelnen auf dem Transputer abgearbeiteten Teilprozesse und realisiert die Kommunikation mit dem Bediener. Die auf dem Host-PC laufende Komponente wurde in PASCAL und die auf dem Transputer laufende Komponente wurde, um eine hohe Laufzeitezienz zu gewahrleisten, in OCCAM entwickelt. Die Kommunikation zwischen diesen beiden parallel arbeitenden Komponenten erfolgt PC-seitig uber normale Ports und Transputerseitig uber ein Link. Ein klare Gestaltung der Schnittstelle zwischen den beiden Komponenten ermoglicht es, die Transputerkomponente ohne A nderungen fur ein System mit mehreren verkoppelten Transputern zu nutzen. Es konnten somit mehrere Teilbilder parallel bearbeitet werden. Es ware dafur nur erforderlich, eine Steuerungskomponente fr den entsprechenden Host-Rechner zu entwickeln.

3 Experimente und Resultate 3.1 Anlernen des Systems

Das Erkennen von Einschussen durch ein automatisches Bildverarbeitungssystem wird durch folgende Storein u sse erschwert:  Shading  Verunreinigungen  berlappungen der Einschusse  Helligkeitsunterschiede  verschiedene Einschugroen  verschiedene Fokussierung  Filmkorn Um das System so anzulernen, da es beim Anwenden auf reale Bilder gegen die obengenannten Storein u sse weitestgehend resistent ist, wurde das Anlernen des Netzes mit verschiedenen Lernpaaren erprobt: 11

 Kunstliche Eingangsbilder bei denen die Einschusse kunstlich nachempfunden

wurden. Die Markierung erfolgte mit Grauwertpyramiden oder Punkten. Mit Grauwertpyramiden sind Pyramiden im Grauwertgebirge eines Bildes gemeint mit einem Durchmesser von 3 Pixeln.  Reale Eingangsbilder zu denen ein gewnschtes Outputbild editiert wurde, in welchem alle Einschusse durch einen Punkt mit dem hochstmoglichen Grauwert markiert wurden.  Reale Eingangsbilder bei denen die Markierungen im gewunschten Outputbild durch Grauwertpyramiden erfolgte.  Nachbearbeitete Eingangsbilder, in denen fur das Lernen uneindeutige Elemente beseitigt wurden. Das dazugehorige gewunschte Outputbild enthalt die Markierungen in Form von Pyramiden. Es wurde auerdem versucht, ob ein neuronales Filter auch so angelernt werden kann, da durch eine Bildtransformation die Einschusse in einem realen Eingangsbild nach der Groe klassi ziert in mehreren Outputbildern gekennzeichnet werden konnen. Zum Anlernen wird ein Lernsatz verwendet, der aus einem Eingangsbild und mehreren gewunschten Outputbildern besteht. Das FF-Netz, mit welchem das lokale Filter realisiert wird, besitzt in diesem Fall mehrere Outputneuronen. Die Zahl der Outputneuronen stimmt mit der Anzahl der beim Anwenden zu erzeugenden Outputbilder uberein. Wahrend des Lernens kann die Entwicklung des absoluten Fehlers verfolgt werden. Dieser absolute Fehler wird vom Programm tebp img\ fr jeden Lernzyklus, in dem ein gesamtes Lernbildpaar einmal" durchlaufen wird, angezeigt. Der absolute Fehler wird ermittelt, indem das FF-Netz mit seinen in den vorangehenden Lernzyklen eingestellten Zustand auf das Eingangsbild des Lernbildpaares angewendet wird. Dabei gibt der absolute Fehler die Di erenz zwischen gewunschtem und ermitteltem Grauwert an der Bildposition an, an der diese Di erenz am groten ist. Auerdem wird noch ein durchschnittlicher Fehler fr jeden Lernzyklus angezeigt. Dieser Fehler zeigt die uber alle Bildpixel gemittelte Di erenz zwischen gewunschtem und ermitteltem Grauwert an. Bei der vorgestellten Implementation wird durch die Neuronen des FFNetzes der Grauwertbereich von 0 bis 255 durch reelle Zahlen im Bereich (1,+1) dargestellt. Beim Anlernen von Lernpaaren mit synthetischen Eingangsbildern war zu erkennen, da der absolute Fehler schon nach wenigen Lernzyklen (10 bis 50 Zyklen) auf Werte unter 0.5 reduziert werden konnte. Dagegen el der absolute Fehler beim Anlernen von Lernpaaren mit realen Eingangsbildern 12

bzw. mit nachbearbeiteten realen Eingangsbildern selbst nach mehreren hundert Lernzyklen kaum unter Werte von 1.5. In Versuchen hat sich gezeigt, da beim Anlernen mit realen Eingangsbildern selbst nach einer hohen Zahl von Lernzyklen noch an einigen wenigen Pixelpositionen Fehler beim Anwenden gemacht werden. Diese Fehler konnen jedoch meist vernachlassigt werden, da von dem System lediglich gefordert wird, Einschusse im Outputbild durch geschlossene Gebiete mit einem Grauwert uber einer bestimmten Schwelle zu kennzeichnen.

3.2 Resultate

3.2.1 Suche nach einer gunstigen Markierung der Einschusse Das grundsatzliche Verhalten des Systems konnte am besten mit synthetischen Lernpaaren untersucht werden. Dazu wurden Eingangsbilder mit einem Bildeditor kunstlich erzeugt. In ersten Versuchen sollte ermittelt werden, wie die Einschusse im gewunschten Outputbild am besten markiert werden konnen. Dabei wurde von idealen Eingangsbildern beim Anlernen und Anwenden ausgegangen. Es wurden Lernpaare erzeugt, bei denen im Eingangsbild die Einschu sse durch einheitliche dunkle Kreise vor einem homogenen Hintergrund dargestellt wurden. Die Einschusse wurden im gewunschten Outputbild zum einen durch helle Punkte und zum anderen durch Grauwertpyramiden markiert. Dabei konnte festgestellt werden, da der absolute Fehler beim Anlernen von Lernbildpaaren bei denen, die Einschusse mit Pyramiden markiert wurden, im allgemeinen schneller vermindert wurde als bei Punktmarkierungen. Das kann damit erklart werden, da es fur das FF-Netz einfacher ist, sich so zu arrangieren, da es mit einem allmahlich abschwellenden Output reagiert, je mehr sich das zentrale Pixel des Inputtemplates vom Zentrum eines Einschusses entfernt.

3.2.2 Resistenz des angelernten Systems gegegenuber Storein ussen beim Anwenden Mit weiteren Experimenten wurde die Resistenz des angelernten Systems gegenuber moglichen Storein ussen auf das Eingangsbild untersucht. Dazu war es erforderlich, die verschiedenen Storein u sse zu isolieren. Dafur wurden ebenfalls spezielle synthetische Lernbildpaare erzeugt, in denen jeweils nur ein oder zwei Storein usse auf einmal reprasentiert waren. In getrennten Experimenten wurden folgende Storein usse analysiert: 13

   

verschiedene Fokussierung von Einschussen normal fokussierte Einschu sse und systematisches Shading Einschusse verschiedener Groen in einem Bild Einschusse mit U berlappungen Es konnte dabei festgestellt werden, da die ersten drei Storein usse, wenn sie separat auftreten, das System bei der Erkennung von Einschussen kaum beein ussen konnen. Gewisse Schwierigkeiten treten nur bei der Erkennung von uberlappten Einschussen auf. Die Zahl der richtig erkannten Einschusse beim Erkennen von uberlappten Einschussen, konnte durch das Anlernen mit einer groen Zahl von Lernzyklen noch verbessert werden. Das Anlernen des Systems anhand von Lernbildpaaren, bei denen im Eingangsbild nur ideale Einschusse dargestellt waren, hatte beim Anwenden auf reale Eingangsbilder keine befriedigenden Ergebnisse gezeigt, da das Verhalten bei Storungen nicht mit trainiert wurde. Da sich das System als sehr resistent gegenuber einzelner Storungen erwiesen hat, wurde versucht Lernbildpaare zu verwenden, bei denen zu einem realen Eingangsbild die Einschu sse in einem gewunschten Outputbild durch einen Bildeditor markiert wurden. Aber schon beim Markieren des realen Eingangsbildes fur das Lernpaar stellte sich zum einen heraus, da sich der Mittelpunkt eines Einschusses oft nicht eindeutig bestimmen lat, da auf Grund der Pixeldarstellung sowohl Einschusse mit geradzahligen als auch mit ungeradzahligen Durchmesser auftreten konnen. Zum anderen ist es oft schwierig ist zu entscheiden, was als Einschu gewertet werden soll und was als Verschmutzung oder Filmkorn zu werten ist. Da die Ergebnisse beim Anwenden eines FF-Netzes, welches mit solch einem Lernpaar trainiert wurde noch nicht befriedigend waren, wurde nach einer weiteren Moglichkeit gesucht, ein Lernbildpaar herzustellen, welches die gewunschte Bildtransformation moglichst gut reprasentiert. Die besten Ergebnisse wurden schlielich erzielt, indem fur das Anlernen ein Lernpaar mit einem bereinigten realen Eingangsbild verwendet wurde. Aus dem ursprunglichen realen Eingangsbild wurden alle Stellen mit einem Bildeditor bereinigt, die Objekte enthalten, die sich nicht eindeutig als Einschusse im gewunschten Outputbild markieren lassen. Das konnen unter anderem sein: uberlappende Einschusse, die zu dicht beinander liegen oder Objekte bei denen die Entscheidung schwer fallt, ob es sich um Einschusse oder Verunreinigungen bzw. Filmkorn handelt. 14

Weitere Versuche haben gezeigt, da es durchaus moglich ist ein FF-Netz mit zwei Outputneuronen so anzulernen, da es zu einem Eingangsbild mit Einschussen verschiedener Groe zwei verschiedene Outputbilder erzeugen kann, in denen die Einschusse nach ihrer Goe klassi ziert markiert werden. Beim Anlernen wurde ebenfalls von einem nachbearbeiteten realen Eingangsbild fur das Lernbildpaar ausgegangen. Aus diesem Bild wurden Einschusse entfernt, bei denen nicht eindeutig entschieden werden konnte, welcher Groenklasse sie zugeordnet werden sollen.

3.2.3 Suche nach einer gunstigen Netzstruktur

Ein weiteres Problem stellt die Frage nach der gunstigsten Struktur fur das verwendete FF-Netz dar. Bei den Versuchen hat sich herausgestellt, da ein Netz mit zwei aktiven Ebenen die geforderte Bildtransformation realisieren kann. In der dem Inputtemplate ubergeordneten Ebene ist eine Anzahl von vier bis acht Neuronen ausreichend. Die Inputtemplategroe wurde so gewahlt, da die groten Einschusse vom gesamten Template uberdeckt werden konnen.

3.2.4 Zeitverhalten des Systems beim Anlernen und Anwenden Das Anlernen des FF-Netzes ist besonders rechenzeitintensiv. Bei einer Hardwarekon guration mit einem Transputer T800, welcher mit 20 Mhz getaktet wird, kann bei einer Bildgroe von 256 x 256 Pixeln eine Zeit von Zeit von etwa 0.28 sec fur das Anlernen einer Synapse in einem Lernzyklus angenommen werden. Das bedeutet das z.B. fur das Anlernen eines FFNetzes mit einem Outputneuron, vier Neuronen in der untergeordneten Ebene und einem Inputtemplate mit einer Groe von 11 x 11 Pixeln pro Lernzyklus etwa 137 sec benotigt werden. Das Anwenden des angelernten FF-Netzes benotigt etwa dieselbe Zeit die fur einen Lernzyklus bei gleicher Bildgroe gebraucht wird. In gunstigen Fallen kann schon nach 20 Lernzyklen mit einem brauchbaren Ergebnis gerechnet werden. Versuche in denen Lernbildpaare mit mehreren hundert Lernzyklen angelernt wurden haben gezeigt, da sich beim Anwenden eines so trainierten FF-Netzes die Ergebnisse noch verbessern lassen. So wird der Abstand zwischen dem dunklen Hintergrund und den hellen Markierungen im Grauwertbereich noch verbessert. Markierungen von Einschussen die sich auf Grund von Storein ussen schwerer erkennen lassen, treten mitunter erst klarer hervor, wenn ein FF-Netz verwendet wird, welches mit einer groen Anzahl von Lernzyklen angelernt wurde. 15

4 Bewertung und Ausblick Mit der vorgestellten Losung konnte gezeigt werden, da es mit Hilfe eines Neuronalen Systems moglich ist, einfache in gewissem Grade uniforme Objekte vor einem leicht strukturierten Hintergrund zu erkennen. Diese Aufgabe wurde durch ein mit einem FF-Netz realisierten lokalen Filter gelost. Beim Entwurf von lokalen Filtern mit Methoden der klassischen Bildverarbeitung stellt die scharfe Formulierung der geforderten Bildtransformation in Form eines Algorithmus meist ein Problem dar. Der hier verwendete Losungsansatz zeigt jedoch seine Vorteile besonders bei der Losung von Bildverarbeitungsaufgaben, bei denen eine zu realisierende Bildtransformation nicht ohne weiteres in Form eines Algorithmus klar beschrieben werden kann. Mit dem verwendeten neuronalen Ansatz genugt es, eine geforderte Bildtransformation durch ein reprasentatives Beispiel in Form eines Eingangsbildes und des dazugehorigen gewunschten Outputbildes zu beschreiben. Mit Hilfe eines solchen Lernpaares kann die gewunschte Bildtransformation dem neuronalen System durch "Lernen\ aufgepragt werden. Wesentliche Nachteile des verfolgten Ansatzes sind die empirische Suche nach einer gunstigen Netzstruktur und den geeignetsten Lernparametern und das mitunter nicht immer einfache Zusammenstellen eines geeigneten Lernbildpaares. Diese Nachteile werden jedoch dadurch aufgewogen, da komplizierte Bildtransformationen ohne die genaue Kenntnis uber den zu verwendenden Algorithmus implementiert werden konnen. Die beschriebene Vorgehensweise weist schon darauf hin, da es interessant ware, ob mit solch einem neuronalen System auch andere Bildtransformationen angelernt werden konnen. Diese Richtung verfolgend, wurden schon erste Versuche angestellt, ob mit dem beschriebenen System auch Kanten in einem Grauwertbild erkannt werden konnen. Ein weiterer interessanter Aspekt ware die Suche nach ezienteren Netzstrukturen und dazugehorenden Lernalgorithmen mit denen auch ein autoassoziatives Verhalten fur Bilderkennungsaufgaben realisiert werden kann.

16

References [1] L.S.Pontrjagin, Grundlagen der kombinatorischen Topologie, Nauka, Moskau, 1976. [2] D.E. Rumelhart,J.L. McClelland, Parallel Distributed Processing, Cambridge Massachusets: MIT-Press, 1984. H. Ritter,K. Schulten,T. Martinetz, Neuronale Netze - Eine Einfuhrung in die Neuroinformatik selbstorganisierender Netzwerke, Addison Wesley, Bonn 1990, S.38 - S.47. B. Muller, J.Reinhardt, Neural Networks - An Introduction, SpringerVerlag, Berlin 1990, S.51 - S.61. [3] B.Flach, Lernen mit analogen Neuronen, Wiss.Z. TH Ilmenau 37 (1991) Heft 1

17