matlab之俩矩形框的重叠面积及重叠率
2016-11-24 15:45
387 查看
function ratio = DecideOberlap(Reframe,GTframe)
%Reframe(x,y,w,h) x,y为左上角坐标
x1 = Reframe(1);
y1 = Reframe(2);
width1 = Reframe(3);
height1 = Reframe(4);
x2 = GTframe(1);
y2 = GTframe(2);
width2 = GTframe(3);
height2 = GTframe(4);
endx = max(x1+width1,x2+width2);%x轴最大值
startx = min(x1,x2);%x轴最小值
width = width1+width2-(endx-startx);%重叠矩形宽
endy = max(y1+height1,y2+height2);%y轴最大值
starty = min(y1,y2);%y轴最小值
height = height1+height2-(endy-starty);%重叠矩形宽
if width<=0||height<=0
ratio = 0;
Area=0;
else
Area = width*height;%冲得面积
Area1 = width1*height1;%第一个Box面积
Area2 = width2*height2;%第二个Box面积
ratio = Area/(Area1+Area2-Area);%重叠率
end
end
%Reframe(x,y,w,h) x,y为左上角坐标
x1 = Reframe(1);
y1 = Reframe(2);
width1 = Reframe(3);
height1 = Reframe(4);
x2 = GTframe(1);
y2 = GTframe(2);
width2 = GTframe(3);
height2 = GTframe(4);
endx = max(x1+width1,x2+width2);%x轴最大值
startx = min(x1,x2);%x轴最小值
width = width1+width2-(endx-startx);%重叠矩形宽
endy = max(y1+height1,y2+height2);%y轴最大值
starty = min(y1,y2);%y轴最小值
height = height1+height2-(endy-starty);%重叠矩形宽
if width<=0||height<=0
ratio = 0;
Area=0;
else
Area = width*height;%冲得面积
Area1 = width1*height1;%第一个Box面积
Area2 = width2*height2;%第二个Box面积
ratio = Area/(Area1+Area2-Area);%重叠率
end
end
相关文章推荐
- hdu2056 矩形重叠面积(水题)
- 屏幕坐标系获取两个矩形面积及重叠面积,重叠面积比率的java代码
- 计算 矩形重叠面积
- uva11983 - Weird Advertisement 矩形面积并 重叠大于等于K次的面积
- Torch 两个矩形框重叠面积的计算 (IoU between tow bounding box)
- [笔试题]求两矩形的无重叠的面积之和
- 计算两个矩形重叠的面积
- hdu 1255 覆盖的面积 矩形D层以上重叠面积
- 求若干矩形的不重叠面积 —— 模拟 + 优化
- HDU 2056 矩形重叠面积
- ZZULIOJ 1816: 矩形 【矩形重叠面积的计算(区分相离与相交)】
- hdoj2056(Rectangles 求矩形重叠面积
- hdu1255 扫描线,矩形重叠面积(两次以上)
- POJ 1389 Area of Simple Polygons(多矩形重叠面积==离散化)
- UVA 11345 Rectangles(n个矩形重叠覆盖的面积)
- MATLAB 随机生成互不重叠的多个矩形
- 杭电acm2056 矩形重叠面积
- 2017 icpc 南宁赛区 F.Overlapping Rectangles(重叠矩形的最大面积+线段树模板)
- 求两个矩形重叠部分的面积
- HDU2056 矩形重叠面积