How do i store all the results from a set of 'for' loops, not just the results from the last iteration?
1 view (last 30 days)
Show older comments
Steven Harkness
on 16 Apr 2020
Commented: Steven Harkness
on 17 Apr 2020
When i run my script each time my for loop runs it overwrites the results of the previous itteration, is there a way to have it store all the results from each iteration? Here is the code in question.
clear
img = imread('cameraman.tif');
for Mean = 0.01:0.01:0.1
V=0.01;
noise = imnoise(img,'gaussian',Mean,V);
NoisePower = V*numel(img);
NPowerInt = fix(NoisePower);
[peaksnr, snr] = psnr(noise,img);
nsr = 1/snr;
for hsize = 3:1:26
for sigma = 0.5:0.5:5
PSF = fspecial('gaussian',hsize,sigma);
NoiseyBlurred = imfilter(noise,PSF,'replicate','same','conv');
BlindDeconv = deconvblind(NoiseyBlurred,PSF,15);
LucyFilter = deconvlucy(NoiseyBlurred,PSF,15);
WNRFilter = deconvwnr(NoiseyBlurred,PSF,nsr);
RegularFilter = deconvreg(NoiseyBlurred,PSF,snr);
PSNRBlurred = psnr(NoiseyBlurred,img);
PSNRBlind = psnr(BlindDeconv,img);
PSNRLucy = psnr(LucyFilter,img);
PSNRWNR = psnr(WNRFilter,img);
PSNRReg = psnr(RegularFilter,img);
Blur(hsize)= (40-PSNRBlurred)/40;
Blind(hsize)=PSNRBlind;
Lucy(hsize)=PSNRLucy;
WNR(hsize)=PSNRWNR;
Reg(hsize)=PSNRReg;
end
end
end
I can't store the data based off 'Mean' instead of hsize as it gives the error Subscript indices must either be real positive integers or logicals. I've tried having the hsize loop first but this just saves the results from the final sigma and Mean values at each hsize value. I have also tried creating a logical from the Mean to store the results but this didn't work either. I'm out of ideas, so any help would be greatly appreciated.
0 Comments
Accepted Answer
MaryD
on 16 Apr 2020
Mean = 0.01:0.01:0.1
hsize = 3:1:26
sigma = 0.5:0.5:5
for m=1:length(Mean)
for h=1:length(hsize)
for s=1:length(sigma)
V=0.01;
noise(m) = imnoise(img,'gaussian',Mean(m),V);
%%%rest of the code
Blur(m,h,s)=...
end
end
end
Try storing your variable like this.
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!