Bài giảng Xử lý tín hiệu nâng cao (Advanced signal processing) - Chương 7 gồm có các bài tập thực hành, giúp người học cũng cố kiến thức từ chương 1 đến chương 5 môn Xử lý tín hiệu nâng cao. Mời các bạn cùng tham khảo.
Trang 1Ôn tập
Trang 2Chương 1
Bài 1.1 Nhập vào ma trận: A=[16 3 2 13; 5 10 11
8; 9 6 7 12; 4 15 14 1]
a) Tìm kích thước ma trận A
b) Lấy dòng đầu tiên của ma trận A.
c) Tạo ma trận B bằng cột 2 và 3 của ma trận A.
d) Tạo ma trận B bằng 3 dòng đầu của ma trận A e) Tính tổng các phần tử trên các cột của A
f) Tính tổng các giá trị ở cột 1,
g) Tính tổng các phần tử trên các hàng của A
Trang 3Chương 1
Bài 1.2: Giải hệ phương Ax=b
với: A= và b =
Bài 1.3: Vẽ đồ thị hàm số y1=sinx.cos2x và
hàm số y2=sin(x2) trong đoạn [0 2],
0 1
3
3 5
2
1 0
1
2 1 1
Trang 4Chương 1 (GUI)
Bài 1.4: Viết một phần mềm giải phương
trình bậc 3:
ax3+bx2+cx+d=0
a) Trong chương trình này có 4 ô Text box để
nhập 4 hệ số a,b,c,d
b) Hiện danh sách các nghiệm ra Static text c) Vẽ đồ thị hàm số y=ax3+bx2+cx+d
Trang 5Chương 2
Bài 2.1: Biểu diễn các tín hiệu sau trong
Matlab, và vẽ đồ thị biểu diễn tín hiệu
a) x1=(0.7)ncos(2πn+π)
b) x2 = {5,6,3,6,8,3} Sử dụng hàm xung đơn vị c) x3=2*δ[n-5]-4*δ[n+7] trên đoạn [0:10]
d) x4=3u(n-3) + δ(n+10) trên đoạn [-3:3]
Trang 6Chương 2
Bài 2.2: Hãy sử dụng Matlab để xác định
năng lượng của tín hiệu
a) x(n)=2*δ[n-5]-4*δ[n+7]
b) x(n)=3u(n-3) + δ(n+10)
Bài 2.3: Cho 2 tín hiệu sau đây:
– x1(n) = {0, 1,2,3}
– x2(n) = {0,1,2,3}
Viết 2 hàm [y,n] = sigadd(x1,n1,x2,n2) và [y,n]
= sigmult(x1,n1,x2,n2) để cộng và nhân 2
tín hiệu trên
Trang 7Chương 2 (GUI)
Bài 2.4 Cho tín hiệu
a) Vẽ đồ thị biểu diễn tín hiệu, trong đó giá trị a và b có
thể thay đổi bằng các slider bar b) Bổ xung thêm nhiễu phân bố gauss (+c*randn[n] )
thay đổi giá trị c (ở 3 mức 0.1 0.2 và 0.5 bằng menu popup hoặc listbox) vẽ lại đồ thị x[n] để quan sát sự ảnh hưởng của nhiễu
2 20
sin 2
10
a n
x
Trang 8Chương 3
Bài 3.1 Viết hàm [X,k] = dft(x,N) thực hiện
biến đổi Fourier rời rạc, Trong đó
– x: tín hiệu ban đầu
– N: khoảng biểu diễn tín hiệu
– X: tín hiệu trên miền tần số
– k: độ dài của DFT
Trang 9Chương 3
Bài 3.2 Viết hàm [x] = idft(X,N) thực hiện
biến đổi Fourier ngược, Trong đó
– x: tín hiệu ban đầu
– N: số mẫu trên miền tần số
– X: tín hiệu trên miền tần số
Trang 10Chương 3
Bài 3.3 Thực hiện biến đổi Fouier, biển diễn
phổ biên độ và phổ pha của các tín hiệu
a) x(n)=2(0.8)n[u(n)-u(n-20)]
b) x(n)=n(0.9)n[u(n)-u(50)]
c) x(n)={4,3,2,2,1,4,6,2}
d) x(n)=(n+2)(-0.7)n-1u(n-2)
e) x(n)=5(-0.9)ncos(0.1πn)u(n)
Trang 11Chương 3 (GUI)
Bài 3.4 Viết một chương trình thực hiện
a) Vẽ và biểu diễn tín hiệu x(n)=2(0.8) n
[u(n)-u(n-20)] trên đồ thị 1
b) Thực hiện biến đổi Fourier bằng hàm dft đã
xây dựng, biểu diễn phổ pha và phổ biên độ trên đồ thị 2
c) Thực hiện biến đổi Fourier bằng hàm fft của
Matlab, biểu diễn phổ pha và phổ biên độ trên đồ thị 3
Trang 12Chương 4
Bài 4.1 Viết một hàm [z,p]=zt tính toán và hiển thị
các điểm cực, điểm không, của biến đổi Z
a) Các hệ số được nhập vào từ bàn phím (dùng hàm
input), đưa danh sách các điểm cực và điểm không
ra màn hình (dùng hàm disp) b) Vẽ và biểu diễn các điểm cực và điểm không trên
mặt phẳng Z
N N
M M
z a z
a a
z b z
b
b z
X
)
1 0
1 1 0
Trang 13Chương 4
Bài 4.2 Sử dụng hàm zt vừa tạo để tính điểm
cực và điểm không của các tín hiệu số sau: a) x(n)= {3,2,1,-1,-2}
b) x(n)= (n-5)
c) x(n)=(1/3)4u(n)
Trang 14Chương 5
Bài 5.1 Biểu diễn thành phần pha và biên độ đáp ứng
tần số của bộ lọc FIR, biết hàm truyền đạt:
a) Bộ lọc FIR thông thấp bậc 1
b) Bộ lọc FIR thông cao bậc 1
1
1 2
1 )
H
1
1 2
1 )
H
Trang 15Chương 5 (GUI)
Bài 5.2 Bộ lọc IIR thông thấp có hàm truyền
đạt:
Viết chương trình trong Matlab vẽ và biểu diễn
thành phần biên độ và pha của đáp ứng tần
số, hệ số alpha có thể thay đổi được bằng thanh trượt
1
1
1
1 2
1 )
(
z
z z
H
Trang 16Chương 5 (GUI)
Bài 5.3 Bộ lọc IIR thông dải có hàm truyền
đạt:
Viết chương trình trong Matlab vẽ và biểu diễn thành phần biên độ và pha của đáp ứng tần số,
hệ số alpha,beta có thể thay đổi được bằng 2 thanh trượt
2 1
2
) 1
( 1
1 2
1 )
(
z z
z z
H