Starting with a binary image, bwImg
, which contains a number of connected objects.
>> bwImg = imread('blobs.png');
>> figure, imshow(bwImg), title('Binary Image')
To measure properties (e.g., area, centroid, etc) of every object in the image, use regionprops
:
>> stats = regionprops(bwImg, 'Area', 'Centroid');
stats
is a struct array which contains a struct for every object in the image. Accessing a measured property of an object is simple. For example, to display the area of the first object, simply,
>> stats(1).Area
ans =
35
Visualize the object centroids by overlaying them on the original image.
>> figure, imshow(bwImg), title('Binary Image With Centroids Overlaid')
>> hold on
>> for i = 1:size(stats)
scatter(stats(i).Centroid(1), stats(i).Centroid(2), 'filled');
end