| Graphical
User Interface: |
| CFingerprintDetectionSystemDlg:
|
Diese
Klasse beinhaltet alle Aufgaben, die mit der Graphischen Darstellung,
der Interaktion mit dem Benutzer und der Ausgabe der Ergebnisse
zu tun hat. |
| CNetInitDlg: |
In
diesem Dialog kann das Netz neu initialisiert und Einstellungen
für die Hiddenschicht sowie die Outputschicht vorgenommen werden. |
|
| Helper
Classes: |
| CFingerPicture:
|
Hier
werden die Personendaten, wie Name, Id und der Ort eines dazugehörigen
Fingerabdruckes gehalten. Desweiteren kann man das Abbild des Fingerabdruckes
laden und sich dann einen Pointer darauf zurückgeben lassen. |
| CPictureFilter: |
In
dieser Klasse werden alle Aufgaben, die mit der Bildverarbeitung
zu tun haben, erledigt. So gibt es zum Beispiel Methoden zum Umwandeln
von 24 Bit Farbbildern zu 8 Bit Graustufenbildern und umgekehrt,
Methoden zur Kontrasterhöhung, Erkennung von Kanten und zum
Skelettieren von Linien. |
| CVectorArray: |
In
dieser Klasse werden die skelettierten Bilder segmentiert und dabei
die gezählten Linienenden und Linienkreuzungen pro Segment
gespeichert. Desweiteren werden die Personendaten der Klasse CFingerPicture
übernommen und eine eindeutige ID, bestehend aus 16 Bytes,
aufgebaut. Diese Speicherung geschieht dann bereits im CPatternLayer
Format, damit diese direkt dem Neuronalen Netz übergeben werden
können. Diese Klasse ist serialisierbar. Dadurch ist es möglich,
einmal berechnete Vektoren zu speichern und zu laden. |
|
| Neuron
Net : |
 |
| Aufbau
des neuronalen Netzes |
| |
| CNeuronNet:
|
Diese
Klasse repräsentiert ein ganzes Neuronales Netz. Über
ihre Methoden können Layer hinzugefügt, Gewichte initialisiert,
das Training und die Erkennung gestartet werden. Es wird dabei immer
angenommen, daß der erste Layer, der hinzugefügt wurde,
die Inputschicht darstellt und der letzte Layer die Outputschicht.
Diese Klasse und alle weiteren Klassen des Neuronalen Netzes sind
vollkommen serialisierbar. Damit ist es möglich, den kompletten
Zustand des Netzes zu speichern und wiederherzustellen. |
| CNeuronLayer: |
Hier
wird ein Layer des Netzes gespeichert. Alle Neuronen des Layers
werden in einem Array abgelegt. |
| CNeuron: |
Diese
Klasse stellt ein Neuron dar. In einem Array werden alle Verbindungen
und deren Gewichte zu der vorangegangenen Schicht gespeichert. Dabei
findet aber keine direkte Zuordnung statt, sondern es wird nur anhand
der Position ermittelt, welche Verbindung und damit welches Gewicht,
zu welchem Neuron der vorangegangenen Schicht gehört. Desweiteren
befinden sich hier Methoden, die die Aktivierungsfunktion und deren
Ableitung beinhalten sowie eine Methode zur Berechnung des Gradienten. |
| CWeight: |
In
dieser Klasse wird das Gewicht selbst und das Delta eines Gewichtes
gespeichert. |
| CPatternLayer: |
Diese
Klasse dient zum Halten eines kompletten Mustersatzes. Dieses Muster
kann als Eingabemuster oder als Ausgabemuster genutzt werden. Auch
diese Klasse ist serialisierbar und ermöglicht somit des Speichern
und Laden eines Mustersatzes. |
|