grundlagen der bildverarbeitung ws 2014/2015: matlab ... · platzhalter für bild, bild auf...
TRANSCRIPT
![Page 1: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/1.jpg)
Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen
Grundlagen der Bildverarbeitung WS 2014/2015: Matlab Einführung Daniel Fecker
![Page 2: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/2.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 2/42
1. Umgebung 2. Ausdrücke 3. Matrizen 4. Skripte und Funktionen 5. Grafiken 6. Bilder in Matlab 7. Bildverarbeitung in Matlab
(Image Processing Toolbox) 8. Links
![Page 3: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/3.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 3/42
1. Umgebung
Benutzer: cipuser01 … cipuser18 Password: pic01 … pic18
(auf IfNCIP und nicht lokal)
MATLAB R2012b vom Desktop starten >> demo
![Page 4: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/4.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 4/42
2. Ausdrücke
Variablen Zahlen
Operatoren
Vordefinierte Funktionen und Konstanten
![Page 5: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/5.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 5/42
Variablen
Variablen sind Zeichenketten von denen Matlab maximal 31 Zeichen berücksichtigt. Matlab unterscheidet Groß- und Kleinschreibung!!! Variablen können mit dem Gleichheitszeichen (=) Werte (meist
Matrizen) zugeordnet werden.
>> A=22;
>> B=2.2
B = 2.2000
>> C=A-B
C = 18.8000
![Page 6: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/6.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 6/42
Zahlen
Zahlen werden in Dezimalschreibweise mit einem (optionalen) Punkt und führendem Vorzeichen (+/-) angegeben , Oder in wissenschaftlicher Darstellung mit einem e oder E zwischen
Mantisse und Exponent. Komplexe Zahlen können mit i oder j als imaginäre Einheit
angegeben werden. Intern arbeitet Matlab mit doppeltgenauen Fließkommazahlen, d.h. mit
einer endlichen Genauigkeit von ca. 16 signifikanten Dezimalstellen. Der mögliche Bereich von Zahlen erstreckt sich von
1.0E-308 bis 1.0E+308.
![Page 7: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/7.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 7/42
Operatoren I
Matlab kennt die arithmetischen Standardoperatoren und deren Ausführungsregeln, die für Zahlen (Skalare) und Matrizen gelten:
+ Addition und Matrixaddition
- Subtraktion und Matrixsubtraktion
* Multiplikation und die nicht kommutative Matrixmultiplikation
/ bzw. \ Division und die Matrixrechts- bzw. Linksdivision
^ Potenzieren von Zahlen und Matrizen ‘ Komplex konjugierte, transponierte Matrix
![Page 8: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/8.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 8/42
Operatoren II
Sollen die Operationen elementenweise auf Matrizen angewendet werden, verwendet man die Punkt-Operatoren
.* Elementenweise Multiplikation zweier Matrizen
./ , .\ Elementenweise Division zweier Matrizen
.^ Elementenweise Exponentation zweier Matrizen
.‘ Nicht komplex konjugierte, transponierte Matrix
![Page 9: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/9.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 9/42
Vordefinierte Funktionen und Konstanten
Eine Liste der elementaren Funktionen erhält man in Matlab mit:
>> help elfun Eine Liste speziellerer Funktionen mit:
>> help specfun Eine Liste besonderer Funktionen für Matrizen mit:
>> help elmat
![Page 10: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/10.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 10/42
3. Matrizen
Elementare Operationen Zugriff auf Matrix-Elemente
Vektoren
Vektorisierung und Schleifen
![Page 11: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/11.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 11/42
Elementare Operationen I
Wertzuweisung: Elemente zeilenweise in eckigen Klammern vorgeben (Zeilen mit Semikolon getrennt).
=
84
73
62
51
A
A = [1 2 3 4; 5,6,7,8]
A = [1 2 3 4 5 6 7 8 ]
A = [1:4; 5:8]
![Page 12: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/12.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 12/42
Elementare Operationen II
Null- bzw. Eins-Matrizen: Angabe der Matrixdimensionen: Zeile, Spalte.
=
11
11
11
11
BB= ones(2,4)
C = zeros(3,3)
=
000
000
000
CC = zeros(3)
![Page 13: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/13.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 13/42
Elementare Operationen III
Zahlenreihen: von:schrittweite:bis bzw. von:bis
Diagonalmatrizen
=
300
020
001
D
F= 1:5 F = (1 2 3 4 5)
E= 5:-0.5:4 E = (5 4.5 4)
D= diag(1:3)
![Page 14: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/14.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 14/42
Zugriff auf Matrix-Elemente I
Zugriff auf Einzelelemente: A(zeile, spalte) = wert Matrixbereiche ansprechen
=
0500
0000
A
=
000
000511011
A
A = zeros(2,4); A(2,3) = 5
=
000
000500000
A A(1:2,1:2) = ones(2,2)
![Page 15: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/15.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 15/42
Zugriff auf Matrix-Elemente II
Beim Überschreiten der Indexgrenzen wird die Matrixgröße angepasst
=
000
002500000
A
=
0500
0000
A A(3,1) = 2
![Page 16: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/16.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 16/42
Vektoren - 1D-Matrizen
Vektoren = 1D-Matrizen Spaltenvektor ≠ Zeilenvektor Vektoren/Matrizen transponieren: A'
Spaltenvektor = Zeilenvektor'
( )321A=
=
321
BA = 1:3; B = A'
![Page 17: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/17.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 17/42
Vektorisierung und Schleifen I
Um einen Vektor oder eine Matrix zu besetzten, können alle Elemente der Reihe nach in einer Schleife mit dem for … end Konstrukt zugewiesen werden.
Soll z.B. von allen Werten zwischen 0 und 2*pi in Schritten von 0.6 der Sinus gebildet und in einem Vektor S gespeichert werden, kann man folgende Befehle eingeben:
i=0; for t=0 : .6 : 2*pi i=i+1; S(i)=sin(t); end
![Page 18: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/18.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 18/42
Vektorisierung und Schleifen II
Die Länge des Vektors S ist bei Beginn der Schleife unbestimmt. Matlab muss also bei jedem Durchlauf der Schleife Speicher beschaffen.
Funktionen wie sin verarbeiten ganze Vektoren als Argument und geben
auch Vektoren aus. Hierbei werden optimierte Verfahren eingesetzt, die sehr viel schneller als Schleifen arbeiten.
t=[0:.6:2*pi]; S=sin(t)
![Page 19: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/19.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 19/42
Matlab-optimiert programmieren
(for-) Schleifen werden sehr ineffizient ausgeführt !
Schleifen vermeiden wo immer es geht ! Nahezu alle Funktionen akzeptieren sowohl skalare als auch
vektorielle Eingaben. Statt für alle Elemente eines Vektors eine Operation einzeln
durchzuführen, kann die Operation einmal auf dem gesamten Vektor angewandt werden.
![Page 20: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/20.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 20/42
4. Skripte und Funktionen
Skripte Funktionen
Anweisungen: if; switch ;for; while
![Page 21: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/21.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 21/42
Skripte I
Skripte sind Textdateien, die einfach zeilenweise eine Folge von Matlab-Befehlen enthalten. Diese Dateien können einfach mit dem Text-Editor erstellt und mit einem
Namen der Form name.m als m-file abgespeichert werden. In einem Matlab-Fenster wird dann die Folge der Matlab-Befehle
abgearbeitet, wenn der Dateiname name (ohne .m) eingegeben wird.
![Page 22: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/22.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 22/42
Skripte II
Die Datei muss im Suchpfad enthalten sein. An Skripte lassen sich keine Parameter übergeben.
Definierte Variable werden im globalen Workspace abgelegt, auf
welchen vom Skript auch zugegriffen werden kann.
![Page 23: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/23.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 23/42
Funktionen I
Funktionen werden wie Skripte erzeugt, abgespeichert und aufgerufen. Es lassen sich aber Parameter übergeben, lokale und globale
Variablen und lokale Unterprogramme erzeugen.
![Page 24: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/24.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 24/42
Funktionen II
Funktionsdefinition function var = fname(p1,p2,...) function ist ein Schlüsselwort var ist eine beliebig benannte Ausgabevariable p1,p2,… sind die Übergabeparameter Kommentare Kommentar-Zeichen ist %-Zeichen
![Page 25: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/25.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 25/42
Funktionen III
function W=linear(Z) %LINEAR linare Funktion % LINEAR(Z) berechnet die lineare Funktion % mit den Parametern: … a=1/2*exp(i*pi/3); b=1+i; W=a.*Z+b;
![Page 26: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/26.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 26/42
Anweisungen: if, else, elseif
if logische Bedingung 1 Matlab-Befehle … elseif logische Bedingung 2 Matlab-Befehle ... else Matlab-Befehle ... end
![Page 27: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/27.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 27/42
Anweisungen: switch, case
switch Ausdruck case Wert1 Matlab-Befehle case Wert2 Matlab-Befehle . . . otherwise Matlab-Befehle end
![Page 28: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/28.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 28/42
Anweisungen: for-Schleifen
for index=Anfangswert:Schrittweite:Endwert Matlab-Befehle … end Die Schrittweite muss nicht angegeben werden und ist dann 1. Sie kann
positiv oder negativ gewählt werden. !!! Vektorisierte Statements sind oft viel schneller als Schleifen. !!!
![Page 29: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/29.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 29/42
Anweisungen: while-Schleifen
while Bedingung Matlab-Befehle … end break beendet while- und for-Schleifen
![Page 30: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/30.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 30/42
5. Grafiken
Grafiken werden in Matlab in einem Extrafenster dargestellt. Das Fenster hat eine Nummer, die mit dem Kommando
gcf herausgefunden wird. Ein neues Fenster lässt sich mit dem Kommando figure erzeugen. Hat
dieses die Nummer n, kann man es jederzeit mit figure(n) zum aktuellen Fenster machen, in welches geplottet wird.
![Page 31: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/31.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 31/42
2D-Grafiken
plot Standard 2D-Plot mit linearen Achsen fplot Funktions-2D-Plot mit linearen Achsen loglog Doppeltlogarithmischer Plot semilogx Plot mit logarithmischer X-Achse semilogy Plot mit logarithmischer Y-Achse fill Plot von Polygonen
![Page 32: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/32.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 32/42
2D-Grafiken: Beispiel
x=-pi:.1:pi; y=sin(x); plot(x,y)
oder
fplot('sin(x)',[-pi pi])
![Page 33: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/33.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 33/42
3D-Grafiken
plot3 Analogon zum 2D plot-Kommando. Eignet sich zur parametrischen Darstellung von Kurven im Raum. mesh Gitterlinen- oder Netz plotsurf Flächenplot contour Kontur- oder Höhenlinenplot pcolor Pixelplot surfc Flächen- und Konturplot
![Page 34: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/34.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 34/42
3D-Grafiken: Beispiel
t=[-10:.1:10]; x=sin(t); y=cos(t); plot3(x,y,t)
![Page 35: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/35.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 35/42
Nützliche Befehle zum „Aufräumen“
close all Schließen aller geöffneten Figures clc Löschen aller Ausgaben im Command Window
clear Löschen aller Variablen im Workspace
![Page 36: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/36.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 36/42
6. Bilder in Matlab
imshow(I,[ ]): Matrix I als Graustufenbild darstellen. Bilder laden: A = imread('bildname.tif');
![Page 37: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/37.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 37/42
Befehle
axis Koordinatenachse
image Bildanzeigen mit Koordinatenachse
imshow Bildanzeigen mit Koordinatenachse
imread Einlesen von Bilddateien
imwrite Schreiben von Bilddaten
![Page 38: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/38.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 38/42
Beispiel I
I = imread('rice.png'); J = imnoise(I,'salt & pepper',0.05); figure(1);imshow (I) figure(2);imshow (J) imwrite (J, 'rice_noise.bmp');
![Page 39: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/39.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 39/42
7. Bildverarbeitung in Matlab
Die Toolboxen beinhalten „zahlreiche anwendungsspezifische Diagrammtypen, Darstellungsfunktionen und interaktive Schnittstellen“ zur Anzeige und Auswertung von Ergebnissen.
Bildverarbeitung Image Processing Toolbox Signalverarbeitung Signal Processing Toolbox …
![Page 40: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/40.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 40/42
Operationen
Filterung und Entwurf zweidimensionaler Filter Morphologische Operationen an Schwarzweißbildern Rauschunterdrückung und Verbesserung der Bildqualität Bildumwandlungen Bildanalyse und Statistik Blockverarbeitung Geometrische Operationen Bearbeitung der Farbpalette Verarbeitung ausgewählter Bereiche Konvertierung des Farbraums Unterstützung von 8- und 16-Bit Integer- oder double precision-Daten
![Page 41: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/41.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 41/42
8. Links
www.mathworks.com (z.B. user community) http://www.math.ufl.edu/help/matlab-tutorial/
http://www.eng.auburn.edu/~sjreeves/Classes/IP/IP.html …
![Page 42: Grundlagen der Bildverarbeitung WS 2014/2015: Matlab ... · Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Grundlagen der Bildverarbeitung WS 2014/2015: Matlab](https://reader034.vdocuments.pub/reader034/viewer/2022051603/5ca5735988c9935a308c48d9/html5/thumbnails/42.jpg)
20.11.2013 | Daniel Fecker | Grundlagen der Bildverarbeitung WS 2013/2014: Matlab Einführung | 42/42
Vielen Dank für Ihre Aufmerksamkeit.
Dipl.-Ing. Daniel Fecker [email protected]