Faster RCNN

文章介绍了R-CNN及其改进版FastR-CNN的工作原理,包括选择候选框、特征提取、SVM分类器和边界框回归。对比了SVM与Softmax分类器的区别,并讨论了FastR-CNN中使用对数空间进行边界框回归的原因。此外,还提及了FocalLoss解决类别不平衡问题的作用。
摘要由CSDN通过智能技术生成

注:文章是学习B站:霹雳吧啦Wz 的学习笔记哦,真的是位很棒的up,有兴趣的同学可以去看看~

R-CNN

在这里插入图片描述
在这里插入图片描述

1.ss算法选择候选框(几千个)
2、候选区缩放到同一维度,输入分类网络
3、特征输入SVM分类器,判断类别

  • 定义IoU:

目标A ∩ 目标B/目标A∪目标B(我理解为两个目标重叠的程度,及是不是检测的同一个物体)

  • 非极大值抑制剔除建议框:

eg. A的概率为0.98,B的概率为0.86 计算他两IoU大于给定阈值,则判定为同一物体,去B留A(毕竟A的正确概率大)最终得到一个最完美最准确的边界框。
在这里插入图片描述
2000个框,20是20个类别(eg 1~20),2000*20中每个元素代表这个框为这个类的概率(eg 第一行第一列表示第一个框含有第1类事物的概率),对每列使用非极大值抑制剔除建议框,(eg 这些框中哪些有第1类)

4、使用回归器修正候选框
在这里插入图片描述

问题

在这里插入图片描述

Fast R-CNN

在这里插入图片描述

与RCNN不同的是
在这里插入图片描述
这种方法参考了sppnet ,(一个是局部处理,会有重复的过程,一个是整体处理,再对应局部,像极了调版印刷和活字印刷)
训练的过程中只取一部分
正样本:有目标的 IoU大于0.5
负样本:背景 IoU在0.1~0.5
在这里插入图片描述
通过pooling 层 缩放到同一尺寸,忽略了channel 哦,
在这里插入图片描述

RoI是region of interest ,FCs全连接层,实现分类(特征拼到一起看是不是)
一个FC是目标概率的预测(左侧),所以这个FC是N+1个节点
另一个FC是边界框回归参数的预测(右侧)(n+1)*4个回归参数
xywh分别表示窗口的中心点坐标和宽高

SVM分类器和Softmax分类器有啥区别

假设空间:SVM使用线性或非线性超平面作为决策边界,而Softmax分类器使用多个线性分类器的组合。

输出值:SVM输出的是每个样本点到分类超平面的距离,而Softmax分类器输出的是每个类别的概率值。

目标函数:SVM使用最大间隔分类器来寻找最优解决方案,而Softmax分类器使用交叉熵损失函数。

支持的问题类型:SVM可以用于二分类和多分类问题,而Softmax分类器仅适用于多分类问题。

技术特点:SVM通常需要更长的训练时间和更高的存储需求,而Softmax分类器具有更快的训练速度和更低的存储需求

分别表示窗口的中心点坐标和宽高
在这里插入图片描述
绿色是真实的,黄色是候选框,红色是最终预测的。
对于这个exp,是由于在计算偏移量dw,dh的时候用的log,那为啥用log呢

在Fast R-CNN中,偏移量采用的是对数空间(log space),这是因为它能够更好地缩小回归目标的范围,并使其更加平滑和易于优化。具体来说,如果两个物体大小之间的比例很大,我们希望更关注较小的物体。而在对数尺度上,较小物体的变化所对应的值更大,因此对于较小的物体,损失函数中的误差项也会变得更大。如果直接使用线性偏移量,则需要训练一个非常大的网络才能在广泛的比例范围内准确地回归目标。

也就是用log能更加准确的表述细微的差异(放大镜哦

有个问题,下方的真实参数v和这里的d是一样的值吗?代码里再讲
在这里插入图片描述
P0代表为背景的概率,分类一共K类
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
λ是一个平衡参数,[u≥1]是艾弗森括号,[ ]里为真,则值为1,即为正样本,有边界框回归损失;[ ]里为假,则值为0,则为负样本,没有边界框回归损失,后一项为0;
交叉熵损失函数有两作用,1、是性能的指标。由期待模型输出越接近真实值越好。2、是反向传播算法中计算梯度。

对于retinanet的focal loss

调节因子
γ 的思想来源于对类别不平衡问题的分析。在许多现实世界的分类问题中,不同类别之间的样本数目往往存在较大的差异。这会导致模型更加关注数量较多的类别,而忽略数量较少的类别。

Focal Loss 的设计就是为了解决这个问题。通过引入调节因子 γ,可以让模型更加关注困难样本的学习。当 γ=0 时,Focal Loss 就变成了普通的交叉熵损失函数。而当 γ 越大时,模型会更加关注困难样本,因此可以提高模型对数量较少的类别的学习能力。

具体来说,当 γ>0 时,Focal Loss 在计算损失函数时会降低易分类样本的权重,增加难分类样本的权重。这样的话,模型会更加关注那些被错误预测的样本,而减少对容易预测的样本的学习。从而提高模型对困难样本的学习能力,缓解类别不平衡问题的影响。

需要注意的是, γ 的最优取值需要根据具体问题进行调整。通常来说,较小的 γ 可以起到平衡不同类别的作用,而较大的 γ 则可以使模型更加关注那些困难样本

在这里插入图片描述

ss算法获得边界框(需要2s),特征提取(整个图像传入,再用映射的方法得到特征向量)、分类、边界框回归融合在一个CNN

下一步就是把SS也融入CNN

Faster R-CNN

可以看作RPN+Fast RCNN
在这里插入图片描述
两个预测参数,一个是背景一个是前景,不进行分类,4个回归参数,调整回归框
在这里插入图片描述
在这里插入图片描述
3重尺度,3个比例,所以每个位置9个anchor
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
用3*3的卷积核,
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Faster-RCNN是一种用于目标检测的深度学习网络。它的训练过程可以分为三个步骤。首先,在第一步中,使用预训练的ImageNet权重来初始化网络的共享卷积层,然后随机初始化Faster-RCNN特有的层。接下来,在第二步中,使用第一步训练好的共享卷积层和Faster-RCNN特有层来初始化Faster-RCNN网络,并只对特有部分进行微调。最后,在第三步中,再次使用ImageNet的预训练权重来初始化Faster-RCNN网络的共享卷积层,然后训练整个Faster-RCNN网络。在这个过程中,共享卷积层和Faster-RCNN特有层的权重都会被更新。\[2\]\[3\] Faster-RCNN的网络框架包括一个共享卷积层和两个子网络:区域建议网络(Region Proposal Network,RPN)和目标分类网络。RPN用于生成候选目标区域,而目标分类网络用于对这些候选区域进行分类和定位。RPN通过滑动窗口在不同位置和尺度上生成候选框,并使用锚框来对这些候选框进行调整和筛选。然后,目标分类网络对这些候选框进行分类,确定它们是否包含目标,并对目标进行精确定位。整个网络的训练过程是通过最小化分类误差和边界框回归误差来进行的。 总的来说,Faster-RCNN是一种用于目标检测的深度学习网络,通过共享卷积层和两个子网络(RPN和目标分类网络)来实现目标的检测和定位。训练过程包括三个步骤,其中使用预训练的ImageNet权重来初始化网络的共享卷积层,并通过微调和更新权重来提高网络的性能。\[2\]\[3\] #### 引用[.reference_title] - *1* [【15】Faster-RCNN网络详细解读](https://blog.csdn.net/qq_33612665/article/details/111354100)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [一文读懂Faster RCNN(大白话,超详细解析)](https://blog.csdn.net/weixin_42310154/article/details/119889682)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值