El uso de las tic en la vida ,lo importante que son
Utp pdiva_lab2 mat_lab basico
1. Facultad de Ingeniería Electrónica y Mecatrónica
Procesamiento de Imágenes
y Visión Artificial
(PS02)
Laboratorio: 2
MatLab básico
Ing. José C. Benítez 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
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 2
3. 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
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 3
4. Introducción
• 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.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 4
5. Introducción
• 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..
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 5
6. Fundamentos. Ejercicio 1
Ejecute en la ventana de comandos >>
las siguientes expresiones y luego >> quit
en un archivo M-File comentar cada >> 2+3
uno de las expresiones ingresadas. >> 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
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 6
7. Fundamentos. Ejercicio 1
>> a=sqrt(2)
>> format long, b=sqrt(2)
>> a-b
>> format short
>> help
>> help general
>> lookfor
>> helpwin
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 7
8. Guardando el Workspace. Ejercicio 2
Ejecute en la ventana de comandos >> diary lab2.txt
las siguientes expresiones y luego >> save x.value x –ascii
en un archivo M-File comentar cada >> save milab2
uno de las expresiones ingresadas. >> 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.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 8
9. Matrices. Ejercicio 3
Ejecute en la ventana de comandos >> a = [1,2,3; 4,5,6]
las siguientes expresiones y luego >> a(1,2), a(2,3)
en un archivo M-File comentar cada >> a(2,3) = 10
uno de las expresiones ingresadas. >> 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] ]
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 9
10. Matrices. Ejercicio 4
Ejecute en la ventana de comandos >> rand(1,3), rand(2)
las siguientes expresiones y luego >> zeros(3)
en un archivo M-File comentar cada >> ones(3,2)
uno de las expresiones ingresadas. >> eye(3), eye(2,3)
>> magic(3)
>> hilb(5)
>> s = zeros(20,25);
>> help elmat
>> help specmat
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 10
11. Matrices. Ejercicio 5
Ejecute en la ventana de >> -3:3
comandos las siguientes >> x = -3 : .3 : 3
expresiones y luego en un archivo >> x(2:12)
M-File comentar cada uno de las >> x(9:-2:1)
expresiones ingresadas. >> 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)
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 11
12. Matrices. Ejercicio 6
Ejecute en la ventana de comandos las >> for i=1:10,...
siguientes expresiones y luego en un >> for j=1:10,...
archivo M-File comentar cada uno de >> t(i,j) = i/j;...
las expresiones ingresadas. >> end;...
>> end;...
>> t
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 12
13. Aritmética Matricial. Ejercicio 7
Ejecute en la ventana de >> a = [1 2 3 ; 4 5 6 ; 7 8 10], b = [1 1 1]’
comandos las siguientes >> 2*a, a/4
expresiones y luego en un >> a + [b,b,b]
archivo M-File comentar >> a+1, b+2
cada uno de las expresiones >> a*b, b*a
ingresadas. >> b’*a
>> a*a’ , a’ *a
>> b’ *b, b*b’
>> a^2, a.^2
>> a.*a, b.*b
>> 1./a
>> 1./a.^2
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 13
14. Aritmética Matricial. Ejercicio 8
Ejecute en la ventana de comandos las >> x = ab
siguientes expresiones y luego en un >> a*x, a*x-b
archivo M-File comentar cada uno de las >> b = [1 1 0]’
expresiones ingresadas. >> x = ab
>> a*x, a*x-b
>> a(3,3) = 9
>> x = b/a
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 14
15. Funciones Matriciales. Ejercicio 9
>> det(a)
Ejecute en la ventana de comandos las >> rank(a)
siguientes expresiones y luego en un >> norm(a)
archivo M-File comentar cada uno de las >> null(a)
expresiones ingresadas.
>> a(3,3) = 10
>> h=hilb(5)
>> cond(a)
>> inv(h)
>> eig(h)
>> help eps
>> eps
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 15
16. Gráficos. Ejercicio 10
Ejecute en la ventana de >> x = -10:.1:10;
comandos las siguientes >> plot( x.^2 )
expresiones y luego en un >> figure
archivo M-File comentar cada >> plot( x, x.^2 )
uno de las expresiones >> figure
ingresadas. >> 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)
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 16
17. Gráficos. Ejercicio 11
Ejecute en la ventana de >> [x y] = meshgrid(-3:.1:3, -3:.1:3);
comandos las siguientes >> z = x.^2 - y.^2;
expresiones y luego en un >> mesh(x,y,z)
archivo M-File comentar >> plot3(x,y,z)
cada uno de las >> surf(x,y,z)
expresiones ingresadas. >> contour(z)
>> help slice
>> help plotxy
>> help plotxyz
>> help graphics
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 17
18. Funciones y scripts. Ejercicio 12
Crear un archivo prueba.m [x y] = meshgrid(-3:.1:3, -3:.1:3);
que contenga lo siguiente: z = x.^2 - y.^2;
mesh(x,y,z);
Ejecutar: >> prueba
Crear un archivo mimatriz.m
que contenga lo siguiente:
A = [2, 3, 4; 5, 6, 7; 8, 9, 0];
Ejecutar: >> mimatriz
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 18
19. Funciones y scripts. Ejercicio 13
Crear un archivo function sqroot(x)
sqroot.m que contenga % Compute square root by Newton’s method
lo siguiente: % 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;
Ejecutar: >> sqroot(4)
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 19
20. Funciones y scripts. Ejercicio 13
Crear un archivo sqrooto.m que contenga lo siguiente:
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;
Ejecutar: >> format long
>> sqrooto(19,1)
>> path
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 20
21. Informe de Laboratorio 2
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).
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 21
22. Presentación
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.
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 22
23. Agradecimiento
Procesamiento de Imágenes y Visión Artificial - Prof. Ing. Jose C. Benitez P. 23