APSI - Processamento de Sinal Processamento de Sinal Conceitos, Métodos e Aplicações Texto Tutorial da Disciplina: APSI - LEEC J.P. Marques de Sá jmsa@fe.up.pt Faculdade de Engenharia da Universidade do Porto J.P. Marques de Sá J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal ÍNDICE Filtros Digitais 5. Projecto de Filtros 5. Distorção 6.3 Filtros FIR.3. Introdução.3. Projecto de Filtros FIR pelo Método da Janela 7.3.3 Projecto de Filtros FIR Óptimos.3.4 Aplicações de Filtros FIR 5.4 Filtros IIR 3.4. Conversão de filtros analógicos para filtros digitais 3.4. Filtros IIR correspondentes a protótipos analógicos 35.4.3 Diferenciadores 4.4.4 Aplicações de filtros IIR 44.5 Decimação-Interpolação 5.5. Decimação 5.5. Interpolação 53.5.3 Filtro interpolador óptimo 58.5.4 Aplicações de decimação-interpolação 66.6 Filtros FIR Adaptativos 7.6. Estrutura e Aprendizagem 7.6. Aplicações de Filtros FIR Adaptativos 74.7 Filtros Não Lineares 83.7. Filtro de Mediana 85.7. Aplicações do filtro de mediana 93.7.3 Introdução aos Filtros de Pilha ("Stack Filters" 96.7.4 Filtros Morfológicos.7.5 Aplicações de filtros morfológicos 3 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 3 Símbolos x variável x * conjugado de x x(t sinal contínuo x(n sinal discreto X(Ω Transformada de Fourier de sinais contínuos X(ω Transformada de Fourier de sinais contínuos N número de amostras T período f frequência (Hz f l frequência de corte inferior f c frequência de corte superior Ω frequência angular (= πf radianos para sinais contínuos ω frequência angular (= πf radianos para sinais discretos t(n degrau de Heaviside, discreto δ (n impulso de Dirac, discreto sinc(x seno cardinal de x (sin(x/x operador de convolução tende para implica em correspondência com definida por, equivalente a J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 4 Abreviaturas PDS Processamento Digital de Sinal sse se e só se db decibel J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 5 Filtros Digitais. Projecto de Filtros Estudo das Distribuições Espectrais do Sinal e do Ruído Definição de Característica ou de Parâmetros de Característica (freq. de corte, ripples, etc. Escolha do Tipo de Filtro Projecto do Filtro Projecto do Algoritmo de Filtragem Implementação (hardware/software Figura.. Sequência típica de passos num projecto de filtragem digital. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 6. Distorção Distorção de amplitude: ocorre em sistemas não-lineares Distorção de fase: ocorre em sistemas não-lineares ou com fase não-linear De: jαω H ( ω = Ce e Y ( ω = X ( ω H ( ω resulta y ( n = Cx( n α Logo, quando a fase é linear todas as componentes do sinal sofrem um mesmo atraso e não há distorção de fase..5.5 x(n x(n.5.5 n n -.5 -.5 - - -.5 -.5 4 8 6 4 8 3 36 4 44 48-4 8 6 4 8 3 36 4 44 48 Figura.. Adição das mesmas componentes sinusoidais de um sinal, com fases diferentes. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 7 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3 Seja o sistema: ( ( ( ω θ ω ω j e H H = π ω π, Consideremos que o sinal a processar é de muito maior comprimento que a resposta do sistema, tal como na Figura.3. n x(n h(n α -π π H(ω X(ω θ(ω σ σ Figura.3. Podemos, então, procurar uma aproximação: ( ( ( ( ( ( ( α ω ω ω ω ω αω αω = = n Ax n y X Ae X H Y Ae H j j Aproximando X(ω por uma parábola no intervalo [-σ, σ]: ( ' ' ( ( ( ( α σ α ω σ ω αω + n x n Ax n y X e A Y j, vemos que a aproximação é aceitável se ( ( ' ' n Ax n x << σ.
APSI - Processamento de Sinal 8 Consideremos, agora, que o sinal de variação lenta é modulado com uma portadora de frequência ω. Se a envolvente x(n da entrada x(ncos(ω n tem uma variação lenta, a resposta do sistema pode ser aproximada por: onde: n g = θ '( ω é o atraso de grupo n p = θ ( ω / ω é o atraso de fase y(n A(ω x(n n g cos[ω (n n p ], Na situação anterior tínhamos apenas atraso de fase: n p = θ ( ω / ω = ( αω / ω = α. Vejamos as condições a impor à resposta impulsional finita (N amostras do sistema. Seja θ(ω a função de fase do sistema: θ(ω = αω. o que assegura um atraso de fase nulo e atraso de grupo constantes (α. Temos: Há casos a considerar: H ( ω = ± H ( ω e jαω = N n= h( n e jωn sin( αω cos( αω = N n= N n= h( nsin( ωn h( n cos( ωn α = : h( = c h( n = n situação com pouco interesse. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 9 α : N n= N h( n cos( ω n sin( αω = h( nsin( ωn cos( αω n= N n= h( n sin [( α n ω] = α = ( N / h( n = h( N n, n N i.e., a resposta impulsional é simétrica. Impondo apenas atraso de grupo constante: j( β αω H ( ω = ± H ( ω e, α = ( N / ; β = ± π / h( n = h( N n, n N i.e., a resposta impulsional é anti-simétrica. A simetria e anti-simetria podem exprimir-se simplesmente: H ( z = ± z H ( z N a.4..8.6.4. -. -.4 3 5 7 9 3 5 7 9 3 5 7 9 b.4..8.6.4. -. -.4 3 5 7 9 3 5 7 9 3 5 7 9 Figura.4. Onda quadrada filtrada com [-..4 -.] (a e com [-..4 -.3] (b. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal.3 Filtros FIR.3. Introdução Filtros de resposta finita (Finite Impulse Response de comprimento N: H ( ω = ( N / h n= ( N / ( n e jωn Supomos N ímpar. Se for par, as conclusões são as mesmas, a menos de um atraso de "meia amostra". Resposta simétrica: H ( ω = h( + ( N / n= h( n( e jωn + e jωn = h( + ( N / n= h( n cos( nω Resposta anti-simétrica: H ( ω = j ( N / h n= ( n sin( nω As versões causais têm uma fase linear correspondente a metade do comprimento do filtro: e j ω ( N / J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal Exemplos: a Escrevemos: / /4 -/9 h(n = ]-/9 /4 /] -. ou -.4 h(n = [/ /4 -/9[ -.6.8.6.4...63.6.88.5 3.4 Figura.5. Filtro FIR simétrico. H ( ω = + cosω cos(ω 9 H ( = + =. 78 9 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal b / -/9 h(n = ]-/9 / ]..8.6.4. -. -.4..63.6.88.5 3.4 Figura.6. Filtro FIR anti-simétrico. H ( ω = sinω sin(ω 9 H ( = (sempre J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 3 Dois filtros simples e úteis: Filtro de média de ( n = / N, N amostras n N sin( ωn / e N sin( ω / h j( N ω / H ( ω = Filtro triangular de N amostras t( n = h( n h( n T ( ω = H ( ω. H(ω - log H(ω.8.6.4. - -3-4 -5 db..3.63.94.6.57.88..5.83 3.4-6..3.63.94.6.57.88..5.83 3.4 Figura.7. Características de amplitude do filtro de média de 7 amostras. Os zeros ocorrem em múltiplos de π/7 =.9. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 4 Relativamente a uma característica ideal normalizada de um filtro passa-baixo, [, ], define-se: Ripple, R: desvio máximo da característica real face à característica ideal. Pode ser na zona de passagem (, R p, ou na zona de rejeição (, R l. (para o filtro rectangular [ N sin(3 /(N] R l π =.3 3 db. Frequência de corte superior, f c : maior frequência na zona de passagem com atenuação igual ao ripple ou igual a 3dB (.78 na sua ausência. (para o filtro rectangular com N = 7, f =. 38. Frequência de corte inferior, f l : menor frequência na zona de rejeição com amplitude igual ao ripple. (para o filtro rectangular com N = 7, f =. 7 Banda de passagem do filtro: B = [, f c ] Banda de rejeição do filtro: [f l, π] Banda de transição: B = f c, f l l c Dado um filtro passa-baixo (LP, de resposta h(n, obtém-se um filtro passa-alto (HP usando δ(n h(n e, a partir destes, o de passa-banda (BP e o de rejeição de banda (BS, também designado por filtro tampão. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 5 Dois Filtros LP projectados com LabSin: N = N = 5 h (n = ]-.8.788.95.73.39.65] h (n =]-.49.45 -.48 -.9.94 -.739.364.74] Figura.8. Filtros FIR LP projectados com o algoritmo de Remez. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 6.4...8.6.4....63.6.88.5 3.4.4...8.6.4....63.6.88.5 3.4 hp (n= ].8 -.788 -.95 -.73 -.39 -.65] hp (n= ].49 -.45.48.9 -.94.739 -.364 -.74].4...8.6.4....63.6.88.5 3.4.4...8.6.4....63.6.88.5 3.4 BP(ω = HP (ω.lp (ω BS(ω = LP (ω + HP (ω Figura.9. Filtros HP, BP e BS projectados com base nos filtros LP anteriores. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 7.3. Projecto de Filtros FIR pelo Método da Janela Vimos já que a característica LP ideal com frequência de corte f c corresponde a: ω c jωn sin( nω c ω c h( n = e dω = = sinc( nω c, n π πn π ωc ], [ Notar que h( = f c. A implementação por truncatura deste filtro origina o fenómeno de Gibbs na resposta em frequência: h(n Tempo Frequência Janela de Característica Truncatura Ideal H(f x -(N-/ n +(N-/ Figura. -f c +f c f Característica da Janela J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 8 Em vez de truncar h(n com a janela rectangular, usam-se janelas com os seguintes requisitos antagónicos, nas frequências: Lobo principal de largura mínima Lobos laterais de área negligível Janela rectangular: Menor lobo principal para um certo comprimento Maiores lobos laterais entre todas as janelas Exemplos de janelas usuais (n [, N ]: Hanning.5 +.5 cos(π n /( N Hamming.54 +.46 cos(π n /( N Triangular (Fejer Lanczos n /( N sin(πn /( N n N π /( m m é um inteiro > que controla o compromisso entre largura do lobo principal vs. área dos lobos laterais. 4n Kaiser I β / I ( β ( N I é a função modificada de Bessel do primeiro tipo e ordem zero; β controla a atenuação na banda de rejeição. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 9..8.6.4. Hanning Hamming Triangular Lanczos Kaiser -7-6 -5-4 -3 - - 3 4 5 6 7 Figura.. Janelas de truncatura. A de Lanczos está calculada com m = e a de Kaiser com β = 5. 9 8 7 6 5 4 3..5.49.74.98.3.47 Hanning Hamming Triangular Lanczos Kaiser..5.49.74.98.3.47..... Hanning Hamming Triangular Lanczos Kaiser Figura.. Resposta nas frequências das janelas de truncatura, representadas à direita em escala logarítmica (m = para Lanczos e β = 5 para Kaiser. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal Exemplo: Filtro passa-baixo com f c =.5, N = : n Resposta para Janela Rectangular Janela de Hamming Resposta para Janela de Hamming.94988E-7.8.5599E-8 9.35367765.543.36569 8 -.94988E-7.678583-3.79E-8 7 -.454784.6968784 -.633 6.94988E-7.3978583 7.75766E-8 5.6366977.54.34377468 4 -.94988E-7.684787 -.33E-7 3 -.6395.8386 -.859848.94988E-7.94787.77858E-7.3839886.977485997.343457.5.5 Figura.3. Resposta em amplitude de um filtro FIR LP com f c =.5 e N = projectado com uma janela rectangular (esquerda e de Hamming (direita. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal.3.3 Projecto de Filtros FIR Óptimos Seja D(ω a característica desejada do filtro FIR e H(ω a aproximação obtida. Então os desvios nas frequências, são E(ω = D(ω H(ω Podemos atribuir um peso diferente à qualidade de ajuste em várias bandas, usando uma função de pesos W(ω: E(ω = W(ω(D(ω H(ω O critério de ajuste óptimo, consiste em: π Determinar H ( ω min L( E( ω dω, ω [ π, π ] π Existem várias possibilidades para a função de custo L, p. ex.: L(E(ω = E(ω. L(E(ω = [E(ω]. Critério de Tchebichef. Critério dos mínimos quadráticos. Normalmente para filtros prefere-se o critério de Tchebichef (critério equiripple, que satisfaz o Teorema da Alternância: A função H(ω, definida pela soma de r cosenos, para satisfazer o critério de Tchebichef deverá ter pelo menos r + extremos, alternando máximos e mínimos. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal Para N ímpar e resposta simétrica o número de extremos, N e, em f [,.5] é: N e + N f f f f 3 f 4 f 5 f 6 f 7 Figura.4. Exemplo ilustrativo do Teorema da Alternância. O filtro com N = 5 exibe 8 extremos, f i : 6 na banda passante e na banda de rejeição. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 3 Projecto de um filtro FIR óptimo: Parks and McClellan (973 desenvolveram um método de determinação de um filtro óptimo segundo o critério de Tchebichef, usando o algoritmo da troca de Remez para obter um ajuste iterativo à resposta desejada. O Filtro Equiripple Óptimo, para um dado N, é o filtro de menor equiripple e de menor banda de transição.. Há 4 parâmetros a especificar no caso de um filtro de duas bandas: N f c f l R p R l comprimento do filtro frequência de corte superior frequência de corte inferior ripple na banda de passagem ripple na banda de rejeição Se mantemos f c e f l e diminuímos N aumentam R p e R l Se mantemos R p e R l e diminuímos N aumenta B.. Estimativa de N, dados os outros parâmetros: D( R p, Rl N = f ( R p, Rl B + B J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 4 com: D( R p, Rl = [ a(log R p + a log R p + a3 ] [ a (log R + a log R + a ] 4 p 5 f ( R, R = b + b (log R log R p l p l p 6 log R l + a = 5.39E-3 a 4 = -.66E-3 b =.7 a = 7.4E- a 5 = -5.94E- b =.544 a 3 = -4.76E- a 6 = -4.78E- J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 5.3.4 Aplicações de Filtros FIR Notar que a filtragem com um filtro de comprimento N exibe caudas de comprimento N/. Implementação prática: Iniciar a filtragem N/ amostras depois do princípio e terminar N/ amostras antes do fim (usado em processamento on-line. Acrescentar N/ amostras iguais aos valores extremos do sinal (usado em processamento off-line. 9 8 7 6 5 4 3 3 4 5 6 7 8 9 3456789 n 9 8 7 6 5 4 3 3 4 5 6 7 8 9 3456789 n Figura.5. Duas versões de filtragem (violeta de um sinal original (preto: on-line (em cima e off-line (em baixo. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 6 Exemplo : Filtragem de ruído de 5Hz de um ECG amostrado a 5 Hz. 5 5 5 5 5 a -5 4 6 8 4 6 8 b -5 3 4 5 6 Figura.6. a ECG amostrado a 5 Hz, com ruído de 5 Hz; complexo de ondas do sinal (entre as amostras 4-9. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 7 4.5 3.5 3.5.5.5 5 x 4 4 5 5 5 5 x 7 4 3 - - 4 6 8 3.5.5.5.5 4 x 6 3 5 5 5 a Figura.7. a Espectro do complexo de ondas do sinal (o ruído de 5 Hz é claramente visível; b Autocorrelação, r xx (n, do complexo de ondas do sinal (r xx ( é a energia do sinal + ruído = 4.7669* 7 ; c Espectro de densidade espectral de energia (também chamado espectro de potência, S x (ω (transformada discreta de Fourier de r xx (n. Do espectro de potência, deduz-se: Energia do sinal = 3.769* 6 Energia do ruído =.47* 6 (soma dos dois valores próxima do valor de r xx ( Logo, SNR log (3.769/.47 = 4 db. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3 b c
APSI - Processamento de Sinal 8 Projecto de um filtro óptimo de Remez, LP: f l = 5/5 =.. Tomamos f c =.7 e ripples R c =.5%, R l = 3dB. Aplicando as fórmulas, obtém-se: N = 45. 5 5 5 a b 4 6 8 4 6 8 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 9 Figura.8. a Característica do filtro óptimo de Remez, LP; b Sinal ECG filtrado com filtro LP. Projecto de um filtro óptimo de Remez, BP: f c =.6; f c =.4 f l =.9; f l =. R c = %; R l = 4 db Aplicando as fórmulas, obtém-se: N = 65. 5 5 5 a b 4 6 8 4 6 8 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 3 Figura.9. a Característica do filtro óptimo de Remez, BP; b Sinal ECG filtrado com filtro BP. 6 4.5 4 4 3.5 3 8 6.5 4.5 a 3 4 5 6 4 3 3 b.5 5 5 5 4 3.5 3.5.5.5 c 4 3 4 5 6 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3 d -.5 4 6 8 Figura.. a Complexo de ondas do ECG filtrado com filtro BP (entre amostras 433-933: Matlab fornece o sinal filtrado avançado de N/; b Espectro de potência do complexo filtrado com filtro BP; c Diferença entre o complexo do sinal original (4:9 e filtrado (433:933; d Autocorrelação do sinal filtrado. Energia=3.66* 7.
APSI - Processamento de Sinal 3.5 4 3.5 3.5.5.5 -.5.5 - a 4 6 8 b 5 5 5 Figura.. a Autocorrelação do ruído, determinado pela diferença entre sinal original e sinal filtrado. Energia:.48* 7 ; b Espectro de potência do sinal ECG filtrado com filtro óptimo de Remez, BP. Energia do sinal = 3.769* 6 Energia do ruído =.44* 3 SNR log (3.769/.47 = 54 db J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 3 Logo, a filtragem melhorou a relação sinal/ruído em 5 db..4 Filtros IIR.4. Conversão de filtros analógicos para filtros digitais Método de invariância de resposta impulsional: Trata-se de usar como resposta de um filtro discreto a amostragem da resposta de um filtro analógico. Problema: aloctonicidade. Aplicação limitada. Relação entre o domínio s e o domínio z: Im e jω jω jπ/t s Re σ -jπ/t s J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 33 Figura.. Relação entre domínios s e z. O segmento de s = a s = jπ/t s é mapeado na semicircunferência superior de z = a z = -. O segmento de s = a s = -jπ/t s é mapeado na semicircunferência inferior de z = a z = -. Semiplano esquerdo em s mapeia para interior de círculo unitário s Polo em s=s p mapeia para polo em p T z = e s Transformação bilinear: Transformação não-linear que permite implementar filtros discretos de características semelhantes aos filtros analógicos: z sts / + s = z = Ts z + sts / Logo: jω jωts / + jarctan( ΩTs / e = = e ω = arctan( ΩTs / jωt / s J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 34 4 3 ω -.57 - -6.8. 6.8.57 - -3-4 Figura.3. Mapeamento de frequências do domínio analógico para o discreto, usando a transformação bilinear. Ω T s Por forma a compensar a distorção para altas frequências, efectua-se o pré-enrolamento de Ω: Ω = T ΩT tan * s Usando a transformação bilinear é possível obter filtros discretos ARMA a partir de filtros analógicos conhecidos. Mapeamento de um pólo s=s p : s J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 35 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3 ( ( + + = = z T s T s z T s T z H s s s H s p s p s p s p A transformada em z tem: Um zero em - Um pólo em s p s p T s T s + Um ganho de ( = = p s H g.4. Filtros IIR correspondentes a protótipos analógicos Protótipos analógicos LP: Filtros de Butterworth: N c N c H j s s H s H / ( ( ; / ( ( ( Ω Ω + = Ω Ω + = Logo: [ ] N c db H / ( log ( Ω Ω + = Ω
APSI - Processamento de Sinal 36 Para Ω elevado, temos: lim Ω H ( Ω db = N log Ω N pólos conjugados no círculo unitário, em N + p + s p = Ω c exp jπ, p N N Decaimento de -3dB para Ω c Decaimento de N db/década (ou 6N db/oitava. O filtro aproxima-se do filtro ideal com N. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 37 Filtros de Tchebichef: H ( s H ( s = + µ C ( s / N jω c ; H ( Ω = + µ C N ( Ω / jω c com o polinómio de Tchebichef de grau N: C N + ( x = xcn ( x C N ( x; C ( x =, C( x = x Menor banda de transição, entre todos os filtros que usam só pólos, para dados ripples. R = ( + µ p Decaimento de N db/década (ou 6N db/oitava. Os pólos jazem numa elipse, de acordo com s p = r cosθ + jr sinθ, sendo os eixos menor e maior respectivamente / N / N / N / N ( ρ /, e R = Ω ( + ρ / r = Ωc ρ espaçados no círculo unitário. c ρ com ρ = µ + + µ, e em ângulos θ igualmente Filtros elípticos: H ( s H ( s = + ε E N ( s / jω c ; H ( Ω = + ε E N ( Ω / jω c com E N (x a função elíptica Jacobiana de grau N. O filtro inclui zeros para além de pólos e tem menor banda de transição que os anteriores, para dados ripples. R p depende de ε. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 38 Exemplos: a Determinação do filtro IIR passa-baixo destinado a ser usado com sinais amostrados a f s = 5 Hz, correspondente a um filtro de Butterworth com decaimento de db por década e Ω c = Hz. Ordem do filtro: db por década N= ( pólos conjugados H ( s = + ( Ω / Ω c..8 H(Ω --5-5 -5 5 5 Ω 5 - -3.6.4. Ω -5-5 5 5-4 -5-6 -7-8 -9 - log H(Ω Figura.4. Amplitude em valor absoluto (esquerda e em db (direita do filtro de Butterworth do exemplo. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 39 Pré-enrolamento de Ω c : Logo: T s =. s; Ω * =.. tan =.3347 + z H ( z =.99.88z Figura.5. Filtro IIR correspondente ao de Butterworth do exemplo. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 4 b Filtros digitais para as seguintes especificações: f c =.; f l =.3. R c =.%; R l = 6dB. Butterworth, N = 3 Tchebichef, N = 7 Elíptico, N = 5 Figura.6. Filtros IIR para idênticas especificações em Labsin. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 4.4.3 Diferenciadores H(ω π/ argh(ω f s Consideremos aproximações do diferenciador ideal por: f s Figura.7. Característica do diferenciador ideal. H ( z = A. n k = + a + b k k z z + a + b k k z z Condições a impor: Diferenciação de uma constante é zero filtro tem zero em z =. Diferenciação da rampa é uma constante: H ( z = ( z H( z J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 4 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3 ( ( ( = = z z c z I cn n i Logo ( ( ( ( ( = = z z c z H z Y z I z H z Y Por forma a y(n aproximar c para valores crescentes de n o Teorema do valor final impõe ( = = z H, o que condiciona o ganho A. Por forma a satisfazer as condições acima, temos: = = + + + + + + + + = n k k k k k n k k k k k z b z b b b a a z a z a a z a z z H ( ( Um filtro simples e popular é o bem conhecido: F: ( = z z H H(z pode ser determinado minimizando um critério de erro: = π ω ω ε ( d J com ε (ω representando o erro absoluto para uma sinusóide: ( ( / δ δϕ δ ω ε O A A + + = onde ( δ O representa termos de ordem superior que podem desprezar-se.
APSI - Processamento de Sinal 43 A minimização de J pode efectuar-se por técnicas de programação não-linear. Uma solução de ordem é: F: H ( z =.5 ( z (.85z (.838z ( +.657z F tem melhor desempenho que F, especialmente para altas frequências. Para mais detalhes consultar (Spriet J, Bens J, 979..8.6.4. -. -.4 -.6 -.8-5 5 5 Figura.8. Diferenciação de parte de um seno (verde com ω=π/8: resultado teórico (vermelho; resultado com F (azul; resultado com F (preto. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 44 8 6 4 - -4-6 -8 5 5 5 Figura.9. Diferenciação de um sinal (verde com F (azul e F (preto..4.4 Aplicações de filtros IIR Os filtros IIR têm, em geral, fase não linear, pelo que a sua aplicação em filtragens tem inconvenientes, se se pretende manter no essencial a morfologia dos sinais. Se dispomos de todo o sinal, podemos remediar este aspecto efectuando duas filtragens: uma para tempos crescentes e outra para tempos decrescentes. De facto: jω h ( n ( h( n s( n H ( e H ( e S( e = jω jω H ( e jω S( e jω J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 45 Exemplo:.5.5 -.5 3 5 7 9 3 5 7 9 3 5 7 9 - Figura.3. Exemplo da Figura.3 filtrado de novo em tempo decrescente (para um filtro FIR basta efectuar uma segunda filtragem com a reflexão da resposta impulsional. Os filtros IIR são úteis p. ex. na determinação da presença de certos componentes de onda ou da energia do sinal em diversas bandas espectrais (a morfologia não interessa. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 46 Exemplo: Determinação de estados comportamentais do EEG. Acordado (vigilância 5 uv -5 Sonolência (olhos quase fechados - 6 8 4 6 8 5 uv -5 Sono REM - 5 4 6 8 uv -5-4 6 8 Figura.3. Três sinais EEG correspondentes a distintos estados comportamentais (amplitude em µv; f s = 8 Hz. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 47 Bandas de interesse do EEG: Banda delta: <= 4 Hz Banda teta: Banda alfa: Banda beta: 4-8 Hz 8-3 Hz 3-35 Hz Tarefa: Detecção de actividade alfa, usando um filtro de banda elíptico (f s = 8 Hz, com: f c =.6 (6.68 Hz; f c =. (.8 Hz f l =.5 (6.4 Hz; f l =. (5.36 Hz R c =.%; R l = 4dB J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 48 Figura.3. Característica em amplitude do filtro elíptico utilizado para detecção da banda alfa do EEG (ordem N = 4. b=[.359e- -6.83768e-.9854e- -3.547953e- 4.75e- -3.547953e-.9854e- -6.83768e-.359e- ] a = [ -6.7345e+.6858e+ -3.7745e+ 4.455e+ -3.486347e+.768644e+ - 5.34379e+ 7.3343e- ] J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 49 Caso Vigilância 5 5 5 8 6 4 - -4 5-6 a 4 6 8 4 8-8 b 4 6 8 4 6 6 4 c 8 6 4 4 6 8 4 Figura.33. a Espectro de potência do EEG de vigilância calculado com N fft = 56 (matlab psd. A amostra corresponde à frequência (/56*8= Hz; b Sinal alfa do EEG de vigilância; c Espectro de potência do sinal alfa de vigilância (Máximo 8. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 5 Caso - Sono REM 4 8 6 4 8 6 4 - -4 a 4 6 8 4 b -6-8 4 6 8 4 6 9 8 7 6 5 4 3 Figura.34. a Figura.35. Espectro de potência do EEG de sono REM; b Sinal alfa do EEG de sono REM. As primeiras ~ amostras correspondem a um transiente devido à filtragem; cespectro de potência do sinal alfa de sono REM (Máximo. c 4 6 8 4 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 5.5 Decimação-Interpolação Considere-se o problema de remover a flutuação de linha-base, de um ECG amostrado a 5 Hz. A flutuação implica frequências máximas Hz. Usando um filtro FIR rectangular precisaríamos de: N = 5! Teremos de usar esquemas de redução de frequência de amostragem..5. Decimação Diminuição da frequência de amostragem por um factor de D (inteiro.. Se o sinal x(n fosse simplesmente decimado haveria forte distorção devido à aloctonicidade.. É necessário, em antes, remover com um filtro passa-baixo a banda superior a π/d. x(n h(n w(n D y(m Figura.36. Sistema de decimação. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 5 X(ω H(ω π π ω π/d W(ω π π ω π/d Y(ω π π ω ω' π π 4π 6π Figura.37. Exemplos de espectros para a decimação. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 53.5. Interpolação Consiste em aumentar a frequência de amostragem por um factor I (inteiro. x(n I w(n h(n y(m Figura.38. Sistema de interpolação. Interpolação e decimação são operações duais. Como se vê a seguir, os filtros a usar na decimação e interpolação com D = I podem ser os mesmos. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 54 x(n X(ω w(m n π W(ω π 4π 6π ω w(m m π/ι Y(ω π π ω' ω' m π/ι π π Figura.39. Exemplos de sinais e espectros na operação de interpolação. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 55 Exemplo: Sinal x(n constituído ela soma de dois cosenos x(n = s (n + s (n, respectivamente de frequência f =. e de frequência f =.3. A remoção de s (n de x(n poderia ser feita directamente com: Um filtro rectangular de comprimento N = Um filtro de Remez de comprimento N 7 Obtenção de s (n por decimação-interpolação, com vista à sua posterior remoção: Um filtro de N = 7 (zero em f l =.4 se filtro rectangular Um factor D = I = 3 (.5/3 =.67 > f l J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 56 Decimação-interpolação, usando um filtro rectangular, N = 7: x(n..5..5. -.5..5..5. -.5 -. -.5 -. 4 6 8 4 6 8 4 6 8 3.6 x(n w(n -. -.5 -. 4 6 8 4 6 8 4 6 8 3.4 s (n w(n y(n.. -. -.4 -.6 4 6 8 4 6 8 4 6 8 3 Figura.4. Decimação-interpolação, usando um filtro rectangular, N = 7. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 57 Decimação-interpolação, usando um filtro de Remez: Especificações:.,.3; %, -5dB; N = 7 [.E-.4E-.67E- 3.39E-... ]..6 x(n w(n.5..5. -.5 -. -.5 s (n w(n y(n.4.. -. -.4 -. 4 6 8 4 6 8 4 6 8 3 -.6 4 6 8 4 6 8 4 6 8 3 Figura.4. Decimação-interpolação, usando um filtro de Remez, N=7. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 58.5.3 Filtro interpolador óptimo (Oetken G, Parks TW, Schüssler HW, 975 Seja um filtro h(n que interpola r amostras, de comprimento múltiplo de r: y( n N = rl+ = rl h µ = rl ( µ u( n µ u(n é o sinal decimado do sinal original u (n. Queremos que y(n seja uma "boa" estimativa de u (n. Dada a presença de u(λr há duas situações de interpolação (ver Figura: n = λr : então y(n usa L+ amostras de u(n n = λ r + ρ, ρ, r : então y(n usa L amostras de u(n [ ] u(n u (n -3 a 3 Figura.4. Interpolação para r=3. Com um filtro de ordem N=7 (L= são usadas as seguintes amostras não nulas: a caso λ=: 3 amostras: u(, u(3 e u(6; b caso λ=, ρ =: amostras: u(3 e u(6. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3 b n
APSI - Processamento de Sinal 59 É possível definir, então, r sequências de erro: y r ρ ( n = y ρ ( n xρ ( n e y = y ρ ( n, ρ = usando as subsequências de u (n e y(n: u r r ( n = xρ ( n e y( n = y ρ ( n ρ = ρ = Cada sequência de erro depende de uma subsequência de h(n, p. ex. na Figura y ( n depende de h(- e h(. O projecto do interpolador óptimo é dividido no projecto de r subfiltros que minimizam (n : y ο Condições impostas ao espectro de u (n: Banda não excedendo f g < /r (ver Figura H ( n z = Lr ρ ( z hρ n= Lr n J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 6 U (ω π/ 3 π f g =. f r =/r=.67 f s /=.5 Figura.43. Um sinal de banda limitada, f g < /r. O factor de ocupação de banda é: α = rf g =.6. π ω f Para entrada sinusoidal: α é um factor de ocupação de banda: α = rf g. Obtém-se: u jωn π n = U ( ω e, com ω < ω g = α ; α r ( ], [ J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 6 Y ρ π jρν (π / r ( ω = H ρ ( ω ν e U ( ω r r r ν = A característica ideal, H ρ π ( ω ν = e r jρν (π / r, é a da Figura. Re[U (ω] π/ 3 ω g ω g -π/ 3 ω g +π/ 3 π/ 3 π ω Im[U (ω] ω g π/ 3 π/ 3 Figura.44. Característica do interpolador ideal para r = 3. π ω J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 6 A solução MMQ é: com: h ρ = Φ T Φ ρ h ρ = [ h( Lr + ρ h( ( L r + ρ K h( ρ K h(( L r + ρ ]' Φ = [ φ( Lr + ρ φ( ( L r + ρ K φ( ρ K φ(( L r ρ ]' ρ + Φ T φ( φ( r = K φ ((L r φ( r φ( K φ((l r K K K K φ((l r φ((l r K φ( π α = r φ ( k U ( ω cos( kω dω π α r O erro do interpolador óptimo é dado por: com ε ρ r = ε ρ ρ = ε, Conclusões idênticas para outras entradas de banda limitada. L = φ( h( λr + ρ φ( λr + ρ r λ= L J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 63 Propriedades do interpolador óptimo: Filtro FIR simétrico (fase linear O interpolador para r contém as soluções para r/k: basta usar cada k-ésima amostra da resposta do filtro. O erro decresce rapidamente com L crescente e cresce com α. L - - -3-4 -5-6 -7-8 -9 - L - - -3-4 -5-6 -7-8 -9-3 4 5 6 7 8 9 α=. α=.4 α=.6 α=.8 α=.3 α=.5 α=.7 log (e r = 3 3 4 5 6 7 8 9 log (e α=. α=.4 α=.6 α=.8 α=.3 α=.5 α=.7 r = 6 L - - -3-4 -5-6 -7-8 -9 - L - - -3-4 -5-6 -7-8 -9-3 4 5 6 7 8 9 log (e α=. α=.4 α=.6 α=.8 α=.3 α=.5 α=.7 r = 4 3 4 5 6 7 8 9 log (e α=. α=.4 α=.6 α=.8 α=.3 α=.5 α=.7 r = Figura.45. Erro do interpolador óptimo em db para vários valores de L e α (abaixo de 6 db há instabilidade numérica. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 64 Exemplo: Projectar um interpolador óptimo para o exemplo anterior com erro inferior a 4dB Para r = 3 e α =.6 é necessário L =, logo N = 3. h(n= [ -8.745553e- -.668e- -.446e-6 3.9774e- 7.789e-.e+ 7.789e- 3.9774e- -.446e-6 -.668e- -8.745553e- ] 3.5 3..5..5..5.6π /3 π /3 π /3...47.94.4.88.34.8 π Figura.46. Característica do interpolador óptimo para r = 3, L = e α =.6. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 65.6.4.. -. -.4 -.6 4 6 8 4 6 8 4 6 8 3 Figura.47. Utilização do interpolador óptimo no exemplo de decimação-interpolação anterior. A vermelho, o sinal desejado; a preto, o sinal obtido. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 66.5.4 Aplicações de decimação-interpolação Mudança de frequência de amostragem Filtragem de banda estreita Exemplos: a Filtragem de flutuação de linha-base de ECG Figura.48. Sistema de remoção de flutuação de linha base de ECGs. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 67 Frequentemente podem usar-se filtros simples (p. ex. triangulares. a Decimação com filtros triangulares. Decimação f s inicial D N f s final 5 Hz 4 5 Hz 5 Hz 5 5 Hz 3 5 Hz 5 Hz 5 ECG original 5-5 5 5 5 3 35 5 ECG D= 5-5 5 5 75 5 5 75 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 68 5 ECG D=*5 5-5 6 5 376 5 ECG D=*5*5 5-5 6 5 76 Figura.49. Sucessivas decimações de um ECG com filtragem triangular. b Extracção da flutuação com filtro triangular de f c = Hz 5 Flutuação fs=hz 5-5 6 5 76 Figura.5. Flutuação do ECG anterior obtida por filtragem triangular. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 69 c Interpolação linear e subtracção da componente de flutuação. 5 Flutuação Interpolada, fs=5hz 5-5 5 5 5 3 35 5 ECG sem Flutuação 5-5 5 5 5 3 35 Figura.5. Passos finais da obtenção de ECG sem flutuação. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 7 b Filtragem de flutuação de linha-base de cardiogramas de impedância (ICG Sinais ICG amostrados a 5 Hz, com banda útil em [ 5] Hz. Passo : Duas decimações de D = 6, com filtro óptimo de N =. Nova frequência de amostragem: f =5/36 = 6.9 Hz. Passo : Filtragem LP com filtro óptimo de N= da componente de flutuação (f l =.5 Hz. Este passo pode ser repetido. Passo 3: Interpolação de I=36 por aproximação parabólica. Passo 4: Subtracção da componente de flutuação interpolada. Figura.5. Esquema utilizado na remoção de flutuação de linha-base de ICGs. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 7 Figura.53. a ICG original; b Flutuação estimada; c ICG sem flutuação. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 7 Atenuação na banda de rejeição (db Atenuação na banda de passagem (db Nº de multiplicações por amostra do esquema Nº de multiplicações por amostra de filtro óptimo equivalente Passo simples 38.4.45 9. 756 Passo repetido 43.. 9.7 476.6 Filtros FIR Adaptativos.6. Estrutura e Aprendizagem x(n x(n- x(n- x(n-n+ z - z - z -... w w w... w N- Σ y(n - Algoritmo Adaptativo t(n Figura.54. Estrutura básica de um filtro FIR adaptativo. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 73 O filtro FIR adaptativo pode ser considerado como um perceptrão linear com: x ( n = [ x( n x( n K x( n N + ]': vector das entradas no instante n. ( n ( n ( n ( n w = [ w w K wn ]': vector dos coeficientes do filtro no instante n. y (n : saída do filtro no instante n. t (n : resposta desejada do filtro (valor alvo no instante n. Temos o sinal de erro: ( e( n = t( n y( n = t( n w n x( n e E e = M n= ( n Ajustamos iterativamente (n w por forma a minimizar e(n. Usando o MMQ, temos as equações normais: E = w X' XW' = X'T W ' = ( X' X X'T com X, T e W matrizes das entradas, dos valores alvo e dos coeficientes. Normalmente não é praticável esta abordagem que exige conhecer todo o sinal, efectuando-se uma optimização pelo método de descida de gradiente: w ( n+ = w ( n e ( n ( n+ ( n η w = w + η e( n x( n w η - factor de adaptação (de aprendizagem J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 74 Mostra-se que: A adaptação (convergência só tem lugar para η < η max. Uma escolha criteriosa é η = k /( N E[ x ( n ], sendo [ x ( ] n k. N + A convergência para os valores óptimos dos coeficientes é feita com uma constante de tempo τ =. 4η E x ( n E a energia média do sinal (suposto estacionário e [.,.5] O valor inicial dos coeficientes é arbitrário (frequentemente toma-se o valor zero. [ ].6. Aplicações de Filtros FIR Adaptativos Questão-chave: Como escolher t(n? J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 75.6.. Equalização adaptativa de canal Transmissor t(n Canal de Comunicação Filtro Adaptativo y'(n x(n Réplica t'(n Figura.55. Equalização adaptativa de canal: t(n é um tem de impulsos, distorcido pelo canal de comunicação em x(n. Duas alternativas simples para a escolha de t(n: a Equalizar o canal usando, num período inicial de treino, uma réplica t' (n de um certo t(n conhecido. b Equalizar o canal usando, continuamente, uma versão limitada da saída. y(n - J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 76 Exemplo: t(n: onda quadrada az Canal de comunicação: Γ( z = Comprimento do filtro: N =.5..5. -.5 -. -.5 t (n 3 4 5 6 7 8 9 n.5..5..5. -.5 -. -.5 -. -.5 x (n 3 4 5 6 7 8 9 n.5. y ' (n.5. y (n.5. -.5 3 4 5 6 7 8 9 n.5. -.5 3 4 5 6 7 8 9 n -. -. -.5 -.5 Figura.56. Sinais obtidos na experiência de equalização de canal na configuração a e com η =.5. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 77..5..5. -.5 -. -.5 -. y ' (n 3 4 5 6 7 8 9 n.5..5. -.5 -. -.5 y (n 3 4 5 6 7 8 9 n Figura.57. Sinais obtidos na experiência de equalização de canal na configuração b, com y(n resultando de uma limitação em [.5,.5] e com η =.5. Note-se que neste exemplo se está a procurar cancelar um pólo usando zeros. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 78.6.4. Η(ω / Γ(ω.8.6.4. ω..57 3.4 4.7 6.8 Figura.58. Resposta nas frequências do filtro adaptativo, H(ω e do inverso da resposta do canal, / Γ(ω. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 79.6.. Remoção de ruído Sinal x(n + r (n - e(n x(n Ruído r (n Filtro Adaptativo y(n Condições: Figura.59. Remoção adaptativa de ruído. r (n é uma réplica do ruído verdadeiro r (n. a x(n, r (n e r (n são estacionários. b r (n e r (n são de média nula e estão fortemente correlacionados entre si (r (n é uma réplica de r (n, fortemente correlacionada. c x(n tem correlação nula com r (n e r (n. x(n + r (n funciona, assim, como o valor alvo que y(n deverá aproximar. Temos: Logo: c [ ( n ] = E[ ( x( n + r ( n y( n ] = E[ x ( n ] + E[ ( r ( n y( n ] E e [ e ( n ] = E[ x ( n ] + min E[ ( r ( n y( n ] y( n r ( n min E y(n é uma estimativa MMQ de r (n. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 8 Exemplos: a Remoção do ruído de 5Hz do ECG Remoção de uma sinusóide: parâmetros a estimar: amplitude e fase. Linear Discriminant (Filter x = a.sin(πt+φ x = a.cos(πt+φ w w d(t t(t (Target: ECG + noise E(t (Error Figura.6. Esquema de filtragem adaptativa de uma sinusóide. 5 µv 5-5 3 s Figura.6. ECG (3.4 s amostrado a 5 Hz, com ruído de 5 Hz. A amplitude é em µv. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 8 5 µv 5 5-5 - -5 - -5.6 s Figura.6. Saída do filtro (preto aproximando o ruído (cinzento para η =.. Primeiros.6 s. 5 µv 5 5-5 3 s Figura.63. ECG filtrado usando o algoritmo LMS com η =.. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 8 b Filtragem do ECG fetal contaminado pelo ECG da mãe ECG do feto x(n + r (n - e(n x(n Figura.64. Esquema de filtragem adaptativa do ECG fetal para remoção do ECG da mãe. ECG da mãe r (n Filtro Adaptativo y(n 8 ECG da mãe ECG ddo feto 6 4 - -4-6 3 4 5 6 7 8 9 Figura.65. ECG do feto com ECG da mãe, amostrado a 5 Hz. 4 3 - - -3-4 -5 3 4 5 6 7 8 9 Figura.66. Filtragem adaptativa do ECG da mãe usando N = e η =.5x -5. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 83.7 Filtros Não Lineares Solução de filtragem algumas vezes desejável: Atenuação de ruído em zonas "estáveis" do sinal Preservação das descontinuidades do sinal O filtro necessita, assim, de ter um comportamento não linear, como no exemplo seguinte. 6 5 x (n 6 5 x (n 4 4 3 3 a 3 4 5 6 7 8 9 n b 3 4 5 6 7 8 9 n 6 5 x (n 6 5 x (n 4 4 3 3 n 3 4 5 6 7 8 9 3 4 5 6 7 8 9 c d Figura.67. a Sinal original; b sinal + ruído; c Filtrado com filtro de média de 7 amostras; d idem, com filtro de mediana. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3 n
APSI - Processamento de Sinal 84 Ideia-base: Uma janela de N + amostras percorre um sinal x(n. A saída é uma operação não linear de ordem N, O N (x(n, sobre os valores do sinal dentro da janela, x(n. Note-se que, para um filtro não-linear: O N (ax(n + by(n é, em geral, diferente de a.o N (x(n + b O N (y(n (mostrar, com um exemplo para a operação de mediana Assim: Quando temos sinal + ruído o resultado da filtragem não linear não pode ser independentemente avaliado para o sinal e o ruído. Como consequência, o conceito de atenuação de potência de ruído não está bem definido, i.e. o tipo de avaliações que fizemos p. ex. nos Exemplos da secção.3.4 podem não ter significado. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 85.7. Filtro de Mediana O N (x(n = med N (x(n mediana N (x(n 8 7 6 5 4 3 x(n y(n n 4 6 8 4 6 8 med( 3 4= med( 3 5 7=3 Figura.68. Exemplo de filtragem de mediana de ordem N =. Definições: Vizinhança constante: região do sinal com pelo menos N + pontos todos do mesmo valor. Aresta: subida ou descida monotónica rodeada por vizinhanças constantes. Impulso: conjunto de, no máximo, N pontos com valores diferentes das vizinhanças constantes iguais que o rodeiam. Oscilação: sequência de pontos que não é nenhuma das configurações anteriores. Raiz de ordem N: sinal não alterado pela filtragem de um filtro de mediana de ordem N. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 86 Comportamento do filtro de mediana de ordem N (ver Figura: Vizinhanças constantes e arestas são preservadas. Impulsos são removidos. Oscilações são atenuadas. 8 7 6 5 4 3 x(n y(n n 4 6 8 4 6 8 8 x(n 7 y(n 6 5 4 3 n 4 6 8 4 6 8 a med( = b med( 4 5 7 =4 8 7 6 5 4 3 x(n y(n n 4 6 8 4 6 8 8 7 6 5 4 3 x(n y(n n 4 6 8 4 6 8 med( 4 5 7 =4 c Figura.69. Comportamento de um filtro de mediana de ordem, para vizinhanças constantes (a, arestas (b, impulsos (c e oscilações (d. med( 3 = d J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 87 Note-se que se tivermos um impulso próximo de uma aresta pode haver uma deslocação da aresta ("edge jitter" 6 5 4 3 3 4 5 6 7 8 9 3 4 5 6 5 4 3 3 4 5 6 7 8 9 3 4 5 Figura.7. Filtragem de um sinal com impulso próximo de aresta com filtro de mediana de ordem N = 9. Notar o "edge jitter". J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 88 Comportamento para janelas de dimensão crescente: (extremos do sinal preenchidos com o mesmo valor 8 x(n 7 6 5 4 3 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 7 n y(n N= 6 5 4 3 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 89 7 6 y(n N= 5 4 3 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 7 6 y(n N=3 5 4 3 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 Figura.7. Influência da dimensão da janela na filtragem de mediana. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 9 Comportamento para sucessivas passagens de um mesmo filtro: 8 7 6 5 4 3 x(n 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 7 6 5 4 3 y(n N = 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 7 6 5 4 3 y(n N = 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 9 7 6 5 4 3 7 6 5 4 3 y(n N = 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 y(n N = 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 Figura.7. Sucessivas passagens para N = e N = até obter uma raiz. Mostra-se que: Dado um sinal de comprimento L e um certo filtro de mediana, o sinal é reduzido a uma raiz depois de sucessivas filtragens de no máximo (L / vezes. Qualquer raiz para um filtro de mediana é raiz para um filtro de mediana de menor comprimento. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 9 y3.5 x y y x y y y3 3 4 5 6 7 Figura.73. Um sinal com L = 8 amostras necessitando de 3 passagens com um filtro de mediana de ordem N = para atingir uma raiz. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 93.7. Aplicações do filtro de mediana a Obtenção de informação sobre o comportamento em tempo longo. 9 85 FC 8 75 7 65 6 55 5 Hora 3 4 5 6 7 9 4 5 7 8 Figura.74. Evolução diária do ritmo cardíaco. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 94 a 9 FC 85 8 75 7 65 6 55 Hora 5 3 4 5 6 7 9 4 5 7 8 9 FC 85 8 75 7 65 6 b 9 FC 85 8 75 7 65 6 55 Hora 5 4 6 7 4 6 8 9 FC 85 8 75 7 65 6 c 55 Hora 5 4 6 7 4 6 8 d 55 Hora 5 4 6 7 4 6 8 Figura.75. Ritmo cardíaco filtrado por mediana, com ordem N = (b, N = 3 (c e N = 4 (d. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 95 b Remoção de spikes. 5 5 5 5 a 3 4 5 6 7 8 9 b 3 4 5 6 7 8 9 5 5 5 5 3 4 5 6 7 8 9 3 4 5 6 7 8 9 c d Figura.76. Sinal FHR (Fetal Heart Rate original (a e sinal com remoção de spikes, filtrado por fioltro de mediana com N =, e 3 (resp. b, c e d. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 96.7.3 Introdução aos Filtros de Pilha ("Stack Filters" Ideia-chave: efectuar as operações não-lineares em representações binárias dos sinais. Exemplo para a operação de mediana. Seja o sinal: Para determinar a mediana numa janela de comprimento N + = 5 basta contar o número de s; se excede N a mediana é, se não é. Logo, o resultado é: Seja agora um sinal com M níveis de quantificação, i.e., tomando valor em [, M ]. Vamos agora considerar "fatias" binárias do sinal conforme o valor está acima ( ou abaixo ( de um certo limiar j [, M ]. Cada "fatia" é um sinal binário x (j (i obtido pela seguinte função de decomposição por limiar: x ( j x( i ( i = x( i < j j J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 97 Figura.77. Filtragem de mediana usando decomposição por limiar (adaptado de Astola J, Kuosmanen P, 997. Notar que: A soma de todas as fatias é o sinal original: x( i = x ( i j = Adicionando as filtragens de mediana das "fatias" obtém-se a filtragem de mediana do sinal original. M ( j J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 98 Os "filtros de pilha" são uma generalização desta ideia. Considere-se a seguinte relação de ordem parcial de vectores binários: x y sse x n y n n As "fatias" obedecem a esta relação de ordem parcial: x (i x (j para i j Consideremos uma função Booleana f( sobre os bits de x. Diz-se que a função Booleana satisfaz a propriedade de empilhamento se: f(x f(y para x y Filtros construídos com tais funções dizem-se filtros de pilha. Uma função Booleana positiva, i.e., que se pode exprimir apenas por variáveis não complementadas, satisfaz a propriedade de empilhamento. O filtro de pilha baseado na função Booleana positiva f( é expresso por: Stack( x; f = M m= f ( x ( m J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 99 Uma função Booleana positiva de N variáveis pode exprimir-se sob a forma de mínima soma-de-produtos: f ( x K, x,, xn = k i= j Pi onde os P i são subconjuntos de {,,..., N}. É possível mostrar que, em vez da operação de decomposição, podemos também exprimir o filtro de pilha da seguinte forma: { min{ x : j P }, min{ x : j P },, min{ x j P } Stack( x ; f max j j K = : Exemplo: a A operação de mediana de três amostras pode exprimir-se pela função Booleana positiva f(x, x, x 3 = x x + x x 3 + x x 3. Logo: med(x, x, x 3 = max{min{x, x }, min{x, x 3 }, min{x, x 3 }} b Considere-se a seguinte função Booleana positiva: x j, j k f(x, x, x 3, x 4, x 5, x 6, x 7 = x x + x x 3 x 4 + x 3 x 4 x 5 + x 4 x 5 x 6 + x 6 x 7 O respectivo filtro de pilha pode ser implementado como (ver Figura.78: Stack(x, x, x 3, x 4, x 5, x 6, x 7 = max{min{x, x }, min{x, x 3, x 4 }, min{x 3, x 4, x 5 }, min{x 4, x 5, x 6 }+ min{x 6, x 7 }} J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 9 85 8 75 7 65 6 55 5 FC Hora 3 4 5 6 7 9 4 5 7 8 Figura.78. Sinal do Exemplo.7 a filtrado por mediana de ordem 3 e usando o filtro de pilha acima descrito. Vantagens dos filtros de pilha: Operações de mais fácil implementação e de execução mais rápida (possibilidade de processamento paralelo Possibilidade de realizar operações mais complexas (busca de melhor solução com Redes Neuronais. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal.7.4 Filtros Morfológicos Seja um sinal s(n: D V. Define-se: Umbra: subconjunto de E = DxV dado por {( n, y E; s( n y } U ( s = Intersecção de umbras de funções com o mesmo domínio D: U ( f { f ( n, g( n } n D g = U (min, Reunião de umbras de funções com o mesmo domínio D: U ( f { f ( n, g( n } n D g = U (max, Translação de umbra: U k ( s = U ( s( n k; n D 8 7 6 5 4 3 3 4 5 6 7 8 9 Figura.79. Operações com umbras de sinais. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal Seja uma janela: w = [-N, N]. Definem-se as operações morfológicas: Erosão: Dilatação: I U ( s o w = U k ( s = min(s(n k,..., s(n k k w U U ( s w = U k ( s = max(s(n k,..., s(n k k w Abertura (erosão seguida de dilatação: U (( s o w w Fecho (dilatação seguida de erosão: U (( s w o w (Notar a semelhança destas operações com a do filtro de pilha. De facto os filtros morfológicos são casos particulares dos chamados filtros de pilha generalizados. 8 7 6 5 4 3 x(n erosão 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 8 7 6 5 4 3 x(n abertura 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 8 7 6 5 4 3 x(n dilatação 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 8 7 6 5 4 3 x(n fecho 4 6 8 4 6 8 4 6 8 3 3 34 36 38 4 Figura.8. Ilustração de operações morfológicas em sinais. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 3 Erosão: reduz os picos e alarga os vales Dilatação: sobe os vales e alarga os picos Abertura: suaviza a aprte superior do gráfico por cortar os picos Fecho: suaviza a parte superior do gráfico por preencher os vales.7.5 Aplicações de filtros morfológicos Remoção de spikes unipolares. 5 5 3 4 5 6 7 8 9 6 4 8 6 4 erosão 3 4 5 6 7 8 9 5 5 dilatação 3 4 5 6 7 8 9 Figura.8. Ilustração de filtragem morfológica de FHR. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3
APSI - Processamento de Sinal 4 Bibliografia Astola J, Kuosmanen P (997 Fundamentals of Nonlinear Digital Filtering. CRC Press Cappellini V, Constantinides A, Emiliani P (978 Digital Filters and Their Applications. Academic Press Pub. Co. Crochiere RE, Rabiner LR (98 Interpolation and Decimation of Digital Systems. Proc. IEEE, 3:3-33. Gallagher NC, Wise GL (98 A Theoretical Analysis of the Properties of Median Filters. IEEE Tr ASSP, 9:36-4. Jackson LB, (986 Digital Filters and Signal Processing. Kluwer Academic Publishers, Boston. Kuc R (988 Introduction to Digital Signal Processing. Mc Graw-Hill, Inc. Lyons RG (997 Understanding Digital Signal Processing. Addison Wesley Longman, Inc. Oetken G, Parks TW, Schüssler HW (975 New Results in the Design of Digital Interpolators. IEEE Tr. ASSP, 3:3-39. Oppenheim AV, Schafer RW, Buck JR (999 Discrete-Time Signal Processing. Prentice-Hall Inc. Proakis JG, Manolakis DG (996 Digital Signal Processiong. Principles, Algorithms and Applications. Prentice Hall Int., Inc. Spriet J, Bens J (979 Optimal Design and Comparison of Wide-Band Digital On-Line Differentiators. IEEE Tr ASSP 7:46-5. Widrow B, Glover Jr JR, McCool JM, Kaunitz J, Williams CS, Hearn RH, Zeidler JR, Dong Jr E, Goodlin RC (975 Adaptive Noise Cancelling: Principles and Applications. Proc. IEEE, 63:69-76. Widrow B, McCool JM, Larimore MG, Johnson Jr CR (976 Stationary and Nonstationary Learning Characteristics of the LMS Adaptive Filter. Proc. IEEE, 64:5-6. J.P. Marques de Sá - Fac. Eng. Univ. do Porto, Portugal 3