If condition without loop

3 views (last 30 days)
manokaran manivasakan
manokaran manivasakan on 28 Jun 2012
i want to change as if 0<A(i,j)<=1 then 1 and if 1<A(i,j)<=2 then 2 and......i don't like to use loop.only use routing and chopping methods....

Answers (3)

Walter Roberson
Walter Roberson on 28 Jun 2012
A = ceil(A);

Jan
Jan on 28 Jun 2012
if 0 < A(i,j) && A(i,j) <= 1
Please note, that if depending on the data it is not required to check 1 < A(i,j) again, when A(i, j) <= 1 has been excluded before (and no A < 0 cases appear).

Ryan
Ryan on 28 Jun 2012
Edited: Ryan on 28 Jun 2012
A(A>0 & A<=1) = 1;
A(A>1 & <=2) = 2;
Of course if you'd like to do this continuously (constantly rounding values, not just between [0 1] and [1 2]) then use Walter Roberson's method for speed and ease of implementation.

Categories

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

Products

Community Treasure Hunt

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

Start Hunting!