370 likes | 380 Views
This lecture covers topics such as creating and accessing two-dimensional arrays, performing matrix operations, analyzing circuits using Matlab, and simple image processing examples.
E N D
Lecture 6 Sept 15, 09 • Goals: • two-dimensional arrays • matrix operations • circuit analysis using Matlab • image processing – simple examples
4.2. Matrices Example: The following 2 x 3 matrix (matA) can be created in Matlab as follows: Dimension of a matrix can be accessed by function called size.
Matrix operations Matrix addition, multiplication, inverse, determinant etc.
Matrix operations Matrix addition, multiplication, inverse, determinant, transpose etc.
Exercise: Solve a linear system of equations: 3x + 5y – 6z= 11 4x – 6y + z = 9 -2x + 3y + 5z = –13
4.3. Mixed Data Types Structure is variable that can hold a group of data (of different types). Example:
Array of structures Example:
Cell arrays A cell array is like a vector, except that each member need not be all of the same type.
Images as arrays Numerical representation of array (gray scale image) Visual representation
Selecting a subimage Just like we can copy a part of an array into another array, we can copy a part of one image and create a new image.
Saving images in different formats • Image formats: • jpeg, bmp, png etc. • >> imwrite(I, ‘king.bmp’) • will save I in bmp format.
image rotation Exercise: Write a one-line statement in Matlab that will rotate an image by 180 degrees.
image rotation Exercise: Write a one-line statement in Matlab that will rotate an image by 180 degrees.
image rotation Exercise: Write a one-line statement in Matlab that will rotate an image by 180 degrees. >> J = I(size(I,1):-1:1, :, :);
Discussions and exercises, Chapter 4 Exercise 4.1
Exercise 4.2 • Write statements to do the following operations on a vector x: • Return the odd indexed elements.
Exercise 4.2 Write statements to do the following operations on a vector x: 2) Return the first half of x.
Exercise 4.2 Write statements to do the following operations on a vector x: 3) Return the vector in the reverse order.
Exercise 4.3 Given a vector v, and a vector k of indices, write a one or two statement code in Matlab that removes the elements of v in positions specified by k. Example: >> v = [1, 3, 5, 7, 11, 9, 19] >> k = [2, 4, 5] >> < your code here> >> v ans = 1, 5, 9, 19
Exercise 4.3 Given a vector v, and a vector k of indices, write a one or two statement code in Matlab that removes the elements of v in positions specified by k.
Exercise 4.4 what does Matlab output for the following commands? 1) 6 ~= 1 : 10 2) (6 ~= 1) : 10
Exercise 4.4 what does Matlab output for the following commands? 1) 6 ~= 1 : 10 2) (6 ~= 1) : 10
Exercise 4.5. (This is a bit tricky, especially without using a loop construct like while or for.) Write a statement to return the elements of a vector randomly shuffled. Hint provided is a useful one. First understand how sort function works.
Reshaping Arrays • Arrays are actually stored in column order in Matlab. So internally, a 2 × 3 array is stored as a column vector:A(1,1) A(2,1) A(1,2) A(2,2) A(1,3) A(2,3) • Any n × m array can be reshaped into any p × q array as long as n*m = p*q using the reshape function.
Summary This chapter introduced you to vectors and arrays. For each collection, you saw how to: ■ Create them by concatenation and a variety of special-purpose functions ■ Access and remove elements, rows, or columns ■ Perform mathematical and logical operations on them ■ Apply library functions, including those that summarize whole columns or rows ■ Move arbitrary selected rows and columns from one array to another ■ image – how to create them, open them, change etc.