Зертханалық жұмыс №7 сигналдардың вейвлеттік анализі жұмыстың мақсаты



Дата06.01.2022
өлшемі1,41 Mb.
#110226
Байланысты:
Зертханалық жұмыс7


Зертханалық жұмыс №7

СИГНАЛДАРДЫҢ ВЕЙВЛЕТТІК АНАЛИЗІ

Жұмыстың мақсаты: сигналдардың вейвлеттік анализінің негізін оқып білу және Matlab ортасында оны жүзеге асырудың дағдыларын алу.
1 - мысал

clear; clc % Workspace тазартуы және Command Window

[phi,psi,x]=wavefun('dmey'); % Мейер вейвлетін құру

subplot(121); plot(x,psi); % Мейер вейвлетінің визуализациясы

title ('Мейер вейвлеті') % графикке атау жасау

[phi,psi,x]=wavefun('haar'); % Хаар вейвлетін құру

subplot(122); plot(x,psi) % Хаар вейвлетінің визуализациясы

title ('Хаар вейвлеті') % графикке атау жасау



2-мысал


clear; clc

t = 0:0.000001:0.0004; % Уақыттық интервал

A= 1.5; % Сигнал амплитудасы

w = 10000; % Жиілік

phi = 0; % Бастапқы фаза

s = A*cos(2*pi*w*t+phi); % Гармоникалық сигнал

axis([0 0.0004 -3 3]); % Координат ӛстері бойынша

% шекті мәндерді беру

grid on; % Графикке тор түсіру

subplot(2,1,1) ;

plot(t,s); % Гармоникалық сигнал визуализациясы

title('Гармоникалық сигнал')

xlabel('t'); ylabel('s');

% Вейвлет-спектрограмма құру

subplot(2,1,2);

c = cwt(s, 1:2:32, 'mexh', 'abs1vl', ‘lvl’);

title('Гармоникалық сигналдың вейвлет-спектрограммасы');

xlabel('Уақыттық жылжу, b');

ylabel('Уақыттық масштаб, a');

3 мысал

clear; clc;

t = 0:0.000001:0.0004; A = 1.5; w = 10000; phi = 0;

An=0.8;% Шуыл амплитудасы

s = A*cos(2*pi*w*t+phi)+An*randn(size(t));

axis([0 0.0004 -3 3]); grid on;

subplot(211) ;plot(t,s);

title('Шуылды гармоникалық сигнал')

xlabel('t'); ylabel('s');

% Шуылды гармоикалық сигналдың

% вейвлет-спектрограммасын құру

subplot(212);

c = cwt(s, 1:2:32, 'mexh', 'abs1vl', ‘lvl’);

title('Шуылды гармоникалық сигналдың вейвлет-спектрограммасы');

xlabel('Уақыттық жылжу, b');

ylabel('Уақыттық масштаб, a');

4-мысал


load mtlb; % Тестілік дыбысты файлды жүктеу

v=mtlb(1:4000); % Сигналды ӛңдеу үшін 1-ден 4000-ға

% дейін санау нӛмерін таңдау

lv = length(v); % Дыбысты сигналдың отсчетынан тұратын

% массив элементтерінің санын анықтау

subplot(211); plot(v); % Дыбысты сигналды

% жүзеге асыру визуализациясы

title('Дыбысты сигналды жүзеге асыру'); % Графикке

% атау жасау

set(gca,'Xlim',[0 3500]);

% set функциясы графикалық объекттердің қасиеттерін

% беру үшін қолданылады

% gca функциясы (get current axes)ағымдағы ӛстерге

% кӛрсеткіш алу үшін қолданылады

% [0 3500] жазуы абсциссаның максималды және

% минималды мәндерін анықтайды

[c,l] = wavedec(v,5,'sym2');

% wavedec функциясы вейвлет базисі (бұл жағдайда Симлет

% вейвлеті) бойынша v векторымен берілген деректерді

% кӛпдеңгейлі дискретті жіктеу процедурасын жүзеге асырады

% 5 – бастапқы деректерді жіктеудің максималды деңгейінің нӛмері

cfd = zeros(5,lv); % 5 х 1v ӛлшемді

% массивтің нӛлдерін қалыптастыру

subplot(212)

ccfs = cwt(v,1:128,'sym4','plot'); % Дыбысты сигналдың

% вейвлет-спектрограммасын құру

title('Дыбысты сигналдың вейвлет-спектрограммасы')

colormap(pink(64)); % Вейвлет-спектрограмма түстер

% палитрасын беру

ylabel('Scale а')



5-мысал


clear; clc;

% t торында сигналдың анықтау облысы

t = 1:256;

phi1=pi/3; phi2=pi/4; % сигнал құраушыларының

% бастапқы фазалары

A1=1.2; A2=1.6; % сигнал құраушыларының амплитудалары

% Сигналдың сипаты:

s = A1*sin(0.05*pi*t+phi1)+A2*sin(0.02*pi*t+phi2);

% Сигнал визуализациясы:

subplot(211); plot(t,s);

title('Сигналды жүзеге асыру')

% Масштабтаушы айнымалы мәнінің векторы

scales = [1: 10, 25: 35];

% Спектрдің үшӛлшемді визуализациясымен континуал түрлендіру

subplot(212);

c=cwt (s, scales, 'morl', '3Dplot');



6-мысал


clear;

clc;


load noismima; % Тестілік сигналды жіктеу

x = noismima; % x массивіне сигнал есептеулерін енгізу

wname = 'db4'; % Вейвлет таңдау (бұл жағдайда Добеши

% вейвлеті)

lev = 5; % Декомпозиция деңгейін беру

[c,l] = wavedec(x,lev,wname); % Сигнал декомпозициясы

alpha = 2; % Ереже бойынша, alpha параметрі сығу үшін 1,5

% және шуылды жою үшін 3,0 тең деп есептеледі

m = 2*l(1); % Шекті баптау параметрі

[thr,nkeep] = wdcbm(c,l,alpha,m); % Орнатылған деңгейге

% қатысты шекті беру

[xd,cxd,lxd,perf0,perfl2]=… =… …wdencmp('lvd',c,l,wname,lev,thr,'h');% Сигналдың

% вейвлет-қалпына келуі

subplot(211);

plot(x); % Бастапқы сигнал визуализациясы

title('Бастапқы сигнал');

axis([0,500,-10,10]); % Абсцисс және ординат ӛстері

% бойынша шектер

subplot(212);

plot(xd); % Сығылған және тазаланған сигнал визуализациясы

title('Сығылған және тазаланған сигнал');

axis([0,500,-10,10]);



1 Тапсырма





2 тапсырма





3 тапсырма



5 тапсырма







Достарыңызбен бөлісу:




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет