BoundingBox in selected object

2 次查看(过去 30 天)
rupam baruah
rupam baruah 2015-11-10
回答: Sourabh 2025-2-19
I have a binary image with 5 objects
I want to draw a boundingbox only in the 3rd object (from the left).How can I do that by using regionprops. I have attached the image. The size and shape of the objects are same.

回答(1 个)

Sourabh
Sourabh 2025-2-19
You can draw a boundingbox on the 3rd object from the left using regionprops as follows:
1. Ensure the image is 2D binary grayscale
bw = imbinarize(rgb2gray(img));
2. Get properties of each region
stats = regionprops(bw, 'BoundingBox', 'Centroid');
3. Get the bounding box of the 3rd object from the left
boundingBox = stats(3).BoundingBox;
4. Display the image and the bounding box
imshow(bw);
hold on;
rectangle('Position', boundingBox, 'EdgeColor', 'r', 'LineWidth', 2);
hold off;
The final output looks like this:
For more related examples on using “regionprops”, kindly follow the MATLAB documentation:

Community Treasure Hunt

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

Start Hunting!

Translated by