Info zum BAM Matlab Programm - oth

Werbung
Projekt BAM in Matlab - Thomas Baumgartl
14.05.2016
Info zum BAM Matlab Programm
1. Programm starten
Matlab starten ---> File ---> Open... ---> Hauptprogramm.m auswählen ---> F5 drücken
---> “Chance MATLAB current directory” Ok ---> das Programm müsste jetzt laufen.
2. Programm Kurzbeschreibung
Das Programm ist im Allgemeinen selbsterklärend, deshalb werden nur auf die wichtigsten
Funktionen eingegangen.
Bei jedem Click auf den Button „Lernen“ wird die neu berechnete Gewichtsmatrix
im Matlab Hauptfenster angezeigt.
Bei jedem Click auf den Button „Test“ werden im Matlab Hauptfenster die benötigten
Iterationsschritte des Erkennalgorithmus und die Energie angezeigt.
Ab mehr als fünf gelernten Buchstaben wird das BAM Netz unstabil, d.h. die Erkennung
von gelernten Mustern ist nicht mehr sichergestellt.
3. Funktionen
- letters gibt die Variable Buchstaben zurück, in der die einzelnen Pixelwerte stehen.
„1“ steht für Schwarz und „0“ für weiß.
Die Buchstaben C,J,K,Q,S,T,V,X,Y,Z sind in diesen Format codiert.
- LearnBAM(a,b,Walt) :
a ist die binäre Eingabe und b ist die dazugehörige binäre Ausgabe.
Walt ist die Gewichtsmatrix, die aus vorherigen Lernvorgängen entstanden ist.
- TestBAM(aneu,W):
aneu ist das zu testende Muster. W ist die Gewichtsmatrix des BAM – Netzes.
4. Erläuterungen zum Hauptprogramm
Der folgende Befehl erstellt das Hauptfenster(Zeile 15):
MainWindow = figure('MenuBar','none',...
'Name','BAM-Algorithmus',...
'ToolBar','none',...
'Position',[.2*scrsz(3),.2*scrsz(4),...
winsize]);
1
Projekt BAM in Matlab - Thomas Baumgartl
14.05.2016
Die grafische Anzeige besteht aus Buttons die sich je nach gedrückten Buchstaben
schwarz oder weiß färben. Ein Button entspricht einem Pixel.
Die folgenden Befehlszeilen initialisieren die 49 Buttons, auf der linken Seite (Zeile 23):
for i=1:7
for j=1:7
h((i-1)*7+j) = uicontrol('Style', 'ToggleButton', ...
'Position',[j*15 ,winsize(2)-i*15-20,15,15],...
'BackgroundColor','w',...
'CallBack', 'Hauptprogramm(''Pixel'',gco)');
end
end
Die Bedeutung der Eigenschaften ‚Position’, ‚Style’, ‚BackgroundColor’ und
‚CallBack’ sind in der Matlab Dokumentation beschrieben1.
1
http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/uicontro
l_props.html&http://www.mathworks.com/access/helpdesk/help/techdoc/ref/uicontrol.html
2
Herunterladen