
Largest rectangle inscribed inside multiple blobs
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Sunetra Banerjee
le 15 Juil 2021
Commenté : Sunetra Banerjee
le 15 Juil 2021
Hi,
I have few blobs where I need to fit the largest area rectangle inside. I used the matlab function LargestRectangle to find the rectangle and it works well for a single blob.
a = imread('blob.png');
LRout=LargestRectangle(a);
But how to get rectangles for multiple blobs in the same image?
I have gone through regionprops. What I understood is, I need to seperate each blob and then calculate the highest rectangle for each one as I can't use LargestRectangle with regionprops. Now my question is how to separate each blob so that I can get the largest rectangle for each one?
0 commentaires
Réponse acceptée
Simon Chan
le 15 Juil 2021
Modifié(e) : Simon Chan
le 15 Juil 2021
How about separate them into 6 different images and put into the function?
The images are stored in BW(:,:,1) to BW(:,:,6).
A = imread('Matlab output of blob seq.png');
[L,n]=bwlabel(A);
tiledlayout(2,3)
for k=1:n
nexttile
BW(:,:,k)=(L==k);
imshow(BW(:,:,k));
end

3 commentaires
Simon Chan
le 15 Juil 2021
Modifié(e) : Simon Chan
le 15 Juil 2021
Use this:
A = imread('Matlab output of blob seq.png');
[L,n]=bwlabel(A);
for k=1:n
BW(:,:,k)=(L==k);
subplot(2,3,k)
imshow(BW(:,:,k));
end
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!