MATLAB Answers

Calculate mean of gray Value

2 次查看(过去 30 天)
arame sotudegan
arame sotudegan2021-3-31
回答: Chad Greene ,2021-3-31
Hello, In this picture I want to calculate mean of the circle. but when I use mean( ) it calculates all the pixels including the black ones, so the mean value decreases. Is there a way to calculate only the gray value?
Thank you in advance.

采纳的回答

DGM
DGM 2021-3-31
编辑:DGM 2021-3-31
Something like this:
% mean of non-black regions
mean(mypicture(mypicture>0))
This assumes that the image background is actually zero; otherwise, you can test that it's above some threshold value

更多回答(1 个)

Chad Greene
Chad Greene 2021-3-31
Try this. Below I'm creating an example matrix M, and calculate the mean of only the values that exceed zero:
M = peaks(100); % example matrix
M(M<=0) = 0;
figure
imagesc(M)
colormap(gray)
colorbar
mask = M>0; % logical mask corresponding to all values greater than zero
figure
imagesc(mask)
mean(M(mask),'all') % mean of all values of M that exceed zero.
ans = 1.1528

Community Treasure Hunt

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

Start Hunting!

Translated by