Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 53 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
53
Dung lượng
2,43 MB
Nội dung
PHÂN ĐOẠN ẢNH NGÔ QUỐC VIỆT TPHCM-2014 Bài giảng giúp Người học hiểu mục tiêu ứng dụng toán phân đoạn ảnh Người học hiểu lý thuyết phương pháp phân đoạn ảnh Người học hiểu cài đặt phân đoạn ảnh tĩnh hay động với thư viện OpenCV Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Giới thiệu toán phân đoạn Phân đoạn ảnh dựa phương pháp phân ngưỡng sắc xám Phân ngưỡng toàn cục Phân ngưỡng thích nghi, dựa phương pháp Otsu Phân đoạn ảnh dựa phương pháp tương tự Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Phân đoạn nhằm chia ảnh thành vùng đối tượng xử lý Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Nếu phân đoạn tốt, contours objects xuất trích để sử dụng Có thể xác định hình dáng đối tượng Dựa màu sắc, hình dáng, texture, xác định rõ đối tượng Phân đoạn ảnh sử dụng nhiều ‘tìm kiếm tương tự (similarity searches) Phân đoạn ảnh toán khó Xử lý ảnh Vẫn chủ đề hội thảo/hội nghị liên quan đến thị giác máy tính, xử lý ảnh Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Phân đoạn cho phép trích đối tượng ảnh Các thuật giải phân đoạn dựa tính chất màu sắc, giá trị xám, hay texture: discontinuity similarity Phân chia ảnh dựa thay đổi độ sáng đột ngột, nhằm phát biên ảnh Tuy nhiên, không xác định biên để tạo vùng Phân chia ảnh thành vùng tương tự theo tiêu chuẩn xác định (mức xám, texture, color, motion) Dựa tương tự pixel kề nhằm xây dựng đối tượng Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Kiểu phân đoạn phụ thuộc vào ứng dụng Có nhiều thuật giải phân đoạn Phân đoạn dựa đường viền vùng (edge detection) Phân đoạn dựa clustering (hoặc grouping) Phân đoạn dựa phân hoạch (partition) đồ thị Các ứng dụng finding people, summarizing video, annotation figures, background subtraction, finding buildings/rivers in ảnh vệ tinh Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Edges dựa KHÁC NHAU (DIFFERENCES hay DISCONTINUITY) pixel kề Regions dựa TƯƠNG TỰ (SIMILARITIES) pixel kề Discontinuity Similarity Point Detection (dựa sắc xám) Line Detection (dò đường thẳng có ảnh) Edge Detection (đạo hàm bậc 1, 2) Active Countouring Thresholding (phân ngưỡng) Region Growing & Merging Watershed Clustering Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Ảnh R phân hoạch thành vùng R1, R2, R3, …, Rn cho R R a Hội Ri với R b Các Ri không giao Ri R j 0, i j i i 1, ,n Q(Ri)=TRUE d Q(Ri Rj) =FALSE, với hai vùng Ri, Rj kề (vì có tạo thành vùng) Với Q(Rk) vị từ logic xác định pixel thuộc Rk (ví dụ: tất pixel ngưỡng T) c Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 10 Tham khảo openCV_MeanShiftSegmentation Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 39 pixel count input image intensity • Now how to determine the three main intensities that define our groups? • We need to cluster Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 40 With this objective, it is a “chicken and egg” problem: If we knew the cluster centers, we could allocate points to groups by assigning each to its closest center If we knew the group memberships, we could get the centers by computing the mean per group 42 Phân hoạch tập ‘pattern’ thành clusters Xác định subsets điểm ‘gần nhau’ Các tiêu chuẩn “gần nhau” : Dựa giá trị cường độ; Các độ đo Texture, etc Input – tập giá trị x1, x2, …, xn (các điểm ảnh) Output – tập clusters tâm chúng K-mean Clustering phân hoạch n input thành K tập (K ≤ n) S = {S1, S2, …, Sk} cho cực tiểu within-cluster sum of squares (WCSS) k arg x j i S i 1 x j Si http://en.wikipedia.org/wiki/K-means_clustering Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 43 Khởi động ngẫu nhiên tâm cluster c1, , cK Với tâm cluster, xác định điểm thuộc cluster • Với điểm p, tìm gần ci Gán p vào cluster i Với điểm thuộc cluster, tìm tâm ci • Chọn ci mean points cluster i Nếu ci thay đổi, lặp lại bước Tính chất • • Luôn hội tụ some solution Có thể bị “local minimum”: ie, không tìm global minimum hàm mục tiêu Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 44 Chọn K mean (hay tâm) ngẫu nhiên từ liệu: m1(1),…,mk(1) Bước gán: xác định điểm xp thuộc cluster theo công thức Si(t ) x p : x p mi(t ) x p m(jt ) 1 j k Cập nhận mean cluster theo ( t 1) i m (t ) Si x j x j Si( t ) Câu hỏi: chọn ngẫu nhiên nào? Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 45 Chọn không gian màu (trong phân đoạn ảnh màu) Cách chọn vector biểu diễn điểm ảnh Ảnh xám: (grey_level, x, y) Ảnh màu: (la, lb, lc, x, y) Với la, lb, lc giá trị màu không gian màu Không gian CIE Lab thích hợp để phân đoạn với thuật giải K-Mean Cách tính khoảng cách điểm liệu biểu thức so sánh Sử dụng khoảng cách Euclidean Cách chọn K tâm khởi động ứng với K cluster Cách xách định giá trị K tự động ? Phân đoạn ảnh texture nào? Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 46 Việc gán cluster label cho pixel phát sinh Original (nhiều điểm trắng xen kẽ) Gán nhãn theo cluster center’s intensity ? Cần bảo đảm phân đoạn trơn Cách nào? Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 47 P(foreground | image) Xem xét phụ thuộc pixel, xác định Normalizing constant P(y; , data) f1 ( yi ; , data) f ( yi , y j ; , data) Z i 1 N i , jedges Labels to be predicted Individual predictions Bài giảng Xử lý ảnh - TS Ngô Quốc Việt Pairwise predictions 48 Likelihood as an “Energy” P(y; , data) p1 ( yi ; , data) p2 ( yi , y j ; , data) Z i 1 N i , jedges Energy( y; , data) ( yi ; , data) i i , jedges ( yi , y j ; , data) “Cost” of assignment yi “Cost” of pairwise assignment yi ,yj Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 49 Markov Random Fields Node yi: pixel label Edge: constrained pairs Cost to assign a label to each pixel Cost to assign a pair of labels to connected pixels Energy( y; , data) ( yi ; , data) i Bài giảng Xử lý ảnh - TS Ngô Quốc Việt i , jedges ( yi , y j ; , data) 50 Unary potential Example: “label smoothing” grid 0: -logP(yi = ; data) 1: -logP(yi = ; data) Pairwise Potential 0 K K Energy( y; , data) ( yi ; , data) i i , jedges ( yi , y j ; , data) 51 Source (Label 0) Cost to assign to Cost to split nodes Cost to assign to Sink (Label 1) Energy( y; , data) ( yi ; , data) i i , jedges ( yi , y j ; , data) 52 Source (Label 0) Cost to assign to Cost to split nodes Cost to assign to Sink (Label 1) Energy( y; , data) ( yi ; , data) i i , jedges ( yi , y j ; , data) 53 Watershed http://en.wikipedia.org/wiki/Watershed_(image_processing) Region Growing http://en.wikipedia.org/wiki/Region_growing Dựa phân hoạch đồ thị (Shi & Malik , 97) Active Contour (Snake) – Cass, Witkin, Terzopoulos 1997 Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 54 [...]... 2 ,𝜇 𝑘 = Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 𝑖 𝑝𝑖 , 𝑖=0 17 Phân đoạn 𝑘 ≥ 3 ngưỡng 𝜎𝐵2 𝑘 = 𝑃1 𝑘 𝜇1 𝑘 − 𝜇𝐺 𝑘 + 𝑃2 𝑘 𝜇2 𝑘 − 𝜇𝐺 𝑘 2 + 𝑃3 𝑘 𝜇3 𝑘 − 𝜇𝐺 𝑘 2 Cần xác định 2 𝜎𝐵2 𝑘1∗ , 𝑘2∗ = 𝑚𝑎𝑥 *𝜎𝐵2 𝑘1 , 𝑘2 , 0 < 𝑘1 < 𝑘2 < 𝐿 − 1+ Phức tạp để giải phương trình trên với 𝑘 > 3 Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 18 Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 19 Chia ảnh thành các vùng Thực hiện phân ngưỡng... x) 0 Bài giảng Xử lý ảnh - TS Ngô Quốc Việt x 1 x 1 31 Search window Center of mass Mean Shift vector Nguồn: Y Ukrainitz & B Sarel Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 32 Search window Center of mass Mean Shift vector Nguồn: Y Ukrainitz & B Sarel Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 33 Search window Center of mass Mean Shift vector Nguồn: Y Ukrainitz & B Sarel Bài giảng Xử lý ảnh - TS Ngô... ngưỡng Ti Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 12 Chọn ngưỡng ban đầu T (vd: chọn mean của mọi pixels) 2 Phân đoạn thành hai nhóm G1, G2, với mean tương ứng m1, m2 3 Tính toán ngưỡng mới theo cách T = ½ (m1+m2) 4 Lặp lại bước 2 và 3 cho đến khi sự thay đổi của T mới so với T ở lần trước đó nhỏ hơn giá trị cho trước 1 Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 13 Tự động thực hiện phân ngưỡng ảnh dựa.. .Phân đoạn bằng mắt thường Old man và các thứ khác Hai người và con chó Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 11 Tạo thành ảnh nhị phân từ ảnh xám đầu vào Nhằm tách được foreground và forground Thực hiện bằng cách chọn ngưỡng T, và tạo ảnh ouput theo công thức 1 g ( x, y) 0 f ( x, y) T f ( x, y) T Chỉ làm việc tốt với ảnh có bi-model histogram, ít... cần xác định cách di chuyển của search window Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 24 Nguồn: Dorin Comaniciu and Peter Meer, Distribution Free Decomposition of Multivariate Data, Pattern Analysis & Applications ( 199 9)2:22–30 Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 25 Mục tiêu của mean shift algorithm là tìm cực trị cục bộ của density theo phân phối xác định Nghĩa là, xác định cách di chuyển search... Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 29 Thành phần Được gọi là mean shift vector Chính là vector di chuyển của search window sau mỗi bước lặp n xx 2 i xi i 1 g h mh ( x) x 2 x xi n g i 1 h Thủ tục di chuyển search window như sau Tính toán ở bước t, mh(xt) Translate window: xt+1 = xt+mh(xt) Bài giảng Xử lý ảnh - TS... mean Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 15 Variance của mỗi nhóm 𝑘 𝑖=0 𝜎12 = 𝜎22 = Variance của toàn bộ ảnh: 𝐿−1 𝑖=𝑘+1 𝜎2 2 𝑖 − 𝜇1 𝑘 𝑃1 𝑘 = 𝑖 − 𝜇2 𝑘 𝑃2 (𝑘) 𝐿−1 𝑖=0 𝑝 𝑖 2 𝑝 𝑖 𝑖 − 𝜇𝐺 𝑖 2 𝑝 𝑖 𝜎 2 = 𝑃1 𝑘 𝜎12 + 𝑃2 𝑘 𝜎22 + 𝑃1 𝑘 𝜇1 𝑘 − 𝜇𝐺 𝑘 + 𝑃2 𝑘 𝜇2 𝑘 − 𝜇𝐺 𝑘 2 2 Trong đó:𝜎𝑤2 𝑘 = 𝑃1 𝑘 𝜎12 + 𝑃2 𝑘 𝜎22 : within-class variance; 𝜎𝐵2 𝑘 = 𝑃1 𝑘 𝜇1 𝑘 − 𝜇𝐺 𝑘 variance 2 + 𝑃2 𝑘 𝜇2 𝑘 − 𝜇𝐺 𝑘 Bài giảng Xử lý ảnh. .. search window Sử dụng khái niệm kernel density estimation để xác định mean shift vector Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 26 Kernel density estimation là phương pháp non parametric để ước lượng density function của biến ngẫu nhiên Được dùng để ước lượng probability density Tìm Mean shift mode Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 27 Cho n điểm {xi}i=1, ,n thuộc Rd, cửa sổ bán kính h Đặt kernel... tracking, etc Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 22 1 2 3 4 5 Mean Shift Algorithm Xác định kích thước cửa sổ tìm kiếm (search window) Xác định vị trí ban đầu của search window cho mỗi điểm data Tính toán vị trí mean (centroid của dữ liệu) trong search window Xác định tâm của search window tại vị trí mean location có được ở bước 3 Lặp lại bước 3 và 4 đến khi hội tụ Bài giảng Xử lý ảnh - TS Ngô Quốc... Xử lý ảnh - TS Ngô Quốc Việt 18 Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 19 Chia ảnh thành các vùng Thực hiện phân ngưỡng thích nghi trên từng vùng Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 20 Tham khảo mã nguồn openCV_AdaptiveThresHold Bài giảng Xử lý ảnh - TS Ngô Quốc Việt 21 Mean shift là thuật giải lặp nonparametric hoặc còn gọi là nonparametric density gradient estimation dựa trên cách tiếp cận