Eu tenho essencialmente uma matriz de valores como this. A matriz acima é simplificada demais, estou coletando 1 valor por milissegundo no meu código real e eu preciso processar a saída em um algoritmo que eu escrevi para encontrar o pico mais próximo antes de um ponto no tempo Meu A lógica falha porque no meu exemplo acima, 0 36 é o pico real, mas meu algoritmo olharia para trás e veria o último número 0 25 como o pico, pois há uma diminuição para 0 24 antes dele. O objetivo é tomar esses valores E aplicar um algoritmo para eles que irá suavizar-los um pouco para que eu tenha mais linear valores ou seja, eu d como meus resultados para ser curvy, não jaggedy. I foi dito para aplicar um filtro exponencial de média móvel para os meus valores Como posso Fazer isso É muito difícil para mim ler equações matemáticas, eu lidar muito melhor com o código. Como posso processar valores em minha matriz, aplicando um cálculo de média móvel exponencial para até mesmo out. asked Feb 8 12 at 20 27.To computa Uma média móvel exponencial que você precisa para manter algum estado ao redor e Você precisa de um parâmetro de ajuste Isso chama para uma pequena classe supondo que você está usando o Java 5 ou posterior. Instantiar com o parâmetro de decadência que você quer pode ter ajuste deve estar entre 0 e 1 e, em seguida, use a média para filter. When ler uma página em alguns mathmatical Recorrência, tudo o que você realmente precisa saber quando transformá-lo em código é que os matemáticos gostam de escrever índices em matrizes e seqüências com subscritos Eles ve algumas outras notações, bem como, o que doesn t ajudar No entanto, o EMA é bastante simples, como você só precisa Para lembrar um valor antigo sem arrays de estado complicado required. answered Feb 8 12 at 20 42. TKKocheran Muito bonito Isn t it nice quando as coisas podem ser simples Se começar com uma nova seqüência, obter um novo averager Note que os primeiros termos no A seqüência média saltará em torno de um bit devido a efeitos de limite, mas você obtém aqueles com outras médias móveis também No entanto, uma boa vantagem é que você pode envolver a lógica de média móvel para o averager e experimentar sem perturbar t Ele resto de seu programa muito Donal Fellows Feb 9 12 em 0 06.Eu estou tendo um tempo difícil entender suas perguntas, mas vou tentar responder anyway.1 Se o algoritmo encontrado 0 25 em vez de 0 36, então é errado É errado porque ele assume um aumento ou diminuição monotônico que está sempre subindo ou sempre indo para baixo A menos que você média TODOS os seus dados, seus pontos de dados --- como você apresentá-los --- são não-lineares Se você realmente deseja encontrar o máximo Valor entre dois pontos no tempo, então corte sua matriz de tmin para tmax e encontre o máximo desse subarray.2 Agora, o conceito de médias móveis é muito simples imagine que eu tenho a seguinte lista 1 4, 1 5, 1 4, 1 5, 1 5 Eu posso suavizar isto tomando a média de dois números 1 45, 1 45, 1 45, 1 5 Observe que o primeiro número é a média de 1 5 e 1 4 segundos e primeiros números a segunda nova lista É a média de 1 4 e 1 5 terceira e segunda lista antiga a terceira lista nova a média de 1 5 e 1 4 quarto e terceiro, e assim por diante eu poderia Ter feito período de três ou quatro, ou n Observe como os dados são muito mais suave Uma boa maneira de ver as médias móveis no trabalho é ir para o Google Finance, selecione um estoque tentar Tesla Motors bastante volátil TSLA e clique em technicals na parte inferior da O gráfico Selecionar Média Móvel com um determinado período, e média móvel exponencial para comparar suas diferenças. A média móvel exponencial é apenas mais uma elaboração disto, mas pondera os dados mais antigos menos do que os novos dados esta é uma forma de polarizar o alisamento em direção à parte traseira Por favor, leia a entrada da Wikipedia. Então, isso é mais um comentário do que uma resposta, mas a pequena caixa de comentário foi apenas a pequena boa sorte. Se você está tendo problemas com a matemática, você poderia ir com uma simples média móvel em vez de exponencial Então A saída que você obtém seria o último x termos dividido por x pseudocódigo não testado. Note que você vai precisar para lidar com o início e fim partes dos dados uma vez que claramente você não pode média t os últimos 5 termos quando você está em seu ponto de dados 2 , a São formas mais eficientes de calcular esta soma de média móvel - a mais antiga, mas isso é para obter o conceito do que está acontecendo em toda a linha. Resposta de freqüência do filtro de média corrente. O sistema LTI é o DTFT da resposta de impulso. A resposta de impulso de uma média móvel L de média móvel é. Uma vez que o filtro de média móvel é FIR, a resposta de frequência reduz-se à soma finita. Podemos usar a identidade muito útil para escrever o Resposta de freqüência como. quando temos deixado aej N 0, e ML 1 Podemos estar interessados na magnitude desta função, a fim de determinar quais freqüências passar pelo filtro sem atenuação e que são atenuados Abaixo é um gráfico da magnitude desta função Para L 4 vermelho, 8 verde e 16 azul O eixo horizontal varia de zero a radianos por amostra. Observe que, em todos os três casos, a resposta de freqüência tem uma característica de passagem baixa. O filtro não atenuado Certas frequências mais altas, como 2, são completamente eliminadas pelo filtro No entanto, se a intenção era projetar um filtro de passagem baixa, então não temos feito muito bem Algumas das freqüências mais altas são atenuadas apenas por um fator de cerca de 1 10 para a média móvel de 16 pontos ou 1 3 para a média móvel de quatro pontos. Podemos fazer muito melhor do que isso. O gráfico acima foi criado pelo seguinte código Matlab. omega 0 pi 400 pi H4 1 4 1-exp - i omega 4 1-exp - i omega H8 1 8 1-exp-omega 8 1-exp-omega H16 1 16 1-exp-omega 16 1-exp-omega trama omega, abs H4 abs H8 abs Eixo H16 0, Pi, 0, 1.Copyright 2000- - Universidade da Califórnia, Berkeley. O filtro de média móvel simples. Esta página descreve o filtro de média móvel simples Esta página é parte da seção sobre Filtragem que faz parte de um guia para detecção de falhas e diagnóstico . O filtro de média móvel simples faz a média dos valores recentes da entrada do filtro para um dado número de entradas. Este é o exemplo mais comum Da classe MA média móvel de filtros, também chamada resposta de impulso finito. Filtros FIR Cada entrada recente é multiplicada por um coeficiente para todos os filtros MA lineares e os coeficientes são todos iguais para esta média móvel simples A soma dos coeficientes é 1 0 , De modo que a saída eventualmente corresponde à entrada quando a entrada não muda Sua saída apenas depende de entradas recentes, ao contrário do filtro exponencial que também reutiliza sua saída anterior O único parâmetro é o número de pontos na média - o tamanho da janela. Como um filtro de MA, ele completa uma resposta de passo em um tempo finito, dependendo do tamanho da janela. Este exemplo simples de média móvel acima foi baseado em 9 pontos. Sob suposições modestas, está fornecendo a estimativa de suavização ideal para um valor na Ponto médio do intervalo de tempo, neste caso, 4 5 intervalos de amostra no passado. Copyright 2010 - 2013, Greg Stanley.
No comments:
Post a Comment