Moises Valenzuela Gutierrez Formacion y Procesado (1)

68

Transcript of Moises Valenzuela Gutierrez Formacion y Procesado (1)

Page 1: Moises Valenzuela Gutierrez Formacion y Procesado (1)
Page 2: Moises Valenzuela Gutierrez Formacion y Procesado (1)

FORMACIÓN Y PROCESADO

ÓPTICO

DE IMÁGENES

Prácticas de MatLab

Autor. Moisés Valenzuela Gutiérrez.

Page 3: Moises Valenzuela Gutierrez Formacion y Procesado (1)

2009. Moisés Valenzuela Gutiérrez Portada diseño: Celeste Ortega (HUwww.cedeceleste.com UH)

Edición cortesía de HUwww.publicatuslibros.com UH. Debe reconocer los créditos de la obra de la manera especificada por el autor o el licenciador (pero no de una manera que sugiera que tiene su apoyo o apoyan el uso que hace de su obra).

No puede utilizar esta obra para fines comerciales. Si altera o transforma esta obra, o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra.

Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Nada en esta licencia menoscaba o restringe los derechos morales del autor.

Publicatuslibros.com es una iniciativa de: Íttakus, sociedad para la información, S.L. C/ Sierra

Mágina,10 23009 Jaén-España Tel.: +34 953 29 15 07 HUwww.ittakus.com U

ÍNTRODUCCIÓN.

Con esta obra se intenta iniciar al lector en el manejo de la aplicación matemática MATLAB. Este software ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M). Con la realización de estas prácticas aprenderemos las nociones y comandos básicos en el uso y desarrollo del programa MATLAB para el tratamiento de imágenes y definición de funciones. Para nosotros, que solo teníamos conocimiento de programación en lenguaje Fortran, el descubrimiento de MATLAB, ha resultado una revolución, pues posee funciones ya construidas que facilitan mucho nuestro trabajo. Sobre todo hemos aprendido algo, que es lo imprescindible que resulta la transformada de Fourier en el tratamiento de imágenes. En concreto, facilitan el aprendizaje del uso de la transformada rápida de Fourier (FFT), de la transformada discreta en coseno (DCT) y de la simulación digital de la correlación óptica. Gracias a los resultados obtenidos en las distintos ejercicios realizados pueden comprobarse las principales propiedades de la transforma de Fourier unidimensional y bidimensional, así como la importancia del módulo y la fase de ésta.

Dedicado a Mary Álvarez Fernández

Page 4: Moises Valenzuela Gutierrez Formacion y Procesado (1)

ÍNDICE

ÍNDICE ............................................................................................................................................................ 4

Función coseno:............................................................................................................................................... 5

Función exponencial: ....................................................................................................................................... 6

EJERCICIO 2 ................................................................................................................................................... 7

EJERCICIO 3 ................................................................................................................................................... 9

EJERCICIO 4 ................................................................................................................................................. 12

EJERCICIO 5 ................................................................................................................................................. 16

EJERCICIO 6 ................................................................................................................................................. 18

OBJETIVOS ................................................................................................................................................... 25

EJERCICIO 1 ................................................................................................................................................. 25

EJERCICIO 2 ................................................................................................................................................. 27

EJERCICIO 3 ................................................................................................................................................. 28

EJERCICIO 4 ................................................................................................................................................. 29

EJERCICIO 5 ................................................................................................................................................. 32

EJERCICIO 6 ................................................................................................................................................. 34

OBJETIVOS ................................................................................................................................................... 39

REALIZACIÓN ............................................................................................................................................... 40

OBJETIVOS ................................................................................................................................................... 43

EJERCICIO 2 ................................................................................................................................................. 46

EJERCICIO 3 ................................................................................................................................................. 53

OBJETIVOS ................................................................................................................................................... 59

EJERCICIO 1 ................................................................................................................................................. 59

EJERCICIO 2 ................................................................................................................................................. 63

Comparación de la p:................................................................................................................................... 66

CONCLUSIONES FINALES:......................................................................................................................... 67

UBIBLIOGRAFÍA ............................................................................................................................................. 67U

Page 5: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

56

PRACTICA 1

OBJETIVOS

En la presente práctica se pretende: Iniciarse en el uso del programa MATLAB. Manejar la transformada de Fourier. Caracteristas.

ÍNDICE

EJERCICIO 1 1) Calcule la FFT y FFT inversa de las funciones “sin”, “cos” y “exp”. , rectángulo, signo, mira de

Foucault, etc.) Los archivos comandos relacionados con este ejercicio se encuentran en la carpeta PRACTICA1/EJERCICIO1, del CD adjunto al guión En los distintos ficheros matlab se procede del mismo modo las distintas funciones tratadas. 1º es crear la variable independiente discreta, que podría representar al tiempo, se toma un intervalo de valores simétrico respecto al origen. 2º se define la función en particular y, seguidamente, se calcula su TF y su TF inversa. 3º se representan los resultados obtenidos. Para las transformadas, se representan la magnitud y la fase por separado, recogemos las figuras correspondientes a la representación gráfica de las funciones y del módulo de su TF.

TF MAGNITUD TF INVERSA MAGNITUD Función TF FASE TF INVERSA FASE

Función seno:

Page 6: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

66

Función coseno:

Page 7: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

76

Función exponencial:

Page 8: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

86

EJERCICIO 2

2) Intente explicar el significado de f=(0:length(y)-1)*100/length(y); . Utilizando las

funciones anteriores cambie la frecuencia y discuta que ocurre. Siendo y=fft(x), el vector de frecuencias f=(0:length(y)-1)*100/length(y) es:

un vector de longitud igual a la del vector y cuyo valor inicial es 0 y cuyo valor final es 100, que es la frecuencia de muestreo empleada al definir la variable independiente discreta t de la función x, dado que: t=0:0.01:10-0.01.Es decir, el vector f toma tantos valores entre 0 y 100, distribuidos uniformemente, como elementos tenga el vector X. Dicho de otro modo, el vector de frecuencias toma tantos valores entre 0 y el valor de la frecuencia de muestreo empleada al definir la función como elementos tenga el vector que constituye la transformada de Fourier de dicha función. Así, puesto que el número de elementos del vector y que constituye la transformada de Fourier es igual al número de valores que toma la variable independiente t de la función, el dominio de la transformada de Fourier discreta, dado por el vector de frecuencias f, ha de tomar el mismo número de valores que el dominio de la propia función. Teniendo en cuenta lo expuesto, si se modifica el número de elementos del vector de frecuencias f de forma que éste ya no coincida con el número de elementos del vector de tiempos t, no será posible obtener la representación gráfica de la transformada de Fourier de la función.

Los comandos de esta practica esta en el CD adjunto en la carpetas PRACTICA1/EJERCICIO2. En los distintos ficheros de instrucciones se procede de igual forma para cada una de las distintas

funciones tratadas (seno, coseno y exponencial).

En primer lugar se crea la variable independiente discreta, que podría representar al tiempo (dado que se va a calcular la TF unidimensional). En este caso, para comprobar lo expuesto anteriormente, se toma un intervalo de valores que comienza en el origen.

A continuación se define la función en particular y se calcula su TF. Para la ésta última, se evalúa

la frecuencia definiendo el vector correspondiente. Seguidamente, se representan los resultados obtenidos. Para la transformada, se representan la magnitud y la fase por separado.

Como ejemplo, recogemos las figuras correspondientes a la representación gráfica de la función

coseno y del módulo de su TF.

Page 9: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

96

Para comprobar lo expuesto anteriormente, se cambia el vector frecuencia de forma que el número de elementos del mismo sea inferior al anterior y, por tanto, distinto al número de elementos del vector que constituye la TF.

Finalmente, se intenta representar los últimos resultados obtenidos, encontrándose que ello no es posible, tal y como se muestra en la siguiente figura proporcionada por el programa.

se indica el error cometido con la advertencia que sigue:

??? Error using ==> plot. Vectors must be the same lengths

Este error es el mismo para el seno y la exponencial.

Page 10: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

10

EJERCICIO 3

3) ¿En qué consistiría un submuestreo? ¿Como lo podría simular? Un submuestreo consiste:

La toma de muestras necesaria para “discretizar” una función a una frecuencia inferior a la requerida.

Esto se traduce en que se adquiere un número de muestras menor que el necesario para representar a dicha función de forma adecuada. Teniendo esto en cuenta, si una determinada función se muestrea a una frecuencia inferior a la necesaria, la función reconstruida a partir de dichas muestras no reproducirá a la función original de forma correcta. Esto es lo que se pretende mostrar en el archivo relacionado con este ejercicio, que se encuentra en la carpeta PRACTICA1/EJERCICIO3.En primer lugar se crea la variable independiente discreta, que podría representar al tiempo (dado que se va a calcular la TF unidimensional). Para que se tengan suficientes valores la función, se toma una frecuencia de 100 Hz. Lo primero es definir la función en particular y se calcula su transformada. Seguidamente se recupera la función mediante la transformada inversa y se representan los resultados. Como muestra, recogemos la figura correspondiente a la representación gráfica de la función ejemplo. FUNCION CON FRECUENCIA DE MUESTREO DE 100 Hz FFT (FUNCION)

RECUPERO CON IFFT Gráficamente es:

FFT (FUNCION)

RECUPERO CON IFFT(FFT(FUNCION))

Page 11: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

11

Para simular un submuestreo, se comienza repitiendo el procedimiento anterior, pero tomando ahora un menor número de valores de la función, es decir, empleando una frecuencia de muestreo inferior, de 10 Hz, en concreto recogemos la figura correspondiente a la representación gráfica de la función recuperada a partir de la transformada inversa con esta frecuencia de muestreo.

Una vez hecho esto, se observa la diferencia entre el uso de una u otra frecuencia de muestreo,

por lo que puede estimarse cuál de ambas resulta más adecuada para representar la función. Las representaciones gráficas revelan cómo el cambio en la frecuencia de muestreo hace que las funciones recuperadas a partir de las muestras sean completamente distintas.

FUNCION CON FRECUENCIA DE MUESTREO DE 10 Hz FFT (FUNCION)

NO SE PUEDE

QUIERO RECUPERO CON IFFT

Gráficamente es: FFT (FUNCION)

RECUPERO CON IFFT

Page 12: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

12

Finalmente, para simular el submuestreo, se intenta representar la función recuperada para la frecuencia mayor empleando el vector de frecuencias correspondiente a la frecuencia menor, que resultará insuficiente, tal y como se muestra en la siguiente figura proporcionada por el programa.

Al igual que en el ejercicio anterior (en el que se simulaba el submuestreo empleando el vector de frecuencias), en la Command Window se indica el error cometido con la advertencia:

??? Error using ==> plot Vectors must be the same lengths.

Page 13: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

13

EJERCICIO 4

4) Calcule la FFT y FFT inversa de las funciones “rectángulo”, “signo” y “mira de Foucault”.

Esto es lo que se pretende mostrar en el archivo relacionado con este ejercicio, que se encuentra en la carpeta PRACTICA1/EJERCICIO4.

(Signo, rectángulo y mira de Foucault).

En primer lugar se crea la variable independiente discreta, que podría representar al tiempo (dado que se va a calcular la TF unidimensional). Para que los resultados sean realistas, se toma un intervalo de valores simétrico respecto al origen. A continuación se define la función en particular y, seguidamente, se calcula su TF y su TF inversa. Finalmente, se representan los resultados obtenidos. Para las transformadas, se representan la magnitud y la fase por separado. Como muestra, recogemos las figuras correspondientes a la representación gráfica de la función signo y del módulo de su TF.

Page 14: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

14

Page 15: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

15

Page 16: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

16

EJERCICIO 5

5) Calcule la FFT de la función x=3+sin (2*pi*10*t)+2*sin (2*pi*20*t); Imponga el

valor 0 a la FFT (para la frecuencia=0 Hz). Ahora intente recuperar la función original a través de la FFT inversa. ¿Qué obtiene?. Explique el resultado.

Esto es lo que se pretende mostrar en el archivo relacionado con este ejercicio, que se encuentra

en la carpeta PRACTICA1/EJERCICIO5.

En primer lugar se crea la variable independiente discreta, que podría representar al tiempo (dado que se va a calcular la TF unidimensional). Para que los resultados sean realistas, se toma un intervalo de valores simétrico respecto al origen. A continuación se define la función en particular. Seguidamente se calcula su TF y su TF centrada en el origen, ya que en este caso lo último equivale a imponer que la TF tome el valor cero a la frecuencia cero, tal y como se requiere en el enunciado. Consecutivamente se recupera la función mediante las transformadas inversas correspondientes. Para la TF centrada en el origen, se evalúa la frecuencia definiendo el vector correspondiente.

Finalmente, se representan los resultados anteriores. Por simplicidad, para las transformadas se

representa únicamente la magnitud. Como muestra, recogemos la figura correspondiente a la representación gráfica de la función problema y de la función recuperada a partir de la transformada inversa.

Comparando ambas representaciones se observa la similitud existente entre ellas. En cambio, en el caso de la función recuperada a partir de la transformada inversa de la TF centrada en el origen, la comparación de las gráficas revela claras diferencias entre las mismas, tal y como puede comprobarse observando la siguiente figura. Veamos lo que queremos obtener

x=3+sin (2*pi*10*t)+2*sin (2*pi*20*t) CON FRECUENCIA DE MUESTREO DE 0 Hz

fftshift (FUNCION) FFT (FUNCION)

desplaza la FFT para que la

frecuencia 0 se sitúe en el centro.

IFFT(fftshift (FUNCION)) IFFT(FFT(FUNCION)

Page 17: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

17

Lo que tenemos gráficamente es:

Page 18: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

18

Si se toma sólo el módulo de la función anterior, puede verse que la gráfica así obtenida ya sí se

asemeja a la de la función problema:

EJERCICIO 6

6) Compruebe con ejemplos algunas de las propiedades de las Transformada de Fourier (p.ej.

linealidad, similitud, traslación, complejo conjugada, convolución, producto de dos funciones, correlación, etc.).

Esto es lo que se pretende mostrar en el archivo relacionado con este ejercicio, que se encuentra

en la carpeta PRACTICA1/EJERCICIO6. LINEALIDAD:

)()()()( xgFxgFxhxgF Se define la variable independiente discreta. Seguidamente se toman las funciones seno y coseno, defiendo y representando una combinación lineal de ambas.

A continuación se calcula y se representa la transformada de la combinación lineal (modulo y fase por separado. Finalmente, se obtienen las transformadas de las funciones y se representa la combinación lineal de éstas (de nuevo, modulo y fase por separado).

Comparando los resultados gráficos se comprueba que la TF de la combinación lineal de las funciones es igual a la combinación lineal de las TFs de dichas funciones, tal y como se infiere al observar sus respectivos módulos representados en las figuras que se muestran más adelante.

Page 19: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

19

SIMILITUD: se comprueba esta propiedad de la TF a través de un ejemplo. Para ello, en primer lugar, se define la variable independiente discreta con y sin compresión, para un factor de compresión p = 2.

)(1

)(p

fG

ppxgF x

Posteriormente se toma una función coseno y se calcula su transformada. A continuación se toma

la misma función pero empleando la variable comprimida y se calcula su transformada nuevamente. Para las transformadas se evalúan las frecuencias correspondientes y, finalmente, se representan los módulos de ambas transformadas.

Comparando los resultados gráficos se comprueba cómo la amplitud de la TF se multiplica por el factor p (en este caso la amplitud se duplica), y cómo varía la frecuencia a la que se producen las deltas, tal y como se observa en la siguiente figura.

Page 20: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

20

TRASLACION:

)(2)())(( xafix efGaxgF

Una traslación equivale a una variación en dominio de frecuencias y cambio de amplitud del

espectro, se comprueba esta propiedad de la TF a través de un ejemplo. Para ello, en primer lugar, se define la variable independiente discreta con y sin traslación, para un desplazamiento p = 4.

Seguidamente se toma la función del ejemplo incluido en el guión de la presente práctica, se

evalúa en la variable trasladada y se calcula su transformada. A continuación se toma la misma función pero empleando la variable sin desplazar, se calcula su transformada y se multiplica por el factor de fase que corresponde a la traslación anterior. Finalmente, se representan los módulos de ambas transformadas.

Comparando los resultados gráficos se comprueba que el módulo de la TF no cambia al efectuar un desplazamiento en la variable independiente (es invariante bajo traslaciones), tal y como se infiere al observar las figuras que se muestran más adelante.

Page 21: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

21

La primera figura que se recoge corresponde al módulo de la TF de la función desplazada,

mientras que la segunda es la representación del módulo de la TF de dicha función sin desplazar (multiplicada por el factor de fase asociado a la traslación).

COMPLEJO CONJUGADA: se comprueba la propiedad de la TF asociada mediante un ejemplo.

Para ello, en primer lugar, se define la variable independiente discreta.

)())(( *xfGxgF

Seguidamente se toma la función: )402sin( t , y se calcula la complejo conjugada de su TF. A continuación se obtiene la TF del complejo conjugada de la función ejemplo.

Finalmente, se representan los módulos de ambas transformadas, empleando como dominios vectores con valores opuestos. Comparando los resultados gráficos se comprueba que el complejo conjugado de la TF es igual a la TF del complejo conjugado de la función, evaluado en la variable cambiada de signo.

Función )402sin( t

Page 22: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

22

TF del complejo conjugada complejo conjugada de su TF

de la función

Se representan los módulos de ambas transformadas Esto se muestra en las siguientes figuras de la Izquierda corresponde al módulo de la complejo

conjugada de la TF, mientras que la segunda es la representación del módulo de la TF de la complejo conjugada de la función, evaluada en la variable cambiada de signo.

CONVOLUCION: se comprueba la propiedad de la TF asociada mediante un ejemplo. Para ello,

en primer lugar, se define la variable independiente discreta. Lo que queremos demostrar es:

))(())(())(( xfFxgFxfxgF Seguidamente se toman las funciones seno y coseno, se calculan sus transformadas y el producto

de éstas. A continuación se calcula la transformada de la convolución de ambas funciones. Finalmente, se representa el módulo del producto de las transformadas y el módulo de la transformada de la convolución. Comparando los resultados gráficos se comprueba que el producto de las TFs de dos funciones es igual a la TF de la convolución de dichas funciones.

Usando las funciones

Seno y Coseno

Page 23: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

23

Calculo sus transformadas por separado cálculo la convolución de cada una MULTIPLICO LAS TRANSFORMADAS CALCULO LA TFF DE LA

CONVOLUCION Y COMPARO Esto se muestra en las siguientes figuras. La primera corresponde al módulo del producto de las

TFs de las dos funciones, mientras que la segunda es la representación del módulo de la TF de la convolución de dichas funciones.

PRODUCTO: se comprueba la propiedad de la TF correspondiente mediante un ejemplo. Para ello, en primer lugar, se define la variable independiente discreta.

)()())(())(( xHxGxfFxgF

Seguidamente se toman las funciones seno y exponencial calculan sus transformadas. A

continuación se calcula la transformada del producto de ambas funciones y el convolución de las transformadas.

Esto se muestra en las siguientes figuras. La primera (grafico 1) corresponde al módulo de la

convolución de las TFs de las dos funciones, mientras que la segunda (grafico 2) es la representación del módulo de la TF del producto de dichas funciones.

Page 24: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

24

CORRELACION: Producto de correlación y teorema relativo a la correlación (para dos variables):

2*

*

*

)()(),(

)(),()()(

)(),()()(

xfGddxggF

ddxggxgxg

ddxhgxhxg

,

Page 25: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

25

se comprueba la propiedad de la TF correspondiente la aplicación del teorema a una función

determinada . Para ello, en primer lugar, se define la variable independiente discreta se comprueba la propiedad de la TF. Para ello, en primer lugar, se define la variable independiente discreta

Seguidamente se toma la función seno, se calcula su transformada y el cuadrado del módulo de

ésta. A continuación se calcula la transformada de la autocorrelación de la función (producto de correlación de la función consigo misma).

En conclusión, se representa el módulo al cuadrado de la transformada y el módulo de la transformada de la autocorrelación. Comparando los resultados gráficos se comprueba que el módulo al cuadrado de la TF de una función es igual a la autocorrelación de dicha función.

Esto se muestra en las siguientes figuras. la grafica de la derecha corresponde al módulo al

cuadrado de la TF de función, mientras que la grafica de la izquierda es la representación del módulo de la TF de la autocorrelación de dicha función.

2* )()()( xfGdxggF

PRACTICA 2

OBJETIVOS

En la presente práctica se pretende:

Utilizar la Transformada Discreta de Fourier Bidimensional.

Page 26: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

26

EJERCICIO 1

1) Aplique la FFT inversa bidimensional para recuperar la función u objeto original.

La ruta a seguir dentro del CD adjunto es PRACTICA2/EJERCICIO1, donde se encuentran los comandos.

Se trata la función del ejemplo indicado en el guión de la presente práctica, que constituye una rendija rectangular de 4x24 píxeles, que se ha denominado objeto original a recuperar.

Para recuperar dicho objeto aplicando la transformada inversa, en primer lugar, se calcula su TF y su TF centrada en el origen Para solventar este inconveniente se puede utilizar en lugar de la función fft una función adicional fftshift que localiza la frecuencia (0,0). Seguidamente se calculan las transformadas inversas correspondientes.

Para terminar, se representan los resultados anteriores. Por simplicidad, para las transformadas se representa únicamente la magnitud. Como muestra, recogemos las figuras correspondientes a las representaciones gráficas del objeto recuperado aplicando la transformada inversa de la TF y de la TF centrada en el origen, así como la figura que representa gráficamente al objeto original.

Los resultados gráficos permiten comprobar que tanto el objeto recuperado a partir de la TF, como

el recuperado usando la TF centrada en el origen se corresponden con el objeto original.

Page 27: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

27

Recordamos el objeto original para ver la correlación que existe: Como hemos dicho antes los resultados gráficos permiten comprobar que tanto el objeto

recuperado a partir de la TF, como el recuperado usando la TF centrada en el origen se corresponden con el objeto original.

EJERCICIO 2

2) Genere una una red de rendijas rectangulares. Calcule y dibuje su FFT.

La ruta a seguir dentro del CD adjunto es PRACTICA2/EJERCICIO2, donde se encuentran los comandos.

En primer lugar se genera la función objeto, es decir, la red de rendijas rectangulares:

Page 28: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

28

Y seguidamente, se calcula su transformada centrada en el origen en rendijas rectangulares y en

escala logarítmica.

EJERCICIO 3

3) Compruebe con el ejemplo de la red de rendijas anterior la propiedad de linealidad de la Transformada de Fourier.

La ruta a seguir dentro del CD adjunto es PRACTICA2/EJERCICIO3, donde se encuentran los comandos.

Page 29: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

29

Se comprueba la linealidad de la TF bidimensional a través de un ejemplo, empleando la red de rendijas del ejercicio anterior. Para ello, en primer lugar, se generan dos redes de rendijas rectangulares distintas, defiendo y representando una combinación lineal de ambas.

A continuación se calcula y se representa la transformada de la combinación lineal. Finalmente, se

obtienen las transformadas de las dos redes y se representa la combinación lineal de éstas. Comparando los resultados gráficos se comprueba que la TF de la combinación lineal de las dos redes es igual a la combinación lineal de las TFs de dichas redes, tal y como se infiere al observar sus respectivos módulos representados en las figuras que se muestran más adelante.

EJERCICIO 4

4) Genere objetos tales como un círculo, una red de amplitud sinusoidal y una red de fase sinusoidal. Calcule y dibuje sus FFT.

La ruta a seguir dentro del CD adjunto es PRACTICA2/EJERCICIO4, donde se encuentran los comandos. En los distintos ficheros de instrucciones se procede de igual forma para cada una de las distintas

Page 30: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

30

funciones objeto tratadas (abertura circular, red de amplitud sinusoidal y red de fase sinusoidal).En primer lugar se genera la función objeto en particular rendija circular:

Seguidamente, se calcula su transformada centrada en el origen. Finalmente, se representan los

resultados obtenidos. Para las transformadas, se representa la magnitud en escala lineal y también en escala logarítmica.

Para un radio del círculo de 0.5mm del objeto difractor tenemos:

Para un radio del círculo de 0.2 mm del objeto difractor tenemos:

Page 31: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

31

Para un radio del círculo de 0.3 mm del objeto difractor tenemos:

Para un radio del círculo de 0.1 mm del objeto difractor

tenemos:

Page 32: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

32

Para un radio del círculo de 0.02 mm del objeto difractor tenemos:

Para un radio del círculo de 0.01 mm del objeto:

Page 33: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

33

EJERCICIO 5

5) Elimine la frecuencia (0,0) de alguna de esas transformadas y realice la FFT inversa. ¿Qué obtiene? Explique el resultado.

La ruta a seguir dentro del CD adjunto es PRACTICA2/EJERCICIO5, donde se encuentran los comandos.

Trabajando la función objeto que constituye una abertura circular. Tras generar dicha función objeto, se calcula su transformada centrada en el origen. Seguidamente, se anula la transformada anterior para la frecuencia cero, teniendo en cuenta el tamaño de la variable, y se obtiene su transformada inversa Finalmente, se representan los resultados obtenidos. Recogemos las figuras correspondientes a la representación gráfica de la abertura circular y del objeto recuperado empleando su TF con la frecuencia cero suprimida.

Page 34: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

34

La comparación de ambas figuras revela claras diferencias entre las mismas. En concreto, estos resultados gráficos permiten comprobar que al suprimir la frecuencia cero de la TF, el objeto recuperado aplicando la TF inversa presenta modificaciones en el contraste. Esto se debe a que la fase de la TF inversa se modifica, tal y como puede observarse al representar únicamente el módulo de ésta.

Page 35: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

35

EJERCICIO 6

6) Compruebe con algunos ejemplos las propiedades de las Transformadas de Fourier siguientes: (a) similitud, (b) traslación, (c) complejo conjugada, (d) convolución, (e) producto de dos funciones, y (f) correlación.

La ruta a seguir dentro del CD adjunto es PRACTICA2/EJERCICIO6, donde se encuentran los comandos.

SIMILITUD: se comprueba esta propiedad de la TF a través de un ejemplo. Para ello, en primer lugar, se genera y representa una función objeto, constituida por una rendija rectangular vertical, y se calcula su transformada.

A continuación se toma la misma función objeto pero efectuando una contracción espacial, esto es, reduciendo la anchura de la rendija, se representa y se calcula su transformada nuevamente. Finalmente, se representan los módulos de ambas transformadas en escala logarítmica.

Page 36: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

36

Comparando los resultados gráficos se comprueba cómo varía la amplitud de la TF y las frecuencias a las que se producen los máximos, tal y como se observa en las siguientes figuras.

TRASLACION: se comprueba esta propiedad de la TF a través de un ejemplo. Para ello, en primer lugar, se genera y representa una función objeto, constituida por una rendija

abertura en forma de cruz, y se calcula su transformada.

A continuación se toma la misma función objeto pero efectuando una traslación espacial, se representa y se calcula su transformada nuevamente. Finalmente, se representan los módulos de ambas transformadas en escala logarítmica.

Comparando los resultados gráficos se comprueba que el módulo de la TF no cambia al efectuar

un desplazamiento espacial (es invariante bajo traslaciones), tal y como se infiere al observar las figuras que se muestran más adelante.

Page 37: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

37

COMPLEJO CONJUGADO: se comprueba la propiedad de la TF asociada mediante un ejemplo.

Para ello, en primer lugar, se toma la función la indicada en la grafica: Seguidamente se calcula la complejo conjugada de su TF. A continuación se obtiene la TF del

complejo conjugada de la función objeto. Por ultimo, se representan los módulos de ambas transformadas. Comparando los resultados

gráficos se comprueba que la complejo conjugada de la TF es igual a la TF de la complejo conjugada de la función objeto.

.

Page 38: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

38

CONVOLUCION: se comprueba la propiedad de la TF asociada mediante un ejemplo. Para ello, se

toman como funciones objeto una abertura rectangular y otra semicircular, se calculan sus transformadas y el producto de éstas. A continuación se calcula la transformada de la convolución de ambas funciones objeto.

Finalmente, se representa el módulo del producto de las transformadas y el módulo de la transformada de la convolución. Comparando los resultados gráficos se comprueba que el producto de las TFs de dos funciones es igual a la TF de la convolución de dichas funciones objeto.

Esto se muestra en las siguientes figuras. La primera figura corresponde al módulo del producto de

las TFs de las dos funciones objeto.

La segunda figura es la representación del módulo de la TF de la convolución de dichas funciones objeto.

Page 39: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

39

PRODUCTO: se comprueba la propiedad de la TF correspondiente mediante un ejemplo. Para

ello, en primer lugar, se toman como funciones objeto una abertura rectangular y otra semicircular, se calculan sus transformadas y la convolución de éstas. A continuación se calcula la transformada del producto de ambas funciones objeto.

Finalmente, se representa el módulo de la convolución de las transformadas y el módulo de la transformada del producto. Comparando los resultados gráficos se comprueba que la convolución de las TFs de dos funciones objeto es igual a la TF del producto de dichas funciones objeto.

Esto se muestra en las siguientes figuras. La primera figura corresponde al módulo de la

convolución de las TFs de las dos funciones objeto.

La segunda figura es la representación del módulo de la TF del producto de dichas funciones objeto.

Page 40: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

40

CORRELACION: se comprueba la propiedad de la TF. Para ello, 1º se toma como función objeto una abertura rectangular, se calcula su transformada y el cuadrado

del módulo de ésta. 2º se calcula la transformada de la autocorrelación de la función objeto (producto de correlación de

la función consigo misma).

3º Finalmente, se representa el módulo al cuadrado de la transformada y el módulo de la transformada de la autocorrelación.

Comparando los resultados gráficos se comprueba que el módulo al cuadrado de la TF de una

función objeto es igual a la autocorrelación de dicha función objeto. Esto se muestra en las siguientes figuras:

Page 41: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

41

PRACTICA 3

OBJETIVOS

En la presente práctica se pretende:

Analizar la importancia de la amplitud y de la fase de la Transformada de Fourier.

REALIZACIÓN

1. Cargar dos imágenes parecidas pero distintas, y que tengan el mismo

tamaño (mismo numero de pixeles). P.ej. El cuadro de las Meninas de Velazquez y el de las Meninas de Picasso.

2. Se normaliza la imagen para que cada pixel tenga valores de intensidad de 0 a 1.

3. Se calculan las FFT de cada una de las imágenes. 4. Se obtienen los módulos y las fases de cada una de las FFT. 5. Se intercambian los módulos y las fases. 6. se realiza la TTF inversa para recuperar la transformada de fourier

En la carpeta PRACTICA3 se encuentran el fichero *.m donde se han copilado el comando siguiente los pasos:

1º Lo primero, es leer dos imágenes parecidas pero distintas, de igual tamaño (con el mismo numero de píxeles). En concreto, se toman como imágenes el cuadro de las Meninas de Velázquez y el de las Meninas de Picasso.

2º Seguidamente, se normalizan las dos imágenes para que cada píxel tenga valores de intensidad de 0 a 1, y se calcula la TF de cada una de las imágenes.

3º Se obtiene el módulo y la fase de cada una de las TFs y se intercambian.

4º Se realiza la TF inversa de las TFs "intercambiadas", tratando de recuperar las imágenes

originales, y se representan los resultados anteriores. Para una mejor comprensión de los resultados, se recogen las figuras representadas. Las dos primeras figuras corresponden a las imágenes originales del cuadro de las Meninas de

Velázquez y de Picasso respectivamente. La tercera figura de la izquierda corresponde a la imagen recuperada a partir de la amplitud de la

TF de las Meninas de Velázquez (y la fase de la TF de las Meninas de Picasso).

Page 42: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

42

La cuarta figura de la derecha corresponde a la imagen recuperada a partir de la amplitud de la TF

de las Meninas de Picasso (y la fase de la TF de las Meninas de Velázquez).

Los resultados gráficos revelan:

Page 43: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

43

1º las imágenes recuperadas a partir de cada TF "intercambiada" se asemejan más a la correspondiente imagen original cuya TF posee la misma fase que la TF de dicha imagen recuperada, en vez de la misma amplitud. Es decir “el resultado revela que es mas importante la fase que el modulo”. Con lo cual:

la imagen recuperada de las Meninas de Velázquez (cuya TF posee la misma amplitud que la TF de la imagen original de las Meninas de Velázquez y la misma fase que la TF de la imagen original de las Meninas de Picasso) se parece más a la imagen original de las Meninas de Picasso que a la imagen original de las Meninas de Velázquez.

2º Ya se puede imaginar uno lo que tiene que salir en la recuperación que nos falta: por analogía, la imagen recuperada de las Meninas de Picasso se asemeja más a la imagen original de las Meninas de Velázquez que a la imagen original de las Meninas de Picasso.

Estos resultados permiten interpretar y analizar el significado de la amplitud y de la fase de la TF de una función objeto, poniendo de manifiesto la importancia de ésta última.

Así, comparando las imágenes recuperadas con las originales puede deducirse que, si bien la amplitud de la TF recoge la información concerniente a la intensidad de la imagen, el hecho de que en la fase de la TF resida la información asociada a la "morfología" de dicha imagen, le otorga gran importancia.

Page 44: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

44

PRACTICA 4

OBJETIVOS

En la presente práctica se pretende:

Utilizar la transformada discreta en coseno para representar y comprimir imágenes.

EJERCICIO 1 1) Simule la compresión de una imagen en formato JPEG y compare la calidad de la reproducción de la misma suponiendo que se descarte un tanto por ciento mayor o menor de los coeficientes DCT. Los archivos relacionados con este ejercicio se encuentran en la carpeta PRACTICA4/EJERCICIO1.

1º En primer lugar se carga la imagen a comprimir y se normaliza. Seguidamente se fija el tamaño de los bloques para procesar la DCT y se descompone la imagen en bloques.

2º A continuación se definen tres máscaras de cuantificación distintas (aumentando

progresivamente el número de coeficientes de la serie a eliminar) y se cuantifican los coeficientes de la serie empleando cada una de dichas máscaras.

3º Finalmente, se obtienen las distintas imágenes comprimidas calculando las correspondientes

DCT inversas y se representan los resultados. Como muestra, recogemos las figuras correspondientes:

Page 45: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

45

Page 46: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

46

Los resultados gráficos permiten comprobar que la imagen comprimida se asemeja más a la

original en el caso en que la máscara aplicada descarta un menor número de coeficientes DCT.Se observa que aumentando progresivamente el número de coeficientes de la serie a eliminar, es decir, conforme la compresión se hace más elevada, la imagen comprimida reproduce cada vez peor los “detalles” de la imagen original. Al multiplicar los coeficientes DCT por cada una de las máscaras de cuantificación empleadas

Page 47: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

47

A medida que aumenta el número de coeficientes eliminados por la máscara, disminuye la frecuencia espacial de las contribuciones descartadas

Se anulan las contribuciones De los coeficientes de mayor frecuencia

Aumenta el tamaño de los “detalles” que quedan excluidos en la imagen comprimida, por lo que la reproducción de la imagen original se hace mas “burda”.

EJERCICIO 2

2) Calcule y dibuje las funciones base de la DCT para matrices 8x8 y 16x16.

Los archivos relacionados con este ejercicio se encuentran en la carpeta PRACTICA4/EJERCICIO1.

La descripción de esta función es: function[object]=FuncionBase(N,m,n), donde el valor del parámetro "N" especifica el tamaño de la matriz cuadrada y los valores de los parámetros "m" y "n" indican los subíndices del elemento de la matriz (fila y columna respectivamente) correspondientes a la función base que se desea calcular El procedimiento que se lleva a cabo en tal fichero es el que sigue:

Se calcula el producto de las funciones coseno dependientes de "p" y "q" y, a continuación, se realizan las siguientes operaciones que equivalen a multiplicar el producto de cosenos por los valores de "p " y "q " correspondientes. Se procede de forma análoga para obtener y representar funciones de la base de la DCT para matrices cuadradas de tamaños 8 y 16 respectivamente. A modo de ejemplo, se recogen las figuras obtenidas de la representación de las funciones base correspondiente a "m" y "n" nulos, para ambos tamaños de matriz.

Page 48: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

48

Page 49: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

49

Page 50: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

50

Page 51: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

51

Page 52: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

52

Page 53: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

53

Page 54: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

54

EJERCICIO 3

3) En el caso de los sistemas ópticos lineales, ¿puede ocurrir que un SO realice una degradación similar a la anterior en una imagen de entrada? ¿En qué casos? ¿Por qué?

Se encuentran en la carpeta PRACTICA4/EJERCICIO1.

En el proceso de cuantificación que comprende la compresión JPEG llevada a cabo en las simulaciones,

Al multiplicar los coeficientes DCT por la máscara de cuantificación empleada

Lo que se hace es anular la contribución de los coeficientes de mayor frecuencia

Por tanto, la degradación que se produce en la imagen comprimida es consecuencia de la pérdida de la información referente a la imagen original que contienen las componentes de frecuencias más elevadas de su espectro. Como se pone de manifiesto en los ejercicios anteriores, el resultado es que la imagen comprimida no reproduce fielmente los “detalles” presentes en la imagen original. Así, puede inferirse que todo sistema óptico que atenúe las altas frecuencias espaciales (que actúe como un filtro paso-baja) producirá una degradación similar sobre la imagen de entrada.

El efecto que se produce en las imágenes proporcionadas (imágenes de salida) por una matriz de

detectores (CCD) o una película fotosensible, podría ser un ejemplo. En ambos casos, si el contenido en frecuencias espaciales de la imagen proyectada sobre el sistema (imagen de entrada) posee componentes por encima de una cierta frecuencia característica del sistema (relacionada con el tamaño del píxel y del grano, respectivamente), la imagen de salida no reproducirá fielmente a la de entrada.

.

En los dos ficheros de instrucciones se estudia comparativamente el efecto de la compresión JPEG sobre dos imágenes con distinto contenido en frecuencias espaciales a través de dos ejemplos, en los que se emplean dos parejas de imágenes diferentes.

se procede de igual forma para cada pareja de imágenes tratadas, teniendo en cuenta que una de

ellas presenta un “mayor” contenido en frecuencias espaciales (velazquez_bn.jpg e iglesia2_bn.jpg) que la otra (picasso_bn.jpg e iglesia1_bn3.jpg).

Page 55: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

55

1º En primer lugar se cargan las dos imágenes a comprimir y se normalizan. 2º Seguidamente se fija el tamaño de los bloques para procesar la DCT y se descomponen las

imágenes en bloques. A continuación se define la máscara de cuantificación (que en este caso se elige para que la compresión no sea muy elevada) y se cuantifican los coeficientes de la serie. Finalmente, se obtienen las imágenes comprimidas calculando la DCT inversa y se representan los resultados.

Los resultados gráficos permiten comprobar que la imagen comprimida se asemeja más a la

original en el caso en que ésta última posee un "menor" contenido en frecuencias espaciales. Es decir, se observa que el efecto de la compresión es menos apreciable cuanto menores son las componentes en frecuencias espaciales elevadas del espectro contenido en la imagen original.

Esto se debe a que, como ya se ha indicado previamente, al multiplicar los coeficientes DCT por la

máscara de cuantificación empleada, lo que se hace es anular la contribución de los coeficientes de mayor frecuencia.

Este efecto puede visualizarse con mayor claridad ampliando una misma sección de las imágenes original y comprimida que se muestran en cada una de las dos figuras representadas, y comparando las diferencias existentes entre ambas imágenes en los dos casos. Esto es lo que se muestra en las figuras que recogemos a continuación.

A modo de ejemplo, se adjuntan los ficheros de las figuras obtenidas con una sección de las imágenes ampliada, para el caso de los cuadros de las Meninas de Velázquez y de Picasso y para el caso de las imágenes de las iglesias, cuadro de Van Gogh y fotografía.

Page 56: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

56

Con zoom:

Page 57: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

57

Con zoom:

Page 58: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

58

Con zoom:

Page 59: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

59

Con zoom:

Page 60: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

60

PRACTICA 5

OBJETIVOS

En la presente práctica se pretende:

Simular la correlación óptica de dos imágenes.

EJERCICIO 1

1) Describe, consultando el menú de ayuda de MatLab, qué se entiende por el

concepto de núcleo (“kernel”) de la correlación y estudia cómo MatLab realiza la operación de correlación.

El núcleo o kernel de la correlación es la imagen de objeto test que, una vez rotada 180º, se convoluciona con la imagen de la escena problema de entrada. Así, puede considerarse que dicho núcleo, formado por la imagen test, constituye un filtro que se aplica a la imagen problema al realizar la operación de correlación. Esto es lo que se pretende mostrar en los archivos relacionados con este ejercicio, que se encuentran en la carpeta PRACTICA5/EJERCICIO1.

En los distintos ficheros de instrucciones se estudia cómo MatLab realiza la operación de correlación bidimensional a través de distintos ejemplos, en los que se emplean diferentes imágenes test y las correspondientes imágenes problema.

En todos los ficheros se procede de igual forma para cada una de las distintas imágenes test

tratadas (m3.jpg, P.jpg y letraa.jpg) y las correspondientes imágenes problema (m32.jpg, QAP.jpg y conjuntoletras.jpg).

1º En primer lugar se leen las imágenes problema y test que se van a emplear. 2º Se realiza la correlación 2D de la imagen test con la imagen problema. Finalmente, se

representan los resultados obtenidos. Como muestra, recogemos las figuras correspondientes al estudio realizado empleando como test

la imagen de una letra “a” (letraa.jpg) y como problema la imagen de distintas letras (conjuntoletras.jpg).

Page 61: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

61

Nótese que la representación en escala de colores destaca los picos de correlación que aún quedan más patentes en la representación en superficie.

Page 62: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

62

Como muestra, recogemos las figuras correspondientes al estudio realizado empleando como test la imagen de una letra “p”.

Nótese que la representación en escala de colores destaca los picos de correlación que aún

quedan más patentes en la representación en superficie.

Page 63: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

63

Como muestra, recogemos las figuras correspondientes al estudio realizado empleando como test la imagen de una letra “p”.

Nótese que la representación en escala de colores destaca los picos de correlación que aún quedan más patentes en la representación en superficie.

Page 64: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

64

EJERCICIO 2

2) Compara las operaciones de convolución y correlación, y su uso en el

filtrado de imágenes con la función IMFILTER. Como se ha indicado en el ejercicio anterior, la operación de correlación consiste en convolucionar la imagen test rotada 180º con la imagen problema de entrada. Así, la rotación de la imagen test hace que las operaciones de correlación sean diferentes a las operaciones de convolución.Esto es lo que se pretende mostrar en los archivos relacionados con este ejercicio, que se encuentra en la carpeta PRACTICA5/EJERCICIO2.

En los distintos ficheros de instrucciones se estudia comparativamente cómo MatLab realiza las operaciones de correlación y convolución bidimensionales a través de distintos ejemplos se procede:

1º En primer lugar se leen las imágenes a tratar y fuente que se van a emplear. 2º Seguidamente, se realiza la correlación 2D y la convolución 2D de la imagen test con la imagen

problema. 3º Se representan los resultados obtenidos. La representación en escala de colores destaca los picos de correlación pero no los máximos de

convolución, por ello se omitirá también la figura correspondiente en este caso. En cambio, tanto unos como otros dichos máximos de convolución se visualizan nítidamente en la representación en superficie, como se observa en la última figura que se recoge Los resultados gráficos obtenidos revelan la existencia de claras diferencias entre las operaciones de correlación y convolución bidimensionales realizadas con las mismas imágenes test y problema.

La de la función IMFILTER (Multidimensional image filtering).permite realizar un filtrado multidimensional de la imagen empleando el filtro que se desee, sin más que indicarlo, una vez que se haya definido previamente.

Filtrado letra a:

Page 65: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

65

Nótese que los máximos de la imagen de salida filtrada tanto usando correlación como usando

convolución, se visualizan nítidamente en la representación en superficie. Los resultados gráficos revelan la existencia de claras diferencias entre las operaciones de filtrado realizadas con la imagen y la imagen problema, usando correlación y usando convolución.

Comparación de la letra a:

Page 66: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

66

Comparación de la mariposa:

Page 67: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

67

Comparación de la p:

Page 68: Moises Valenzuela Gutierrez Formacion y Procesado (1)

Formación y Procesado Óptico de Imágenes Prácticas de MatLab

68

CONCLUSIONES FINALES:

Con la realización de estas prácticas hemos aprendido las nociones y comandos básicos en el uso y desarrollo del programa Matlab para el tratamiento de imágenes y definición de funciones. Para nosotros, que solo teníamos conocimiento de programación en lenguaje Fortran, el descubrimiento de Matlab, ha resultado una revolucion, pues posee funciones ya construidas que facilitan mucho nuestro trabajo. Sobre todo hemos aprendido algo, que es lo imprescindible que resulta la transformada de fourier en el tratamiento de imágenes. En concreto, facilitan el aprendizaje del uso de la transformada rápida de Fourier (FFT), de la transformada discreta en coseno (DCT) y de la simulación digital de la correlación óptica. Gracias a los resultados obtenidos en las distintos ejercicios realizados pueden comprobarse las principales propiedades de la transforma de Fourier unidimensional y bidimensional, así como la importancia del módulo y la fase de ésta

BIBLIOGRAFÍA

J.L. Nieves, J. Hernández y J.R. Jiménez, Introducción a la teoría difraccional de la formación de imágenes, Universidad de Granada, 2002. Manual de matlab.