how can get coordinate of left and top and bottom and right object of binary Image?

12 visualizzazioni (ultimi 30 giorni)
hi everyone I have an Image that is binary...I want to imcrop a segment of image that contain all of objects. but I want to do this in a way that the rect that I choose be smallest. I think if I have the coordinates of the objects that is in( left and top) of Img and (bottom and right) I can do this. Can you help me? Is there any way?
I mean object that I use a red circle around them in this image.
thanks

Risposta accettata

Walter Roberson
Walter Roberson il 27 Mag 2015
stats = regionprops(YourImage, 'BoundingBox');
boxes = vertcat(stats.BoundingBox);
lefts = boxes(:,1);
rights = lefts + boxes(:,3);
tops = boxes(:,2);
bottoms = tops + boxes(:,4);
upperleft = [min(lefts), min(tops)];
lowerright = [max(rights), max(bottoms)];
cropat = [upperleft, (lowerright - upperleft)];
  3 Commenti
Image Analyst
Image Analyst il 27 Mag 2015
It's just indexing to extract it!
croppedImage = binaryImage(upperLeft(2):lowerRight(2), upperLeft(1):lowerRight(1));
jack nn
jack nn il 28 Mag 2015
thanks @Image Analyst and @Walter Roberson. excuse me I am beginner. I really appreciate you for your help.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB Support Package for USB Webcams in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by