utp pdiva_lab2 mat_lab basico

23
Procesamiento de Imágenes y Visión Artificial (PS02) Facultad de Ingeniería Electrónica y Mecatrónica Laboratorio: 2 Ing. José C. Benítez P. MatLab básico

Upload: jcbenitezp

Post on 03-Jul-2015

960 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Utp pdiva_lab2 mat_lab basico

Procesamiento de Imágenes y Visión Artificial

(PS02)

Facultad de Ingeniería Electrónica y Mecatrónica

Laboratorio: 2

Ing. José C. Benítez P.

MatLab básico

Page 2: Utp pdiva_lab2 mat_lab basico

Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 2

Laboratorio 2. Temas

MatLab básico• Objetivo

• Introducción

• Fundamentos

• Guardando el workspace

• Matrices

• Aritmética matricial

• Funciones Matriciales

• Gráficos

• Funciones y scripts

Page 3: Utp pdiva_lab2 mat_lab basico

Objetivo

• Afianzar los conocimientos de

los alumnos en el uso de la

herramienta de calculo

matricial, MatLab.

• Al terminar el laboratorio el

alumno será capaz de

demostrar destrezas en el uso

de las funcionalidades básicas

necesarias para Procesamiento

Digital de Señales

3Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

Page 4: Utp pdiva_lab2 mat_lab basico

Introducción

4Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

• Matlab comenzó como el programa “MATrix LABoratory”

que pretendía crear un acceso interactivo y poderoso a las

bibliotecas Linpack y Eispack. Estas son paquetes de

programación sumamente poderosos para la solución de

ecuaciones lineales y problemas de eigenvalores.

• El objetivo de MatLab es el de permitir a estudiantes,

científicos e ingenieros el uso de técnicas basadas en el

álgebra lineal (matrices) para la solución de problemas,

usando lo más novedoso en programación, sin tener que

escribir programas en los lenguajes tradicionales como C.

Page 5: Utp pdiva_lab2 mat_lab basico

Introducción

5Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

• Nuevas funciones han sido añadidas conforme el tiempo

ha pasado permitiendo en la actualidad tener funciones

específicas para muy diversas áreas del conocimiento

humano. Tal es así que tiene una Caja de herramientas

(Toolbox) para Procesamiento Digital de Señales.

• MatLab se encuentra desarrollado para diversas

plataformas de cómputo, desde computadoras personales

PC hasta Macintosh, Sun y SG; y para diversos sistemas

operativos; Windows, Linux, OSX, Solaris, etc..

Page 6: Utp pdiva_lab2 mat_lab basico

Fundamentos. Ejercicio 1

6Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>>

>> quit

>> 2+3

>> 3*4,4^2

>> 2+3*4^2

>> 2+3*4^2/2

>> (2+3*4^2)/2

>> x = 3

>> y = x^2

>> y/x

>> ans, z=2*ans, ans

>> who, whos

Ejecute en la ventana de comandos

las siguientes expresiones y luego

en un archivo M-File comentar cada

uno de las expresiones ingresadas.

Page 7: Utp pdiva_lab2 mat_lab basico

Fundamentos. Ejercicio 1

7Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> a=sqrt(2)

>> format long, b=sqrt(2)

>> a-b

>> format short

>> help

>> help general

>> lookfor

>> helpwin

Page 8: Utp pdiva_lab2 mat_lab basico

Guardando el Workspace. Ejercicio 2

8Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> diary lab2.txt

>> save x.value x –ascii

>> save milab2

>> load milab2

Existen además otros archivos que utiliza Matlab:

• Unos son los archivos M-file del tipo ”archivo.m” que son

archivos de texto que contienen funciones; éstos son editables

y ejecutables.

• Los otros son los archivos ”archivos.mex” que son funciones

sólo ejecutables y se encuentran en código de máquina.

• Otros son los archivos ”archivos.mat” que son archivos que

contienen lo realizado en una sesión con MatLab.

Ejecute en la ventana de comandos

las siguientes expresiones y luego

en un archivo M-File comentar cada

uno de las expresiones ingresadas.

Page 9: Utp pdiva_lab2 mat_lab basico

Matrices. Ejercicio 3

9Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> a = [1,2,3; 4,5,6]

>> a(1,2), a(2,3)

>> a(2,3) = 10

>> a’

>> b=[1+i 2 + 2*i 3 - 3*i], b’

>> [a; a; a]

>> [a, a, a]

>> b=b’

>> c = [a; 7,8,9]

>> [a’, b]

>> [ [a; a; a], [b; b] ]

Ejecute en la ventana de comandos

las siguientes expresiones y luego

en un archivo M-File comentar cada

uno de las expresiones ingresadas.

Page 10: Utp pdiva_lab2 mat_lab basico

Matrices. Ejercicio 4

10Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> rand(1,3), rand(2)

>> zeros(3)

>> ones(3,2)

>> eye(3), eye(2,3)

>> magic(3)

>> hilb(5)

>> s = zeros(20,25);

>> help elmat

>> help specmat

Ejecute en la ventana de comandos

las siguientes expresiones y luego

en un archivo M-File comentar cada

uno de las expresiones ingresadas.

Page 11: Utp pdiva_lab2 mat_lab basico

Matrices. Ejercicio 5

11Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> -3:3

>> x = -3 : .3 : 3

>> x(2:12)

>> x(9:-2:1)

>> x=10:100;

>> x(40:5:60)

>> a = [1:6 ; 2:7 ; 4:9]

>> a, a(1,:), a(:,2)

>> s = rand(10,5); s(6:7, 2:4)

Ejecute en la ventana de

comandos las siguientes

expresiones y luego en un archivo

M-File comentar cada uno de las

expresiones ingresadas.

Page 12: Utp pdiva_lab2 mat_lab basico

Matrices. Ejercicio 6

12Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> for i=1:10,...

>> for j=1:10,...

>> t(i,j) = i/j;...

>> end;...

>> end;...

>> t

Ejecute en la ventana de comandos las

siguientes expresiones y luego en un

archivo M-File comentar cada uno de

las expresiones ingresadas.

Page 13: Utp pdiva_lab2 mat_lab basico

Aritmética Matricial. Ejercicio 7

13Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> a = [1 2 3 ; 4 5 6 ; 7 8 10], b = [1 1 1]’

>> 2*a, a/4

>> a + [b,b,b]

>> a+1, b+2

>> a*b, b*a

>> b’*a

>> a*a’ , a’ *a

>> b’ *b, b*b’

>> a^2, a.^2

>> a.*a, b.*b

>> 1./a

>> 1./a.^2

Ejecute en la ventana de

comandos las siguientes

expresiones y luego en un

archivo M-File comentar

cada uno de las expresiones

ingresadas.

Page 14: Utp pdiva_lab2 mat_lab basico

Aritmética Matricial. Ejercicio 8

14Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> x = a\b

>> a*x, a*x-b

>> b = [1 1 0]’

>> x = a\b

>> a*x, a*x-b

>> a(3,3) = 9

>> x = b/a

Ejecute en la ventana de comandos las

siguientes expresiones y luego en un

archivo M-File comentar cada uno de las

expresiones ingresadas.

Page 15: Utp pdiva_lab2 mat_lab basico

Funciones Matriciales. Ejercicio 9

15Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> det(a)

>> rank(a)

>> norm(a)

>> null(a)

>> a(3,3) = 10

>> h=hilb(5)

>> cond(a)

>> inv(h)

>> eig(h)

>> help eps

>> eps

Ejecute en la ventana de comandos las

siguientes expresiones y luego en un

archivo M-File comentar cada uno de las

expresiones ingresadas.

Page 16: Utp pdiva_lab2 mat_lab basico

Gráficos. Ejercicio 10

16Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> x = -10:.1:10;

>> plot( x.^2 )

>> figure

>> plot( x, x.^2 )

>> figure

>> plot( x.^2, x )

>> plot((-10:.1:10).^2)

>> plot( x, x.*sin(x) )

>> plot( x.*cos(x), x.*sin(x) )

>> comet( x.*cos(x), x.*sin(x) )

>> plot3(x.*cos(x),x.*sin(x),x)

Ejecute en la ventana de

comandos las siguientes

expresiones y luego en un

archivo M-File comentar cada

uno de las expresiones

ingresadas.

Page 17: Utp pdiva_lab2 mat_lab basico

Gráficos. Ejercicio 11

17Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

>> [x y] = meshgrid(-3:.1:3, -3:.1:3);

>> z = x.^2 - y.^2;

>> mesh(x,y,z)

>> plot3(x,y,z)

>> surf(x,y,z)

>> contour(z)

>> help slice

>> help plotxy

>> help plotxyz

>> help graphics

Ejecute en la ventana de

comandos las siguientes

expresiones y luego en un

archivo M-File comentar

cada uno de las

expresiones ingresadas.

Page 18: Utp pdiva_lab2 mat_lab basico

Funciones y scripts. Ejercicio 12

18Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

[x y] = meshgrid(-3:.1:3, -3:.1:3);

z = x.^2 - y.^2;

mesh(x,y,z);

Crear un archivo prueba.m

que contenga lo siguiente:

>> pruebaEjecutar:

A = [2, 3, 4; 5, 6, 7; 8, 9, 0];

Crear un archivo mimatriz.m

que contenga lo siguiente:

>> mimatrizEjecutar:

Page 19: Utp pdiva_lab2 mat_lab basico

Funciones y scripts. Ejercicio 13

19Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

function sqroot(x)

% Compute square root by Newton’s method

% Initial guess

xstart = 1;

for i = 1:100

xnew = ( xstart + x/xstart)/2;

disp(xnew);

if abs(xnew - xstart)/xnew < eps, break, end;

xstart = xnew;

end;

Crear un archivo

sqroot.m que contenga

lo siguiente:

>> sqroot(4)Ejecutar:

Page 20: Utp pdiva_lab2 mat_lab basico

Funciones y scripts. Ejercicio 13

20Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

function [xnew] = sqrooto(x,xstart)

% calculo de la raiz por el metodo de Newton

% Eliminamos Initial Guess porque xstart tiene ahora un valor inicial

for i = 1:100

xnew = ( xstart + x/xstart)/2;

disp(xnew);

if abs(xnew - xstart)/xnew < eps, break, end;

xstart = xnew;

end;

Crear un archivo sqrooto.m que contenga lo siguiente:

>> format long

>> sqrooto(19,1)

>> path

Ejecutar:

Page 21: Utp pdiva_lab2 mat_lab basico

Informe de Laboratorio 2

21Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

� El informe de laboratorio se presentara con el desarrollo de

todos los ejercicios desarrollados y preguntas de esta

presentación.

� El informe debe ser básicamente un documento gráfico en

lo posible y debe adjuntarse los códigos con los comentarios

solicitados en USB.

� Lo mas importante de un informe de laboratorio son los

conclusiones, comentarios y observaciones.

� Si han utilizado fuentes adicionales, adjuntarlas sólo en USB.

� EL Informe presentar impreso y en formato digital (en USB).

Page 22: Utp pdiva_lab2 mat_lab basico

Presentación

22Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P.

� Todas las fuentes y el Informe deben presentarse en USB,

dentro de una carpeta que lleve las iniciales del curso, sus

Apellidos, guion bajo y luego el numero de laboratorio.

Ejemplo:

PDIVA_BenitezPalacios_L2

� Si se utilizan fuentes, deben conservar el nombre original y

agregar _tema.

� Las Tareas que no cumplan las indicaciones

no serán recepcionados por el profesor.

Page 23: Utp pdiva_lab2 mat_lab basico

Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 23

Agradecimiento