Filter löschen
Filter löschen

Doubt in Region_Growing

1 Ansicht (letzte 30 Tage)
Deepak
Deepak am 26 Jan. 2012
Coding r:
for i=1:M
for j=1:N
if Y(i,j)==1
if (i-1)>0 & (i+1)<(M+1) & (j-1)>0 & (j+1)<(N+1)
for u= -1:1
for v= -1:1
if Y(i+u,j+v)==0 & abs(I(i+u,j+v)-seed)=threshold&1/(1+1/15*abs(I(i+u,j+v)-seed))>0.8 %%Error in this line.
Y(i+u,j+v)=1;
count=count+1;
s=s+I(i+u,j+v);
end
end
end
end
end
end
end
suit=suit+count;
sum=sum+s;
seed=sum/suit;
end
I intimate the line of error in coding I can't able to rectify the problem.I am try to work region_growing with MRI Image.Please rectify and reply me back.

Akzeptierte Antwort

Bård Skaflestad
Bård Skaflestad am 26 Jan. 2012
This is very hard to read. Please consider marking up (and indenting) your code more properly the next time. I suggest using the "{} Code" button. Then it would look (something) like this
for i=1:M
for j=1:N
if Y(i,j)==1
if (i-1)>0 & (i+1)<(M+1) & (j-1)>0 & (j+1)<(N+1)
for u= -1:1
for v= -1:1
if Y(i+u,j+v)==0 & abs(I(i+u,j+v)-seed)=threshold&1/(1+1/15*abs(I(i+u,j+v)-seed))>0.8 %%Error in this line.
Y(i+u,j+v)=1;
count=count+1;
s=s+I(i+u,j+v);
end
end
end
end
end
end
end
suit=suit+count; sum=sum+s; seed=sum/suit;
end
The immediate problem is that you're using assignment (i.e., =) in the abs test versus threshold in the line you highlighted. You (probably) intended to use equality (i.e., ==) in stead.
There also appears to be a spurious end following the suit, sum and seed assignments. At least the final end does not match any of the |for|s or |if|s. Is it perhaps part of a larger loop or function body?

Weitere Antworten (0)

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by