nghiên cứu về các thuật toán xác định ngưỡng ứng dụng trong phân đoạn ảnh

15 2,772 4
  • Loading ...
1/15 trang

Thông tin tài liệu

Ngày đăng: 29/03/2014, 08:08

Ai mún có thêm code thì gửi mail cho mình nhé: ledinhchung.mta@gmail.com Mc LcM UX lý nh l mt trong nhng lnh vc chớnh v quan trngca cụng ngh thụng tin v cú ng dng cho rt nhiu nghnh khỏc.Do ú, õy l mt lnh vc ang c quan tõm nghiờn cu v phỏttrin. mụ hc x lý nh cng c a vo ging dy tt c cỏctrng, kho o to cụng ngh thụng tin v nhiu ngnh k thutkhỏc.Xử lý ảnh bao gồm các bớc: thu nhận ảnh, tiền xử lý, phân đoạnảnh, biểu diễn và giải thích, nhận dạng và mô tả (tuy nhiên không phảiứng dụng xử lý ảnh nào cũng phải có đầy đủ tất cả các bớc trên).Trong các bớc đó, bớc phân đoạn ảnh là bớc ht sc quan trọng vcũng khó khăn. Mặt khác, có nhiều ứng dụng quan trọng cần đến kỹthuật phân đoạn: ảnh màu hoặc đa mức xám thì cần phải phân ngỡng;1muốn nhận dạng đợc các đối tợng thì trớc hết cần phải phân ảnh thànhcác vùng khác nhau chứa các đối tợng trong ảnh. Hiện nay, đã cónhiều kỹ thuật phân đoạn ảnh đợc đa ra. Trong phm vi ỏn camỡnh, em tỡm hiu nghiờn cu v cỏc thut toỏn xỏc nh ngngng dng trong phõn on nh.Ni dung chớnh:1.S lc v lý thuyt phõn on nh.2.Cỏc thut toỏn phỏt hin ngng.PHN NI DUNG1.S lc v lý thuyt phõn on nh. phõn tớch cỏc i tng trong nh, chỳng ta cn phiphõn bit c cỏc i tng cn quan tõm vi phn cũn li canh, hay cũn gi l nn nh. Nhng i tng ny cú th tỡm rac l nh cỏc k thut phõn on nh, theo ngha l tỏch phnnn ra khi i tng trong nh . Cỏc k thut ph bin nht trong2phân đoạn ảnh, đó là kỹ thuật lấy ngưỡng và kỹ thuật dò cạnh, cùngvới những phương pháp giúp cải thiện chất lượng của quá trìnhphân đoạn. Trong phạm vi đồ án của mình em tập trung vào kỹthuật phân đoạn sử dụng ngưỡng.Kỹ thuật này dựa trên một ý tưởng hết sức đơn giản. Mộttham số θ, gọi là ngưỡng độ sáng, sẽ được chọn để áp dụng cho mộtảnh a kích thước m theo cách sau, với mỗi điểm ảnh có mức xámf(x,y) ta có:(x, y) ∈ Object ⇔ f(x, y) ≥ ( f(x, y) ≤ ) (1)Hoặc tương tự :(x, y) ∈ Background ⇔ f(x, y) < ( f(x, y) > ) (2)Kết quả của các thuật toán trên đây là sự thay thế các nhãn"đối tượng" (object) hay "nền ảnh" (background) bằng các giá trịlogic "1" hoặc "0". Như vậy sau khi phân ngưỡng ta thu được mộtảnh nhị phân. Trong đó, những điểm màu trắng thuộc đối tượng vànhững điểm có màu đen là nền theo công thức( 2), ngược lại theocông thức (1) là , những điểm màu đen thuộc đối tượng và nhữngđiểm có màu trằng là nền.Câu hỏi đặt ra trong kỹ thuật lấy ngưỡng khi đó sẽ là: Chúngta nên chọn ngưỡng θ như thế nào? Mặc dù không có thuật toánchọn ngưỡng vạn năng nào có thể áp dụng cho mọi loại ảnh, quatìm hiểu em đã tìm hiểu một số phương pháp áp dụng trong kỹthuật tìm ngưỡng như sau.32. Các thuật toán phát hiện ngưỡng.2.1 Phương pháp tìm ngưỡng cố định.Ý tưởng của phương pháp này, là chúng ta có thể chọn mộtngưỡng độc lập với dữ liệu ảnh thường lấy ở mức là 128, nếu nhưảnh có độ tương phản rất cao, các đối tượng quan tâm rất tối cònnền gần như đồng nhất và rất sáng hoặc ngược lại, thì giá trịngưỡng là 128 thì kết quả cho ra là giá trị ngưỡng rất tốt. Ví dụ:Ảnh gốc Ảnh sau khi phân ngưỡng2.2 Phương pháp tìm ngưỡng dựa vào lược đồ mức xám Histogram.2.2.1 Phương pháp lặp.-Ý tưởng:Trước hết lược đồ sẽ được phân đoạn thành haiphần bằng một giá trị ngưỡng khởi động như θ0=(Lmax-Lmin)/2,tức là bằng phân nửa thang độ xám động của ảnh(trong đó Lmax:là giá trị mức xám lớn nhất của ảnh,Lmin: là giá trị mức xám nhỏnhất của ảnh). Sau đó, các trung bình mẫu (mf,0) của những điểmảnh thuộc đối tượng và (mb,0) của những điểm ảnh nền sẽ được tính4toán. Một giá trị ngưỡng mới θ1 sẽ được tính kế đó bằng cách lấygiá trị trung bình của hai trung bình mẫu nói trên. Quá trình này cứthế sẽ được tiếp tục với các ngưỡng mới cho đến khi nào giá trịngưỡng không thay đổi nữa thì dừng lại-Thuật toán:Bước 1: Khởi tạo mảng Histogram hn; giá trị =(Lmax-Lmin)/2, K=0;Bước 2: Tính giá trị trung bình đối với phần nền và phần đốitượng tương ứng với :M(f,k)=M(b,k)=Bước 3: tính toán giá trị ngưỡng tiếp theo hay tiếp theo bằngcông thức tính trung bình cộng của trung bình nền và đối tượng.Bước 4: Thuật toán dường khi: θk ≈ θk-1Nếu không :k = k +1, quay lại bước 2.//thuat toan nay neu trenh lech wua lon muc xam thi khongtot2.2.2Phương pháp tam giác.5//neu bmax,bmin ma lai khong gan, anh nay nen gian anhtruoc-Ý tưởng: Trong hình này, chúng ta có thể quan sát thấy mộtđường thẳng đã được xây dựng bằng cách nối từ giá trị lớn nhấtcủa lược đồ tại độ sáng bmax đến giá trị nhỏ nhất của lược đồ tại độsáng bmin. Với mỗi độ sáng b trong khoảng [bmax,bmin], chúng ta đitính khoảng cách d từ giá trị lược đồ tại b là h[b] đến đường thẳngđã có. Giá trị b0 ứng với khoảng cách d lớn nhất sẽ được chọn làmgiá trị ngưỡng θ. Kỹ thuật này đặc biệt hiệu quả khi các điểm ảnhthuộc đối tượng tạo nên một đỉnh yếu trong lược đồ ảnh.-Thuật toán:Bước 1: Khởi tạo mảng Histogram hn; tìm giá trị bmax, bmin,hn[bmax], hn[bmin].Bước 2: Duyệt toàn bộ các mức xám từ bmin đến bmax. Tínhkhoảng cách tương ứng sau đó xét ngưỡng bằng giá trị mức xám cókhoảng cách lớn nhất.for(int i=min+1;i<max;i++){ d=(float)Math.Abs(nx*i-ny*hn[i]-max*nx+hn[max]*ny); if (dmax <d / a)6{dmax=d/a;nguong = i; } }2.2.3 Phương pháp đối xứng nền.-Ý tưởng: Kỹ thuật này dựa trên sự giả định là tồn tại haiđỉnh phân biệt trong lược đồ nằm đối xứng nhau qua đỉnh có giá trịlớn nhất trong phần lược đồ thuộc về các điểm ảnh nền. Đỉnh cựcđại maxp tìm được nhờ tiến hành tìm giá trị cực đại trong lược đồ.Sau đó thuật toán sẽ được áp dụng tiếp ở phía không phải là điểmảnh thuộc đối tượng ứng với giá trị cực đại đó nhằm tìm ra điểm p% như trong phương trình . Trong hình , các điểm ảnh thuộc đối tượng nằm về bên tráicủa đỉnh nền (tại vị trí 183), điều này có nghĩa là cần tìm kiếm ởbên phải đỉnh đó để xác định được một giá trị ví dụ như trong bài là95%. Tại giá trị sáng này, 5% số điểm ảnh sẽ ở về phía bên phải (cógiá trị sáng lớn hơn) nó. Tình huống này xảy ra tại vị trí 216 . Do7tính đối xứng đã giả định ở trên, chúng ta sử dụng độ dịch chuyểnvề phía trái của điểm cực đại làm giá trị ngưỡng. Giá trị này bằngvới độ dịch chuyển về phía phải của điểm cực đại đến nơi p% đượctìm thấy.Ngưỡng tìm được 183 - (216 - 183) = 150. Công thức tổng quát cho giá trị này sẽ là: Kỹthuật này dễ dàng điều chỉnh được cho phù hợp với tìnhhuống ảnhcác đối tượng sáng trên một nền trội và tối. Ngoài ra,chúng ta còn có thể sử dụng nó khi đỉnh của đối tượng là trội hơn,và có thể giả sử được là phân bố độ sáng quanh đỉnh đối tượng cótính đối xứng. -Thuật toán:Bước 1: Khởi tạo mảng Histogram hn; tìm giá trị max,hn[max].Bước 2: Duyệt toàn bộ các mức xám giảm từ 255 đến max.Nếu tại mức xám nào có xác suất xuất hiện trên ảnh là 5% thì dừnglại.for (int i = 255; i >= max; i ) { for (int j = 255; j >= i; j )tongsodiem += hn[j];if ((float)tongsodiem / (bm.Width *bm.Height) >=0.05f)8{split = i; break;}} nguong = max - (split - max);2.2.4 Phương pháp tách ngưỡng tự động.-Ý tưởng: Kỹ thuật này nhằm tìm ra ngưỡng một cách tựđộng dựa vào Histogram theo nguyên lý trong vật lý là vật thể táchlàm 2 phần nếu tổng độ lệnh trong từng phần là tối thiểu. //lechtrong moi phanGiả sử, ta có ảnh: I ~ kích thước m n G ~ là số mức xám của ảnh kể cả khuyết thiếu t(g) ~ số điểm ảnh có mức xám <= g là mô men quán tính trung bình có mức xám <=gHàm f: m(g)*(m*n-t(g))-Tìm sao cho: Khi đó .-Thuật toán:Bước 1: Khởi tạo mảng Histogram hn; mảng t, mảng m vàmảng f.9Bước 2: tìm trong mảng f, giá trị f(g) lớn nhất khi đó ngưỡng=g;for(int i=0;i<f.Length;i++){if (max < f[i]) {max = f[i]; nguong = i;}}3.Cài đặt thuật toán.3.1 Thuật toán tìm ngưỡng cố định.public Bitmap phannguong(Bitmap bm) { Bitmap bmnew = new Bitmap(bm.Width,bm.Height); int gray; for(int i=0;i<bm.Width;i++) { for(int j=0;j<bm.Height;j++) { Color c = bm.GetPixel(i,j); gray = c.R; if (gray < this.nguong) bmnew.SetPixel(i, j, Color.Black); else bmnew.SetPixel(i, j, Color.White); } }10[...]... d = (float)Math.Abs(nx * i - ny * hn[i] - max * nx + hn[max] * ny)/a; if (dmax = max; i ) { for (int j = 255; j >= i; j ) { tongsodiem += hn[j]; } if ((float)tongsodiem / (bm.Width * bm.Height) >= 0.05f) { split = i; break; } } nguong = max - (split - max); } 3.5 Thuật toán lấy ngưỡng tự động public void set_cacgiatri() { for (int i = 0; i < bm.Width; i++) { for (int j = 0; j < bm.Height; j++) { Color c = bm.GetPixel(i, j); hn[c.R]++; } } for(int i=0;i . trên). Trong các bớc đó, bớc phân đoạn ảnh là bớc ht sc quan trọng v cũng khó khăn. Mặt khác, có nhiều ứng dụng quan trọng cần đến kỹ thuật phân đoạn: ảnh màu hoặc đa mức xám thì cần phải phân. ngỡng; 1 muốn nhận dạng đợc các đối tợng thì trớc hết cần phải phân ảnh thành các vùng khác nhau chứa các đối tợng trong ảnh. Hiện nay, đã có nhiều kỹ thuật phân đoạn ảnh đợc đa ra. Trong phm vi ỏn ca mỡnh,. i tng trong nh . Cỏc k thut ph bin nht trong 2 phân đoạn ảnh, đó là kỹ thuật lấy ngưỡng và kỹ thuật dò cạnh, cùng với những phương pháp giúp cải thiện chất lượng của quá trình phân đoạn. Trong
- Xem thêm -

Xem thêm: nghiên cứu về các thuật toán xác định ngưỡng ứng dụng trong phân đoạn ảnh, nghiên cứu về các thuật toán xác định ngưỡng ứng dụng trong phân đoạn ảnh, nghiên cứu về các thuật toán xác định ngưỡng ứng dụng trong phân đoạn ảnh, 2 Phương pháp tìm ngưỡng dựa vào lược đồ mức xám Histogram.

Từ khóa liên quan

Gợi ý tài liệu liên quan cho bạn

Nhận lời giải ngay chưa đến 10 phút Đăng bài tập ngay