Grundlagen der Videotechnik (Angewandte Mediensysteme/Prof. Schuller)

Ähnliche Dokumente
Numerik-Programm, mittlerweile mit vielen Erweiterungen (Toolboxen) Matlab = Matrix Laboratory Sehr gute Doku (doc, help, lookfor)

4.2 Selbstdefinierte Matlab-Funktionen 1. Teil

Einführung in. Pierre Bayerl

Matlab: Grundlagen und Hilfen

Matlab Einführung. Tobias Wunner

Scilab Consortium (École Polytechnique... Renault) kostenloses Download

Grundlagen der Optimierung. Übung 1

Matlab Selbstlernkurs

Einführung in Matlab Teil I

Machine Learning. von Nico Hezel

Einführung in MATLAB + MATLAB Simulink. Dipl.-Inf. Markus Appel

Prof. Dr. Stefan Funken, Dipl.-Ing. Christoph Erath 15. Mai WiMa-Praktikum (Matlab 2/9) Einführung in LATEXund Matlab

Tipps und Tricks in MATLAB

Einführung in Matlab Was ist MATLAB? Hilfe Variablen

PPS "Bits on Air" 1. Teil, Matlab-Tutorial Vorbereitungsaufgaben (Lösungsvorschläge)

m-files sind Folgen von MATLAB-Anweisungen oder Daten-Files.

Schülerworkshop Computertomographie Mathematik als Schlüsseltechnologie

Einführung in MATLAB zur Veranstaltung Einführung in die Numerik

Ein kleiner Matlab Primer Frank Schimmel

2. Einführung in das Ingenieurtool MATLAB

2 Matrizen und Vektoren

Matlab Einführung Einführung in die Neuroinformatik SS 12. Miriam Schmidt Institut für Neuroinformatik

10:Exkurs MATLAB / Octave

Kurze Einführung in Octave

Einführung in das rechnergestützte Arbeiten

MATLAB-Tutorium WS18 Nathalie Marion Frieß

Matlab Einführung Theorie Neuronaler Netze WS 11/12. Miriam Schmidt Institut für Neuroinformatik

Programmiervorkurs für die Numerik Teil 2/4

MATLAB: Kapitel 3 Programmieren

Allgemeines. Shell Programmierung Unix. Kommentar. Vorgangsweise. Mag. Thomas Griesmayer

Einführung in Matlab

Beispiel-Glossar zu Octave

Einführung in MATLAB Blockkurs DLR:

Inhaltsverzeichnis. Angelika Bosl. Einführung in MATLAB/Simulink. Berechnung, Programmierung, Simulation. ISBN (Buch):

WiMa-Praktikum 1. Woche 8

Einführung in MATLAB Blockkurs DLR:

3 Kurzeinführung in Matlab

Programmieren in MATLAB Mehr als nur ein Taschenrechner

Mathematische Computer-Software

Programmieren in MATLAB Mehr als nur ein Taschenrechner

Zwei-Punkt-Randwert-Aufgabe. Teil I Motivation Skript-Files Function-Files. Mathematische Anwendersysteme Einführung in MATLAB

MATLAB Eine Einführung

Dokumentation

Matlab: eine kurze Einführung

2. Programmieren in MATLAB (1)

Informationsverarbeitung im Bauwesen

Einführung in MATLAB

INTELLIGENTE DATENANALYSE IN MATLAB. Einführung in MATLAB

Eine Einführung zum numerischen Programmieren mit Matlab

INTELLIGENTE DATENANALYSE IN MATLAB

Anwendungssoftware III (MATLAB)

MATLAB Einführung. Numerische Methoden für ITET und MATL Dr. S. May, D. Devaud. ETH Zürich, Seminar for Applied Mathematics

Grundlagen von MATLAB

1. Einstieg in MATLAB

Übungen zum MATLAB Kurs Teil

Fachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave

Signale und Systeme 1 (Erste Großgruppenübung)

Eine kurze Einführung in Matlab

Einführung in die Programmierung (MA8003)

Einführung in die Programmierung (MA8003)

Zweiter Teil des Tutorials. Workspace M-files Matrizen Flow Control Weitere Datenstrukturen Gemeinsames Beispiel erarbeiten

Funktionen in Matlab. Lehrstuhl für Angewandte Mathematik Sommersemester und 29. Mai 2008

MATLAB. 18. Mai 2010 MATLAB. Eine Einführung. Marina Schneider. Inhalt. Allgemeines zu MATLAB und erste Schritte. Vektoren und Matrizen.

Übung 4: Einführung in die Programmierung mit MATLAB

MATLAB. Mathematik mit Rechnerunterstützung. Dr. Margarita Esponda-Argüero. Sommeruniversität 2005

Matlab: eine kurze Einführung

Markus Grasmair. 8. März 2010

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut

Technische Mechanik mit Computern. Labor-Einführung

Einführung in MATLAB. Grundlagen für die Übungen begleitend zur Vorlesung Neuroinformatik I

Einführung in MATLAB

Tipps und Tricks für Matlab

Quadrieren Sie die Zahlen 3, pi, 1 und i mit Hilfe des Operators ^ und ziehen Sie aus den Ergebnissen jeweils die Wurzel.

1 Operatoren und Werte

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

This image cannot currently be displayed. Java à Matlab. bereitgestellt von Dr. Lukas Faessler 12/4/17

4. Desktop, Betriebssystem u.a.

Einführung in die Programmierung (MA8003)

Übungen zur Einführung in die wissenschaftliche Programmierung. MATLAB Einführung Teil II. Teil I. Teil II

Syntax Variablen. mtrx <- matrix (c(1,2,3,4,5,6),ncol=2,nrow=3) Anzeigen des Types: class(var) Umwandeln mit: as.vector(mtrx)

Datei-Verarbeitung. Peter Sobe 60

MATLAB-Tutorium WS18 Nathalie Marion Frieß

Einführung in Scilab und Scicos

Ulrich Stein

MATLAB Sommersemester 2018 Dr. Ulf Mäder

Numerische Lineare Algebra - Matlab-Blatt 2

Stichworte zu Octave

Programmieren mit statistischer Software

Eine kurze Einführung in GNU Octave (Teil 2)

Einführung in MATLAB / GNU Octave

Dr. Michael Lehn WS 2013/2014 Iris Häcker Klaus Stolle Institut für Numerische Mathematik Universität Ulm

Einführung in Octave. Theorie & Aufgaben

Termin 4: Programmieren in MATLAB

Einführung in Matlab/Octave

Transkript:

Grundlagen der Videotechnik (Angewandte Mediensysteme/Prof. Schuller) Einführung Dipl.-Ing. Marco Niehaus marco.niehaus@tu-ilmenau.de Büro: H 3523 Tel.: 69-1673 25.10.2012 Slide 1 Marco Niehaus Grundlagen der Videotechnik Seminar 1

MatLab / Octave Einführung Installation MatLab Studentenlizenz inklusive wichtiger Toolboxen (89$) http://www.mathworks.de/academia/student_version/ MatLab Bücher http://www.mathworks.de/products/matlab/books.html GNU Octave 3.6.2 Windows Binaries Octave 3.6.2 VisualStudio Installer (Stand 25.10.2012) http://sourceforge.net/projects/octave/files/ Installation von Packages http://sourceforge.net/projects/octave/files/octave%20forge%20packages/individual %20Package%20Releases/ 25.10.2012 Page 2 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Octave Installierte Packages Manuelle Installation 25.10.2012 Page 3 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Octave Hinweis für langsame Plot-Ansicht: 25.10.2012 Page 4 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Octave 25.10.2012 Page 5 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Current Folder Current Folder Beispiel Grafikausgabe Workspace Commands Editor Command History 25.10.2012 Page 6 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Einführung a) MatLab Central http://www.mathworks.com/matlabcentral/ b) => Markieren + F1 c) Command prompt: >> doc int >> help plot >> who >> whos var >> lookfor image >> close all, clear (var od. all), clc 25.10.2012 Page 7 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Speichern/Pfade Abspeichern/Laden der Daten z.b.: >> save (C:\Users\CADuser\Documents\MATLAB\ueb, var) >> save (datafile.txt, var, ASCII) >> load ueb Suchpfade >> path >> addpath C:\Verzeichnis\meinOrdner >> savepath 25.10.2012 Page 8 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Syntax & Grundlagen Commands Syntax (Funktionen) function [output1,output2, ] = command(input1,input2, ); Beispiele: figure, rand, ls Variablen x, data, var etc (keine Typ Angabe! z.b.: int var) Kommentare % mein Kommentar steht hier % und hier etc function [output1,output2, ] = command(input1,input2, ); rand(2); linspace(1,2*pi); %Überladen (Vektor von 1 bis 2*pi) fun = @fft(x); %Funktionshandle 25.10.2012 Page 9 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Syntax & Grundlagen function [output1,output2, ] = command(input1,input2, ); x = rand([1,2]); im = imread( lena1.jpg ); [sizex sizey] = size(im); Geschachtelte Commands: function[output1,output2, ] = command(command2(),input2, ); plot(sort(rand([1 100]))); 25.10.2012 Page 10 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Skalar/Vektoren/Matrizen Skalar x = 5; Vektor v = [ 1 2 3 4 5]; v = v(:); v= v ; v1 = [1:5]; v2 = [1:2:10]; Matrix m = [1 2; 4 5]; Inverse inv(m); Transponierte m ; Matrix Multiplikation m * inv(m); Elementweise a = 1:2:10, b = 1:5 a.* b Betrag y = 5 * 3; abs(y); 25.10.2012 Page 11 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Skalar/Vektoren/Matrizen Datenschachtelung m1v = [a;b]; %vertikal m1h = [a b]; %horizontal Matrixzugriff y = m(1); y = m(1,3); y = m(1,:); %1.Reihe y = m(:,1); %1.Spalte x = rand(10); x(1:2, 3:5); %1+2.Spalte % Werte 3bis5 x(1:2, :); Wert ändern x(3,2) = 7 Wert löschen x(:,1) = []; %1.Spalte Dimension size(x); Eins-/Null-/Einheitsmatrix ones(3); zeros(3); eye(3); Diagonale diag(x); 25.10.2012 Page 12 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Schleifen If / else x = input('enter a number and then enter '); if(x > 9) else end; % This code will only execute if x > 9 disp('number is greater than 9'); % This code will only execute if x ~= 9 disp('number is less than 9'); 25.10.2012 Page 13 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Schleifen for figure; hold on; %hält Grafik geöffnet a = [0 100 0 100]; axis(a); %Achsen for i = 1:10 %Maus/Keyboard Eingabe [x(i) y(i)] = ginput(1); plot(x,y,'*'); axis(a); end 25.10.2012 Page 14 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Schleifen Wichtige Operatoren == gleich ~= ungleich < kleiner > größer <= kleiner gleich >= größer gleich & logisches und logisches oder ~ logisches nicht Weitere Schleifen/Anweisungen while try/catch %Zur Fehlererkennung switch/case tic, toc %Zeitmessung 25.10.2012 Page 15 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Anweisung Switch / case x = input('type in a number and press <enter> '); switch(x) case(1) disp('one'); case(2) disp('two'); case(3) disp('three'); otherwise disp('more than three'); end; 25.10.2012 Page 16 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Scripte & Funktionen Funktionsdefinition m File mit Namen Funktionsname.m Funktionsdeklaration muss in der ersten Zeile stehen! function Funktionsname(input1,input2,...,inputn); function output1=funktionsname(input1,input2,...,inputn); function [output1,...,outputm]=funktionsname(input1,...,inputn); Bsp.: f(x) = x 2 *sin(x) soll berechnet werden function y = f(x); y = x.^2.*sin(x); Speichern unter f.m Aufruf: var = f(2.4); 25.10.2012 Page 18 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Scripte & Funktionen Funktionsdefinition 1 Input / 2 Output function [y, ys] = meinefunktion(x) %Dieser Kommentar ist für die Hilfe %Dieser auch y = sin(x); ys = cos(x); Aufruf: >> [a, b] = meinefunktion(1.3); >> help meinefunktion; 25.10.2012 Page 19 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Ploten/Grafiken x = 0:0.5:6; y = sqrt(x); plot(x,y) x = 0:0.5:6; y = sqrt(x); plot(x,y,'*') plot(x,y); xlabel('zeit'), ylabel('spannung') title('abb. 1') text(-0.8,0.5, 'x*sin(x)^2') Subplot: x=linspace(-pi,pi,30); y = sin(x); z = cos(x); subplot(2,1,1); plot(x,y); subplot(2,1,2); plot(x,z); 25.10.2012 Page 20 Marco Niehaus Grundlagen der Videotechnik Seminar 1

Aufgaben 1. Funktion i. Schreiben Sie eine Funktion myfunc ii. Die Funktion soll zwei input-parameter a=20, b=5 besitzen iii. Die Funktion soll Matrix A=[1,2;5,2] und B=[a,b;7,1] a) Addieren b) Multiplizieren c) Elementweise Multiplizieren d) Invertieren iv. Die Rechenergebnisse sollen in einer ASCII-Datei gespeichert werden. 2. Lesen Sie das Bild lena.bmp ein. i. Wandeln Sie es in ein Graustufenbild (rgb2gray) ii. Stellen Sie das Graustufenbild dar (figure, imshow) iii. Transformieren Sie das Bild in den Frequenzbereich (fft2) iv. Verschieben Sie die zero-frequency Komponente in die Mitte des Plotts (fftshift, plot, subplot) 25.10.2012 Page 22 Marco Niehaus Grundlagen der Videotechnik Seminar 1