(原)IOU的计算
转载请注明出处:
http://www.cnblogs.com/darkknightzh/p/9043395.html
参考网址:
https://github.com/deepinsight/insightface/blob/master/src/align/align_megaface.py中IOU的计算。
理解不对的地方敬请谅解。
IOU是两个矩形的交集与两个矩形并集的比值(可以这样理解吧)。
如下图所示:
黄色矩形起点坐标(x11,y11),终点坐标(x12,y12)
蓝色矩形起点坐标(x21,y21),终点坐标(x22,y22)。
则:
黄色矩形宽W1=x12-x11,高H1=y12-y11
黄色矩形宽W2=x22-x21,高H1=y22-y21
两个矩形交集(红色矩形)宽W=W1+W2-(x22-x11)=x12-x11
两个矩形交集(红色矩形)高H=H1+H2-(y22-y11)=y12-y11
红色矩形面积(两个矩形交集)为area=W*H
两个矩形并集为area1+area2-area
如果x12<x21或者y12<y21,说明两个矩形无公共区域,IOU=0;
否则,IOU=area/(area1+area2-area)

(原)IOU的计算的更多相关文章
- vga显示原理即相关计算
行扫描周期:完成一行扫描所需时间: 行时序时间(a,b,c,d,e):完成一个像素点显示得时间 场扫描周期:完成所有行(一帧扫描所需时间) 场时序时间(o,p,q,r,s):完成一行显示得时间,一个完 ...
- 目标检测——IoU 计算
Iou 的计算 我们先考虑一维的情况:令 \(A = [x_1,x_2], B = [y_1, y_2]\),若想要 \(A\) 与 \(B\) 有交集,需要满足如下情况: 简言之,要保证 \(A\) ...
- 使用Python的yield实现流计算模式
首先先提一下上一篇<如何猜出Y combinator>中用的方法太复杂了.其实在Lambda演算中实现递归的思想很简单,就是函数把自己作为第一个参数传入函数,然后后面就是简单的Lambda ...
- 原码 & 反码 & 补码 & 详解
本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希 ...
- CRC(Cyclic Redundancy Check)循环冗余校验码与海明码的计算题
(17)采用CRC进行差错校验,生成多项式为G(X)=X4+X+1,信息码字为10111,则计算出的CRC校验码是 (17) .A.0000 B.0100 C.0010 D.1100试题 ...
- 原代码,反码,解释和具体的补充 Java在>>和>>>差异
前两天分析 HashMap 的 hash 算法的时间,会见 >> 和 >>> 这两个符号.然后检查以下信息,我脑子里在某一时刻.今天遇到,我没想到居然忘 0-0.... ...
- java 变量及数据类型、原码、反码、补码
Java基础——变量及数据类型 变量的概念 内存中的一个存储区域 变量名+数据类型 可在同一类型范围内不断变化 为什么定义变量: 用于不断的存放同一类型的常量,并可以重复使用 使用变量注意: 变量的作 ...
- Java 原码 反码 补码
本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希 ...
- 目标识别(object detection)中的 IoU(Intersection over Union)
首先直观上来看 IoU 的计算公式: 由上述图示可知,IoU 的计算综合考虑了交集和并集,如何使得 IoU 最大,需要满足,更大的重叠区域,更小的不重叠的区域. 两个矩形窗格分别表示: 左上点.右下点 ...
随机推荐
- .net的架构模式
一:ADO.NET实现三层架构 不用三层的普通的查询写法: string sql = string.Format("select * from Studnet where StuName l ...
- Linux学习 用户管理
0.新建用户 sudo useradd -d /home/zookeeper -m zookeeper -d 指定用户组目录 -m 如果前面指定的用户组目录不存在,就创建改目录 passwd 1./e ...
- react-router4 + webpack Code Splitting
项目升级为react-router4后,就尝试着根据官方文档进行代码分割.https://reacttraining.com/react-router/web/guides/code-splittin ...
- python全栈开发day20-类的三大特性继承、多态、封装
1 继承 1.怎么继承,父类和子类 class 类名(父类):pass 除了__init__下对象属性不能自动继承外,其他的类属性和动态方法,子类对象都可以访问到. 2.子类对象查找属性的顺序,对象现 ...
- java之定时器任务Timer用法
在项目开发中,经常会遇到需要实现一些定时操作的任务,写过很多遍了,然而每次写的时候,总是会对一些细节有所遗忘,后来想想可能是没有总结的缘故,所以今天小编就打算总结一下可能会被遗忘的小点: 1. pub ...
- FastAdmin 的上传代码在哪里?
FastAdmin 的上传代码在哪里? FastAdmin 默认是通过 Ajax 上传到本地. 使用 admin/ajax/upload 方式返回 url. 代码文件地址在 application\a ...
- poj 3525 半平面交求多边形内切圆最大半径【半平面交】+【二分】
<题目链接> 题目大意:给出一个四面环海的凸多边形岛屿,求出这个岛屿中的点到海的最远距离. 解题分析: 仔细思考就会发现,其实题目其实就是让我们求该凸多边形内内切圆的最大半径是多少.但是, ...
- Win 10 启用 Net3.5
dism.exe /online /enable-feature /featurename:NetFX3 /Source:H:\sources\sxs
- AGC 016B.Colorful Hats(思路)
题目链接 对于某个元素分类讨论一下,就可以知道n个元素的总颜色种数了. 比如对a[1]分类讨论: 若1的颜色和某个元素相同,则总颜色数为a[1].a[i]要么等于a[1](i与某个元素颜色相同,记个数 ...
- ParallaxNode视差节点实现远景近景的不同层次移动
Cocos2d-x有ParallaxNode视差节点,视察顾名思义,就是造成不同的移动速率的效果. 我想大家都玩过刀塔传奇,他的背景有远景和近景之分,而且你滑动屏幕的时候远景和近景是按照不同的速率移动 ...