¿Alguien puede explicarme este banco de filtros polifásicos MDFT?

9

Encontré una pieza de código muy interesante para el banco de filtros polifásicos MDFT aquí . Desafortunadamente, no parece haber un documento que describa la teoría. ¿Alguien sabe alguna referencia para el código? Estoy especialmente interesado en estos 3 temas:

  1. ¿Cuáles son exactamente los datos en los canales? ¿Se supone que son reales, imaginarios o complejos?

  2. El código calcula solo la mitad del número de bandas. ¿Se debe a las señales de valor real utilizadas?

  3. El resultado de la etapa de síntesis se construye como una diferencia entre canales del resultado de los dos bancos de filtros de síntesis. ¿Por qué se hace así? No puedo encontrar ningún documento que describa esta idea.

Pascal
fuente

Respuestas:

2
  1. Es independiente de la entrada, cualquier cosa funcionará como lo haría con cualquier otro filtro prototipo de valor real. He implementado bancos de filtros polifásicos en los sistemas de radar en la práctica, donde estamos operando con datos complejos, tanto con pulso comprimido como sin comprimir. Los bancos de filtros como estos tienen muchas aplicaciones debido al diseño inherente y la velocidad teórica.

  2. Los bancos de filtros polifásicos suelen crear una "copia" desplazada de fase de la versión original para lograr una mejor reconstrucción. Simplemente escaneando el código, parece que esto es lo que está haciendo con sus vectores X1 y X2. Notarás que si revisas el código y revisas el espectro, las subbandas no tendrán superposición de banda de paso. Es aún más obvio si nos fijamos en las versiones modificadas de la respuesta de frecuencia del filtro. Dado que la "copia" de la señal original se modificó en fase, también tendrá segmentos no superpuestos dentro de sí misma, pero será más difícil combinar el original y la copia para cubrir completamente de -pi a foto en una escala de frecuencia normalizada.

Por lo general, la cadena de procesamiento es la siguiente: obtener entrada, crear una copia, cambiar la fase de la copia (todo de aquí en adelante se hace dos veces, una para el original y otra para la copia con desplazamiento de fase; llamemos a estos superior (original) y inferior ( copiar)), aplique un filtro prototipo de polifase a las señales superior e inferior, aplique un DFT para hacer la magia polifásica, y ahora está todo canalizado. La síntesis es más o menos esto a la inversa.

La parte con la que las personas luchan suelen ser los filtros polifásicos y el uso de las señales superior e inferior, que parece ser el caso para esta pregunta. El banco de filtros en sí no es complicado, pero la matemática detrás de la polifase puede serlo si no tiene un fondo de procesamiento de señal de velocidad múltiple. El filtro prototipo está típicamente diseñado para hacer, por ejemplo, 32 subbandas, pero dado que tenemos señales superiores e inferiores, cada una de las cuales tiene 32 subbandas, realmente tenemos 64. Dejaré las matemáticas por qué los filtros polifásicos funcionan en un libro de texto. ya que eso no estaba en tu pregunta.

  1. Ver arriba, tiene que ver con el cambio de fase. También vaya unas líneas y verá una negación. Mira esos índices. La resta que estás viendo puede no estar haciendo exactamente lo que crees que está haciendo. Intente recorrer el código y verificarlo.
matthewjpollard
fuente
1
  1. La serie temporal de entrada que crea es un sonido complejo de LFM . En general, los datos de entrada pueden ser reales o complejos. Si el PFB (banco de filtros polifásicos) se está utilizando directamente después de un ADC, los datos podrían ser reales.
  2. ¿A qué línea del código te refieres? No veo que solo calcule la mitad del número de bandas.
  3. No estoy seguro.
random_dsp_guy
fuente