2011-04-01 171 views

回答

1
直接從手動( http://www.mathworks.com/help/toolbox/images/ref/rgb2gray.html

I = imread('color_image.tif'); 
J = rgb2gray(I); 
figure, imshow(I), figure, imshow(J); 
+0

問題是模糊的,但我認爲他想計算灰度圖像的平均值,而不是將RGB圖像轉換爲灰度圖像。 – 2011-04-01 08:28:17

+0

也可能需要Gamma校正來獲得實際的平均值:http://www.4p8.com/eric.brasseur/gamma.html – user57368 2011-04-01 09:09:40

7

你的問題很模糊,但如果你的意思是你想灰度圖像的算術平均值:

img = imread('my_greyscale_image.bmp'); 
img_mean = mean(mean(img)); 

注意,您需要兩次應用mean的原因是因爲第一次均值應用於矩陣並計算每列的平均值並將這些值作爲向量返回。再次將平均值應用於該向量,然後給出整個矩陣的單個平均值。

+5

當對整個圖像進行統計時,我發現最好將圖像拉伸到一個矢量,然後做這個操作,即img_mean = mean(img(:));對於平均值來說,這並不重要,但對於非線性操作,如std和median,這很重要。 – Ghaul 2011-04-01 09:34:31

+0

@Ghaul:好點 - 對於線性操作,比如平均值,它會更簡潔(也可能更有效)。 – 2011-04-01 09:49:19

+0

現在好了如果我想將這個平均值應用於另一個圖像.mean,如果我想將它與圖像相乘,那麼該怎麼辦?怎麼做?????????? – chee 2011-04-05 20:51:03