Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

Trang 21

Chương 4. CÁC B L C KHÔI PHỤC NH (Filter Restoration)

4.1. L C KHÔNG GIAN (only-spatial filtering)

g ( x, y ) = f ( x, y ) + η ( x, y ) (4.3-1)

G (u, v) = F (u , v) + N (u, v) (4.3-2)
g ( x, y ) , G (u , v ) là nh có nhiễu và biến đổi Fourier c a nó

f ( x, y ) , F (u , v ) là nh góc và biến đổi Fourier c a nó

η ( x, y ) , N (u , v ) là nhiễu và biến đổi Fourier c a nó


Lọc không gian được dùng khi mà chỉ có nhiễu ngẫu nhiên thích nghi (additive
random noise) xuất hiện.

4.2. CÁC B L C TRUNG BÌNH (mean filters)

4.2.1. B l c trung bình s h c (arithmetic mean filter)

Đây là d ng đơn gi n nhất c a các bộ lọc trung bình. Đặt S xy biểu diễn cho hệ tọa

độ (set of coordinates) trong một cửa sổ nh phụ hình chữ nhật (rectangular subimage
window) có kích thước m × n , tâm t i điểm ( x, y ) . Lọc trung bình số học tính toán giá trị

trung bình c a nh bị nhiễu g ( x, y ) trong miền S ( x, y ) . Giá trị c a nh khôi phục fˆ bất
kỳ điểm ( x, y ) nào được tính toán trị trung bình số học bằng cách sử dụng các pixel trong
miền S ( x, y ) :

fˆ ( x, y ) = ∑ g ( s, t )
1
(4.3-3)
mn s ,t∈S xy

Lọc trung bình làm trơn (smooth) những thay đổi cục bộ (local variantions) trong
nh và gi m nhiễu.

4.2.2. B l c trung bình hình h c (geometric mean filter)

⎡ ⎤ mn
fˆ ( x, y ) = ⎢ ∏ g ( s, t ) ⎥
1

⎢⎣ s ,t∈S xy ⎥⎦
(4.3-4)
Trang 22
đây, mỗi pixel được khôi phục (restored pixel) được cho b i tích (product) c a
1
các pixel trong cửa sổ nh phụ, bậc (power) . Lọc trung bình hình học làm trơn nh
mn
như bộ lọc trung bình số học, nhưng ít mất chi tiết nh.

4.2.3. B l c trung bình đi u hòa (harmonic mean filter)

Toán tử c a bộ lọc trung bình điều hòa được cho b i biểu th c:

fˆ ( x, y ) =

mn
(4.3-4)
1
( s , t )∈S xy g ( s, t )

Bộ lọc trung bình điều hòa làm việc tốt với nhiễu muối (salt noise), nhưng không
tốt được cho nhiễu tiêu (pepper noise). Nó cũng làm việc tốt cho các lo i nhiễu khác như
nhiễu Gauss.

4.2.4. B l c trung bình không tu n hoàn (contraharmonic mean filter)

∑ g ( s, t )
Bộ lọc trung bình không tuần hoàn dựa trên biểu th c:
Q +1

∑ g ( s, t )
fˆ ( x, y ) =
( s , t )∈S xy
Q
(4.3-6)
( s , t )∈S xy

Trong đó Q là bậc c a bộ lọc. Bộ lọc này thích hợp để làm gi m (reducing) hoặc
khử (eliminating) các nh hư ng c a nhiễu muối tiêu. Đối với các giá trị Q dương, bộ lọc
khử nhiễu tiêu. Đối với giá trị Q âm khử nhiễu muối. Nó không thể đồng th i khử c hai
lo i nhiễu.
Bộ lọc trung bình số học và hình học thì thích hợp cho nhiễu ngẫu nhiên như nhiễu
Gauss hay nhiễu phân bố đều. Bộ lọc không tuần hoàn thì thích hợp cho nhiễu xung,
nhưng nó có nhược điểm là ph i biết nhiễu là tối hay sáng để chọn dấu thích hợp cho Q.
Kết qu c a việc chọn sai dấu cho Q có thể là th m h i.
Sau đây là một vài bộ lọc để lo i trừ những thiếu sót này.

4.3. B L C TRUNG BÌNH (median filter)

Bộ lọc bậc thống kê nổi tiếng là bộ lọc trung bình, thay thế giá trị c a một pixel b i
trung bình c a các m c sáng trong các pixel lân cận (neighborhood).
fˆ ( x, y ) = median { g ( s, t )}
Trang 23
(4.3-7)
( s ,t )∈S xy

Giá trị c a pixel t i ( x, y ) được đưa vào tính toán trung bình. Các bộ lọc trung bình

thì khá phổ biến. Kh năng gi m nhiễu tốt, ít làm nhòe nh so với các bộ lọc trơn tuyến
tính (linear smoothing filters) có kích thước tương tự. Các bộ lọc trung bình hiệu qu đặc
biệt với sự có mặt c a c hai nhiễu xung lưỡng cực và đơn cực (bipolar and unipolar
impulse noise).

4.4. B L C MAX VÀ MIN (max and min filter)

Mặc dù bộ lọc trung bình thì hơn hẳn bộ lọc bậc thống kê được sử dụng hầu hết
trong xử lý nh (image processing). Không có nghĩa nó là số một. Chúng ta biết rằng từ
“thống kê” cơ b n việc sắp xếp vay mượn chính b n thân nó quá nhiều kh năng sắp xếp
khác nhau.

Hình 4.4. Các kết qu lựa chọn Q trong lọc không tuần hoàn. (a) kết qu lọc với
một bộ lọc không tuần hoàn kích thước 3×3 và Q=-1.5. (b) kết qu lọc với Q=1.5
Nếu sử dụng phân vị th 100, dẫn đến kết qu được gọi là bộ lọc max:
fˆ ( x, y ) = max {g ( s, t )} (4.3-8)
( s , t )∈S xy

Bộ lọc này tốt cho việc tìm kiếm điểm sáng nhất (brightest point) trong một nh.
Cũng như vậy, vì nhiễu tiêu có giá trị rất nhỏ nên làm gi m nhiễu tiêu bằng bộ lọc min:
(sử dụng phân vị th 0)
fˆ ( x, y ) = min {g ( s, t )} (4.3-9)
( s , t )∈S xy

Bộ lọc này tốt cho việc tìm điểm đen nhất (darkest point) trong nh. Cũng như vậy,
nó làm gi m nhiễu muối.
Trang 24
4.5. B L C ĐI M GIỮA (midpoint filter)

Bộ lọc điểm giữa tính toán đơn gi n điểm giữa giữa các giá trị max và min trong
vùng được bao quanh b i bộ lọc:

fˆ ( x, y ) = ( max { g ( s, t )} + min { g ( s, t )})


1
(4.3-10)
2 ( s ,t )∈S xy ( s ,t )∈S xy

Lưu ý rằng bộ lọc này kết hợp (combine) bậc thống kê và trung bình. Bộ lọc này
làm việc tốt nhất cho nhiễu phân bố ngẫu nhiên (randomly distributed noise), như nhiễu
Gaussian và nhiễu phân bố đều.

4.6. SUY GI M NHIỄU CÓ TÍNH TU N HOÀN B NG B L C MI N T N S


(periodic noise reduction by frequency domain filtering)

Trong phần này, chúng ta tập trung vào những bộ lọc thông d i, chắn d i để lọc và
lo i bỏ nhiễu chu kỳ.

Hình 4.6. Đồ thị c a bộ lọc chắn d i phối hợp lý tư ng (a), Butterworth (b) và
Gauss (c)

4.6.1. Các b l c ch n d i (bandreject filters)

Bộ lọc chắn d i sẽ lo i bỏ hoặc làm suy hao tín hiệu trong 1 d i tần trong phép biến
đổi Fourier. Một bộ lọc chắn d i lý tư ng được cho b i biểu th c sau:

≤ D ( u , v ) ≤ D0 +

D0 −
H ( u, v ) = ⎨
⎪0
W W

⎪⎩1
2 2 (4.4-1)
otherwise

Trong đó, D ( u , v ) là kho ng cách từ tần số trung tâm, W là độ rộng băng thông và

D0 là bán kính.
Tương tự, một bộ lọc chắn d i Butterworth bậc n được cho b i biểu th c sau:
Trang 25

H ( u, v ) =
⎡ D ( u, v )W ⎤
1
(4.4-2)
1+ ⎢ 2 2⎥
⎣ D ( u , v ) − D0 ⎦
2n

Và một bộ lọc chắn d i Gauss được cho b i biểu th c sau


⎡ D 2 ( u ,v ) − D02 ⎤

H ( u, v ) = 1 − e
−⎢
2


⎢⎣ D ( u ,v )W ⎥⎦
(4.4-3)

ng dụng c a bộ lọc chắn d i là lo i bỏ nhiễu trong các trư ng hợp mà sự phân bố


các thành phần nhiễu trong miền tần số có thể tính toán được. Ví dụ, một nh bị nhiễu có
tính chu kỳ (additive periodic noise), sẽ được tính xấp xỉ bằng hàm sin 2 chiều. Dễ nhận
thấy, biến đổi Fourier (fourier transform) c a một sóng sin sẽ bao gồm 2 xung là nh ph n
x (mirror image) c a nhau qua điểm gốc (origin) c a phép biến đổi Fourier. C 2 xung
này đều là xung o (imaginary) và là liên hợp ph c (complex conjugate) với nhau, phần
thực trong phép biến đổi Fourier đối với sóng sin là zero.

Hình 4.6.1. nh bị nhiễu b i nhiễu sin (a) và phổ c a nó (b); Bộ lọc chắn d i
Butterworth (c); nh sau khi được lọc (d)
Trang 26
4.6.2. Các b l c thông d i (bandpass filters)

Bộ lọc thông d i có ho t động (perform) ngược l i (opposite) với bộ lọc chắn d i.


Hàm chuyển đổi H bp (u, v ) trong bộ lọc thông d i có thể tìm được thông qua hàm

H br (u, v ) :

H bp ( u , v ) = 1 − H br ( u , v ) (4.4-4)

Hình 4.6.2. Biểu đồ nhiễu c a nh tìm được bằng bộ lọc thông d i


Sử dụng bộ lọc thông d i phẳng trong một nh không ph i biện pháp duy nhất, vì
nó lo i bỏ (remove) quá nhiều chi tiết nh (image detail). Tuy nhiên, bộ lọc thông d i khá
hữu dụng trong việc phân tích nh hư ng c a việc chọn băng tần lên một nh. Nói cách
khác, bộ lọc thông d i giúp ích cho việc phân tích biểu đồ nhiễu (noise pattern). Đó là kết
qu hữu ích vì nó làm đơn gi n hóa việc phân tích nhiễu.

4.6.3. B l c Notch (notch filters)

Một bộ lọc Notch chắn (hoặc cho qua) những tần số lân cận (neighborhood) tần số
trung tâm (center frequency) cho trước. Ngược l i với biến đổi Fourier, bộ lọc Notch ph i
xuất hiện trong những cặp đối x ng để t o ra một kết qu đúng. Mặc dù ta thấy có minh
họa một cặp bộ lọc Notch nhưng số cặp bộ lọc Notch có thể được lắp đặt (implemented)
tùy ý (abitrary). Hình d ng c a Notch có thể tùy chọn (abitrary), ví dụ như hình chữ nhật.
Hàm chuyển đổi (transfer function) c a một bộ lọc chắn d i Notch lý tư ng (ideal)
với bán kính Do, t i tâm (uo, ro) và điểm đối x ng (-uo, -ro) là:
⎧⎪0 D1 ( u, v ) ≤ D0 D2 ( u, v ) ≤ D0
H ( u, v ) = ⎨
or
⎪⎩1
(4.4-5)
otherwise

trong đó:
Trang 27

D1 ( u , v ) = ⎡( u − M / 2 − u0 ) + ( v − N / 2 − v0 ) ⎤
⎣ ⎦
2 2 1/ 2
(4.4-6)

D2 ( u , v ) = ⎡( u − M / 2 + u0 ) + ( v − N / 2 + v0 ) ⎤
⎣ ⎦
2 2 1/ 2
Và: (4.4-7)

Hình 4.6.3. Biểu đồ minh họa c a bộ lọc notch (thông d i):


(a) Lý tư ng, (b) Butterworth (bậc 2), và (c) Gauss.
Thông thư ng, gi thiết tâm c a hình chữ nhật tần số được di chuyển đến điểm
(M/2, N/2), dựa theo phương th c lọc. Do đó, các giá trị (u0, v0) được bù (respect) tới tâm
được di chuyển.
Hàm biến đổi c a bộ lọc Notch thông d i Butterworth bậc n được xác định b i
công th c:

H ( u, v ) =
1
⎡ ⎤
(4.4-8)
1+ ⎢
⎣ D1 ( u, v ) D2 ( u, v ) ⎦

n
D02

Trong đó: D1(u,v) và D2(u,v) được cho b i công th c (4.4-6) và (4.4-7), tiếp theo
hàm biến đổi c a bộ lọc Notch thông d i Gauss bậc n được xác định b i công th c:
1 ⎡ D ( u ,v ) D2 ( u ,v ) ⎤

H ( u, v ) = 1 − e
− ⎢ 1 ⎥
2 ⎣⎢ D02 ⎦⎥
(4.4-9)

Điều thú vị là ba bộ lọc này sẽ tr thành bộ lọc thông cao (highpass filter) nếu u0 =
v0 = 0.
Như đã trình bày trong phần trước c a bộ lọc thông d i, chúng ta có thể tìm được
bộ lọc Notch cho qua (pass) hơn là chặn (suppress) các tần số nằm trong các miền. Từ đó
Trang 28
các bộ lọc này thực hiện chính xác hàm ngược (opposite function) như bộ lọc Notch chặn
d i được cho trong công th c (4.4-5), (4.4-8) và (4.4-9), hàm chuyển đổi c a chúng là:
H np ( u , v ) = 1 − H nr ( u , v ) (4.4-10)

Trong đó: Hnp(u, v) là hàm chuyển đổi c a bộ lọc Notch thông d i, tương ng với
bộ lọc Notch chặn d i là hàm chuyển đổi Hnr(u, v).

4.6.4. B l c notch t i ưu (optimum notch filtering)

Rõ ràng việc xác định các d ng nhiễu (interference pattern) là không phổ biến. Các
nh lấy từ các bộ quét quang điện, như là những nh được sử dụng trên không (aerial) và
không gian (space), đôi khi bị lỗi (corrupted) do việc ghép (coupling) và phóng đ i
(amplification) các tín hiệu m c thấp (low-level signal) trong m ch điện tử c a các máy
quét (scanner’ electronic circuitry) .
Một ví dụ về việc suy gi m nh tuần hoàn được biểu diễn trong Hình 4.6.4(a), trình
bày một nh kỹ thuật số c a b n đồ địa hình Martian (Martian terrain) được lấy b i vệ
tinh Mariner 6 (Mariner 6 spacecraft). D ng này tinh vi và do đó khó phát hiện hơn trong
mặt phẳng tần số (frequency plane). Hình 4.6.4(b) biểu diễn phổ Fourier c a nh này. Các
thành phần nh hình sao (startlike components) được t o ra b i nhiễu, và một số phần c a
các thành phần này cho biết d ng này chỉ ch a được nhiều hơn một thành phần hình sin
(sinusoidal component).

Hình 4.6.4. (a) nh c a b n đồ địa hình Martian được lấy từ Mariner 6.


(b) Phổ Fourier biểu diễn sự nhiễu tuần hoàn.(Được sự cho phép c a
NASA.)
Khi một số thành phần nhiễu được trình bày trên, các phương pháp được th o
luận trong các phần trước không ph i lúc nào cũng luôn luôn được chấp nhận b i vì
Trang 29
chúng có thể bỏ (remove) quá nhiều các thông tin c a nh trong quá trình lọc (đặc biệt khi
các nh là duy nhất và/hay đắt tiền (expensive) để có được). Thêm vào đó, các thành phần
nhiễu thư ng không ph i là khối tín hiệu đơn tần (single-frequency burst). Thay vào đó,
chúng có các viền rộng (broad skirts) mà đem l i thông tin về d ng nhiễu. Các viền này
không ph i luôn luôn được phát hiện (detectable) dễ dàng từ số liệu cơ b n biến đổi bình
thư ng. Các phương pháp lọc khác làm gi m hiệu ng c a các nhược điểm này l i ít hữu
dụng trong nhiều ng dụng. Phương pháp được đề cập đây là tối ưu, trong khi tối thiểu
hóa sai phương cục bộ (local variance) c a việc dự đoán phục hồi (restored estimate)
f ( x , y) .

Quy trình bao gồm, đầu tiên tách (isolating) các thành phần cơ b n (principal
contribution) c a d ng nhiễu và sau đó khử (subtracting) biến, phần trọng số (weighted
portion) c a nh bị lỗi. Mặc dù ta phát triển quy trình này trong một ng dụng cụ thể,
phương pháp cơ b n này khá phổ biến và có thể ng dụng cho những việc phục hồi
(restoration task) khác, trong đó nhiễu tuần hoàn đa chu kỳ (multiple periodic
interference) là một vấn đề quan tâm.
Bước đầu tiên là tách (extract) các thành phần tần số cơ b n (principle frequency)
c a nhiễu. Điều này có thể thực hiện bằng cách đặt (placing) bộ lọc Notch thông d i,
H(u,v), t i vị trí c a mỗi v ch cộng hư ng (spike). Nếu H(u,v) được xây dựng chỉ để cho
qua các thành phần liên quan (associate) với d ng nhiễu, biến đổi Fourier c a d ng nhiễu
được cho b i biểu th c:
N ( u, v ) = H ( u, v ) G ( u, v ) (4.4-11)

Trong đó, G(u,v) biểu diễn biến đổi Fourier c a nh bị lỗi.


Biểu th c c a H(u,v) yêu cầu đánh giá về cái gì ph i hay không ph i là xung nhiễu.
Với lý do này, bộ lọc Notch thông d i thư ng xây dựng tính tương tác (interactivity) bằng
cách quan sát (observing) phổ (spectrum) c a G(u,v) trên màn hình. Sau đó một bộ lọc cụ
thể sẽ được chọn, d ng tương ng trong miền không gian thu được từ biểu th c:
η ( x, y ) = ℑ−1 { H ( u, v ) G ( u, v )} (4.4-12)

B i vì nh bị lỗi được gi thiết được thành lập bằng việc cộng (addition) nh
không bị lỗi (uncorrupted) f (x, y ) và nhiễu η ( x, y ) trừ đi d ng g (x, y ) để thu được f (x, y )
Trang 30
sẽ là một vấn đề đơn gi n. Tất nhiên, vấn đề là quá trình lọc này thư ng chỉ xấp xỉ d ng
nh hư ng c a các thành phần này không trình bày trong ước lượng (estimate) c a
η ( x, y ) có thể được cực tiểu hóa (minimized) thay cho việc trừ g ( x, y ) phần trọng số c a
thực.

η ( x, y ) để thu được ước lượng c a f ( x, y ) :

f ( x, y ) = g ( x, y ) − ω ( x, y )η ( x, y )

(4.4-13)

Trong đó, f ( x, y ) là ước lượng c a f (x, y ) và ω ( x, y ) . Hàm ω ( x, y ) được gọi là


hàm trọng số hay hàm điều biến (weighting or modulation function), và mục tiêu c a quá
trình này là chọn hàm này để kết qu được tối ưu hóa trong một số phương pháp.

Một phương pháp là chọn ω ( x, y ) sao cho số bậc c a ước lượng f ( x, y ) là cực tiểu

trên miền lân cận cụ thể c a mỗi điểm (x, y).


Xét miền lân cận c a kho ng (a + 1) và (2b + 1) đối với điểm (x,y). Phương sai
“địa phương” (“local” varicance) c a f̂ ( x , y) t i tọa độ (x,y) có thể ước lượng từ các mẫu
như sau:

∑ ∑
⎡∧ ⎤
σ ( x, y ) = ( ) f ( x, y ) ⎥

+ + −
( 2a + 1)( 2b + 1) s =− a t =−b ⎣

2
a b
1

2
f x s , y t (4.4-14)

trong đó f̂ ( x, y) là giá trị trung bình c a f̂ trong miền lân cận.

( 2a + 1)( 2b + 1) ∑ ∑
f ( x, y ) = f ( x + s, y + t )
∧ 1 a b ∧
(4.4-15)
s =− a t =− b

Những điểm trên hoặc gần góc c a nh có thể xử lý bằng cách xét các miền lân
cận không gian.

{ }
Chuyển đổi công th c (4.4-13) thành hiệu suất c a công th c (4.4-14)

( 2a +1)( 2b +1) s∑∑


σ 2 ( x, y) = ⎡⎣g ( x + s, y +t ) −ω( x + s, y +t )η ( x + s, y +t )⎤⎦ − ⎡g ( x, y) −ω( x, y)η ( x, y)⎤
⎣ ⎦
a b 2
1
(4.4-
=−a t =−b

16)
Gi thiết rằng ω( x , y) giữ nguyên hằng số ngoài miền lân cận lấy xấp xỉ
ω ( x + s , y + t ) ≈ ω ( x, y ) (4.4-17)

Với − a ≤ s ≤ a và − b ≤ t ≤ b . Gi thiết này cũng cho kết qu trong biểu th c


Trang 31
ω ( x, y )η ( x, y ) = ω ( x, y )η ( x, y ) (4.4-18)

{ }
Trong miền lân cận. Với những giá trị xấp xỉ này, công th c (4.4-16) tr thành

σ 2 ( x, y) = ∑∑ ⎡g ( x + s, y +t ) −ω( x, y)η ( x + s, y +t )⎤⎦ − ⎡⎣g ( x, y) −ω( x, y)η ( x, y)⎤⎦


( 2a +1)( 2b +1) s=−a t=−b ⎣
a b
1 2
(4.4-19)

Để cực tiểu σ 2 ( x , y) , chúng ta lấy:


∂σ 2 ( x, y )
=0
∂ω ( x, y )
(4.4-20)

với ω( x , y) . Kết qu là:

g ( x , y )η ( x , y ) − g ( x , y )η ( x , y )
ω ( x, y ) =
η 2 ( x, y ) − η ( x, y )
2
(4.4-21)

Để thu được hình nh được phục hồi, chúng ta tính ω( x, y) từ công th c (4.4-21)
và sau đó sử dụng công th c (4.4-13). ω( x, y) được gi thiết là hằng số trong miền lân
cận, việc tính toán hàm này đối với mỗi giá trị x và y trong hình là không cần thiết. Thay
vào đó, ω( x , y) được tính cho một điểm trong mỗi miền lân cận không ph nhau (tốt nhất
là điểm giữa) và sau đó được sử dụng để xử lý tất c các điểm nh ch a trong miền lân
cận đó.

You might also like