An´ alisis de se˜ nales en geof´ısica 22 de octubre de 2014 Trabajo Pr´ actico No 10 Filtros inversos y deconvoluci´ on 1) Dada la secuencia peri´ odica a = (+2, −1, +1, +3), calcule su inversa exacta a−1 n haciendo uso de la transformada discreta de Fourier. Compruebe mediante un c´odigo en GNU-OCTAVE que la inversa obtenida es exacta seg´ un la convoluci´on circular, es decir: an ∗ a−1 n = (1, 0, 0, 0). 2) Dada una secuencia an queremos hallar un filtro de longitud finita fn tal que al convolucionarlo con an se obtenga la salida deseada dn , es decir: an ∗ fn = dn Utilizando notaci´ on matricial tendremos: Af = d, donde A es la matriz de convoluci´on de an . Si imponemos la condici´ on de que fn sea un filtro ´optimo en el sentido de los cuadrados m´ınimos: ||Af − d||22 = m´ınimo, resulta: f = AT A −1 AT d En general fn se conoce como filtro Wiener, filtro conformador o shaping filter. En particular, cuando la salida deseada es un impulso unitario, se habla de deconvoluci´on impulsiva (spike deconvolution) o filtro inverso Wiener. a) Calcule la inversa de la secuencia de fase m´ınima a = (1, 0.6) y tr´ unquela en una longitud de cuatro muestras. Luego calcule el filtro inverso Wiener de igual longitud a la del filtro inverso truncado. b) Convolucione la secuencia de fase m´ınima original con el filtro inverso truncado y con el filtro inverso Wiener. Calcule el error medio cuadr´atico del resultado de ambas convoluciones. ¿Cu´ al de los dos errores medios cuadr´aticos es menor? Explique brevemente por qu´e. Utilice el c´ odigo GNU-OCTAVE filtro-wiener.m provisto en la p´agina web de la materia para controlar el resultado. 3) A partir de los dipolos de fase m´ınima (1, 0.2), (1, −0.4), y (1, 0.6) y de sus respectivos dipolos equivalentes de fase m´ axima (0.2, 1), (−0.4, 1) y (0.6, 1) se pueden generar ond´ıculas equivalentes de fase m´ınima, lineal (mixta) y m´axima. Analice el c´odigo ond-equiv.m en el cual se convolucionan estos dipolos de forma adecuada para generar ond´ıculas equivalentes de tama˜ no 7 y se grafican los correspondientes espectros de amplitud, de fase, y las autocorrelaciones. Interprete los gr´aficos. TP No 8: Filtros inversos y deconvoluci´on 1 An´ alisis de se˜ nales en geof´ısica 22 de octubre de 2014 4) En el c´odigo dcon-ond-equiv.m se calcula el filtro inverso Wiener de longitud 15 de las ond´ıculas equivalentes de fase m´ınima, mixta (lineal) y m´axima de longitud 7 generadas igual que en el ejercicio anterior. El c´odigo permite elegir la posici´on del impulso unitario de la salida deseada cambiando la variable delay para que la salida sea de fase m´ınima, lineal (mixta) o m´ axima. Una vez hallado el filtro, se convolucionan las ond´ıculas con su filtro inverso Wiener obtenido (deconvoluci´ on). Para una salida deseada dada por un impulso unitario con un 1 en la primera muestra, ¿en qu´e caso el resultado es el esperado? Repita la deconvoluci´ on de las tres ond´ıculas equivalentes, pero ahora coloque primero el 1 en la muestra central de la salida deseada del filtro primero y luego en la u ´ltima muestra. ¿En qu´e casos el resultado es el esperado? Interprete y describa los resultados. 5) En el c´ odigo add-freq-zeros.m se genera una ond´ıcula de fase m´ınima y se la agregan ceros a partir de la convoluci´ on con dipolos cuyos ceros se encuentran pr´oximos al c´ırculo unitario |Z| = 1. De esta manera se obtiene una nueva ond´ıcula con valores cercanos a 0 en el espectro de amplitud y que tendr´ a su matriz de autocorrelaci´on mal condicionada. Grafique la ond´ıcula sin y con ceros, y sus espectros de amplitud. Calcule el filtro inverso Wiener de longitud 15 de cada una de ellas. Convolucione las ond´ıculas con el filtro inverso Wiener obtenido. Analice los resultados. 6) La matriz de correlaci´ on AT A de la expresi´on del filtro Wiener suele ser una matriz mal condicionada, es decir, existen valores propios que son ceros o pr´oximos a cero, que produce inestabilidad num´erica en la inversi´on. Esto puede ser evitado definiendo una nueva funci´ on objetivo a minimizar: J = ||Af − δ ||2 2 + µ ||f ||2 2 , donde hemos agregado un t´ermino de regularizaci´ on. Imponiendo la condici´on: dJ = 0, df obtenemos una nueva expresi´ on para el filtro inverso Wiener: f = AT A + µI −1 AT δ. Con valores peque˜ nos de µ se logra mayor resoluci´on pero menor estabilidad. Por el contrario, con valores grandes de µ se tendr´ a menor resoluci´on pero mayor estabilidad. Existe entonces una situaci´ on de compromiso entre resoluci´on y estabilidad. Cuando el operador de deconvoluci´on es inestable, peque˜ nas perturbaciones en la entrada provocan grandes variaciones en la salida. Es decir, si la entrada estuviera solamente formada por ruido, ´este ser´a amplificado en la salida por el operador inestable, lo que representa un efecto indeseable. Habitualmente el par´ametro de compromiso (trade-off ) µ se define en funci´on del coeficiente de correlaci´ on a lag cero R0 de la matriz de autocorrelaci´on AT A, µ= TP No 8: Filtros inversos y deconvoluci´on R0 × P, 100 2 An´ alisis de se˜ nales en geof´ısica 22 de octubre de 2014 donde P es el porcentaje de preblanqueo. Para elegir P y as´ı determinar µ, se prueba con distintos porcentajes de preblanqueo hasta lograr un resultado satisfactorio. Considere la ond´ıcula de fase m´ınima del ejercicio anterior con ceros pr´oximos al c´ırculo unidad. Sume una peque˜ na cantidad de ruido blanco a la ond´ıcula antes de deconvolucionarla. Calcule el filtro inverso Wiener de longitud similar a la de la ond´ıcula. Observe que la existencia de ceros en las altas frecuencias y la presencia de ruido aleatorio generan un nivel de ruido inaceptable en la ond´ıcula deconvolucionada. Pruebe deconvolucionar con distintos valores de preblanqueo hasta alcanzar un nivel de ruido aceptable en la ond´ıcula deconvolucionada en detrimento de la resoluci´ on. Grafique en tiempo y en frecuencia la ond´ıcula, el filtro inverso Wiener, y la ond´ıcula deconvolucionada, es decir, la convoluci´on de la ond´ıcula y el filtro inverso. Describa c´ omo se comparan los diferentes gr´aficos. Nota: utilice el c´ odigo GNU-OCTAVE bad-cond-dcon.m provisto en la p´agina web de la materia. 7) Genere una secuencia aleatoria de longitud igual a 4 veces la longitud de la ond´ıcula en el archivo wavelet y con un nivel de ruido de un 20 % del m´aximo de la ond´ıcula. S´ umele a esta secuencia aleatoria la ond´ıcula retardada en un n´ umero cualquiera de muestras. Luego correlacione esta u ´ltima secuencia con la ond´ıcula. ¿Puede detectar en el resultado de la correlaci´ on el retardo de la ond´ıcula? Explique el resultado obtenido. ¿Hasta qu´e nivel de ruido esta correlaci´ on permite determinar con precisi´on el retardo de la ond´ıcula? Nota: utilice el c´ odigo GNU-OCTAVE filtro-correlador.m provisto en la p´agina web de la materia. Preguntas claves I) ¿Cu´ando dos ond´ıculas son equivalentes? ¿Qu´e es una ond´ıcula de fase m´ınima equivalente? ¿Qu´e es una ond´ıcula de fase cero equivalente? II) ¿Qu´e es un shaping filter ? III) ¿A qu´e se le llama deconvoluci´ on spiking? IV) ¿Cu´al es la fase de un operador de deconvoluci´on spiking cuando la salida deseada es un impulso a lag cero? ¿Qu´e sucede cuando la fase de la ond´ıcula que se busca deconvolucionar no es m´ınima? TP No 8: Filtros inversos y deconvoluci´on 3
© Copyright 2024