BÀI TẬP THỰC HÀNH
XỬ LÝ TÍN HIỆU TRONG TRUYỀN THÔNG
BỘ LỌC SỐ FIR
Bài 5.1: Tạo hàm ideal_lp xác định đáp ứng xung của bộ lọc thông thấp lý tưởng theo
tần số cắt wc và chiều dài chuỗi đáp ứng xung.
Bài 5.2: Tạo hàm freqz_m tính toán độ lớn và pha của đáp ứng tần số, hàm trễ nhóm
Bài 5.3:
Tính Rp và As
Bài 5.4
Doc file am thanh test.wav (duoc thu am o che do mono, tan so lay mau 44100 Hz)
a. Bộ lọc lowpass
>> x = audioread('file_goc.wav');
%Ve am thanh tren do thi
>> plot(x);
%Phat am thanh
>> sound(x);
%Tao bo loc lowpass có bac la 100, cutoff frequency là 0.2
>> b = fir1(100,0.2);
%Xem dap ung tan so cua bo loc
>> freqz(b);
%Ap dung bo loc doi voi tin hieu x
>> y = filter(b,1,x);
%Phat am thanh sau khi loc
>> sound(y);
% Vẽ âm thanh trên đồ thị sau khi lọc
>> plot(y);
b. Bộ lọc passband
>> x = audioread('file_goc.wav');
%Ve am thanh tren do thi
>> plot(x);
%Phat am thanh
>> sound(x);
%Tao bo loc passband có bac la 100, bandpass cutoff frequencies là [0.2 0.4]
>> b = fir1(100,[0.2 0.4]);
%Xem dap ung tan so cua bo loc
>> freqz(b);
%Ap dung bo loc doi voi tin hieu x
>> y = filter(b,1,x);
%Phat am thanh sau khi loc
>> sound(y);
%b Vẽ đồ thị âm thanh sau khi lọc
>> plot(y);
c. Bộ lọc highpass
>> x = audioread('file_goc.wav');
%Ve am thanh tren do thi
>> plot(x);
%Phat am thanh
>> sound(x);
%Tao bo loc highpass có bac la 100, cutoff frequency là 0.2
>> b = fir1(100,0.2,’high’);
%Xem dap ung tan so cua bo loc
>> freqz(b);
%Ap dung bo loc doi voi tin hieu x
>> y = filter(b,1,x);
%Phat am thanh sau khi loc
>> sound(y);
% Vẽ đồ thị âm thanh sau khi lọc
>> plot(y);