19 votos

¿Por qué debo utilizar filtros digitales para bandpassing en lugar de simplemente manipular las señales en el dominio de la frecuencia y, a continuación, recuperar en el dominio del tiempo?

Soy bastante novato para el procesamiento de la señal y sé que esta pregunta puede ser demasiado amplio. Pero todavía me gustaría escuchar consejos de los expertos.

Me enseñó a usar butter (para diseño de filtro Butterworth aka el máximamente plana magnitud del filtro) y filtfilt (Cero de la fase de filtrado digital) funciones de paso de banda de filtrado de EEG (electroencefalograma) señales en MATLAB fuera de línea (es decir, después de la finalización de la grabación). De esta manera usted puede evitar el inevitable "retraso" causado por el filtro digital (es decir, cero de la fase de filtrado).

Entonces, alguien me preguntó por qué no podemos usar fft (Fast Fourier transform) para obtener la representación del dominio de frecuencia de la señal y, a continuación, ajustar la potencia de frecuencias no deseadas a cero, seguido por ifft (transformada rápida de Fourier Inversa) para recuperar los datos filtrados en el dominio del tiempo para el mismo propósito. Esta manipulación en el dominio de la frecuencia sonaba más simple y razonable para mí, y yo realmente no podía responder por qué.

¿Cuáles son las ventajas y desventajas del uso de la simple fft/ifft método de paso de banda de filtrado? ¿Por qué la gente prefiere el uso de la FIR o IIR filtros digitales?

Por ejemplo, es el fft/ifft método más propensos a la fuga espectral u ondulaciones en comparación con el establecido filtros digitales? ¿El método también sufren de retraso de fase? Es allí una manera de visualizar la respuesta al impulso de este método de filtrado para la comparación?

14voto

GSerg Puntos 33571

La principal razón de que el dominio de la frecuencia de procesamiento no se hace directamente es la latencia de los involucrados. En orden a hacer, digamos, una FFT de una señal, primero tiene que grabar todo en el dominio del tiempo de la señal de principio a fin, antes de convertirlo en el dominio de la frecuencia. Entonces usted puede hacer su procesamiento, volver a convertir el dominio del tiempo y reproducir el resultado. Incluso si los dos conversiones y el procesamiento de la señal en el medio son efectivamente instantáneo, no obtiene el primer resultado de la muestra hasta la última entrada de la muestra ha sido registrada. Pero usted puede conseguir "ideal" dominio de la frecuencia de resultados, si usted está dispuesto a poner con esto. Por ejemplo, 3 minutos de canción que se grabó en 44100 muestras/segundo se requieren para hacer de 8 millones de punto transforma, pero que no es una gran oferta en un CPU moderno.

Usted podría estar tentado a romper el dominio del tiempo de la señal en los más pequeños, bloques de tamaño fijo de datos y proceso de cada uno de ellos, la reducción de la latencia a la longitud de un bloque. Sin embargo, esto no funciona porque de "efectos de borde" — las muestras en cada extremo de un bloque no se alinean correctamente con las muestras correspondientes de los bloques adyacentes, la creación de artefactos inaceptables en los resultados.

Esto sucede a causa de los supuestos que están implícitos en el proceso que convierte entre el dominio del tiempo y dominio de la frecuencia (y viceversa). Por ejemplo, la FFT e IFFT "asumir" que el de datos es cíclico; en otras palabras, que los bloques de idéntico de dominio de tiempo de los datos de antes y después de que el bloque está siendo procesado. Dado que se trata en general no es cierto, usted consigue los artefactos.

En el dominio del tiempo de procesamiento puede tener sus problemas, pero el hecho de que usted puede controlar la latencia y no produce periódico artefactos que sea un ganador claro en la mayoría de las señales en tiempo real de procesamiento de las solicitudes.

(Esta es una versión ampliada de mi respuesta anterior.)

2voto

shash Puntos 668

Ciertamente, usted puede usar "boxcar" ideal filtros en el dominio de la frecuencia. La dualidad dice que esto es equivalente a convolving con una función de sinc de longitud infinita. Para reducir los artefactos asociados con la fabricación de la longitud finita, la función de sinc menudo es multiplicado por una ventana. Usted puede haber oído hablar de Hamming, Hanning (en realidad, von Hann), planteó el coseno, y otras técnicas de ventanas. La convolución puede ser computacionalmente más sencillo que el de la fft/ifft aproach, pero las respuestas son las mismas.

Cada método tiene ventajas y desventajas. La Butterworth es IIR, y los vagones son de ABETO. El Butterworths son probablemente más plana en la banda de paso, pero probablemente con menos pendiente el valor de atenuación, dependiendo de la orden de la IIR y la anchura de la FIR. filtfilt sería más difícil de implementar en tiempo real.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X