In this code i used boolean true and false ,but it's not working. What can i use insted of boolean true and false?
Show older comments
f=imread('image1.jpg');
T = f;
T(T>60) = 255;
imshow(T)
imwrite(T,'C:\Users\VAIO\Documents\MATLAB\iso_image.jpg','jpg');
for i=1:1:M
{
start = false;
for j=1:1:N
{
if ((T<60) && (start=false))
{
temp1=j;
start=true;
}
if((T<60)&&(start=true))
temp2=j;
}
dis[i]=temp2-temp1;
}
Answers (2)
Thorsten
on 26 Jun 2013
The code in the if-clause is probably wrong. First, you probably want to compare a particular element of T, i.e., T(i,j) against 60. Second, use == to check equality:
if T(i,j) < 60 && start == false
Note that you don't need the extra parentheses in Matlab but you can use them if you consider it to be more readable:
if (T(i,j) < 60) && (start == false)
Same for the other if-clause.
3 Comments
Umme Tania
on 26 Jun 2013
Lokesh Ravindranathan
on 26 Jun 2013
Could you provide the updated code? Its possible that you are using = operator instead of == operator.
Umme Tania
on 26 Jun 2013
Edited: Walter Roberson
on 26 Jun 2013
Walter Roberson
on 26 Jun 2013
MATLAB does not use {} to mark blocks. MATLAB uses {} to create cells. MATLAB uses "end" to mark the end of blocks.
For example instead of
for i=1:M { code }
MATLAB uses
for i=1:M; code; end
Categories
Find more on Modeling 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!