Você está na página 1de 28

Mestrado de Tecnologia Biomdica

Disciplina de Tecnologias de Reabilitao


Ano Lectivo de 2012/2013

1Trabalho
AMD,EMD e Tpz

Executado por:
17617 Andr Gonalves
21461 Eladio Orfo
Orientado por:
Joo Paulo Teixeira

AMD, EMD e Tpz

Entregue em:
18/03/2013

Andr Gonalves / Eladio Orfo- ESTiG/IPB


2

AMD, EMD e Tpz

1. ndice
1. NDICE......................................................................................................................................................................3
2. AMPLITUDE MDIA DESLIZANTE...................................................................................................................4
2.1. SINAL ECG..........................................................................................................................................................4
2.1.1. Cdigo Matlab............................................................................................................................................5
2.1.2. Aplicao do filtro AMD.............................................................................................................................5
2.1.3. Anlise de resultados..................................................................................................................................8
2.2. SINAL DE FALA (VOGAL)....................................................................................................................................9
2.2.1. Cdigo Matlab............................................................................................................................................9
2.2.2. Aplicao do filtro AMD...........................................................................................................................10
2.2.3. Anlise de resultados................................................................................................................................13
3. ENERGIA MDIA DESLIZANTE......................................................................................................................14
3.1. SINAL DE FALA (VOGAL)..................................................................................................................................14
3.1.1. Cdigo Matlab..........................................................................................................................................14
3.1.2. Aplicao do filtro EMD...........................................................................................................................15
3.1.3. Anlise de resultados................................................................................................................................18
3.2. SINAL DE FALA (FRICATIVA)............................................................................................................................19
3.2.1. Cdigo Matlab..........................................................................................................................................19
3.2.2. Aplicao do filtro EMD...........................................................................................................................20
3.2.3. Anlise de resultados................................................................................................................................23
4. TAXA DE PASSAGEM POR ZERO....................................................................................................................25
4.1. SINAL DE FALA (FRICATIVA)............................................................................................................................25
4.1.1. Cdigo Matlab..........................................................................................................................................25
4.1.2. Aplicao do filtro Taxa de passagem por zero.......................................................................................25
4.1.3. Anlise de resultados................................................................................................................................28

Andr Gonalves / Eladio Orfo- ESTiG/IPB


3

AMD, EMD e Tpz

2. Amplitude Mdia Deslizante


2.1. Sinal ECG

Figura 1 Sinal ECG.

Figura 2 Representao de um ciclo cardaco.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


4

AMD, EMD e Tpz

2.1.1.

Cdigo Matlab

function m=mediad2(I,N)
L=length(I);
M=floor(N/2);
for i=1:M,
m(i)=mean(I(1:i));
end
for i=1+M:L-M-1
m(i)=mean(I(i-M:i+M));
end
for i=L-M:L,
m(i)=mean(I(i-M:L));
end
plot(1:L,I,'b',1:L,m,'r');

2.1.2.

Aplicao do filtro AMD

De forma a proceder aplicao deste filtro foram inseridas no Command Window as


seguintes instrues:
load('ekg.mat');
s2=x(1:1500);
s1=mediad2(s2,10);
hold on
plot(s1,'r');
plot(s2);

Foi usado um comprimento de janela (N) igual a 2, 4, 6, 8 e 10, com um espaamento a


corresponder a metade da janela (N/2). Desta forma foram obtidos os seguintes resultados:

Andr Gonalves / Eladio Orfo- ESTiG/IPB


5

AMD, EMD e Tpz

Figura 3 AMD com N=2.

Figura 4 - AMD com N=4.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


6

AMD, EMD e Tpz

Figura 5 - AMD com N=6.

Figura 6 - AMD com N=8.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


7

AMD, EMD e Tpz

Figura 7 - AMD com N=10.

2.1.3.

Anlise de resultados

Aps a anlise dos grficos resultantes do filtro amplitude mdia deslizante com
diferentes tamanhos de janela, podemos denotar que o tamanho de janela que apresenta melhores
resultados foi N=6 e N=8.
Ao utilizar tamanhos de janela muito pequenos, como o caso do N=2 e N=4, o sinal no
fica bem filtrado, como podemos ver nas figuras 3 e 4, pois o sinal resultante da filtrao
apresenta a mesma quantidade de ruido que o sinal original.
Ao utilizarmos tamanhos de janela iguais a 6 e 8, como j referimos, o sinal fica sem o
ruido original e mantem a forma das ondas do ECG, no alterando a morfologia do sinal, com
isto podemos concluir que estes tamanhos de janela so ideais para o sinal em estudo.
Quando utilizado um tamanho de janela superior a 8, verificou-se que este filtra
demasiado o sinal, mudando a morfologia de certas ondas deste, como se pode verificar na figura
7.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


8

AMD, EMD e Tpz

2.2. Sinal de Fala (Vogal)


Atravs do programa Praat foi feita uma gravao de um sinal de fala com a vogal i,
sendo posteriormente aplicado o filtro amplitude mdia deslizante.

Figura 8 Sinal de Fala i.

2.2.1.

Cdigo Matlab

function m=mediad(I,N)
L=length(I);
M=floor(N/2);
for i=1:M,
m(i)=mean(abs(I(1:i)));
end
for i=1+M:L-M-1
m(i)=mean(abs(I(i-M:i+M)));
end
for i=L-M:L,
m(i)=mean(abs(I(i-M:L)));
end
subplot(2,1,1);plot(1:L,I,'b',1:L,m,'r');
subplot(2,1,2);plot(m,'r');

Andr Gonalves / Eladio Orfo- ESTiG/IPB


9

AMD, EMD e Tpz

2.2.2.

Aplicao do filtro AMD

De forma a proceder aplicao deste filtro foram inseridas no Command Window as


seguintes instrues:
[I,Fa]=wavread('i.wav');
s=mediad(I,2000)

Foi usado um comprimento de janela (N) igual a 250, 500, 750, 1000 e 2000, com um
espaamento a corresponder a metade da janela (N/2). Desta forma foram obtidos os seguintes
resultados:

Figura 9 - AMD com N=250.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


10

AMD, EMD e Tpz

Figura 10 - AMD com N=500.

Figura 11 - AMD com N=750.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


11

AMD, EMD e Tpz

Figura 12 - AMD com N=1000.

Figura 13 - AMD com N=2000.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


12

AMD, EMD e Tpz

2.2.3.

Anlise de resultados

Aps a anlise dos grficos resultantes do filtro amplitude mdia deslizante com
diferentes tamanhos de janela num sinal de fala, podemos denotar que o tamanho de janela que
apresenta melhores resultados foi N=1000.
Ao utilizar tamanhos de janela N=250, N=500 e N=750, o sinal no fica bem alisado,
como podemos ver nas figuras 9,10 e 11.
Ao utilizarmos o tamanho de janela igual 1000, como j referimos, o sinal fica bem
alisado devido a eliminao das componentes de alta frequncia.
Quando utilizado um tamanho de janela de 2000, verificou que o sinal resultante da
filtrao perdeu a forma do perodo fundamental do sinal, como se pode verificar na figura 13.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


13

AMD, EMD e Tpz

3. Energia Mdia Deslizante

3.1. Sinal de Fala (Vogal)


Atravs do programa Praat foi feita uma gravao de um sinal de fala com a vogal a,
sendo posteriormente aplicado o filtro amplitude mdia deslizante.

Figura 14 - Sinal de Fala a.

3.1.1.

Cdigo Matlab

function m=mediad(I,N)
L=length(I);
M=floor(N/2);
for i=1:M,
m(i)=mean(I(1:i).^2);
end
for i=1+M:L-M-1
m(i)=mean(I(i-M:i+M).^2);
end
for i=L-M:L,
m(i)=mean(I(i-M:L).^2);
end
subplot(2,1,1);
plot(1:L,I,'b',1:L,(m/10^-1),'r');
subplot(2,1,2);plot(m,'r');

Andr Gonalves / Eladio Orfo- ESTiG/IPB


14

AMD, EMD e Tpz

3.1.2.

Aplicao do filtro EMD

De forma a proceder aplicao deste filtro foram inseridas no Command Window as


seguintes instrues:
[I,Fa]=wavread('a.wav');
s=mediad(I,1500)

Foi usado um comprimento de janela (N) igual a 400, 600, 800, 1000 e 1500, com um
espaamento a corresponder a metade da janela (N/2). Desta forma foram obtidos os seguintes
resultados:

Figura 15 - EMD com N=400.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


15

AMD, EMD e Tpz

Figura 16 - EMD com N=600.

Figura 17 - EMD com N=800.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


16

AMD, EMD e Tpz

Figura 18 - EMD com N=1000.

Figura 19 - EMD com N=1500.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


17

AMD, EMD e Tpz

Figura 20 - EMD com N=3000.

3.1.3.

Anlise de resultados

Aps a anlise dos grficos resultantes do filtro energia mdia deslizante com diferentes
tamanhos de janela num sinal de fala, podemos denotar que o tamanho de janela que apresenta
melhores resultados foi N=1500 (figura 19).
Ao utilizar tamanhos de janela inferiores a 1500, o sinal no fica bem alisado, como
podemos ver nas figuras 15,16, 17 e 18.
Ao utilizarmos o tamanho de janela igual 1500, existe uma boa distino da zona vozeada
e do silncio. Pode-se verificar tambm que o sinal fica bem alisado devido a eliminao das
componentes de alta frequncia.
Quando utilizado um tamanho de janela de 3000, verificou que o sinal resultante da filtrao
alterou a morfologia do sinal como podemos verificar na figura 20.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


18

AMD, EMD e Tpz

3.2. Sinal de Fala (Fricativa)


Atravs do programa Praat foi feita uma gravao de um sinal de fala com a palavra
fricativa fado, sendo posteriormente aplicado o filtro amplitude mdia deslizante.

Figura 21 - Sinal de Fala fado.

3.2.1.

Cdigo Matlab

O cdigo Matlab utilizado para a palavra fricativa foi o mesmo que para a vogal. (3.1.1)

Andr Gonalves / Eladio Orfo- ESTiG/IPB


19

AMD, EMD e Tpz

3.2.2.

Aplicao do filtro EMD

De forma a proceder aplicao deste filtro foram inseridas no Command Window as


seguintes instrues:

[I,Fa]=wavread('fado.wav');
s=mediad(I,1500);

Foi usado um comprimento de janela (N) igual a 50, 100, 200, 600, 1000 e 1500, com um
espaamento a corresponder a metade da janela (N/2). Desta forma foram obtidos os seguintes
resultados:

Figura 22 - EMD com N=50.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


20

AMD, EMD e Tpz

Figura 23 - EMD com N=100.

Figura 24 - EMD com N=200.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


21

AMD, EMD e Tpz

Figura 25 - EMD com N=600.

Figura 26 - EMD com N=1000.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


22

AMD, EMD e Tpz

Figura 27 - EMD com N=1500.

Figura 28 EMD com N=2000

3.2.3.

Anlise de resultados

Aps a anlise dos grficos resultantes do filtro energia mdia deslizante com diferentes
tamanhos de janela num sinal de fala, podemos denotar que o tamanho de janela que apresenta
melhores resultados foi N=1500 (figura 27).
Ao utilizar tamanhos de janela inferiores a 1500, o sinal no fica bem alisado, como
podemos ver nas figuras 22 a 26.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


23

AMD, EMD e Tpz

Ao utilizarmos o tamanho de janela igual 1500, existe uma boa distino da zona vozeada e do
silncio. Pode-se verificar tambm que o sinal fica bem alisado devido a eliminao das
componentes de alta frequncia.
Quando utilizado um tamanho de janela de 2000, verificou que o sinal resultante da filtrao
alterou a morfologia do sinal como podemos verificar na figura 28.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


24

AMD, EMD e Tpz

4. Taxa de Passagem Por Zero


4.1. Sinal de Fala (Fricativa)
O sinal de fala utilizado para o filtro taxa de passagem por zero foi o mesmo que o
utilizado para aplicado o filtro amplitude mdia deslizante, ou seja, a palavra fado.

4.1.1.

Cdigo Matlab

function tpz=taxapassagemzero(I,N,W)
L=length(I);
for n=2:L
d(n)=I(n)-I(n-1);
end
tpz=zeros(1,L/W);
for i=N/2+2:L-N/2,
sig=sign(d(i-N/2:i+N/2))-sign(d(i-N/2-1:i+N/2-1));
tpz(i)=mean(abs(sig).*hanning(N+1)');
end
figure;
subplot(2,1,1);plot(1:L,d,'b',1:L,tpz/2,'r');
subplot(2,1,2);plot(tpz/2,'r');

4.1.2.

Aplicao do filtro Taxa de passagem por zero

De forma a proceder aplicao deste filtro foram inseridas no Command Window as


seguintes instrues:
[I,Fa]=wavread('fado.wav');
tpz=taxapassagemzero(I,N,W);

Foi usado um comprimento de janela (N) igual a 60, 80, 100 e 200, com um espaamento
W=1. Desta forma foram obtidos os seguintes resultados:

Andr Gonalves / Eladio Orfo- ESTiG/IPB


25

AMD, EMD e Tpz

Figura 29 - Tpz com N=60.

Figura 30 - Tpz com N=80.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


26

AMD, EMD e Tpz

Figura 31 - Tpz com N=100.

Figura 32 - Tpz com N=200.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


27

AMD, EMD e Tpz

4.1.3.

Anlise de resultados

Aps a anlise dos grficos resultantes do filtro taxa de passagem por zero com diferentes
tamanhos de janela num sinal de fala, podemos denotar que o tamanho de janela que apresenta
melhores resultados foi N=100 (figura 31).
Neste consegue-se distinguir perfeitamente os silncios dos sons vozeados, uma vez que
os silncios so representados com uma gama de frequncia maior.

Andr Gonalves / Eladio Orfo- ESTiG/IPB


28