how to count number of iterations.?

10 Ansichten (letzte 30 Tage)
Nimisha
Nimisha am 16 Dez. 2014
Kommentiert: Adam am 16 Dez. 2014
I = imread('Coins.jpg');
Id = im2double(I); % I is a uint8 grayscale image
T = 0.5*(min(Id(:)) + max(Id(:)));
deltaT = 0.01; % convergence criterion
done = false;
while done
g = Id >= T;
Tnext = 0.5*(mean(Id(g)) + mean(Id(g)));
done = abs(T - Tnext) < deltaT;
T = Tnext;
end
i want to count number of iteration for this program.! as well i want to store value of T at each iteration.!
  2 Kommentare
Nimisha
Nimisha am 16 Dez. 2014
I = imread('Coins.jpg');
Id = im2double(I); % I is a uint8 grayscale image
done = false;
count = 0
T = zeros(1,100); % Try to presize to something big enough to hold all iterations if you can estimate it
while done
g = Id >= T;
Tnext = 0.5*(mean(Id(g)) + mean(Id(g)));
count = count + 1;
T(count) = Tnext
end
Why we changed T.? Cant we do with previous T.?
And above is giving results as 0
Adam
Adam am 16 Dez. 2014
I edited my answer below. I didn't notice the initialisation of T higher up and the >= test against it in the while loop.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Adam
Adam am 16 Dez. 2014
Bearbeitet: Adam am 16 Dez. 2014
count = 0
newT = zeros(1,100); % Try to presize to something big enough to hold all iterations if you can estimate it
while done
g = Id >= T;
Tnext = 0.5*(mean(Id(g)) + mean(Id(g)));
count = count + 1;
newT(count) = Tnext
done = abs(T - Tnext) < deltaT;
end
Presize newT if you can come up with a sensible bounded estimate, otherwise the warning you get is likely irrelevant anyway. Your code will be a little slower, but unlikely to matter in this case.
  6 Kommentare
Nimisha
Nimisha am 16 Dez. 2014
Ya, This ~ sign works. Thank You very Much :)
Adam
Adam am 16 Dez. 2014
No problem :)
Would have been a bit quicker if I absorbed your whole original post first time, but I was trying to just scan it for the parts relevant to the question which turned out to be a mistake!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by