Thuật toán Zhang-Suen

Một phần của tài liệu Một số tiếp cận trong kỹ thuật làm mảnh ảnh (Trang 33 - 37)

cơ sở cho việc so sánh các thuật toán làm mảnh trong nhiều năm, bởi tính ƣu việt của thuật toán Zhang-Suen là một thuật toán nhanh, đơn giản khi thực hiện.

Thuật toán Zhang-Suen là một phƣơng pháp song song thuộc lớp các thuật toán làm mảnh song song, có nghĩa là giá trị mới cho bất kỳ điểm ảnh nào có thể đƣợc tính toán chỉ dùng các giá trị đã biết từ trong vòng lặp ngay trƣớc đó mà không cần quan tâm đến các giá trị ở các vòng lặp trƣớc nữa.

Do tính chất đó của thuật toán, nếu máy tính xử lý song song có một CPU xử lý cho mỗi điểm ảnh đã đƣợc cung cấp trƣớc, nó có thể xác định toàn bộ quá trình lặp tiếp theo một cách đồng thời. Vì hầu hết chúng ta không có một máy tính có kích thƣớc lớn nhƣ vậy và do tính chất song song của thuật toán không phải là bắt buộc, do dó chúng ta chỉ xem xét phiên bản của một chƣơng trình mà nó chỉ dùng 1 CPU.

Thuật toán bị bẻ gãy trong hai vòng lặp con, ví dụ thay vì 4 vòng lặp con của thuật toán Stentiford. Trong một vòng lặp con một điểm ảnh I(i,j) đƣợc xóa (hay đánh dấu cho thao tác xóa bỏ), nếu 4 điều kiện sau đƣợc thỏa mãn:

Giá trị liên kết của nó là 1.

Nó có 2 điểm láng giềng đen nhỏ nhất và không lớn hơn 6.

Một trong các điểm đen nhỏ nhất: I(i, j+1), I(i-1, j) và I(i, j-1) là điểm nền (điểm ảnh màu trắng).

Một trong các điểm nhỏ nhất I(i-1, j), I(i+1, j) và I(i, j-1) là điểm ảnh nền. Ở cuối vòng lặp con này tất cả các điểm đã đánh dấu đƣợc xóa bỏ.

Vòng lặp con tiếp theo sau làm tƣơng tự ngoại trừ bƣớc 3 và 4.

Một trong các điểm đen nhỏ nhất: I(i, j+1), I(i-1, j) và I(i, j-1) là điểm nền (điểm ảnh màu trắng).

Quay trở lại, bất kỳ điểm ảnh nào đã đánh dấu lại tiếp tục đƣợc xóa bỏ. Nếu ở cuối vòng lặp con không có điểm nào đƣợc xóa thì xƣơng hoàn toàn đƣợc xác định và chƣơng trình kết thúc.

Từ các kết quả thu đƣợc ta có một số nhận xét và đánh giá sau: Xƣơng dạng hình chữ T đặc biệt tốt.

Xƣơng dạng hình chữ V không biểu thị dấu hiệu nào của phần đuôi.

Xƣơng hình dạng chữ X vẫn còn thấy necking và xƣơng dạng số 8 cũng vẫn còn thể hiện các đƣờng gấp khúc.

Nhƣ vậy, thuật toán Zhang_Suen vẫn còn một số hạn chế khi xử lý các đối tƣợng dạng đặc biệt nhƣ dạng số 8, dạng chữ X,..., các xƣơng kết quả vẫn còn các necking. Chúng ta cần nghiên cứu đƣa ra các cải tiến cho thuật toán này nhằm khắc phục các hạn chế đó.

Một cải tiến của thuật toán đã đƣợc đề xuất bởi Holt (1987) mà nó nhanh hơn và không liên quan đến vòng lặp con.

Đầu tiên 2 vòng lặp con đƣợc viết nhƣ một biểu thức logic mà nó sử dụng 3x3 điểm láng giềng về các điểm ảnh quan tâm.

Vòng lặp con ở trên có thể đƣợc viết nhƣ sau:

V(c) ^ (~ edge(c) v (V(e) ^ V(s) ^ (V(n) v V(w))) (3. 1)

Đó là điều kiện dƣới cho các điểm trung tâm C tồn tại trong vòng lặp con đầu tiên. Hàm V cho giá trị của điểm ảnh (1 = đúng, đối với điểm ảnh thuộc đối tƣợng, 0 = sai, đối với các điểm ảnh nền), và hàm cạnh là đúng nếu điểm trung tâm C nằm trên biên của đối tƣợng, sự tƣơng xứng này có giữa 2 và 6 láng giềng và giá trị kết nối là 1. Các ký tự E, S, N và W tƣơng ứng với các điểm ảnh theo một hƣớng từ điểm ảnh trung tâm C: E nghĩa là hƣớng đông (tƣơng ứng với điểm ảnh I(i, j+1)), S nghĩa là hƣớng Nam (tƣơng ứng với điểm ảnh I(i+1, j)),...

Holt đã kết hợp 2 biểu thức 3. 1 và 3. 2 với một điều kiện kết nối bảo toàn cần thiết cho việc thực hiện tính toán song song và đƣa ra các biểu thức dƣới đây cho các điểm ảnh còn lại nhƣ sau:

V(C) ^ (~edge (C) v (edge (E) ^ V(N) ^ V(S)) v (edge(S) ^ V(W) ^ V (E)) v (edge(E) ^ edge (SE) ^ edge(S)) (3. 3)

Biểu thức này không phải là một sự thuyết phục khi nó đƣợc đƣa ra các hàm đơn giản là các giá trị điểm ảnh và về công bằng mà nói hàm cạnh phức tạp gần nhƣ hàm kết nối dùng trong thuật toán Stentiford. Kết qủa thu đƣợc từ thuật toán này là tốt nhất nhƣng nó không xác định cho thuật toán Zhang_Suen chuẩn. Tuy nhiên vẫn có thể đƣợc dùng đến.

Đôi lúc, khi quá trình làm mảnh hoàn thành vẫn có các điểm ảnh mà chúng có thể bị xóa bỏ. Chủ yếu là ở giữa các điểm ảnh có dạng hình bậc thang (staircase), một phần nửa các điểm ảnh trong hình bậc thang đó có thể đƣợc xóa bỏ, ngoại trừ sự giả mạo hình dạng của các đối tƣợng toàn diện. Về cơ bản điểm ảnh trung tâm của một trong các cửa sổ dƣới đây có thể đƣợc xóa bỏ:

nh 3.4

Để tránh tạo ra một lỗ hổng mới, đơn giản chúng ta bổ xung thêm một điều kiện mà một trong các giá trị x = 0.

Đối với các cửa sổ có đƣờng chéo hƣớng Bắc (2 cửa sổ đầu tiên) biểu thức 0 1 X X 1 0 0 X X X X 0

1 1 X X 1 1 X 1 1 1 1 X X X 0 0 X X X 1 0 0 1 X

V(C) ^ ~edge (N) ^ ( ( V(E) ^ ~ V(NE) ^ ~ V(SW) ^ ( ~V(W) v ~ V(S)) v V (W))^ ~ (V(NW) ^ ~ V (SE) ^ ( ~V(E) v ~ V(S)))))) (3. 4)

Qúa trình duyệt ảnh có đƣờng chéo hƣớng Nam tƣơng tự nhƣ vậy, nhƣng với chuyển đổi Bắc và Nam. Không có ảnh nào trong các ảnh ví dụ từ trƣớc tới giờ có số lƣợng hình dạng bậc thang đáng quan tâm. Phiên bản của xƣơng đã làm mảnh dùng staircase_removal dƣờng nhƣ trơn và đối xứng hơn các xƣơng khác.

Các vấn đề cơ bản vẫn còn hiện diện trong thực tế phƣơng pháp này không xử lý các tails tốt nhƣ phƣơng pháp Zhang-Suen chuẩn và xƣơng dạng chữ T cũng không tốt bằng.

Nếu tốc độ là vấn đề đơn giản, vấn đề gì là quan trọng thì việc cải tiến thuật toán Holt của Zhang_Seun là thuật toán tốt hơn các thuật toán đã thấy từ trƣớc tới nay vì thuật toán này có tốc độ xử lý cao, xƣơng kết quả tốt.

Một phần của tài liệu Một số tiếp cận trong kỹ thuật làm mảnh ảnh (Trang 33 - 37)

Tải bản đầy đủ (PDF)

(58 trang)