ІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
кафедра ЗІ
З В І Т
до лабораторної роботи №1
з курсу: «Системи запису та відтворення інформації»
на тему: «Знайомство з середовищем MATLAB. Дослідження методів обробки аудіоінформації в MATLAB»
Мета роботи
Отримати базові навики роботи в середовищі MATLAB, вивчити основні можливості MATLAB по обробці аудіоінформації.
Завдання
Ознайомитись з теоретичним матеріалом.
Завантажити wav-файл вказаний в завданні відповідно до свого варіанту.
Вивести основну інформацію про файл: кількість вибірок, кількість каналів, частота дискретизації, кількість біт на вибірку. Прослухати аудіофайл.
Сформувати заваду у вигляді синусоїдального сигналу з вказаними параметрами і накласти її на аудіофайл. Прослухати зачумлений аудіо сигнал.
Розрахувати коефіцієнти не рекурсивного фільтра вказаного порядку N для усунення завади.
Побудувати АЧХ аудіофайлу.
Відфільтрувати сигнал. Прослухати очищений аудіосигнал.
Зберегти результат у wav-файлі.
Розрахувати коефіцієнти рекурсивного фільтра вказаного порядку N та типу для усунення завади ( пульсації в зоні пропускання прийняти рівними 0.1дБ, мінімально допустиме загасання в смузі затримки 60 дБ).
Побудувати АЧХ розрахованого фільтра.
Відфільтрувати сигнал. Прослухати очищений аудіосигнал.
Зберегти результат в wav-файлі.
Варіант
Назва файлу
Частота завади
Амплітуда завади, В
Порядок не рекурсивного фільтра N
Тип рекурсивного фільтру
Порядок рекурсивного фільтру
4
Lab_1_4.wav
2000
3
280
Еліптичний
7
Текст програми
[y, Fs, bits] = wavread('С:\Lab_1_4.wav');
N=length(y)
Fs
bits
wavplay(y,Fs);
figure(1); plot(y);
t=0:length(y)-1;
t=t/Fs;
figure(2);
plot(t, y); xlim([t(1) t(end)]); grid on;
A=3;Fn=2000;
NOISE=A*sin(2*pi*Fn*t);
figure(3); plot(t, NOISE);xlim([t(1) t(end)]); grid on;
S = y + NOISE';
wavplay(S,Fs);
figure(4);
plot(t, S); xlim([t(1) t(end)]); grid on;
fn = Fs/2;
b = fir1(280, [1900/fn 2100/fn ], 'stop' );
[h, Fx] = freqz(b, 1, 1000:2600, Fs);
figure(5);plot( Fx, abs(h)); grid on;
y1=filter(b,1,S);
wavplay(y1, Fs);
figure(6);
plot(t, y1); xlim([t(1) t(end)]); grid on;
[B,A]=ellip(6, 0.1, 100, [1900/fn 2100/fn], 'stop');
[h, f1] = freqz(B,A,1000:2600 ,Fs);
figure(7);
plot(f1, abs(h)); grid on;
f=filter(B,A,S);
figure(8);
plot(t,f); xlim([t(1) t(end)]);
wavplay(f,Fs);
wavwrite(f,Fs,bits, 'D:\1.wav');
Результат виконання програми
Основна інформація про wav-файл
/
Вхідний сигнал
/
Завада у вигляді синусоїдального сигналу
/
Зашумлений аудіосигнал
/
АЧХ нерекурсивного фільтра.
/
Відфільтрований аудіосигнал
/
АЧХ рекурсивного фільтра.
/
Очищений аудіосигнал.
/
ВИСНОВКИ
Під час виконання лабораторної роботи, я ознайомився з середовищем MATLAB, вивчив основні можливості MATLAB по обробці аудіоінформації. Завантаживши і прослухавши wav-файл, за допомогою MATLAB вивів основну інформації про файл. Потім на корисний вхідний сигнал накладалася завада у вигляді синусоїдального сигналу з вказаними параметрами, а саме частотою 2000 Гц та амплітудою 3 В. Для усунення завади розраховувалися коефіцієнти нерекурсивного фільтра та рекурсивного вказаного порядку N.Для відповідних фільтрів було побудовано АЧХ. Відфільтрований, очищений сигнал збережений у wav-файлі.