Filtros y graficos en matlab

Solo disponible en BuenasTareas
  • Páginas : 5 (1208 palabras )
  • Descarga(s) : 13
  • Publicado : 7 de julio de 2010
Leer documento completo
Vista previa del texto
Im´genes y gr´ficas en MATLAB a a
Sistemas Conexionistas - Curso 07/08

1.

Im´genes a

Matlab dispone de comandos especiales para trabajar con im´genes de diversos formatos a (pgm, ppm, gif, png, . . . ). imread Lee una imagen en color o escala de grises. IM = imread(filename) La imagen es almacenada en la matriz IM. Las im´genes en escala de grises se almaa cenan en matricesbidimensionales del mismo tama˜o que la imagen, mientras que en n las im´genes en color, la matriz es tridimensional ya que cuenta con una submatriz a del mismo tama˜o que la imagen en cada canal RGB. n Si los colores de la imagen est´n indexados (por ejemplo las im´genes con formato a a gif), la lectura de la imagen se realiza de la siguiente forma: [IM map] = imread(filename) donde map es una matriz quealmacena el mapa de colores de la imagen le´ ıda. imwrite Escribe una imagen a fichero. imwrite(IM, filename) Si el fichero incluye la extensi´n no es necesario indicar el formato de la imagen. o Para mostrar una imagen por pantalla, Matlab dispone de las funciones image e imagesc. Su sintaxis es:

image(IM) imagesc(IM) donde IM se corresponde con una matriz que representa una imagen. Si no seespecifica ning´n mapa de colores, Matlab utilizar´ el mapa por defecto. Matlab dispone de varios u a mapas de colores aunque tambi´n es posible utilizar un mapa de colores le´ en una e ıdo imagen o definido por el usuario. Para especificar el mapa de colores se utiliza el comando colormap: colormap(map)

2.
2.1.

Gr´ficas a
Funciones en dos dimensiones

Para dibujar funciones de una variable, Matlabdispone de la funci´n plot, con la siguiente o sintaxis: plot(Y) Dibuja la gr´fica que toma los ´ a ındices de Y como valores en el eje x y las columnas de Y como valores en el eje y. plot(x1,y1, ...) Une con una l´ ınea todos los pares de la forma (xn,yn) plot(X,Y) Si X e Y son vectores, dibuja las columnas/filas de X con respecto a las columnas/filas de Y. plot dispone de argumentos opcionales quepermiten especificar el tipo de l´ ınea que se dibuja, as´ como su color y el tipo de marcador para los puntos dibujados: ı plot(X,Y, ’--r’) Dibuja una l´ ınea discontinua en rojo plot(X,Y, ’s’) Dibuja s´lo los puntos como cuadrados o plot(X,Y, ’+r’) Dibuja s´lo los puntos como cruces en rojo o plot(X,Y, ’g’) Dibuja una l´ ınea continua en verde 2

Es posible configurar ciertos aspectos de lasgr´ficas, entre otros: a title(string) Establece la cadena string como t´ ıtulo de la gr´fica a xlabel(string) Establece la cadena string como etiqueta del eje x de la gr´fica a ylabel(string) Establece la cadena string como etiqueta del eje y de la gr´fica a axis Controla la apariencia y escala de los ejes. Presenta varias opciones Manipulaci´n de ventanas de figura o Al utilizar la funci´n plot, Matlababre autom´ticamente una ventana de figura que se o a sobreescribe si se vuelve a llamar a otra funci´n de dibujo. El comando figure permite o abrir nuevas ventanas de figura. Su sintaxis es: h = figure figure devuelve un identificador que se utiliza para manipular la figura. As´ si tenemos ı, varias ventanas de figura abiertas, con figure(h2) seleccionamos la figura relativa al identificador h2 y conclose(h3) cerramos la ventana h3. close all cierra todas las ventanas de figura abiertas. Subfiguras El comando subplot permite dibujar varias gr´ficas en una misma ventana de figura. Su a sintaxis es la siguiente: subplot(m,n,p) Con este comando, la ventana de figura actual se descompone en una matriz de m x n subfiguras y se selecciona la subfigura n´mero p para ser utilizada. u

3

x = 0:0.1:2*pi;y1 = sin(x); y2 = cos(x); subplot(2,1,1) plot(x,y1) title(’y = sin(x)’);

subplot(2,1,2) plot(x,y2) title(’y = cos(x)’);

Superposici´n de gr´ficas o a Para dibujar varias gr´ficas en una misma figura/subfigura, se utiliza la funci´n hold on. a o Para dejar de dibujar en la misma figura/subfigura, se utiliza hold off.

x = 0:0.1:2*pi; y1 = sin(x); y2 = cos(x); plot(x,y1) hold on; plot(x,y2,...
tracking img