注意:
python2对于除法的规则是取整
python3则会保留小数点后的位数。
如果你在使用python2执行下列代码出现结果为0的情况,请对除数或被除数使用float()函数转换为浮点型即可。见代码

# encoding:utf-8
# this file is used to calculate IOU
# rec =  [left,right,bottom,top]
def calculateIOU(rec1,rec2):intersect_l = max(rec1[0],rec2[0])intersect_r = min(rec1[1],rec2[1])intersect_b = max(rec1[2],rec2[2])intersect_t = min(rec1[3],rec2[3])if intersect_l >= intersect_r or intersect_b >= intersect_t:return(0)else:S_rect1 = (rec1[1]-rec1[0])*(rec1[3]-rec1[2])S_rect2 = (rec2[1]-rec2[0])*(rec2[3]-rec2[2])intersect = (intersect_r - intersect_l)*(intersect_t - intersect_b)#python2,除法取整,不保留小数点后IOU = float(intersect) / (S_rect1 + S_rect2 - intersect)#python3,除法保留小数点#IOU = intersect / (S_rect1 + S_rect2 - intersect)return(IOU)#main
if __name__ == '__main__':rec1 = [50,100,70,110]rec2 = [70,130,80,190]print(calculateIOU(rec1,rec2))

返回结果:

0.116883116883

计算两个矩形的IOU交并比_Python相关推荐

  1. python计算长方形面积代码_Python计算两个矩形重合面积代码实例

    这篇文章主要介绍了Python 实现两个矩形重合面积代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 计算两个矩形的重合面积 imp ...

  2. python 计算时间重叠_python whilepython计算两个矩形框重合百分比的实例

    如下所示: 对<python计算两个矩形框重合百分比的实例>总结来说,为我们电脑技术很实用. def mat_inter(box1,box2): # 判断两个矩形是否相交 # box=(x ...

  3. C语言 有两个矩形 求重叠面积,计算两个矩形重叠面积的简单方法

    实验需要,需要计算两个矩形重叠面积 想来想去觉得挺复杂,搜了下,看见一个超给力的方法 这里分享下: function D = DecideOberlap(Reframe,GTframe) x1 = R ...

  4. python计算两个矩形的重叠_python计算两个矩形框重合百分比的实例

    python计算两个矩形框重合百分比的实例 如下所示: def mat_inter(box1,box2): # 判断两个矩形是否相交 # box=(xA,yA,xB,yB) x01, y01, x02 ...

  5. 计算两个矩形重叠面积的简单方法

    实验需要,需要计算两个矩形重叠面积 想来想去觉得挺复杂,搜了下,看见一个超给力的方法 这里分享下: function D = DecideOberlap(Reframe,GTframe)x1 = Re ...

  6. python3, 计算两个矩形框是否重叠,并计算重叠度

    # 两个检测框框是否有交叉,如果有交集则返回重叠度 IOU, 如果没有交集则返回 0 def bb_overlab(x1, y1, w1, h1, x2, y2, w2, h2):'''说明:图像中, ...

  7. 两个不规则四边形IOU计算方法

    1 引言 我们常用的目标检测为矩形框检测,但是我们有时检测出来的框为不规则的四边形,如下图为常见的遥感图像,此时我们在使用矩形框计算IOU的方式就不再适用.我们可以将问题进行抽象,有木有计算两个不规则 ...

  8. 解决rotatedRectangleIntersection计算目标检测旋转框IOU不准确问题C++、opencv

    问题 语言 :C++ OpenCV版本:3.4.0 在目标检测中,后处理阶段会用到非极大值抑制来过滤目标框,而计算两个框的IOU(交并比)则是其关键的一环,先计算两个框相交的点,再求出这些点构成的多边 ...

  9. python矩形语句_浅谈Python3实现两个矩形的交并比(IoU)

    一.前言 因为最近刚好被问到这个问题,但是自己当时特别懵逼,导致没有做出来.所以下来后自己Google了很多IoU的博客,但是很多博客要么过于简略,要么是互相转载的,有一些博客图和代码还有点问题,也导 ...

最新文章

  1. 棋盘游戏的人工智能(二)------剪支
  2. ES mapping可以修改include_in_all,也可以修改index_options,norm,但是无法修改_all属性!...
  3. [jstl] forEach标签使用
  4. SpringBoot + ShardingSphere 秒级分库分表!
  5. C++安全方向opensssl(三)3.1 什么是单项散列函数
  6. Spring Cloud 服务治理
  7. VirtualBox扩容失败-Progress state: VBOX_E_NOT_SUPPORTED
  8. Bailian2976 Bailian1936 All in All【字符串匹配】
  9. mysql 无法连接 native_php无法连接mysql8 mysql_native_password
  10. C语言打印斐波那契数列
  11. 怎么查看网站的服务器ip,怎样查看某个网站的IP地址
  12. OpenWrt使用IPV6+Aliddns实现远程管理路由
  13. LibreOffice创建数据透视表
  14. Untracked Files Prevent Pull解决方法
  15. OpenCV—画直角边的直线(粗线)
  16. 《人月神话》一句话总结各章核心观点
  17. 小米生活早报早间新闻入口/凤凰FM头条速递入口
  18. Spring中IOC容器
  19. 七脉轮位置_能量疗愈 | 七个脉轮的位置与功能
  20. 数据库基础原理知识复盘

热门文章

  1. 坚果Pro和罗永浩的锤子梦
  2. 【汇智学堂】docker网络管理之一
  3. 浏览器显示网页的原理 多种情况方式
  4. uvaLive 4490 Help Bubu 帮助布布 等价转化+DP
  5. iOS微信第三方登录实现
  6. 用tikz画球坐标系下的体积微元
  7. 第二阶段:数据库设计与初始化
  8. ubuntu批量压缩文件夹
  9. matlab表示颜色的词语三个字,三个字的形容颜色的词语
  10. Modulo Summation atcoder abc103