1 / 25

Matlab

Matlab. The language of technical computing. Outline. Introduction. C++ vs. Matlab. Functions. Graphing. Matrix. Image processing toolbox. Neural network toolbox. Menu. Introduction. Things we like about Matlab. Things we don’t like about Matlab. Help. Help command. Help svd.

jstrouse
Télécharger la présentation

Matlab

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Matlab The language of technical computing

  2. Outline • Introduction • C++ vs. Matlab • Functions • Graphing • Matrix • Image processing toolbox • Neural network toolbox • Menu

  3. Introduction • Things we like about Matlab • Things we don’t like about Matlab

  4. Help Help command Help svd

  5. C++ vs. Matlab int j; . for (j=1;j<23;j=j+2) { A[4][j]=3*j; } for i = 1:2:N for J = 1:N A(I,J) =(I+J-1); end end

  6. C++ vs. Matlab (cont.) int j; while (j<28) { …….; } while N> 0, E = E + F; F = A*F/N; N = N + 1; end

  7. C++ vs. Matlab (cont.) If (i==j) { A[i][j]=2; } else if (abs(i-j)!=1) { …….; } if i == j A(i,j) = 2; elseif abs(i-j) ~= 1 A(i,j) = -1; else A(i,j) = 0; end

  8. Index to an array can be zero. double, float , int… “;” is very important Index into matrix can’t be negative or zero. Don’t need to worry about the data type “;” not so important C++ vs. Matlab (cont.)

  9. Functions function [mean,stdev] = stat(x) n = length(x); mean = avg(x,n); stdev =… function mean = avg(x,n) mean = sum(x)/n; double* stat(double *x) { …….; return stdev; }

  10. Functions(cont.) void Matrix2Vector( ) { ……; ……; } function Matrix2Vector Av=A(1,:); for i=2:x Av=[Av A(i,:)]; end Av=Av';

  11. Functions(cont.) void AddF(int i); int main() { …… addF(i); } void AddF(int i) { i=i+1; } File name testFunR.m function testFun i=2; AddF(i); i function AddF(i) i=i+1; A function declaration cannot appear within a script M-file

  12. Graphing To make a graph of y = sin(t) on the interval t = 0 to t = 10 In file PlotTest.m t = 0:.3:10; y = sin(t); plot(t,y,’r’) ;

  13. Graphing(cont.) graphing the fuction z(x,y) = x exp( - x^2 - y^2) In file MeshTest.m [x,y] = meshgrid (-2:.2:2, -2:.2:2); z = x .* exp(-x.^2 - y.^2); mesh(z)

  14. Graphing(cont.) Multiple windows in one figure SubplotTest.m t = 0:.3:10; y = sin(t); z= cos(t); subplot(2,1,1); plot(t,y) ; subplot(2,1,2); plot(t,z);

  15. Graphing(cont.) Multiple windows in one figure SubplotTest.m t = 0:.3:10; y = sin(t); z= cos(t); subplot(1,2,1); plot(t,y) ; subplot(1,2,2); plot(t,z);

  16. Matrix >> A=[1 2 3;3 2 1] A = 1 2 3 3 2 1 >>b=A(1,:) b = 1 2 3 >> B=A' B = 1 3 2 2 3 1

  17. Matrix Manipulation • Singular value decomposition---[U,S,V]=svd(A) • Eigenvalues and eigenvectors---[V,D] = eig(A) • Orthogonal-triangular decomposition- [Q,R]=qr(A) • LU factorization --[L,U] = lu(A) • Matrix rank -- a=rank(A) • Condition number -- a=cond(A)

  18. Image Processing Toolbox • Read an image ---- I=imread(filename) • Display an image ---- imshow(I) • Write an image ---- imwrite(I, filename,FMT)

  19. Image Processing Toolbox(cont.) ImageRWD.m function ImageTest Itif=imread('image1.tif'); imwrite(Itif,'image1.bmp','bmp'); Ibmp=imread('image1.bmp'); subplot(1,2,1); imshow(Itif); subplot(1,2,2); imshow(Ibmp);

  20. Image Processing Toolbox(cont.) EdgeTest.m function EdgeTest Itif=imread('image1.tif'); B=edge(Itif,'canny'); subplot (1,2,1); imshow(Itif); subplot(1,2,2); imshow(B);

  21. Image Processing Toolbox(cont.) • Pixel values and statistics --corr2,imhist… • Image enhancement – histeq, medfilt2… • Linear filter -- conv2, filter2… • Image transform -- dct2, fft… • Binary image Op. --- dilate, erode…

  22. Neural Network • Feed-forward backpropagatoin • Hopfield Networks • Self-organizing maps • Radial Basis networks • ………………

  23. Neural Networks(cont.) • Create feed-forward NN • Net=newff([-1 2;0 5],[31],{‘tansig’,’purelin’},’traingd’); • Neural Model – tansig, logsig, purelin. • Training method –traingd, traingdm. • Training • [net,tr]=train(net,p,t) • net.trainParam.????; “show”, “lr”, “epochs”, “goal” • Simulation • A=sim(net,q);

  24. Menu function MenuDemo cell_list = {}; fig_number = 1; title_figure = 'Menu Demo'; cell_list{1,1} = {'Plot','PlotTest;'}; cell_list{1,2} = {'Mesh','MeshTest;'}; cell_list{1,3} = {'Image','ImageRWD;'}; cell_list{1,4} = {'Image Edge','EdgeTest;'}; cell_list{2,1} = {'????','PlotTest;'}; cell_list{2,2} = {'????','PlotTest;'}; cell_list{2,3} = {'????','PlotTest;'}; cell_list{2,4} = {'Exit',['disp(''Bye. To run again, type "menu".''); close(' num2str(fig_number) ');']}; show_window(cell_list,fig_number,title_figure,120,20,3);

  25. Menu (cont.) • cell_list{1,1} = {‘name',‘function;'}; • show_window(cell_list,fig_number,title_figure,x,y,z);

More Related