Introduction to Matlab
Instructor: Sanja Fidler
Presented by: KARTHIKSANKAR P
Outline
1. Introduction
1. Overview
2. Variables
3. Matrix
4. Misc.
2. Image Processing with Matlab
3. References
• Matrix Laboratory
– Dynamically typed language
• Variables require no declaration
• Creation by initialization (x=10;)
– All variables are treated as matrices
• Scalar: 1×1 matrix; Vector: N×1 or 1×N matrix
• Calculations are much faster
• Advantages
– Fast implementation and debugging
– Natural matrix operation
– Powerful image processing toolbox
What & Why
Matlab Main Screen
 Command Window
 type commands
 Current Directory
 View folders and m-files
 Workspace
 View variables
 Double click on a variable
to see it in the Array Editor
 Command History
 view past commands
 save a whole session
using diary
Outline
1. Introduction
1. Overview
2. Variables
3. Matrix
4. Misc.
2. Image Processing with Matlab
3. References
Variables
Defining variables
Variables are created when they are used
All variables are created as matrices with “some” type
(unless specified)
int a;
a=1;
double b;
b=2+4;
>>a=1;
>>b=2+4;
C/C++ Matlab
a = 1;
b = false;
Variables
Variables
A = [1, 2, 3]
B = [1,2,3;4,5,6]
C=[1 2 3;4 5 6;7 8 9]
D=[1 ; 2 ; 3]
E=[1 2 3]’
Variables
Variables
C = ‘Hello World!';
Variables
Variables
A = zeros(3);
B = ones(5);
C = rand(100,2);
D = eye(20);
E = sprintf('%dn',9);
Outline
1. Introduction
1. Overview
2. Variables
3. Matrix
4. Misc.
2. Image Processing with Matlab
3. References
Matrix Index
Matrix indices begin from 1 (not 0!!!)
Matrix indices must be positive integers
Column-Major Order
Matrix Index
>> A(2,2:3)
ans =
5 6
>> A(2,1:end)
ans =
4 5 6
>> A(2,:)
ans =
4 5 6
>> A(2,1:2:3)
ans =
4 6
>> A(2,[1 3])
ans =
4 6
>> A(:)
ans =
1
4
7
2
5
8
3
6
9
Accessing Elements
A = rand(4);
A(2,3)
A(:,2)
A(end,:)
A([1,2],[1,3])
A(1:2,3:end)
http://www.mathworks.com/company/newsletters/articles/matrix-indexing-
in-matlab.html
Matrix Index
Matrix Operations
+ addition
- subtraction
* multiplication
^ power
‘ complex conjugate transpose
Given A and B:
Addition Subtraction Product Transpose
Slide credit: İ.Yücel Özbek
Matrix Operations
.* element-wise multiplication
./ element-wise division
.^element-wise power
Slide credit: İ.Yücel Özbek
Matrix Operations
A = [1 2 3; 5 1 4; 3 2 1]
A =
1 2 3
5 1 4
3 2 -1
y = A(3 ,:)
y=
3 4 -1
b = x .* y
b=
3 8 -3
c = x . / y
c=
0.33 0.5 -3
d = x .^y
d=
1 16 0.33
x = A(1,:)
x=
1 2 3
Slide credit: İ.Yücel Özbek
Matrix Operations
A/B Solve linear equation xA=B for x
AB Solve linear equation Ax=B for x
Matrix Operations
Matrix Concatenation
X=[1 2], Y=[3 4]
Outline
1. Introduction
1. Overview
2. Variables
3. Matrix
4. Misc.
2. Image Processing with Matlab
3. References
Strings
A =‘vision and geometry’
strfind(A,‘geometry')
strcmp(A,'computer vision')
B = strcat(A,' 12345')
c = [A,' 12345']
D = sprintf('I am %02d years old.n',9)
int2str, str2num, str2double
http://www.mathworks.com/help/matlab/ref/strings.html
Cell and Structure
• Cells
○ a = {}; a = cell(1)
○ b = {1,2,3}
○ c = {{1,2},2,{3}}
○ D = {'cat','dog','sheep','cow'}
○ E = {'cat',4}
• Structures
○ A = struct('name','1.jpg','height',640,'width',480);
○ b.name = '1.jpg‘
http://www.mathworks.com/help/matlab/matlab_prog/cell-vs-struct-arrays.html
Operators
== Equal to
~= Not equal to
< Strictly smaller
> Strictly greater
<= Smaller than or equal to
>= Greater than equal to
& And operator
| Or operator
Flow Control
• if, for, while ….
if (a<3)
Some Matlab Commands;
elseif (b~=5)
Some Matlab Commands;
end
for ii=1:100
Some Matlab Commands;
end
for j=1:3:200
Some Matlab Commands;
end
for k=[0.1 0.3 -13 12 7 -9.3]
Some Matlab Commands;
end
while ((a>3) & (b==5))
Some Matlab Commands;
end
http://www.mathworks.com/help/matlab/control-flow.html
Slide credit: İ.Yücel Özbek
Vectorization
Optimize your code for Matrix operations
Examples
In other languages:
In MATLAB:
http://www.mathworks.com/help/matlab/matlab_prog/vectorization.html
tic; i = 0;
for t = 0:.001:1000
i = i + 1;
y(i) = sin(t);
end; toc;
tic; t = 0:.001:1000;
y = sin(t); toc;
Elapsed time is 0.509381 seconds.
Elapsed time is 0.011212 seconds.
M-File
Click to create
a new M-File
• A text file containing script or function
• Extension “.m”
Functions
For example,
Implement your own function Add3()
B = Add3(A)
How?
Create a M-file with the function name
Use the function definition at the beginning
function out1=functionname(in1)
function out1=functionname(in1,in2,in3)
function [out1,out2]=functionname(in1,in2)
Functions
Debugging
Breakpoints
Plotting
Plotting functions
plot, plot3d, bar, area, hist, contour, mesh
x = -pi:.1:pi;
y = sin(x);
plot(x,y)
Help & Doc
help functionName
doc functionName
Outline
1. Introduction
1. Overview
2. Variables
3. Matrix
4. Misc.
2. Image Processing with Matlab
3. References
Image Data Structure
• Image as matrices
– Gray image: m × n
– RGB image: m × n × 3
• Format:
– [0, 255] uint8
– [0, 1] double
I(m,n,1)
I(1,1,1)
I(1,1,3)
I(m,n,3)
n
m
I(1,n,3)
Image I/O/Display
% Read image (support bmp, jpg, png, ppm, etc)
I = imread('lena.jpg');
% Save image
imwrite(I, 'lena_out.jpg');
% Display image
imshow(I);
% Alternatives to imshow
imagesc(I);
imtool(I);
image(I);
Image Conversions
% Type conversion
I1 = im2double(I);
I2 = im2uint8(I);
% Convert from RGB to grayscale
I3 = rgb2gray(I);
Image Operations
% Resize image as 60% smaller
Ires = imresize(I, 0.6);
% Crop image from user’s input
imshow(I);
Rect = getrect;
Icrp = imcrop(I, Rect);
% Rotate image by 45 degrees
Irot = imrotate(I, 45);
% Affine transformation
A = [1 0 0; .5 1 0; 0 0 1];
tform = maketform('affine', A);
Itran = imtransform(I, tform);
Image Filtering / Convolution
• A filter (or called mask, kernel, neighborhood) is N×N matrix.
• Filters help us perform different kinds of operations:
Blurring Sharpening Edge Denoise
Outline
1. Introduction
1. Overview
2. Variables
3. Matrix
4. Misc.
2. Image Processing with Matlab
3. References
References
More tutorials
• Matlab course @ ETHZ (http://goo.gl/W2jmZJ)
• Introductory Digital Processing @ IIT (http://goo.gl/U0osD2)
Open source CV algorithms with Matlab interface
• VLFeat (http://www.vlfeat.org/)
• Piotr Dollar’s toolbox (http://vision.ucsd.edu/~pdollar/toolbox/)
• Mexopencv (http://www.cs.stonybrook.edu/~kyamagu/mexopencv/)
− Matlab Documentation
• http://www.mathworks.com/help/matlab/
− Cheat Sheets
• http://web.mit.edu/18.06/www/Spring09/matlab-cheatsheet.pdf
• http://www.geog.ucsb.edu/~pingel/210b/general/matlab_refcard.pdf
References
Thank you!

More Related Content

PDF
tutorial1.pdf
PPTX
MATLAB Workshop for project and research
PPTX
Matlab-1.pptx
PPT
Introduction to matlab
PDF
Image processing
PDF
Introduction to Matlab.pdf
PPT
MATLAB/SIMULINK for Engineering Applications day 2:Introduction to simulink
PPTX
Mat lab workshop
tutorial1.pdf
MATLAB Workshop for project and research
Matlab-1.pptx
Introduction to matlab
Image processing
Introduction to Matlab.pdf
MATLAB/SIMULINK for Engineering Applications day 2:Introduction to simulink
Mat lab workshop

Similar to MATLAB - PRESENTATION for PG studentspdf (20)

PPT
MATLAB-Introd.ppt
PPTX
1. Introduction to Computing - MATLAB.pptx
PPT
Matlab Tutorial.ppt
PPTX
Introduction to MATLAB Programming for Engineers
PPT
Introduction of MatLab
PDF
Lecture1_computer vision-2023.pdf
PPT
Introduction to matlab
PPTX
introduction to matlab.pptx
PPT
Introduction to matlab
PPT
473431331-Matlab-Simulink-Tutorial-ppt.ppt
PPT
4413-lecture-09 Introduction Matlab lecture .ppt
PPTX
Matlab_Harshal.pptx
PPT
Introduction to Matlab - Basic Functions
PDF
Tutorialmatlab kurniawan.s
PDF
Tutorial matlab
PPTX
Introduction to matlab lecture 4 of 4
PPTX
Mat lab day 1
PPTX
Clojure for Data Science
PPT
Introduction to Matlab Chapter One OK.ppt
PPT
Matlab_Simulink_Tutorial.ppt
MATLAB-Introd.ppt
1. Introduction to Computing - MATLAB.pptx
Matlab Tutorial.ppt
Introduction to MATLAB Programming for Engineers
Introduction of MatLab
Lecture1_computer vision-2023.pdf
Introduction to matlab
introduction to matlab.pptx
Introduction to matlab
473431331-Matlab-Simulink-Tutorial-ppt.ppt
4413-lecture-09 Introduction Matlab lecture .ppt
Matlab_Harshal.pptx
Introduction to Matlab - Basic Functions
Tutorialmatlab kurniawan.s
Tutorial matlab
Introduction to matlab lecture 4 of 4
Mat lab day 1
Clojure for Data Science
Introduction to Matlab Chapter One OK.ppt
Matlab_Simulink_Tutorial.ppt

More from Karthik537368 (9)

PDF
Ugougougougougpihpihpiypiiiiypypifhfx.pdf
PDF
white_background_150_slides.ditfcgjcigviyfiyfykf
PPT
electrostatics_3.ppthkuhguiyoyoyohyoliyo8y
PPT
2_current_electricity_1.pptnefipnipdannaffkn
PPT
2_current_electricity_1.pptcdasdDdDddddddD
PPT
2_current_electricity_2.pptADOFBAKJBFFFF
PPT
Power point slides for momentum, Impullse conservation of memntum
PPT
Motion in One Dimension - Kinematics ppt
PPT
INTRODUCTION TO MATLAB for PG students.ppt
Ugougougougougpihpihpiypiiiiypypifhfx.pdf
white_background_150_slides.ditfcgjcigviyfiyfykf
electrostatics_3.ppthkuhguiyoyoyohyoliyo8y
2_current_electricity_1.pptnefipnipdannaffkn
2_current_electricity_1.pptcdasdDdDddddddD
2_current_electricity_2.pptADOFBAKJBFFFF
Power point slides for momentum, Impullse conservation of memntum
Motion in One Dimension - Kinematics ppt
INTRODUCTION TO MATLAB for PG students.ppt

Recently uploaded (20)

PDF
Environmental Education MCQ BD2EE - Share Source.pdf
PDF
Weekly quiz Compilation Jan -July 25.pdf
PPTX
Share_Module_2_Power_conflict_and_negotiation.pptx
PDF
What if we spent less time fighting change, and more time building what’s rig...
PDF
Hazard Identification & Risk Assessment .pdf
PPTX
A powerpoint presentation on the Revised K-10 Science Shaping Paper
PPTX
Unit 4 Computer Architecture Multicore Processor.pptx
PDF
1.3 FINAL REVISED K-10 PE and Health CG 2023 Grades 4-10 (1).pdf
PDF
Trump Administration's workforce development strategy
PDF
LDMMIA Reiki Yoga Finals Review Spring Summer
PPTX
History, Philosophy and sociology of education (1).pptx
 
PDF
CISA (Certified Information Systems Auditor) Domain-Wise Summary.pdf
PPTX
CHAPTER IV. MAN AND BIOSPHERE AND ITS TOTALITY.pptx
PDF
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
PDF
Paper A Mock Exam 9_ Attempt review.pdf.
PDF
Practical Manual AGRO-233 Principles and Practices of Natural Farming
PDF
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
PDF
My India Quiz Book_20210205121199924.pdf
PPTX
ELIAS-SEZIURE AND EPilepsy semmioan session.pptx
Environmental Education MCQ BD2EE - Share Source.pdf
Weekly quiz Compilation Jan -July 25.pdf
Share_Module_2_Power_conflict_and_negotiation.pptx
What if we spent less time fighting change, and more time building what’s rig...
Hazard Identification & Risk Assessment .pdf
A powerpoint presentation on the Revised K-10 Science Shaping Paper
Unit 4 Computer Architecture Multicore Processor.pptx
1.3 FINAL REVISED K-10 PE and Health CG 2023 Grades 4-10 (1).pdf
Trump Administration's workforce development strategy
LDMMIA Reiki Yoga Finals Review Spring Summer
History, Philosophy and sociology of education (1).pptx
 
CISA (Certified Information Systems Auditor) Domain-Wise Summary.pdf
CHAPTER IV. MAN AND BIOSPHERE AND ITS TOTALITY.pptx
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
Paper A Mock Exam 9_ Attempt review.pdf.
Practical Manual AGRO-233 Principles and Practices of Natural Farming
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
My India Quiz Book_20210205121199924.pdf
ELIAS-SEZIURE AND EPilepsy semmioan session.pptx

MATLAB - PRESENTATION for PG studentspdf

  • 1. Introduction to Matlab Instructor: Sanja Fidler Presented by: KARTHIKSANKAR P
  • 2. Outline 1. Introduction 1. Overview 2. Variables 3. Matrix 4. Misc. 2. Image Processing with Matlab 3. References
  • 3. • Matrix Laboratory – Dynamically typed language • Variables require no declaration • Creation by initialization (x=10;) – All variables are treated as matrices • Scalar: 1×1 matrix; Vector: N×1 or 1×N matrix • Calculations are much faster • Advantages – Fast implementation and debugging – Natural matrix operation – Powerful image processing toolbox What & Why
  • 4. Matlab Main Screen  Command Window  type commands  Current Directory  View folders and m-files  Workspace  View variables  Double click on a variable to see it in the Array Editor  Command History  view past commands  save a whole session using diary
  • 5. Outline 1. Introduction 1. Overview 2. Variables 3. Matrix 4. Misc. 2. Image Processing with Matlab 3. References
  • 6. Variables Defining variables Variables are created when they are used All variables are created as matrices with “some” type (unless specified) int a; a=1; double b; b=2+4; >>a=1; >>b=2+4; C/C++ Matlab
  • 7. a = 1; b = false; Variables
  • 8. Variables A = [1, 2, 3] B = [1,2,3;4,5,6] C=[1 2 3;4 5 6;7 8 9]
  • 9. D=[1 ; 2 ; 3] E=[1 2 3]’ Variables
  • 11. C = ‘Hello World!'; Variables
  • 12. Variables A = zeros(3); B = ones(5); C = rand(100,2); D = eye(20); E = sprintf('%dn',9);
  • 13. Outline 1. Introduction 1. Overview 2. Variables 3. Matrix 4. Misc. 2. Image Processing with Matlab 3. References
  • 14. Matrix Index Matrix indices begin from 1 (not 0!!!) Matrix indices must be positive integers Column-Major Order
  • 15. Matrix Index >> A(2,2:3) ans = 5 6 >> A(2,1:end) ans = 4 5 6 >> A(2,:) ans = 4 5 6 >> A(2,1:2:3) ans = 4 6 >> A(2,[1 3]) ans = 4 6 >> A(:) ans = 1 4 7 2 5 8 3 6 9
  • 16. Accessing Elements A = rand(4); A(2,3) A(:,2) A(end,:) A([1,2],[1,3]) A(1:2,3:end) http://www.mathworks.com/company/newsletters/articles/matrix-indexing- in-matlab.html Matrix Index
  • 17. Matrix Operations + addition - subtraction * multiplication ^ power ‘ complex conjugate transpose
  • 18. Given A and B: Addition Subtraction Product Transpose Slide credit: İ.YĂźcel Özbek Matrix Operations
  • 19. .* element-wise multiplication ./ element-wise division .^element-wise power Slide credit: İ.YĂźcel Özbek Matrix Operations
  • 20. A = [1 2 3; 5 1 4; 3 2 1] A = 1 2 3 5 1 4 3 2 -1 y = A(3 ,:) y= 3 4 -1 b = x .* y b= 3 8 -3 c = x . / y c= 0.33 0.5 -3 d = x .^y d= 1 16 0.33 x = A(1,:) x= 1 2 3 Slide credit: İ.YĂźcel Özbek Matrix Operations
  • 21. A/B Solve linear equation xA=B for x AB Solve linear equation Ax=B for x Matrix Operations
  • 23. Outline 1. Introduction 1. Overview 2. Variables 3. Matrix 4. Misc. 2. Image Processing with Matlab 3. References
  • 24. Strings A =‘vision and geometry’ strfind(A,‘geometry') strcmp(A,'computer vision') B = strcat(A,' 12345') c = [A,' 12345'] D = sprintf('I am %02d years old.n',9) int2str, str2num, str2double http://www.mathworks.com/help/matlab/ref/strings.html
  • 25. Cell and Structure • Cells ○ a = {}; a = cell(1) ○ b = {1,2,3} ○ c = {{1,2},2,{3}} ○ D = {'cat','dog','sheep','cow'} ○ E = {'cat',4} • Structures ○ A = struct('name','1.jpg','height',640,'width',480); ○ b.name = '1.jpg‘ http://www.mathworks.com/help/matlab/matlab_prog/cell-vs-struct-arrays.html
  • 26. Operators == Equal to ~= Not equal to < Strictly smaller > Strictly greater <= Smaller than or equal to >= Greater than equal to & And operator | Or operator
  • 27. Flow Control • if, for, while …. if (a<3) Some Matlab Commands; elseif (b~=5) Some Matlab Commands; end for ii=1:100 Some Matlab Commands; end for j=1:3:200 Some Matlab Commands; end for k=[0.1 0.3 -13 12 7 -9.3] Some Matlab Commands; end while ((a>3) & (b==5)) Some Matlab Commands; end http://www.mathworks.com/help/matlab/control-flow.html Slide credit: İ.YĂźcel Özbek
  • 28. Vectorization Optimize your code for Matrix operations Examples In other languages: In MATLAB: http://www.mathworks.com/help/matlab/matlab_prog/vectorization.html tic; i = 0; for t = 0:.001:1000 i = i + 1; y(i) = sin(t); end; toc; tic; t = 0:.001:1000; y = sin(t); toc; Elapsed time is 0.509381 seconds. Elapsed time is 0.011212 seconds.
  • 29. M-File Click to create a new M-File • A text file containing script or function • Extension “.m”
  • 30. Functions For example, Implement your own function Add3() B = Add3(A) How? Create a M-file with the function name Use the function definition at the beginning function out1=functionname(in1) function out1=functionname(in1,in2,in3) function [out1,out2]=functionname(in1,in2)
  • 33. Plotting Plotting functions plot, plot3d, bar, area, hist, contour, mesh x = -pi:.1:pi; y = sin(x); plot(x,y)
  • 34. Help & Doc help functionName doc functionName
  • 35. Outline 1. Introduction 1. Overview 2. Variables 3. Matrix 4. Misc. 2. Image Processing with Matlab 3. References
  • 36. Image Data Structure • Image as matrices – Gray image: m × n – RGB image: m × n × 3 • Format: – [0, 255] uint8 – [0, 1] double I(m,n,1) I(1,1,1) I(1,1,3) I(m,n,3) n m I(1,n,3)
  • 37. Image I/O/Display % Read image (support bmp, jpg, png, ppm, etc) I = imread('lena.jpg'); % Save image imwrite(I, 'lena_out.jpg'); % Display image imshow(I); % Alternatives to imshow imagesc(I); imtool(I); image(I);
  • 38. Image Conversions % Type conversion I1 = im2double(I); I2 = im2uint8(I); % Convert from RGB to grayscale I3 = rgb2gray(I);
  • 39. Image Operations % Resize image as 60% smaller Ires = imresize(I, 0.6); % Crop image from user’s input imshow(I); Rect = getrect; Icrp = imcrop(I, Rect); % Rotate image by 45 degrees Irot = imrotate(I, 45); % Affine transformation A = [1 0 0; .5 1 0; 0 0 1]; tform = maketform('affine', A); Itran = imtransform(I, tform);
  • 40. Image Filtering / Convolution • A filter (or called mask, kernel, neighborhood) is N×N matrix. • Filters help us perform different kinds of operations: Blurring Sharpening Edge Denoise
  • 41. Outline 1. Introduction 1. Overview 2. Variables 3. Matrix 4. Misc. 2. Image Processing with Matlab 3. References
  • 42. References More tutorials • Matlab course @ ETHZ (http://goo.gl/W2jmZJ) • Introductory Digital Processing @ IIT (http://goo.gl/U0osD2) Open source CV algorithms with Matlab interface • VLFeat (http://www.vlfeat.org/) • Piotr Dollar’s toolbox (http://vision.ucsd.edu/~pdollar/toolbox/) • Mexopencv (http://www.cs.stonybrook.edu/~kyamagu/mexopencv/)
  • 43. − Matlab Documentation • http://www.mathworks.com/help/matlab/ − Cheat Sheets • http://web.mit.edu/18.06/www/Spring09/matlab-cheatsheet.pdf • http://www.geog.ucsb.edu/~pingel/210b/general/matlab_refcard.pdf References