Remoção de ruído do sinal F2F

11

(Esta questão está relacionada à extração de dados binários de cartões de tira magnética de WAV bruto )

Estou extraindo a sequência binária da tira magnética no cartão de crédito.

insira a descrição da imagem aqui

Como você pode ver, o sinal é degradado claramente em um só lugar. também há uma pequena degradação à direita da imagem.

O simples uso de IIR (isto é, ) suaviza, mas o sinal resultante não é matematicamente suave; se eu diferenciar o sinal algumas vezes, o ruído volta com uma vingança:Xout=0.9Xoutlast+0.1Xin

insira a descrição da imagem aqui

Minha pergunta é: posso remover o ruído de forma que os derivados saiam limpos?

Se sim, como?

EDIT: Aqui está um close de algumas ondas danificadas:

insira a descrição da imagem aqui

EDIT (2): Estou considerando algumas abordagens:

  • Primeiro, eu poderia fazer uma aproximação de Taylor do sinal em ambos os lados do setor danificado e misturar as aproximações.
  • Em segundo lugar, eu poderia usar o FFT, remover componentes de alta frequência e reverter o FFT. Vou tentar essa segunda abordagem agora ...
P i
fonte
Você está usando um diferenciador para obter recursos de alta frequência no sinal (ou seja, transições nítidas). Os artefatos que você está tentando remover são semelhantes, pois são transições nítidas que terão características semelhantes de passe alto. Eles podem ser difíceis de remover com um filtro passa-baixo linear. Uma abordagem diferente (sem trocadilhos) pode ser mais apropriada.
Jason R
Desculpe, meu erro por postar capturas de tela enganosas. Incluí close-ups de seções danificadas de amostra.
P i
Um filtro passa-baixo deve funcionar. O problema é que as frequências de interesse estão mudando à medida que a pessoa altera sua velocidade de furto.
endolith
Corrigir. No entanto, essa taxa básica não mudará enormemente de uma onda para a seguinte. Portanto, posso filtrar à medida que for avançando (ou seja, dado que o comprimento de onda é k em um ponto específico, filtre à frente no sinal cerca de 2 comprimentos de onda, escolha o próximo sinal, enxágue e repita). Nesse caso, o que seria um bom filtro? Eu preciso para preservar os derivados ...
P i
11
Parece que seu sinal é representado pela série de "wavelets" muito distintas que descrevem as transições binárias. Eu acho que você deve extrair uma wavelet distinta e produzir um "correlograma" correlacionando a wavelet com os dados brutos. As posições de semelhança máxima serão identificadas como picos fortes, enquanto as falhas na forma de onda se tornarão apenas um ruído menor. Este método é amplamente utilizado em sísmica. Você poderia fornecer uma série de "valor temporal" de seus dados brutos em algum formato semelhante a uma planilha, para que eu possa ilustrar minha idéia.
mbaitoff

Respostas:

1

Para remover o "ruído" de alta frequência sem remover transições nítidas, pode ser necessário tentar algum tipo de processo de filtragem não linear.

Um exemplo aleatório pode estar aplicando (cross fading to) a um filtro mediano somente quando a distância até o N local máximo máximo (ou mínimo e além de algum limite de ruído) estiver abaixo de algum limite de distância (onde essa distância, N e a largura média do filtro , são calibrados para o período do "ruído" suspeito).

hotpaw2
fonte