为了实现上述的预测,RPN搭建了如图1所示的网络结构。具体实现时,在feature map上首先用3×3的卷积进行更深的特征提取,然后利用1×1的卷积分别实现分类网络和回归网络。 图一 RPN网络计算流程 物体检测中,通常我们将有物体的位置称为前景,没有物体的位置称为背景。在分类网络分支中,首先使用1×1卷积输出18×37×50的特征,由于每个点默认有9个Anchors,并且每个Anchor只预测其属于前景还是背景,因此通道数为18。随后利用torch.view()函数将特征映射到2×333×75,这样第一维仅仅是…

2020年06月30日 0条评论 12点热度 0人点赞 阅读全文

理解RPN的预测量与真值分别是什么,也是理解RPN原理的关键。对于物体检测任务来讲,模型需要预测每一个物体的类别及其出现的位置,即类别、中心点坐标x与y、宽w与高h这5个量。由于有了Anchor这个先验框,RPN可以预测Anchor的类别作为预测边框的类别,并且可以预测真实的边框相对于Anchor的偏移量,而不是直接预测边框的中心点坐标x与y、宽高w与h。 举个例子,如图1所示,输入图像中有3个Anchors与两个标签,从位置来看,Anchor A、C分别和标签M、N有一定的重叠,而Anchor B位置更像是背景。…

2020年06月26日 0条评论 4点热度 0人点赞 阅读全文

理解Anchor是理解RPN乃至Faster RCNN的关键。Faster RCNN先提供一些先验的边框,然后再去筛选与修正,这样在Anchor的基础上做物体检测要比从无到有的直接拟合物体的边框容易一些。 Anchor的本质是在原图大小上的一系列的矩形框,但Faster RCNN将这一系列的矩形框和feature map进行了关联。具体做法是,首先对feature map进行3×3的卷积操作,得到的每一个点的维度是512维,这512维的数据对应着原始图片上的很多不同的大小与宽高区域的特征,这些区域的中心点都相同。如…

2020年06月26日 0条评论 9点热度 0人点赞 阅读全文

RPN部分的输入、输出如下: 输入:feature map、物体标签,即训练集中所有物体的类别与边框位置。 输出:Proposal、分类Loss、回归Loss,其中,Proposal作为生成的区域,供后续模块分类与回归。两部分损失用作优化网络。 RPN模块的总体代码逻辑如下,源代码文件见lib/model/faster_rcnn/faster_rcnn.py。 本文中的源代码文件获取方式请参考:http://ai.52learn.online/1042

2020年06月26日 0条评论 4点热度 0人点赞 阅读全文

总览如图1所示为Faster RCNN算法的基本流程,从功能模块来讲,主要包括4部分:特征提取网络、RPN模块、RoI Pooling(Region of Interest)模块与RCNN模块,虚线表示仅仅在训练时有的步骤。Faster RCNN延续了RCNN系列的思想,即先进行感兴趣区域RoI的生成,然后再把生成的区域分类,最后完成物体的检测,这里的RoI使用的即是RPN模块,区域分类则是RCNN网络。 特征提取网络Backbone:输入图像首先经过Backbone得到特征图,在此以VGGNet为例,假设输入图像…

2020年06月26日 0条评论 7点热度 0人点赞 阅读全文

RCNN全称为Regions with CNN Features,是将深度学习应用到物体检测领域的经典之作,并凭借卷积网络出色的特征提取能力,大幅度提升了物体检测的效果。而随后基于RCNN的Fast RCNN及Faster RCNN将物体检测问题进一步优化,在实现方式、速度、精度上均有了大幅度提升。 物体检测领域出现的新成果很大一部分也是基于RCNN系列的思想,尤其是Faster RCNN,并且在解决小物体、拥挤等较难任务时,RCNN系列仍然具有较强的优势。因此,想要学习物体检测,RCNN系列是第一个需要全面掌握的…

2020年06月26日 0条评论 15点热度 0人点赞 阅读全文

VGGNet和ResNet等网络骨架,虽从各个角度出发提升了物体检测性能,但就究其根本是为ImageNet的图像分类任务而设计的。而图像分类与物体检测两个任务天然存在着落差,分类任务侧重于全图的特征提取,深层的特征图分辨率很低;而物体检测需要定位出物体位置,特征图分辨率不宜太小,因此造成了以下两种缺陷: 1)大物体难以定位:对于FPN等网络,大物体对应在较深的特征图上检测,由于网络较深时下采样率较大,物体的边缘难以精确预测,增加了回归边界的难度。 2)小物体难以检测:对于传统网络,由于下采样率大造成小物体在较深的特…

2020年06月26日 0条评论 5点热度 0人点赞 阅读全文

为了增强语义性,传统的物体检测模型通常只在深度卷积网络的最后一个特征图上进行后续操作,而这一层对应的下采样率(图像缩小的倍数)通常又比较大,如16、32,造成小物体在特征图上的有效信息较少,小物体检测性能会急剧下降,这个问题也被成为多尺度问题。 解决多尺度问题的关键在于如何提取多尺度的特征。传统的方法有图像金字塔(Image Pyramid),主要思路是将输入图片做成多个尺度,不同尺度的图像生成不同尺度的特征,这个方法简单而有效,大量使用在了COCO等竞赛上,但缺点是非常耗时,计算量也很大。 从前面内容可以知道,卷…

2020年06月25日 0条评论 19点热度 0人点赞 阅读全文

ResNet通过前层与厚层的“短路连接”(Shortcuts),加强了前后层之间的信息流通,在一定程度上缓解了梯度消失现象,从而可以将神经网络搭建得很深。更进一步,DenseDet最大化了这种前后信息交流,通过建立前面所有层与后面层的密集连接,实现了特征在通道维度上的复用,使其可以在参数与计算量更少的情况下实现比ResNet更优的性能,提出DenseNet的《Densely Connected Convolutional Networks》也一举拿下了2017年CVPR的最佳论文。 DenseNet的网络架构如下图…

2020年06月25日 0条评论 11点热度 2人点赞 阅读全文

图像特征主要有图像的颜色特征、纹理特征、形状特征和空间关系特征。人眼可以看到图像这种视觉信息,但这种信息并不能让计算机“看见”,即计算机并不能处理这种信息。 想要让计算机“看见”,就要求我们将图像的视觉信息转化成计算机能够识别和处理的定量形式。这就是图像特征提取,传统的特征提取方法分为两个类别,分别是基于结构形态的特征提取与基于几何分布的特征提取。 基于结构形态的特征提取 通常情况下,基于结构形态的特征有两类表示方法,一类是轮廓特征,另一类是区域特征。基于结构形态的特征提取方法主要是将字符图像的结构形态转化为特征向…

2020年06月24日 0条评论 35点热度 1人点赞 阅读全文
12