How to merge overlapping rectangles ?

3 次查看(过去 30 天)
I have used BWLABEL and BOUNDINGBOX command to get the following image.
Here we can see in the right corner two rectangles are overlapping and as we can see the bigger rectangle completely encloses the smaller one. How can I remove the smaller one and keep the big rectangle alone? Also I don't want any rectangles over lapping.
Any help would be appreciated.

回答(1 个)

Shubham Rawat
Shubham Rawat 2021-3-18
Hi Rajeshwar,
There is no as such function which can remove inscribed rectancles.
But you may write a similar code like this in which i want to return that rectangle which has larger area.
A = [1 2 5 6]; %Rectangle A
B = [1 2 3 4]; %Rectangle B
%Rectangle B is completely inscribed in Rectangle A
area = rectint(A, B); %returning area inscribed
if ~area %if area is not zero
return max(A, B); %return maximum area rectangle
end
rectangle('Position', max(A,B)); %plotting maximum area rectangle
axis([0 10 0 10]);
You may look at these documentations for further help:
Hope this Helps!

类别

Help CenterFile Exchange 中查找有关 Convert Image Type 的更多信息

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by