2017-06-16 27 views
-1

我是通過同一個問題的一些答案滾動,得到了以下如何從黑色背景以外的圖像的感興趣區域提取特徵?

C = num2cell(YourImage); 
C(~YourImage) = {{}}; 

這應該給其中有空白單元格含有1其中一個單元陣列(「無」),其中的背景是,和細胞前臺was.And

imagesc(YourImage, 'AlphaData', YourImage) 
colormap(gray) 
set(gca, 'color', 'none') 

設置的興趣明顯的地區,我沒有嘗試它自己並沒有得到結果,我在做什麼錯的,使用此代碼的正確方法。黑色背景圖像的

實施例:

Example of image with black background

+1

該代碼不能被執行或者不能再現你正在尋找的「錯誤」。 「沒有得到結果的含義」究竟是什麼?究竟是什麼錯誤?您是否試圖將圖像轉換爲單個單元格,每個單元格都是單個像素,然後,如果有黑色像素需要將其呈現爲空單元格而不是像素值?如果你有彩色圖像會發生什麼?你想讓每個單元格都是RGB值的數組,還是你想要一個3D單元格數組?請更清楚你想要達到的目標。 – rayryeng

+0

我試圖從RGB的病變區域嚴格地提取特徵,並且我不希望特徵提取考慮黑色像素,例如如果我輸入此圖像並從紅色灰度提取平均值因爲黑色像素會影響它,並且我需要提取的特徵是顏色的均值,標準偏差,方差,偏斜,峯度,熵。並且至少使用graycoprops GLCM的4個紋理。 – Project

+0

你還沒有回答我的所有問題。請重新閱讀我提出的問題,然後重試。 – rayryeng

回答

0

如下片段從與背景紅色通道除去提取平均:

>> I = imread('https://i.stack.imgur.com/mI75C.png'); 
>> mask = rgb2gray(I) > 0; 
>> red = I(:, :, 1); 
>> red_avg = mean(red(:)) 

red_avg = 

    48.0807 

>> red_avg_br = mean(red(mask)) 

red_avg_br = 

    192.3833 
相關問題