18
TRANSFORMADA DE FOURIER TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE EN EL PROCESAMIENTO DE IMAGENES IMAGENES ING. HENRY MORENO ING. HENRY MORENO MOSQUERA MOSQUERA

TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Embed Size (px)

Citation preview

Page 1: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

TRANSFORMADA DE FOURIER TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE EN EL PROCESAMIENTO DE

IMAGENESIMAGENES

ING. HENRY MORENO ING. HENRY MORENO MOSQUERAMOSQUERA

Page 2: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Transformadas ContinuasTransformadas Continuas

Transformado de FourierTransformado de Fourier

F(u) = F(u) = f(x)e f(x)e[-j2[-j2ux]ux]dxdx

Transformada inversaTransformada inversa

f(x) = f(x) = F(u)e F(u)e[j2[j2ux]ux]dudu

Page 3: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Transformadas de 2 Transformadas de 2 variablesvariables

Para el caso de una imagen se requiere Para el caso de una imagen se requiere aplicar la transformación en 2-Daplicar la transformación en 2-D

Transformado de FourierTransformado de Fourier

F(u) = F(u) = f(x,y)e f(x,y)e[-j2[-j2ux+vy)]ux+vy)]dxdydxdy

Transformada inversaTransformada inversa

f(x) = f(x) = F(u,v)e F(u,v)e[j2[j2ux+vy)]ux+vy)]dudvdudv

Page 4: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Transformadas discretaTransformadas discreta

Para el caso de una imagen digital se aplica Para el caso de una imagen digital se aplica la la transformada discreta de Fourier (DFT)transformada discreta de Fourier (DFT)

Transformado de FourierTransformado de Fourier

F(u) = (1/MN)F(u) = (1/MN) f(x,y)e f(x,y)e[-j2[-j2ux/M+vy/N)]ux/M+vy/N)]

Transformada inversaTransformada inversa

f(x) = f(x) = F(u,v)e F(u,v)e[j2[j2ux/M+vy/N)]ux/M+vy/N)]

Existe una forma eficiente de implementar Existe una forma eficiente de implementar la DFT llamada la DFT llamada transformada rápida de transformada rápida de FourierFourier (FFT) (FFT)

Page 5: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

FiltradoFiltrado

Se aplica la Transformada de FourierSe aplica la Transformada de Fourier Se aplica el filtroSe aplica el filtro Se aplica la transformada inversaSe aplica la transformada inversa

Page 6: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Tipos de FiltrosTipos de Filtros

Pasa bajosPasa bajos

Pasa bandaPasa banda

Pasa altosPasa altos

Filtros idealesFiltros ideales Filtros butterworthFiltros butterworth

Page 7: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Filtro ideal pasa bajosFiltro ideal pasa bajos

Page 8: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Filtro Butterworth pasa-Filtro Butterworth pasa-bajosbajos

Page 9: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

DFT A UN VECTORDFT A UN VECTOR Un vector x(N) representa el muestreo Un vector x(N) representa el muestreo

de una señal unidimensional (Puede ser de una señal unidimensional (Puede ser voz) en un intervalo de tiempo t.voz) en un intervalo de tiempo t.

Ts = Periodo de Muestreo = 1/FsTs = Periodo de Muestreo = 1/Fs N = Tamaño vector = t/TsN = Tamaño vector = t/Ts Ejm: Fs =8000 Hz, Ts = 125 microsegEjm: Fs =8000 Hz, Ts = 125 microseg T = 50 ms, N = 50 ms/125 microseg = T = 50 ms, N = 50 ms/125 microseg =

400400

Page 10: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

DFT A UN VECTOR (Cont.)DFT A UN VECTOR (Cont.)

Al aplicarle DFT al vector x(N) generamos Al aplicarle DFT al vector x(N) generamos otro vector X(N), el cual representa otro otro vector X(N), el cual representa otro espacio diferente. Tradicionalmente dicha espacio diferente. Tradicionalmente dicha transformación pasa señales de tiempo a transformación pasa señales de tiempo a señales en frecuencia. (Uso en señales en frecuencia. (Uso en Telecomunicaciones y en Electrónica en Telecomunicaciones y en Electrónica en General).General).

Ejemplo 1. Abrir Archivo 1.vi (Labview)Ejemplo 1. Abrir Archivo 1.vi (Labview)

Page 11: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

FILTRADO MODIFICANDO EL VECTOR FILTRADO MODIFICANDO EL VECTOR X(N)X(N)

Como el vector X(N) nos representa la Como el vector X(N) nos representa la señal en el dominio de Tiempo, y se quiere señal en el dominio de Tiempo, y se quiere hacer un Filtro Rechaza Banda, hacer un Filtro Rechaza Banda, simplemente se fija en 0 las posiciones en simplemente se fija en 0 las posiciones en las cuales quedó ubicada la frecuencia o las cuales quedó ubicada la frecuencia o frecuencias que se quieren rechazar en el frecuencias que se quieren rechazar en el vector, y posteriormente se aplica la vector, y posteriormente se aplica la Transformada Inversa de Fourier, para Transformada Inversa de Fourier, para generar la señal en el tiempo ya filtrada.generar la señal en el tiempo ya filtrada.

Ejemplo 2. Archivo 2.vi (Labview)Ejemplo 2. Archivo 2.vi (Labview)

Page 12: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Transformada de Fourier de ImagenesTransformada de Fourier de Imagenes

•Posibilidad de conocer e identificar propiedades de la imagen.•Capacidad de procesar la imagen en el dominio espectral para el desarrollo de filtros.

Mucha matematica computacional es uno de los inconvenientes, ya que para hallarFFT bidimensional a una imagen de 256 x 256 pixel, se requiere aplicar FFT unidimen-sionales a a las filas y luego a las columnas, para lo cual se requiere 512 FFT de 256puntos complejos cada una.Se requiere obligatoriamente FFT implementada en Ensamblador.

Page 13: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Diseno de Filtros usando FFTDiseno de Filtros usando FFT

Se toma la imagen original y se aplica FFT Bidimensional.Se toma la imagen original y se aplica FFT Bidimensional. Dependiendo del tipo de Filtro que se seleccione se debe atenuar Dependiendo del tipo de Filtro que se seleccione se debe atenuar

la zona correspondiente. Si el LPF, atenuamos las altas la zona correspondiente. Si el LPF, atenuamos las altas frecuencias. Si es HPF se atenuan la bajas frecuenciasfrecuencias. Si es HPF se atenuan la bajas frecuencias

Se tiene la opcion de variar el umbral de atenuacion, es decir la Se tiene la opcion de variar el umbral de atenuacion, es decir la frecuencia de corte del filtro.frecuencia de corte del filtro.

Se puede variar el nivel de atenuacion.Se puede variar el nivel de atenuacion. Se devuelve el proceso a traves de IFFT hasta llegar a la imagen Se devuelve el proceso a traves de IFFT hasta llegar a la imagen

final procesada.final procesada.

Ejemplo 3: FFT.vi y FFT_2.viEjemplo 3: FFT.vi y FFT_2.vi

Page 14: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Compresion de Imagenes usando JPEGCompresion de Imagenes usando JPEG Aplicacion de la DCT(Transformada Discreta Coseno) a una Aplicacion de la DCT(Transformada Discreta Coseno) a una

submatriz de 8 x 8.submatriz de 8 x 8.

Se cuantifica la matriz usando el estandar de cuantificacion.Se cuantifica la matriz usando el estandar de cuantificacion.

Se ordenan los coeficientes en una nueva matriz en forma de Se ordenan los coeficientes en una nueva matriz en forma de zigzag de menor a mayor frecuencia.zigzag de menor a mayor frecuencia.

Se almacenan los datos eu una matriz final de salida. Dicha Se almacenan los datos eu una matriz final de salida. Dicha matriz obviamente no se puede visualizar, pero aplicamos el matriz obviamente no se puede visualizar, pero aplicamos el proceso inverso para decodificar hasta llegar a la matriz proceso inverso para decodificar hasta llegar a la matriz original.original.

El tamano de la matriz comprimida se visualiza en el monitor.El tamano de la matriz comprimida se visualiza en el monitor. El nivel de compresion flcutua entre 15 y 20 veces, El nivel de compresion flcutua entre 15 y 20 veces,

dependiendo de la imagen.dependiendo de la imagen.

Page 15: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA
Page 16: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Algoritmo de Realce de Algoritmo de Realce de ImagenesImagenes

Se implemento el Algoritmo retinex.

)),(*),(log()),(log(),( 21212121 xxFxxIxxIxxR

Se aplica FFT y IFFT a dicha funcion para lograr eficiencia y evitar la convolucion

El filtro Gaussiano es:

]/)([21

222

21.),( xxekxxF

)),('),('(log)),(log(),( 12121 vuFvuIFxxIxxR

Alfa y beta son factores de escala y desplazamiento para la funcion.

Page 17: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Aplicación en un AeropuertoAplicación en un Aeropuerto

Page 18: TRANSFORMADA DE FOURIER EN EL PROCESAMIENTO DE IMAGENES ING. HENRY MORENO MOSQUERA

Rendimiento del anterior Rendimiento del anterior ejemploejemplo

En Matlab, dicho algoritmo tarda cerca de En Matlab, dicho algoritmo tarda cerca de 2 minutos por imagen.2 minutos por imagen.

En un DSP, con reloj de 166 MHz procesa En un DSP, con reloj de 166 MHz procesa tres imágenes por segundotres imágenes por segundo

Si llevamos a un reloj de 1000 Mhz Si llevamos a un reloj de 1000 Mhz multiplicamos por 6 la cantidad de frames multiplicamos por 6 la cantidad de frames por segundo.por segundo.