Can somebody explain the following code ?

4 views (last 30 days)
Sahil khandelwal
Sahil khandelwal on 21 May 2022
Commented: Walter Roberson on 22 May 2022
Please explain the following code.
sout=imresize(inp,[256,256]);
t0=60;
th=t0+((max(inp(:))+min(inp(:)))./2);
for i=1:1:size(inp,1)
for j=1:1:size(inp,2)
if inp(i,j)>th
sout(i,j)=1;
else
sout(i,j)=0;
end
end
end

Answers (1)

dpb
dpb on 21 May 2022
Edited: dpb on 22 May 2022
Just turns into binary image at the threshold value, th
NB; the double loop construct in MATLAB should be written as vector logical operation and convert the result from a logical array to the same as the input array.
t0=60;
th=t0+mean([max(inp,[],'all') min(inp,[],'all']));
sout=(inp>th);
  10 Comments
Walter Roberson
Walter Roberson on 22 May 2022
The poster was providing a bit of context for the code, which is information that might potentially have helped readers understand the code better.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!