Tải bản đầy đủ (.pdf) (57 trang)

Nghiên cứu bộ lọc thích nghi và ứng dụng trong khử nhiễu tín hiệu

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (730.78 KB, 57 trang )

1

MỞ ĐẦU

Ngày nay, với sự phát triển vượt bậc của khoa học kỹ thuật, các hệ
thống tương tự được thay thế dần bằng các hệ thống số. Các công nghệ mới
được ứng dụng rộng rãi cho xử lý tín hiệu. Bài toán loại bỏ nhiễu và tạp âm
luôn luôn là vấn đề lớn trong các hệ thống xử lý tín hiệu. Để loại bỏ can nhiễu
và tạp âm thường sử dụng các bộ lọc. Các bộ lọc kinh điển được thiết kế với
mục đích chọn lọc tần số (bộ lọc thông thấp, bộ lọc thông cao, bộ lọc thông
dải…) hay cực tiểu hóa bình phương trung bình của tín hiệu sai lệch. Tuy
nhiên những phương pháp này yêu cầu cần phải biết trước các đặc trưng
thống kê cơ bản của nhiễu như kỳ vọng, phương sai, hàm tương quan… giả
định nhiễu và tạp âm là những quá trình ngẫu nhiên dừng. Nhưng trong thực
tế, nhiễu và tạp âm là những quá trình ngẫu nhiên không dừng do đó các tham
số của nó thay đổi theo thời gian và do vậy việc thiết kế các bộ lọc theo
phương pháp kinh điển rất khó đạt được hiệu quả cao. Để phù hợp hơn với
điều kiện thực tế người ta đã đề xuất phương pháp xử lý tín hiệu thích nghi.
Mục đích của xử lý tín hiệu thích nghi là đạt được tín hiệu đầu ra tối ưu. Việc
nghiên cứu và xử lý tín hiệu trong môi trường không dừng dựa trên các thuật
toán xử lý thích nghi có một ý nghĩa thực tiễn rất lớn khi thiết kế các hệ thống
thông tin có độ chính xác cao.
Đề tài “Nghiên cứu bộ lọc thích nghi và ứng dụng trong khử nhiễu
tín hiệu” sẽ đi sâu vào nghiên cứu thuật toán xử lý tín hiệu thích nghi LMS
và các biến thể của nó. Từ đó thực hiện mạch xử lý tín hiệu thích nghi loại bỏ
can nhiễu.
Nội dung của luận văn bao gồm ba chương:
- Chương 1: Tổng quan về cấu trúc bộ lọc số
- Chương 2: Các bộ lọc thích nghi
- Chương 3: Mô phỏng ứng dụng khử nhiễu thích nghi



2

Trong quá trình làm luận văn, mặc dù đã có nhiều cố gắng, song không
thể tránh khỏi những sai sót, em rất mong nhận được sự góp ý tận tình của
Hội đồng bảo vệ để em có thể hoàn thiện luận văn hơn.
Em xin chân thành cảm ơn các thầy cô trong khoa, đặc biệt là thầy Ngô
Quốc Tạo đã tận tình hướng dẫn em hoàn thành luận văn này.
Thái Nguyên, ngày tháng năm 2015
Giáo viên hướng dẫn

Học viên thực hiện

PGS.TS Ngô Quốc Tạo

Lê Thị Uyên


3

Chương 1: TỔNG QUAN VỀ CẤU TRÚC BỘ LỌC SỐ
[2],[3]

1.1. Khái niệm về bộ lọc số [2],[3]
1.1.1. Khái niệm về bộ lọc
Lọc số là quá trình rất quan trọng của xử lý tín hiệu số, vì chính những
khả năng phi thường của các bộ lọc số đã làm cho chúng trở nên rất phổ biến
như ngày nay. Các bộ lọc số gồm có hai công dụng chính: phân tích tín hiệu
và phục hồi tín hiệu. Phân tích tín hiệu được áp dụng khi tín hiệu mong muốn
bị giao thoa với các tín hiệu khác hay bị các loại nhiễu tác động vào nó. Còn

phục hồi tín hiệu là khi tín hiệu mà ta mong muốn hay cần để đánh giá, xét
nghiệm bị sai lệch đi bởi nhiều yếu tố của môi truờng tác động vào; làm cho
nó bị biến dạng gây ảnh hưởng đến kết quả đánh giá.
Có hai loại bộ lọc chính là bộ lọc tương tự và bộ lọc số. Hai loại bộ lọc
này hoàn toàn khác nhau về mặt thiết kế vật lý và cách thức hoạt động. Bộ lọc
tương tự (Analog filter) sử dụng các mạch điện tử tương tự được tạo ra từ các
thành phần như: điện trở, tụ điện và các bộ khuếch đại để tạo ra các hiệu ứng
lọc cần thiết trên các tín hiệu tương tự như điện áp, dòng điện,…Bộ lọc số
(Digital filter) sử dụng một bộ xử lý số để thực hiện các tính toán trên các tín
hiệu số. Bộ xử lý ở đây có thể là một máy tính đa năng chẳng hạn như một
máy tính hoặc một chip DSP (Digital Signal Processing) chuyên ngành.
Các bộ lọc tương tự có ưu điểm là giá thành rẻ, tác động nhanh, dải
động (Dynamic Range) về biên độ và tần số đều rộng và nói chung có thể
thực hiện được các công việc của một bộ lọc số. Tuy nhiên ngày nay bộ lọc số
đang ngày càng chiếm ưu thế.
1.1.2. Bộ lọc tần số
* Hệ thống tuyến tính bất biến - bộ lọc tần số
Các hệ thống LTI (Linear Time Invariable) hay các mạch lọc số có thể
được biểu thị dưới dạng các bộ nhân, bộ cộng và bộ trễ đơn vị (Hình 1.1) liên


4

kết với nhau tạo thành sơ đồ dòng tín hiệu. Sơ đồ dòng tín hiệu thực hiện một
chức năng tính toán xác định, biểu thị bằng phương trình sai phân hoặc bằng
hàm truyền của một hệ thống hay của một mạch lọc số. Sơ đồ dòng tín hiệu
lại có nhiều dạng cấu trúc khác nhau, tuy nhiên ta luôn tìm được một cấu trúc
tối ưu hay còn gọi cấu trúc chính tắc. Đó là cấu trúc có các bộ nhân, bộ cộng
và bộ trễ đơn vị là ít nhất. Thiết lập cấu trúc là bước đầu tiên để thực thi phần
cứng và phần mềm cho mạch lọc số.


Hình 1.1: Sơ đồ dòng tín hiệu

Theo tính chất tự nhiên thì tín hiệu không tuần hoàn có năng lượng hữu
hạn có phổ bao gồm một dải liên tục. Hệ thống LTI thông qua hàm đáp ứng
tần số của nó sẽ làm suy giảm một số thành phần tần số nào đó của tín hiệu
vào đồng thời có thể khuếch đại các thành phần tần số khác. Hệ thống như
vậy có tác dụng như bộ lọc đối với tín hiệu đầu vào. Hiệu quả lọc đối với các
thành phần tần số khác nhau sẽ được thể hiện rõ thông qua đồ thị của H   .
Mặt khác, góc pha của H   sẽ xác định độ lệch pha của tín hiệu vào khi đi
qua hệ thống như một hàm của tần số.
Như vậy, tùy theo cách chọn các hệ số này chúng ta có thể thiết kế các bộ
lọc tần số cho phép truyền các tín hiệu với các thành phần tần số nằm trong


5

một dải nào đó trong khi sẽ làm suy giảm các tín hiệu có chứa các thành phần
tần số nằm trong một dải khác.
Trong trường hợp tổng quát, hệ thống tuyến tính bất biến theo thời gian
sẽ làm thay đổi phổ của tín hiệu đầu vào X   tùy thuộc vào đáp ứng tần số
H   để cho phổ đầu ra Y   = H   X   . Với tác dụng này thì H   có

vai trò như một hàm trọng số hoặc hàm dạng phổ đối với các thành phần tần
số khác nhau của tín hiệu đầu vào. Như vậy, khi ta chỉ quan tâm đến vai trò
này của hệ thống tuyến tính bất biến theo thời gian thì hệ thống có thể xem
như bộ lọc tần số và vì vậy thuật ngữ “Hệ thống bất biến theo thời gian” và
thuật ngữ “bộ lọc” là tương tự nhau và thông thường có thể thay đổi cho nhau.
Một hệ thống muốn thực hiện được về mặt vật lý thì nó phải nhân quả
và ổn định. Sơ đồ khối của hệ thống này được mô tả trên Hình 1.2

x(n)

Hệ thống tuyến tính bất biến

y(n)

nhân quả và ổn định h(n)

Hình 1.2: Sơ đồ khối của một hệ thống thực hiện được về mặt vật lý
Quan hệ giữa đầu vào và đầu ra của hệ thống này phải thỏa mãn điều
kiện sau đây:


y n  h n * x n 

 h k  x n  k 

(1.1)

k 0

L  h  n     0,  

(1.2)



 h n  

(1.3)


n 0

Các quan hệ này cho thấy chiều dài của đáp ứng xung h(n) là rất quan
trọng, các hệ số của h(n) là đặc trưng cho hệ thống. Vì thế chúng ta có thể


6

phân loại các hệ thống thành hai loại lớn tùy theo chiều dài của đáp ứng xung
h(n). Hai loại này như sau:
- Loại thứ nhất: Hệ thống được đặc trưng bởi đáp ứng xung có chiều
dài hữu hạn. Nó được gọi là hệ thống có đáp ứng xung chiều dài hữu hạn
(FIR), tức là h(n) chỉ khác không trong một khoảng có chiều dài hữu hạn N
(từ 0 đến N - 1).
- Loại thứ hai: Hệ thống được đặc trưng bởi đáp ứng xung có chiều dài
vô hạn. Nó được gọi là hệ thống có đáp ứng xung chiều dài vô hạn (IIR), tức
là h(n) khác không trong một khoảng vô hạn (từ 0 đến  ).
Việc lựa chọn hệ thống FIR hay IIR trong khi thiết kế tùy thuộc vào
yêu cầu của bài toán và đặc tính kỹ thuật của đáp ứng tần số mong muốn.
Trên thực tế, bộ lọc FIR được sử dụng trong các bài toán lọc mà ở đó đòi hỏi
sự tuyến tính của đặc tuyến pha trong dải thông của bộ lọc. Nếu sự tuyến tính
này là không cần thiết thì có thể sử dụng bộ lọc FIR hay IIR. Tuy vậy, về
nguyên tắc chung, bộ lọc IIR có các thùy bên (búp phụ) trong dải chắn thấp
hơn so với bộ lọc FIR với cùng tham số. Do nguyên nhân này, nếu sự méo về
pha có thể chấp nhận được hoặc là không quan trọng thì khi đó bộ lọc IIR
thường được chọn do việc thiết kế bộ lọc dạng này thường đòi hỏi số lượng
tham số ít hơn, bộ nhớ cần sử dụng cũng ít hơn và độ phức tạp tính toán cũng
thấp hơn.
Việc thiết kế bộ lọc số FIR và IIR thường có độ mềm dẻo cao hơn do

khả năng thực hiện được bằng phần mềm. Tuy vậy, một điểm quan trọng cần
lưu ý khi thiết kế là phải chọn được bộ lọc phù hợp với ứng dụng và thỏa mãn
các yêu cầu của việc thiết kế.
Chúng ta đều biết rằng để có thể thực hiện bộ lọc số dễ dàng hơn, với
giá thành rẻ hơn thì số phần tử của bộ lọc phải ít nhất. Và để giảm thời gian
tính toán trong quá trình lọc thì một bộ lọc tốt nhất là bộ lọc có bậc nhỏ nhất.


7

Theo tiêu chí này nhiệm vụ của quá trình thiết kế bộ lọc là phải xác định các
hệ số ak  và bk  trong đặc tính đáp ứng tần số được đưa bởi (1.10) để có thể
đạt được các giá trị gần đúng nhất so với các tham số được yêu cầu. Bậc của
H   được sử dụng để xấp xỉ hóa các tham số này một phần sẽ phụ thuộc vào

các tiêu chuẩn được sử dụng trong việc chọn lựa các hệ số ak  và bk  cũng
như số lượng (M, N) của các hệ số này.
Lọc tuyến tính và bất biến thời gian (LTI) được đặc trưng bởi đáp ứng
xung h(n) của nó. Đáp ứng đối với tín hiệu vào bất kỳ x(n) sẽ tổng chập của
h(n) với x(n). Tuy nhiên nhiều khi ta liên hệ trực tiếp tín hiệu ra và vào bằng
phương trình hiệu. Xét phương trình hiệu hay cấu trúc mạch lọc người ta chia
ra làm hai loại lớn đó là lọc phi đệ quy FIR và lọc đệ quy IIR. Trong chương
này chúng ta lần lượt xét các cấu trúc của hai loại mạch lọc đó.
[4],[5]

1.2. Cấu trúc của bộ lọc IIR

Bộ lọc số IIR có đáp ứng xung dài vô hạn và được mô tả bằng phương
trình sai phân như sau:
yn 


M

N

m o

k 1

 bm xn  m    a k y n  k 

(1.4)

Đối với bộ lọc LTI nhân quả thì M  N, ở đây N là bậc của mạch lọc số.
1.2.1. Cấu trúc dạng trực tiếp của bộ lọc IIR
Lấy biến đổi z phương trình sai phân (1.5) và sau đó lập tỉ số Y(z)/X(z)
ta sẽ thu được hàm truyền của mạch lọc này:
M

H(z) 

b

m

z m

(1.5)

m 0

N

1

a

k

z

k

k 1

Nếu đặt H(z) = H1(z).H2(z)

(1.6)

M

Trong đó: H1(z) =

b

m

m o

z m


(1.7)


8

1

H2(z) =

(1.8)

N

1   ak z

k

k 1

Thì chúng ta sẽ thu được cấu trúc trực tiếp của bộ lọc IIR. Đó là cấu
trúc gồm đủ các bộ cộng, bộ nhân và bộ trể đơn vị như trong phương trình sai
phân.

b0
x[n]

y[n]

z 1


z 1

b1

 a1

z 1

b2

 a2

z 1

z 1

bM 1

 aN 1

z 1

z 1

bM

 aN

z 1


Hình 1.3. Sơ đồ mô tả cấu trúc trực tiếp mạch lọc IIR bậc N
Bây giờ nếu thực thi hàm truyền H2(z) trước, sau đó đến H1(z) có nghĩa
là thực hiện hàm truyền H(z) dưới dạng sau:
H(z) = H2(z).H1(z)

(1.9)

Thì ta sẽ thu được cấu trúc dạng trực tiếp 2.
b0
x [n ]

 a1

z 1
b1

 a2

z 1
b2

 a N 1
 aN

y [n ]

z 1
b N 1
z 1b


N

Hình 1.4: Sơ đồ cấu trúc dạng trực tiếp II của mạch lọc IIR bậc N


9

Sau khi thu được cấu trúc dạng trực tiếp 2, ta thực hiện phép chuyển vị
sao cho H1(z) thực hiện trước rồi mới đến H2(z), có nghĩa là ta thực thi hàm
truyền H(z) dưới dạng:
H(z) = H1(z).H2(z)

(1.10)

Như vậy sẽ thu được cấu trúc dạng trực tiếp 1.
b0

x[n]

y[n]

b1 z

1

1
b2 z

 a1
 a2


z 1
bN 1
bN

z 1

 a N 1
 aN

Hình 1.5 Sơ đồ cấu trúc dạng trực tiếp I của mạch lọc IIR bậc N
1.2.2. Cấu trúc dạng nối tiếp của bộ lọc IIR
Trong nhiều ứng dụng thực tế, hàm truyền của mạch lọc bậc N thường
được khai triển thành tích các hàm truyền bậc hai. Do vậy khi thực thi dạng
khai triển này, sẽ thu được cấu trúc dưới dạng nối tiếp các hệ thống bậc hai.
Thật vậy, hàm truyền H(z) từ (1.9) có thể khai triển dưới dạng sau:
M

b

H(z) 

m

z m

m 0
N

1


a

k

z

k

L
L
1 b z 1  b z 1
= b0  1i 1 2i 1  b0  H i ( z )
i1 1 a1i z  a2i z
i 1

(1.11)

k 1

N  1
Trong đó L = 
 . Vậy nếu N lẻ thì ngoài các hệ thống bậc hai còn
 2 

có một hệ thống bậc nhất ghép nối tiếp, và


10


Hi(z) =

1  b1i z 1  b2 i z 1
1  a1i z 1  a 2i z 1

(1.12a)

là hàm truyền của mạch lọc bậc hai thứ i.

x[n]
1

y[n]

1

z
a11

b11

a21

z1 b

21

a12

z


b12

1
a22 z b22

Hình 1.6: Sơ đồ cấu trúc nối tiếp của mạch lọc IIR bậc 4
1.2.3. Cấu trúc dạng song song của bộ lọc IIR
Nếu phân tích các hàm truyền H(z) của mạch lọc IIR bậc N (1.2) thành
tổng các hàm truyền bậc hai như sau:
M

b
H(z) 

m

z m

m0
N

1   ak z

k

b0i  b1i z 1
= C0 + 
= C0 +
1

 a 2i z 1
i 1 1  a1i z
L

L

 H ( z)
i

(1.12 b)

i 1

k 1

N  1
Trong đó L = 
 , thì sẽ thu được cấu trúc gồm các hệ thống bậc
 2 

hai ghép song song với nhau như trên hình 1.8. Nếu N lẻ thì ngoài các hệ
thống bậc hai còn có các hệ thống bậc nhất ghép song song. Mạch lọc bậc hai
thứ i có hàm truyền dạng:
b0i  b1i z 1
Hi(z)=
1  a1i z 1  a 2i z 1

(1.13)



11

C0
b 01
z 1
 a11

x[n]

y[n]

b11

z 1

 a 21

b 02
z

1

 a12
 a 22

b12
z 1

Hình 1.7: Sơ đồ cấu trúc dạng song song của mạch lọc IIR bậc 4
[2],[3],[4]&[5]


1.3. Cấu trúc các bộ lọc FIR [2],[3],[4]&[5]
Mạch lọc FIR bậc M có hàm truyền H(z) dạng sau:
M

H(z)=  bm z m

(1.14)

m 0

Quan hệ giữa tín hiệu vào x[n] và tín hiệu lối ra y[n] được biểu thị bằng
phương trình sai phân bậc M:
M

y[n]=  bm x[n  m]

(1.15)

m 0

Ở đây hệ số bm (m=0,1,...,M) cũng chính là đáp ứng xung đơn vị của
mạch lọc.
1.3.1. Cấu trúc dạng trực tiếp
Phương pháp thường dùng nhất để thực hiện bộ lọc FIR là phương pháp
dạng trực tiếp (direct form), phương pháp này sử dụng đường trì hoãn rẽ
nhánh (tapped delay line) được biểu thị trên hình 1.9.

z1


x[n]

b0

b1

z1
b2

z1

bM2

z1

z1

bM1

bM

y[n]

Hình 1.8. Sơ đồ cấu trúc dạng trực tiếp của mạch lọc FIR bậc M


12

Cấu trúc này yêu cầu M + 1 phép nhân, M phép cộng và M trì hoãn.
Tuy nhiên, nếu có các đối xứng trong đáp ứng xung đơn vị, ta có thể giảm bớt

số lượng phép nhân.
1.3.2. Cấu trúc nối tiếp
Nếu phân tích hàm truyền H(z) từ (1.14) thành tích các hàm truyền bậc
hai dưới dạng:
M

L

H(z)=  bm z m =b0  (1  b1i z 1  b2i z 2 )
m 0

Trong đó L= [

(1.16)

i 1

M 1
] thì mạch lọc FIR được thực thi dưới dạng các
2

mạch lọc bậc hai ghép nối tiếp. Trường hợp M lẻ thì ngoài các mạch lọc bậc
hai còn có một mạch lọc bậc nhất ghép nối tiếp.
x[n]

z 1

z1

b11


z 1

b12

z1

b21

b22

z 1

b13

z 1

b23

y[n]

Hình 1.9: Sơ đồ mạch lọc FIR bậc 6 ghép nối tiếp
1.3.3. Cấu trúc mạch lọc FIR pha tuyến tính
Nếu đáp ứng xung của bộ lọc FIR thoả mãn điều kiện đối xứng:
h[n]=  h[ M- n ], n=0,1,2,...,M-1

(1.17)

thì trong sơ đồ dòng tín hiệu có thể rút bớt được một nửa bộ nhân hệ số.
z 1


x[n]

z 1
z 1
z 1

z 1
y[n]

b0

b1

z 1

b2

b3

Hình 1.10: Sơ đồ mạch lọc FIR pha tuyến tính với M = 6


13

1.4. Cấu trúc mắt cáo
Cấu trúc mạng mắt cáo hay còn gọi là cấu trúc mạch lọc ô mạng
(lattice filter structures) rất có ích trong xử lý tiếng nói và trong thực thi các
mạch lọc thích nghi dùng để tiên đoán tuyến tính. Trong xử lý tiếng nói, cấu
trúc này thường được sử dụng nhiều hơn các cấu trúc FIR và IIR, bởi vì trong

phân tích và tổng hợp tiếng nói chỉ cần một lượng nhỏ các hệ số cũng có thể
cho phép một số lượng lớn các formants được mô hình hoá theo thời gian
thực. Có hai cấu trúc mắt cáo chính là mạng toàn điểm không và mạng toàn
điểm cực. Mạng vừa có điểm không vừa có điểm cực thì được gọi là mạng
bậc thang mắt cáo (ladder).
Cấu trúc dạng mắt cáo có thể được dùng để thực hiện các bộ lọc số FIR
và cả IIR. Trong mục này chỉ mô tả đối với bộ lọc IIR.
Mạch lọc IIR toàn điểm cực có hàm truyền H(z) dạng:
H(z) =

1

(1.18)

N

1   ak z

k

k 1

Sẽ có sơ đồ dòng tín hiệu cho trên hình 1.11
x[n]

f M [n]
 kM
kM
g M [n]


f M 1[n]

f1[n]

 k M 1

 k1
k1

k M 1
z 1

f 0 [ n]

g M 1[n]

z 1 g [n]
1

y[n]

z 1 g [n]
0

Hình 1.11. Cấu trúc mạng mắt cáo toàn điểm cực
Biến đổi z giữa tín hiệu fm[n] và fm-1[n] liên hệ với nhau bằng hệ thức
sau:
Fm-1(z) =

Fm ( z )  k m z  m Fm ( z 1 )

1  k m2

, m = M, M-1, ..., 1

(1.19)


14

Phương trình (1.19) cho phép tính đa thức bậc thấp hơn Fm-1(z) từ
Fm(z). Do đó, phương pháp này còn có tên là phương pháp hạ cấp, bắt đầu từ
m và lui dần tới m=1.
Các hệ số phản xạ km liên hệ với các hệ số ak của H(z) từ (1.18) bằng
hệ thức truy hồi:

am-1,i=

a mi  k m a m,m i

(1.20)

1  k m2

với km= amm ; m = M, M-1,..., 1 và i = 0, 1, 2,.., m-1 ;
km  1



Cấu trúc thang - mắt cáo(lattice- ladder)
Cấu trúc thang mắt cáo hay còn gọi là cấu trúc Gray- Markel được thực


thi đối với mạch lọc IIR tổng quát.
M

b

m

H(z) =

z m

=

m0
N

1   ak z

k

BM ( z )
AM ( z )

(1.21)

k 1

Cấu trúc mày được thực thi theo hai bước. Bước đầu tiên là thực thi cấu
trúc mắt cáo toàn điểm cực như trong hình 1.12 với các hệ số phản xạ km,

1  m  N . Bước thứ hai là cộng các lối ra gm[n] với các hằng số Cm như trong
hình 1.12 để tạo ra cấu trúc thang- mắt cáo.
f M [n]

x[n]

f1[n]

 k M 1

 kM
kM
CM

f M 1[n]

 k1
k1

k M 1
g M [n]

z 1
CM 1

f 0 [n]

g M 1[n]

z 1

C1

1
g 0 [n]
g1[n] z
C0

y[n]

Hình 1.12. Cấu trúc thang - mắc cáo bậc N


15

Chương này nêu tổng quan về lọc số, các thông số của hệ thống ở miền
thời gian, ở miền tần số.
Phần này cũng đã nêu lên được một cách tổng quát hai cấu trúc của bộ
lọc số là: FIR và IIR.
Từ những cấu trúc của các bộ lọc số cơ bản, ta ứng dụng các thuật toán
thích nghi cải biến bộ lọc để cho ra một bộ lọc thích nghi hoàn chỉnh với
những tính năng rất thực tế và hiệu quả; làm nền tảng để tìm hiểu các bộ lọc
thích nghi. Chúng ta cùng qua chương 2 để tìm hiểu kỹ hơn về vấn đề này.


16

Chương 2: CÁC BỘ LỌC THÍCH NGHI

2.1. Giới thiệu lọc thích nghi
Trong các bộ lọc số quy ước (FIR và IIR), mọi thông số của quá trình

lọc dùng để xác định các đặc trưng của hệ thống coi như đã biết. Các thông số
này có thể biến đổi theo thời gian, trong một số bài toán thực tiễn cho thấy
một số thông số có độ bất ổn định cao và bản chất của sự biến thiên thì không
tiên đoán được. Để giải quyết vấn đề đó, người ta nghiên cứu thiết kế bộ lọc
sao cho có thể tự thích nghi với hoàn cảnh hiện hành, có nghĩa là nó có thể tự
điều chỉnh các hệ số trong bộ lọc để bù lại các thay đổi trong tín hiệu vào, tín
hiệu ra, hoặc trong thông số của hệ thống. Đó chính là bộ lọc thích nghi.
Các bộ lọc thích nghi (Adaptive Filter) được sử dụng tốt nhất trong các
loại bộ lọc, ở các tín hiệu có điều kiện hay các thông số hệ thống thay đổi rất
chậm và bộ lọc đã được điều chỉnh để bù cho sự thay đổi này. Thuật toán
LMS là một thuật toán dò tìm được sử dụng để cung cấp một kế hoạch quản
lý tốt việc điều chỉnh các hệ số bộ lọc, ngoài ra còn có một số thuật toán khác
cũng có khả năng thích nghi như: RLS, NLMS,… Mỗi thuật toán có các ưu,
khuyết điểm khác nhau; chúng ta sẽ tìm hiểu rõ điều đó qua các phần sau đây.
2.1.1. Một số khái niệm cơ bản
Xử lý tín hiệu thực chất là một quá trình lấy ra tín hiệu mong muốn từ
một tập tín hiệu có lẫn nhiễu tại đầu vào máy thu. Tín hiệu khi được truyền đi
trong môi trường bị biến dạng bởi các tác động của can nhiễu và tạp âm. Do
vậy tại thiết bị thu ta phải thiết kế như thế nào để càng giảm được tác động
của nhiễu càng nhiều càng tốt. Với mục đích nâng cao độ tin cậy cho thiết bị
thu thì các hệ thống thông tin cần phải tích hợp các khối xử lý để giảm ảnh
hưởng của nhiễu và tạp âm. Những khối này luôn tồn tại trong các hệ thống
thông tin tương tự cũng như các hệ thống thông tin số, chúng có thể qui về
các bộ lọc và các bộ san bằng. Một trong những ứng dụng quan trọng của các


17

bộ lọc là loại bỏ nhiễu và tạp âm. Các bộ lọc kinh điển được thiết kế với mục
đích chọn lọc tần số (bộ lọc thông thấp, bộ lọc thông cao, bộ lọc thông dải…)

hay cực tiểu hóa bình phương trung bình của tín hiệu sai lệch. Tuy nhiên
những phương pháp này yêu cầu cần phải biết trước các đặc trưng thống kê cơ
bản của nhiễu như kỳ vọng, phương sai, hàm tương quan…và giả định nhiễu
và tạp âm là những quá trình ngẫu nhiên dừng. Hình 2.1 mô tả cấu trúc của
một bộ lọc tuyến tính hoạt động trong môi trường dừng.
Đầu vào bộ lọc

Bộ lọc

Sai số

Tham số bộ lọc
Đầu ra bộ lọc
Tín hiệu
mong muốn

Hình 2.1: Bộ lọc tuyến tính trong môi trường dừng
Nhưng trong thực tế, nhiễu và tạp âm là những quá trình ngẫu nhiên
không dừng do đó các tham số của nó thay đổi theo thời gian và do vậy việc
thiết kế các bộ lọc theo phương pháp kinh điển rất khó đạt được hiệu quả cao.
Để phù hợp hơn với điều kiện thực tế người ta đã đề xuất phương pháp xử lý
tín hiệu thích nghi. Mục đích của xử lý tín hiệu thích nghi là đạt được tín hiệu
đầu ra tối ưu theo nghĩa này hay nghĩa khác. Do không biết trước được các
tham số đặc trưng cho nhiễu hay tín hiệu có lẫn nhiễu tại đầu vào máy thu nên
các thuật toán xử lý tín hiệu thích nghi sẽ xử lý theo từng mẫu dữ liệu thu
được và sử dụng các mẫu đó để tìm các mẫu dữ liệu kế tiếp theo phương pháp
đệ quy. Mọi thuật toán xử lý tín hiệu thích nghi đều xuất phát từ một tập điều
kiện ban đầu. Điều kiện ban đầu chính là những gì biết được về môi trường
truyền dẫn. Trong môi trường dừng, ta sẽ tìm được một giá trị tối ưu sau khi



18

thực hiện một số chu kỳ xử lý thành công. Nhưng ngược lại trong môi trường
không dừng, không tồn tại một giải pháp tối ưu duy nhất cho quá trình xử lý
tín hiệu thích nghi. Để đảm bảo đạt được tín hiệu thu tốt nhất thì các bộ lọc
thích nghi vẫn phải thực hiện quá trình điều chỉnh trọng số bộ lọc dù không
biết trước được các tính chất thống kê của tín hiệu vào. Nhưng thay vì phải
đưa ra tất cả mọi thông tin về một quá trình nào đó thì ta chỉ phải đưa ra một
chuỗi mẫu tín hiệu tại thời điểm đó và sử dụng phương pháp đệ quy để tìm
các mẫu tín hiệu trong các thời điểm kế tiếp. Có rất nhiều biện pháp để có thể
tìm ra được tín hiệu mong muốn nhưng phương pháp hiệu chỉnh theo sai số
bình phương trung bình là phổ biến hơn cả. Sơ đồ khối của hệ thống xử lý tín
hiệu thích nghi được mô tả trên hình 2.2.
Đầu vào

Bộ lọc

Tham số bộ lọc

Thích nghi

Đầu ra
Sai số

Tín hiệu
mong muốn

Hình 2.2: Sơ đồ khối của hệ thống xử lý tín hiệu thích nghi
Từ trên sơ đồ ta thấy rằng hoạt động của thuật toán xử lý tín hiệu thích

nghi gồm hai quá trình chính:
 Quá trình lọc: quá trình này thực hiện lấy tín hiệu ra từ tín hiệu đầu vào.
 Quá trình xử lý thích nghi: mục đích của quá trình này là điều chỉnh
hàm truyền đạt của hệ thống theo sự thay đổi của môi trường. Quá trình thích
nghi điều chỉnh theo một tín hiệu sai lệch. Thông thường thì giá trị bình


19

phương trung bình của tín hiệu sai lệch được sử dụng trong quá trình xử lý
thích nghi.
Hai quá trình trên xử lý luân phiên nhau. Do vậy việc lựa chọn một cấu
trúc cho quá trình lọc có ảnh hưởng rất lớn đến toàn bộ quá trình xử lý của
toàn bộ thuật toán. Có ba dạng cấu trúc bộ lọc hay được sử dụng trong thuật
toán xử lý tín hiệu thích nghi là:
 Bộ lọc dàn hàng: bộ lọc này chỉ bao gồm ba phần tử cơ bản như
được chỉ ra trên Hình 2.3, đó là: bộ trễ, bộ nhân và bộ cộng. Số phần tử trễ
trong bộ lọc sẽ tương ứng với số đáp ứng xung hay bậc của bộ lọc. Tín hiệu
đầu ra của bộ lọc dàn hàng:
M 1

y (n) 

(2.1)

 w x(n  k )
k

k 0


với: y(n) là tín hiệu đầu ra của bộ lọc.
wk là hệ số của bộ lọc hay còn gọi là trọng số lọc k  1,2,...M  1
x(n) là đầu vào của bộ lọc.

x(n)

z-1

w0

x(n-1)

z-1

x(n-2)

x(nM+2)

z-1

x(n-M+1)

w1

w2

wM-2

wM-1










y(n)

Hình 2.3. Bộ lọc dàn hàng
 Bộ dự báo mắt cáo: Bộ dự báo này gồm các môđun riêng biệt, mỗi
môđun này chỉ xuất hiện trong một mắt lưới. Quan hệ giữa tín hiệu đầu vào
và tín hiệu đầu ra của bộ dự báo mắt cáo.
f m (n)  f m 1 (n)  K mbm 1 (n  1)
bm (n)  bm 1 (n  1)  K m f m 1 (n)

với b0 (n)  f 0 (n)  x(n)

(2.2)


20

Ở đây m  1,2,..., M  1, và M  1 là bậc dự báo cuối cùng. Biến f m (n) là sai
số dự báo tiến thứ m, và bm (n) là sai số dự báo lùi thứ m. Hệ số K m được gọi là
hệ số phản xạ thứ m. Sai số dự báo tiến f m (n) được định nghĩa như sự khác
nhau giữa đầu vào x(n) ( x(n) là đầu vào bộ dự đoán mắt cáo tại thời điểm m) và
giá trị dự đoán một bước của nó, giá trị dự đoán này được xác định trên cơ sở
tập m đầu vào x(n  1),..., x(n  m) trước đó. Tương tự, sai số dự báo lùi bm (n)

được định nghĩa như sự khác nhau giữa đầu vào u (n  m) và các dự báo lùi của
nó mà được xác định trên cơ sở tập m các đầu vào tiếp theo x(n),..., x(n  m  1).
 Mạng tâm thu-Systolic array: được đề xuất bởi Kung và Leiserson vào
năm 1978. Mạng Systolic bao gồm một quá trình song song theo một ma trận. Hai
thành phần cơ bản của nó là tế bào đường biên và tế bào bên trong. Quan hệ giữa
tín hiệu đầu vào và đầu ra của mạng Systolic như sau:
y ( n )  R T x ( n)

(2.3)

Trong đó những phần tử của ma trận R có chứa trong từng tế bào
đường biên và tế bào bên trong.
Từ những phân tích trên ta thấy quá trình xử lý tín hiệu thích nghi phù
hợp hơn với sự tác động của môi trường. Các quá trình xử lý tín hiệu thích
nghi trong môi trường không dừng đã cải thiện đáng kể chất lượng của các
thiết bị thu dưới tác động của nhiễu màu. Nhưng một nhược điểm chính của
thuật toán xử lý tín hiệu thích nghi là rất phức tạp trong tính toán và số phép
tính thực hiện rất nhiều. Ngày nay, với sự phát triển vượt bậc của khoa học kỹ
thuật ta hoàn toàn có khả năng xây dựng các bộ xử lý tín hiệu thích nghi. Với
những bộ vi xử lý có độ tích hợp cao như DSP, FPGA…cho phép thực hiện
các thiết bị có độ tính toán lớn và phức tạp. Với thuật toán xử lý tín hiệu thích
nghi do không tồn tại một giải pháp tối ưu duy nhất nên cần có một số công
cụ cần thiết. Đó chính là những thuật toán xử lý tín hiệu thích nghi như: thuật


21

toán giảm bước nhanh nhất, LMS, RLS, bộ lọc Wiener, bộ lọc Kalman...
Trong đó, thuật toán giảm bước nhanh nhất và thuật toán LMS đều dựa trên
phương pháp gradient. Còn thuật toán RLS lại dựa vào sự đánh giá bình

phương trung bình cực tiểu của tín hiệu sai lệch. Mỗi thuật toán đều có những
ưu điểm và nhược điểm riêng của nó. Do vậy, để chọn thuật toán xử lý tín
hiệu thích nghi nào thì tùy thuộc vào từng hệ thống mà ta muốn xây dựng. Rõ
ràng bất kể sự lựa chọn nào ta cũng đều phải dựa theo một tiêu chí nhất định
như hiệu suất, hàm tiêu phí của hệ thống. Với mục đích cải thiện độ tin cậy
của thiết bị thu số chúng ta cần phải quan tâm đến ba yếu tố là: tính toán sự
tiêu hao, hiệu suất và khả năng thực hiện hệ thống. Bằng các công cụ mô
phỏng hiện có (chẳng hạn phần mềm mô phỏng Matlab) ta thấy thuật toán
LMS thì rất đơn giản và vì vậy nó khá phổ thông và được sử dụng trong hầu
hết các ứng dụng. Trong các lĩnh vực viễn thông, rađa, định vị và thông tin
hàng hải thì các thành phần tín hiệu nhận được tại máy thu và những tín hiệu
đã bị điều chế với tín hiệu sóng mang. Dải phổ của tín hiệu thường rất nhỏ
hơn so với tần số sóng mang. Để thu được tín hiệu băng gốc thì tại máy thu
cần phải thực hiện dải điều chế. Một cách tổng quát, tín hiệu băng gốc có
dạng phức như sau:
x(n)  xI (n)  jxQ (n)

(2.4)

Trong đó xI (n) là thành phần thực và xQ (n) là thành phần ảo của tín
hiệu băng gốc. Theo công thức Ơle ta có thể viết lại như sau:
x(n)  x(n) e j ( n )

(2.5)

Tương tự như vậy thì tín hiệu đầu ra của bộ lọc thích nghi cũng có dạng
phức. Điều quan trọng là ta phải thể hiện được quan hệ giữa cấu trúc và dạng
toán học của bộ lọc thích nghi trên miền phức. Nếu tín hiệu vào có dạng phức



22

ta nên chuyển về dạng thực bằng cách sử dụng liên hợp phức và ma trận
chuyển vị Hermitian.
2.1.2. Các kiểu lọc của khử nhiễu thích nghi
Như đã trình bày ở phần trước, việc lựa chọn cấu trúc lọc có ảnh hưởng
lớn đến việc lựa chọn thuật toán cho bộ lọc thích nghi. Có nhiều cấu trúc lọc
và thuật toán được sử dụng trong bộ lọc thích nghi, mỗi loại phù hợp cho một
ứng dụng cụ thể. Chúng ta có thể chia bộ lọc thích nghi thành hai loại là tuyến
tính và phi tuyến

[4]

. Ở đây chúng ta chỉ quan tâm đến loại bộ lọc thích nghi

tuyến tính. Bộ lọc thích nghi tuyến tính cũng có thể chia thành hai loại chính:
Bộ lọc thích nghi có đáp ứng xung hữu hạn (AFIR) hay còn gọi là bộ lọc FIR
thích nghi và bộ lọc thích nghi có đáp ứng xung vô hạn (AIIR) hay còn gọi là
bộ lọc IIR thích nghi.
2.1.2.1. Bộ lọc FIR thích nghi
Cấu trúc thường được sử dụng trong bộ lọc FIR thích nghi là cấu trúc
ngang được mô tả trên Hình 2.4.
x(n)

z-1

x

h0


x(n-1)

z-1

z-1

h1

x(n-N+2)

hN-2

x(n-N+1)

z-1
hN-1

x

x

x


y(n) _
Thuật toán thích nghi

e(n)

+


d(n) +
Hình 2.4: Cấu trúc của bộ lọc FIR thích nghi dạng ngang.


23

Trong đó:
- N là chiều dài của bộ lọc
- x(n): tín hiệu đầu vào
- hk là đáp ứng của bộ lọc (k=0, 1, …, N-1)
- d(n): là tín hiệu ra mong muốn
- e(n) = d(n) - y(n): là tín hiệu sai số
- y(n): là tín hiệu ra của bộ lọc
Phương trình sai phân của bộ lọc như sau:
N 1

 hk x  n  k 

y n =

(2.6)

k 0

Trong một số trường hợp, các mẫu tín hiệu vào không chứa các mẫu trễ.
Khi đó cấu trúc của bộ lọc FIR thích nghi có dạng như Hình 2.5 và được gọi
là cấu trúc tổ hợp tuyến tính.
x0(n)


x

h0

x1(n)

x

xN-2(n)

h1

hN-2

x

xN-1(n)

hN-1

x


y(n)

Thuật toán thích nghi

e(n)
d(n)


_

+
+

Hình 2.5: Cấu trúc bộ lọc thích nghi dạng tổ hợp tuyến tính
Phương trình của bộ lọc cấu trúc tổ hợp tuyến tính có dạng như sau:
N 1

y n =

 hk x  n 
k 0

(2.7)


24

2.1.2.2. Bộ lọc IIR thích nghi
Phương trình sai phân của bộ lọc IIR như sau:
M 1

y(n) =



N 1

bk  n  x  n  k  


k 0

 ak  n  y  n  k 

(2.8)

k 1

Sơ đồ cấu trúc của bộ lọc IIR thích nghi có dạng như trên Hình 2.6
b0(n)

x(n)

x
z-1

z-1

x



-aN

bM-1(n)
x

z-1


x



b2(n)
x

z-1

-a1(n)

b1(n)
x

z-1

y(n)




z-1

x
_

Thuật toán thích nghi

e(n)


+

d(n)

Hình 2.6: Cấu trúc của bộ lọc IIR thích nghi
Trong thực tế các bộ lọc FIR thích nghi được sử dụng nhiều trong các
ứng dụng thông thường còn bộ lọc IIR thích nghi chỉ được sử dụng trong
những trường hợp đặc biệt bởi một số lý do sau:
- Bộ lọc IIR thích nghi khó ổn định
- Việc điều chỉnh các hệ số của bộ lọc IIR thích nghi khó hơn
- Hàm sai số của bộ lọc IIR thích nghi thường có nhiều điểm cực tiểu địa
phương.


25

2.1.3. Cấu trúc của bộ lọc số thích nghi
Mỗi bộ lọc thích nghi bao gồm một hoặc nhiều tín hiệu đầu vào và một
tín hiệu đáp ứng mong muốn (có thể được truy cập vào bộ lọc thích nghi hoặc
không). Cấu trúc chung của các bộ lọc thích nghi bao gồm ba Module như mô
tả trong Hình 2.7.
Tín hiệu
vào

Tín hiệu
ra

Cấu trúc lọc

Thuật toán

thích nghi

Đánh giá hiệu
suất

Hình 2.7: Cấu trúc cơ bản của bộ lọc thích nghi
- Cấu trúc lọc: Cấu trúc bộ lọc định rõ cách tín hiệu đầu ra của bộ lọc
được tính toán từ tín hiệu đầu vào. Nó có thể là một cấu trúc tuyến tính hoặc
phi tuyến. Module này được xây dựng trên cơ sở các kỹ thuật thiết kế bộ lọc
số có sẵn. Nó có thể là một bộ lọc số có đáp ứng xung hữu hạn (FIR) hoặc
một bộ lọc số có đáp ứng xung vô hạn (IIR). Bộ lọc FIR là một cấu trúc tuyến
tính, nó có thể được thực hiện với một cấu trúc trực tiếp hoặc cấu trúc lưới.
Cấu trúc được cố định khi thiết kế và các tham số của nó được điều chỉnh
bằng các thuật toán thích nghi. Bộ lọc thích nghi sử dụng bộ lọc FIR là một
thiết kế dễ thực hiện với cấu trúc ngang.
- Đánh giá hiệu suất: Module này xử lý đáp ứng mong muốn (nếu có) và
đầu ra của bộ lọc thích nghi bằng các tiêu chí về hiệu suất để đánh giá chất
lượng của nó đối với các yêu cầu của một ứng dụng cụ thể. Các tiêu chí này là
cơ sở để lựa chọn thuật toán thích nghi.
- Thuật toán thích nghi: Thuật toán thích nghi mô tả cách các tham số
của bộ lọc được thay đổi từ thời điểm hiện tại đến thời điểm kế tiếp. Thuật


×