Đề tài phân vùng với tách ngưỡng tự động

50 1.1K 1
Đề tài phân vùng với tách ngưỡng tự độ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

Học viện công nghệ bưu viễn thông Khoa Công nghệ thông tin ******** BÁO CÁO XỬ LÝ ẢNH ĐỀ TÀI: PHÂN VÙNG VỚI TÁCH NGƯỠNG TỰ ĐỘNG Giáo viên giảng dạy: Phạm Việt Hưng Nhóm sinh viên thực hiện: Nhóm 1: - Lớp: D09CN2 Nguyễn Thị Bích Hoàng Thị Ngọc Nguyễn Thị Thi Nguyễn Thị Trâm Nguyễn Hải Yến Mục lục BACKGROUD Cơ sở thực nghiệm I Giới thiệu chung phân vùng ảnh II Đôi điều phân vùng ảnh theo ngưỡng PHÂN VÙNG ẢNH THEO NGƯỠNG 10 I Làm trơn ảnh – Làm trơn histogram – Chọn ngưỡng dựa vào biểu đồ 10 II Thuật toán đẳng điệu 13 III Thuật toán đối xứng 18 IV Thuật toán tam giác 24 V Kĩ thuật tìm ngưỡng tự động .29 Phân vùng với ngưỡng toàn cục 30 KẾT LUẬN CHUNG .35 PHỤ LỤC 35 BẢNG KẾT QUẢ THỬ NGHIỆM .42 MỞ ĐẦU Một bước then chốt xử lý ảnh số phân vùng ảnh.Với mong muốn tài liệu trở nên có ích cho bạn đọc muốn tìm hiểu bước đầu kĩ thuật phân đoạn ảnh môn học Xử Lý Ảnh Tài liệu giới thiệu đến người số phương pháp phân vùng ảnh dựa theo ngưỡng, hi vọng hành trang để bạn chạm đến cánh cửa tri thức, tạo nguồn cảm hứng để bạn sâu tìm hiểu môn học thu vị Mục tiêu tài liệu: - Giúp người đọc hiểu tầm quan trọng Xử lý ảnh nói chung phân vùng ảnh nói riêng - Nắm sơ phân vùng ảnh theo ngưỡng - Hiểu áp dụng thuật toán tìm ngưỡng tự động: thuật toán đẳng điệu, đối xứng nền, làm trơn histogram, tam giác, tìm ngưỡng toàn cục… vào xử lý ảnh Với mục tiêu trên, tài liệu gồm có phần sau: - Phần Backgroup: Vài nét Xử lý ảnh - Cơ sở thực nghiệm: Giới thiệu chung phân vùng ảnh đôi điều phân vùng ảnh theo ngưỡng - Phân vùng ảnh theo ngưỡng: Trình bày số kĩ thuật điển hình phân vùng ảnh theo ngưỡng: làm trơn histogram, đẳng điệu, đối xứng nền…., số vấn đề cần lưu ý kĩ thuật tìm ngưỡng để phân vùng ảnh - Phụ lục: phần code matlab cho kĩ thuật trình bày phần 3 - Bảng kết thực nghiệm: Đưa kết thực nghiệm ứng dụng thuật toán phần vào số loại ảnh BACKGROUD Xử lý ảnh chuyên ngành quan trọng lâu đời công nghệ thông tin Xử lý ảnh áp dụng nhiều nhiều lĩnh vực khác y học, vật lý, hóa học, tìm kiếm tội phạm, Mục đích chungcủa XLA chi làm phần: - Biến đổi ảnh làm tăng chất lượng ảnh - Tự động nhận dạng, đoán ảnh, đánh giá nội dung ảnh Quá trình xử lý ảnh mô tả sơ đồ sau: Phân đoạn Biểu diễn mô tả ảnh Tiền xử lý ảnh Cơ sở tri thức Nhận dạng giải thích Thu nhận ảnh - Thu nhận ảnh: công đoạn mang tính định trình XLA Ảnh đầu vào sẽthunhận qua thiết bị camera, sensor, máy scanner… sau tín hiệu số hóa Các thông số quan trọng bước độ phân giải, chất lượng màu, dung lượng nhớ tốc độthunhận ảnh thiết bị - Tiền xử lý: Ở bước này, ảnh cải thiện độ tương phản, khử nhiễu, khử độ lệch… với mục đích làm cho chất lượng ảnh trở nên tốt thường thực lọc - Phân đoạn : phân đoạn ảnh bước then chốt XLA Giai đoạn nhằm phân tích ảnh thành thành phần có tính chất dựa theo biên hay vùng liên thông Tiêu chuẩn để định vùng liên thông màu, mức xám hay độ nhám… Mục đích phân đoạn ảnh để có miêu tả tổng hợp nhiều phần tử khác cáu tạo nên ảnh thô Vì lượng thông tin chứa ảnh lớn- đa số ứng dụng cần trích chọn vài đặc trưng đó, cần có trình để giảm lượng thông tin khổng lồ Quá trình bao gồm phân vùng ảnh trích chọn đặc tính chủ yếu - Biểu diễn mô tả ảnh: kết bước phân đoạn ảnh thường cho dạng liệu điểm ảnh thô, hàm chứa biên vùng ảnh, tập hợp tất điểm ảnh thuộc vùng ảnh Trong hai trường hợp , chuyển đổi liệu thô thành dạng thích hợp cho việc xử lý tỏng máy tính cần thiết Để chuyển đổi chúng, câu hỏi cần phải trả lời nên biểu diễn ảnh dạng biên hay dạng hoàn chỉnh gồm tất điểm ảnh thuộc Biểu diễn dạng biên cho vùng phù hợp với ứng dụng quan tâm chủ yếu đến đặc trưng hình dạng bên đối tượng Biểu diễn dạng vùng lại thích hợp cho ứng dụng khai thác tính chất bên đối tượng, ví dụ vân ảnh cấu trúc xương Sự lựa chọn cách biểu diễn thích hợp cho vùng ảnh phần việc chuyển đổi liệu ảnh thô sang dạng thích hợp cho xử lý sau Chúng ta phải đưa phương pháp mô tả liệu chuyển đổi cho tính chất cần quan tâm đến làm bật lên, thuận tiện cho việc xử lý chúng - Nhận dạng giải thích: bước cuối trình XLA Nhận dạng ảnh nhìn nhận cách đơn giản việc gán nhãn cho đối tượng ảnh Giải thích công đoạn gán nghĩa cho tập đối tượng nhận biết Có thể thấy ứng dụng XLA bắt buộc phải tuân theo tất bước xử lý nêu trên, ví dụ ứng dụng chỉnh sửa ảnh nghệ thuật dừng lại bước tiền xử lý Một cách tổng quát chức xử lý bao gồm nhận nhận dạng giải thích thường có mặt hệ thống phân tích ảnh tự động, dùng để rút trích thông tin quan trọng từ ảnh, ví dụ ứng dụng nhận dạng ký tự quang học, nhận dạng chữ viết tay,… Như vậy, để xử lý ảnh phải trải qua nhiều bước, bước quan trọng khó khăn có lẽ phân đoạn ảnh.Nếu bước phân đoạn ảnh không tốt dẫn đến việc nhận diện sai lầm đối tượng ảnh.Trong khoảng 30 năm trở lại có nhiều thuật toán đề xuất để giải toán phân đoạn ảnh Các thuật toán hầu hết dựa vào thuộc tính quan trọng cảu điểm ảnh só với điểm lân cận là: Sự khác nhau(Dissimilarity) giống (Similarity) Các phương pháp dựa dự khác điểm ảnh gọi phương pháp biên ( boundary – based methods), phương pháp dựa giống cảu điểm ảnh gọi phương pháp miền (region based methods) Tuy nhiên, thuật toán theo hướng chưa cho kết phân đoạn tốt, hai phương pháp nắm bắt thuộc tính cục (local) ảnh Do đó, thời gian gần đây, việc tìm thuật toán nắm bắt thuộc tính toàn cục (global) ảnh trở thành xu hướng Mục đích nhóm em tìm hiểu phương pháp phân đoạn ảnh có theo hướng: phân đoạn dựa theo ngưỡng với thuật toán đưa Từ so sánh khả điểm yếu phương pháp Cơ sở thực nghiệm I Giới thiệu chung phân vùng ảnh Phân vùng ảnh thường coi bước phân tích hình ảnh với mục đích: Chia nhỏ hình ảnh thành vùng có ý nghĩa để phục vụ cho việc phân tích sâu hơn.Chúng ta hi vọng vùng thu tương ứng với phận vật lý đối tượng cảnh (3-D) biểu diễn hình ảnh (2-D).Để phân tích đốitượng ảnh, chúng tacần phải phân biệt đốitượngcần quan tâmvới phần cònlạicủa ảnh Những đốitượng tìm nhờ cáckỹ thuật phân vùng ảnh, theo nghĩa tách phần tiềncảnh khỏi hậucảnh ảnh.Nhìn chung, phân vùng độc lập nhiệm vụ khó khăn xử lý hình ảnh kĩ thuật số.Chúng tacần phải ý rằng: - Không cókỹ thuật phân vùng vạn năng, theo nghĩa áp dụng cho loại ảnh - Không có kỹ thuật phân vùng hoàn hảo Có thể hiểu phân vùng tiến trình chia ảnh thành nhiều vùng,mỗi vùng chứa đối tượng hay nhóm đối tượng kiểu Chẳng hạn, đối tượng kí tự trang văn đoạn thẳng vẽ kỹ thuật, nhóm đối tượng biểu diễn từ hay hai đoạn thẳng tiếp xúc Tất phương pháp phân vùng hình ảnh giả định rằng: Giá trị cường độ khác vùng khác khác Trong vùng, đối tượng tương ứng đại diện cho cảnh có giá trị cường độ tương tự Nghĩa điểm vùng ảnh có độbiến thiên giá trịmức xám tương đối đồng hay tính kết cấu tương đồng vùng ảnh tập hợp điểm có gần tính chất : mức xám, mức màu, độnhám… Dựa vào đặc tính vật lý ảnh, người ta có nhiều kĩ thuật phân vùng: phân vùng phân vùng dựa theo miền liên thông gọi phân vùng dựa theo miền đồng hay miền kề; phân vùng dựa vào biên gọi phân vùng biên Ngoài có kỹthuật phân vùng khác dựa vào biên độ, phân vùng dựa theo kết cấu… Xuất phát từ sở ý tưởng nêu trên, phạm vi tài liệu trình bày kĩ thuật phân vùng ảnh dựa theo ngưỡng với kĩ thuật tìm ngưỡng tự động (đẳng điệu, đối xứng nền, tách ngưỡng tự động, tìm ngưỡng toàn cục, tìm ngưỡng cục bộ…) áp dụng đối tượng ảnh II Đôi điều phân vùng ảnh theo ngưỡng Phân vùng ảnh theo ngưỡng : - Phân vùng theo ngưỡng tách vật thể ngưỡng chọn tự động - Việc chọn ngưỡng thực biểu đồ tần suất - Và ngưỡng phân biệt vùng Ý tưởng - Giả sử có ảnh bao gồm đối tượng - Chúng ta giả định đối tượng hai phân phối thống kê riêng biệt - Phân phối lớn nhiều so với phân bố đối tượng - Biểu đồ tần suất ảnh tổ hợp hai phân phối PHÂN VÙNG ẢNH THEO NGƯỠNG I Làm trơn ảnh – Làm trơn histogram – Chọn ngưỡng dựa vào biểu đồ Trong hầu hết trường hợp, ngưỡng chọn từ lược đồ độ sáng vùng hay ảnh cần phân đoạn Có nhiều kĩ thuật chọn ngưỡng tự động xuất phát từ lược đồ xám {h[b] | b=0, 1, …… -1} đưa Những kĩ thuật phổ biến trình bày Những kĩ thuật tận dụng lợi làm trơn liệu lược đồ ban đầu mang lại nhằm loại bỏ dao động nhỏ độ sáng Tuy nhiên thuật toán làm trơn cần phải cẩn thận, không làm dịch chuyển vị trí đỉnh lược đồ Nhận xét dẫn đến thuật toán làm trơn đây: Trong W lẻ W thường 10 Thuật toán Làm trơn Histogram function [ b ] = histsmooth( a , w ) %HISTSMOOTH This function smooth out a picture histogram % a is the input histogram % w is an odd number, throught error if w is an even number % b is the histogram that has been smoothed b=a; if rem(w,2)==0 str=[ 'w should be an odd not ' num2str(w)]; error(str); end s=size(a); b=zeros(1,s(2)); k=(w-1)/2; x=zeros(1,s(2)+k*2); for i=1:s(2) x(i+k)=a(i); end for j=1+k:s(2)+k m=x(j-k:j+k); b(j-k)=round(mean(m)); end end 36 Thuật toán đẳng điệu function [ t ] = ridandcal( a ) %RIDANDCAL This function find a threadhold from rid and cal method % a is the input histogram % t is the threadhold this method return t=127; s=size(a); t=round((s(2))/2)-1; tcu=-1; while t~=tcu sumg1=0; sumg2=0; sumhg1=0; sumhg2=0; tcu=t; for i=0:t sumg1=sumg1+i*a(i+1); sumhg1=sumhg1+a(i+1); end t1=sumg1/sumhg1; for i=t+1:s(2)-1 sumg2=sumg2+i*a(i+1); sumhg2=sumhg2+a(i+1); end t2=sumg2/sumhg2; t=round(round((t1+t2))/2); 37 end end Thuật toán đối xứng function [ t ] = symbg( a , b , p) %SYMBG This function find a threadhold using symmetry background method % a is the input histogram % b = if background is brighter % b = if background is darker % t is the threadhold this method return t=127; maxp=find(a==max(a)); maxp=maxp(end); x=find(a>0); if b==1 max1=(x(end)); a2=a(maxp:max1); sum2=sum(a2); kc=ones(1,max1); kc=kc*100; for i=maxp:max1; a1=a(maxp:i); kc(i)=abs((sum(a1)/sum2)*100-p); end k=find(kc==min(kc)); 38 t=maxp-(k-maxp)-1; else if b==0 min1=x(1); a2=a(maxp:-1:min1); sum2=sum(a2); kc=ones(1,maxp); kc=kc*100; for i=maxp:-1:min1 a1=a(i:maxp); kc(i)=abs((sum(a1)/sum2)*100-p); end k=find(kc==min(kc)); t=maxp+maxp-k-1; end end end Thuật toán tam giác function [ t ] = triangle( a, b ) %TRIANGLE This function find a threadhold using triangle method % a is the input histogram % b = if background is brighter % b = if background is darker % t is the threadhold this method return 39 s=size(a); if b==1 min1=0; else min1=s(2)-1; end max1=find(a==max(a))-1; vtpt=[ -max(a) max1-min1 ]; d=zeros(1,s(2)); if b==1 for i=0:max1 d(i+1)=abs(vtpt(1)*(imin1)+vtpt(2)*a(i+1))/sqrt(vtpt(1)^2+vtpt(2)^2); end else for i=max1:s(2) d(i)=abs(vtpt(1)*(imin1)+vtpt(2)*a(i))/sqrt(vtpt(1)^2+vtpt(2)^2); end end t=find(d==max(d))-1; end Thuật toán tách ngưỡng tự động (tách ngưỡng toàn cục) function thresh=globalthreshold(img,T,T0) %Threshold an image using global thresholding 40 %T is the initial threshold guess %When successive values of T become less than T0 % the algorithm finishes s=size(img); numelem=s(1)*s(2); imgfl=double(img); Tlast=-T0; while abs(T-Tlast)>T0 tmp=imgfl>T; zeros1=sum(tmp(:)); zeros2=numelem-zeros1; G1=tmp.*imgfl; 41 G2=(~tmp).*imgfl; mu1=sum(G1(:))/zeros1; mu2=sum(G2(:))/zeros2; Tlast=T; T=1/2*(mu1+mu2) end thresh=T; end BẢNG KẾT QUẢ THỬ NGHIỆM Thuật toán Làm trơn Histogram 42 43 Thuật toán đẳng điệu 44 45 Thuật toán đối xứng 46 Thuật toán tam giác 47 Thuật toán tách ngưỡng tự động(tách ngưỡng toàn cục) 48 49 50 [...]... tính với Gmin = 0 và Gmax = θk - mb,k+1 được tính với Gmin = θk+1và Gmax = 255 - Ngưỡng θk được tính như sau: 13 - Thuật toán được lặp đi lặp lại cho đến khi θk = θk+1 thì ngưỡng được chọn là ngưỡng không đổi này Hàm t =ridandcal(a) là hàm tìm ngưỡng dựa vào thuật toán đẳng điệu với:  với a là histogram đầu vào  t là ngưỡng thu được từ thuật toán đẳng điệu Hình ảnh minh họa: phân vùng ảnh theo ngưỡng. .. là ngưỡng thu được từ thuật toán tam giác Hình ảnh minh họa: ảnh phân vùng theo ngưỡng dựa vào thuật toán tam giác b=1 vì nền sáng hơn 25 26 27 Chọn b=1 Chọn b=0 28 Nhận xét: - Chỉ áp dụng được với một số ảnh nhất định Đối với những ảnh có histogram biến thiên nhiều thì việc phân vùng, xác định đối tượng khó khăn V Kĩ thuật tìm ngưỡng tự động Kỹ thuật biến đổi ảnh và so sánh biên độ các điểm ảnhvớimức... gọi mức T là ngưỡng thích nghi 1 Phân vùng với ngưỡng toàn cục Phương pháp phân vùng theo ngưỡng toàncục là phương pháp khá đơn giản, khivật thể vànền được táchbằng cách so sánhvớimộtmức ngưỡng T.Mức độ chính xáccủa phương pháp này phụ thuộc vào tính chấtcủa ảnh, vídụ:nếu ảnh có histogram được chia thành các vùng rõ rệt (còngọi là các mode) thì việc lựa chọn ngưỡng sẽ tương đối dễ dàng Dưới đây là một... lẽ phương pháp đơn giản và mang lại hiệu quả nhất là phương pháp phân vùng tìm ngưỡng theo thuật toán đẳng điệu Phân vùng với hầu hết các ảnh, và cho ta kết quả tốt hơn cả - Các phương pháp còn lại đại đa số chỉ phù hợp với một số lại ảnh nhất định Ví dụ như: phương pháp tìm ngưỡng toàn cục thích hợp nhất đối với những ảnh có histogram tách làm 2 phần riêng biệt, nghĩa là đồ thị của nó không biến thiên... (hay vùng ảnh chi tiết),các điểm có giá trịbằng 0sẽ thuộc vùng ảnh nền.Nếu T chỉ phụ thuộc vào f(x,y) và không thay đổi trong toànbộ quá trình xử lý ảnh thì T được gọi là ngưỡng toàn cục.Nếu T phụ thuộc vào toạ độ không gian (x,y) tagọi T là ngưỡng cục bộ.Nếu ngưỡng cục bộ T phụ thuộc vào p(x, y) hay nói cách khác, T thay đổi theo tính chất của từng vùng ảnh, ta gọi mức T là ngưỡng thích nghi 1 Phân vùng. .. trị T0 cho trước Mức ngưỡng ban đầu thường được lựa chọn bằng giá trị trung bình giữa mức chói cao nhất và mức chói thấp nhất trong ảnh Nhận xét: - Nhìn chung thuật toán tìm ngưỡng toàn cục đơn giản, thích hợp với việc phân vùng cho những ảnh có histogram chia làm 2 vùng rõ rệt 34 - Không thể xử lý khi chiếu sáng thay đổi, có thể cho kết quả kém đối với một số hình ảnh - Cách chọn ngưỡng T, T0 khó khăn... định sự phân chia - T = maxp-(a-maxp) - Giả sử chúng ta chọn p% là 95% thì chúng ta sẽ tính sao cho diện tích từ a đến max là bằng 5% của điện tích từ maxp đến max - Sau đó lấy đối xứng qua maxp vì vậy diện tích từ T đến max sẽ là 95% tổng diện tích của phân phối nền, vì vậy T sẽ là ngưỡng phân tách nền và đối tượng - Hàm t = symbg(a,b,p) là hàm tìm ngưỡng dựa theo thuật toán đối xứng nền với:  với a... và so sánh biên độ các điểm ảnhvớimức ngưỡng đượcsửdụng khárộng rãi trong các phương pháp phân vùng ảnh Trong trườnghợptổng quát, quá trìnhxử lý ngưỡng là quá trình so sánh ảnhvới hàm T: 29 T = T [x, y, p(x, y), f(x, y)] f(x,y)- giá trịmức xámtại điểm (x,y), p(x,y) - hàm biểu diễn tính chấtcủa vùng ảnh xung quanh điểm (x,y), vídụ, giá trịmức xám trung bìnhcủa vùng ảnh, có tâm là điểm (x,y).Kết quả... đầu, T0 là sai số cho trước Để có thể xác định ngưỡng T một cáchtự động, chúng ta thực hiện cácbước sau: 1- Lựa chọnmức ngưỡng ban đầuT 2- Dùng T để phân vùng ảnh.Kết quả nhận được là hai nhóm điểm ảnh: nhóm G1 có giá trị độ chói lớn hơnT, G2 – có độ chói nhỏ hơn T 3- Xác định giá trị độ chói trung bình m1và m2của hai nhóm điểm ảnh trên 4- Xác định giá trị ngưỡng T mới bằng: 5- Thực hiện cácbước 2-4 đến... đơn giản dùng để thí nghiệm tách ngưỡng toàn cục Phần hình học sáng hơn và nền xám tối hơn đã được tách biệt hẳn, rõ ràng 30 hơn Tất cả các điểm ảnhcó độ chói thấpsẽ được gán mức trắng, các điểm ảnh có độchói cao(nền của ảnh) được thay bằng mức đen 31 32 Chọn T=127, T0 = 1 33 Để tìm được ngưỡng toàn cục ta sử dụng một hàm thresh=globalthreshold(img,T,T0) Với T là giá trị ngưỡng ban đầu, T0 là sai số ... phân vùng ảnh theo ngưỡng Phân vùng ảnh theo ngưỡng : - Phân vùng theo ngưỡng tách vật thể ngưỡng chọn tự động - Việc chọn ngưỡng thực biểu đồ tần suất - Và ngưỡng phân biệt vùng Ý tưởng - Giả... phân vùng ảnh dựa theo ngưỡng với kĩ thuật tìm ngưỡng tự động (đẳng điệu, đối xứng nền, tách ngưỡng tự động, tìm ngưỡng toàn cục, tìm ngưỡng cục bộ…) áp dụng đối tượng ảnh II Đôi điều phân vùng. .. ảnh Với mục tiêu trên, tài liệu gồm có phần sau: - Phần Backgroup: Vài nét Xử lý ảnh - Cơ sở thực nghiệm: Giới thiệu chung phân vùng ảnh đôi điều phân vùng ảnh theo ngưỡng - Phân vùng ảnh theo ngưỡng:

Ngày đăng: 06/11/2015, 19:38

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

Tài liệu liên quan