Phân vùng đối tượng xử lý ảnh

Tài liệu Bài giảng Xử lý ảnh số - Chương 6: Phát hiện biên và phân vùng ảnh: Bài giảng Xử lý ảnh 50 GV. Mai Cường Thọ CHƯƠNG VI PHÁT HIỆN BIÊN VÀ PHÂN VÙNG ẢNH I. Biên và kỹ thuật phát hiện biên Nhìn chung về mặt toán học người ta coi điểm biên của ảnh là điểm có sự biến đổi đột ngột về độ xám như chỉ ra trong hình dưới đây: Như vậy, phát hiện biên một cách lý tưởng là xác định được tất cả các đường bao trong các đối tượng. Định nghĩa toán học của biên ở trên là cơ sở cho các kỹ thuật phát hiện biên. Điều quan trọng là sự biến thiên giữa các điểm ảnh là nhỏ, trong khi đó biến thiên độ sáng của điểm biên (khi qua biên) lại khá lớn. Xuất phát từ cơ sở này người ta thường sử dụng 2 phương pháp phát hiện biên sau: • Phương pháp phát hiện biên trực tiếp: phương pháp này nhằm làm nổi đường biên dựa vào biến thiên về giá trị độ sáng của điểm ảnh. Kỹ thuật chủ yếu là dùng kỹ thuật đạo hàm. Nếu lấy đạo hàm bậc nhất của ảnh ta có phương pháp Gradient, nếu lấy đạo hàm bậc 2 ta có kỹ thuật Laplace. • Phương pháp gián tiếp: Nếu bằng cách nào đấy ta phân ảnh thành các vùng thì đường phân ranh giữa các vùng đó chính là biên. s(m,n) Biên lý tưởng n s(m,n) Biên bậc thang n Biên thực tế s(m,n) n Bài giảng Xử lý ảnh 51 GV. Mai Cường Thọ II. Phương pháp phát hiện biên trực tiếp Tương tự như các phép toán làm trơn ảnh, khả năng lấy đạo hoàm theo tọa độ các điểm là hết sức quan trọng. Bài toán cơ bản ở đây là nếu chiếu theo đúng định nghĩa toán học về đạo hàm thì chúng ta không thể thực hiện được việc lấy đạo hàm các điểm ảnh, do một ảnh số hóa không phải là một hàm liên tục a[x,y] theo các biến tọa độ mà chỉ là một hàm rời rạc a[m,n] với các biến tọa độ nguyên. Vì lý do đó, những thuật toán ma chúng ta trình bày ở đây chỉ có thể được xem là các xấp xỉ cho đạo hàm thật sự theo tọa độ của ảnh liên tục ban đầu. 1. Phương pháp Gradient Phương pháp gradient là phương pháp dò biên cục bộ dựa vào cực đại của đạo hàm bậc nhất. Vì ảnh là một hàm 2 biến, khi tính đạo hàm chúng ta cần phải xác định hướng cần lấy đạo hàm. Các hướng ở đây có thể là hướng ngang, dọc, hoặc tùy ý là sự kết hợp của 2 hướng ngang dọc. Ký hiệu hx , hy , hθ là các bộ lọc đạo hàm theo các hướng x,y, bất kỳ. Ta có quan hệ sau: yx hhh .sin.cos][ θθθ += Theo định nghĩa gradient ),( yxf∇ là một vectơ có các thành phần biểu thị tốc độ thay đổi giá trị của điểm ảnh theo hai hướng x và y. yx ii rr , là các vector đơn vị theo hai hướng x và y. yxxxyx iyxfhiyxfhiy yxfi x yxfyxf rrrr )),(()),((),(),(),( ⊗+⊗= ∂ ∂+ ∂ ∂=∇ x x x f(x) f’(x ) f’’(x) Bài giảng Xử lý ảnh 52 GV. Mai Cường Thọ Các thành phần của gradient được tính bởi: dx yxfydxxff x yxf x ),(),(),( −+≈= ∂ ∂ dy yxfdyyxff y yxf y ),(),(),( −+≈= ∂ ∂ Với dx là khoảng cách các điểm theo hướng x(khoảng cách tính bằng số điểm) và tương tự với dy. Trên thực tế người ta hay dùng dx=dy=1 Như vậy ta có : Độ lớn Gradient : 22 )),(()),((,( yxfhyxfhyxf yx ⊗+⊗=∇ Hướng Gradient :     ⊗ ⊗=∇ ),( ),( arctan)),(( yxfh yxfh yxf x yψ Độ lớn Gradiant xấp xỉ : ),(),(),( yxfhyxfhyxf yx ⊗+⊗=∇ Trong kỹ thuật gradient, người ta chia nhỏ thành 2 kỹ thuật(do dùng 2 toán tử khác nhau) : kỹ thuật gradient và kỹ thuật la bàn. Kỹ thuật gradient dùng toán tử gradient lấy đạo hàm theo một hướng; còn kỹ thuật la bàn dùng toán tử la bàn lấy đạo hàm theo 8 hướng: Bắc, Nam, Đông, Tây và Đông Bắc, Tây Bắc, Đông Nam, Tây Nam. Thực hiện ký thuật trên, với mỗi điểm ảnh I(m,n) của I, đạo hàm theo x, theo y được kí hiệu tương ứng bởi Ix, Iy Ta có:   −+= −+= ),()1,(),( ),(),1(),( nmInmInmI nmInmInmI y x yx inmInmIinmInmInmI rr )),()1,(()),(),1((),( −++−+=∇⇒ ),()1,(),(),1(),( nmInmInmInmInmI −++−+=∇⇒ Điều này tương đương với nhân chập ảnh với 2 mặt nạ (bộ lọc) hx và hy ]11[][][ −== Tyx hh hx(m,n) hy(m,n) + I(m,n) ),( nmI∇ Bài giảng Xử lý ảnh 53 GV. Mai Cường Thọ Nói chung, ảnh kết quả sau khi áp dụng kỹ thuật nổi biên phụ thuộc rất nhiều vào việc chọn (hx , hy.). Sau đây là một số bộ lọc khác hay dùng - ]101[][][ −== Tyx hh (2.1) - Bộ lọc Sobel [ ] [ ]101 1 2 1 4 1 101 202 101 4 1 −•         =         − − − =xh [ ] [ ]121 1 0 1 4 1 121 000 121 4 1 •         − =         −− =yh Theo trên ta thấy hx và hy đều tách được, mỗi bộ lọc lấy đạo hàm theo một hướng nhờ phương trình (2.1) và làm trơn theo hướng trực giao với hướng đó nhờ một bộ lọc tam giác một 1- chiều. - Bộ lọc Prewitt [ ] [ ]101 1 1 1 3 1 101 101 101 3 1 −•         =         − − − =xh [ ] [ ]111 1 0 1 3 1 111 000 111 3 1 •         − =         −−− =yh Theo trên ta thấy hx và hy đều tách được, mỗi bộ lọc lấy đạo hàm theo một hướng nhờ phương trình (2.1) và làm trơn theo hướng trực giao với hướng đó nhờ một bộ lọc đều một 1- chiều. Toán tử la bàn Toán tử la bàn đo gradient theo một số hướng đã chọn. Nếu kí hiệu gk là gradient la bàn theo hướng θk=pi/2 +2kpi với k=0,1, 2,…7. Như vậy ta có gradient E theo 8 hướng ngược chiều kim đồng hồ. yx hhh .sin.cos][ θθθ += Bài giảng Xử lý ảnh 54 GV. Mai Cường Thọ Có nhiều toán tử la bàn khác nhau. Nhưng ở đây, trình bày một cách chi tiết toán tử Kish. Toán tử này sử dụng mặt nạ 3x3. 333 503 553 333 303 555 21 −−− − − = −−− −−= HH 553 503 333 533 503 533 43 − − −−− = −− − −− = HH 333 305 355 335 305 335 355 305 333 555 303 333 8765 −−− − − = −− − −− = − − −−− =−− −−− = HHHH Trong đó H1, H2, H3, …H8 tương ứng với 8 hướng: 00, 450, 900, 1350, 1800, 2250, 3150. Nếu ta kí hiệu ∇i, i=1, 2, …8 là gradient thu được theo 8 hướng bởi 8 mặt nạ, biên độ gradient tại (x, y) được tính như sau: ( )8....,2,1,),(),( =∇=∇ iyxMaxyx i 2. Kỹ thuật Laplace Các phương pháp đánh giá gradient ở trên làm việc khá tốt khi độ sáng thay đổi rõ nét. Khi mức xám thay đổi chậm, miền chuyển tiếp trải rộng, phương pháp hiệu quả hơn đó là phương pháp sử dụng đạo hàm bậc 2, gọi là phương pháp Laplace. Toán tử Laplace được định nghĩa như sau: 2 2 2 2 2 dy f dx ff ∂+∂=∇ Toán tử Laplace dùng nhiều kiểu mặt nạ khác nhau để xấp xỉ rời rạc đạo hàm bậc hai. Dưới đây là 3 kiểu mặt nạ hay dùng: 121 252 121 111 181 111 010 141 010 321 − −− − = −−− −− −−− = − −− − = HHH Với mặt nạ H1, đôi khi người ta dùng phần tử ở tâm có giá trị là 8 thay vì giá trị là 4 như đã chỉ ra. Để dễ hình dung việc xấp xỉ đạo hàm bậc hai trong không gian rời rạc bởi mặt nạ H1 hay là ý nghĩa của mặt nạ H1, ta xét chi tiết cách tính đạo hàm bậc 2. Trong không gian rời rạc đạo hàm bậc 2 có thể tính: WS NW E W N S NE SE Mô hình 8 hướng Bài giảng Xử lý ảnh 55 GV. Mai Cường Thọ )1,()1,(),(2 ),1(),1(),(2 2 2 2 2 +−−−= ∂ ∂ +−−−= ∂ ∂ yxfyxfyxf y f yxfyxfyxf x f Vậy ),1()1,(),(4)1,(),1(2 yxfyxfyxfyxfyxff +−+−+−−−−=∇ 3. Phương pháp khớp nối lỏng a. Khái niệm láng giềng 4 và láng giềng 8 Với điểm P được bao phủ xung quanh bởi 8 điểm: P0, P1, …P8 Ta có láng giềng 8 của P gồm các điểm: P0, P1, P2, P3, P4, P5, P6, P7 Láng giềng 4 của P gồm các điểm: P0, P2, P4, P6. b. Phương pháp khớp nối lỏng • Xét các điểm p và q là 2 điểm 4 láng giềng. • I(p), I(q): giá trị mức xám của điểm p và q • Nếu θ>− )()( qIpI thì coi như có cặp biên (p, q). Ví dụ: Cho ma trận ảnh chọn θ =3 ta có II. CÁC KỸ THUẬT DÒ BIÊN 1 Kỹ thuật Freeman(dò biên theo ảnh đen trắng) Thuật toán Bước1: Quét ảnh đến khi gặp điểm đen. Gọi nó là pixel 1. Bước 2: Lặp Nếu “điểm ảnh hiện thời là đen” rẽ trái Ngược lại thì rẽ phải. Dừng khi gặp điểm 1 ban đầu. P3 P2 P1 P4 P P0 P5 P6 P7 6 2 3 6 2 3 6 2 3 6 2 3 6 2 3 2 3 6 2 3 1 4 2 8 5 7 4 2 8 5 7 1 2 8 5 7 1 4 3 6 1 4 2 8 5 7 4 2 8 5 7 1 2 8 5 7 1 4 Bài giảng Xử lý ảnh 56 GV. Mai Cường Thọ Cải tiến thuật toán trên (Luân văn tiến sĩ: Hồ Ngọc Kỷ -1992) Thuật toán Bước1: Quét ảnh đến khi gặp điểm đen. Gọi nó là pixel 1. Bước 2: Lặp Nếu “điểm ảnh hiện thời là đen” Thì “dò ngược”. Ngược lại “sang phải”. Đến khi gặp pixel 1 2. Dò biên theo cặp nền vùng Phương pháp Tìm cặp điểm (n,v), trong đó n và v là điểm 8 láng giềng, n là điểm nền và v là điểm vùng. Ban đầu có (n0, v0) dựa vào đó ta tìm được (n1, v1), qua trình này cứ tiếp tục. Tổng quát nếu có (ni, vi) ta sẽ tìm (ni+1, vi+1), sao cho ni và ni+1 là 8 láng giềng , vi và vi+1 là 8 láng giềng. 11 14 19 24 25 30 13 7 3 2 1 4 5 6 8 10 9 12 15 16 17 18 20 21 22 23 26 27 28 29 31 32 33 34 35 1 2 12 3 11 4 6 5 10 9 8 7 Bài giảng Xử lý ảnh 57 GV. Mai Cường Thọ Quá trình dò biên theo nền vùng là: tìm 1 dãy các điểm (n0, v0), (n1, v1)…(nk, vk) sao cho n0, n1, ….nk : chu tuyến nền v0, v1, ….vk : chu tuyến vùng 3. Xấp xỉ bởi đoạn thẳng Nối điểm xuất phát R với điểm đang xét Pc bởi một đoạn thẳng. Sau đó tính toạ độ của Pi, một điểm nằm giữa R và Pc sao cho khoảng cách từ Pi đến đoạn thẳng là cực đại. Gọi khoảng cách này là di. Nếu di lớn hơn một ngưỡng cho trước (độ chính xác của xấp xỉ) người ta phân đoạn RPc thành 2 đoạn RPi và PiPc và tiếp tục thực hiện lấy mẫu với từng đoạn cho tới khi đoạn thẳng tìm được là “rất gần” với đường bao. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Cặp (ni+1, vi+1) 8 láng giềng Pi • • • • • • • • • • • • R Pc di Pi di • • • • • • • • • • • • R Pc P1 P2 • • • • • • • • • • • • R Pc Hình xấp xỉ đường biên bằng đường gấp khúc Bài giảng Xử lý ảnh 58 GV. Mai Cường Thọ III. CÁC PHƯƠNG PHÁP PHÂN VÙNG ẢNH Để phân tích các đối tượng trong ảnh, chúng ta cần phải phân biệt được các đối tượng cần quan tâm với phần còn lại của ảnh. Những đối tượng này có thể tìm ra được nhờ các kỹ thuật phân đoạn ảnh, theo nghĩa tách phần tiền cảnh ra khỏi hậu cảnh trong ảnh. Chúng ta cần phải hiểu được là: - Không có kỹ thuật phân đoạn nào là vạn năng, theo nghĩa có thể áp dụng cho mọi loại ảnh. - Không có kỹ thuật phân đoạn nào là hoàn hảo. Có thể hiểu phân vùng là tiến trình chia ảnh thành nhiều vùng, mỗi vùng chứa một đối tượng hay nhóm đối tượng cùng kiểu. Chẳng hạn, một đối tượng có thể là một kí tự trên một trang văn bản hoặc một đoạn thẳng trong một bản vẽ kỹ thuật hoặc một nhóm các đối tượng có thể biểu diễn một từ hay hay đoạn thẳng tiếp xúc nhau. Ta có một số phương pháp phân vùng ảnh như sau: 1. Thuật toán gán nhãn thành phần liên thông Kỹ thuật này gán cho mỗi thành phần liên thông của ảnh nhị phân một nhãn riêng biệt. Nhãn thường là các số tự nhiên bắt đầu từ một đến tổng số các thành phần liên thông có trong ảnh. Giải thuật quét ảnh từ trái sang phải và từ trên xuống dưới. Trong dòng thứ nhất của các pixel đen, một nhãn duy nhất được gán cho mỗi đường chạy liên tục của pixel đen. Với mỗi pixel đen của các dòng tiếp theo, các pixel lân cận trên dòng trước và pixel bên trái được xem xét. Nếu bất kì pixel lân cận nào được gán nhãn, nhãn tương tự được gán cho pixel đen hiện thời; ngược lại nhãn tiếp theo chưa được sử dụng được chọn. Thủ tục này được tiếp tục cho tới dòng cuối của ảnh. Lúc kết thúc tiến trình này, một thành phần liên thông có thể chứa các pixel có các nhãn khác nhau vì khi chúng ta xem xét lân cận của pixel đen, chẳng hạn pixel “?” trong hình vẽ. Pixel đối với lân cận trái và những lân cận trong dòng trước có thể được gán nhãn một cách riêng biệt. Một tình huống như vậy phải được xác định và ghi lại. Sau tiến trình quét ảnh, việc gán nhãn được hoàn tất bằng cách thống nhất các mâu thuẫn các nhãn và gán lại các nhãn chưa sử dụng. Bài giảng Xử lý ảnh 59 GV. Mai Cường Thọ Để minh hoạ ta có hình biểu diễn sau : Vd : một phương pháp sửa nhãn ∃(p,q) là liên thông 8 mà label(p)label(q) -> sửa nhãn cho giống nhau. 2. Phân vùng bằng tách cây tứ phân Về nguyên tắc, phương pháp này kiểm tra tính hợp thức của tiêu chuẩn một cách tổng thể trên miền lớn của ảnh. Nếu tiêu chuẩn được thỏa, việc phân đoạn coi như kết thúc. Trong trường hợp ngược lại, ta chia miền đang xét thành 4 miền nhỏ hơn. Với mỗi miền nhỏ, ta áp dụng một cách đệ quy phương pháp trên cho đến khi tất cả các miền đều thỏa. Thuật toán này tạo nên một cây mà mỗi nút cha có 4 nút con ở mọi mức trừ mức ngoài cùng. Vì thế cây này có tên là cây tứ phân. Cây này cho ta hình ản rõ nét về cấu trúc phân cấp của các vùng tương ứng với tiêu chuẩn. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . * * * * . . * * * . . . . . 1 1 1 1 . . 2 2 2 . . . . . . * * * . . * * * * . . . . . 1 1 1 . . 2 2 2 2 . . . . * * * * . * * * * * . . . . 1 1 1 1 . 2 2 2 2 2 . . . . . . * * * * * . . . . . . . . . 1 1 ? * * . . . . . . . . . * * * * * * . * . . . ⇒ . . . * * * * * * . * . . . * * . . . . . . . . * * . . * * . . . . . . . . * * . . . * * . . . . . . . * * . . . * * . . . . . . . * * . . . * * . . . . . . . . . . . . * * . . . . . . . . . . . Hình b . Ảnh ban đầu Hình c . Tiến trình gán nhãn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 1 . . 2 2 2 . . . . . 1 1 1 1 . . 1 1 1 . . . . . . 1 1 1 . . 2 2 2 2 . . . . . 1 1 1 . . 1 1 1 1 . . . . 1 1 1 1 . 2 2 2 2 2 . . . . 1 1 1 1 . 1 1 1 1 1 . . . . . . 1 1 1 1 1 . . . . . . . . . 1 1 1 1 1 . . . . . . . . . 1 1 1 1 1 1 . 3 . . . ⇒ . . . 1 1 1 1 1 1 . 2 . . . 4 4 . . . . . . . . 3 3 . . 3 3 . . . . . . . . 2 2 . . . 4 4 . . . . . . . 3 3 . . . 3 3 . . . . . . . 2 2 . . . 4 4 . . . . . . . . . . . . 3 3 . . . . . . . . . . . Hình d . Sau khi quét đầy đủ Hình e .Kết quả sau cùng . . . . . . . . . …….. . . . . P P P P . . . . . . . . L ? . . . . . . . . . . . . . . .. . . . . .. P: lân cận trước, L lân cân trái Bài giảng Xử lý ảnh 60 GV. Mai Cường Thọ Một vùng thỏa chuẩn sẽ tạo nên một nút lá, nếu không nó sẽ tạo nên một nút trong và có 4 nút con tương ứng với việc chia làm 4 vùng. Ta cứ tiếp tục như vậy cho đến khi phân xong. Các nút của cây biểu diễn số vùng đã phân. Tiêu chuẩn phân vùng ở đây là màu sắc. Nếu mọi điểm của vùng đều là màu trắng thì sẽ tạo nên nút lá trắng và tương tự như vậy với nút lá đen. Nút màu ghi vùng không thuần nhất và phải tiếp tục chia. Với ngưỡng θ cho trước, vùng thuần nhất phải thỏa điều kiện • Độ lệch chuẩn σ < θ • Hoặc θ

Chủ đề