Tuesday 19 December 2017

Movimento média filtro atraso


A média móvel como um filtro A média móvel é frequentemente utilizada para suavização de dados na presença de ruído. A média móvel simples nem sempre é reconhecida como o filtro de Resposta de Impulso Finito (FIR) que é, enquanto é realmente um dos filtros mais comuns no processamento de sinal. Tratá-lo como um filtro permite compará-lo com, por exemplo, windowed-sinc filtros (ver os artigos sobre low-pass, high-pass, band-pass e band-reject filtros para exemplos desses). A principal diferença com esses filtros é que a média móvel é adequada para sinais para os quais a informação útil está contida no domínio do tempo. Das quais as medidas de alisamento por média são um excelente exemplo. Filtros windowed-sinc, por outro lado, são fortes performers no domínio da freqüência. Com equalização no processamento de áudio como um exemplo típico. Há uma comparação mais detalhada de ambos os tipos de filtros no domínio do tempo versus desempenho de domínio de freqüência de filtros. Se você tiver dados para os quais o tempo e o domínio de freqüência são importantes, então você pode querer dar uma olhada em Variações na Média Móvel. Que apresenta um número de versões ponderadas da média móvel que são melhores nisso. A média móvel de comprimento (N) pode ser definida como escrita como é tipicamente implementada, com a amostra de saída corrente como a média das amostras (N) anteriores. Visto como um filtro, a média móvel executa uma convolução da seqüência de entrada (xn) com um pulso retangular de comprimento (N) e altura (1N) (para fazer a área do pulso e, portanto, o ganho do filtro , 1 ). Na prática, é melhor tomar (N) ímpar. Embora uma média móvel possa também ser calculada usando um número par de amostras, usar um valor ímpar para (N) tem a vantagem de que o atraso do filtro será um número inteiro de amostras, uma vez que o atraso de um filtro com (N) Amostras é exactamente ((N-1) 2). A média móvel pode então ser alinhada exatamente com os dados originais deslocando-o por um número inteiro de amostras. Domínio Dado que a média móvel é uma convolução com um pulso retangular, a sua resposta de frequência é uma função sinc. Isso torna algo como o dual do filtro windowed-sinc, uma vez que é uma convolução com um pulso sinc que resulta em uma resposta de freqüência retangular. É esta resposta de freqüência de sinc que faz com que a média móvel seja um desempenho fraco no domínio da freqüência. No entanto, ele funciona muito bem no domínio do tempo. Portanto, é perfeito para suavizar os dados para remover o ruído, enquanto ao mesmo tempo ainda mantém uma rápida resposta passo (Figura 1). Para o típico Ruído Gaussiano Branco Aditivo (AWGN) que é freqüentemente assumido, a média (N) de amostras tem o efeito de aumentar a SNR por um fator de (sqrt N). Como o ruído para as amostras individuais não está correlacionado, não há razão para tratar cada amostra de forma diferente. Assim, a média móvel, que dá a cada amostra o mesmo peso, vai se livrar da quantidade máxima de ruído para uma dada nitidez resposta passo. Implementação Porque é um filtro FIR, a média móvel pode ser implementada através de convolução. Ele terá então a mesma eficiência (ou falta dela) como qualquer outro filtro FIR. No entanto, também pode ser implementado recursivamente, de uma forma muito eficiente. Segue-se diretamente a partir da definição de que esta fórmula é o resultado das expressões para (yn) e (yn1), ou seja, onde observamos que a mudança entre (yn1) e (yn) é que um termo extra (xn1N) aparece em O final, enquanto o termo (xn-N1N) é removido desde o início. Nas aplicações práticas, muitas vezes é possível deixar de fora a divisão por (N) para cada termo, compensando o ganho resultante de (N) em outro lugar. Esta implementação recursiva será muito mais rápida que a convolução. Cada novo valor de (y) pode ser calculado com apenas duas adições, em vez das (N) adições que seriam necessárias para uma implementação direta da definição. Uma coisa a olhar para fora com uma implementação recursiva é que os erros de arredondamento irá acumular. Isso pode ou não pode ser um problema para o aplicativo, mas também implica que essa implementação recursiva realmente funcionará melhor com uma implementação inteira do que com números de ponto flutuante. Isso é bastante incomum, uma vez que uma implementação de ponto flutuante é geralmente mais simples. A conclusão de tudo isso deve ser que você nunca deve subestimar a utilidade do simples filtro de média móvel em aplicações de processamento de sinal. Filter Design Tool Este artigo é complementado com uma ferramenta Filter Design. Experimente com diferentes valores para (N) e visualize os filtros resultantes. Experimente agoraFIR Filter Noções básicas 1.1 O que são filtros quotFIR Os filtros FIR são um dos dois principais tipos de filtros digitais utilizados em aplicações de processamento de sinal digital (DSP), sendo o outro tipo IIR. 1.2 O que quotFIR significa quotFIR significa quotFinite Impulse Responsequot. Se você colocar um impulso, isto é, uma única amostra de 1 quot seguida de muitas quot0quot amostras, os zeros sairão depois que a amostra de quot1quot tiver feito seu caminho através da linha de atraso do filtro. 1.3 Por que a resposta ao impulso é quotfinita? No caso comum, a resposta ao impulso é finita porque não há feedback no FIR. A falta de feedback garante que a resposta ao impulso será finita. Portanto, o termo resposta ao impulso quotfinito é quase sinônimo de "feedback". No entanto, se o feedback é empregado ainda a resposta ao impulso é finito, o filtro ainda é um FIR. Um exemplo é o filtro de média móvel, no qual a N-ésima amostra anterior é subtraída (retrocedida) cada vez que uma nova amostra entra. Este filtro tem uma resposta de impulso finito mesmo que utilize feedback: após N amostras de um impulso, a saída Será sempre zero. 1.4 Como faço para pronunciar quotFIRquot Algumas pessoas dizem que as letras F-I-R outras pessoas pronunciam como se fosse um tipo de árvore. Nós preferimos a árvore. (A diferença é se você fala sobre um filtro F-I-R ou um filtro FIR.) 1.5 Qual é a alternativa aos filtros FIR Os filtros DSP também podem ser QuotInfinite Impulse Response (IIR). (Veja dspGurus IIR FAQ.) Os filtros IIR usam feedback, então quando você insere um impulso, a saída, teoricamente, toca indefinidamente. 1.6 Como os filtros FIR se comparam aos filtros IIR Cada um tem vantagens e desvantagens. Em geral, porém, as vantagens dos filtros FIR ultrapassam as desvantagens, por isso são usadas muito mais do que IIRs. 1.6.1 Quais são as vantagens dos filtros FIR (em comparação com os filtros IIR) Em comparação com os filtros IIR, os filtros FIR oferecem as seguintes vantagens: Podem ser facilmente concebidos para serem fase quotlinear (e normalmente são). Posto simplesmente, os filtros da fase linear atrasam o sinal de entrada mas donrsquot distorcem sua fase. Eles são simples de implementar. Na maioria dos microprocessadores DSP, o cálculo FIR pode ser feito através de uma única instrução. Eles são adequados para aplicações multi-taxa. Por multi-taxa, quer dizer quotdecimationquot (redução da taxa de amostragem), quotinterpolationquot (aumento da taxa de amostragem), ou ambos. Seja decimando ou interpolando, o uso de filtros FIR permite que alguns dos cálculos sejam omitidos, proporcionando assim uma importante eficiência computacional. Em contraste, se forem usados ​​filtros IIR, cada saída deve ser calculada individualmente, mesmo que a saída seja descartada (assim o feedback será incorporado no filtro). Eles têm propriedades numéricas desejáveis. Na prática, todos os filtros DSP devem ser implementados usando aritmética de precisão finita, ou seja, um número limitado de bits. O uso de aritmética de precisão finita em filtros IIR pode causar problemas significativos devido ao uso de feedback, mas os filtros FIR sem retorno podem ser implementados usando menos bits eo designer tem menos problemas práticos a resolver relacionados à aritmética não ideal. Eles podem ser implementados usando aritmética fracionária. Ao contrário dos filtros IIR, é sempre possível implementar um filtro FIR usando coeficientes com magnitude inferior a 1,0. (O ganho global do filtro FIR pode ser ajustado na sua saída, se desejado.) Esta é uma consideração importante ao usar DSP de ponto fixo, porque torna a implementação muito mais simples. 1.6.2 Quais são as desvantagens dos filtros FIR (em comparação com os filtros IIR) Em comparação com os filtros IIR, os filtros FIR têm, por vezes, a desvantagem de exigirem mais memória e / ou cálculo para obter uma determinada característica de resposta do filtro. Além disso, certas respostas não são práticas para implementar com filtros FIR. 1.7 Quais termos são usados ​​na descrição de filtros FIR Resposta de Impulso - A resposta de resposta de um filtro FIR é apenas o conjunto de coeficientes FIR. (Se você colocar um quotimplusequot em um filtro FIR que consiste em uma amostra quot1quot seguida por muitas quot0quot amostras, a saída do filtro será o conjunto de coeficientes, como a amostra 1 passa passado cada coeficiente, por sua vez, para formar a saída.) Tap - Um quottapquot FIR é simplesmente um par de coeficientes de delay. O número de torneiras FIR (frequentemente designado como quotNquot) é uma indicação de 1) a quantidade de memória necessária para implementar o filtro, 2) o número de cálculos necessários, e 3) a quantidade de quotfilteringquot o filtro pode fazer com efeito, Multiplicar-acumular (MAC) - Em um contexto de FIR, uma quotMACquot é a operação de multiplicar um coeficiente pela amostra de dados atrasada correspondente e acumular o resultado. As FIRs geralmente requerem um MAC por toque. A maioria dos microprocessadores DSP implementa a operação MAC em um único ciclo de instrução. Banda de Transição - A faixa de freqüências entre as bordas passband e stopband. Quanto mais estreita for a banda de transição, mais torneiras serão necessárias para implementar o filtro. (Uma banda de transição quotsmallquot resulta em um filtro quotsharpquot.) Delay Line - O conjunto de elementos de memória que implementam os elementos de retardo quotZ-1quot do cálculo FIR. Buffer circular - Um tampão especial que é quotcircular porque incrementar na extremidade faz com que ele envolva ao redor para o início, ou porque decrementing desde o início faz com que ele envolva ao redor para o fim. Os buffers circulares são frequentemente fornecidos por microprocessadores DSP para implementar a quotmoformação das amostras através da linha de retardo FIR sem ter de mover literalmente os dados na memória. Quando uma nova amostra é adicionada ao buffer, ela substitui automaticamente a mais antiga. Documentação Descrição gd, w grpdelay (b, a) retorna a resposta de atraso de grupo, gd. Do filtro de tempo discreto especificado pelos vetores de entrada, b e a. Os vetores de entrada são os coeficientes para o numerador, b. E denominador, a. Polinômios em z -1. A transformada Z do filtro de tempo discreto é H (z) B (z) A (z) x2211 l 0 N x2212 1 b (n 1) z x2212 l x2211 l 0 M x2212 1 a (l 1) z x 2212 eu. A resposta de atraso do grupo de filtros é avaliada em 512 pontos igualmente espaçados no intervalo 0, 960) no círculo unitário. Os pontos de avaliação no círculo da unidade são retornados em w. Gd, w grpdelay (b, a, n) retorna a resposta de atraso de grupo do filtro de tempo discreto avaliado em n pontos igualmente espaçados no círculo unitário no intervalo 0, 960). N é um número inteiro positivo. Para melhores resultados, defina n como um valor maior que a ordem do filtro. Gd, w grpdelay (sos, n) retorna a resposta de atraso de grupo para a matriz de seções de segunda ordem, sos. Sos é uma matriz K-by-6, onde o número de seções, K. Deve ser maior ou igual a 2. Se o número de seções for menor que 2, grpdelay considera a entrada como o vetor numerador, b. Cada linha de sos corresponde aos coeficientes de um filtro de segunda ordem (biquad). A iª linha da matriz SOS corresponde a bi (1) bi (2) bi (3) ai (1) ai (2) ai (3). Gd, w grpdelay (d, n) retorna a resposta de atraso de grupo para o filtro digital, d. Use designfilt para gerar d com base em especificações de resposta de freqüência. Gd, f grpdelay (.n, fs) especifica uma freqüência de amostragem positiva fs em hertz. Retorna um vetor comprimento-n, f. Contendo os pontos de freqüência em hertz em que a resposta de atraso de grupo é avaliada. F contém n pontos entre zero e fs2. Gd, w grpdelay (.n, inteiro) e gd, f grpdelay (.n, inteiro, fs) usam n pontos em torno de todo o círculo unitário (de 0 a 2 960 ou de 0 a fs). Gd grpdelay (.w) e gd grpdelay (.f, fs) retornam a resposta de retardo de grupo avaliada nas freqüências angulares em w (em radanssample) ou em f (em ciclosunit time), respectivamente, onde fs é a freqüência de amostragem. W e f são vectores com pelo menos dois elementos. Grpdelay (.) Sem argumentos de saída representa a resposta de atraso de grupo versus freqüência. Grpdelay funciona tanto para filtros reais como complexos. Nota: Se a entrada para grpdelay for de precisão simples, o atraso de grupo é calculado usando aritmética de precisão única. A saída, gd. É única precisão. O filtro de média móvel é um filtro FIR de comprimento N com todas as torneiras definidas igual a (1N) .160 É conhecida por sua péssima separação de freqüência, mas excelente resposta no tempo - Você pode implementá-lo com SigmaStudios bloco FIR como descrito aqui: Quanto mais tempo o filtro, mais suavização - mas o algoritmo de filtro FIR padrão usa muitas instruções para filtros enormes, Porque ele tem que multiplicar coeficientes para cada tap.160 Isso é um desperdício quando todos os coeficientes são os mesmos.160 Como o capítulo 15 do livro de Steven W. Smiths aponta, você pode fazer um filtro de média móvel com uma técnica recursiva que tem um Toque antes e depois de um retardo de tamanho (N-1 ).160 Tal filtro aparece abaixo como parte de um circuito de teste com fonte de sinal e um filtro de Bessel para comparação: 160160160160 Coeficientes são puxados para o bloco de ganho único na entrada.160 O presente samp Le adiciona à saída como ele entra no atraso, a amostra atrasada subtrai da saída como ele sai.160 O somador com o feedback acumula essas adições e subtrações para formar a saída - isso faz algo thats trivial em C, mas é de outra forma um Embora a técnica recursiva seja usada, o filtro permanece um verdadeiro filtro FIR - o comprimento de sua resposta ao impulso é definido apenas pelo seu atraso. 160160160160 Minha entrada de teste é uma onda quadrada com ruído adicionado.160 Os resultados filtrados aparecem como o traço superior em ambas as fotos - Primeiro o filtro de média móvel: O filtro Bessel: 160160160160 O filtro de média móvel permite mais ruído, mas melhor preserva a Forma de onda quadrada - não rode os cantos e as inclinações para cima e para baixo são simétricas (sua fase linear) .160 Ouvir as duas formas de onda com fones de ouvido mostra um resultado similar - mais ruído com o filtro de média móvel, mas a característica Som de uma onda quadrada vem através.

No comments:

Post a Comment