having trouble with mean2 function inside for loop

2 Ansichten (letzte 30 Tage)
Alex
Alex am 2 Apr. 2013
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.

Akzeptierte Antwort

Jan
Jan am 2 Apr. 2013
Bearbeitet: Jan am 2 Apr. 2013
imgL = reshape(imgL, 13);
L(i)=mean2(imgL(Lmask, i));

Weitere Antworten (0)

Kategorien

Mehr zu Author Block Masks finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by