python计算二维矩形IOU实例
作者:York1996 时间:2022-03-07 23:40:18
计算交并比:交的面积除以并的面积。
要求矩形框的长和宽应该平行于图片框。不然不能用这样的公式计算。
原理,从一维上来理解:两条红线的距离之和减去黑色线之间的距离就是相交的距离。两条红线之和很容易算,两条黑线之间的距离就是最小的起点到到最大的末点,最小的起点好算,最大的末点就是两点加上各自长度之后的最大值。这就算出了一维的情况,二维的情况一样,计算二次而已。
def iou(rect1,rect2):
'''
计算两个矩形的交并比
:param rect1:第一个矩形框。表示为x,y,w,h,其中x,y表示矩形右上角的坐标
:param rect2:第二个矩形框。
:return:返回交并比,也就是交集比并集
'''
x1,y1,w1,h1=rect1
x2,y2,w2,h2=rect2
inter_w=(w1+w2)-(max(x1+w1,x2+w2)-min(x1,x2))
inter_h=(h1+h2)-(max(y1+h1,y2+h2)-min(y1,y2))
if inter_h<=0 or inter_w<=0:#代表相交区域面积为0
return 0
#往下进行应该inter 和 union都是正值
inter=inter_w * inter_h
union=w1*h1+w2*h2-inter
return inter/union
来源:https://blog.csdn.net/york1996/article/details/92079129
标签:python,二维矩形,IOU
0
投稿
猜你喜欢
非常全面的Python常见基础面试题及答案
2022-11-14 17:03:33
VS 2010 Ultimate架构代码探索
2010-05-02 20:38:00
pandas去重复行并分类汇总的实现方法
2021-06-12 17:38:37
javascript读取xml
2024-04-23 09:30:13
解决Python2.7读写文件中的中文乱码问题
2023-05-16 11:23:51
Python通过Pillow实现图片对比
2023-07-12 08:25:15
Python如何设置指定窗口为前台活动窗口
2022-01-22 02:20:02
在Django下测试与调试REST API的方法详解
2023-05-19 16:09:32
Python安装及Pycharm安装使用教程图解
2023-08-01 05:38:06
Python实现的逻辑回归算法示例【附测试csv文件下载】
2023-12-09 21:08:33
HTML5本地存储初探(三)
2010-03-07 15:49:00
用Mimer Validator检查SQL查询
2009-04-24 11:59:00
js 删除数组的几种方法小结
2024-04-22 22:42:37
如何调用Oracle存储过程?
2009-11-15 20:13:00
Sql Server触发器的使用
2024-01-19 15:08:39
数据仓库基本报表制作过程中的SQL写法
2008-11-25 12:17:00
python tqdm库的使用
2023-10-30 22:32:44
PHP实现通过二维数组键值获取一维键名操作示例
2023-11-22 12:00:52
Unicode和Python的中文处理
2022-08-17 21:05:27
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
2024-04-16 09:26:51