Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

Faster R-CNN在R-CNN、SPP-net和Fast R-CNN基础上,通过引入Region Proposal Network (RPN) 解决了目标检测速度问题。RPN与检测网络共享卷积层参数,极大地提高了效率。RPN包含Anchors设计、损失函数定义和训练过程。Anchors以多尺度方式覆盖图像,损失函数用于区分正负样本,训练时采用特定策略更新网络参数。最终,Faster R-CNN通过四步训练法实现RPN与Fast R-CNN的协同优化。
摘要由CSDN通过智能技术生成

    这篇论文是在前面三篇论文的基础上发展而来的,包括 R-CNN:Rich feature hierarchies for accurate object detection and semantic segmentationSPP-net:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition 以及Fast R-CNN ,建议先了解这三篇论文然后再来学习这篇论文。总共这四篇论文保持了总体结构的不变性,即都是用proposals和深度网络结合的方法进行目标检测,但又在速度和精度上都有不断提高。在前面三篇论文中,对于一张图片提出proposals的方法采用的是selective search,但是selective search的方法是非常耗时间的,一般给定一张图片,执行selective search算法需要消耗2s的时间,相比Fast R-CNN中检测模块一张图片只要0.2s的时间,selective search占据了整个检测算法的大多数时间,因此如何快速提出proposals也成为了R-CNN系列目标检测方法中一个亟待解决的问题。这篇论文主要解决的就是这个问题,方法是作者提出了一个Region Proposal Network (RPN),用来进行替换selective search进行proposals的提出,并且该网络和目标检测网络比如Fast R-CNN共享了卷积层的参数,因此只需要在Fast R-CNN的基础上花额外很少以至于可以不计的时间,便可以网络proposals的提出。下面就来介绍这篇论文的主要部分。主要分两个部分讲,一个是介绍RPN网络的设计,一个是介绍如何让RPN和Fast R-CNN共享特征。
    [1]RPN网络的设计
    按照论文的思路,这部分分为三个模块,分别是Anchors的设计、损失函数(Loss Function)的定义以及训练RPN网络。
    [1.1]anchors的设计
     首先说什么是anchors,一个anchor就是以最后一层卷积层输出的feature map的一个像素点为中心,分别以k个w和h为宽高的矩形,w、h的取值准则是以该w、h以及中心点为矩形,将其对应到原图中的矩形框的面积和宽高比分别满足事先设定好的k中情况。也就是说,feature map上的一个anchor就对应着原图中的一个proposal。由于对于feature map上的每一个点都进行这个操作,所以当feature map的尺寸为WH的时候,就会产生WHK个anchors,也就对应原图中的WHK个proposals。关于anchor的进一步讨论可以参考链接。正是由于anchor的设计加入了多尺度,使得算法可以不用对图像进行金字塔变换就可以对多尺度的目标有较好的识别率。
    [1.2]损失函数(Loss Function)的定义
    为了训练RPN网络,对每一个anchor都赋予一个二元的标签,即是物体或者不是物体,如果一个anchor和真值矩形对应的anchor有最大的交并比(Intersection-over-Union)或者一个anchor与真值矩形对应的anchor的交并比大于0.7,则将其标为正样本,如果一个anchor和所有的真值矩形对应的anchor的交并比都小于0.3的话,则将其标为负样本。此外的所有anchor都不管了。损失函数定义如下:
这里写图片描述
    i表示的是一个mini-batch中,anchor的索引,pi表示的是网络预测的第i个anchor是物体的概率。如果一个anchor是正样本,那么真值pi*就是1,反之为0。ti是网络预测的第i个anchor的坐标参数,而如果这个anchor是正样本的话,ti*就是与这个anchor相对应的真值anchor的坐标参数。而事实上,也只有pi*=1的anchor才能参与到损失函数的计算中来。Ncls是mini-batch的size,即图片的个数,而Nreg则是anchor的个数。
    [1.3]训练RPN网络
    在每一次SGD使用的一个mini-batch中,从mini-batch的每一个图片中,随机抽取128个正样本的anchor和128个负样本的anchor,所有的新的网络层都以0均值、0.01标准差的高斯分布进行初始化,其它在Fast R-CNN就有的卷积网络参数用在imagenet上训练的参数初始化,在前60k个mini-batch中,学习率设为0.001,接下来的20kmini-batch的训练中学习率设为0.0001,momentum设为0.9,decay设为0.0005。
    [2]RPN和Fast R-CNN共享特征
    作者采用四步训练法:
    1)单独训练RPN网络,网络参数由预训练模型载入;
    2)单独训练Fast-RCNN网络,将第一步RPN的输出候选区域作为检测网络的输入。具体而言,RPN输出一个候选框,通过候选框截取原图像,并将截取后的图像回归。截止到现在,两个网络并没有共享参数,只是分开训练了;
    3)再次训练RPN,此时固定网络公共部分的参数,只更新RPN独有部分的参数;
    4)那RPN的结果再次微调Fast-RCNN网络,固定网络公共部分的参数,只更新Fast-RCNN独有部分的参数。
    至此,网络的结构和训练方法就此结束了。

### 回答1: Faster R-CNN是一种基于区域建议网络(Region Proposal Networks,RPN)的物体检测算法,旨在实现实时物体检测。它通过预测每个区域是否含有物体来生成候选框,并使用卷积神经网络(CNN)来确定候选框中的物体类别。Faster R-CNN在提高检测精度的同时,也显著提高了检测速度。 ### 回答2: 在计算机视觉领域中,目标检测一直是热门研究的方向之一。近年来,基于深度学习的目标检测方法已经取得了显著的进展,并且在许多实际应用中得到了广泛的应用。其中,Faster R-CNN 是一种基于区域建议网络(Region Proposal Networks,RPN)的目标检测方法,在检测准确率和速度之间取得了很好的平衡,能够实现实时目标检测Faster R-CNN 的基本框架由两个模块组成:区域建议网络(RPN)和检测模块。RPN 主要负责生成候选目标框,而检测模块则利用这些候选框完成目标检测任务。具体来说,RPN 首先在原始图像上以多个尺度的滑动窗口为基础,使用卷积网络获取特征图。然后,在特征图上应用一个小型网络来预测每个位置是否存在目标,以及每个位置的目标边界框的坐标偏移量。最终,RPN 根据预测得分和位置偏移量来选择一部分具有潜在对象的区域,然后将这些区域作为候选框送入检测模块。 检测模块的主要任务是使用候选框来检测图像中的目标类别和位置。具体来说,该模块首先通过将每个候选框映射回原始图像并使用 RoI Pooling 算法来获取固定大小的特征向量。然后,使用全连接神经网络对这些特征向量进行分类和回归,以获得每个框的目标类别和精确位置。 相比于传统的目标检测方法,Faster R-CNN 具有以下优点:首先,通过使用 RPN 可以自动生成候选框,避免了手动设计和选择的过程;其次,通过共享卷积网络可以大大减少计算量,提高效率;最后,Faster R-CNN 在准确率和速度之间取得了很好的平衡,可以实现实时目标检测。 总之,Faster R-CNN 是一种高效、准确的目标检测方法,是深度学习在计算机视觉领域中的重要应用之一。在未来,随着计算机视觉技术的进一步发展,Faster R-CNN 这类基于深度学习的目标检测方法将会得到更广泛的应用。 ### 回答3: Faster R-CNN是一种结合了深度学习和传统目标检测算法的新型目标检测方法,旨在提高目标检测速度和准确率。Faster R-CNN采用了Region Proposal Network(RPN)来生成候选区域,并通过R-CNN网络对候选区域进行分类和定位。 RPN是一种全卷积神经网络,用于在图像中生成潜在的候选区域。RPN通常在卷积特征图上滑动,对每个位置预测k个候选区域和其对应的置信度得分。这样,对于输入图像,在不同大小和宽高比的Anchor上预测候选框,可以在计算上更有效率。 R-CNN网络利用卷积特征图作为输入,对RPN生成的候选区域进行分类和精确定位。与以前的目标检测方法相比,Faster R-CNN使用了共享卷积特征,使得整个检测网络可以端到端地进行训练和优化,缩短了训练时间,同时也更便于理解和改进。 Faster R-CNN不仅具有较高的准确性,还具有较快的检测速度。在各种基准测试中,Faster R-CNN与其他目标检测算法相比,都取得了优异的性能表现。总之,Faster R-CNN目标检测引入了一个新的阶段,为实时目标检测提供了一个良好的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值