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

Xử lý đường biên (xử lý ảnh)

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 (735.3 KB, 33 trang )

Xử lý ảnh số
Phân tích ảnh
Xử lý đường biên ( edge )
Chương trình dành cho kỹ sư CNTT
Nguyễn Linh Giang
Xử lý đường biên
•Biểudiễnbiên
•Gradient rờirạc
•Cácphương pháp tách biên
•Dòvànối đường biên
• Mã hóa đường biên
Biểudiễnbiên
•Kháiniệmbiên
– Biên ( edge ): là tậphợpcácđiểmtại đóhàmđộ sáng
của ảnh thay đổicụcbộđộtngột;
– Đốivới hàm liên tục, sự biếnthiêncủahàmđượcxác
định thông qua đạohàmcáccấp.
– Ảnh: hàm liên tụchaibiếnlàcáctọa độ trong mặt
phẳng ảnh:
•Sự biến thiên hàm sẽđượcbiểudiễnbằng các đạo hàm riêng.
•Sự biếnthiêncủahàmảnh biểudiễnbằng vector gradient;
–Gradient chỉ hướng biếnthiêntăng cực đạicủahàm
ảnh;
– Đốivới ảnh số, phảixácđịnh các gradient rờirạc
Biểudiễnbiên
–Biênlàthộctínhcụcbộ
củamỗi điểmvàđược
tính từ hàm ảnh tạinhững
điểmlâncậncủa điểm
đang xét;
–Biênđượcxácđịnh bằng


mộtvector cóhaithành
phần:
• Độ lớn: xác định bằng độ
lớncủagradient;
•Hướng: hợpvớihướng của
gradient một góc -90
o
.
Biểudiễnbiên
–Biênđượcsử dụng trong phân tích ảnh để xác định các đường
biên củavùngảnh;
– Đường biên là tậphợpcácđiểmtại đóhàmảnh biếnthiênvà
bao gồmnhững điểmvớibiênđộ biên cao;
– Đường biên và các phầncủa nó ( các điểm biên ) luôn trựcgiao
vớihướng củagradient;
–Mộtsố dạng biên ảnh:
Gradient rờirạc
• Độ lớnvàhướng củagradient tạimột điểmcủa
hàm:
– Tính theo gradient theo hai hướng x, y:
G
x
=

s(x, y)/

x ; G
y
=


s(x, y)/

y
22
),(
yx
GGyxs +=∇
(
)
xy
GGarctan
=
ψ
Gradient rờirạc
•Mộtsố hệ thứctínhgần đúng độ lớncủa
gradient:
y
yxs
x
yxs
yxs


+


=
),(),(
),( grad











=
y
yxs
x
yxs
yxs
),(
,
),(
max),( grad
Gradient rờirạc
• Tính gradient của ảnh số
– Các gradient theo các hướng được tính theo các sai
phân theo từng hướng trụctọa độ củahàm:
Hoặc
k
nkmsnms
nmG
x
),(),(
),(



=
k
knmsnms
nmG
y
),(),(
),(


=
k
nmsnkms
nmG
x
),(),(
),(

+
=
k
nmsknms
nmG
y
),(),(
),(

+
=

–Cácyêucầu đốivới k :
• k là số nguyên nhỏ, thường chọnbằng 1;
• Đủ nhỏđểướclượng gần chính xác đạo hàm theo hướng;
• Đủ lớn để có thể bỏ qua những biến thiên nhỏ củahàmảnh.
–Mộtsố trường hợpcóthể dùng sai phân đốixứng
để tính gradient:
–Nhược điểm: không tính đến ảnh hưởng của điểm
p
m,n
lên gradient.
Gradient rờirạc
[]
kk
k
nms
k
nkmsnkms
nmG
x
−∗=


+
= 0
2
1
),(
2
),(),(
),(












∗=
−−+
=
k
k
k
nms
k
knmsknms
nmG
y
0
2
1
),(
2
),(),(
),(
• Tính gradient theo hai hướng trựcgiaobấtkỳ:

–Xácđịnh các mặtnạ gradient theo các hướng trực
giao H
1
, H
2
;
– Tính gradient theo các hướng tạitừng điểmcủatoàn
ảnh bằng các mặtnạ H
1
, H
2
;
–Toántử xác định gradient thựcchất là phép toán lấy
tổng chập ảnh s(m, n) vớicáchàmmặtnạ h
1
(-m, -n )
và h
2
( -m, -n ).
–Nếucácmặtnạ H
1
và H
2
là đốixứng thì
h
1
(-m, -n ) = h
1
(m, n ); h
2

(-m, -n ) = h
2
(m, n )
Gradient rờirạc
Gradient rờirạc
– Các gradient rờirạctheohướng:
g
1
(m, n) = s( m, n ) * h
1
( m, n )
g
2
(m, n) = s( m, n ) * h
2
( m, n )
–Biênđộ củagradient
g(m, n ) = (((g
1
(m, n))
2
+ (g
2
(m, n))
2
)
1/2
Hoặc
g(m, n ) = |g
1

(m, n)| + |g
2
(m, n)|
– Điểmp
m,n
được coi là điểmtrênbiênnếug(m, n) ≥θ

I
g
= { (m, n)| g(m, n) ≥θ} - Là tậphợpcácđiểm
biên ảnh
θ
-làngưỡng xác định biên
–Hàm
ε
(m, n) là bản đồ biên ảnh và cung cấpdữ liệu
để dò biên đốitượng trong ảnh




=
otherwise 0,
I n) (m, ,1
),(
g
nm
ε
Gradient rờirạc
Gradient rờirạc

•Xácđịnh biên theo đạohàmcấp2 –toántử Laplace
– Trong mộtsố trường hợp, chỉ cần tính đếnbiênđộ củagradient
mà không cầnquantâmtớisự thay đổivề hướng;
–Toántử vi phân tuyếntínhbậc hai Laplace cũng đượcsử dụng để
tính biên độ gradient;
–Toántử Laplace có cùng tính chấttheomọihướng và bấtbiến
đốivới phép quay ảnh
–Rờirạchóa:
Δ
s(m,n) = 4s(m,n) – [s(m-1,n) + s(m+1,n) + s(m,n-1) + s(m,n+1)]
2
2
2
2
),(),(
),(
y
yxs
x
yxs
yxs


+



Các phương pháp xác định biên ảnh
•Cácbộ lọc tìm biên
• Các toán tửđạohàmcấp1;

• Các toán tửđạohàmcấp2;
• Các toán tửđiểm giao không;
• Các toán tửđốisánhvớimôhìnhthamsố
Các phương pháp xác định biên ảnh
•Cácbộ lọc tìm biên – xác định biên qua việc đo
độ dốccủabiênđượcchialàmbadạng:
–Cácbộ lọc ( toán tử ) tính xấpxỉđạohàmcủahàm
ảnh bằng các sai phân hữuhạn:
•Cáctoántử tính xấpxỉđạohàmbậcnhấtsử dụng các cửa
sổ mặtnạ. Hướng củagradient đượcxácđịnh bằng mặtnạ
cho đáp ứng cao nhất. Giá trị tuyệt đốicủa đáp ứng của
mặtnạ là môdun của gradient
•Cáctoántử bấtbiếnvới phép quay ( toán tử Laplace ) và
không phụ thuộchướng, khi đóchỉ cầnmộtmặtnạ tổng
chập.
Các phương pháp xác định biên ảnh
– Các toán tử dựatrêncácđiểm giao không của đạo
hàm bậchaicủahàmảnh ( phương pháp Marr-
Hildreth hoặclọc tìm biên Canny ).
– Các toán tửđối sánh hàm ảnh vớimôhìnhthamsố
của điểmbiên.
• Các mô hình tham số mô tả biên chính xác hơnlàchỉ sử
dụng độ lớnvàhướng của biên.
•Những phương pháp này yêu cầukhốilượng tính toán lớn.
•Rất khó có thể lựachọnchiếnlượcxácđịnh biên
tối ưu.
•Lĩnh vựcnàyđượctập trung nghiên cứu;
Các phương pháp xác định biên ảnh
• Đặc điểm chung của các bộ lọc tìm biên:
– Là các bộ lọc thông cao;

–Bêncạnh việcxácđịnh biên, các bộ lọc này còn làm
tăng cường nhiễu;
– Đánh giá các bộ lọctìmbiên:
• Đánh giá theo xác suấttìmbiênđúng;
• Đánh giá theo tỷ lệ tín hiệu trên nhiễu;
• Đánh giá theo hướng củabiên;
• Đánh giá theo khả năng tách biên
Các toán tửđạohàmcấp1
• Các toán tửđạohàmcấp1:
– Các toán tử tính gradient theo hai
hướng;
–Tínhđộ lớncủagradient tổng hợp;
–Xácđịnh góc của gradient theo các
thành phần;
–Lậpbản đồ biên theo ngưỡng
Các toán tửđạohàmcấp1
•Toántử Roberts
–Cácmặtnạ lọctương ứng vớihaihướng hợpvớilưới ảnh 45
o
.
–Cácmặtnạđượcápdụng riêng rẽ với ảnh đầu vào và cho giá
trịđộđo gradient theo mỗihướng ( G
1
và G
2
).
–Cácmặtnạ lọc cho phép tính các thành phầnvàhướng của
gradient t
ạitừng điểm ảnh. Độ lớn các thành phần được tính
bằng:

G
1
( m, n ) = | s( m, n ) – s( m+1, n+1 ) |
G
2
( m, n ) = | s( m, n+1 ) – s( m+1, n ) |
–Biênđộ của gradient có thểđượctínhbằng độ đo Euclide hoặc
độ đoL
1
:
|G( m, n )| = | G
1
( m, n ) | + | G
2
( m, n )|
–Hướng của gradient:
ψ = arctan( G
2
/G
1
) - 3π/4
Các toán tửđạohàmcấp1
–Mặtnạ lọccủatoántử Roberts
–Vídụ toán tử Roberts
01
10
,
10
01
21


=

= HH
– Ưu điểm:
• Đơngiản khi tính toán vì chỉ sử dụng lân cận 2x2 của
điểm;
•Cácmặtnạ lọc đáp ứng cực đạivới các biên tạo góc 45
o
vớilưới ảnh.
–Nhược điểm:
•Nhạycảmvớinhững biếnthiênnhỏ củabiênvìsử dụng ít
điểmlâncận để xấpxỉ gradient;
• Đáp ứng yếuvớinhững đường biên đích thực, trừ khi các
đường biên này rấtnét;
•Nhạycảmvới nhiễu
Các toán tửđạohàmcấp1
Các toán tửđạohàmcấp1
•Toántử Prewitt
–Toántử Prewitt xấpxỉ hóa đạohàmbậcnhất;
–Toántử Prewitt xác định gradient theo hai hướng trựcgiao
theo phương nằm ngang và thẳng đứng;
– Gradient xác định theo các sai phân đốixứng:
– Môdun củagradient được tính theo độ đo Euclide:
G(m, n ) = [((G
x
(m, n))
2
+ (G
y

(m, n))
2
]
1/2
[ ]
)1,1()1,1(),1(),1()1,1()1,1((
3
1
),( +−−+++−−++−−−−+= kjskjskjskjskjskjsnmG
x
[ ]
)1,1()1,1()1,()1,()1,1()1,1((
3
1
),( −+−+++−−++−−−+−= kjskjskjskjskjskjsnmG
y
– Các ma trậngradient:
–Vídụ toán tử Prewitt:
Các toán tửđạohàmcấp1
101
101
101
3
1
,
111
000
111
3
1

21



=
−−−
= HH
Các toán tửđạohàmcấp1
– Đặc điểmcủatoántử Prewitt:
•Thựchiệnchậmhơntoántử Roberts;
•Tốthơntoántử Roberts theo nghĩa tín hiệu trên nhiễuvà
xác suấtpháthiệnbiênđúng;
•Cóưu điểm trong việcxácđịnh các biên thẳng đứng hoặc
nằm ngang so với các biên nghiêng 45
o
;
• Không thể xác định biên về thành đường độ dày 1
•Toántử Sobel
–Toántử Sobel xấpxỉ hóa đạohàmbậcnhất;
–Cácmặtnạđượcthiếtkếđểđáp ứng tối đavớicác
biên chạythẳng đứng hoặcnằmngangso vớilưới ảnh;
–Toántử Sobel xác định gradient theo hai hướng trực
giao theo phương nằm ngang và thẳng đứng;
–Gradient xácđịnh theo các sai phân đốixứng:
– Môdun củagradient đượctínhtheođộ đoL
1
hoặc
Euclide:
G(m, n ) = [((G
x

(m, n))
2
+ (G
y
(m, n))
2
]
1/2
Các toán tửđạohàmcấp1
[ ]
)1,1()1,1()),1(),1((2)1,1()1,1((
4
1
),( +−−+++−−++−−−−+= kjskjskjskjskjskjsnmG
x
[ ]
)1,1()1,1())1,()1,((2)1,1()1,1((
4
1
),( −+−+++−−++−−−+−= kjskjskjskjskjskjsnmG
y

×