Nhận xét về bộ lọc trung bình.● Bộ lọc trung bình số học làm mịn các sai khác địa phương bên trong ảnh, do đó nó bản chất là một bộ lọc thông thấp.. Chú ý: Hiệu ứng nhoè, làm giảm các ch
Trang 1BỘ MÔN KHOA HỌC MÁY TÍNH
NHẬP MÔN XỬ LÝ ẢNH
Chương 5:
Các phương pháp lọc không gian
Biên soạn: Dr Ngo Huu Phuc
Trang 2Nội dung
Lọc không gian thông thường được thực hiện
để khử nhiễu hoặc thực hiện một số kiểu nâng cao chất lượng ảnh.
Các thao tác này được gọi là lọc không gian để phân biệt chúng với lọc tần số.
Có ba kiểu lọc được trình bày ở đây là:
– Lọc trung bình (lọc tuyến tính)
– Lọc trung vị (lọc phi tuyến)
– Lọc nâng cao
Trang 3Lọc trung bình
pixel địa phương.
thay thế pixel trung tâm bởi trung bình của các pixel trong cùng láng giềng đó
Trang 4Ví dụ về bộ lọc trung bình
Việc thay thế này được thực hiện bằng một mặt
nạ cuộn chẳng hạn như mặt nạ 3x3 sau đây:
9 / 1 9 / 1 9 / 1
9 / 1 9 / 1 9 / 1
Chú ý: các hệ số trong mặt nạ này có tổng bằng 1, nên độ sáng ảnh giữ nguyên, và các hệ số đều
dương nên nó có khuynh hướng làm nhoè ảnh
Trang 5Các bộ lọc trung bình.
Các bộ lọc trung bình có chức năng tìm một số dạng trung bình bên trong cửa sổ NxN
Bộ lọc cơ bản nhất trong số này là bộ lọc trung bình số học, tìm trung bình số học của các giá trị pixel trong cửa sổ, như sau:
∑
∈
=
W c r
c r
I
) , (
N
1Mean
Arithmetic
trong đó N2 = số pixel trong cửa sổ W cấp NxN
Trang 6Nhận xét về bộ lọc trung bình.
● Bộ lọc trung bình số học làm mịn các sai khác địa phương bên trong ảnh, do đó nó bản chất là một bộ lọc thông thấp
● Nó có thể được thực hiện với một mặt nạ cuộn trong đó tất cả
các hệ số đều bằng 1/N2 Bộ lọc này sẽ có khuynh hướng làm
nhoè ảnh trong khi làm giảm bớt hiệu ứng của nhiễu
● Có thể thấy rằng kích thước mặt nạ càng lớn, thì hiệu ứng nhoè càng rõ rệt
● Kiểu bộ lọc này làm việc tốt nhất với các loại nhiễu Gauss và
nhiễu phân bố đều
Chú ý: Hiệu ứng nhoè, làm giảm các chi tiết của ảnh, là không mong muốn, và có các bộ lọc trung bình khác đã được thiết kế để cực tiểu hoá các mất mát thông tin chi tiết này
Trang 7Bộ lọc đối điều hoà (contra-harmonic mean filter)
nhiễu trắng HOẶC đen, phụ thuộc vào bậc của bộ lọc R:
R
W c r
R
c r I
c r I
) , (
) , (
1
) , (
) ,
( Mean
Harmonic -
Contra
trong đó W là cửa sổ N x N đang xem xét.
Với các giá trị R âm, nó khử được nhiễu đen, trong khi với các giá trị R dương nó khử được nhiễu
Trang 8Bước lặp trung bình hình học
và duy trì được thông tin chi tiết tốt hơn bộ
lọc trung bình số học
1 )
∈
∏
=
Trang 9Bộ lọc trung bình điều hoà
làm việc tốt hơn đối với nhiễu trắng
∑
∈
=
W c
r I r c
N
) , (
2
) , (
1
Mean Harmonic
Bộ lọc này cũng làm việc được với nhiễu Gauss, duy trì được thông tin chi tiết tốt hơn bộ lọc trung bình số học
Trang 10Bộ lọc trung bình Yp
p
W c r
p
N
c r I
1
) ,
p
) ,
( Mean
Trang 11● Trong một số tài liệu còn gọi là lọc hình thái học.
● Về hình thái, phương pháp này gần giống với phương pháp làm
mờ ảnh (lọc trung bình)
● Khác với phương pháp lọc trung bình, phương pháp lọc trung vị (lọc phi tuyến) thường được dùng trước khi lấy biên
original median filtered
Trang 12Có thể thực hiện như sau:
1 Gọi I là 1 band mầu của ảnh
2 Gọi Z là vùng chứa các láng giềng
3 Với mỗi pixel trong ảnh, p = (r,c), trong ảnh…
4 … chọn n pixel trong tập các láng giềng Z của p,
5 … sắp xếp n pixel trong lân cận của p, theo giá trị,
thành danh sách L( j) với j = 1,…,n.
6 Giá trị kết quả tại vị trí p là L(m), với m = n/2+1
Lọc phi tuyến: định nghĩa tổng quát
Trang 13Lọc phi tuyến: định nghĩa tổng quát
sorted intensity values from
neighborhood
of p
131 133 133 136 140 143 147
152
154 157 160 162 163 164 165
Trang 14Phân tích nhiễu trong lấy cạnh
1
32 25
0
25 0 5 32
n n
n H
for
for
( ) unif ( 0 25 , 0 25)
5 32
n u n
H
Trang 15Lọc trung bình trong phân tích
h n
h
Trang 16Lọc trung bình trong phân tích
cạnh 1D
J(32-4:32+4)=
0.1920 0.3416 0.0464 0.0177 0.3062 1.3043 1.0079 1.0082 1.0950 J(33-4:33+4)=0.3416
0.0464 0.0177 0.3062 1.3043 1.0079 1.0082 1.0950 1.2935
0.5910
0.7134
mean
mean
Trang 17Lọc trung vị trong phân tích
Trang 18Lọc trung vị trong phân tích
cạnh 1D
J(32-4:32+4)=
0.1920 0.3416 0.0464 0.0177 0.3062 1.3043 1.0079 1.0082 1.0950
0.0177 0.0464 0.1920 0.3062 0.3416 1.0079 1.0082 1.0950 1.3043 J(33-4:33+4)=0.3416
0.0464 0.0177 0.3062 1.3043 1.0079 1.0082 1.0950 1.2935
0.0177 0.0464 0.3062 0.3416 1.0079 1.0082 1.0950 1.2935 1.3043 sorted
sorted
median
median
Trang 19So sánh giữa lọc trung vị và trung bình
The median filter preserves the step edge better than the blurring filter.
Trang 20So sánh giữa lọc trung vị và trung bình
median
blurred
The median filter preserves the step edge better than the blurring filter.
The median filter preserves the step edge better than the blurring filter.
step
Trang 21median
The median filter preserves the step edge better than the blurring filter.
The median filter preserves the step edge better than the blurring filter.
step
So sánh giữa lọc trung vị và trung bình
Trang 22Lọc trung vị cho ảnh nhị phân
ảnh gốcảnh có nhiễu
Trang 23Lọc trung vị ảnh gốcLọc trung vị cho ảnh nhị phân
Trang 24ảnh gốcảnh có nhiễu
Lọc trung vị cho ảnh đa cấp xám
Trang 25ảnh có nhiễuảnh có nhiễu
Lọc trung vị cho ảnh đa cấp xám
Trang 263x3-median x 13x3-blur x 1
Lọc trên ảnh đa cấp xám
Trang 273x3-median x 23x3-blur x 2
Lọc trên ảnh đa cấp xám
Trang 283x3-median x 33x3-blur x 3
Lọc trên ảnh đa cấp xám
Trang 293x3-median x 43x3-blur x 4
Lọc trên ảnh đa cấp xám
Trang 303x3-median x 53x3-blur x 5
Lọc trên ảnh đa cấp xám
Trang 313x3-median x 103x3-blur x 10
Lọc trên ảnh đa cấp xám
Trang 32ảnh có nhiễuảnh có nhiễu
Lọc trên ảnh đa cấp xám
Trang 33Giới hạn?
Nhận xét: nếu lặp việc lọc với cùng một bộ lọc (trung bình hay
trung vị), cuối cùng kết quả đầu ra sẽ không đổi Như vậy:
, times, and med med med med , times.
k k
Trang 343x3-median x 103x3-blur x 10
Giới hạn
Trang 35Giới hạn
3x3-median root3x3-blur x n→∞
Trang 36Thuật toán lọc median trong Matlab
function D = median_filt(I,SE,origy,origx) [R,C] = size(I); % assumes 1-band image [SER,SEC] = size(SE); % SE < 0 ⇒ not in nbhd
N = sum(sum(SE>=0)); % no of pixels in nbhd
A = -ones(R+SER-1,C+SEC-1,N); % accumulator n=1; % copy I into band n of A for nbhd pix n for j = 1 : SER % neighborhood is def’d in SE for i = 1 : SEC
if SE(j,i) >= 0 % then is a nbhd pixel A(j:(R+j-1),i:(C+i-1),n) = I;
n=n+1; % next accumulator band end
end end
% pixel-wise median across the bands of A
A = shiftdim(median(shiftdim(A,2)),1);
D = A( origy:(R+origy-1) , origx:(C+origx-1) );
function D = median_filt(I,SE,origy,origx) [R,C] = size(I); % assumes 1-band image
[SER,SEC] = size(SE); % SE < 0 ⇒ not in nbhd
N = sum(sum(SE>=0)); % no of pixels in nbhd
A = -ones(R+SER-1,C+SEC-1,N); % accumulator
n=1; % copy I into band n of A for nbhd pix n
for j = 1 : SER % neighborhood is def’d in SE
% pixel-wise median across the bands of A
A = shiftdim(median(shiftdim(A,2)),1);
D = A( origy:(R+origy-1) , origx:(C+origx-1) );
Trang 37Lọc trung vị theo vector
Lọc trung vị theo vector chọn
một vector trong tập các
vector một vector gần với tất
cả các vector khác
Như vậy, gọi S là tập các
vector trong không gian Fn
vector median, v, là
Trang 38Lọc trung vị theo mầu sắc
Nếu gọi Fn = R3 khi đó
vector median được coi là
lọc trung vị theo mầu
(a) ảnh gốc
(b) ảnh (a) với nhiễu thưa
(c) ảnh (b) được lọc trung vị mầu
(d) ảnh (c) được lọc trung vị mầu
Bộ lọc median có kích thước 3×3.
Trang 39Lọc trung vị theo mầu sắc
original 3×3 MF (3×3 MF) 2
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
Trang 40Lọc trung vị theo mầu sắc
original 3×3 MF (3×3 MF) 2
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
Trang 41Lọc trung vị theo mầu sắc
original 3×3 MF (3×3 MF) 2
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
Trang 42Lọc trung vị theo mầu sắc
original 3×3 MF (3×3 MF) 2
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
The output color at (r,c) is always selected from a nbhd of (r,c) in the input image.
Trang 43Color Median Filter
Trang 44Lọc trung vị theo mầu sắc
Trang 45Lọc trung vị theo mầu sắc
Trang 46Lọc trung vị theo mầu sắc
Absolute differences displayed as negatives
to enhance visibility
Absolute differences displayed as negatives
to enhance visibility
Trang 47Color median filter và Standard Median trên mỗi band
Lọc median color phải tính khoảng cách giữa các vector mầu của các điểm lân cận
CH: Tại sao không áp dụng việc tính median cho mỗi band mầu một cách độc
lập?
TL: Kết quả của phương pháp độc lập có thể tạo ra một pixel có mầu không
thuộc nhóm mầu trong ảnh Như vậy, kết quả đó không phải là median.
CH: Vậy đây có phải là vấn đề đáng lưu ý?
TL: Có thể, tùy thuộc vào ứng dụng Nếu ảnh sử dụng bảng LUT cho ảnh,
khi đó, sẽ tạo kết quả chưa đúng, hoặc tạo mầu sai.
Trang 48Color median filter và Standard Median trên mỗi band
Trang 49Color median filter và Standard Median trên mỗi band
Trang 50Color median filter và Standard Median trên mỗi band
Trang 51Color median filter và Standard Median trên mỗi band
Trang 52Color median filter và Standard Median trên mỗi band
original: 0.43
Fraction of pixels in
MF 2 noisy image identical to original:
0.14
Fraction of pixels in
MF 2 noisy image identical to MF 2
original: 0.28
Trang 53Lọc nâng cao.
● Các bộ lọc nâng cao được xét ở đây có các bộ lọc
kiểu laplacian-type và lọc sai phân (difference filter)
● Các kiểu bộ lọc này có khuynh hướng để đưa ra,
hoặc nâng cao các chi tiết trong ảnh Hai mặt nạ cuộn
sử dụng cho các bộ lọc kiểu laplacian là
0
1 - 5 1
0 1
0
2 - 5 2
1 2 - 1
Trang 54Lọc nâng cao (tiếp)
● Các bộ lọc kiểu laplacian sẽ nâng cao được các chi tiết đều theo mọi hướng
● Còn các bộ lọc sai phân sẽ nâng cao các chi tiết theo hướng xác định theo mặt nạ đã chọn
● Có 4 mặt nạ cuộn lọc sai phân, tương ứng với theo các hướng dọc, ngang và hướng theo hai đường chéo
0
0 1 0
0 1 0
0
1- 1 1
0 0
0
0 1 0
0 0
1
1
-
0 1 0
1 0
0