2012-07-18 21 views
2

我有一個用於識別水果的應用程序。到目前爲止,我已經讓你可以裁剪圖像並獲得你想要的水果顏色。現在我正在努力獲得水果的圓潤,但我需要水果是黑色的,背景是白色的,所以我可以找到面積和圓度值。這是我的代碼到目前爲止該部分:如何使整個水果是白色的,背景是黑色的

crop_temp = rgb2gray(crop); 
    threshold = graythresh(crop_temp); 
    bw = im2bw(crop_temp,threshold); 
    imshow(bw) 

作物我通過時,我裁剪圖像。當水果有相機閃光並且該部分保持白色時,問題就會出現。

一個例子形象是這樣的檸檬圖片:

enter image description here

的問題是白色區域的檸檬停留在代碼後,白色的,但我想它使整個檸檬是黑色的。但不僅僅是檸檬,還有其他水果。

問題是在代碼後檸檬中的白色區域保持白色,但我希望它使整個檸檬是黑色的。但不僅僅是檸檬,還有其他水果。

是的,你怎麼能讓水果是白色的,背景是黑色的。 我是圖像處理新手,所以不要跳到我身上。我只是找不到具體的東西。

回答

0

試試這個:

fbw = ones(size(bw))-imfill(ones(size(bw))-bw); 
imshow(fbw) 
+0

謝謝,幫助。 – 2012-07-19 16:47:33

0

蠻力的方法是檢查圖像中的每個白色像素,看看它是否在X和Y方向都被黑色像素裝箱,如果是這樣的話就將它變成黑色。這會照顧你的水果內的斑點,除非你的水果形狀奇怪,否則你不應該給你太多的假陽性,或者你的圖像邊緣有很多噪音。

0

您可以通過圖像與該Matlab demo練習,分段(計數)大米開始。尤其是估計背景的部分。

也有幫助將閱讀Otsu's method和這兩個問題的背景/前景估計SODSP考慮本地統計。

+0

我會檢查你所說的演示。謝謝您的幫助。 – 2012-07-19 16:47:44

相關問題