python计算二维矩形IOU实例


Posted in Python onJanuary 18, 2020

计算交并比:交的面积除以并的面积。

要求矩形框的长和宽应该平行于图片框。不然不能用这样的公式计算。

原理,从一维上来理解:两条红线的距离之和减去黑色线之间的距离就是相交的距离。两条红线之和很容易算,两条黑线之间的距离就是最小的起点到到最大的末点,最小的起点好算,最大的末点就是两点加上各自长度之后的最大值。这就算出了一维的情况,二维的情况一样,计算二次而已。

python计算二维矩形IOU实例

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

以上这篇python计算二维矩形IOU实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 快速排序代码
Nov 23 Python
浅析Python中将单词首字母大写的capitalize()方法
May 18 Python
Python实现将xml导入至excel
Nov 20 Python
Python自定义进程池实例分析【生产者、消费者模型问题】
Sep 19 Python
python用装饰器自动注册Tornado路由详解
Feb 14 Python
Python常用时间操作总结【取得当前时间、时间函数、应用等】
May 11 Python
python爬虫入门教程--快速理解HTTP协议(一)
May 25 Python
利用Tkinter和matplotlib两种方式画饼状图的实例
Nov 06 Python
python批量修改文件编码格式的方法
May 31 Python
对python3中, print横向输出的方法详解
Jan 28 Python
10款最好的Python开发编辑器
Jul 03 Python
使用python+pygame开发消消乐游戏附完整源码
Jun 10 Python
解决python replace函数替换无效问题
Jan 18 #Python
使用Python来做一个屏幕录制工具的操作代码
Jan 18 #Python
pytorch 状态字典:state_dict使用详解
Jan 17 #Python
Python标准库itertools的使用方法
Jan 17 #Python
Python实现投影法分割图像示例(二)
Jan 17 #Python
Python常用库大全及简要说明
Jan 17 #Python
Python Sphinx使用实例及问题解决
Jan 17 #Python
You might like
关于Iframe如何跨域访问Cookie和Session的解决方法
2013/04/15 PHP
CI框架中site_url()和base_url()的区别
2015/01/07 PHP
php简单socket服务器客户端代码实例
2015/05/18 PHP
PHP实现页面静态化的超简单方法
2016/09/06 PHP
PHP会话控制实例分析
2016/12/24 PHP
非常强大的 jQuery.AsyncBox 弹出对话框插件
2011/08/29 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
2015/03/04 Javascript
JavaScript的Date()方法使用详解
2015/06/09 Javascript
JS插件overlib用法实例详解
2015/12/26 Javascript
javascript下使用Promise封装FileReader
2016/02/19 Javascript
js阻止浏览器默认行为触发的通用方法(推荐)
2016/05/15 Javascript
使用Vue父子组件通信实现todolist的功能示例代码
2019/04/11 Javascript
微信小程序云开发之使用云函数
2019/05/17 Javascript
vue动态绘制四分之三圆环图效果
2019/09/03 Javascript
layui 实现表单和文件上传一起传到后台的例子
2019/09/16 Javascript
JavaScript 替换所有匹配内容及正则替换方法
2020/02/12 Javascript
JS严格模式原理与用法实例分析
2020/04/27 Javascript
浅谈element中InfiniteScroll按需引入的一点注意事项
2020/06/05 Javascript
解决vue下载后台传过来的乱码流的问题
2020/12/05 Vue.js
原生JavaScript实现随机点名表
2021/01/14 Javascript
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
Python实现对excel文件列表值进行统计的方法
2015/07/25 Python
Python爬取京东的商品分类与链接
2016/08/26 Python
Python与R语言的简要对比
2017/11/14 Python
Python-Flask:动态创建表的示例详解
2019/11/22 Python
市场营销专业毕业生自荐信
2013/11/02 职场文书
最新教师自我评价分享
2013/11/12 职场文书
婚礼主持词
2014/03/13 职场文书
房地产端午节活动方案
2014/08/24 职场文书
求职意向书范本
2015/05/11 职场文书
经销商会议开幕词
2016/03/04 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
简历中的自我评价应该这样写!
2019/07/12 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
导游词之徐州-云龙山
2019/09/29 职场文书
Spring中bean集合注入的方法详解
2022/07/07 Java/Android