Sunday 24 February 2019

Movendo média vs iir


Filtros IIR e Filtros FIR. A resposta ao impulso ou a resposta em frequência classificam os filtros digitais A resposta ao impulso é a resposta de um filtro a um impulso de entrada x 0 1 e xi 0 para todos i 0 A transformação de Fourier da resposta ao impulso é a frequência do filtro Resposta que descreve o ganho do filtro para diferentes frequências. Se a resposta ao impulso do filtro cai para zero após um período finito de tempo, é um FIR filtro de resposta de impulso finito No entanto, se a resposta ao impulso existe indefinidamente, é um IIR Infinite Impulse Response filter Como os valores de saída são calculados determina se a resposta de impulso de um filtro digital cai para zero após um período finito de tempo Para filtros FIR os valores de saída dependem da corrente e os valores de entrada anteriores, enquanto que para IIR filtra a saída Os valores também dependem dos valores de saída anteriores. Vantagens e Desvantagens dos filtros FIR e IIR A vantagem dos filtros IIR sobre os filtros FIR é que IIR filte Rs normalmente requerem menos coeficientes para executar operações de filtragem semelhantes, que os filtros IIR funcionam mais rápido e requerem menos espaço de memória. A desvantagem dos filtros IIR é a resposta de fase não linear Os filtros IIR são bem adequados para aplicações que não requerem informações de fase, por exemplo, para Monitorando as amplitudes dos sinais Os filtros FIR são mais adequados para aplicações que requerem uma resposta de fase linear. Filtros de IIR Os valores de saída dos filtros IIR são calculados adicionando a soma ponderada dos valores de entrada anteriores e atuais à soma ponderada dos valores de saída anteriores. Os valores de entrada são xi e os valores de saída yi a equação de diferença define o filtro IIR. O número de coeficientes de avanço N x eo número de coeficientes inversos N y é normalmente igual e é a ordem do filtro Quanto maior a ordem do filtro, Assemelha-se a um filtro ideal Isto é ilustrado na figura a seguir de uma resposta de freqüência de filtros Butterworth lowpass com diferentes Ordens O mais acentuado o ganho do filtro cai, mais alta a ordem do filtro é. Filtros de filtro de Butterworth. A resposta de freqüência do filtro de Butterworth não tem ondulações na faixa de passagem e a banda de parada Por isso é chamado um filtro de máximo plana A vantagem dos filtros de Butterworth é a , A resposta de frequência do filtro de Chebyshev tem um intervalo de transição norrower do que a resposta de freqüência do filtro Butterworth que resulta em uma banda de passagem com mais ondulações A freqüência As características de resposta de filtros de Chebyshev têm uma resposta de magnitude equiripple na banda de passagem, a resposta de magnitude de diminuição monotônica na banda de interrupção e uma rolloff mais nítida na região de transição em comparação com filtros de Butterworth da mesma ordem. Semelhante ao filtro Butterworth suave na banda de passagem e na banda de interrupção Se o Filtro de Bessel é muito menor que a do filtro de Butterworth. De todos os tipos de filtro, o filtro de Bessel tem a faixa de transição mais ampla se a ordem do filtro for fixa. A figura a seguir compara a resposta de freqüência com uma Filtro fixo dos tipos de filtro IIR Butterworth, Chebyshev e Bessel que DIAdem suporta. Os filtros FIR também são conhecidos como filtros não-recursivos, filtros de convolução ou filtros de média móvel porque os valores de saída de um filtro FIR são descritos como um filtro finito Os valores de saída de um filtro FIR dependem apenas dos valores de entrada atuais e passados. Como os valores de saída não dependem de valores de saída passados, a resposta ao impulso decai para zero em um período finito de tempo os filtros FIR têm as seguintes propriedades. Os filtros podem alcançar a resposta linear da fase e passar um sinal sem distorção de fase. São mais fáceis de executar do que filtros de IIR. A seleção da função da janela para um filt do FIR Er é semelhante à escolha entre Chebyshev e Butterworth IIR filtros onde você tem que escolher entre os lóbulos laterais perto das frequências de corte e da largura da região de transição. Signal Analysis. Mathematical Functions. Assume a primeira ordem IIR Filter. Yn alfa xn 1 - alfa yn - 1.Como posso escolher o parâmetro alfa st o IIR aproxima o melhor possível o FIR que é a média aritmética das últimas k amostras. Quando n em k, infty, significando a entrada para o IIR pode ser mais longo do que k e ainda eu gostaria de ter a melhor aproximação da média das últimas k entradas. Eu sei que o IIR tem resposta de impulso infinita, daí eu estou procurando a melhor aproximação que eu seria feliz para a solução analítica se ele É para ou. Como poderia esta otimização problemas podem ser resolvidos dado apenas 1 ª ordem IIR. asked Oct 6 11 at 13 15. Deve ter de seguir yn alfa xn 1 - alfa yn - 1 precisamente Phonon Oct 6 11 at 13 32.This É obrigado a tornar-se uma aproximação muito pobre Você não pode pagar nada mais do que uma primeira ordem IIR leftaroundabout Oct 6 11 em 13 42. Você pode querer editar a sua pergunta para que você não use yn para significar duas coisas diferentes, por exemplo, o Segunda equação exibida poderia ler zn frac xn cdots frac x nk 1, e você pode querer dizer Qual é exatamente o seu critério de tão bom quanto possível, por exemplo, você quer que vert yn - zn vert seja o menor possível para todos n, ou vert yn - zn vert 2 seja o menor possível para todos n Dilip Sarwate Oct 6 11 Em 13 45. niaren Eu sei que este é um post antigo, por isso, se você pode se lembrar como é a sua função f derivado eu codifiquei uma coisa semelhante, mas usando as funções complexas de transferência para FIR H1 e IIR H2 e, em seguida, fazendo sum abs H1 - H2 2 Eu comparei isso com a sua soma fj, mas obter resultados resultantes diferentes Pensamento eu perguntaria antes de arar através da matemática Dom Jun 7 13 em 13 47.OK, vamos tentar obter o melhor começo yn alfa xn 1 - alfa yn - 1 Alfa xn 1 alfa alfa x n 1 1 alfa 2 alfa alfa x n-1 alfa 2 alfa x n-2 1 - alfa 3 yn - 3 fim de modo que o coeficiente de x Nm é alpha 1- alpha m. O próximo passo é tomar derivativos e equacionar a zero. Olhando para um gráfico do derivado J para K 1000 e alfa de 0 a 1, parece que o problema como eu ve set Ele está mal posicionado, porque a melhor resposta é alfa. Eu acho que há um erro aqui. A maneira como deveria ser de acordo com meus cálculos é. Usando o seguinte código no MATLAB produz algo equivalente, embora diferente. Mínimo. Então vamos supor que realmente só nos importamos com a aproximação sobre o comprimento de suporte do filtro FIR. Nesse caso, o problema de otimização é apenas J2 alfa alfa alfa alfa m - frac 2.Plotando J2 alfa para vários valores de K versus alfa resulta na data nas parcelas e tabela abaixo. Para K 8 alfa 0 1533333 Para K 16 alfa 0 08 Para K 24 alfa 0 0533333 Para K 32 alfa 0 04 Para K 40 alfa 0 0333333 Para K 48 alfa 0 0266667 Para K 56 alpha 0 0233333 Para K 64 alpha 0 02 Para K 72 alpha 0 0166667. As linhas tracejadas a vermelho são 1 K e as linhas verdes são alfa, o valor de alfa que minimiza J2 alfa escolhido de tt alfa 0 01 1 3. Há uma discussão agradável deste problema em Processamento de Sinal Embedded com o Micro Signal Archite Cture aproximadamente entre as páginas 63 e 69 Na página 63 inclui uma derivação do filtro de média móvel recursiva exata que niaren deu em sua resposta. Por conveniência com relação à discussão a seguir, corresponde à seguinte equação de diferença. A aproximação que coloca a Filtro para o formulário que você especificou requer assumindo que x aproximadamente y, porque e eu cito de pg 68 y é a média de xn amostras Essa aproximação nos permite simplificar a equação diferença anterior como follows. Setting alfa, chegamos à sua forma original, Y alpha xn 1- alpha y, o que mostra que o coeficiente que você quer com relação a esta aproximação é exatamente 1 em cima de onde N é o número de samples. Is esta aproximação o melhor em algum respeito É certamente elegante Aqui está como a resposta de magnitude Compara-se a 44 1kHz para N 3, e à medida que N aumenta para aproximação de 10 em azul. Como a resposta de Peter sugere, aproximar um filtro FIR com um filtro recursivo pode ser problemático sob um Norma de mínimos quadrados Uma extensa discussão sobre como resolver esse problema em geral pode ser encontrada na tese de JOS, Técnicas para Design de Filtros Digitais e Identificação de Sistemas com Aplicação ao Violino. Ele defende o uso da Norma Hankel, mas nos casos em que a fase Resposta não importa, ele também abrange Kopec s Método, que pode funcionar bem neste caso e usa uma norma L 2 Uma ampla visão geral das técnicas na tese pode ser encontrada aqui Eles podem render outras aproximações interessantes. FIR filtros, filtros IIR , Ea equação linear da diferença do coeficiente constante. Filtros FIR rápidos moventes Cúbicos. Nós discutimos sistemas em que cada amostra da saída é uma soma ponderada de determinadas das amostras da entrada. Tomemos um sistema ponderado causal da soma, Onde causal significa que uma dada amostra de saída depende apenas da amostra de entrada atual e de outros insumos mais cedo na seqüência Nem os sistemas lineares em geral, nem os sistemas finitos de resposta de impulso em particular, precisam Para ser causal No entanto, a causalidade é conveniente para um tipo de análise que vamos explorar em breve. Se nós simbolizamos as entradas como valores de um vetor x e as saídas como valores correspondentes de um vetor y, então tal sistema pode ser escrito como Onde os valores de b são pesos aplicados às amostras de entrada atuais e anteriores para obter a amostra de saída atual. Podemos pensar na expressão como uma equação, com o sinal de igual signo igual a, ou como uma instrução processual, com o sinal de igual signo de atribuição . Vamos escrever a expressão para cada amostra de saída como um loop MATLAB de instruções de atribuição, em que x é um vetor N-comprimento de amostras de entrada, e b é um vetor de pesos M-length Para tratar o caso especial no Vamos inserir x em um vetor mais longo xhat cujas primeiras M-1 amostras são zero. Vamos escrever a soma ponderada para cada yn como um produto interno, e faremos algumas manipulações das entradas como inverter b para esse fim. Este tipo de sistema é muitas vezes c Um filtro de média móvel, por razões óbvias. De nossas discussões anteriores, deve ser óbvio que tal sistema é linear e invariante ao deslocamento Claro que seria muito mais rápido usar a convolução convolução MATLAB conv em vez do nosso mafilt. Instead De considerar as primeiras M-1 amostras da entrada de ser zero, poderíamos considerá-los para ser o mesmo que as últimas M-1 amostras Este é o mesmo que tratar a entrada como periódica Vamos usar cmafilt como o nome da função , Uma pequena modificação da função mafilt anterior Na determinação da resposta de impulso de um sistema, geralmente não há diferença entre estes dois, uma vez que todas as amostras não iniciais da entrada são zero. Desde um sistema deste tipo é linear e shift - Invariante, sabemos que seu efeito em qualquer sinusoide será apenas para escalá-lo e deslocá-lo. Aqui importa que usemos a versão circular. A versão circularmente convoluta é deslocada e escalada um pouco, enquanto a versão com convolução ordinária é distorcida na começar. Vamos ver o que a escala exata e deslocamento é usando um fft. Tanto entrada e saída têm amplitude apenas nas freqüências 1 e -1, que é como deveria ser, uma vez que a entrada era uma sinusoid eo sistema era linear A saída Os valores são maiores em uma proporção de 10 6251 8 1 3281 Este é o ganho do sistema. O que sobre a fase Nós só precisamos olhar onde a amplitude não é zero. A entrada tem uma fase de pi 2, como nós pedimos The A fase de saída é deslocada por um 1 0594 adicional com sinal oposto para a freqüência negativa, ou cerca de 1 6 de um ciclo à direita, como podemos ver no gráfico. Agora vamos tentar uma sinusoid com a mesma freqüência 1, mas em vez Da amplitude 1 e da fase pi 2, vamos tentar a amplitude 1 5 ea fase 0. Sabemos que apenas a frequência 1 e -1 terão amplitude não nula, por isso vamos apenas olhar para eles. A relação de amplitude é 15 9377 12 0000 É 1 3281 - e como para o phase. it é novamente deslocado por 1 0594.Se esses exemplos são típicos, podemos prever o efeito do nosso sistema Resposta de impulso 1 2 3 4 5 em qualquer sinusoid com frequência 1 - a amplitude será aumentada por um factor de 1 3281 ea fase de frequência positiva será deslocada por 1 0594. Poderíamos continuar a calcular o efeito deste sistema em Sinusoides de outras freqüências pelos mesmos métodos Mas existe uma maneira muito mais simples, e que estabelece o ponto geral Uma vez que a circunvolução circular no domínio do tempo significa multiplicação no domínio da freqüência, a partir disso. A resposta de impulso é a razão da DFT da saída para a DFT da entrada. Neste relacionamento. os coeficientes de DFT são números complexos Desde abs c1 c2 abs c1 abs c2 para todos os números complexos c1, c2, esta equação nos diz que O espectro de amplitude da resposta de impulso será sempre a relação entre o espectro de amplitude da saída e o da entrada. No caso do espectro de fase, ângulo c1 c2 ângulo c1 - ângulo c2 para todo c1, c2 com a condição de que Fases diferindo por n 2 pi a Re considerado igual. Portanto, o espectro de fase da resposta de impulso será sempre a diferença entre os espectros de fase da saída e a entrada com as correções de 2 pi necessárias para manter o resultado entre - pi e pi. Podemos ver os efeitos de fase Mais claramente se desempacotar a representação de fase, ou seja, se acrescentarmos vários múltiplos de 2 pi, conforme necessário, para minimizar os saltos que são produzidos pela natureza periódica da função de ângulo. Embora a amplitude e fase são normalmente utilizados para gráficos e tabulares , Uma vez que são uma forma intuitiva de pensar sobre os efeitos de um sistema sobre os vários componentes de freqüência de sua entrada, os coeficientes de Fourier complexos são mais úteis algébricamente, uma vez que permitem a expressão simples da relação. A abordagem geral que temos apenas Visto irá trabalhar com filtros arbitrários do tipo esboçado, em que cada amostra de saída é uma soma ponderada de algum conjunto de amostras de entrada. Como mencionado anteriormente, estes são Muitas vezes chamado filtros de resposta de impulso finito, porque a resposta de impulso é de tamanho finito, ou, por vezes, Moving Average filters. We pode determinar as características de resposta de freqüência de um tal filtro da FFT de sua resposta ao impulso e também podemos projetar novos filtros com desejado Características por IFFT a partir de uma especificação da resposta de freqüência. Filtros IIR Filtro. Não haveria nenhum ponto em ter nomes para filtros FIR, a menos que houvesse algum outro tipo s para distingui-los, e assim aqueles que estudaram pragmática não será surpreendido Saiba que existe de fato um outro tipo principal de filtro linear invariante no tempo. Esses filtros são às vezes chamados recursivos porque o valor das saídas anteriores, bem como os itens anteriores, importa, embora os algoritmos sejam geralmente escritos usando construções iterativas. Eles também são chamados Infinite Impulse Response Filtros IIR, porque em geral a sua resposta a um impulso continua para sempre Eles também são às vezes chamados Porque os coeficientes podem ser considerados como o resultado de fazer a regressão linear para expressar valores de sinal em função de valores de sinal anteriores. A relação dos filtros FIR e IIR pode ser vista claramente numa equação de diferença de coeficiente constante linear i E. setando uma soma ponderada de saídas igual a uma soma ponderada de entradas Isto é como a equação que damos anteriormente para o filtro FIR causal, exceto que além da soma ponderada de entradas, também temos uma soma ponderada de saídas. Se quisermos pensar nisso como um procedimento para gerar amostras de saída, precisamos reorganizar a equação para obter uma expressão para a amostra de saída atual y n. Adopting a convenção de que a 1 1 eg, escalando outros como e bs, podemos Se do termo 1a. nb 1 xnb 2 x n-1 b Nb 1 x n-nb - a 2 y n-1 - - a Na 1 y n-na. Se todos os outros que não um 1 são Zero, isto reduz a nosso amigo velho o filtro FIR causal. Este é o caso geral de um filtro LTI causal, E é implementado pelo filtro de função MATLAB. Vamos olhar para o caso em que os coeficientes b diferentes de b 1 são zero em vez do caso FIR, onde o a são zero. Neste caso, a amostra de saída corrente yn é calculada como um Para obter uma idéia do que acontece com esses filtros, vamos começar com o caso onde. Isso é, a amostra de saída atual É a soma da amostra de entrada corrente e metade da amostra de saída anterior. Tomaremos um impulso de entrada através de alguns passos de tempo, um de cada vez. Deve ficar claro neste ponto que podemos facilmente escrever uma expressão para a saída n-ésima Amostra é justo. Se MATLAB contado a partir de 0, isso seria simplesmente 5 n. Como o que estamos calculando é a resposta ao impulso do sistema, temos demonstrado pelo exemplo que a resposta ao impulso pode de fato ter infinitamente muitas amostras não-zero. Para implementar este primeiro trivial Filtro de ordem no MATLAB, poderíamos usar filtro A chamada será semelhante a this. and o resultado é. Está este negócio realmente ainda linear. We pode olhar para isso empirically. For uma abordagem mais geral, considere o valor de uma amostra de saída y N. Por substituição sucessiva, podemos escrever isto como. Isto é exatamente como nosso velho amigo, a forma de convolução de um filtro FIR, com a resposta ao impulso fornecida pela expressão 5 k eo comprimento da resposta ao impulso sendo infinito. Assim, o mesmo Os argumentos que usamos para mostrar que os filtros FIR eram lineares agora se aplicam aqui. Até agora isso pode parecer um monte de barulho por não muito. O que é toda essa linha de investigação boa para. Vamos responder esta questão em etapas, começando com um Não é um Grande surpresa que podemos calcular uma amostra exponencial por multiplicação recursiva Vamos olhar para um filtro recursivo que faz algo menos óbvio Desta vez, vamos torná-lo um filtro de segunda ordem, de modo que a chamada para o filtro será da forma. Defina o segundo coeficiente de saída a2 para -2 cos 2 pi 40 eo terceiro coeficiente de saída a3 para 1 e observe a resposta ao impulso. Não é muito útil como filtro, na verdade, mas gera uma onda senoidal amostrada a partir de um impulso Com três multiplicações por amostra Para entender como e por que ele faz isso, e como os filtros recursivos podem ser projetados e analisados ​​no caso mais geral, precisamos dar um passo atrás e dar uma olhada em algumas outras propriedades de números complexos, No caminho para a compreensão da transformada z.

No comments:

Post a Comment