PRÁCTICAS PARA EL INICO CON LA IMAGE PROCESING TOOLBOX de Matlab Aplicaciones de la Ingeniería Electrónica II INTRODUCCIÓN: MATRICES y MATLAB Funciones de interés: >> help >> help elmat Tabla de las funciones más usadas: Elementary matrices: zeros ones eye rand randn meshgrid accumarray : Basic array information: size length ndims numel isempty isequal Matrix manipulation: cat reshape fliplr flipud flipdim rot90 : find end Zeros array. Ones array. Identity matrix. Uniformly distributed random numbers. Normally distributed random numbers. X and Y arrays for 3-D plots. Construct an array with accumulation. Regularly spaced vector and index into matrix. Size of array. Length of vector. Number of dimensions. Number of elements. True for empty array. True if arrays are numerically equal. Concatenate arrays. Change size. Flip matrix in left/right direction. Flip matrix in up/down direction. Flip matrix along specified dimension. Rotate matrix 90 degrees. Regularly spaced vector and index into matrix. Find indices of nonzero elements. Last index. Multi-dimensional array functions: permute ipermute shiftdim circshift Permute array dimensions. Inverse permute array dimensions. Shift dimensions. Shift array circularly. Special variables and constants: ans pi I, j inf NaN isnan isinf isfinite Most recent answer. 3.1415926535897.... Imaginary unit. Infinity. Not-a-Number. True for Not-a-Number. True for infinite elements. True for finite elements. EJERCICIOS PARA LA PRÁCTICA DE MANIPULACIÓN DE MATRICES EN MATLAB Estas prácticas están dirigidas, sobre todo, a aquellos alumnos que no hayan trabajado previamente con Matlab. 1. Creación de matrices de diferentes tamaños. A=ones(5); A=ones(5,2); B=zeros(3); C=magic(4); C=rand(4); 2. Obtener información del tamaño (filas y columnas) de una matriz bidimensional y tridimensional. 3. Rotar matrices. 4. Dada una matriz determinada, calcular cuántos valores son cero. 5. Dada una matriz determinada, cambiar todos los valores iguales a cero por -1. 6. Dada una matriz determinada, poner a 0 todas las posiciones de las filas pares. 7. Crear una matriz en la que los valores de cada fila coincida con el número de fila. 8. En una matriz de 10x10, poner toda la fila 4 a cero. 9. En una matriz de 10x10, poner toda la columna 6 a uno. 10. En una matriz de 10x10, poner toda la columna 5 iguales al valor de la primera posición. 11. En una matriz de 10x10, poner todos sus elementos centrales a cero. Por elemento central se entiende todo el que no esté en el borde de la matriz. INTRODUCCIÓN A LA IMAGE PROCESSING TOOLBOX DE MATLAB • Identificación de los distintos tipos de imágenes en matlab y conversión entre ellos: Imágenes indexadas. Imágenes de intensidades. Imágenes binarias. Imágenes RGB. Funciones para leer y salvar imágenes: imread, imwrite. Función para visualizar imágenes: imshow. Principales funciones de conversión: gray2ind, im2bw, ind2gray, ind2rgb, mat2gray, rgb2gray, rgb2ind. Funciones para mostrar gráficas 3D: mesh, surf, plot3 >> help images Imag_1. Partir de una imagen al azar (cualquier formato, blanco y negro, color, ... ), leerla desde matlab (imread), cambiarle el formato utilizando las funciones de conversión adecuadas indicadas anteriormente y salvarla en un fichero con un nombre diferente utilizando imwrite. Cargar de nuevo la imagen desde el nuevo fichero, visualizarla de nuevo. Imag_2. Cargar en la memoria la imagen guardada en la práctica anterior. Si no es una imagen en escala de grises, convertirla a escala de grises. a. Mostrar la matriz imagen como una gráfica tridimensional, apreciando que en el eje Z se representan el valor del nivel de gris de cada píxel. b. Calcular el histograma y visualizarlo. Imag_3. Generar imágenes en blanco y negro como las mostradas en las siguientes figuras. Visualizar su histograma. Imag_4. Generar imágenes en escala de grises (256 niveles de gris) como las mostradas en las siguientes figuras. Visualizar su histograma. Imag_5. Crear una imagen en color (por ejemplo, similares a las utilizadas en las prácticas T3_P1 y T3_P2) en el espacio RGB y convertirla a otros espacios de color utilizando las funciones adecuadas.