Processamento de Sinais Estudo de Caso: Removendo o Bad, mantendo a Boa

O diagrama de blocos de um sistema que usa um filtro digital para remover um SNOI e reter o SOI é mostrado. Este sistema assume que os sinais originários de tempo contínuo e, após filtração, são devolvidos para o domínio de tempo contínuo.

O analógico-digital (ADC) e de digital para analógico (DAC) interfaces representam como um sistema em tempo real é configured- mas mais tarde, quando simulando este sistema, você vai usar arquivos WAV para processar discurso pré-gravado ( as linhas tracejadas).

O sinal recebido, r(t), É de forma

image1.jpg

Deste ponto em diante, vamos supor que o ruído é insignificante e soltar W(t) A partir de consideração.

O coração do sistema é o bloco de filtro digital que fica entre o ADC e DAC. A ICE é a fala de largura de banda nominal de 4 kHz, ea SNOI é um ou mais tons sinusoidais em algum lugar na faixa de 0 a 4 kHz

image2.jpg

Considere a resposta de impulso finito (FIR), resposta de impulso infinita (IIR) e opções de filtragem FIR adaptativos mostrado.

O filtro FIR entalhe tem a função do sistema

image4.jpg

que é um par de zeros conjugadas em ângulo

image5.jpg

em relação ao eixo real positivo na z-avião. O filtro de entalhe IIR adiciona um par de poios de conjugado, a raio r por trás dos zeros FIR que estão no círculo unitário:

image6.jpg

As parcelas de pólo-zero para estes dois filtros são mostrados. Aqui, as parcelas são criados com funções no módulo Python ssd.py. Para o IIR:

Dentro [528]: B, a = ssd.fir_iir_notch (1000,8000,0) Em [529]: Ssd.zplane (b, um 1.2) Out [529]: (2, 0) Na [532]: B, a = ssd.fir_iir_notch (1000,8000,0.9) Em [533]: Ssd.zplane (b, um 1.2) Out [533]: (2, 2)

O entalhe FIR tem um único parâmetro de projeto, enquanto o entalhe IIR, também tem o raio pólo, r. Dada a taxa de amostragem, fs Hz, ea freqüência tom de interferência, fk Hz, definir

image8.jpg

Se mais de um tom de interferência está presente, criar um cascata de filtros notch - um para cada tom de interferência, com

image9.jpg

definidos em conformidade.

Com dois filtros notch IIR em cascata, o teorema de convolução para z-transformadas diz que a função geral do sistema é um filtro IIR quarta ordem:

image10.jpg

Você pode encontrar os coeficientes através de convolução de segunda ordem do numerador e denominador do coeficiente de sets.

O filtro adaptativo é mais exótico. Este filtro é um exemplo de um sistema linear variável no tempo. Não se preocupe em absorver totalmente a matemática por trás deste sistema de filtragem / algoritmo agora. A intenção aqui é para lhe proporcionar uma sensação geral sobre o seu funcionamento, inspirando-o a estudar este tema ainda mais em algum momento no futuro.

Um filtro FIR está no centro deste sistema, mas os coeficientes não são fixos:

image11.jpg

tem N coeficientes umam[n] Que são actualizados (alteradas) na sequência da produção de cada nova amostra de sinal

image12.jpg

m dentro umam[n] É o índice de coeficiente do filtro, e n denota a atualização de tempo. o menos mean squares (LMS) algoritmo de adaptação é responsável para ajustar os coeficientes de filtro de tal forma que a média do erro quadrático (erro quadrático [MSE]) no momento n,

image13.jpg

é minimizado.

Nesta aplicação, você tem o filtro adaptativo configurado para executar cancelamento de interferência. A saída de erro e[n] É uma estimativa da SOI,

image14.jpg

A saída do filtro FIR, denotado

image15.jpg

é também uma estimativa da SNOI,

image16.jpg

Ao contrário dos filtros de entalhe FIR e IIR, o filtro adaptativo ajusta os coeficientes de modo a formar uma faixa de passagem de resposta (em forma de passa-banda) no local de cada tom de interferência. Dando o filtro de um grande número de torneiras (ou graus de liberdade) permite-lhe formar múltiplas faixas de passagem, se necessário. Ele faz isso por conta própria, sem qualquer informação prévia!

Após a convergência do LMS, a saída tende a conter apenas o SNOI, que é um ou mais sinusóides. A saída de erro é o (SOI + SNOI) - SNOI = SOI. Uma estimativa do SOI é exatamente o que você quer, mas este filtro é mais complexa. Além disso, se o SOI por acaso contém tons constantes, o filtro adaptativo faz o seu melhor para removê-los. Eliminando os tons desejados do seu SOI é provável que um showstopper.

Para cada uma das amostras n, o algoritmo de LMS executa três passos:

  1. Calcula o seguinte, onde n é o índice de tempo

    image17.jpg

    Os coeficientes de filtro utilizados no momento n estamos umam[n], para m = 0, 1,. . ., M.

  2. Constitui a sequência de erro

    image18.jpg
  3. Actualiza os coeficientes do filtro, utilizando um estocástico (instantâneo) gradiente para estimar a direcção de descida mais acentuada

    image19.jpg

o parâmetro # 956- é conhecido como o parâmetro de convergência. E se # 956- é muito pequeno, em seguida, filtrar a convergência é lenta, mas se for muito grande, então o algoritmo torna-se instável. Um limite superior aproximadas sobre # 956- é 1 / [(M + 1)Pr], Onde Pr é o poder r[n]. Como condições iniciais, definir todos os coeficientes do filtro a 0.

Para uma FIR de dois torneira, você pode ver a descida mais íngreme, como é mostrado. Cada actualização do algoritmo LMS move-lo, em média, em direcção ao fundo do superfície de erro, minimizando, assim, o MSE.

menu