Matlab code without for loop

Image contains 4 pixels . 0-background, 1,2 and 3 freground pixels.Can anyone help me how to improve the following code for computational efficiency? Thanks
[m n]=size(image);
for p=1:m
for q=1:n
if image(p,q)==1
image(p,q)=255;
else
image(p,q)=0;
end
end
end

 Accepted Answer

jgg
jgg on 12 Jan 2016
Edited: jgg on 12 Jan 2016
I think this should work:
i = image('file.jpg')%load in whatever image it is
i(i == 1) = 255;
i(i ~= 255) = 0;

More Answers (0)

Categories

Find more on Signal Processing Toolbox in Help Center and File Exchange

Products

Asked:

Jab
on 12 Jan 2016

Edited:

jgg
on 12 Jan 2016

Community Treasure Hunt

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

Start Hunting!