BÁO CÁO TIỂU LUẬN MÔN HỌC
XỬ LÝ ẢNH
*************************
Đề tài: Sử dụng các toán tử EROSION(phép co) và CLOSING để làm mảnh
biên.
Hướng giải quyết: Ta xử lý biên trên ảnh đen trắng với hai toán tử EROSION và
CLOSING. Trước tiên ta đi tìm hiểu về hai toán tử này.
I. Các phép toán nhị phân.
Ký hiệu chuẩn cho tập các thao tác nhị phân cơ bản
NOT
ac =
OR
bac
+=
AND
bac
•=
XOR
bababac
•+•=⊕=
SUB
bababac
•=−==
/
Ở đây mỗi thao tác sẽ được dựng cho từng điểm ảnh một.
a)
Ả
nh
a b)
Ả
nh
b
Not (b) ; Or(a,b) ; And(a,b)
Xor(a
,b)
;
Sub(a,b)
Phép
toán
SUB(*)
s
ẽ
r
ấ
t
h
ữ
u
ích
khi
ả
nh
a
th
ể
hi
ệ
n
vùng
quan
tâm
mà
chúng
ta
mu
ố
n
phân
tích
m
ộ
t
cách
h
ệ
th
ố
ng,
còn
ả
nh
b
th
ể
hi
ệ
n
các
đố
i
t
ượ
ng
đ
ã
đ
ượ
c
phân
tích
và
có
th
ể
lo
ạ
i
đ
i
kh
ỏ
i
vùng
đ
ó.
II. Phép toán morphology
Ta
đ
ã
đ
ị
nh
nghĩa
ả
nh
là
m
ộ
t
hàm
hai
bi
ế
n
th
ự
c,
a( x, y)
ho
ặ
c
m
ộ
t
m
ả
ng
các
giá
tr
ị
r
ờ
i
r
ạ
c
a
[
m, n
]
.
Chúng
ta
còn
có
m
ộ
t
đ
inh
nghĩa
khác
v
ề
ả
nh,
d
ự
a
trên
quan
sát
là
m
ỗ
i
ả
nh
có
th
ể
xem
nh
ư
là
m
ộ
t
t
ậ
p
h
ợ
p
các
t
ọ
a
độ
r
ờ
i
r
ạ
c
ho
ặ
c
liên
t
ụ
c.
Theo
m
ộ
t
nghĩa
nào
đ
ó,
t
ậ
p
h
ợ
p
này
t
ươ
ng
ứ
ng
v
ớ
i
các
đ
i
ể
m
ả
nh
thu
ộ
c
v
ề
các
đố
i
tu
ợ
ng
hi
ệ
n
h
ữ
u
trong
ả
nh.
Hình
trên
minh
h
ọ
a
ý
t
ưở
ng
này
b
ằ
ng
cách
cho
th
ấ
y
có
hai
đố
i
t
ượ
ng,
hay
hai
t
ậ
p
A
và
B
trong
ả
nh.
Ở
đ
ây
chúng
ta
c
ầ
n
ph
ả
i
xác
đ
ị
nh
r
ằ
ng
h
ệ
tr
ụ
c
t
ọ
a
độ
nh
ư
trong hình
v
ẽ
.
Trong
ph
ầ
n
này,
chúng
ta
ch
ỉ
c
ầ
n
quan
tâm
đ
ế
n
các
giá
tr
ị
đ
i
ể
m
ả
nh
nh
ị
phân
và
gi
ớ
i
h
ạ
n
không
gian
làm
vi
ệ
c
trên
không
gian
r
ờ
i
r
ạ
c
(
Z
2
)
.
Đ
ố
i
t
ượ
ng
A
g
ồ
m
nh
ữ
ng
đ
i
ể
m
α
có
cùng
tính
ch
ấ
t
sau:
Đ
ố
i
t
ượ
ng
A
=
{
α
propertya
(
α
)
=
TRUE
}
Ví
d
ụ
đố
i
t
ượ
ng
B
trong
hình
trên
g
ồ
m
các
đ
i
ể
m
ả
nh
ở
t
ọ
a
độ
{
[
0,0
]
,
[
1,0
]
,
[
0,1
]
}
. Ph
ầ
n
n
ề
n
c
ủ
a
A
đ
ượ
c
ký
hi
ệ
u
b
ở
i
(ph
ầ
n
bù
c
ủ
a
A),
s
ẽ
bao
g
ồ
m
các
đ
i
ể
m
ả
nh
không
thu
ộ
c
A:
Ph
ầ
n
n
ề
n
-
A
c
=
{ }
A∉
αα
|
Ta
th
ấ
y
là
n
ế
u
m
ộ
t
đố
i
t
ượ
ng
A
đ
ượ
c
đ
ị
nh
nghĩa
trên
m
ộ
t
lân
c
ậ
n
liên
thông
C
(C
=
4,
6
ho
ặ
c
8
)
thì
ph
ầ
n
n
ề
n
A
c
t
ươ
ng
ứ
ng
s
ẽ
có
tính
liên
thông
cho
b
ở
i
12-C;
1.
Các định nghĩa cơ bản
Các
phép
toán
c
ơ
b
ả
n
ứ
ng
v
ớ
i
m
ộ
t
đố
i
t
ượ
ng
chính
là
t
ậ
p
các
phép
toán
t
ậ
p h
ợ
p
chu
ẩ
n
bao
g
ồ
m
phép
h
ộ
i,
phép
giao,
phép
l
ấ
y
bù
{
∪
,
∩
, c
}
và
phép
t
ị
nh
ti
ế
n:
P hép
t
ị
nh
ti
ế
n
–
Cho
tr
ướ
c
m
ộ
t
vector
x
và
m
ộ
t
t
ậ
p
h
ợ
p
A,
phép
t
ị
nh
ti
ế
n
A
+
x
đ
ượ
c
đ
ị
nh
nghĩa
nh
ư
sau:
A
+
x
=
{
α
+
x
α
∈
A
}
Chú
ý
r
ằ
ng
nh
ữ
ng
ph
ầ
n
t
ử
riêng
l
ẻ
h
ợ
p
thành
B
không
ch
ỉ
có
các
đ
i
ể
m
ả
nh
mà
còn
có
c
ả
nh
ữ
ng
vector
khi
chúng
có
v
ị
trí
t
ọ
a
độ
xác
đ
ị
nh
so
v
ớ
i
đ
i
ể
m
g
ố
c
[
0,0
]
.
Cho
hai
t
ậ
p
h
ợ
p
A
và
B,
chúng
ta
có:
P hép
c
ộ
ng
M
ink o
w ski
(addition)
P hép
tr
ừ
M
ink o
w ski
(subtraction)
B
BABA
∈
+=⊕
β
)(
B
BABA
∈
+=Θ
β
)(
2. Phép phát triển và phép bào mòn (Dilation and Erosion)
T
ừ
hai
phép
toán
Minkowski
v
ừ
a
đ
ị
nh
nghĩa
ở
trên,
chúng
ta
có
th
ể
đ
ị
nh
nghĩa
hai
phép
toán
morphology
c
ơ
b
ả
n
là
phép
phát
tri
ể
n
và
phép
bào
mòn:
Phép
phát
tri
ể
n
(dilation
)
B
BABABAD
∈
+=+=
β
)(),(
Phép
bào
mòn
(erosion)
B
BABABAE
∈
−=−=
β
)(
~
),(
Trong
đ
ó
M
ặ
c
dù
c
ả
A
hay
B
đ
ề
u
có
th
ể
đ
ượ
c
xem
là
“
ả
nh”
nh
ư
ng
thông
th
ườ
ng
A
đ
ượ
c
xem
là
ả
nh,
còn
B
đ
ượ
c
xem
là
ph
ầ
n
t
ử
c
ấ
u
trúc.
Trong
lý
thuy
ế
t
toán
h
ọ
c
v
ề
Morphology,
ph
ầ
n
t
ử
c
ấ
u
trúc
có
vai
trò
t
ươ
ng
t
ự
nh
ư
khái
ni
ệ
m
nhân
ch
ậ
p
trong
lý
thuy
ế
t
v
ề
các
b
ộ
l
ọ
c
tuy
ế
n
tính.
M
ộ
t
cách
t
ổ
ng
quát
thì
phép
phát
tri
ể
n
làm
cho
các
đố
i
t
ượ
ng
gia
t
ă
ng
kích
th
ướ
c,
còn
phép
bào
mòn
s
ẽ
làm
cho
chúng
co
l
ạ
i.
S
ự
gia
t
ă
ng
co
l
ạ
i
nhi
ề
u
hay
ít,
gia
t
ă
ng
ho
ặ
c
co
l
ạ
i
theo
cách
th
ứ
c
nào
c
ủ
a
các
đố
i
t
ượ
ng
đ
ề
u
ph
ụ
thu
ộ
c
vào
cách
l
ự
a
ch
ọ
n
ph
ầ
n
t
ử
c
ấ
u
trúc.
Hai
ph
ầ
n
t
ử
c
ấ
u
trúc
thông
d
ụ
ng
nh
ấ
t
(s
ử
d
ụ
ng
h
ệ
t
ọ
a
độ
Đ
ề
-các)
là
các
t
ậ
p
liên
thông
4
và
8,
th
ườ
ng
đ
ượ
c
ký
hi
ệ
u
là
N
4
và N
8
.
V
ớ
i
A
là
m
ộ
t
đố
i
t
ượ
ng
và
A
c
là
ph
ầ
n
n
ề
n
c
ủ
a
nó,
tính
ch
ấ
t
trên
cho
th
ấ
y
phép
phát
tri
ể
n
m
ộ
t
đố
i
t
ượ
ng
t
ươ
ng
đ
ươ
ng
v
ớ
i
phép
bào
mòn
ph
ầ
n
n
ề
n
c
ủ
a
nó.
T
ươ
ng
t
ự
nh
ư
v
ậ
y,
phép
bào
mòn
m
ộ
t
đố
i
t
ượ
ng
t
ươ
ng
đ
ươ
ng
v
ớ
i
phép
phát
tri
ể
n
ph
ầ
n
n
ề
n c
ủ
a
nó.
Th
ự
c
hi
ệ
n
các
thu
ậ
t
toán
phát
tri
ể
n
và
bào
mòn
đ
ơ
n
gi
ả
n
nh
ấ
t
th
ườ
ng
đ
ượ
c mô
t
ả
nh
ư
sau:
Phép
phát
tri
ể
n:
Ứ
ng
v
ớ
i
m
ỗ
i
đ
i
ể
m
ả
nh
thu
ộ
c
đố
i
t
ượ
ng
(có
giá
tr
ị
”1”)
thay
đổ
i
giá
tr
ị
c
ủ
a
t
ấ
t
c
ả
các
đ
i
ể
m
ả
nh
n
ề
n
(có
giá
tr
ị
”0”)
thu
ộ
c
liên
thông
C
c
ủ
a
nó
sang
giá
tr
ị
“1”.
Phép
bào
mòn:
Ứ
ng
v
ớ
i
m
ỗ
i
đ
i
ể
m
ả
nh
n
ề
n
(có
giá
tr
ị
“0”),
thay
đổ
i
giá
tr
ị
c
ủ
a
t
ấ
t
c
ả
các
đ
i
ể
m
ả
nh
thu
ộ
c
đố
i
t
ượ
ng
(có
giá
tr
ị
“1”)
thu
ộ
c
liên
thông
C
c
ủ
a
nó
sang giá
tr
ị
“0”.
3. Phép
m
ở
và
phép
đóng (Opening and Closing)
Chúng
ta
c
ó
t
h
ể
k
ế
t
h
ợ
p
ph
é
p
phá
t
t
r
i
ể
n
v
à
ph
é
p
bào
mòn
đ
ể
t
ạ
o
t
h
à
nh
các
ph
é
p
t
o
á
n
c
ó
m
ứ
c
độ
qu
a
n
t
r
ọ
ng
ca
o
h
ơ
n
:
P
h
é
p
m
ở
: O(A,B)
=
A
o
B
=
D(
E
(A,B),B)
P
h
é
p
đ
óng:
C(A,B)
=
A
•
B
=E
(D(A,-B),-B)
C
ác
ph
é
p
m
ở
v
à
đ
óng
c
ó
các
tí
nh
c
h
ấ
t
s
a
u
:
Tí
nh
đố
i
ng
ẫ
u
:
C
c
(A,B)
=
O(A
C
,
B)
O
c
(A,B)
=
C(A
c
,
B)
O(A
+
x,
B)
=
O(A,
B)
+
x
Tí
nh
t
ị
nh
ti
ế
n
:
C(A
+
x,
B)
=
C(A,
B)
+
x
V
ớ
i
ph
é
p
t
oán
m
ở
t
hông
qu
a
ph
ầ
n
t
ử
c
ấ
u
t
rú
c
B
v
à
các
ả
nh
A,
A
1
,
A
2
,
t
rong
đ
ó
A
1
là
ả
nh
c
ủ
a
A
2
(A
1
⊆
A
2
),
c
húng
ta
c
ó
các
tí
nh
c
h
ấ
t
s
a
u
:
T
í
nh
ph
ả
n
m
ở
r
ộ
ng -
O
(
A, B
)
⊆
A
T
í
nh
đ
ơ
n
đ
i
ệ
u
t
ă
ng
-
O
(
A
1
, B
)
⊆
O
(
A
2
, B
)
T
í
nh
d
ừ
ng
-
O
(
O
(
A, B
)
, B
)
=
O
(
A,
B
)
(*)
V
ớ
i
ph
é
p
t
o
á
n
đ
óng
t
hông
qu
a
ph
ầ
n
t
ử
c
ó
c
ấ
u
t
rú
c
B
v
à
các
ả
nh
A,
A
1
,
A
2
,
t
rong
đ
ó
A
1
là
ả
nh
c
ủ
a
A
2
(
A
1
⊆
A
2
)
,
c
húng
ta
c
ó
:
T
í
nh
m
ở
r
ộ
ng -
A
⊆
(
A, B
)
T
í
nh
đ
ơ
n
đ
i
ệ
u
t
ă
ng
-
C
(
A
1
, B
)
⊆
(
A
2
, B
)
T
í
nh
d
ừ
ng -
C
(
C
(
A, B
)
, B
)
=
C
(
A, B
)
H
ai
tí
nh
c
h
ấ
t
qu
a
n
t
r
ọ
ng
c
ho
b
ớ
i
các
ph
ươ
ng
t
r
ì
nh
nh
â
n
c
h
ậ
p
đ
ạ
i
s
ố
(
t
ổ
ng
c
h
ậ
p)
v
à
(*)
h
ế
t
s
ứ
c
qu
a
n
t
r
ọ
ng
t
rong
l
ý
t
huy
ế
t
t
o
á
n
v
ề
morpho
l
ogy,
đ
ế
n
độ
c
húng
c
ó
t
h
ể
đ
ượ
c
x
e
m
là
nguy
ê
n
nh
â
n
d
ẫ
n
đ
ế
n
v
i
ệ
c
đ
ị
nh
ngh
ĩ
a
ph
é
p
bào
mòn
v
ớ
i
-B,
t
h
a
y
v
ì
v
ớ
i
B
.
4.
Tóm
t
ắ
t
nh
ữ
ng
phép
toán
c
ơ
b
ả
n
Cho
b
a
ph
ầ
n
t
ử
c
ấ
u
t
rú
c
c
ó
tí
nh
đố
i
x
ứ
ng
(g
iá
t
r
ị
“
-
“
đ
ạ
i
d
i
ệ
n
c
ho
ý
“
không qu
a
n
tâ
m
”
.
==
111
111
111
8
NB
B
−−−
−−
−−−
= 1
1
B
−−
−
−−
=
1
11
1
2
(a)
(b)
(
c
)
5. Ta
c
ó
ví dụ với phần tử cấu trúc N
8
:
Thực hiện
các
ph
é
p
t
o
á
n
xử lý trên ảnh A thu được kết quả:
Phép toán mở (Opening) có thể tách các đối tượng liên thông trong một ảnh
nhị phân. Phép toán đóng (Closing) có thể lấp đầy các lỗ nhỏ.
Với một phần tử cấu trúc “trơn”, cả hai phép toán này đều cho nột lượng trơn
đáng kể trên biên của đối tượng nhận tác động từ chúng.
Phép mở (Opening) làm trơn biên đối tượng từ phía trong còn phép đóng
(Closing) làm trơn biên đối tượng từ phía ngoài.
III. Thuật toán
Ta thực hiện thuật toán xử lý trên hai bước:
- B1: Xác định biên của đối tượng trong ảnh
- B2: Thực hiện toán tử Erosion và Closing trên ảnh biên vừa tìm được.
1. Xác định biên của đối tượng trong ảnh
Ta dùng thuật toán xác định biên Robert (xác theo Gradient)
Thuật toán này thực hiện như sau: Chạy từ trái qua phải, từ trên xuống dưới của ảnh.
Giả sử đang ở vị trí (i,j) với 0=<i <h-1 (h là độ cao của ảnh) và 0<=j<w-1(w là
độ rộng của ảnh)
Ta xét biểu thức F=(f(i+1,j+1)-f(i,j)).(f(i+1,j+1)-f(i,j))+(f(i,j+1)-f(i+1,j)).(f(i,j+1)-
f(i+1,j)).
Trong đó f(i,j) là mức xám của điểm ảnh tại tọa độ (i,j).
Nếu F lớn hơn giá trị ngưỡng T cho trước thì cho điểm ảnh tại vị trí (i,j) là trắng
(điều này do ta quy định có thể cho nó là đen) tức là điểm này sẽ nằm trên biên của
ảnh.
Nếu không ta sẽ cho điểm này có màu đen.
Với những điểm ở dưới cùng (i=h-1) của ảnh thì ta cho nó có màu giống với điểm
ở bên trên cùng cột với nó
Với những điểm ở bên phải cùng của ảnh thì ta cho nó có màu giống với màu của
điểm ở bên trái cùng hàng với nó
2. Thực hiện toán tử Erosion và Closing trên ảnh biên vừa tìm được.
Ta sẽ thực hiện các toán tử Erosion và Closing với phần tử cấu trúc tùy theo từng
trường hợp.
Vì trong thuật toán xác định biên ở trên ta quy định các điểm màu trắng sẽ là
biên, các điểm màu đen xẽ là nền. Nên mục đich của toán tử Erosion, Closing sẽ làm
phần màu trắng gầy đi (biên gầy đi)
Thuật toán Erosion trong chương trình
Ta cho chạy từ từ trái qua phải và từ trên xuống dưới để xác định những điểm
nào cần giữ lại màu và những điểm cần thay đổi màu.
Giả sử ta đang đứng ở vị trí (i,j), ta sẽ xét các điểm lân cận với (i,j) tương ứng với
vị trí trong phần tử cấu trúc có giá trị là 1 nếu thỏa mãn tất cả những điểm này đều
màu trắng thì pixel ở vị trí (i,j) sẽ là màu trắng trong ảnh sau khi thực hiện toán tử,
ngược lại nó sẽ có màu đen.
Thuật toán Closing trong chương trình
Trong thuật toán này trước hết ta phải làm béo các phần tử màu trắng trong ảnh
bằng toán tử Dilation như đã nêu ở phân lí thuyết ở trên.
Ta cho chạy từ trái qua phải từ trên xuống dưới của ảnh.
Giả sử ta đang ở vị trí (i,j) nếu điểm này có màu trắng thì ta xét các vị trí tương ứng
với những vị trí trong phần tử cấu trúc có giá trị bằng 1 và cho điểm đó có màu trắng,
như vậy các nét phần tử màu trắng sẽ to ra.
Sau đó ta thưc hiện toán tử Erosion như đã trình bày ở phần thuật toán Erosion ở
phần trên.
IV. Kết luận
Để giải quyết làm mảnh biên bằng 2 toán tử Erosion và Closing ta không có 1
thuật toán cố định với phần tử cấu trúc cố đinh, mà phải dùng các phần tử cấu trúc
một cách linh hoạt và hợp lý.
Với những biên có độ dày khác nhau ta phải sử dụng phần tử cấu trúc với kích
thước khác nhau.
Với những biên có độ dày không ổn đinh và có đoạn đứt nét , khe hở ta phải
dùng thêm toán tử Closing trước để lấp đầy những khe hở và nối liền những phần
đứt ở biên sau đó mới dùng toán tử Erosion để làm mảnh biên.
Trong nhiều trường hợp ta phải sử dụng nhiều phép Erosion và Closing liên
tiếp hoặc đan xen nhau với nhiều dạng phần tử cấu trúc khác nhau thì mới làm mảnh
được biên như mong muốn.
Ngoài ra, với những ảnh có nhiễu ta có thể dùng toán tử Erosion để làm mảnh
biên đồng thời lọc nhiễu luôn mà không cần thao tác lọc nhiễu trước.
TÀI LIỆU THAM KHẢO
1. Nhập môn xử lý ảnh -Lương Bá Mạnh, Nguyễn Thanh Thủy-NXB KH&KT
2. Xử lý ảnh và Video số - Nguyễn Kim Sách – NXB KH&KT 1997.
3. Computer vision, Imaging - Lương Chi Mai
4. Bài giảng Xử lý ảnh số - Đào Thanh Tĩnh.