当前位置:网站首页>目标检测重要概念——IOU、感受野、空洞卷积、mAP
目标检测重要概念——IOU、感受野、空洞卷积、mAP
2022-08-02 05:11:00 【樱花的浪漫】
1.IOU的计算
通过比较真值框(ground-truth bounding box)和预测框(predicted bounding box)的距离、重叠面积等可以判断目标检测算法的性能。IoU(Intersection over Union)是一种在特定数据集中检测相应物体准确度的标准, 恰好可以实现上述目的。IoU的计算逻辑非常简单,就是两个框相交
的面积除以两个框相并的面积,如图所示。 那所谓的真值框是从哪里来的呢?对于任何一个训练数据集或测试数据集来说,至少包含两大类数据:一类是图像本身;另一类包含待检测对象的坐标。我们的目标是构建一个目标检测算法,在测试集上进行测试,如果IoU的值大于0.5,通常来说这个测试效果是不错的;如果I0U的值小于0.5,那么很明显目标检测的效果不太理想。如果IoU的值在0.7左右,则说明真值框和预测框的位置已经很接近了;如果IoU的值在0.9左右,则说明目标检测算法在测试集上的效果非常优秀。

2.空洞卷积
常见的图像分割算法通常使用池化层和卷积层增加感受野,同时也缩小了特征图尺寸,再利用上采样还原图像尽寸。因为特征图缩小再放大的过程造成了精度上的损天,所以需要在增加感受野的同时保持特征图的尺寸不变,从而代替下采样和上采样操作,在这种需求下,空洞卷积就诞生了。
Dilated/Atrous Convolation (中文可称作空洞卷积或膨胀卷积)是在标准的卷积映射里注入空洞,以此来增加感受野,相比原来的正常卷积,空洞卷积额外增加了一个超参数:扩张率(dilation rate),该参数定义了卷积核处理数据时各值的间距(比如标准的卷积扩张率为1)。

空洞卷积有如下两个作用。
1)扩大感受野:在深层网络中为了在增加感受野的同时降低计算量,总要进行下采样(比如使用池化层),这样虽然可以增加感受野,但也降低了空间分辨率。使用空洞卷积可以在尽量不丢失分辨率的情况下扩大感受野,在检测或者分割任务中尤为重要。一方面感受野大了可以检测大目标,另一方面分辨率高了可以精确定位目标。
2)捕获多尺度上下文信息:当设置不同的扩张率时,感受野就会不一样,便可以获取多度信息。多尺度信息在视觉任务中是非常重要的。
3.mAP
假设分类器在10%的召回率下具有90%的精度,但在20%的召回率下具有96%的精度。这里实际上没有折衷:使用分类器以20%的召回率(而不是10%)更合理,因为你将获得更高的召回率和更高的精度。因此,我们不应该着眼于10%的召回率,而是应该着眼于分类器可以提供至少10%的召回率的最大精度。这是96%,而不是90%。因此要获得关于模型性能的合理概念的一种方法是计算召回率在至少为0%时可以获得的最大精度(然后是10%、20%,以此类推,直至100%)然后计算这些最大精度的平均值。这称为平均精度(AP)指标。当有两个以上类别时,我们可以为每个类别计算AP,然后计算平均AP(mAP)。
在物体检测系统中,存在另外一层的复杂度:如果系统检测到正确的类别但在错误的位置(即边界框完全没有物体)怎么办?当然,我们不应将此视为正的预测。二种方法是定义IOU阈值:例如,我们可以认为只有在IOU太于05且预测类别正确时,该预测才是正确的。通常将相应的mAP标记为[email protected](或[email protected]%,或有时为AP50)。在某些比赛中(例如PASCAL VOC挑战赛)就是这样做的。在其他情况(例如COCO竞争)中,针对不同的IOU阅值(0.50、0.55、0.60,…,0.95)计算mAP,而最终指标是所有这些mAP的平均值(记为AP @[ .50:.95]或[email protected][.50:0.05:.95])。这是平均值的平均。
边栏推荐
- 自动化运维工具——ansible、概述、安装、模块介绍
- 区块元素、内联元素(<div>元素、span元素)
- Linux CentOS8安装Redis6
- swinIR论文阅读笔记
- C语言中i++和++i在循环中的差异性
- How Navicat Connects to MySQL
- Introduction to coredns
- 【C语言】LeetCode26.删除有序数组中的重复项&&LeetCode88.合并两个有序数组
- What are the ways to improve software testing capabilities?After reading this article, it will take you up a notch
- Integrate ssm (1)
猜你喜欢

对node工程进行压力测试与性能分析

51 MCU peripherals: DS18B20
C语言小游戏——扫雷小游戏

The company does not pay attention to software testing, and the new Ali P8 has written a test case writing specification for us

为什么4个字节的float要比8个字节的long大呢?

关于鸿蒙系统 JS UI 框架源码的分析
![[C language] LeetCode26. Delete duplicates in an ordered array && LeetCode88. Merge two ordered arrays](/img/eb/9b05508e88b7f17d80de2afa8c08ce.png)
[C language] LeetCode26. Delete duplicates in an ordered array && LeetCode88. Merge two ordered arrays

自动化运维工具——ansible、概述、安装、模块介绍
![[PSQL] 窗口函数、GROUPING运算符](/img/95/5c9dc06539330db907d22f84544370.png)
[PSQL] 窗口函数、GROUPING运算符

淘系资深工程师整理的300+项学习资源清单(2021最新版)
随机推荐
leetcode 204. Count Primes 计数质数 (Easy)
Redis-cluster mode (master-slave replication mode, sentinel mode, clustering mode)
apisix-入门使用篇
ELK log analysis system
Navicat报错:1045-Access denied for user [email protected](using passwordYES)
[PSQL] 函数、谓词、CASE表达式、集合运算
golang's time package: methods for time interval formatting and output of timestamp formats such as seconds, milliseconds, and nanoseconds
CPU使用率和负载区别及分析
【C语言】LeetCode26.删除有序数组中的重复项&&LeetCode88.合并两个有序数组
51 MCU Peripherals: Infrared Communication
服务器的单机防御与集群防御
MySql将一张表的数据copy到另一张表中
构造方法、成员变量、局部变量
Detailed explanation of the software testing process (mind map) of the first-tier manufacturers
Timing task library in the language use Cron, rounding
Google 安装印象笔记剪藏插件
APP Bluetooth connection test of test technology
Mysql implements optimistic locking
The original question on the two sides of the automatic test of the byte beating (arranged according to the recording) is real and effective 26
25K测试老鸟6年经验的面试心得,四种公司、四种问题…