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 eo 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 (1 / N) (para fazer a área do pulso e, portanto, o ganho de O filtro, um). Na prática, é melhor tomar (N) ímpar. Embora uma média móvel possa também ser calculada utilizando um número par de amostras, utilizar 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 frequê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). Uma vez que 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 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 (xn1 / N) Aparece no final, enquanto o termo (xn-N1 / N) é removido do 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 procurar por uma implementação recursiva é que os erros de arredondamento se acumularão. Isso pode ou não 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 agora 29 de setembro de 2013 Movendo a média por convolução O que é média móvel e para que é bom Como a média móvel é feita usando convolução A média móvel é uma operação simples usada geralmente para suprimir o ruído de um sinal: definimos o valor de cada ponto Para a média dos valores em sua vizinhança. Por uma fórmula: Aqui x é a entrada e y é o sinal de saída, enquanto o tamanho da janela é w, suposto ser ímpar. A fórmula acima descreve uma operação simétrica: as amostras são tomadas de ambos os lados do ponto real. Abaixo está um exemplo da vida real. O ponto em que a janela é colocada realmente é vermelho. Valores fora de x são supostos ser zeros: Para brincar e ver os efeitos da média móvel, dê uma olhada nesta demonstração interativa. Como fazê-lo por convolução Como você pode ter reconhecido, o cálculo da média móvel simples é semelhante à convolução: em ambos os casos uma janela é deslizada ao longo do sinal e os elementos na janela são resumidos. Então, dar-lhe uma tentativa de fazer a mesma coisa usando convolução. Use os seguintes parâmetros: A saída desejada é: Como primeira aproximação, vamos tentar o que obtemos convolvendo o sinal x pelo k kernel seguinte: A saída é exatamente três vezes maior do que o esperado. Também pode ser visto que os valores de saída são o resumo dos três elementos na janela. É porque durante a convolução a janela é deslizada ao longo, todos os elementos nele são multiplicados por um e, em seguida, resumido: yk 1 cdot x 1 cdot x 1 cdot x Para obter os valores desejados de y. A saída deve ser dividida por 3: Por uma fórmula incluindo a divisão: Mas não seria ótimo para fazer a divisão durante a convolução Aqui vem a idéia, reorganizando a equação: Então vamos usar o k kernel seguinte: Desta forma, vamos Obter a saída desejada: Em geral: se queremos fazer a média móvel por convolução tendo um tamanho de janela de w. Vamos usar o k kernel k: Uma função simples fazendo a média móvel é: Um exemplo de uso é: O cientista e engenheiros Guia de processamento de sinal digital Por Steven W. Smith, Ph. D. Como o nome indica, o filtro de média móvel opera fazendo a média de um número de pontos a partir do sinal de entrada para produzir cada ponto no sinal de saída. Na forma de equação, isto é escrito: Onde está o sinal de entrada, é o sinal de saída, e M é o número de pontos na média. Por exemplo, num filtro de média móvel de 5 pontos, o ponto 80 no sinal de saída é dado por: Como alternativa, o grupo de pontos do sinal de entrada pode ser escolhido simetricamente em torno do ponto de saída: Isto corresponde à alteração da soma em Eq . 15-1 de: j 0 a M -1, para: j - (M -1) / 2 a (M -1) / 2. Por exemplo, em um filtro de média móvel de 10 pontos, o índice, j. Pode variar de 0 a 11 (média de um lado) ou -5 a 5 (média simétrica). A média simétrica requer que M seja um número ímpar. A programação é ligeiramente mais fácil com os pontos de apenas um lado no entanto, isso produz uma mudança relativa entre os sinais de entrada e saída. Você deve reconhecer que o filtro de média móvel é uma convolução usando um kernel de filtro muito simples. Por exemplo, um filtro de 5 pontos tem o kernel do filtro: 82300, 0, 1/5, 1/5, 1/5, 1/5, 1/5, 0, 08230. Ou seja, o filtro de média móvel é uma convolução Do sinal de entrada com um impulso retangular com uma área de um. A Tabela 15-1 mostra um programa para implementar o filtro de média móvel.
No comments:
Post a Comment