睿智的目标检测1——IOU的概念与python实例

  • 学习前言
  • 什么是IOU
  • IOU的特点
  • 全部代码

学习前言

神经网络的应用还有许多,目标检测就是其中之一,目标检测中有一个很重要的概念便是IOU。

什么是IOU

IOU是一种评价目标检测器的一种指标。
下图是一个示例:图中绿色框为实际框(好像不是很绿……),红色框为预测框,当我们需要判断两个框之间的关系时,需要用什么指标呢?
此时便需要用到IOU。

计算IOU的公式为:

可以看到IOU是一个比值,即交并比。
在分子部分,值为预测框和实际框之间的重叠区域;
在分母部分,值为预测框和实际框所占有的总区域。


交区域和并区域的比值,就是IOU。

IOU的特点

与分类任务不同,我们的预测框的坐标需要去匹配实际框的坐标,而坐标的完全匹配是不现实的。因此,我们需要定义一个评估指标,奖励那些与匹配框匹配较好的预测框。

全部代码

本文将画出两个矩形框,并计算他们的IOU。
效果如下:

import cv2
import numpy as np
def CountIOU(RecA, RecB):xA = max(RecA[0], RecB[0])yA = max(RecA[1], RecB[1])xB = min(RecA[2], RecB[2])yB = min(RecA[3], RecB[3])# 计算交集部分面积interArea = max(0, xB - xA + 1) * max(0, yB - yA + 1)# 计算预测值和真实值的面积RecA_Area = (RecA[2] - RecA[0] + 1) * (RecA[3] - RecA[1] + 1)RecB_Area = (RecB[2] - RecB[0] + 1) * (RecB[3] - RecB[1] + 1)# 计算IOUiou = interArea / float(RecA_Area + RecB_Area - interArea)return iouimg = np.zeros((512,512,3), np.uint8)
img.fill(255)RecA = [50,50,300,300]
RecB = [60,60,320,320]cv2.rectangle(img, (RecA[0],RecA[1]), (RecA[2],RecA[3]), (0, 255, 0), 5)
cv2.rectangle(img, (RecB[0],RecB[1]), (RecB[2],RecB[3]), (255, 0, 0), 5)IOU = CountIOU(RecA,RecB)
font = cv2.FONT_HERSHEY_SIMPLEXcv2.putText(img,"IOU = %.2f"%IOU,(130, 190),font,0.8,(0,0,0),2)cv2.imshow("image",img)
cv2.waitKey()
cv2.destroyAllWindows()

有不懂的朋友可以评论询问噢。

睿智的目标检测1——IOU的概念与python实例相关推荐

  1. 【深度学习】目标检测中 IOU 的概念及计算

    在目标检测当中,有一个重要的概念就是 IOU.一般指代模型预测的 bbox 和 Groud Truth 之间的交并比. 何为交并比呢? I O U = A ∩ B A ∪ B IOU = \frac{ ...

  2. 睿智的目标检测30——Pytorch搭建YoloV4目标检测平台

    睿智的目标检测30--Pytorch搭建YoloV4目标检测平台 学习前言 什么是YOLOV4 代码下载 YOLOV4改进的部分(不完全) YOLOV4结构解析 1.主干特征提取网络Backbone ...

  3. 睿智的目标检测32——TF2搭建YoloV4目标检测平台(tensorflow2)

    睿智的目标检测32--TF2搭建YoloV4目标检测平台(tensorflow2) 学习前言 什么是YOLOV4 代码下载 YOLOV4改进的部分(不完全) YOLOV4结构解析 1.主干特征提取网络 ...

  4. 睿智的目标检测20——利用mAP计算目标检测精确度

    睿智的目标检测20--利用mAP计算目标检测精确度 学习前言 GITHUB代码下载 知识储备 1.IOU的概念 2.TP TN FP FN的概念 3.precision(精确度)和recall(召回率 ...

  5. 睿智的目标检测31——非极大抑制NMS与Soft-NMS

    睿智的目标检测31--非极大抑制NMS与Soft-NMS 注意事项 学习前言 什么是非极大抑制NMS 1.非极大抑制NMS的实现过程 2.柔性非极大抑制Soft-NMS的实现过程 注意事项 Soft- ...

  6. 睿智的目标检测35——Pytorch搭建YoloV4-Tiny目标检测平台

    睿智的目标检测35--Pytorch搭建YoloV4-Tiny目标检测平台 学习前言 什么是YOLOV4-Tiny 代码下载 YoloV4-Tiny结构解析 1.主干特征提取网络Backbone 2. ...

  7. 睿智的目标检测33——Keras搭建Efficientdet目标检测平台

    睿智的目标检测33--Keras搭建Efficientdet目标检测平台 学习前言 什么是Efficientdet目标检测算法 源码下载 Efficientdet实现思路 一.预测部分 1.主干网络介 ...

  8. 睿智的目标检测36——Pytorch搭建Efficientdet目标检测平台

    睿智的目标检测33--Pytorch搭建Efficientdet目标检测平台 学习前言 什么是Efficientdet目标检测算法 源码下载 Efficientdet实现思路 一.预测部分 1.主干网 ...

  9. 睿智的目标检测38——TF2搭建Efficientdet目标检测平台(tensorflow2)

    睿智的目标检测38--TF2搭建Efficientdet目标检测平台 学习前言 什么是Efficientdet目标检测算法 源码下载 Efficientdet实现思路 一.预测部分 1.主干网络介绍 ...

最新文章

  1. Ubuntu安装配置Python.pyDev
  2. 一些关于自己的未来的东西
  3. php jquery ajax登录,jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
  4. Flutter Duration详细概述
  5. leetcode之字符串中的第一个唯一字符
  6. fread函数的使用
  7. 计算机操作系统|汤小丹|第四版|习题答案(三)
  8. 基于JSP和sql server小区物业管理系统毕业论文
  9. 华为交换机修改BootROM密码
  10. Android studio 装SDK,android studio安装sdk
  11. fewX(fsod)的预测代码编写--detectron2框架的一般见解(1)
  12. 郑州市暂住证办理过程
  13. Casbin之基于角色的控制访问RBAC
  14. 广州找工作指南:避雷公司名录及优秀公司名录
  15. 字节跳动岗位薪酬体系曝光,看完感叹:不服不行
  16. 修真院教学模式四大体系之技能体系
  17. 横空出世的作业APP,会继续走俏还是就此堕落?
  18. httpclient报错:Invalid use of BasicClientConnManager: connection still allocated. Make sure to release
  19. 基于C语言设计的小型图形软件系统
  20. 云计算介绍之云计算服务器

热门文章

  1. 手机app网易邮箱服务器设置,苹果手机iphone怎么设置网易邮箱 iphone设置网易邮箱教程【步骤】...
  2. 第一份BI分析项目总结
  3. (java)2的幂次方
  4. JAVA计算:用 100 元钱买 100 支笔,其中钢笔 3 元 / 支,圆珠笔 2 元 / 支,铅笔 0.5 元 / 支,问钢笔、圆珠笔和铅笔可以各买多少支 ?
  5. 基于ssm的个人博客系统的设计与实现(含源文件)
  6. 具名插槽 非具名插槽
  7. iOS基础-高级进阶面试题
  8. 智能手环的软硬件与产业
  9. chatgpt为什么在中国不能用
  10. 96Boards MIPI CSI Camera Mezzanine