Tìm hiểu phương pháp phân đoạn ảnh màu và ứng dụng

89 631 2
Tìm hiểu phương pháp phân đoạn ảnh màu và ứng dụng

Đ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

MỞ ĐẦU Xử lý ảnh mảng quan trọng kỹ thuật thị giác máy tính, tiền đề cho nhiều nghiên cứu thuộc lĩnh vực Hai nhiệm vụ trình xử lý ảnh nâng cao chất lượng thông tin hình ảnh xử lý số liệu cung cấp cho trình khác có việc ứng dụng thị giác vào điều khiển Một hệ thống xử lý nhận dạng ảnh chia làm thao tác khác Trong đó, thao tác phân đoạn ảnh xem thao tác khó, quan trọng cần thiết [4] Kết nhận dạng ảnh phụ thuộc nhiều vào công đoạn Độ xác trình phân đoạn ảnh có ý nghĩa định tới xử lý tính toán sau Phân đoạn đóng vai trò trung tâm số xử lý kĩ thuật phân tích chất lượng sản phẩm, kiểm tra trình lắp ráp chi tiết điện, v.v khâu trung gian cần thiết cho trình xử lý xử lý y học Phân đoạn thao tác chia nhỏ ảnh đầu vào thành miền vật thể với mức độ tùy theo nhu cầu xử lý để biểu diễn, phân tích, nhận dạng ảnh, v.v Chung lại mục tiêu phân đoạn ảnh làm bật tách hẳn vật thể cần quan tâm từ ảnh ban đầu; làm đơn gián hóa và/ thay đổi cách biểu diễn có ý nghĩa dễ dàng để phân tích [1] Phân đoạn thường sử dụng để xác định vị trí đối tượng ranh giới (đường dây, đường cong, v.v.) hình ảnh Do đề tài có ý nghĩa cần thiết thực Cấu trúc luận văn chia làm chương: Chương 1: Trình bày tổng quan xử lý ảnh; phân đoạn vai trò phân đoạn ảnh; số phương pháp phân đoạn ảnh đa cấp xám Chương 2: Trình bày mô hình (không gian màu) vài kỹ thuật phân đoạn ảnh màu đại diện Chương 3: Trên sở lý thuyết thuật toán phân đoạn ảnh đa cấp xám trình bày chương I phân đoạn ảnh màu chương II, chương ứng dụng sở lý thuyết với thuật toán vào cài đặt chương trình Demo gồm thuật toán Kmean, lý thuyết đồ thị không gian màu CIE Chương 4: Phần kết luận nêu tóm tắt kết đạt đưa hướng giải quyết, nghiên cứu tương lai CHƯƠNG I: TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ PHÂN ĐOẠN 1.1 TỔNG QUAN VỀ XỬ LÝ ẢNH Quá trình xử lý nhận dạng ảnh xem trình thao tác ảnh đầu vào nhằm cho kết mong muốn [3] Kết đầu trình xử lý ảnh ảnh “tốt hơn” kết luận Ảnh vào Xử lý ảnh Ảnh (tốt hơn) Kết luận Hình 1.0 Quá trình xử lý ảnh Ảnh xử lý ảnh xem ảnh n chiều Bởi vì, ảnh xem tập hợp điểm ảnh Trong đó, điểm ảnh xem đặc trưng cường độ sáng hay dấu hiệu vị trí đối tượng không gian xem hàm n biến P(c1, c2, , cn) Sơ đồ tổng quát hệ thống xử lý ảnh: Thu nhận ảnh Tiền xử lý ảnh Phân đoạn ảnh Biểu diễn mô tả ảnh Nhận dạng nội suy Hình 1.1 Các bước hệ thống xử lý ảnh 1.1.1.Tiền xử lý Sau thu nhận, ảnh nhiễu độ tương phản thấp nên cần đưa vào tiền xử lý để nâng cao chất lượng [1,2] Tiền xử lý giai đoạn xử lý ảnh số Tuỳ thuộc vào trình xử lý giai đoạn thực công đoạn khác như: nâng cấp, khôi phục ảnh, nắn chỉnh hình học, khử nhiễu v.v 1.1.2 Trích chọn đặc điểm Các đặc điểm đối tượng trích chọn tuỳ theo mục đích nhận dạng trình xử lý ảnh [3] Trích chọn hiệu đặc điểm giúp cho việc nhận dạng đối tượng ảnh xác, với tốc độ tính toán cao dung lượng nhớ lưu trữ giảm a Phân đoạn Phân đoạn (phân vùng ) ảnh đầu vào thành vùng thành phần để biểu diễn phân tích, nhận dạng ảnh Ví dụ: để nhận dạng chữ (hoặc mã vạch) phong bì thư cho mục đích phân loại bưu phẩm, cần chia câu, chữ địa tên người thành từ, chữ, số (hoặc vạch) riêng biệt để nhận dạng b) Biểu diễn mô tả ảnh Đầu ảnh sau phân đoạn chứa điểm ảnh vùng ảnh (ảnh phân đoạn) cộng với mã liên kết với vùng lận cận Việc biến đổi số liệu thành dạng thích hợp cần thiết cho xử lý máy tính Việc chọn tính chất để thể ảnh gọi trích chọn đặc trưng gắn với việc tách đặc tính ảnh dạng thông tin định lượng làm sở để phân biệt lớp đối tượng với đối tượng khác phạm vi ảnh nhận 1.1.3 Nhận dạng nội suy ảnh Nhận dạng ảnh trình xác định ảnh Quá trình thường thu cách so sánh với mẫu chuẩn học (hoặc lưu) từ trước Nội suy phán đoán theo ý nghĩa sở nhận dạng Ví dụ: loạt chữ số nét gạch ngang phong bì thư nội suy thành mã điện thoại Có nhiều cách phân loai ảnh khác ảnh Theo lý thuyết nhận dạng, mô hình toán học ảnh phân theo hai loại nhận dạng ảnh bản: Nhận dạng theo tham số nhận dạng theo cấu trúc Một số đối tượng nhận dạng phổ biến áp dụng khoa học công nghệ là: nhận dạng ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận dạng văn (Text), nhận dạng vân tay, nhận dạng mã vạch, nhận dạng mặt người.v.v 1.2 VAI TRÒ CỦA PHÂN ĐOẠN Phân đoạn thao tác chia nhỏ ảnh đầu vào thành miền vật thể với mức độ tùy theo nhu cầu xử lý Mục tiêu phân đoạn ảnh làm bật tách hẳn vật thể cần quan tâm từ ảnh ban đầu; làm đơn gián hóa và/ thay đổi cách biểu diễn có ý nghĩa dễ dàng để phân tích [1] Có nhiều kiểu phân đoạn xác định biên vật thể, xử lý vùng ảnh, tách bạch rõ ràng vật thể ngưỡng, v.v chung lại mục tiêu phân đoạn ảnh làm bật tách hẳn vật thể cần quan tâm từ ảnh ban đầu Trong thao tác xử lý nhận dạng ảnh phân đoạn ảnh xem thao tác khó, quan trọng cần thiết [4] Độ xác trình phân đoạn ảnh có ý nghĩa định tới xử lý tính toán sau 1.3 PHÂN ĐOẠN ẢNH ĐA CẤP XÁM Phân đoạn ảnh màu dựa sở phân đoạn ảnh đa cấp xám [4], mà trước tìm hiểu phân đoạn ảnh màu, nội dung đưa vài kỹ thuật phân đoạn ảnh đa cấp xám tiêu biểu Kỹ thuật phân đoạn ảnh màu trình bày chương II 1.3.1 Tách không liên tục Phần nói ba kỹ thuật để tách mức xám không liên tục ảnh số: điểm, đường biên Cách phổ biến để tìm không liên tục sử dụng mặt nạ quét qua hết ảnh Ví dụ mặt nạ 3x3 hình 1.2, trình bao gồm việc tính tổng tích trọng số với mức xám vùng Hình 1.2 Mặt nạ trọng số mặt nạ qua để thu đáp ứng mặt nạ: R = w1 z1 + w z + + w z9 = ∑ w i zi (1.1) i =1 Trong đó, zi mức xám Pixel xác định mặt nạ, w i trọng số mặt nạ Thông thường, đáp ứng mặt nạ xác định chủ yếu dựa vào vị trí tâm mặt nạ 1.3.1.1 Tách điểm ảnh Về nguyên tắc, việc tách điểm cô lập ảnh đơn giản Ví dụ sử dụng mặt nạ hình 1.3a, ta tách điểm có vị trí mà mặt nạ tập trung nếu: |R| ≥T (1.2) Ở T ngưỡng dương R xác định (1.1) Về bản, công thức đo độ chênh lệch điểm trung tâm lân cận Ý tưởng chủ đạo điểm cô lập (điểm có mức xám khác với nó, định vị vùng đồng nhận thấy) khác so với điểm xung quanh, dễ dàng bị tách loại mặt nạ Lưu ý điểm cô lập phải đủ lớn (xác định T) Tổng hệ số mặt nạ 0, điều chứng tỏ đáp ứng mặt nạ vùng có mức xám không đổi Hình 1.3b minh họa cho việc tách điểm cô lập ảnh Hình 1.3b biểu diễn ảnh chụp tia X bề mặt tua bin động phản lực trạng thái bị rỗ Có pixel màu đen đơn lẻ vùng bị rỗ Hình 1.3c kết sau áp dụng tách điểm cách sử dụng mặt nạ 1.3a cho ảnh 1.3b Hình 1.3d kết áp dụng công thức 1.2 với ngưỡng T 90% giá trị pixel cao hình 1.3c (Việc chọn ngưỡng – threshold nói chi tiết phần sau) Những pixel đơn rõ ràng ảnh Hình 1.3 Minh họa cho việc tách điểm Đây cách xử tách đặc biệt dựa sở pixel đơn không liên tục đồng mặt nạ tách Khi điều kiện không thỏa mãn ta dùng phương pháp khác phù hợp (sẽ đề cập chương này) để tách mức xám không liên tục 1.3.1.2 Tách dòng Phương pháp tách dòng Cho mặt nạ hình 1.4 Nếu ma trận di chuyển qua ảnh, đáp ứng mạnh đường có hướng nằm ngang (độ dày pixel) Với không đổi, kết trả lớn đường qua hàng mặt nạ Thực nghiệm cho thấy mặt nạ thứ hình 1.4 đáp ứng tốt đường có hướng +45 o, mặt nạ thứ đáp ứng tốt với đường thẳng đứng, mặt nạ thứ tư đáp ứng tốt với đường có hướng -45o Chú ý hệ số mặt nạ có tổng 0, hệ số đáp ứng mặt nạ vùng có mức xám không đổi Hình 1.4 Các mặt nạ dùng tách dòng Đặt R1 , R2 , R3 R4 đáp ứng mặt nạ hình 1.4 từ trái qua phải, Ri xác định (1.1) Cho mặt nạ quét qua toàn ảnh Nếu điểm xác định hình, | Ri |>| R j | với j≠i, ta nói điểm có hướng phù hợp với hướng mặt nạ i Ví dụ điểm ảnh mà | R1 |>| R j |, với j=2,3,4, điểm có hướng phù hợp với hướng đường nằm ngang Lần lượt quan tâm đến việc tách đường có hướng xác định Trong trường hợp này, sử dụng mặt nạ phù hợp với hướng ngưỡng đầu ra, theo biểu thức (1.2) Nói cách khác, quan tâm đến việc tách tất đường ảnh với hướng xác định mặt nạ cho trước, chạy mặt nạ qua ảnh tạo ngưỡng cho giá trị tuyệt đối kết Những điểm lại điểm có đáp ứng mạnh nhất, đường có độ dày pixel, phù hợp với hướng xác định mặt nạ Ví dụ sau minh họa cho điều Ví dụ: Giả sử quan tâm đến việc tìm tất đường có độ dày pixel có hướng -45o Với giả thuyết này, sử dụng mặt nạ cuối hình 1.4 Kết thể hình 1.5b Chú ý tất phần ngang phần đứng ảnh bị loại bỏ phần ảnh ban đầu mà có hướng -45o rõ hình 1.5b Để xác định đường phù hợp với mặt nạ chọn ngưỡng cho hình Kết việc sử dụng ngưỡng với giá trị lớn ảnh thể hình 1.5c Giá trị lớn lựa chọn tốt cho ngưỡng trường hợp này, ảnh đầu vào ảnh nhị phân Thực xong việc này, tìm đáp ứng mạnh Hình 1.5c biểu diễn tất điểm vượt qua ngưỡng màu trắng Hình 1.5 Ví dụ minh hoa tách dòng Trong trường hợp này, phương pháp tìm đoạn có độ dày pixel hướng -45o Những điểm cô lập nhìn thấy hình 1.5c điểm đáp ứng mạnh mặt nạ Trong ảnh ban đầu, điểm láng giềng chúng định hướng theo hướng mặt nạ đáp ứng mạnh Những điểm cô lập tách cách sử dụng mặt nạ hình 1.3a sau xóa 1.3.1.3 Tách biên ảnh Phương pháp tách điểm tách dòng kỹ thuật phân đoạn quan trọng, việc tách biên lại hoàn toàn khác xa với kỹ thuật trên, sử dụng phổ biến cho việc tách độ trung bình không liên tục mức xám Trong phần chúng nói công cụ đạo hàm bậc bậc nhấn mạnh thuộc tính chúng để tách biên cho ảnh *.Cơ sở tách biên: Một cách trực quan, biên tập hợp pixel ( nằm đường biên giới vùng) liên kết với Tuy nhiên, biên cạnh có khác nhau.Về ta xem xét cách ngắn gọn, cạnh khái niệm “cục bộ”, đường biên miền mang tính toàn cục nhiều Một định nghĩa hợp lý “biên” đòi hỏi khả đo chuyển tiếp mức xám Chúng ta bắt đầu việc làm mô hình cho biên việc đo đạc chuyển tiếp trung bình mức xám mang tính hình thức Một cách trực quan, biên lý tưởng có thuộc tính mô hình hình 1.6a Theo mô hình biên lý tưởng tập hợp pixel (ở theo hướng thẳng đứng) liên kết với nhau, thành phần biên có vị trí bước chuyển tiếp trực giao mức xám Hình 1.6 Biên lý tưởng không lý tưởng Trong thực tế, quang học, lấy mẫu, cách thu nhận hình ảnh khác không hoàn hảo dẫn đến biên bị nhòe với độ nhòe xác định nhân tố chất lượng hệ thống thu nhận hình ảnh, tốc độ lấy mẫu điều kiện chiếu sáng ảnh Vì kết biên mô hình gần giống với đoạn dốc đoạn thẳng đứng, thể hình 1.6b Độ nghiêng dốc tỉ lệ nghịch với độ nhòe biên Trong mô hình này, đường biên mảnh (có độ dày pixel) Thay vào đó, điểm biên điểm chứa đoạn dốc biên tập hợp điểm liên thông Độ dày đường biên xác định chiều dài đoạn dốc, biên biến đổi từ đầu đến cuối mức xám Độ dài xác định độ nhòe Dễ dàng nhận rằng: biên nhòe dày biên sắc nét mảnh Hình 1.7 Đạo hàm bậc mức xám Hình 1.7a hiển thị phần trích từ hình 1.6b Ảnh 1.7b thể mặt nghiêng mức xám theo hướng nằm ngang biên nằm hai vùng Hình cho thấy đạo hàm bậc 1, bậc mức xám Đạo hàm bậc dương điểm chuyển tiếp từ đoạn dốc theo hướng di chuyển từ trái sang phải, không đổi điểm nằm dốc, vùng có mức xám không đổi Đạo hàm bậc hai dương biến đổi tương ứng với phía tối biên, âm biến đổi tương ứng với phía sáng biên, dọc theo dốc vùng mức xám không đổi Dấu đạo hàm 1.7b bị đảo ngược biên biến đổi từ sáng sang tối Từ quan sát ta kết luận độ lớn đạo hàm bậc sử dụng để phát dấu hiệu biên điểm hình (nghĩa xác định điểm có nằm dốc không) Tương tự dấu đạo hàm bậc sử dụng để xác định pixel cạnh nằm phía sáng hay phía tối biên Chúng ta ý thêm hai thuộc tính đạo hàm bậc hai xung quanh biên: (1) Nó tạo hai giá trị cho cạnh (điều không mong muốn) (2) Một đường thẳng tưởng tượng nối từ điểm dương lớn điểm âm nhỏ đạo hàm bậc hai qua gần với điểm biên Thuộc tính zerocrossing đạo hàm bậc hai hữu dụng cho việc xác định trung tâm biên dày 10 Hình 1.8 Độ nhậy đạo hàm nhiễu Ví dụ: Biên thể Hình 1.6 1.7 nhiễu Cột Hình 1.8 thể biên (đoạn dốc) phân thành vùng đen bên trái vùng trắng bên phải Lưu ý toàn biến đổi từ đen sang trắng biểu diễn cạnh đơn Vùng ảnh bên trái ảnh nhiễu Ba ảnh lại cột Hình 1.8 bị sai lệch nhiễu Gauss với “zero mean” độ lệch chuẩn mức xám 0.1 1.0 10 Đồ thị biểu diễn bên ảnh hình chiếu mức xám đường quét theo hàng ngang qua toàn ảnh Các ảnh cột hình 1.8 đạo hàm bậc ảnh cột Xét ảnh cùng, đạo hàm vùng đen trắng không đổi Đạo hàm đoạn biên không đổi số biểu thị độ nghiêng dốc Đạo hàm không đổi biểu diễn màu xám Hình cột đạo hàm tăng so với trường hợp nhiễu Và hình cuối cột 2, khó để biên Yếu tố gây sai lệch nhiễu Ảnh cuối có nhiều hạt nhỏ sai lệch nhận thấy Ví dụ cho thấy độ nhạy đạo hàm nhiễu, đạo hàm bậc hai nhạy nhiễu Đạo hàm bậc hai ảnh không nhiễu ảnh bên phải 11 Khởi tạo ma trận khoảng cách distance với giá trị có kích thước ma trận a để lưu ma trận với vùng màu sau: distance = repmat(0,[size(a), nColors]); Thực hiện tính toán khoảng cách Ơclit với điểm ảnh để tạo ma trận khoảng cách distance tương ứng với màu hay vùng ảnh khác for count = 1:nColors distance(:,:,count) = ( (a - color_markers(count,1)).^2 + (b - color_markers(count,2)).^2 ).^0.5; end Tiếp theo tạo ma trân value với giá trị phần tử nhỏ ma trân distance ma trận nhãn lable với giá trị phần tử thứ tự mà trận distance mà có giá trị điểm ảnh nhỏ Ví dụ, điểm ảnh vị trí (2x2) ma trận distance thứ tự có giá trị nhỏ V vị trí (2x2) ma trận value có giá trị V vị trí (2x2) ma trận lable có giá trị [value, label] = min(distance,[ ],3); Gán giá trị tương ứng lable theo ma trận color_labels: label = color_labels(label); Xóa ma trận distance không dùng đến nữa: clear value distance; Bước 4: Hiển thị kết phân loại màu Sao lưu ma trận lable: rgb_label = repmat(label,[1 3]); Tạo ma trận segmented_images giá trị kích thước ảnh: segmented_images = repmat(uint8(0),[size(fabric), nColors]); Tạo ma trận tương ứng với vùng có màu khác rgb_label ma trận ảnh có giá trị khoảng [0 5] color ma trận ảnh ban đầu Ma trận Segmented_images có giá trị có kich thước ảnh ban đầu Với thứ tự màu count (vùng), xét pixel Color, với vị trí tương ứng mà pixel rgb_label có giá trị tương đương (~= ) với giá trị color_labels vị trí 76 count pixel Color gán 0, pixel vị trí tương ứng segmented_images nhận giá trị Ngược lại giá trị pixel tương ứng Color không thay đổi pixel tương ứng segmented_images nhận giá trị Color Như vậy, sau vòng lặp tạo ma trận ảnh (các vùng ảnh) với màu tương ứng; điểm ảnh màu khác nhận giá trị Và hiển thị ảnh vùng lên màu vùng đó, màu lại thay màu đen for count = 1:nColors color = fabric; color(rgb_label ~= color_labels(count)) = 0; segmented_images(:,:,:,count) = color; % Hiển thị kết quả: figure;imshow(segmented_images(:,:,:,count)), title(‘’); end 3.1.2 Kết phân đoạn Kết việc áp dụng theo phương pháp cho ta thấy đây.Với ảnh đầu vào có màu phân biệt (Red, Green, Purple, Yellow Magenta) phân làm ảnh thành phần ( đoạn) tương ứng với màu khác 77 Ảnh ban đầu Red Green Purple Magenta Yellow Hình 3.1 Kết phân đoạn với không gian màu CIE (L*a*b*) 3.2 KHÔNG GIAN L*a*b* VÀ THUẬT TOÁN K-MEAN 3.2.1 Phân tích chương trình Bước 1: Đọc ảnh Trước hết ảnh đầu vào chuyển sang ma trận, phần tử ma trận mang giá trị pixel Ma trận he: he = imread('bando.png'); Bước 2: Chuyển đổi từ không gian màu RGB sang không gian màu L*a*b* Chuyển đổi hình ảnh sang không gian màu L*a*b* cách sử dụng hàm makecform applycform cform = makecform('srgb2lab'); lab_he = applycform(he,cform); Bước 3: Phân lớp không gian a*b* cách sử dụng K-means clustering Gom nhóm thực việc gom pixel vào nhóm khác nhau, nhóm có màu khác tương ứng với vùng ảnh sau phân đoạn xong K-means clustering coi pixel có vị trí không gian Nó thực 78 việc phân đoạn mà cho pixel nhóm gần tốt xa đối tượng nhóm khác tốt K-means clustering đòi hỏi phải rõ số lượng nhóm để phân đoạn khoảng cách để xác định hai pixel nhóm khác Xuất phát từ trục tọa độ biểu thị không gian a*b*, Pixel tương ứng với giá trị a* b* Sử dụng K-means để phân nhóm đối tượng thành nhóm việc sử dụng khoảng cách hình học Ơclit Thuật toán thể hàm kmeans: ab = double(lab_he(:,:,2:3)); nrows = size(ab,1); % Số hàng ma trận ab ncols = size(ab,2); % Số cột ma trận ab ab = reshape(ab,nrows*ncols,2); %Chuyển ab sang nrows*ncols cột nColors = 3; % số màu (số đoạn) cần tách [cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean', 'Replicates',3); Bước 4: Gán nhãn cho Pixel ảnh từ kết kmeans Kết đầu thuật toán thông qua hàm kmeans hai ma trận cluster_idx cluster_center Ma trận Cluster_center tâm vùng màu khác nhau, giá trị trung bình theo Ơclit a* b* với vùng Chúng sử dụng bước Ma trận cluster_idx chứa nhãn Pixel ảnh Với đầu vào ảnh cụ thể trên, Cluster_center có giá trị sau: a* b* 86.6252 150.8760 Vung1 Cluster_center = 183.5812 31.3185  Vung 124.7976 121.3532 Vung Chuyển ma trận cluster_idx kích thước ban đầu lưu vào ma trận pixel_labels: pixel_labels = reshape(cluster_idx,nrows,ncols); Hiển thị hình ảnh sau gán nhãn, kết xem hình 3.2 b : figure; imshow(pixel_labels,[]), title(‘Ảnh gán nhãn’); Bước 5: Tạo ảnh tương ứng vơi vùng màu khác 79 Ta sử dụng ma trận hình ảnh gán nhãn (pixel_labels), phân chia đối tượng hình ảnh màu sắc khác Ở cho kết với hình có vùng màu khác Tạo ma trận segmented_images rỗng để chứa kết vùng: segmented_images = cell(1,3); rgb_label = repmat(pixel_labels,[1 3]); for k = 1:nColors color = he; color(rgb_label ~= k) = 0; segmented_images{k} = color; imshow(segmented_images{k}), title(‘’); % Hiển thị kết end rgb_label ma trận ảnh có giá trị khoảng [0 3] color ma trận ảnh ban đầu Với thứ tự màu k (vùng), xét pixel Color, với vị trí tương ứng mà pixel rgb_label có giá trị tương đương (~= ) với giá trị k pixel Color gán 0, pixel vị trí tương ứng segmented_images{k} nhận giá trị Ngược lại giá trị pixel tương ứng Color không thay đổi pixel tương ứng segmented_images{k} nhận giá trị Color Như vậy, sau vòng lặp tạo ma trận ảnh (3 vùng ảnh) với màu tương ứng; điểm ảnh màu lại nhận giá trị Và hiển thị ảnh vùng lên màu vùng đó, màu lại thay màu đen 3.2.2 Kết phân đoạn Dưới (Hình 3.2) kết của thuật toán áp dụng số vùng màu cần phân chia 2: a) Ảnh ban đầu 80 b) Sau gán nhãn c) Vùng màu thứ d) Vùng màu thứ hai Hình 3.2 Kết phân đoạn thuật toán K-mean với vùng chia Dưới (Hình 3.3) kết áp dụng số vùng màu cần phân chia 3: a) Ảnh ban đầu c) Vùng màu thứ b) Sau gán nhãn d) Vùng màu thứ hai e) Vùng màu thứ ba Hình 3.3 Kết phân đoạn thuật toán K-mean với vùng chia Giữa vùng có khác biệt Để ý thầy vùng 3.2d tách thành vùng 3.3d 3.3e Để làm rõ ta chọn số vùng cần phân chia 4, kết thể qua Hình 3.4 81 a) Ảnh ban đầu b) Sau gán nhãn c) Vùng màu thứ e) Vùng màu thứ ba d) Vùng màu thứ hai f) Vùng màu thứ tư Hình 3.4 Kết phân đoạn thuật toán K-mean với vùng chia Qua việc chọn số vùng phân chia khác 4, ta thấy kết phân vùng khác Trường hợp chọn số vùng kết có thêm hình 3.4f Nếu để ý kĩ, ta thấy vùng f tách thêm từ vùng 3.3e 3.3d Sự khác biệt thể rõ vùng f, e, f 3.3 GOM NHÓM THEO LÝ THUYẾT ĐỒ THỊ 3.3.1 Phân tích chương trình a Tổng quan Ở chương giới thiệu lý thuyết giải thuật phương pháp Nội dung đề cập đến việc cài đặt giải thuật có chương trình *.Các thông số đầu vào hàm chương trình gồm có: + I : ma trận ảnh đầu vào + SI, SX: Hệ số sử dụng tính toán trọng số + r: Hệ số sử dụng tính toán + sNcut: Giá trị nhỏ (ngưỡng) để phân vùng + sArea: Kích thước vùng (ngưỡng) làm sở để phân vùng *.Các hàm tính toán: + Hàm NcutMain(sNcut,sArea,txtImage): hiển thị vùng ảnh sau phân vùng hàm segI = NcutImageSegment(I, SI, SX, r, sNcut, sArea) + Hàm segI = NcutImageSegment(I, SI, SX, r, sNcut, sArea): thực phân vùng ảnh thông qua hàm W = NcutComputeW(I, SI, SX, r) [Seg Id 82 Ncut] = NcutPartition(Seg, W, sNcut, sArea, 'ROOT') Kết đầu mảng ma trận segI tương ứng với vùng phân đoạn + Hàm W = NcutComputeW(I, SI, SX, r): Tính toán ma trận trọng số + Hàm [Seg Id Ncut] = NcutPartition(Seg, W, sNcut, sArea, 'ROOT'): Thực phân ảnh vùng + Hàm ncut = NcutValue(t, U2, W, D): Tính toán vectơ riêng b Chương trình Sau nội dung chi tiết hàm tính toán chương trình: + Hàm hiển thị vùng ảnh sau phân vùng: function run = NcutMain(sNcut,sArea,txtImage) SI =5; SX = 6; r = 1.5 A = imread(txtImage); I=imresize(A,[160,160]); segI = NcutImageSegment(I, SI, SX, r, sNcut, sArea); for i=1:length(segI) figure; imshow(segI{i}); end end + Hàm thực phân vùng, kết vùng ảnh SegI: function SegI = NcutImageSegment(I, SI, SX, r, sNcut, sArea) [nRow, nCol, c] = size(I); N = nRow * nCol; V = reshape(I, N, c); W = NcutComputeW(I, SI, SX, r); % Tính ma trận trọng số W, vecto riêng D Seg = (1:N)'; % Đoạn có toàn nút [1 N]' [Seg Id Ncut] = NcutPartition(Seg, W, sNcut, sArea, 'ROOT'); for i=1:length(Seg) subV = zeros(N, c); subV(Seg{i}, :) = V(Seg{i}, :); SegI{i} = uint8(reshape(subV, nRow, nCol, c)); fprintf('%s Ncut = %f\n', Id{i}, Ncut{i}); end 83 end + Hàm tính toán ma trận trọng số W: function W = NcutComputeW(I, SI, SX, r); [nRow, nCol, c] = size(I); N = nRow * nCol; W = sparse(N,N); if c == F = F3(I); % Véc tơ đặc trưng else F = F2(I); % Véc tơ đặc trưng end F = reshape(F, N, 1, c); X = cat(3, repmat((1:nRow)', 1, nCol), repmat((1:nCol), nRow, 1)); X = reshape(X, N, 1, 2); for ic=1:nCol for ir=1:nRow % |X(i) - X(j)|

Ngày đăng: 16/04/2017, 17:29

Từ khóa liên quan

Mục lục

  • Nhận thức về màu sắc là quá trình quan trọng của con người. Việc nhận thức này phụ thuộc vào tính chất vật lý của ánh sáng và xử lý thị giác của mắt. Con người dùng màu sắc để phân biệt các đối tượng khác nhau.

  • Trong xử lý ảnh, màu sắc cung cấp phép đo lường đa dạng tại mỗi điểm ảnh đơn giúp cho quá trình phân loại các đối tượng trong ảnh.

  • 2.2.2 Biến đổi không tuyến tính

  • 2.2.2.1 Không gian màu (Nrgb)

  • 2.2.2.2 Không gian màu HSI

  • 2.2.2.3 Không gian màu CIE

  • 2.2.2.4 Không gian màu Munsell

  • Hệ thống màu được đưa ra vào năm 1969 [10]. Nó là một trong những phương pháp sớm nhất để chỉ định màu sắc. Hệ thống màu này sử dụng ba thuộc tính để nhận biết màu đó là màu Munsell, giá trị và sắc độ (Chroma). Hình dưới đây mô tả về không gian màu Munsell.

  • Có thể coi 5 màu chính là Red (R), yellow (Y), Green (G), Blue (B) và Purple (P). Kết hợp các màu này với nhau có: YR, GY, BG, PB và RB; các màu kết hợp này nằm giữa hai màu thành phần . Vòng tròn màu chia ra thành 100 phần bằng nhau với năm màu chính và năm màu kết hợp. Tất cả các giá trị màu được phân bố trên đường tròn màu, và có thể được mô tả bằng hai cách. Thứ nhất là: chỉ ra sự kết hợp tương đối với một màu xác định, ví dụ là R, 2R và 100R. Cách thứ hai là gán một số cho một màu: 5R=0, 6R=1 sau đó tăng số đó lên theo chiều kim đồng hồ trên đường trọn màu để nhận một số với mỗi màu.

  • Giá trị Munsell (V) mô tả độ sáng của màu, nó xác định giá trị của màu đen là 0 và giá trị của màu trắng là 10. Phương trình sau đây mô tả quan hệ giữa V và Y:

  • Y=1.2219V - 0.23111V­2 + 0.23951V3 - 0.021009V4 + 0.0008404V5,

  • Sắc độ (C) cũng giống như các thành phần được trình bày trong CIE, nó mô tả độ tinh khiết của màu. Khi C bằng 0 thì là không màu.

  • Giống như không gian HSI, không gian Munsell cũng có thể được biểu diễn bởi hệ thống tọa độ hình trụ gồm H, V và C. Tuy nhiên, chúng ta không thể chuyển đổi hệ thống màu Munsell sang chuẩn CIE bằng một công thức tính toán. Do đó phương pháp cần thiết là ánh xạ tín hiệu màu thực vào không gian Munsell [10]. Có ba mức để biểu diễn hình ảnh đã được chứng minh trong thí nghiệm. Mức thấp nhất, mật độ, có thể nhận được từ thành phần trắng hoặc đen của hình ảnh; mưc độ tiếp theo, ba màu chính, có thể thực hiện trên ảnh RGB; và mức độ cao nhất, ba thuộc tính về giác quan có thể nhận biết hình ảnh có hệ thống màu Munsell HVC.

Tài liệu cùng người dùng

Tài liệu liên quan