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

Bài giảng Xử lý ảnh số: Chương 6 (phần 3) – ThS. Võ Quang Hoàng Khang

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.47 MB, 37 trang )

Chương 6:

PHÂN ĐOẠN ẢNH
(P3)
Võ Quang Hoàng Khang
TPHCM - 2016




Phương pháp dựa trên Watersheds
 Cách tiếp cận vấn đề
 Mô tả thuật toán
 Ví dụ minh họa

2


3
of
17

Topographic principle
 Ảnh được xem như là một bề mặt địa hình
3D với các vùng thấp và cao khác nhau,
mỗi pixel (x,y) tương ứngmột điểm (x,y, h)
trên bề mặt, với chiều cao h là mức xám
(gray level) của điểm ảnh


4


of
17

Idea proposal(by flooding) – Ý tưởng

 S. Beucher and C. Lantuejoul (1979). “Use of
watershed in contour detection”. In Proceedings of
the International Workshop on Image Processing,
Real-time Edge and Motion Detection (1979).
/>

5
of
17

Các biến đổi - Variants

 Watershed by flooding
 Inter-pixel watershed
 Watershed by topographic distance (xem thêm)
 Topological watershed (xem thêm)
 etc


6
of
17

Watershed by flooding


original image

 Bề mặt địa hình 3D của một ảnh:
− Ảnh được hình dung như bề mặt 3D bằng
cách sử dụng tọa độ không gian và mức xám
của điểm ảnh


Mỗi điểm ảnh được xác định bởi bộ ba (x,y,g), với
x,y là tọa độ không gian và g là mức xám của nó.


7
of
17

3 types of points - 3 loại điểm

 Điểm cực tiểu vùng (regional minimum)
 Điểm catchment basin hay watershed của điểm
cực tiểu vùng: là điểm chỉ giảm về duy nhất 1 cực
tiểu vùng
 Điểm crest line hay watershed lines. Mỗi điểm
crest là điểm có khả năng giảm về nhiều hơn một
cực tiểu vùng
 Phương pháp này mục tiêu là xác định tất cả
các pixel thuộc về loại thứ 3 (point of
watershed line)



8
of
17

3 types of points


9
of
17

 Tìm watershed line

Mục tiêu


10
of
17

Ý tưởng cơ bản

 Ý tưởng đơn giản:
 Tưởng tưởng một lỗ được thực hiện thông
qua mỗi cực tiểu vùng do đó toàn bộ địa hình
sẽ bị ngập nước khi tăng dần mức nước từ
dưới lên
 Khi nước dâng cao đến mức các catchment
basin bắt đầu hòa nhập, Dam sẽ được xây
dựng để ngăn chặn việc hòa nhập. Những

đường biên Dam chính là watershed line


11
of
17

Ý tưởng cơ bản


12
of
17

Flooding paradigm


13
of
17

Thuật toán

 Các bước cơ bản:
− Bắt đầu với tất cả các điểm ảnh có giá trị thấp
nhất: khởi tạo ban đầu cho watershed
− Với mỗi cường độ k


Với mỗi tập pixels có cường độ = k

If tiếp giáp với duy nhất một vùng hiện có, thêm
các điểm đó vào vùng hiện tại
Else If tiếp giáp với nhiều hơn 1 vùng, đánh dấu
điểm này là biên
Else phát hiện vùng mới


14
of
17

Example


15
of
17

Flooding algorithm - Example

3

3

3

5

5


5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3


3

5

5

3

3

3

5

1
30 30 30 10 15
1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20
1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10

1 10
10 10 10 10 40 20 20 20 40 10
5

5

5

5

10 40 20 40 10 10

1
5

1
5

1
5

1

1

3

5

10 15

1 20 15
1 10

1
5

1

1
0

1
0

1

1

3

5

10 15 20 15 10

5

1

0


0

1

1

3

5

10 15 20 15 10

5

1

0

0


16
of
17

Flooding algorithm - Example

3

3


3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

5

1
10 10 10 10
1 15

1 20
1 20

3

3

3

5

5

3

3

3

5

1
30 30 30 10 15
1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20

1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10
5

5

5

5

10 40 20 40 10 10

1
5

1
5

1
5

1


1

3

5

10 15
1 20 15
1 10

1
5

1

1
0

1
0

1

1

3

5

10 15 20 15 10


5

1

0

0

1

1

3

5

10 15 20 15 10

5

1

0

0


17
of

17

Flooding algorithm - Example

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5


5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

3

3

3

5

1
30 30 30 10 15

1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20
1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10
5

5

5

5

10 40 20 40 10 10

1
5

1

5

1
5

1

1

3

5

10 15
1 20 15
1 10

1
5

1

1
0

1
0

1


1

3

5

10 15 20 15 10

5

1

0

0

1

1

3

5

10 15 20 15 10

5

1


0

0


18
of
17

Flooding algorithm - Example

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3


3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

3

3


3

5

1
30 30 30 10 15
1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20
1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10
5

5

5

5


10 40 20 40 10 10

1
5

1
5

1
5

1

1

3

5

10 15
1 20 15
1 10

1
5

1

1

0

1
0

1

1

3

5

10 15 20 15 10

5

1

0

0

1

1

3

5


10 15 20 15 10

5

1

0

0


19
of
17

Flooding algorithm - Example

3

3

3

5

5

5


1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3


5

5

3

3

3

5

1
30 30 30 10 15
1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20
1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10

5

5

5

5

10 40 20 40 10 10

1
5

1
5

1
5

1

1

3

5

10 15
1 20 15
1 10


1
5

1

1
0

1
0

1

1

3

5

10 15 20 15 10

5

1

0

0


1

1

3

5

10 15 20 15 10

5

1

0

0


20
of
17

Flooding algorithm - Example

3

3

3


5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20


3

3

3

5

5

3

3

3

5

1
30 30 30 10 15
1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20
1 20


40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10
5

5

5

5

10 40 20 40 10 10

1
5

1
5

1
5

1

1


3

5

10 15
1 20 15
1 10

1
5

1

1
0

1
0

1

1

3

5

10 15 20 15 10

5


1

0

0

1

1

3

5

10 15 20 15 10

5

1

0

0


21
of
17


Flooding algorithm - Example

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5


5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

3

3

3

5

1
30 30 30 10 15
1 15 20
1 20


1
30 20 20 20 30 15
1 15
1 20
1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10
5

5

5

5

10 40 20 40 10 10

1
5

1
5


1
5

1

1

3

5

10 15
1 20 15
1 10

1
5

1

1
0

1
0

1

1


3

5

10 15 20 15 10

5

1

0

0

1

1

3

5

10 15 20 15 10

5

1

0


0


22
of
17

Flooding algorithm - Example

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3


3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5

5

3

3

3


5

1
30 30 30 10 15
1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20
1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10
5

5

5

5

10 40 20 40 10 10


1
5

1
5

1
5

1

1

3

5

10 15
1 20 15
1 10

1
5

1

1
0


1
0

1

1

3

5

10 15 20 15 10

5

1

0

0

1

1

3

5

10 15 20 15 10


5

1

0

0


23
of
17

Flooding algorithm - Example

3

3

3

5

5

5

1
10 10 10 10

1 15
1 20
1 20

3

3

3

5

5

5

1
10 10 10 10
1 15
1 20
1 20

3

3

3

5


5

3

3

3

5

1
30 30 30 10 15
1 15 20
1 20

1
30 20 20 20 30 15
1 15
1 20
1 20

40 40 40 40 40 20 20 20 40 40 40 40 40

1
1 10
1 10
1 10
10 10 10 10 40 20 20 20 40 10
5


5

5

5

10 40 20 40 10 10

1
5

1
5

1
5

1

1

3

5

10 15
1 20 15
1 10

1

5

1

1
0

1
0

1

1

3

5

10 15 20 15 10

5

1

0

0

1


1

3

5

10 15 20 15 10

5

1

0

0


24
of
17

Xây dựng Dam – Dam construction

 Nguyên tắc:
 Dam được xây dựng để ngăn chặn việc sáp
nhập của 2 catchment basins
 Thuật toán:
− Khởi tạo, tập các pixel mức xám cực tiểu là 1,
còn lại là 0.
− Làm ngập bề mặt địa hình 3D từ dưới lên

− Nếu tại mức n-1, có hai thành phần kết nối và
tại mức n chỉ có một thành phần kết nối thì:



Hai catchment basin được trộn lại tại mức n
Bắt đầu xây dựng Dam cho thành phần kết nối
đơn này.


25
of
17

Xây dựng Dam – Dam construction

 Nguyên tắc:
 Dam được xây dựng để ngăn chặn việc sáp
nhập của 2 catchment basins
 Thuật toán:
− Khởi tạo, tập các pixel mức xám cực tiểu là 1,
còn lại là 0.
− Làm ngập bề mặt địa hình 3D từ dưới lên
− Nếu tại mức n-1, có hai thành phần kết nối và
tại mức n chỉ có một thành phần kết nối thì:



Hai catchment basin được trộn lại tại mức n
Bắt đầu xây dựng Dam cho thành phần kết nối

đơn này.


×