MATLAB Answers

How to store the blobs centroid in array one by one in loop

4 views (last 30 days)
I have 6 blobs in my picture. I want to store the centroid of each blob in one array. I tried so much time but i get error. Why the below code get error
I think i have to form array inside array? that is each address of the centroid pixel array is in one array
pixelval=zeros(length(STATS),1);
centroid = STATS(i).Centroid;
pixelval(i) = centroid;

Accepted Answer

Image Analyst
Image Analyst on 14 Jan 2014
Instead of those three lines, try this single line
centroids = [STATS.Centroid];
centroids is an N by 2 array where the first column are the x's and the second column are the y's. Or:
xCentroids = centroids(:,1);
yCentroids = centroids(:,2);

More Answers (0)

Community Treasure Hunt

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

Start Hunting!