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.m
no MATLAB? Isso mostrará a implementação da função do MATLAB.