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

Hướng dẫn cải thiện ảnh phần 5 ppt

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 (1.55 MB, 7 trang )

Chơng 2: cảI thiện ảnh
67
Hình 2.23: Ví dụ về làm giảm nhiễu muối -tiêu bằng phép làm trơn pixel ngoại cỡ.
ảnh trên Hình 2.22(a) đợc xử lý bằng phép làm trơn pixel ngoại cỡ với giá trị ngỡng
là 50 và cửa sổ 3 x 3 điểm.
3. phát hiện biên
Biên trong ảnh là một đờng biên giới hay một đờng bao (contour) mà ở đó
xuất hiện sự thay đổi đáng kể một vài tính chất vật lý của ảnh, nh độ phản xạ bề mặt,
độ chiếu sáng hoặc khoảng cách từ những bề mặt nhìn thấy đợc đến vị trí ngời xem.
Thay đổi tính c hất vật lý biểu hiện bằng nhiều cách, bao gồm thay đổi cờng độ, màu,
kết cấu bề mặt. ở đây, ta chỉ xét về sự thay đổi cờng độ ảnh.
Phát hiện đờng biên rất có lợi trong một số bối cảnh, chẳng hạn trong nhiệm
vụ lý giải ảnh nh nhận dạng đối tợng, một bớc quan trọng là phân đoạn ảnh thành
từng vùng khác nhau, ứng với những đối tợng khác nhau trong cảnh. Phát hiện đờng
biên thờng là bớc đầu tiên trong phân đoạn ảnh. Một ví dụ khác, là phơng pháp mã
hoá ảnh với nhịp bít thấp bằng cách chỉ mã hoá nh ững đờng biên phát hiện ra. Ta biết
rằng, khi một ảnh chỉ gồm toàn đờng biên thì độ dễ hiểu rất cao.
ý nghĩa của sự thay đổi tính chất vật lý trong ảnh phụ thuộc vào ứng dụng:
điểm thay đổi cờng độ đợc coi là điểm biên ở ứng dụng này, nhng trong ứ ng dụng
khác không phải là điểm biên. Trong hệ nhận dạng đối tợng, đờng bao toàn bộ đối
tợng đã đủ cho việc nhận dạng , còn những đờng bao khác đại biểu những chi tiết
trên đối tợng cũng có thể không coi là đờng biên. Nh vậy, không thể định nghĩa
đờng biên ngoài bối cảnh của ứng dụng. Tuy nhiên những alg orit phát hiện đờng biên
có ích trong nhiều tập ứng dụng lớn đã đợc phát triển. Trong tiết này ta thảo luận về
một số algorit phát hiện đờng biên tiêu biểu.
Chơng 2: cảI thiện ảnh
68
3.1. phơng pháp gradient
Xét một hàm tơng tự f(x) biểu diễn đờng biên 1 -D nh trên Hình 2.24(a).
Trong những bài toán điển hình, coi giá trị x
0


trong hình là một điểm biên. Một cách để
xác định x
0
là tính đạo hàm bậc nhất f(x) hoặc đạo hàm bậc hai f(x). Các Hình
2.24(b) và 1.24(c) bi ểu diễn f(x) và f(x). Từ hình vẽ có thể xác định giá trị x
0
bằng
cách tìm cực trị cục bộ (min hoặc max) của f(x) hoặc bằng cách tìm điểm f(x) đi qua
giá trị không, ở đó f(x) đổi dấu. Trong tiết này ta chỉ thảo luận về những phơng pháp
khai thác các đặc tính của f(x). Trong tiết sau, thảo luận về những phơng pháp khai
thác các đặc tính của f(x).
Ngoài việc xác định điểm biên x
0
, f(x) cũng có thể sử dụng để ớc lợng
cờng độ và hớng của đờng biên. Nếu |f(x)| là lớn thì f(x) biến thiên rất nhanh đồng
thời cờng độ cũng thay đổi nhanh. Nếu |f(x)| dơng thì f(x) tăng. Dựa trên những
nhận xét trên suy ra một cách tiếp cận để phát hiện đờng biên là sử dụng hệ ở Hình
2.25. Trong hệ này trớc hết từ f(x) tính |f(x)|. Nếu |f(x)| lớn hơn m ột ngỡng nào
đó thì nó có thể là một ứng viên điểm biên. Nếu tất cả các giá trị của x sao cho
|f(x)| lớn hơn một ngỡng nào đó đợc phát hiện là điểm biên thì biên sẽ xuất hiện
dới dạng một đờng chứ không phải một điểm. Để tránh vấn đề này ta y êu cầu thêm
là |f(x)| có giá trị cực đại cục bộ ở những điểm biên. Cũng cần xác định xem f(x) là
tăng hoặc giảm tại x=x
0
. Thông tin cần thiết chứa đựng trong f(x) tại x=x
0
. Việc
chọn ngỡng phụ thuộc vào ứng dụng. Khi ngỡng tăng chỉ những giá trị củ a x ở đấy
f(x) tăng nhanh mới đợc ghi lại làm ứng viên điểm biên. Việc chọn ngỡng tối u
không phải dễ, cho nên phải thử mò mẫm một số lần. Cũng có thể chọn ngỡng theo

phơng pháp thích nghi. Hệ trên Hình 2.25 dựa vào loại biên đặc biệt cho trong Hìn h
2.24(a), nhng vẫn có thể ứng dụng để phát hiện các loại biên khác.
Dạng suy rộng f(x) vào trờng hợp hàm hai chiều f(x,y) là gr adient


yx
i

y
y,xf
i

x
y,xf
y,xf






(2.6)
trong đó
x
i

là vector đơn vị theo hớng x,
y
i


là vector đơn vị theo hớng y . Việc dựa
vào f(x,y) để suy rộng hệ phát hiện đờng biên trên Hình 2.25 đợc biểu diễn trên
Hình 2.26. Thoạt tiên tính biên độ của f(x,y) sau đó đem so sánh với một ngỡng để
Chơng 2: cảI thiện ảnh
69
xác định các ứng viên điểm biên. Nếu tất cả giá trị (x,y) sao cho f(x,y) lớn hơn
một ngỡng nào đó đều đợc phát hiện là những điểm biên thì biên sẽ xuất hiện dới
dạng dải chứ không chỉ là đờng. Quá trình xác định ra một đờng biên từ một dải các
ứng viên điểm biên đợc gọi là làm mảnh dải biên. Trong một algorit làm mảnh
biên đơn giản, điểm biên đợc chọn bằng cách kiểm tra xem có phải f(x,y) là giá trị
cực đại cục bộ, - ít ra cũng là cực đại trên một hớng. Thuộc tính f(x,y) đạt đợc giá
trị cực đại cục bộ ít nhất là trên một hớng thờng đợc kiểm tra theo một vài hớng
xác định. Trong phần lớn trờng hợp chỉ cần kiểm tra theo hớng nằm ngang và hớng
thẳng đứng. Nếu f(x,y) là một giá trị cực đại cục bộ theo bất kỳ một hớng xác định
nào tại điểm có khả năng là điểm biên, thì điểm này đợc coi là điểm biên. Một khó
khăn với algorit làm mảnh dải biên đơn giản này là nó tạo một số đờng biên giả nhỏ
trong vùng lân cận đờng biên mạnh. Một phơng pháp đơn giản để khử hầu hết những
đờng biên giả nhỏ này là áp đặt thêm những điều kiện ràng buộc sau đây:
Hình 2.24: (a) f(x); (b) f(x); (c) f(x) cho một loại biên 1 -D điển hình.
X
0
X
0
X
0
X
0
(a)
(c)
(b)

f(x)
f(x)
f(x)
f(x)
f(x)
f(x)
X
0
X
0
Chơng 2: cảI thiện ảnh
70
Hình 2.25: Hệ phát hiện biên 1 -D.
Hình 2.26: Hệ phát hiện biên 2 -D.
( a) nếu f(x,y) có một giá trị cực đại cục bộ ở điểm (x
0
,y
0
) theo phơng nằm
ngang chứ không phải theo phơng thẳng đứng, thì điểm (x
0
,y
0
) là điểm biên khi

00
00
yy,xx
yy,xx
y

y,xf
k
x
y,xf







với k thờng chọn cỡ bằng 2
( b) nếu f(x,y) có giá trị cực đại cục bộ ở điểm (x
0
,y
0
) theo phơng thẳng chứ
không phải theo phơng nằm ngang, thì điểm (x
0
,y
0
) là điểm biên khi

00
00
yy,xx
yy,xx
x
y,xf
k

y
y,xf







với k thờng chọn cỡ bằng 2
x
0
là điểm
biên
không
không
phải
x
0
không phải
là điểm biên
x
0
không phải
là điểm biên
phải

xf



xf

f(x)
|f(x)| là
cực đại cục
bộ ?
> Ngỡng
tại x=x
0
?
.

dx
.d
Mép biên
(x
0
,y
0
) không phải là
một điểm biên
Phải
không
f(x,y)
|f(x,y)|
|f(x,y)|
> Ngỡng
tại (x
0
,y

0
)
?
.
[.]
Làm mảnh
biên
Chơng 2: cảI thiện ảnh
71
Khi f(x,y) có giá trị cực đại cục bộ tai điểm (x
0
,y
0
) theo phơng nằm
ngang, chứ không phải theo phơng thẳng đứng, điều kiện (a) yêu cầu tốc độ biến thiên
của cờng độ theo phơng nằm ngang phải lớn hơn theo phơng thẳng đứng nhiều.
Điều kiện (b) cũng nh điều kiện (a) chỉ cần hoán vị x với y.
Hệ phát hiện đờng biên dựa trên hàm f(x,y) gọi là bộ dò biên vô hớng bởi
vì những hàm nh vậy không định thiên theo một hớng đặc biệt nào. Nếu hệ dò biên
dựa trên hàm có định thiên theo một hớng đặc biệt thì đó là một bộ phát hiện có
hớng. Nếu ta sử dụng f(x,y)/ x thay cho f(x,y), chẳng hạn trong hệ Hình 2.26,
hệ sẽ dò biên theo phơng thẳng đứng, mà không có đáp ứng với những biên trên
phơng nằm ngang.
Đối với một dãy hai chiều f(n
1
,n
2
), đạo hàm riêng f(x,y)/x và f(x,y)/y có thể
đợc thay thế b ởi một hiệu, chẳng hạn f(x,y)/x có thể đợc thay thế bởi


x
y,xf


[f(n
1
,n
2
) - f(n
1
-1,n
2
)]/T, (2.7a)
[f(n
1
+1,n
2
) - f(n
1
,n
2
)]/T, (2.7b)
hoặc [f(n
1
+1,n
2
) - f(n
1
-1,n
2

)]/(2T). (2.7c)
Vì các đạo hàm tính ra đợc so sánh với một ngỡng, và ngỡng này có thể điều chỉn h,
nên có thể bỏ qua các hệ số tỷ lệ xích 1/T và 1/2T. Thờng lấy giá trị trung bình các
biểu thức (2.7) trên nhiều mẫu để tăng độ tin cậy và tính liên tục của giá trị ớc lợng
của f(x,y)/x. Những ví dụ về các giá trị ớc lợng f(x,y)/x đã cải thiện là

x
y,xf


[f(n
1
+1, n
2
+1) - f(n
1
-1, n
2
+1)] + [f(n
1
+1, n
2
) - f(n
1
-1, n
2
)] +
[f(n
1
+1, n

2
-1) - f(n
1
-1, n
2
-1)] (2.8a)
hoặc [f(n
1
+1, n
2
+1) - f(n
1
-1, n
2
+1)] + 2[f(n
1
+1, n
2
) - f(n
1
-1, n
2
)] +
[ f(n
1
+1,n
2
-1) - f(n
1
-1, n

2
-1)] (2.8b)
Trong (2.8) đã bỏ các hệ số tỷ lệ xích.
Thuật toán hiệu (differencing operation) trong (2.7) và (2.8) có thể đợc xem
nh là tích chập của f(n
1
, n
2
) với đáp ứng xung của bộ lọc h(n
1
, n
2
). Những ví dụ đáp
ứng xung có thể sử dụng để phát triển các bộ dò biên có hớng đợc trình bày Hình
2.27. Các bộ lọc h(n
1
, n
2
) ở Hình 2.27(a) và 1.27(b) phát hiện đờng biên theo phơng
Chơng 2: cảI thiện ảnh
72
thẳng đứng và phơng nằm ngang theo thứ tự có thể xem nh là các phép lấy xấp xỉ
f(x,y)/x và f(x,y)/y. Các bộ lọc h(n
1
, n
2
) ở Hình 2.27(c) và 1.27(d) phát hiện
đờng biên theo hớng hai đờng chéo. Gradient f(x,y) trong (2.6) cũng có thể biểu
diễn dới dạng các đạo hàm riêng bậc nhất trong hệ toạ độ quay. Khi quay một góc 45
độ thì hớng các đạo hàm riêng theo hớng hai đờng chéo.

(-1) (1) (1) (1) (1)
( -1) (1)

(-1) (1) (-1) (-1) (-1)
(1) (1) (1) (1)
( -1) (-1) (1) ( -1)

(-1) (-1) (-1) (-1)
Hình 2.27: Đáp ứng xung của các bộ lọc có thể dùng cho phát hiện biên định hớn g.
(a) Phát hiện biên theo phơng thẳng đứng;
(b) Phát hiện biên theo phơng nằm ngang;
(c) và (d) phát hiện biên theo phơng đờng chéo.
n
1
n
1
n
2
n
1
n
1
n
2
n
2
h(n
1
,n
2

)
h(n
1
,n
2
)
n
2
(a)
(b)
(c)
(d)
Chơng 2: cảI thiện ảnh
73
Có thể triển khai các bộ phát hiện vô hớng bằng cách lấy xấp xỉ rời rạc
(discrete approximation) f(x,y) trong hệ ở Hình 2.26. Từ (2.6)
f(x,y)=

2
2




















y
y,xf
x
y,xf
(2.9)
Từ (2.9) có thể triển khai các bộ dò biên vô hớng bằng cách tổ hợp phi tuyến các số
hạng dùng trong triển khai bộ dò biên có hớng. Một ví dụ về lấy xấp xỉ rời rạc của
(2.9) có thể đem sử dụng cho bộ dò biên có hớng là
f(x,y)


2
21
2
21
n,nfn,nf
yx

(2.10)
trong đó f
x

(n
1
,n
2
)= f(n
1
,n
2
)h
x
(n
1
,n
2
)
f
y
(n
1
,n
2
) = f(n
1
,n
2
)h
y
(n
1
,n

2
)
h
x
(n
1
,n
2
) và h
y
(n
1
,n
2
) đợc biểu diễn trên Hình 2.28. Phơng pháp đợc S obel phát triển
dựa trên (2.10) với h
x
(n
1
,n
2
) và h
y
(n
1
,n
2
) trong Hình 2.28. Một ví dụ khác là phơng
pháp do Roberts phát triển, cũng dựa trên (2.10) với h
x

(n
1
,n
2
) và h
y
(n
1
,n
2
) vẽ trên Hình
2.29. Tuỳ theo f(x,y) đợc tính xấp xỉ chính xác nh thế nào trong miền rời rạc, có
thể phát triển nhiều phơng án khác nhau.
Hình 2.30 là kết quả dò biên khi sử dụng bộ dò biên có hớng. Hình 2.30(a) là
ảnh gốc 512x512 pixel. Hình 2.30(b) và 1.30(c) theo thứ tự cho kết quả bộ dò theo
phơng thẳng đứng và phơng nằm ngang. Các bộ dò theo phơng thẳng đứng và
phơng nằm ngang dựa vào h(n
1
,n
2
) trong Hình 2.27(a) và 1.27(b). Hình 2.31(a) và
1.31(b) là kết quả sử dụng các bộ dò biên Sobel và Robert đối với ảnh trong Hình
2.30(a). Cả hai đều thuộc lớp các bộ dò vô hớng và các phơng pháp xác định giá trị
ngỡng và cũng nh kiểm tra tính cực đại cục bộ của biên đều là những phơng pháp
đã sử dụng ở Hình 2. 30.
Có nhiều phơng án khác nhau của những phơng pháp phát hiện đờng biên đã
thảo luận trong tiết này. Ví dụ ta có thể sử dụng một tổ hợp phi tuyến khác của
f(x,y)/x và f(x,y)/y thay cho

22

y/y,xfx/y,xf

×