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

Tìm hiểu và khai thác một số phương pháp làm mảnh ảnh đường nét và khả năng ứng dụng

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

MỤC LỤC
Lời cảm ơn .............................................................................................. 1
Lời nói đầu.............................................................................................. 5
Chương 1: Những nét cơ bản về xử lý ảnh .............................................. 7
1.1. Giới thiệu sơ bộ về xử lý ảnh và biểu diễn ảnh ....................... 7
1.1.1. Khái niệm ảnh số....................................................... 7
1.1.2. Xử lý ảnh................................................................... 7
1.1.3. Biểu diễn ảnh............................................................. 7
1.1.4. Các khái niệm trong xử lý ảnh ................................... 9
1.2. Nhận dạng ............................................................................ 10
Chương 2: Tổng quan về làm mảnh ảnh .............................................. 12
2.1. Xương và các phương pháp tìm xương................................. 12
2.1.1 Thế nào là xương và làm mảnh ................................ 12
2.1.2. Phân loại các phương pháp tìm xương .................... 13
2.2. Phương pháp thay đổi trục trung vị....................................... 13
2.3. Phương pháp tìm xương dựa trên làm mảnh ......................... 15
2.4. Các khái niệm cơ bản trong các thuật toán làm mảnh ........... 16
2.4.1. Khái niệm số láng giềng và số thành phần liên thông16
2.4.2. Khái niệm điểm trong, điều kiện điểm cuối............. 17
2.4.3. Điểm đơn, điểm bội ................................................ 17
2.4.4. Số giao của điểm ảnh .............................................. 18
2.5. Các tính chất và yêu cầu đối với làm mảnh........................... 19
2.5.1. Yêu cầu về thời gian và số phép toán ...................... 19
2.5.2. Yêu cầu về khả năng tái tạo mẫu ban đầu ............... 20
2.5.3. Yêu cầu về tính đẳng hướng và tính bất biến .......... 20
2.5.4. Kiểm tra tính liên thông và topo............................. 20
2.5.5. Yêu cầu về tính hình học........................................ 20

1



Chương 3: Các thuật toán làm mảnh tuần tự.......................................... 21
3.1. Làm mảnh theo các điểm biên .............................................. 21
3.1.1

Thuật toán của Chu và Suen................................... 21

3.1.2

Thuật toán của Arcelli ............................................ 22

3.1.3

Thuật toán của Pavlidis .......................................... 23

3.1.4

Thuật toán của Kwork............................................ 24

3.2. Làm mảnh theo loạt.............................................................. 25
3.2.1. Thuật toán làm mảnh của Yakei............................. 25
3.2.2. Thuật toán làm mảnh SPTA ................................... 26
3.3. Nhận xét ............................................................................... 27
Chương 4: Phương pháp làm mảnh song song....................................... 28
4.1. Thuật toán làm mảnh song song sử dụng 1chu trình con....... 28
4.1.1. Thuật toán Rutovitz ............................................... 28
4.1.2

Thuật toán của Holt................................................ 30

4.1.3 Thuật toán của Favre và Keller .................................. 32

4.1.4

Thuật toán của Chen .............................................. 33

4.1.5

Thuật toán của Chin............................................... 34

4.2. Làm mảnh song song sử dụng 2 chu trình con ...................... 35
4.2.1.

Thuật toán của Zang-Suen .................................... 35

4.2.2.

Thuật toán sử dụng cả 4 và 2_chu trình con .......... 37

4.2.3

Thuật toán Suzuki ................................................. 38

4.2.4

Thuật toán của Guo............................................... 39

4.3. Làm mảnh song song 4 chu trình con ................................... 39
4.3.1

Thuật toán Stentiford ............................................ 39


4.3.2

Thuật toán Rosenfeld ............................................ 45

4.3.3

Thuật toán kết hợp song song và tuần tự_Hilditch 46

4.4. Nhận xét ............................................................................... 49

2


Chương 5: Các phương pháp làm mảnh không lặp ................................ 51
5.1. Phương thức xấp xỉ xương................................................... 51
5.2. Phương pháp dò theo biên ................................................... 52
5.3. Phương pháp tìm kiếm mò mẫm.......................................... 53
Chương 6: Phần cài đặt thực nghiệm ..................................................... 54
Kết luận................................................................................................. 61
Tài liệu tham khảo………………………………………………………64

3


LỜI NÓI ĐẦU
Thời đại công nghệ thông tin đã đặt một trang mới trong nghành
khoa học đặc biệt là khoa học nhận dạng, ngày này việc nhận dạng một đối
tượng ta đã dùng những thành quả của xử lý ảnh đặc biệt là phương pháp
làm mảnh đối tượng, những phương pháp này thay thế những phương pháp
thủ công trước đây và mang lại kết quả mong muốn. Trên thế giới đã ứng

dụng rộng rãi thành tựu của nghành khoa học nhận dạng, tuy nhiên tại Việt
Nam nghành này vẫn còn đang mới mẻ và chưa nhiều người quan tâm.
Thông tin hình ảnh và ngôn ngữ đóng vai trò quan trọng trong trao đổi
thông tin. Chính vì vậy trong những năm gần đây đã có sự kết hợp chặt chẽ
giữa ảnh và đồ họa trong lĩnh vực xử lý thông tin. Trong công nghệ thông
tin, xử lý ảnh chiếm một vị trí quan trọng, bởi các ứng dụng đa dạng và
phong phú của nó trong nhiều lĩnh vực khoa học. Xử lý ảnh cũng là bộ
phận quan trọng trong việc trao đổi thông tin giữa người và máy.
Thinning (làm mảnh) là một bước tiền xử lý nhằm cải biên ảnh phục
vụ cho những bước tiếp theo trong quá trình xử lý ảnh. Làm mảnh ảnh
chiếm một vị trí đặc biệt quan trọng trong khoa học nhận dạng. Đồ án này
giới thiệu các khái niệm, cách phân loại, và một số thuật toán làm mảnh
ảnh, những đánh giá cho từng loại thuật toán. Cấu trúc đồ án gồm năm
chương lý thuyết và một chương về cài đặt thực nghiệm. Trong đồ án này
sử dụng “làm mảnh” thay cho làm mảnh ảnh đường nét.
Mục đích của đồ án như sau:
 Tìm hiểu tổng quan về xử lý ảnh và các khái niệm cơ bản: ảnh số,
xử lý ảnh số, cách biểu diễn ảnh.
 Tìm hiểu và khai thác một số phương pháp làm mảnh ảnh đường
nét và các khái niệm: xương ảnh, làm mảnh ảnh, các yêu cầu đối với làm
mảnh ảnh, phân loại các phương pháp tìm xương, các phương pháp làm

4


mảnh ảnh; các khái niệm trong các thuật tóan làm mảnh ảnh: láng giềng, số
thành phần liên thông, điểm trong, điểm cuối, số giao, điểm đơn điểm bội;
các thuật toán làm mảnh ảnh tuần tự, song song, và tìm hiểu sơ bộ về thuật
toán làm mảnh không lặp.
Cấu trúc đồ án gồm sáu chương: trong đó có năm chương lý thuyết

và một chương thực nghiệm.
Chương 1: Những nét cơ bản về xử lý ảnh.
Chương 2: Tổng quan về làm mảnh ảnh.
Chương 3: Các thuật toán làm mảnh tuần tự.
Chương 4: Các thuật toán làm mảnh song song.
Chương 5: Các phương pháp làm mảnh không lặp.
Chương 6: Phần cài đặt thực nghiệm.

5


Chương 1
NHỮNG NÉT CƠ BẢN VỀ XỬ LÝ ẢNH
1.1. Giới thiệu sơ bộ về xử lý ảnh và biểu diễn ảnh
1.1.1. Khái niệm ảnh số
Ảnh tạo bởi các điểm ảnh, điểm ảnh đặc trưng cho một giá trị nào đó
là một hàm n biến. Ảnh trong thực tế là một ảnh liên tục về không gian và
về giá trị độ sáng. Để có thể xử lý bằng máy tính cần thiết phải tiến hành số
hóa ảnh. Trong quá trình số hóa, người ta biến đổi tín hiệu liên tục sang tín
hiệu rời rạc thông qua quá trình lấy mẫu (rời rạc hóa về không gian) và
lượng hóa thành phần giá trị mà về nguyên tắc bằng mắt thường không
phân biệt được hai điểm kề nhau.

1.1.2. Xử lý ảnh
Xử lý ảnh có quan hệ mật thiết với nhận thức về ảnh của con người.
Cũng như xử lý dữ liệu bằng đồ họa, xử lý ảnh số là một lĩnh vực của tin
học ứng dụng. xử lý dữ liệu bằng đồ họa đề cập đến những ảnh nhân tạo,
các ảnh này được xem xét như là một cấu trúc dữ liệu và được tạo ra bởi
các chương trình. Xử lý ảnh số bao gồm các phương pháp và kỹ thuật để
biến đổi, để truyền tải hoặc mã hóa các ảnh tự nhiên. Mục đích của xử lý

ảnh bao gồm:
o Biến đổi ảnh và làm đẹp ảnh.
o Tự động nhận dạng ảnh hay đoán nhận ảnh

1.1.3. Biểu diễn ảnh
Ảnh có thể biểu diễn dưới dạng tín hiệu tương tự hoặc tín hiệu số.
Trong biểu diễn số của các ảnh đa mức xám, một ảnh được biểu diễn dưới
dạng một ma trận hai chiều. Mỗi phần tử ma trận biểu diễn cho mức xám
hay hay cường độ của ảnh tại vị trí đó. Mỗi phần tử trong ma trận được gọi

6


là một phần tử ảnh, thông thường kí hiệu là PEL (Picture Element) hoặc là
điểm ảnh (Pixel).
o Ảnh nhị phân
Tùy theo vùng các giá trị xám của điểm ảnh, mà các ảnh được phân
chia ra thành ảnh màu, ảnh xám, hay ảnh nhị phân. Khi trên một ảnh chỉ
tồn tại các giá trị 0 hoặc 1 thì ta nói đó là một ảnh nhị phân và các điểm ảnh
của nó gọi là điểm ảnh nhị phân. Ta chỉ cần sử dụng 1 bit để biểu diễn cho
một điểm ảnh nhị phân.
o Với ảnh xám: Nếu dùng 8 bit (1 byte) để biểu diễn mức xám, thì
số mức xám có thể biểu diễn được là 2 8 hay 256. Mỗi mức xám được biểu
diễn dưới dạng một số nguyên nằm trong khoảng từ 0 đến 255, với mức 0
biểu diễn cho mức cường độ đen nhất và 255 biểu diễn cho mức cường độ
sáng nhất.
o Với ảnh màu: Cách biểu diễn cũng tương tự như ảnh xám, chỉ
khác là các số tại mỗi phần tử của ma trận biểu diễn cho ba màu riêng rẽ
gồm: đỏ (red), lục (green) và lam (blue). Để biểu diễn cho một điểm ảnh
cần 24 bit, 24 bit này được chia thành các khoảng 8 bit. Mỗi khoảng này

biểu diễn cho cường độ sáng của một trong các màu chính. Hình 1 biểu
diễn việc số hóa ảnh:

Pixel

Độ sáng trung bình trong
mỗi hình chữ nhật = giá trị một điểm ảnh.

Hình 1_ Biểu diễn của một mức xám của ảnh số.

7


Trong hình này một lưới chia ô vuông tưởng tượng được đặt lên ảnh.
Độ lớn mỗi ô vuông của lưới xác định kích thước của một điểm ảnh. Mức
xám của một điểm được tính bằng cường độ sáng trung bình tại mỗi ô
vuông này. Mắt lưới càng nhỏ thì cho chất lượng ảnh càng cao. Trong kỹ
thuật truyền hình tiên tiến, mục đích là cung cấp cho người xem, hình ảnh
chất lượng cao, với độ phân giải gấp hai lần so với các chuẩn hiện nay.
Trong kỹ thuật tương tự, một bức ảnh thường được biểu diễn dưới
dạng các dòng nằm ngang kế tiếp nhau. Mỗi dòng là một tín hiệu tương tự
mang theo các thông tin về cường độ sáng dọc theo một đường nằm ngang
trong ảnh gốc. Thuật ngữ tương tự được dùng để mô tả cho các ảnh quét
liên tiếp như thế này nhưng thực tế ảnh chỉ tương tự dọc theo hướng nằm
ngang. Nó là rời rạc khi xét theo hướng dọc, chính vì vậy mà tín hiệu ảnh là
tín hiệu lai nửa tương tự, nửa số.

1.1.4. Các khái niệm trong xử lý ảnh
Ta xét hai khái niệm (thuật ngữ) thường dùng trong xử lý ảnh đó là Pixel
(phần tử ảnh) và gray level (mức xám):

o Pixel (Picture Element): phần tử ảnh
Người ta sử dụng khái niệm Picture element mà ta quen gọi là Pixel- phần
tử ảnh. Điểm ảnh được xem như là dấu hiệu hay cường độ sáng tại một tọa
dộ không gian của đối tượng. Mỗi pixel gồm một cặp tọa độ x, y và màu.
Cặp tọa độ x, y tạo nên độ phân giải (resolution). Người ta thường kí hiệu
I(x,y) để chỉ một pixel. Một pixel có thể lưu trữ trên 1,4,8 hay 24 bit.
o Ảnh (Image) : Là một tập hợp các điểm ảnh. Khi được số hóa, nó
thường được biểu diễn bởi mảng hai chiều I(n,p): n là dòng, p là cột, ta nói
ảnh gồm n x p Pixel. Ta kí hiệu I(x,y) để chỉ một điểm ảnh.
o Mức xám (Gray level): Mức xám là kết quả sự mã hóa tương ứng
một cường độ sáng của mỗi điểm ảnh với một giá trị số - kết quả của quá
trình lượng hóa. Cách mã hóa kinh điển thường dùng 16, 32 hay 64 mức.

8


Mã hóa 256 mức là phổ dụng nhất. Vì 28 = 256 (0, 1,…, 255), nên với 256
mức, mỗi pixel sẽ được mã hóa bởi 8 bit.
o Lược đồ mức xám (Histogram): Là một hàm cung cấp tần suất
xuất hiện của mỗi mức xám. Lược đồ mức xám được biểu diễn bởi hệ tọa
độ vuông góc x,y. Trong hệ tọa độ này, trục hoành biểu diễn số mức xám
từ 0 đến N, N là số mức xám (Số điểm ảnh có cung mức xám).

1.2. Nhận dạng
Nhận dạng là một ứng dụng quan trọng của làm mảnh. Nhận biết và
đánh giá các nội dung của ảnh (nhận dạng) là sự phân tích một hình ảnh
thành những phần có nghĩa để phân biệt đối tượng này với đối tượng khác.
Dựa vào đó ta có thể mô tả cấu trúc của hình ảnh ban đầu. Có thể liệt kê
một số phương pháp nhận dạng cơ bản như nhận dạng biên của một đối
tượng trên ảnh, tính cạnh, phân đoạn hình ảnh, v.v…Kỹ thuật này được

dùng nhiều trong y học (xử lý tế bào, nhiễm sắc thể), nhận dạng chữ trong
văn bản. Nhận dạng là quá trình liên quan đến mô tả đối tượng mà người ta
muốn đặc tả nó. Quá trình nhận dạng thường đi sau quá trình chọn các đặc
tính của đối tượng. Có hai kiểu mô tả đối tượng:
 Mô tả tham số (nhận dạng theo tham số).
 Mô tả theo cấu trúc (nhận dạng theo cấu trúc).
Trên thực tế, người ta đã áp dụng kỹ thuật nhận dạng chữ (chữ cái, chữ số,
chữ có dấu). Hiện nay có các phương pháp nhận dạng chữ bằng phương
pháp cấu trúc, vecto hóa đường nét các ảnh bản đồ, nhận dạng đối tượng
theo cấu trúc topo…
Nhận dạng chữ in hoặc đánh máy phục vụ cho việc tự động hóa quá
trình đọc tài liệu, tăng tốc độ và chất lượng thu nhận thông tin từ máy tính.
Nhận dạng chữ viết tay (với mức độ dàng buộc nhau về cách viết,
kiểu chữ, v…,v) phục vụ cho nhiều lĩnh vực.

9


Ngoài 2 kỹ thuật nhận dạng trên, hiện nay một kỹ thuật nhận dạng
mới dựa vào kỹ thuật mạng nơron đang được áp dụng và cho kết quả khả
quan.

10


Chương 2
TỔNG QUAN VỀ LÀM MẢNH ẢNH
2.1. Xương và các phương pháp tìm xương
2.1.1. Thế nào là xương và làm mảnh ảnh?
Làm mảnh là việc tìm xương của một đối tượng ảnh, vậy “Xương

ảnh là gì?”. Xương của ảnh được sử dụng để chỉ kết quả mà không quan
tâm đến hình dạng chuẩn của mẫu hoặc các phương thức được sử dụng.
Cho đến nay vẫn chưa có một định nghĩa thuyết phục về xương ảnh. Tệ
hơn chúng ta không biết một xương khi chúng ta nhìn thấy nó, Điều này
thật đáng tiếc, bởi vì việc phát sinh xương số thường là bước xử lý đầu tiên
bởi một hệ thống máy tính. Vì vậy việc tìm xương ảnh, tức là tìm ra những
nét đặc trưng cho một đối tượng ảnh, là một điều hết sức khó khăn.
Xương được coi như hình dạng cơ bản của một đối tượng, với số ít
các điểm ảnh cơ bản. Ta có thể lấy các thông tin về hình dạng nguyên bản
của một đối tượng thông qua xương. Vị trí, sự định hướng, độ dài của một
đoạn xương ảnh đặc trưng cho đoạn ảnh đó. Nhiệm vụ đặt ra là phải định rõ
đặc điểm thành phần của đoạn ảnh.
Nói cách khác, làm mảnh có thể được xem là việc đồng nhất các
điểm ảnh của một đối tượng mà các điểm ảnh đó chứa thông tin về hình
dáng của đối tượng, các điểm ảnh này được gọi là các điểm xương ảnh, và
là một bộ mẫu.
Các kỹ thuật tìm xương luôn là chủ đề nghiên cứu trong xử lý ảnh.
Do tính phức tạp của nó mặc dù có những nỗ lực cho việc phát triển các
thuật toán tìm xương nhưng các phương pháp đưa ra đều bị mất thông tin.
Chú ý về làm mảnh như sau:
 Không phải tất cả các đối tượng đều có thể làm mảnh. Làm mảnh
chỉ hữu dụng với các đối tượng là đường, nghĩa là chúng chỉ thẳng hoặc
cong và nó không có tác dụng với các đối tượng chỉ đóng trong một vùng.

11


 Làm mảnh thông thường là bước chuẩn bị cho các bước tiếp theo
xử lý một đối tượng ảnh. Các bước tiếp theo làm việc trên các thuộc tính
cần thiết của xương.

 Làm mảnh là việc đồng nhất xương, và nó không phải luôn là sự
tác động lên việc lấy đi các lớp điểm ảnh bên ngoài.

2.1.2. Phân loại các phương pháp tìm xương
Có hai phương pháp tìm xương cơ bản:
Phương pháp thứ nhất sử dụng phép biến đổi trục trung vị (Medial
axis transformation), trục trung vị được xác định bằng cách nối các điểm
trung tâm của khối bao bọc đối tượng, các điểm trung tâm thông thường
được tính bằng các hàm khoảng cách cực đại). Phương pháp này gọi là
phương pháp tìm xương không dựa trên làm mảnh.
Phương pháp thứ hai bao gồm các thuật toán làm mảnh (thining)
bằng cách loại bỏ các điểm thuộc trên biên của đối tượng mà không làm
thay đổi tính liên thông và cấu trúc Tôpô của ảnh cho đến khi độ rộng cắt
ngang của các đường bằng một đơn vị (một pixel). Đây chính là phương
pháp dựa trên làm mảnh.

2.2. Phương pháp thay đổi trục trung vị
Có thể người đầu tiên định nghĩa xương là Blum (1976) [3], thông
qua việc xác định hàm trung vị (MAF_Medial axis function). Hàm MAF
xử lý tất cả các điểm ảnh trên đường biên như các điểm nguồn của mặt
sóng trước. Mỗi một điểm ảnh lại tác động lên các láng giềng của nó với
một thời gian trễ tương ứng với khoảng cách, do vậy chúng cũng trở thành
một phần của sóng trước. Sóng truyền qua mỗi điểm chỉ một lần và khi hai
sóng gặp nhau chúng sẽ triệt tiêu nhau, sinh ra một góc. Trục trung vị
(MA_Medial axis) là qũy tích của các góc này, và là mẫu xương của một
đối tượng. MFA sử dụng hai thông tin cả về không gian lẫn thời gian, và có
thể đảo ngược lại ảnh gốc.

12



Có thể xác định trục trung vị bằng cách xác định biên của đối tượng,
bởi vì mỗi một điểm p trên đối tượng đều có thể bao bởi một đường biên.
Nhược điểm của vấn đề này là phải được thực hiện với độ phân giải cao
hoặc khoảng cách O-clit là không bằng nhau, nghĩa là các ảnh xương sẽ
mất đi. Từ đó ta có thể thu được một xấp xỉ của trục trung vị trên một luới
sau hai bước:
 Bước thứ nhất, tính toán khoảng cách từ mỗi điểm ảnh của đối
tượng đến điểm biên gần nhất. Việc này yêu cầu phải tính toán khoảng cách
tới tất cả các điểm ảnh đường biên.
 Bước thứ hai, dựa vào khoảng cách đã tính toán lọc ra các điểm
ảnh có giá trị rộng nhất được xem là nằm trên trục trung vị.
Khoảng cách ảnh hưởng lớn đến kết quả, giống như Hình 2. Trục
trung vị đã được tìm thấy thông qua cách sử dụng khoảng cách O-clit, 4khoảng cách, 8-khoảng cách. 4-khoảng cách trong các điểm ảnh A và B là
con số nhỏ nhất của sự di chuyển cần thiết theo chiều ngang và dọc của A
và B. 8-khoảng cách là khoảng cách di chuyển nhỏ nhất của các điểm ảnh
theo chuẩn tám hướng cần thiết từ A đến B. Có sự khác nhau trong các trục
trung vị được sinh ra theo các khoảng cách được tính toán, nhưng một
trong chúng có thể sử dụng như một xương.

13


(a)

(b)

(c)

Hình 2_ ảnh hưởng của hàm khoảng cách trên trục trung vị. (a)

Trục trung vị (bên trên) và xương (bên dưới) của đối tượng chữ T,
sử dụng 4-khoảng cách. (b) Trục trung vị và xương thu được khi sử
dụng 8-khoảng cách. (c) sự tính toán sử dụng khoảng cách O-clit.
Nhiều ý kiến cho rằng thay đổi trục trung vị không mang lại một xương
chuẩn, và thời gian tính toán quá dài. Nhưng nó được coi là mẫu cơ bản của
phần lớn các phương pháp làm mảnh.

2.3. Phương pháp tìm xương dựa trên làm mảnh
Phương pháp này chia làm hai loại chính: Làm mảnh lặp và làm
mảnh không lặp. Phần này, chúng ta quan tâm đến các dạng thuật toán làm
mảnh lặp, hay chính xác hơn là các thuật toán xóa lần lượt các lớp điểm
ảnh trên đường biên của mẫu cho đến khi chỉ còn thu được xương của ảnh.
Việc xóa đi hay giữ lại một điểm ảnh, các thuật toán có thể được phân lớp
thành các thuật toán tuần tự hay song song.
o Đối với một thuật toán tuần tự, các điểm ảnh được xóa đi theo một
trật tự nhất định trong mỗi lần lặp, chẳng hạn từ trái sang phải, từ trên
xuống dưới. Giá trị các điểm ảnh sau mỗi lần lặp không những phụ thuộc

14


giá trị dưới giá trị của các láng giềng mà còn phụ thuộc vào các điểm ảnh
đã được xét trước trong chính vòng lặp đó.
o Đối với thuật toán làm mảnh song song, các điểm ảnh được xử lý
cùng một lúc. Giá trị các điểm ảnh sau mỗi lần lặp chỉ phụ thuộc vào giá trị
các điểm láng giềng.
Theo các kiểu thực hiện và tiêu chuẩn kiểm tra pixel của nó các thuật
toán tuần tự có thể được tiến hành bằng cách chỉ xử lý các pixel đường viền
hoặc bằng cách đọc theo loạt, còn các thuật toán song song lại sử dụng 4, 2
hoặc 1 vòng lặp con.

Cả hai kiểu thuật toán đều có thể bảo đảm tính liên thông bằng cách
tìm ra các số giao XR(p) hoặc XH(p), bằng cách chỉ xóa đi các pixel không
phải là điểm cuối, hoặc bằng cách giữ lại các pixel bội.

2.4. Các khái niệm cơ bản trong các thuật toán làm mảnh.
2.4.1. Khái niệm số láng giềng, số thành phần liên thông
Xét điểm p(i, j) và các điểm lân cận của p:

x4

x3

x2

x5

P

x1

x6

x7

x8

Hình 3_ Dạng lân cận của điểm ảnh p.
Có hai dạng lân cận, dạng tám lân cận như: x1,x2,…,x8 là 8 láng riềng
của p và được biểu diễn bởi N(p). dạng 4 lân cận như: x1, x 3, x5, x7 là 4
láng giềng hay kề 4 của p. Ta sử dụng xi để chỉ các điểm ảnh và xi được gọi

là đen hoặc trắng tương ứng giá trị 1 hoặc 0 của nó. Quy ước điểm x1 hay
(i+1, j) là điểm phía Nam, điểm x 7 hay (i, j+1) là điểm phía Đông, tương tự
như vậy điểm x 5 hay (i-1, j) là điểm phía Bắc, điểm x3 hay (i, j-1) là điểm
phía Tây.

15


Số các điểm ảnh đen trong N(p) được gọi là b(p). Một trật của các
điểm ảnh y1, y2, …, y8 ( hoặc y1, y3, y5, y7 ) được gọi là một 8_đường đi (
hoặc 4_đường đi ) nếu yi+1 là một trong 8 láng riềng của yi (i=1,2,.., n-1).
Một bộ con Q của ảnh P được gọi 8_liên thông (hay 4_liên thông)
nếu mọi cặp x, y trong Q đều tồn tại 8_ đường đi (hoặc 4_ đường đi) từ x
đến y phù hợp với các điểm của Q. Trong trường hợp này, Q được gọi là
một 8_thành phần (hoặc 4_thành phần ) của P.
Các điểm ảnh được xét để xóa đi là các điểm ảnh đường biên. Điểm
biên thường được định nghĩa với ít nhất 1 điểm ảnh trắng trong các láng
giềng.

2.4.2. Khái niệm điểm trong, điều kiện điểm cuối
Các điểm đen không phải là điểm biên được gọi là điểm trong của
ảnh. Chúng ta quan tâm đến p là điểm cuối và được giữ lại nếu b(p) = 1,
đây là điều kiện điểm cuối. Điều kiện này cũng được một số tác giả đưa ra
với những dạng khác nhau: p có thể được giữ lại khi có 2 hoặc 3 các điểm
ảnh đen phối hợp trên một bên của N(p) (N. J. Nacache [3]), điều kiện này
có thể được áp dụng chỉ sau hai vòng lặp đầu tiên (M. I. Izuts.dkiver [3]),,
hoặc rất có thể nó sẽ bị bỏ qua hoàn toàn để tránh các nhánh giả (M. Beun
[3]).
Phần lớn sự khác nhau giữa các thuật toán là chúng có đảm bảo tính
liên thông hay không. Tính chất này được định nghĩa dựa vào số giao, số

liên thông, số điểm ảnh đơn.

2.4.3. Điểm đơn, điểm bội
Bậc của P được định nghĩa là số các thành phần liên thông của P trừ
đi số lỗ hổng của P. Đối với bất kỳ điểm ảnh p nào, hiệu quả của nó trên
bậc G có thể được xác định một cách hoàn chỉnh theo N(p).
Nếu xóa p không làm thay đổi G thì p gọi là “đơn”. Có 256 hình
dạng của N(p), một điểm p là đơn có thể được lưu trong bảng kiểm tra.

16


Các điểm ảnh có tính liên thông Nc8 lớn hơn 1 thuộc vào loại điểm
ảnh bội (T. Pavlidis [10]), những điểm không có láng giềng nào nằm trong
đối tượng. Chúng bao gồm các điểm cuối nhánh, hay những điểm không có
láng giềng nằm bên trong đối tượng, các nét vẽ có độ dày 2 điểm ảnh được
quy ra xương dựa trên tiêu chuẩn liên thông. Do đó, các điểm ảnh này được
giữ lại trong quá trình làm mảnh.

2.4.4. Số giao của điểm ảnh
Có hai định nghĩa về độ đo hữu dụng này:
o Số giao Rutovitz: Rutovitz [6] là người đầu tiên đưa ra định nghĩa,
coi tính liên thông là số lần chuyển một điểm trắng thành một điểm ảnh đen
và ngược lại khi các điểm ảnh của N(p) được đặt ngược lại chiều kim đồng
hồ. Vậy số giao của điểm ảnh được định nghĩa như sau:
8

XR(p) =




(|xi-1- xi|)

(1)

i 1

trong đó x9 = x1. Việc xóa đi p không làm ảnh hưởng đến 4_liên thông nếu
XR(p) = 2. Tuy nhiên bởi 4_thành phần tách rời có thể được 8_liên thông,
các xương thu được sử dụng số giao này có thể chứa các điểm ảnh xóa
được, và các xương đó đôi khi cũng được nói là 8_liên thông một cách
chưa hoàn chỉnh (Y. S. Chen [3]).
o Số giao Hilditch (số giao XH(p)): là số lần nhảy từ điểm trắng
sang điểm đen khi các điểm này đang được đặt trong thứ tự, cắt góc giữa kề
4 đen và 4_láng giềng. Do đó:
4

XH(p)=



bi

(2)

i 1

Với:
bi = 1 nếu x2i-1=0 và (x2i=1 hoặc x2i+1)
bi= 0 nếu ngược lại.


Khi p có 4_láng giềng đều là đen, trong trường hợp này XH(p)=0.

17


Có thể thấy rằng, đối với cả hai định nghĩa của số giao, 1 điểm ảnh
có cả 8_láng riềng đều là đen thì có số giao bằng 0, như một điểm ảnh bị cô
lập. Nếu XH(p)=1 thì việc xóa đi p không làm thay đổi tính 8_liên thông
của mẫu.
Dễ dàng tính số giao XH(p) là số 8_liên thông được định nghĩa như sau:
N c8 =

4



( x 2i-1- ( x 2i-1. x 2i. x 2i+1 ))

(3)

i 1

Với x là phủ định của x, mặt khác với 4_liên thông:
N c4 =

4




(x2i-1- (x 2i-1.x2i .x2i+1))

(4)

i 1

Ở đây Nc8 bằng số lần của điểm ảnh p được đặt trên một đường biên
do đó các điểm ảnh được giữ lại (Khi Nc8 (p) > 1) được đặt nhiều lần trong
quá trình vạch, Đồng thời các điểm ảnh xóa được được gọi là các điểm ảnh
đơn. Một điểm ảnh biên p không bị cô lập là đơn nếu N(p) có duy nhất một
thành phần là đen, điều này tương đương với XH(p) = 1.

2.5. Các tính chất và yêu cầu đối với làm mảnh
Phần này giới thiệu về các yêu cầu, tính chất đối với 1 thuật toán làm
mảnh và khả năng đáp ứng của từng loại thuật toán. Các tính chất bao gồm
việc duy trì được những thuộc tính tô pô và các tính chất hình học, tính
đẳng hướng, tính bất biến, khả năng tái tạo, không mất tính liên thông,
không tạo ra lỗ hổng, trơn, không xóa điểm cuối. Bên cạnh đó còn có các
yêu cầu về hiệu quả, giảm thiểu số phép tính.

2.5.1. Yêu cầu về thời gian và số phép toán
Các phương thức làm mảnh không lặp, không phụ thuộc vào điểm
ảnh, có hiệu quả trong việc giảm số các phép toán cần thiết, chúng làm tăng
tốc độ xử lý. Nhìn chung, các thuật toán làm mảnh song song đã thỏa mẫn
điều này, đặc biệt khi mà các cấu trúc xử lý ảnh song song đang ngày càng
tăng. Đây là một bước tiến quan trọng trong lĩnh vực làm mảnh.

18



2.5.2. Yêu cầu về khả năng tái tạo mẫu ban đầu
Khả năng tái tạo, hay còn gọi là khả năng phục hồi lại mẫu ban đầu
từ một xương. Những điều kiện này, nhìn chung phù hợp với những thuật
toán dựa trên trục trung vị.

2.5.3. Yêu cầu về tính đẳng hướng và tính bất biến
Đa số các thuật toán lặp đều đảm bảo tính đẳng hướng hoặc tính bất
biến dưới một phép quay. Trong các thuật toán tuần tự, kết quả thu được
dựa trên thứ tự của các điểm ảnh được kiểm tra, còn trên các thuật toán
song song xóa đi một hay hai kiểu điểm biên trên mỗi vòng lặp con, thì
xương thu được phụ thuộc vào thứ tự của các vòng lặp con này. Trong khi
đó thì việc thay đổi trục trung vị không bất biến dưới 1 phép quay bởi tính
không đầy đủ của các thuật toán.

2.5.4. Kiểm tra tính liên thông và topo
Trong thuật toán tuần tự, kiểm tra một vùng 3  3 láng giềng dưới
dạng số giao. Các thuật toán song song giải quyết vấn đề này bằng cách
chia mỗi chu trình ra thành nhiều các vòng lặp con hoặc bằng cách giữ một
vùng láng giềng rộng hơn trong một vòng lặp.

2.5.5. Yêu cầu về tính hình học
Yêu cầu về tính hình học là yêu cầu khó khăn nhất, khó khăn chính
là sự đạt được tính đơn giản của thuật toán, nó cho phép giữ lại một vùng
nhỏ của các láng giềng, nhưng các láng giềng này lại cần thiết để phân biệt
giữa điểm cuối giả và các điểm cuối thực. Để tránh sự xói mòn quá mức và
việc tạo ra các điểm cuối giả cùng một lúc, chúng ta phải có những cách
khác nhau nhằm loại trừ điều kiện điểm cuối.

19



CHƯƠNG 3
CÁC THUẬT TOÁN LÀM MẢNH TUẦN TỰ
Khi sử dụng các thuật toán làm mảnh tuần tự, các điểm biên được sử
dụng để kiểm tra để xóa đi theo một thứ tự định trước, điều này hoàn toàn
có thể được hoàn thành bằng phương pháp dò theo loạt hoặc theo biên.

3.1. Làm mảnh theo các điểm biên
Các thuật toán dò biên có thể xét đến tất cả các điểm ảnh biên của
một đối tượng đơn liên thông (Rosenfeld [8]), hay một đa liên thông. Các
đường biên theo vết được sử dụng chuỗi mã hóa của Freeman [5].
Khi một điểm ảnh p được xét, nó sẽ được xóa đi hay giữ lại tùy vào
cấu trúc của N(p). Để ngăn chặn sự xóa đi một cách tuần tự cả một nhánh
trên một vòng lặp một thuật toán tuần tự sẽ đánh dấu các điểm sẽ bị xóa ở
cuối vòng lặp. Điều này đảm bảo chỉ có một lớp các điểm ảnh sẽ bị xóa đi
trên mỗi chu trình.
Để tránh phải nhắc lại, chúng ta giả sử rằng một điểm p được xóa đi nếu tất
cả các điều kiện sau đây được thỏa mãn:
1. p là một điểm ảnh đen.
2. p không phải là một điểm bị cô lập hoặc điểm cuối, b(p) ≥ 2.
3. p là một điểm ảnh đường biên, p có ít nhất một trong 4_láng
giềng là trắng.

3.1.1. Thuật toán của Chu và Suen
Trong thuật toán này việc làm trơn được thực hiện trước mỗi vòng
lặp. Trên mỗi vòng lặp các điểm biên thỏa mãn các điều kiện của thuật toán
được đánh dấu xóa với điều kiện điểm cuối. Khi không còn điểm ảnh nào
có thể xóa được nữa, một giai đoạn chỉnh lí cuối cùng được đưa ra mà trên
đó các điểm ảnh xương sẽ được chuyển cho một trong 4_láng giềng của nó.
Trong quá trình xử lý, tính liên thông của xương được đảm bảo trong các

điểm xương được di chuyển dần tới đường trung vị của mẫu gốc.

20


3.1.2. Thuật toán của Arcelli
Số giao Rutovitz XR(p) được sử dụng để xác định việc xóa các điểm
ảnh. Trên các thuật toán này, một định nghĩa khác của điểm biên được sử
dụng: ở đây, một điểm biên đen có ít nhất một láng giềng là trắng. Điều
kiện này đòi hỏi một điều kiện bổ sung (F=x 1. x 3 .x 5 .x 7 = 0) để đảm bảo rằng
không tạo ra các lỗ hổng khi các điểm đường biên được xóa đi. Bổ sung
các điều kiện cho khả năng xóa p nhưng vẫn đảm bảo tính liên thông được
đưa ra trong thuật toán này như sau:
1. Nếu XR(p)=0 hoặc 8 thì p không thể xóa được.
2. Nếu XR(p)= 2 thì p được xóa đi nếu F = 0 và p không phải là một
điểm cuối.
3. Nếu XR(p) = 4 thì p được xóa đi nếu và chỉ nếu F=0 và thỏa mãn
điều kiện :
4



x2i-1. x 2i .x 2i +1= 1

(5)

i 1

4. Nếu XR(p) = 6 thì p được xóa đi nếu và chỉ nếu:
4




x2i-1 = 3

(6)

i 1

Tuy nhiên, sử dụng các điều kiện trên bản thân chúng sẽ tạo các
điểm cuối giả và các góc ăn mòn.
Khi thu được một bộ Sf với một lõi rỗng, mỗi điểm ảnh p được giữ
lại trên Sf được gán một nhãn:
e(p)= 2(x3 + x 5 ) + x1 + x 7 + 1

(7)

Các điểm ảnh không lớn nhất dưới nhãn này được xóa đi, kết quả thu được
hầu hết các xương có độ dày là 2 điểm ảnh.
Xương thu được theo cách này có thể bị ảnh hưởng mạnh tại điểm
cuối cùng một nhánh bởi một hình dạng của một khối lồi ra trên một mặt.

21


3.1.3. Thuật toán của Pavlidis
Định nghĩa các điểm bội được thay đổi, người ta cũng đề xuất một sự
phối hợp giữa tuần tự và song song rất có thể có hiệu quả hơn đối với những
điểm ảnh mà trên đó không đòi hỏi phải xử lý. Đối với các ảnh như vậy mẫu
có thể được chia ra thành các phần và ấn định cho từng bộ điều khiển. Mỗi

một bộ điều khiển hoạt động trên các điểm ảnh trong phần của nó một cách
lần lượt, và khi các bước đã hoàn thành, nó đợi đến khi tất cả các bộ điều
khiển khác hoàn thành trên cùng bước như vậy để cho các bộ điều khiển có
thể được tiến hành đồng thời.
Thuật toán này chủ yếu đảm bảo tính liên thông của xương bằng cách
phát hiện và gán các điểm bội M cho xương S rồi tìm và gán cho S các điểm
ảnh thích hợp để liên kết M với bên trong của P. Vì điều này có thể thu được
các xương có độ dày không thích hợp khi không đảm bảo rằng làm mảnh
được đa số, do đó phải đan xen xóa đi được các điểm không bội từ biên C và
giữ lại phần S.
Khái niệm điểm bội được phát triển theo một quan điểm khác, nó được
xem như là đối lập với những đường cong đơn giản. Trong mặt phẳng liên
tục, một đường cong (kín) được gọi là đơn giản nếu nó không bao giờ cắt
chính nó; bởi thế đường cong đơn giản chia mặt phẳng thành hai phần liên
thông gọi là bên trong và bên ngoài.
Điều này cũng được mở rộng trên đường biên C của một mẫu số P cho
một mẫu đơn liên thông và cho một mẫu đa liên thông. Đặc biệt C được coi
là đơn giản, qui định rằng nó không chạm hay gối lên chính nó, và một khái
niệm tổng thể được tìm ra tương đương với điều kiện địa phương. Nếu chúng
ta coi P – C là biên trong của C và P là biên ngoài của C thì C là đơn giản,
quy ước rằng mọi điểm trong p đều thỏa mãn điều kiện:
A1: N(p) ∩ C gồm một thành viên (8_liên thông) ở trong và một
thành viên (4_liên thông) ở ngoài.

22


A2: N(p) ∩ C có chứa ít nhất hai điểm ảnh ngang hay dọc. một
thuộc bên trong, một thuộc bên ngoài.
Các điểm ảnh thỏa mãn điều kiện A1 và A2 gọi là những điểm ảnh thường

còn những điểm khác không phải điểm ảnh thường là diểm bội. Do A1 tính
toán phức tạp nên tương đương với A1 thì A2 có các điểm ảnh p là bội khi
A2 thỏa mãn ít nhất một trong các điều kiện sau:
A3: Các điểm p hoặc dọc hoặc ngang thì cứ một thuộc P – C một
thuộc P – C
A4: N(p) có ba điểm liên tiếp ở giữa mà một là láng giềng trên đường
chéo và phụ thuộc vào C, hai điểm còn lại phụ thuộc vào P
Các điều kiện A3 và A4 có các điều kiện thuận lợi địa phương nên
được kiểm tra dễ dàng khi các điểm biên được định vị. Bằng cách kiểm tra
các điểm bội trên sự biến đổi 4_khoảng cách của P, mỗi đường biên kế tiếp
được xác định bởi nhãn của nó trên sự biến đổi khoảng cách, do đó làm
mảnh có thể được hoàn thành trên một loạt. Trong suốt quá trình kiểm tra
này, các láng giềng của một điểm ảnh đã bị xóa đã được kiểm tra rồi nhưng
vẫn phải kiểm tra lại để xác minh xem chúng có bị trở thành điểm bội do
việc bắt buộc phải giữ tính liên thông không.

3.1.4. Thuật toán của Kwok
Các thuật toán trên thường dựa trên việc kiểm tra các điểm biên để xóa
đi hay giữ lại. Một phương thức khác để thu được xương là từ việc tạo sinh
biên hoặc tạo sinh lặp một đường biên mới tồn tại bên trong cho đến khi chỉ
còn lại xương [5]. Quá trình này được dựa trên hướng của các điểm biên. Khi
các điểm biên được dò theo một thứ tự, ba điểm liên tiếp sẽ tạo nên một góc
θ với đỉnh là điểm p hiện thời. Các điểm trong của N(p) gần nhất với phân
giác của góc θ được coi như nằm trên đường biên tiếp theo, và p được xóa đi.
Khi thủ tục này lặp lại cho đến lúc không còn các điểm ảnh bên trong xóa
được, thì các đường biên còn lại tạo thành bởi một xương giả. Phương thức

23



đơn giản này được lọc kĩ càng và mở rộng bằng cách sử dụng mã xích
Freeman của các điểm biên sinh ra các đường biên mới. Mã xích này được
sử dụng cùng với việc xét các điểm ngắt và các điểm cuối, để nhận được tập
các qui tắc để sinh ra các chu tuyến mới. Khi các điểm biên mới được xác
định, thì mã xích cũng được tạo ra. Thuật toán này cũng được cài đặt trên
môi trường phân tán bằng cách gán các tập con không gối lên nhau của mẫu
cho các bộ điều khiển khác nhau để làm mảnh sau đó đồng bộ hóa thông tin
của các biên khi kết thúc mỗi vòng lặp. Trong một số sản phẩm gần đây, một
điểm biên được xóa đi nếu tất cả 4_láng giềng của nó trên mặt trong đều là
đen, trong trường hợp này, chuỗi các mã xích tương ứng với các đoạn của
đường biên mới thu được từ một bộ các điều kiện tiền định nghĩa có liên
quan đến độ cong địa phương.

3.2. Làm mảnh theo loạt
O’ Gorman đưa ra tiêu chuẩn làm mảnh mở rộng các cửa sổ thành kích
thước k  k (k > 3), ở đây tâm của các điểm ảnh (k-2)  (k-2) có thể bị xóa
đi cùng nhau nếu như các điểm ảnh biên trên cửa sổ có số giao Hilditch là 1
và nếu chúng chứa nhiều hơn (k-2) các điểm ảnh trắng 4_liên thông và nhiều
hơn (k-2) các điểm ảnh đen. Đối với tất cả các điểm ảnh đen, cửa sổ k  k
của nó được kiểm tra theo thứ tự k giảm cho đến khi k < 3 hoặc xóa đi điểm
trung tâm. Với các điểm lớn hơn của k, các lớp điểm ảnh dày hơn sẽ được
xóa đi trên một vòng lặp, do đó, để thu được xương của các mẫu dày thì chỉ
cần số vòng lặp ít hơn. Tuy nhiên, việc tăng tốc độ này phải đổi lại kết quả
thu được xương thô hơn (xương có nhiễu). Khi làm mảnh các mẫu lớn hơn,
việc sử dụng một số k lớn hơn có thể làm ảnh hưởng không tốt đến tốc độ xử
lý.

3.2.1. Thuật tóan làm mảnh của Yakei
Trong thuật toán này, mọi điểm ảnh đen được kiểm tra và gán theo
qui tắc:


24


o L(p) = 2 nếu x3 = 0 hoặc x 3 + x 5 + x7 = 0

(8)

o L(p) = 3 nếu x 3 + x 5 = 0 hoặc x 3 + x 5+ x 7+ x1 = 0

(9)

Vì thế, theo loạt thuật toán được thực hiện để xóa đi các điểm ảnh được
đánh dấu 2 hoặc 3, một cách tương ứng, các điểm ảnh được cung cấp
không phải là các điểm cuối và có số liên kết bằng 1. Mặc dù thuật toán
này đơn giản và cho xương liên thông, nhưng các đường có độ dày là một
số chẵn các điểm ảnh có thể bị loại bỏ hoàn toàn.

3.2.2. Thuật toán làm mảnh SPTA
SPTA [3] là một thuật toán tuần tự sử dụng hai loạt trên một chu
trình, đầu tiên là từ trái qua phải, và rồi từ trên xuống dưới. Trên mỗi bước
quét, p được đánh dấu để giữ lại (p là một điểm an toàn “safe point”) nếu
như một trong các điều kiện sau là đúng:
N1: N(p) thỏa mãn một trong hai cửa sổ như Hình 4 hoặc các dạng
quay của nó.
N2: N(p) chứa đúng hai điểm kề 4 là đen.
Các điều kiện này là tương đương với một điểm đường biên phía tây an
toàn p nếu có biểu thức logic sau:
x1(x2 + x3 + x7 + x 8)(x3 + x 4)(x 7 + x 6) = 0


(10)

Trên bước quét đầu tiên, các điểm đường biên phía tây được đánh
dấu, sau đó đến các điểm đường biên phía đông mà không phải là các điểm
an toàn phía tây, lặp lại quá trình này. Điều kiện N2 có tác dụng ngăn chặn
sự xói mòn quá mức của các đường chéo có độ dày 2 điểm ảnh, nhưng nó
có thể dẫn đến các nhánh nhiễu.

25


×