1. Trang chủ
  2. » Giáo Dục - Đào Tạo

• Kỹ thuật Contour Tracing

33 223 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 33
Dung lượng 339,5 KB

Nội dung

Thật không may, cả 2thuật toán trên đều có những điểm yếu, là nguyên nhân chính dẫn đến việc dò tìmsai contour của một lớp các mẫu nếu các mẫu đó có chứa các kiểu “connectivity”phức tạp.

Trang 1

 Kỹ thuật Contour Tracing

 Khái niệm Contour

Contour là dùng để nói đến đường viền của một đối tượng, một tập hợp các điểm ảnh tách đối tượng khỏi nền Có 1 điểm chú ý là contour không chỉ dùng để xác định các pixel biên của đối tượng và tách chúng khỏi nền Cái chúng ta cần là một chuỗi các pixel biên để tách ra lấy hình dạng của mẫu

Kỹ thuật tách Contour là một trong nhiều kỹ thuật tiền xử lý được thực hiệntrên ảnh số nhằm tách riêng các thông tin về hình dạng chung của ảnh Một

contour khi đã được tách, những đặc điểm khác nhau sẽ được sử dụng như những nét đặc trưng và sẽ được sử dụng để phân loại mẫu sau này Vì vậy, khi tách được contour chính xác, từ đó ta sẽ nhận được những mẫu có các đặc tính chính xác giúp cơ hội nhận dạng, phân loại một mẫu sẽ được tăng lên đáng kể

Nhưng bạn có thể tự hỏi rằng: Tại sao lại lãng phí thời gian để lấy các contour của một mô hình và sau đó thu thập các đặc điểm riêng của nó? Tại sao không thu thập nó ngay từ đầu?

Điều này được lý giải là: các điểm ảnh của đường viền nói chung là một tậphợp của tổng số các điểm ảnh đại diện cho một mô hình Vì vậy khối lượng công việc phải tính toán sẽ được giảm đi nhiều khi sử dụng thuật toán tách trên đường viền thay cho việc trên toàn bộ mô hình.Từ đó, contour sẽ có nhiều đặc tính mới hơn được nhận ra so với toàn bộ mô hình ban đầu.quá trình xử lý sẽ dễ dàng hơn

là thực hiện với mô hình ban đầu

Quá trình thực hiện dò contour đóng vai trò quan trọng trong lĩnh vực nhận dạng mẫu

 Các thuật toán Contour Tracing

Trang 2

Chúng ta có 4 thuật toán Contour Tracing chung nhất 2 trong số đó có tênlà: Square Tracing algorithm và Moore – Neighbor Tracing là dễ để thực hiện vàthường xuyên được dùng để dò tìm contour của một mẫu Thật không may, cả 2thuật toán trên đều có những điểm yếu, là nguyên nhân chính dẫn đến việc dò tìmsai contour của một lớp các mẫu nếu các mẫu đó có chứa các kiểu “connectivity”phức tạp.

Một vài thuật toán Contour Tracing:

 Square Tracing Algorithm

1)Ý tưởng:

Ý tưởng đằng sau thuật toán Square Tracing là rất đơn giản; điều này có thể là do các thuật toán là một trong những cố gắng đầu tiên để trích xuất các đường viền của một mô hình nhị phân

Với một mô hình kỹ thuật số có nghĩa là một nhóm các điểm ảnh đen trên nền của các điểm ảnh màu trắng, tức là một mạng lưới; xác định vị trí một điểm ảnh màu đen và tuyên bố nó như là "điểm ảnh bắt đầu" (Định vị một "điểm ảnh bắt đầu" điểm ảnh có thể được thực hiện trong một số cách, chúng ta sẽ bắt đầu từ góc dướibên trái của lưới điện, quét từng cột điểm ảnh từ phía dưới đi lên -starting từ cột ngoài cùng bên trái và tiến tới bên phải - cho đến khi chúng ta gặp phải một điểm ảnh màu đen Chúng ta sẽ đặt điểm ảnh đó là "điểm ảnh bắt đầu" )

Bây giờ, hãy tưởng tượng rằng bạn là một con bọ (bọ rùa) đứng trên bắt đầu điểm ảnh như trong hình 1 dưới đây Để giải nén các đường viền của các mô hình, bạn phải làm như sau:

Mỗi khi bạn thấy mình đang đứng trên một điểm ảnh màu đen, rẽ trái, và

Mỗi khi bạn thấy mình đang đứng trên một điểm ảnh màu trắng, rẽ phải,

Trang 3

cho đến khi bạn gặp phải khi bắt đầu điểm ảnh một lần nữa

Các điểm ảnh màu đen bạn đi ngang qua sẽ là đường viền của mô hình

Điều quan trọng trong thuật toán Square Tracing là "phương hướng" Bên trái và bên phải biến bạn thực hiện được đối với vị trí hiện tại của bạn, mà phụ thuộc vào cách bạn cho vào các điểm ảnh bạn đang đứng trên với Vì vậy, điều quan trọng là

để theo dõi các định hướng hiện tại của bạn để thực hiện những bước đi đúng

2) Thuật toán:

Input: Một hình lát T, chứa các thành phần P của điểm ảnh đen

Output: Một chuỗi B (b1,b2,…) của các điểm ảnh biên (đường viền)

Trang 4

- Thiết lập các điểm ảnh hiện tại,(p), các điểm ảnh bắt đầu (s)

- Rẽ trái - truy cập vào các điểm ảnh liền kề bên trái của p

- Cập nhật p - đặt nó vào được các điểm ảnh hiện tại

- Trong khi p không thấy thì sẽ đặt vào s

- Nếu hiện tại điểm ảnh p là màu đen, chèn p trong B và rẽ trái (truy cập vào các điểm ảnh liền kề bên trái của trang) Nếu không thì rẽ phải (truy caoaj các điểm ảnh liền kề bên phải của trang)

- Cập nhật p nghĩa là đặt nó vào được các điểm ảnh hiện tại

3) Minh họa:

Mỗi khi bạn thấy mình đang đứng trên một điểm ảnh màu đen, rẽ trái, và trên điểmảnh màu trắng thì rẽ phải, cho đến khi bạn gặp phải khi bắt đầu điểm ảnh một lần nữa

Các điểm ảnh màu đen bạn đi ngang qua sẽ là đường viền của mô hình

Trang 5

4) Phân tích :

Có thể chỉ ra rằng các thuật toán Square Tracing là rất hạn chế trong việc thực hiện Nói cách khác, nó lỗi không thể trích xuất các đường viền của hình ảnh lớn

mà mô hình đó thường xuyên xảy ra trong các ứng dụng thực tế đời sống

Điều này phần lớn là do khi quét trái và phải có xu hướng bỏ qua các điểm ảnh nằm "theo đường chéo" đối với một điểm ảnh được đưa ra với

Chúng tôi sẽ xem xét mô hình khác nhau của kết nối khác nhau và xem lý do tại sao quảng trường truy tìm thuật toán không thành công Ngoài ra, chúng tôi sẽ xem xét cách thức mà chúng ta có thể cải thiện hiệu suất của thuật toán và làm cho

nó ít nhất là làm việc cho mô hình với một loại đặc biệt của kết nối

Một cuộc biểu tình giải thích cách hoạt hình thuật toán truy tìm vuông không để trích xuất các đường viền của một mô hình do sự lựa chọn xấu của điều kiện dừng

Trang 6

Như bạn có thể thấy, việc cải thiện tiêu chí dừng lại sẽ là một khởi đầu tốt để cải thiện hiệu suất tổng thể của thuật toán truy tìm vuông Có 2 lựa chọn thay thế hiệu quả để ngăn chặn các tiêu chí hiện tại:

a) Dừng lại sau khi đi thăm các điểm ảnh đầu n lần, trong đó n là ít nhất 2

b) Dừng sau khi vào bắt đầu điểm ảnh lần thứ hai trong cùng một cách bạn đã làm đúng ban đầu Tiêu chuẩn này được đề xuất bởi Jacob Eliosoff và do đó chúng tôi

sẽ gọi nó là tiêu chí dừng Jacob

Thay đổi tiêu chí dừng lại nói chung sẽ cải thiện hiệu suất của thuật toán truy tìm vuông nhưng sẽ không cho phép nó để khắc phục điểm yếu khác, nó có hướng mô hình các loại đặc biệt của kết nối

Sau đây là một minh chứng sinh động về cách thức thuật toán vuông (với điều kiện dừng của Jacob) truy tìm không để trích xuất các đường viền của một mô hình 8-kết nối đó không phải là 4 kết nối:

Trang 7

Thuật toán Square Tracing hoàn toàn vô dụng?

Nếu bạn đã đọc những phân tích trên bạn phải suy nghĩ rằng các thuật toán truy tìm vuông không để trích xuất các đường viền của hầu hết các mô hình Nó chỉ ra rằng có tồn tại một gia đình đặc biệt của mô hình đó là hoàn toàn chính xác và đường viền cứu sự hình vuông truy tìm thuật toán

Hãy để P là một tập hợp các kết nối 4 điểm ảnh màu đen trên lưới điện Hãy để cácđiểm ảnh màu trắng của lưới điện tức là các điểm ảnh nền, W, cũng là 4-kết nối

Nó chỉ ra rằng tạo điều kiện như vậy của các mô hình và nền tảng của nó, chúng ta

có thể chứng minh rằng vuông truy tìm thuật toán (sử dụng tiêu chí dừng Jacob) sẽluôn luôn thành công trong việc chiết xuất các đường viền của mô hình

Bằng chứng

Đưa ra: Một mô hình, P, sao cho cả hai mô hình các điểm ảnh, tức là các điểm ảnh màu đen và các điểm ảnh nền, tức là các điểm ảnh màu trắng, W, 4-kết nối

Trang 8

Quan sát đầu tiên

Kể từ khi tập hợp các điểm ảnh màu trắng, W, được giả định là 4 kết nối, điều này

có nghĩa là mô hình không thể có "lỗ hổng" trong đó

(không chính thức, "lỗ" là nhóm các điểm ảnh màu trắng được bao phủ hoàn toàn bởi các điểm ảnh màu đen trong các mô hình cho)

Sự hiện diện của bất kỳ "lỗ hổng" trong mô hình sẽ cho kết quả ngắt kết nối một nhóm các điểm ảnh màu trắng với phần còn lại của các điểm ảnh màu trắng và do

đó làm cho tập hợp các điểm ảnh màu trắng không 4 kết nối

Hình 2 và Hình 3 dưới đây cho thấy 2 loại "lỗ" có thể xảy ra trong một mô hình kết nối:

4-Quan sát thứ hai

Bất kỳ hai điểm ảnh màu đen của mẫu phải chia sẻ một bên

Nói rằng 2 điểm ảnh đen chỉ chia sẻ một đỉnh, sau đó, để đáp ứng các khách sạn 4

sự kết nối của các mô hình, cần có một con đường nối những 2 điểm ảnh như vậy

mà mỗi 2 điểm ảnh liền kề trong con đường đó là 4-kết nối Nhưng điều này sẽ cho chúng ta một mô hình tương tự như trong hình 3 ở trên Nói cách khác, điều này sẽ gây ra các điểm ảnh màu trắng để trở thành ngắt kết nối

Trang 9

Hình 4 dưới đây cho thấy một mô hình điển hình đáp ứng giả định rằng cả hai nền

và mô hình điểm ảnh được 4 kết nối tức là không có "lỗ" và mỗi 2 điểm ảnh đen chia sẻ một bên:

Một cách hữu hiệu để hình dung mô hình này là:

Đầu tiên, hãy xem xét các ảnh điểm biên tức là các đường viền, các mô hình Sau

đó, nếu chúng ta xem xét mỗi pixel ranh giới là có 4 cạnh mỗi đơn vị chiều dài, chúng ta sẽ thấy rằng một số các cạnh được chia sẻ với các điểm ảnh màu trắng liền kề Chúng tôi sẽ gọi các cạnh tức là những người chia sẻ với các điểm ảnh màu trắng, mép ranh giới

Các cạnh ranh giới có thể được xem như là các cạnh của một đa giác Hình 5 dưới đây giải thích ý tưởng này bằng cách hiển thị cho bạn các đa giác tương ứng với

mô hình trong hình 4 ở trên:

Trang 10

Nếu chúng ta nhìn vào tất cả có thể "cấu hình" của các điểm ảnh ranh giới có thể phát sinh trong mô hình như vậy, chúng ta sẽ thấy rằng có 2 trường hợp cơ bảnhiển thị trong Hình 6 và Hình 7 dưới đây

Pixel biên có thể là bội số của những trường hợp này hoặc positionings khác nhau, tức là quay của 2 trường hợp

Các cạnh ranh giới được đánh dấu màu xanh là E1, E2, E3 và E4

Quan sát thứ ba

Đối với cả 2 trường hợp trên, không có vấn đề điểm ảnh bạn chọn như bắt đầu điểm của các bạn và không có vấn đề gì hướng vào thành, các thuật toán truy tìm vuông sẽ không bao giờ "quay lại", sẽ không bao giờ "đi qua" một lợi thế cạnh

Trang 11

ranh giới hai lần (trừ khi đó là truy tìm ranh giới lần thứ hai) và sẽ không bao giờ

bỏ lỡ một lợi thế cạnh ranh giới thử nó!

2 khái niệm cần làm rõ ở đây:

a) các thuật toán "backtracks" khi nó đi ngược trở lại để thăm một điểm ảnh đã viếng thăm trước khi truy tìm toàn bộ ranh giới, và

b) đối với mỗi cạnh ranh giới có 2 cách để "đi qua" nó, cụ thể là "trong" hay

"ngoài" (trong đó "trong" có nghĩa là đối với các bên trong của đa giác tương ứng

và "ngoài" có nghĩa là đối với bên ngoài của đa giác)

Ngoài ra, khi các thuật toán vuông đi "trong" thông qua một trong các cạnh ranh giới, nó sẽ đi "ra" thông qua các cạnh ranh giới tiếp theo có nghĩa là nó có thể không được có thể cho hình vuông thuật toán truy tìm đi qua 2 cạnh ranh giới liên tiếp trong cùng một cách

Quan sát cuối cùng

Có một số thậm chí của các cạnh biên cho bất kỳ mô hình nào

Nếu bạn có một cái nhìn tại các đa giác của hình 5 ở trên, bạn sẽ thấy rằng:

nếu bạn muốn bắt đầu từ đỉnh S, được đánh dấu trên sơ đồ, và làm theo các cạnh ranh giới cho đến khi bạn đạt đến S một lần nữa; bạn sẽ thấy rằng bạn sẽ vượt qua bởi một số chẵn các cạnh biên giới trong quá trình này Hãy xem xét mỗi cạnh ranh giới như là một "bước" theo một hướng nhất định Sau đó, cứ mỗi "bước" bênphải, có phải là một "bước" tương ứng với bên trái nếu bạn muốn quay trở lại vị tríban đầu của bạn Điều này cũng áp dụng cho "bước" theo chiều dọc Kết quả là,

Trang 12

các "bước" nên phù hợp với cặp và điều này giải thích lý do tại sao sẽ có một số thậm chí cạnh ranh giới trong bất kỳ mô hình như vậy

Kết quả là, khi vuông thuật toán truy tìm vào mép ranh giới bắt đầu (khi bắt đầu pixel) cho một lần thứ hai, nó sẽ làm như vậy trong cùng một hướng nó đã làm khi

nó lần đầu tiên vào nó

Lý do cho điều đó là vì có 2 cách để đi qua một cạnh ranh giới, và kể từ khi dự khuyết thuật toán giữa "trong" và "ra" của các cạnh ranh giới liên tiếp, và kể từ khi

có một số thậm chí cạnh ranh giới, thuật toán sẽ đi qua ranh giới bắt đầu cạnh một lần thứ hai trong cùng một cách nó đã làm lần đầu tiên

Kết luận

Với một mô hình 4-kết nối và nền, hình vuông truy tìm thuật toán sẽ theo dõi toàn

bộ ranh giới tức là đường viền, các mô hình và sẽ dừng lại sau khi truy tìm các ranh giới một lần tức là nó sẽ không theo dõi nó một lần nữa kể từ khi nó đạt đến mép ranh giới bắt đầu cho một thứ hai thời gian, nó sẽ nhập vào nó trong cùng mộtcách nó đã làm lần đầu tiên

Do đó, thuật toán Square Tracing, sử dụng các tiêu chí dừng Jacob, một cách chínhxác sẽ trích xuất các đường viền của bất kỳ mô hình cung cấp cả hai mô hình và nền tảng của nó là 4-kết nối

 Moore-Neighbor Tracing

1) Ý tưởng:

Trang 13

Ý tưởng đằng sau Moore-Neighbor truy tìm rất đơn giản; nhưng trước khi chúng tôi giải thích nó, chúng ta cần phải xác định một khái niệm quan trọng: Moore neighborhood của một điểm ảnh

Moore neighborhood

Các Moore neighborhood của một pixel, P, là tập hợp của 8 điểm ảnh chia sẻ cùng một đỉnh hoặc cạnh với pixel Những điểm ảnh pixel cụ thể là P1, P2, P3, P4, P5, P6, P7 và P8 thể hiện trong hình 1 dưới đây

Các Moore neighborhood (còn được gọi là 8-láng giềng hàng xóm gián tiếp) là một khái niệm quan trọng là thường xuyên xuất hiện trong các tài liệu

Bây giờ chúng ta đã sẵn sàng để giới thiệu ý tưởng đằng sau Moore-Neighbor truytìm

Với một mô hình kỹ thuật số có nghĩa là một nhóm các pixel đen trên nền của các điểm ảnh màu trắng, tức là một mạng lưới; xác định vị trí một điểm ảnh màu đen

và tuyên bố nó như là "bắt đầu" của mình pixel (Định vị một "bắt đầu" điểm ảnh

có thể được thực hiện trong một số cách, chúng ta sẽ bắt đầu từ góc dưới bên trái của lưới điện, quét từng cột điểm ảnh từ phía dưới đi lên -starting từ cột ngoài cùng bên trái và tiến tới bên phải - cho đến khi chúng ta gặp phải một điểm ảnh màu đen chúng tôi sẽ tuyên bố rằng điểm ảnh của chúng tôi "bắt đầu" pixel)

Trang 14

Bây giờ, hãy tưởng tượng rằng bạn là một con bọ ( bọ rùa) đứng trên bắt đầu điểm ảnh như trong hình 2 bên dưới Không mất tính tổng quát, chúng tôi sẽ trích xuất các đường viền bằng cách đi quanh mô hình trong một chiều kim đồng hồ (Nó không quan trọng mà hướng bạn chọn miễn là bạn gắn bó với sự lựa chọn của bạn trong suốt thuật toán)

Ý tưởng chung là: mỗi khi bạn nhấn một điểm ảnh màu đen, P, trở về nhà tức là quay trở lại các điểm ảnh màu trắng trước đó bạn đang đứng trên, sau đó, đi xung quanh điểm ảnh P trong một chiều kim đồng hồ, quý khách đến thăm mỗi điểm ảnh trong khu phố Moore của nó, cho đến khi bạn nhấn một điểm ảnh màu đen Các thuật toán chấm dứt khi bắt đầu điểm ảnh được truy cập trong một thời gian thứ hai

Các điểm ảnh màu đen bạn đi ngang qua sẽ là đường viền của mô hình

2) Thuật toán:

Input: Một hình lát T, chứa các thành phần P của điểm ảnh đen

Output: Một chuỗi B (b1,b2,…) của các điểm ảnh biên (đường viền)

Xác định M (a) là khu phố Moore của điểm ảnh một

Trang 15

Cho p biểu thị ranh giới điểm ảnh hiện tại.

Hãy c biểu thị các điểm ảnh hiện đang được xem xét ví dụ c là M (p)

-Thiết lập các điểm ranh giới hiện tại p để s nghĩa là p = s

- Quay lại tức là di chuyển đến các điểm ảnh mà s đã được nhập

- Đặt c là chiều kim đồng hồ điểm ảnh tiếp theo trong M (p)

- Trong khi c không bằng s làm

-Nếu c là màu đen chèn c trong B

thiết lập p = c

quay lại (di chuyển các điểm ảnh hiện tại c để các điểm ảnh từ đó p đã được nhập) nếu không thúc đẩy các điểm ảnh hiện tại c để chiều kim đồng hồ điểm ảnh tiếp theo trong M (p)

Kết thúc

3) Minh họa

Trang 16

Mỗi khi bạn nhấn một điểm ảnh màu đen, P, trở về nhà tức là quay trở lại các điểmảnh màu trắng trước đó bạn đang đứng trên, sau đó, đi xung quanh điểm ảnh P trong một chiều kim đồng hồ, khi đến mỗi điểm ảnh trong khu phố Moore của nó, cho đến khi bạn nhấn một điểm ảnh màu đen Các thuật toán chấm dứt khi bắt đầu điểm ảnh được truy cập trong một thời gian thứ hai.

Một cuộc biểu tình giải thích cách hoạt hình Moore-Neighbor truy tìm không để trích xuất các đường viền của một mô hình do sự lựa chọn xấu của điều kiện dừng

Ngày đăng: 08/03/2019, 13:24

w