51125

Спектральний аналіз сигналів за Фурьє

Лабораторная работа

Коммуникация, связь, радиоэлектроника и цифровые приборы

Як відомо, спектри всіх дискретних сигналів періодичні, а амплітудні спектри є парними функціями частоти. Засобами MatLAB можна розрахувати дві половини одного періоду спектру, які є дзеркальними копіями одна одної відносно частоти Найквіста. Через це на всіх графіках амплітудних спектрів достатньо і необхідно виводити лише половину періоду спектру, оскільки вона повністю описує амплітудний спектр

Украинкский

2014-02-06

1.43 MB

20 чел.

Національний технічний університет України

«Київський політехнічний інститут»

Факультет електроніки

Лабораторна робота № 4

з дисципліни «Теорія сигналів»

«Спектральний аналіз сигналів за Фурьє»

Виконав:  студент 3-го курсу

групи ДП-92

 Лонтковський С.А.

Київ 2011

Мета роботи: дослідити зв’язок між часовими та спектральними

характеристиками сигналів; набути навичок використання основних засобів

спектрального та спектрально-часового аналізу сигналів за Фурьє у середовищі

MatLAB.

Порядок роботи

Як відомо, спектри всіх дискретних сигналів періодичні, а амплітудні спектри є парними функціями частоти. Засобами MatLAB можна розрахувати дві половини одного періоду спектру, які є дзеркальними копіями одна одної відносно частоти Найквіста. Через це на всіх графіках амплітудних спектрів достатньо і необхідно виводити лише половину періоду спектру, оскільки вона повністю описує амплітудний спектр. Для того, щоб мати уяву про дійсні значення амплітуд гармонік, значення відліків половини спектру треба поділити

на половину кількості відліків.

1. Сформувати вектор відліків часу тривалістю 1 с для частоти дискретизації 128 Гц. Сформувати сигнали ділянки синусоїди частотою 2, 2.5, 40, 100, 600, 600.5 Гц. Врахувати необхідність дотримання періодичності дискретного сигналу для отримання адекватного спектру. Побудувати графіки сигналів та їх амплітудних спектрів, зробити висновки.

2. Сформувати вектор відліків часу тривалістю 1 с для частоти дискретизації 256 Гц. Сформувати сигнали ділянки синусоїди частотою 5 Гц (S1) та 30 Гц (S2). Сформувати на їх основі сигнал (тривалістю 1 с), що дорівнює сумі цих двох сигналів, та інший сигнал, який спочатку містить сигнал 2*S1, а потім сигнал 2*S2 (матиме тривалість 2 с). Повторити для частот 15 та 16 Гц. Побудувати графіки сигналів та їх амплітудних спектрів, зробити висновки.

3. Сформувати вектор відліків часу тривалістю 3 с для частоти дискретизації 512 Гц. Сформувати сигнал ділянки синусоїди частотою 20 Гц. Створити розрив (вставити кілька нульових відліків замість відліків сигналу) в сигналі в момент часу 1.05 с. Отримати спектр сигналу. Перемістити розрив в інший момент часу, розрахувати спектр. Побудувати графіки сигналів та амплітудних спектрів, зробити висновки.

4. Сформувати вектор відліків часу тривалістю 3 с для частоти дискретизації 512 Гц. Сформувати сигнал послідовності прямокутних імпульсів (функція square) з частотою 1, 10, 30 та 100 Гц. Побудувати графіки сигналів та їх амплітудних спектрів, зробити висновки. Графіки будувати для таких частот, щоб було видно особливості спектру.

5. Сформувати вектор відліків часу тривалістю 30 с для частоти дискретизації 512 Гц. Сформувати сигнал одиночного прямокутного імпульсу (функція rectpuls) для тривалості імпульсу 0.1, 1, 10 сек. (для величин зсуву відносно початку відліку часу 0 та 5 с). Побудувати графіки сигналів та їх амплітудних і фазових спектрів (функція phase), зробити висновки. Графіки будувати для таких частот, щоб було видно особливості спектру.

7. Сформувати випадковий сигнал тривалістю 10 сек. Побудувати графіки сигналу та його амплітудного спектру, зробити висновки.

8. Для довільного сигналу виконати пряме та обернене перетворення Фурьє, порівняти початковий сигнал та відновлений сигнал. Зробити висновки.

9. Для оцифрованих сигналів електрокардіограми, електроенцефалограми, прочитаної з файлу, а також ЕЕГ здорової та хворої людини, сигналів артеріального та внутрішньочерепного тиску та плетизмограми побудувати амплітудні та фазові спектри за допомогою функції plot.

12. Побудувати функцію (за допомогою функції function), яка дозволяє розрахувати амплітудний та фазовий спектр частини звукового сигналу заданої тривалості та побудувати їх графіки. В функцію передавати вектор всіх відліків сигналу, час початку та закінчення необхідної ділянки сигналу, частоту дискретизації. Дослідити спектральний склад запису звуку для різних ділянок тривалістю 1 с, зробити висновки.

13. За допомогою функції wintool ознайомитися з часовими характеристиками та спектрами всіх вагових віконних функцій.

14. Згідно варіантів, вказаних в таблиці 1 (за списком, відрахувати свій номер двічі і взяти два рядки з таблиці; після останнього номеру починати рахувати спочатку), сформувати вікна заданого типу та тривалості 16 відліків та

256 відліків (функція window). Побудувати графіки вікон та їх амплітудних спектрів.

15. Сформувати вектор відліків часу тривалістю 1 с для частоти дискретизації 128 Гц. Сформувати сигнали ділянки синусоїди частотою 2, 2.5 Гц. Побудувати амплітудний спектр сигналів без використання віконної функції та з використанням обох вікон згідно варіанту. Тривалість вікон обрати рівною тривалості сигналів. Зробити висновки щодо спотворення спектрів.

16. Сформувати вектор відліків часу тривалістю 15 с для частоти дискретизації 128 Гц. Сформувати сигнали ділянки синусоїди частотою 10, 40, 128, 138 Гц. Сформувати відліки віконних функцій згідно варіанту тривалістю 100 відліків. Побудувати спектрограми сигналів (функція specgram) за допомогою всіх вікон згідно варіанту без використання перекриття вікон. Зробити висновки щодо вигляду спектрограм та впливу параметрів на вигляд спектрограм.

17. Сформувати вектор відліків часу тривалістю 5 с для частоти дискретизації 128 Гц. Сформувати сигнали ділянки синусоїди частотою 5 Гц амплітудою 3 В (S1) та 30 Гц амплітудою 1 В (S2). Сформувати на їх основі сигнал (тривалістю 5 с), що дорівнює сумі цих двох сигналів, та інший сигнал, який спочатку містить сигнал 2*S1, а потім сигнал 2*S2 (матиме тривалість 10 с). Сформувати відліки одної віконної функції тривалості 0.2 секунди та 2 секунди. Побудувати спектрограми сигналу. Повторити для частот 15 та 16 Гц. Застосувати функції colormap та colorbar. Побудувати тривимірні графіки модуля спектральної функції за допомогою функції surf.

18. Сформувати вектор відліків часу тривалістю 10 с для частоти дискретизації 128 Гц. Сформувати сигнал ділянки синусоїди частотою 20 Гц. Створити розрив (вставити п’ять нульових відліків) в сигналі в момент часу 5 с. Сформувати відліки одної віконної функції тривалості 0.2 секунди та 2 секунди. Побудувати спектрограми сигналу. Побудувати тривимірні графіки модуля спектральної функції за допомогою функції surf. Зробити висновки щодо точності відповідності спектрально-часових та часових властивостей сигналу.

20. Сформувати вектор відліків часу тривалістю 20 с для частоти дискретизації 128 Гц. Сформувати сигнал одиночного прямокутного імпульсу (функція rectpuls) для тривалості імпульсу 0.1, 1, 5 сек. (для величин зсуву відносно початку відліку часу 0 та 5 с). Сформувати відліки одної віконної функції тривалості 0.2 секунди та 2 секунди. Побудувати спектрограми сигналу. Побудувати тривимірні графіки модуля спектральної функції за допомогою

функції surf.

21. Повторити завдання 20 для сигналу, який складається з суми одиночного імпульсу та синусоїдального сигналу, а також для суми одиночного імпульсу, синусоїдального сигналу та випадкового сигналу. Параметри сигналів обрати довільно.

23. Побудувати спектрограми оцифрованих сигналів електрокардіограми, електроенцефалограми, прочитаної з файлу, а також ЕЕГ здорової та хворої людини, сигналів артеріального та внутрішньочерепного тиску та плетизмограми для обох вікон різної тривалості та різного перекриття вікон. Побудувати тривимірні графіки модуля спектральної функції за допомогою функції surf.

24. Побудувати спектрограми звукових сигналів, які отримані з різною частотою дискретизації для одного з вікон тривалістю 1 с та перекриття вікон на 50 %. Побудувати тривимірні графіки модуля спектральної функції за допомогою функції surf.

25. Побудувати функцію (з використанням функції function), яка будує графік зміни в часі середньої спектральної густини потужності в заданному частотному діапазоні для заданого сигналу.

clc;

clear all;

close all;

 

%1 задание+

T=1;

F=[2 2.5 40 100 600 600.5];

fs=128;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

j=1;

for i=1:length(F)

y=sin(2*pi*F(i)*t);

s=2*fft(y)/length(t);

ss=abs(s);

subplot(length(F),2,j),plot(t,y); grid on;

xlabel('Час,с');ylabel('Напруга,В');

subplot(length(F),2,j+1),stem(f,ss),xlim([0 fs/2])

xlabel('Частота,Гц');ylabel('Величина');

j=j+2;

end;

 

%2 задание+

fs=256;

T=1;

t=[0:1/fs:T-1/fs];

t1=[0:1/fs:2*T-1/fs];

f=[0:1/T:fs-1/T];

f1=[0:1/(2*T):fs-1/(T*2)];

F=[5 15 30 16];

for i=1:2

   figure(i);

   s1=sin(2*pi*F(i)*t);ss1=2*fft(s1)/length(t);ss1a=abs(ss1);

   s2=sin(2*pi*F(i+2)*t);ss2=2*fft(s2)/length(t);ss2a=abs(ss2);

   s3=s1+s2;ss3=2*fft(s3)/length(t);ss3a=abs(ss3);

   s4=[s1 s2];ss4=2*fft(s4)/length(t);ss4a=abs(ss4);

   subplot(4,2,1),plot(t,s1);

   xlabel('Час,с');ylabel('Напруга,В');

   subplot(4,2,2),stem(f,ss1a),xlim([0 fs/2]);

   xlabel('Частота,Гц');ylabel('Величина');

   subplot(4,2,3),plot(t,s2);

   xlabel('Час,с');ylabel('Напруга,В');

   subplot(4,2,4),stem(f,ss2a),xlim([0 fs/2]);

   xlabel('Частота,Гц');ylabel('Величина');

   subplot(4,2,5),plot(t,s3);

   xlabel('Час,с');ylabel('Напруга,В');

   subplot(4,2,6),stem(f,ss3a),xlim([0 fs/2]);

   xlabel('Частота,Гц');ylabel('Величина');

   subplot(4,2,7),plot(t1,s4);

   xlabel('Час,с');ylabel('Напруга,В');

   subplot(4,2,8),stem(f1,ss4a),xlim([0 fs/2]);

   xlabel('Частота,Гц');ylabel('Величина');

end;

 

 

%3 задание+

fs=512;

T=3;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

s1=sin(2*pi*20*t);

s2=sin(2*pi*20*t);

t1(1)=0;

for i=2:length(t)

   t1(i)=t1(i-1)+1/fs;

   if(fix(t1(i))==1)

       for k=i:i+20

       s1(k)=0;

       end;

        break;

   end;

end

for l=i+300:i+320

s2(l)=0;

end;

ss1=2*fft(s1)/length(t);ss1a=abs(ss1);

ss2=2*fft(s2)/length(t);ss2a=abs(ss2);

subplot(2,2,1),plot(t,s1);

xlabel('Час,с');ylabel('Напруга,В');

subplot(2,2,2),stem(f,ss1a);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Величина');

subplot(2,2,3),plot(t,s2);

xlabel('Час,с');ylabel('Напруга,В');

subplot(2,2,4),stem(f,ss2a);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Величина');

 

%4 задание+

fs=512;

T=3;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

F=[1 10 30 100];

j=1;

for i=1:length(F)

s=square(2*pi*F(i)*t);

ss=2*fft(s)/length(t);ssa=abs(ss);

subplot(length(F),2,j),plot(t,s);

xlabel('Час,с');ylabel('Напруга,В');

subplot(length(F),2,j+1),stem(f,ssa);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Величина');

j=j+2;

end;

 

%5 задание+

fs=512;

T=30;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

F=[0.1 1 10 ];

ts=0;

j=1;

for i=1:length(F)

s=rectpuls(t-ts,F(i));

ss=2*fft(s)/length(t);ssa=abs(ss);ssf=phase(ss);

figure(1);

subplot(length(F),3,j),plot(t,s);

xlabel('Час,с');ylabel('Напруга,В');

subplot(length(F),3,j+1),stem(f,ssa);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Величина');

subplot(length(F),3,j+2),stem(f,ssf);xlim([0 fs/1]);

xlabel('Частота,Гц');ylabel('Значення');

j=j+3;

end;

 

%7 задание+

fs=256;

T=10;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

s=randn(1,length(t));

ss=2*fft(s)/length(t);ssa=abs(ss);

subplot(2,1,1),plot(t,s);

xlabel('Час,с');ylabel('Напруга,В');

subplot(2,1,2),stem(f,ssa);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Значення');

 

%8 задание+

fs=256;

T=1;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

s=sin(2*pi*t*100);

ss=fft(s);iss=ifft(ss);

subplot(2,1,1)

plot(t,s);

title('Вхідний сигнал');

xlabel('Час,с');ylabel('Напруга,В');

subplot(2,1,2)

plot(t,iss);

title('Перетворений сигнал');

xlabel('Час,с');ylabel('Напруга,В');

 

%9 задание+-

fs=128;

T=1;

%--------------------------------------------------

EKG=fopen('vavreschuk','r');

R1=fread(EKG,'int16');

t1=[0:1/fs:(length(R1)-1)/fs];

f=[0:1/(length(t1)/fs):fs-1/(length(t1)/fs)];

ss1=2*fft(R1)/length(t1);ss1a=abs(ss1);ss1f=phase(ss1);

subplot(3,1,1);plot(t1,R1);

xlabel('Час,с');ylabel('Напруга,В');

subplot(3,1,2);plot(f,ss1a);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Значення');

subplot(3,1,3);plot(f,ss1f);

xlabel('Частота,Гц');ylabel('Величина');

%--------------------------------------------------

load eeg_healthy_10

t1=[0:1/fs:(length(sig)-1)/fs];

f=[0:1/(length(t1)/fs):fs-1/(length(t1)/fs)];

ss1=2*fft(sig)/length(t1);ss1a=abs(ss1);ss1f=phase(ss1);

subplot(3,1,1);plot(t1,sig);

xlabel('Час,с');ylabel('Напруга,В');

subplot(3,1,2);plot(f,ss1a);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Значення');

subplot(3,1,3);plot(f,ss1f);

xlabel('Частота,Гц');ylabel('Величина');

%--------------------------------------------------

load eeg_sick_10

t1=[0:1/fs:(length(sig)-1)/fs];

f=[0:1/(length(t1)/fs):fs-1/(length(t1)/fs)];

ss1=2*fft(sig)/length(t1);ss1a=abs(ss1);ss1f=phase(ss1);

subplot(3,1,1);plot(t1,sig);

xlabel('Час,с');ylabel('Напруга,В');

subplot(3,1,2);plot(f,ss1a);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Значення');

subplot(3,1,3);plot(f,ss1f);

xlabel('Частота,Гц');ylabel('Величина');

%--------------------------------------------------

EKG=fopen('rec_20110922_162251_7_Walenko.bin','r');

R=fread(EKG,[9,inf],'int16');

t1=[0:1/fs:(length(R(8,:))-1)/fs];

f=[0:1/(length(t1)/fs):fs-1/(length(t1)/fs)];

ss1=2*fft(R(8,:))/length(t1);ss1a=abs(ss1);ss1f=phase(ss1);

subplot(3,1,1);plot(t1,R(8,:));

xlabel('Час,с');ylabel('Напруга,В');

subplot(3,1,2);plot(f,ss1a);xlim([0 fs/2]);

xlabel('Частота,Гц');ylabel('Значення');

subplot(3,1,3);plot(f,ss1f);

xlabel('Частота,Гц');ylabel('Величина');

 

%12 задание+

[y,fs,bits]=wavread('44.1kHz.wav');

[laba412]=otrezok(2,3,y,fs);

 

%14 задание+

N=[16 256];

k=0;

for i=1:2

   w1=window(@hann,N(i));

   w2=window(@bohmanwin,N(i));

   ss1=2*fft(w1)/length(w1);ssa1=abs(ss1);

   ss2=2*fft(w2)/length(w2);ssa2=abs(ss2);

   subplot(2,2,i+k);plot(1:N(i),[w1,w2]);grid on;

   xlabel('Відлік');ylabel('Величина');

   legend('Hann','Bohman');

   subplot(2,2,i+1+k);plot(1:N(i),[ssa1,ssa2]);xlim([0 N(i)/2]);grid on;

   xlabel('Частота,Гц');ylabel('Значення');

   legend('Hann','Bohman');

   k=1;

end;

 

%15 задание**

fs=128;

T=1;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

F=[2 2.5];

j=1;

figure(1)

for i=1:length(F)

y=sin(2*pi*F(i)*t);

s=2*fft(y)/length(t);

ss=abs(s);

subplot(length(F),2,j),plot(t,y); grid on;

xlabel('Час,с');ylabel('Напруга,В');

subplot(length(F),2,j+1),stem(f,ss),xlim([0 fs/2]);grid on;

xlabel('Частота,Гц');ylabel('Значення');

j=j+2;

end;

y1=sin(2*pi*F(1)*t);y2=sin(2*pi*F(2)*t);

figure(2)

w1=window(@hann,length(y));

subplot(3,2,1);plot(t,w1);legend('Hann');grid on;

xlabel('Відлік');ylabel('Величина');

bv1=y1.*w1';subplot(3,2,3);plot(t,bv1');grid on;

bva1=fft(bv1);subplot(3,2,5);stem(f,abs(bva1));grid on;

w2=window(@bohmanwin,length(y));

subplot(3,2,2);plot(t,w2);legend('Bohman');grid on;

xlabel('Відлік');ylabel('Величина');

bv2=y2.*w2';subplot(3,2,4);plot(t,bv2');grid on;

bva2=fft(bv2);subplot(3,2,6);stem(f,abs(bva2)*2/length(t));grid on;

 

%16 задание+

T=15;

fs=128;

F=[10 40 128 138];

w1=window(@hann,100);

w2=window(@bohmanwin,100);

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

for i=1:length(F)

   figure(1);

   s=sin(2*pi*t*F(i));

   subplot(2,2,i);specgram(s,[],fs,w1,0);

   colorbar;

end;

for i=1:length(F)

   figure(2);

   s=sin(2*pi*t*F(i));

   subplot(2,2,i);specgram(s,[],fs,w2,0);

   colorbar

end;

 

%17 задание+

T=5;

fs=128;

t=[0:1/fs:T-1/fs];

tt=[0:1/fs:(2*T)-1/fs];

f=[0:1/T:fs-1/T];

ff=[0:1/(2*T):fs-1/(2*T)];

F=[5 30 15 16];

w1=window(@hann,fs*0.2);

w2=window(@hann,fs*2);

j=1;

for i=1:2

s1=3*sin(2*pi*t*F(j));

s2=sin(2*pi*t*F(j+1));

s3=s1+s2;

s4=[2*s1 2*s2];

figure(1)

subplot(2,2,j);specgram(s3,[],fs,w1,0);

title('0.2 сек');

colormap;colorbar;

subplot(2,2,j+1);specgram(s4,[],fs,w1,0);

title('0.2 сек');

colormap;colorbar;

figure(2)

subplot(2,2,j);specgram(s3,[],fs,w2,0);

title('2 сек');

colormap;colorbar;

subplot(2,2,j+1);specgram(s4,[],fs,w2,0);

title('2 сек');

colormap;colorbar;

[fo1,so1]=meshgrid(f,s3);

[fo2,so2]=meshgrid(ff,s4);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

ss2=fft(so2)/round(length(t)/2);ssa2=abs(ss2);

figure(j+2)

surf(fo1,so1,ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

figure(j+3)

surf(fo2,so2,ssa2);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

j=j+2;

end;

 

%18 задание+

T=10;

fs=128;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

s=sin(2*pi*t*20);

t1(1)=0;

for i=2:length(t)

   t1(i)=t1(i-1)+1/fs;

   if(fix(t1(i))==5)

       s(i)=0;s(i+1)=0;s(i+2)=0;s(i+3)=0;s(i+4)=0;

        break;

   end;

end;

w1=window(@hann,fs*0.2);

w2=window(@hann,fs*2);

[fo1,so1]=meshgrid(f,s);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

figure(1)

subplot(2,1,1);specgram(s,[],fs,w1,0);

title('0.2 сек');colormap;colorbar;

subplot(2,1,2);specgram(s,[],fs,w2,0);

title('2 сек');colormap;colorbar;

figure(2)

surf(fo1,so1,ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

 

%20 задание+

T=20;

fs=64;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

F=[0.1 1 5];

w1=window(@hann,fs*0.2);

w2=window(@hann,fs*2);

ts=0;

j=1;

k=0;

for i=1:length(F)

   s=rectpuls(t-ts,F(3));

   figure(1);

   subplot(length(F),2,j),plot(t,s);

   ylabel('Напруга, B');xlabel('Час, с');

   subplot(length(F),2,j+1),specgram(s,[],fs,w1,0);

   colormap;colorbar;

   figure(2);

   subplot(length(F),2,j),plot(t,s);

   ylabel('Напруга, B');xlabel('Час, с');

   subplot(length(F),2,j+1),specgram(s,[],fs,w2,0);

   colormap;colorbar;

   [fo1,so1]=meshgrid(f,s);

   ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

   figure(k+3)

   surf(fo1,double(so1),ssa1);colormap('default');shading interp;colorbar;

   title('Тривимірний графік');

   ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

   j=j+2;

   k=k+1;

end;

 

%21 задание+

T=20;

fs=64;

t=[0:1/fs:T-1/fs];

f=[0:1/T:fs-1/T];

s1=sin(2*pi*t*20);

s2=rectpuls(t,5);

s3=randn(1,length(t));

s4=s1+s2;

s5=s1+s2+s3;

w1=window(@hann,fs*0.2);

w2=window(@hann,fs*2);

figure(1)

subplot(2,1,1),specgram(s4,[],fs,w1,0);

colormap ;colorbar;

subplot(2,1,2),specgram(s4,[],fs,w2,0);

colormap;colorbar;

figure(2)

subplot(2,1,1),specgram(s5,[],fs,w1,0);

colormap ;colorbar;

subplot(2,1,2),specgram(s5,[],fs,w2,0);

colormap ;colorbar;

[fo1,so1]=meshgrid(f,s4);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

figure(3)

surf(fo1,double(so1),ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

figure(4)

[fo1,so1]=meshgrid(f,s5);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

surf(fo1,double(so1),ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

 

%23 задание+(

fs=8;

T=1;

w1=window(@hann,fs*0.2);

w2=window(@hann,fs*2);

%--------------------------------------------------

EKG=fopen('vavreschuk','r');

R1=fread(EKG,'int16');

t=[0:1/fs:(length(R1)-1)/fs];

f=[0:1/(length(t)/fs):fs-1/(length(t)/fs)];

figure(1)

subplot(2,1,1),specgram(R1,[],fs,w1,0);

colormap;colorbar;

subplot(2,1,2),specgram(R1,[],fs,w2,0);

colormap ;colorbar;

R1=R1';

figure(2)

[fo1,so1]=meshgrid(f,R1);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

surf(fo1,double(so1),ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

%--------------------------------------------------

load eeg_healthy_10

t=[0:1/fs:(length(sig)-1)/fs];

f=[0:1/(length(t)/fs):fs-1/(length(t)/fs)];

figure(1)

subplot(2,1,1),specgram(sig,[],fs,w1,0);

colormap;colorbar;

subplot(2,1,2),specgram(sig,[],fs,w2,0);

colormap ;colorbar;

figure(2)

[fo1,so1]=meshgrid(f,sig);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

surf(fo1,double(so1),ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

%--------------------------------------------------

load eeg_sick_10

t=[0:1/fs:(length(sig)-1)/fs];

f=[0:1/(length(t)/fs):fs-1/(length(t)/fs)];

figure(1)

subplot(2,1,1),specgram(sig,[],fs,w1,0);

colormap;colorbar;

subplot(2,1,2),specgram(sig,[],fs,w2,0);

colormap ;colorbar;

figure(2)

[fo1,so1]=meshgrid(f,sig);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

surf(4*fo1,double(so1),ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

%--------------------------------------------------

EKG=fopen('rec_20110922_162251_7_Walenko.bin','r');

R=fread(EKG,[9,inf],'int16');

sig=R(8,:);

t=[0:1/fs:(length(sig)-1)/fs];

f=[0:1/(length(t)/fs):fs-1/(length(t)/fs)];

figure(1)

subplot(2,1,1),specgram(sig,[],fs,w1,0);

colormap;colorbar;

subplot(2,1,2),specgram(sig,[],fs,w2,0);

colormap ;colorbar;

figure(2)

[fo1,so1]=meshgrid(f,sig);

ss1=fft(so1)/round(length(t)/2);ssa1=abs(ss1);

surf(4*fo1,double(so1),ssa1);colormap('default');shading interp;colorbar;

title('Тривимірний графік');

ylabel('Напруга, B');xlabel('Частота, Гц');zlabel('|F(f)|');

%24 задание*

[zapz1,fs1,bits1]=wavread('44.1kHz.wav');

[zapz2,fs2,bits2]=wavread('8kHz.wav');

T=5;

t=[0:1/fs1:T-1/fs1];

f=[0:1/T:fs1-1/T];

w1=window(@gausswin,fs1,1);

figure(1);

zapz1=zapz1';

specgram(zapz1,1e4,fs1,9000,4500);

colormap;colorbar;

w2=window(@hann,fs2);

Графіки.

Пункт 1.

Пункт 2.

Пункт 3.

Пункт 4

Пункт 5.

Пункт 7.

Пункт 8.

Пункт 9.

Пункт 12.

Пункт 14.

Пункт 16.

Пункт 17.

Пункт  18.

Пункт 20.

Пункт 21.

Пункт 23.

Пункт 24.


 

А также другие работы, которые могут Вас заинтересовать

22182. Аппарат нечетких нейронных или гибридных сетей 450.5 KB
  Например нейронные сети хороши для задач распознавания образов но весьма неудобны для выяснения вопроса как они такое распознавание осуществляют. Они могут автоматически приобретать знания но процесс их обучения зачастую происходит достаточно медленно а анализ обученной сети весьма сложен обученная сеть обычно черный ящик для пользователя. Теоретически системы с нечеткой логикой и искусственные нейронные сети эквивалентны друг другу однако в соответствии с изложенным выше на практике у них имеются свои собственные достоинства и...
22183. Генетические алгоритмы 248.5 KB
  Это приводит к тому что приспособленность популяции возрастает позволяя ей лучше выживать в изменяющихся условиях. 1 Основные понятия генетических алгоритмов При описании генетических алгоритмов используются определения заимствованные из генетики например речь идет о популяции особей а в качестве понятий применяются ген хромосома генотип фенотип аллель. Следовательно особями популяции могут быть генотипы либо единичные хромосомы в довольно распространенном случае когда генотип состоит из одной хромосомы. Она представляет меру...
22184. Знания и их свойства. Структура и этапы разработки ЭС 193.5 KB
  Классификация знаний 3. Методология разработки интеллектуальных систем на примере СОЗ ЭС Знания и их свойства Тематика представления знаний Knowledge Representation KR уже давно считается одними из основных направлений работ в области искусственного интеллекта поскольку выбор правильного способа представления знаний является не менее значимым фактором от которого зависит успешное создание системы чем разработка самого программного обеспечения в котором используются эти знания. С тематикой представления знаний тесно связана не...
22185. Модели представления знаний 655.5 KB
  Классификация моделей представления знаний. Модели на основе теоретического подхода Классификация моделей представления знаний Одним из основных элементов в архитектуре экспертной системы является база знаний БЗ. Фейгенбаумом мощность экспертной системы зависит в первую очередь от мощности базы знаний и возможности ее пополнения.
22186. Выявление знаний от экспертов 667.5 KB
  Экспертное оценивание представляет собой процесс измерения который можно определить как процедуру сравнения объектов по выбранным показателям признакам. В качестве показателей сравнения могут использоваться пространственновременные физические психические и другие свойства и характеристики объектов. Процедура сравнения включает в себя: определение причинноследственной связи между объектами; установление степени влияния одних объектов на другие.
22187. ОБРАБОТКА ЭКСПЕРТНЫХ ОЦЕНОК 310 KB
  Групповая экспертная оценка объектов при непосредственном оценивании. В зависимости от целей экспертного оценивания и метода учета экспертных оценок возникают следующие основные задачи: построение обобщенной оценки понятий и объектов на основе индивидуальных оценок экспертов; построение обобщенной оценки на основе парного сравнения объектов каждым из экспертов; определение относительных весов взаимосвязи объектов; определение зависимостей между ранжировками; определение согласованности мнений экспертов; оценка надежности обработки...