how can i declare variables in for loop
Show older comments
hi everyone I want to write a function to deal with image which has been divided to N regions with regionprops function : imageregion = [1 2 3 4 ... n] , for every region i in that image I want to declare variables using for loop like this
for i=1:N
vector1=ismember(labelimage,1)>0;
vector2=ismember(labelimage,2)>0;
.
.
vectorn=ismember(labelimage,n)>0;
end
I try to apply that code but i failed . could any help me thank you
3 Comments
Jan
on 20 Jun 2015
What did you try exactly? You've posted pseudo-code and did not explain if you got an error message of if the results differ from your expectations. "I failed" is not clear enough.
majed majed
on 21 Jun 2015
majed majed
on 21 Jun 2015
Edited: majed majed
on 21 Jun 2015
Accepted Answer
More Answers (2)
Jan
on 20 Jun 2015
0 votes
Short summary: Don't do this! Use an array instead of a pile of variables with an index hidden in the name.
Image Analyst
on 20 Jun 2015
0 votes
There is no reason to do that. You are extracting individual blobs one at a time into "n" binary images with just one blob. Then you're doing that same thing "N" times. There is no reason to do it more than once, and there is not even any reason to do it once. You don't need n images, and don't need to generate n images N times. Why do you think you need to do this? What do you think it will allow you to achieve?
2 Comments
majed majed
on 21 Jun 2015
Image Analyst
on 21 Jun 2015
Then use a cell array. See the FAQ http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F and see my Image Segmentation Tutorial in my File Exchange http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862. In there I show you how to filter blobs based on certain feature values.
Categories
Find more on Loops and Conditional Statements 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!