having trouble with mean2 function inside for loop

4 次查看(过去 30 天)
here is my code
img=read_LUM_all;
Lmask=mean(img,3);
Lmask(Lmask<415)=0;
Lmask(Lmask~=0)=1;
Lmask=logical(Lmask);
for i=1:13
imgL(:,:,i)=read_LUM2;
L(i)=mean2(imgL(Lmask)); % this line is only taking the mean of imgL(:,:,1), not imgL(:,:,i)
end
avgL=L(1:13)'
it reads in 13 files into a 3D array of size (1040x1392x13). I then average all the files to create a mask so that I can use that mask as an ROI to get an average value of each individual file over the ORI created by the average mask. I eventually want a 13x1 array (avgL) that has the average value over the ROI of each image and right now I am getting a 13x1 array that gives me the average of only the first frame.

采纳的回答

Jan
Jan 2013-4-2
编辑:Jan 2013-4-2
imgL = reshape(imgL, 13);
L(i)=mean2(imgL(Lmask, i));

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Read, Write, and Modify Image 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by