Antecedentes: Muitas vezes, estou realizando algum tipo de tarefa de processamento de sinal que requer um filtro exclusivo. Normalmente, neste ponto, vou ao MATLAB e giro um novo filtro exclusivo usando . A firpm()função MATLAB implementa esse algoritmo Parks-McClellan. Agora eu tenho um filtro e coloco o filtro em uma matriz codificada. Mas aqui está o problema: agora tenho um filtro codificado que funciona apenas para um cenário.
O problema: agora posso resolver meu problema de processamento de sinal du-jour ... mas apenas para uma taxa de amostra única muito ESPECÍFICA ou um cenário ESPECÍFICO.
O objetivo: quero poder chamar do código C ou de algum outro idioma e tornar meu código de processamento de sinal mais genérico. Não consigo encontrar uma implementação de código aberto do firpm()!
Onde posso obter uma implementação de código aberto do algoritmo ideal de design de filtro FIR de Parks-McClellan (também conhecido como no MATLAB)?
PS Estou ciente de que posso projetar filtros de maneira diferente usando janelas ou algo mais ... fique à vontade para mencionar os que estão nos comentários. Mas o objetivo desta pergunta não é perguntar "quais são as outras técnicas de design de filtro?" o objetivo é encontrar uma implementação de código aberto do MUITO MUITO Útil ... ou algo semelhante.
PPS Um dos objetivos desta pergunta é aprender como o algoritmo Parks-McClellan funciona, examinando primeiro o código e depois planejo ler alguma teoria de fundo.
type firpm.mno MATLAB? Isso mostrará a implementação da função do MATLAB.