Podemos diseñar fácilmente filtros de interpolación que obedezcan ciertas restricciones de dominio de frecuencia utilizando el algoritmo Parks-McClellan . Sin embargo, no está claro de inmediato cómo aplicar restricciones de dominio de tiempo; en particular, estoy interesado en generar filtros Nyquist. Entonces, si estoy sobremuestreando por un factor de N
, quiero que el filtro tenga cruces por cero en kN
, para enteros distintos de cero k
(esto asegura que las muestras de entrada a mi interpolador aparecerán en la secuencia de salida).
He visto a Harris 1 hablar sobre una técnica para diseñar filtros de media banda, es decir, el caso especial donde N=2
. ¿Hay una solución general para esto? (Sé que podemos diseñar fácilmente filtros con el método de la ventana, pero eso no nos da el mismo control).
[1] Procesamiento de señal multirate para sistemas de comunicación , pp. 208-209
fuente
N=2
ver mi respuesta a: Diseño de filtro FIR: Window vs Parks-McClellan y Least-Squares .Respuestas:
Un método de diseño, aunque uno que se limita a potencias de dos, sería comenzar con un filtro de media banda, insertar ceros entre sí (crea una réplica espectral), y luego convolverlo con un segundo filtro de media banda que tenga una banda de transición más ancha. Repita el proceso hasta llegar a la potencia requerida de 2.
Aquí hay un ejemplo que crea un filtro de paso bajo con Fc = fs / 8 y cruces por cero cada 4 muestras:
fuente
Un método para obtener los cruces por cero deseados es hacer un diseño híbrido.
Comience con un filtro de media banda Parks-McLellan / Remez con el mismo peso que la banda de paso y la banda de detención. Como es un filtro de media banda , tendrá ceros en muestras alternativas. Luego puede interpolar el dominio del tiempo mediante sin (x) / x rellenando con cero en el dominio de frecuencia.
Ejemplo: crear un filtro de paso bajo fs / 12 con cruces por cero cada 6 muestras.
El filtro resultante está cerca, pero no es tan bueno como el prototipo en términos de onda de paso / banda de paso. La interpolación sin (x) / x introduce algún timbre de bajo nivel. Es posible que deba sobredesignificar ligeramente el filtro prototipo para obtener el nivel de atenuación requerido en el filtro interpolado.
fuente