IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> IOU的进化进程 -> 正文阅读

[人工智能]IOU的进化进程

0 前言

此文章主要用于记录IOU、GIOU、DIOU、CIOU存在的缺陷以及各IOU解决的问题。
分析其原理,并附上代码实现。(希望这篇文字能够顺利完成)

1 IOU

1.1 定义

交并比(Intersection over Union)是一种测量在特定数据集中检测相应物体准确度的一个标准。
示意图

1.2 数学表达式

I O U = A ∩ B A ∪ B IOU=\frac{A\cap B}{A\cup B} IOU=ABAB?
A ∩ B = ( x 2 ? x 1 ) ? ( y 4 ? y 3 ) A\cap B=\left( x2-x1 \right)*\left( y4-y3 \right) AB=(x2?x1)?(y4?y3)
A ∪ B = S A + S B ? A ∩ B = ( x 2 ? x 1 ) ? ( y 2 ? y 1 ) + ( x 4 ? x 3 ) ? ( y 4 ? y 3 ) ? ( x 2 ? x 1 ) ? ( y 4 ? y 3 ) A\cup B={{S}_{A}}+{{S}_{B}}-A\cap B=\left( x2-x1 \right)*\left( y2-y1 \right)+\left( x4-x3 \right)*\left( y4-y3 \right)-\left( x2-x1 \right)*\left( y4-y3 \right) AB=SA?+SB??AB=(x2?x1)?(y2?y1)+(x4?x3)?(y4?y3)?(x2?x1)?(y4?y3)
IOU的值域范围为0-1,其值越大,表示两个矩形框越接近。
IOU损失
L i o u = 1 ? I O U {{L}_{iou}}=1-IOU Liou?=1?IOU

1.3 缺点

出现下图情况时,IOU将不再有效。
当两个框不存在重叠区域时,右图与左图相比,两个矩形框更接近,其损失应相对较小一些。但此时的IOU值均为0。
在这里插入图片描述

1.4 代码

import numpy as np

def calculate_iou(box_gt, box_pd):
    '''
    计算所有预测框与某个真实框的IOU值
    :param box_gt: 真实框  格式[xmin,ymin,xmax,ymax]
    :param box_pd: 预测框  格式[[xmin,ymin,xmax,ymax],格式[xmin,ymin,xmax,ymax],格式[xmin,ymin,xmax,ymax] ... ]
    :return: IOU
    '''
    inter_LeftUp = np.maximum(box_pd[:, :2], box_gt[:2])        # 求交集的左上角坐标
    inter_RightBot = np.minimum(box_pd[:, 2:4], box_gt[2:4])    # 求交集的右下角坐标
    inter_wh = inter_RightBot - inter_LeftUp                    # 求交集框的宽、高
    inter_wh = np.maximum(inter_wh, 0.)                         # 高和宽小于0的置为0
    inter_area = inter_wh[:, 0] * inter_wh[:, 1]                # 求交集框的面积 s = w*h
    area_gt = (box_gt[2] - box_gt[0]) * (box_gt[3] - box_gt[1]) # 真实框的面积
    area_pr = (box_pd[:, 2] - box_pd[:, 0]) * (box_pd[:, 3] - box_pd[:, 1]) # 预测框的面积
    iou = inter_area / (area_gt + area_pr - inter_area)         # 计算IOU
    return iou

2 GIOU

待更新…

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-27 11:19:34  更:2022-04-27 11:22:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:34:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码