Medical Imaging Question- Mean inside a masked image

4 次查看(过去 30 天)
Hi,
I Am trying to compute the mean values within the brain. I created a binary Mask of the brain. And I am computing my mean as follows. m = the signal. Masked_M = Signals within the brain(Masked to exclude values outside the brain). I suspect the mean ignores the 0 values within the brain. How can I compute a mean of a defined area within a mask and not exclude any 0 intensities within the mask.
masked_m=m.*Mask;
temp=masked_m(masked_m~=0);
mean_dm=mean(temp);
Thanks!

回答(1 个)

Walter Roberson
Walter Roberson 2012-3-15
mean() does not exclude 0's. Your design removes the 0s before the calculations.
mean_dm = mean(m(logical(Mask)));
If your Mask variable is already of class logical (true, false) then you can use
mean_dm = mean(m(Mask));

类别

Help CenterFile Exchange 中查找有关 Author Block Masks 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by