论文部分内容阅读
在快速发展的今天,目标检测算法被大量应用于人脸识别、视频监控、自动驾驶等领域中,已经成为智慧生活不可缺少的重要组成部分。这些应用利用摄像机模拟人眼,对观测到的图像和视频进行智能分析,快速筛选出人们所需的信息,减少冗余信息,提高工作效率。目标检测是指对图像或视频中的物体进行自动定位,并用矩形框标示出物体在图像中的位置,判断物体类别的过程。本文主要在Faster RCNN算法上进行改进,提高目标检测准确率。Faster RCNN方法是目前检测算法中检测准确率较好的一类方法,该方法从RCNN方法不断改进而来,可以将整体流程分为两个子任务:候选框提取任务与物体分类、位置调整任务。两个子任务共享网络特征提取部分,因此可以做到端到端训练和测试。该方法相比于RCNN方法和其他一些传统方法不仅精度有所提高,速度也有所加快。在一些简单场景上该方法已经取得了较好的应用效果,但对于实际生活中的一些复杂场景,该方法还有待进一步改进。本文提出了利用多深度特征表达的方法,以提高目标检测的算法准确率。通过分析卷积神经网络不同层输出的特征,发现低层次特征包含更多物体的边缘信息,可以帮助确定物体的位置,高层次特征则包含了更多关于图像中物体的语义信息,有利于区分物体的类别。目前的目标检测算法多是将网络最后一层特征作为候选框特征进行后续的类别判断和物体定位,从而忽视了低层特征对物体定位和检测带遮盖的物体的帮助。本文提出了三种多深度特征表达的方法。第一种多深度特征表达的方法是利用ROI池化融合特征,ROI池化可以将不同层的特征归一化到同一尺度,然后对这些特征直接进行连接,形成最终的候选框特征,用于物体分类和位置校正子任务中。本文主要是对残差网络结构进行修改,以下采样为分界点,整个网络可以看作有五种不同层次的特征,第一层特征表示是离输入图像最近的一层特征,特征分辨率也是最大的,随着特征层次升高,特征分辨率逐渐降低,第五层特征则是最后一层特征,也是分辨率最小的一层特征。在该方法中只用ROI池化融合后三层的特征,主要是因为前两层的特征包含较小范围内的局部特征,特征主要表现为颜色和纹理特征,对物体类别识别并没有太多帮助,增加这些特征之后并不会提高准确性,还大大增加了计算时间和内存消耗。为了更好的融合后三层的特征,利用膨胀卷积将第五层特征的特征分辨率扩大2倍,得到与第四层特征相同大小的特征尺度。尽管通过ROI池化融合的特征大小相同,但通道数不同,这相当于每一层特征的权重不同。融合的三层特征中,第五层通道数最多,第三层通道数最少,且第三层和第四层特征通道数总和不超过第五层,混合特征中还是以第五层的特征为主,可以有效地获得物体的语义特征,而新增的特征更多是对原始特征的一种补充,有助于更好地分类和定位。第二种多深度特征表达的方法是利用卷积和池化直接对网络多层特征进行调整,使得多层特征归一化到同一大小,融合后连接候选框提取部分的损失函数以及后续候选框分类和位置调整的损失函数。第二种方法与第一种方法相比,混合特征作用范围更广。第一种方法融合后的特征仅作用于候选框提取之后,对候选框提取阶段没有任何的优化作用。第二种方法依然是对网络后三层特征进行特征融合,原始残差网络的后三层特征分辨率依次减少。为了获得更好的效果,将这三层特征都归一化到第四层特征分辨率的大小,因此需要分别对第三层特征进行下采样和对第五层特征进行上采样操作。在卷积神经网络中,卷积和池化都可以对特征进行下采样。在本方法中,首先选择了利用2?2的平均池化进行特征下采样,然后采用卷积核大小1?1的卷积进行特征调整,这样的下采样方式只需要增加较少的参数,且平均池化可以获得更好地保留语义特征。对于特征第五层,依旧采用膨胀卷积的方式提高特征分辨率,第四层和第五层的特征在融合特征之前也采用卷积核大小1?1的卷积进行参数调整。卷积1?1可以看作是对原始特征进行线性变换,利用1?1卷积调整通道数,使得第三层和第四层通道数减少到相同大小,第五层的通道数减少到第三层和第四层的总和,因此融合之后的特征总通道数将小于第一种方法,但该特征将联合优化目标检测的所有部分。第三种方法采用密集网络实现多深度特征表达,提高目标检测准确率。前两种方法只融合了后三层的特征,而实现过程中,神经网络的每一层都包含多个卷积块,每一层的特征都是由该层最后一个卷积块的输出特征表示,因此融合后三层特征,只是融合了神经网络中具有代表性的三个卷积块的输出特征,并没有真正利用网络里面每一个卷积块的输出特征。如果直接在残差网络的基础之上连接任意两层的特征并融合,整体网络的参数量将以几何倍数增长,且效果不一定好。如果将每一层的网络参数都减少,将当前卷积块的特征与之前的所有卷积块的特征相融合,并将该融合特征作为后续所有卷积块的输入,那么网络最后一层的特征就是整体网络多深度特征融合的结果。该想法与Dense Net网络的实现相类似,因此将Dense Net网络应用于目标检测,实现多深度特征融合。对于Dense Net网络的任意两层之间都有直接连接,网络的每一层都设计的特别“窄”,以降低总体参数。通过层与层之间的连接,将网络中浅层特征完全应用在最后的候选框生成网络和分类定位网络中,是多深度特征表达的有效表现方式。本文提出了一种稳定中心损失函数,用于提取更好的特征表达,提高目标检测的准确率。Faster RCNN方法中利用Softmax损失函数进行物体类别判断。在分类和检索网络中,Softmax损失函数显示仅能将不同类别的物体区分开来,但不能保证物体的类内距离小于类间距离。实验证明,将Softmax损失函数提取出来的特征降维到二维空间上,特征向四周扩散,呈现花的形状,如果两个不同类别物体的特征分布在花的中心范围,将有很大概率被误判。在目标检测任务中,最好的特征应该呈现如下状态:如果当前预测的物体框越接近真实的目标框,特征分类的置信度越高,随着当前预测的物体框与真实的目标框偏离程度逐渐增大,物体分类的特征也应距离最好的特征越来越远,且置信度逐渐变低。在目标检测任务中,如果仅用Softmax损失函数,同一张图像中的不同物体具有相似的背景,区分难度将变大,有可能造成类别误判,如果有方法能使得两种不同类别的物体的特征更加离散,有助于减少背景的影响。在最近的图像检索和分类任务中,有学者提出中心损失函数(center loss)解决该特征问题,中心损失函数首先将对每一个类别随机生成一个中心点,然后使得学习的每一个类别的特征都围绕在中心点附近,从而达到类内特征聚集而类间特征离散的状态。本文借鉴该损失函数的思想,希望每一个类别的特征聚集在中心点附近,但是稳定中心损失函数不同于中心损失函数,稳定中心损失函数利用Smooth L1损失来衡量两个特征之间的距离,而不是分类任务中的L2损失函数。目标检测任务中存在一些异常的离群点,如果采用L2损失函数衡量特征之间的距离,训练时容易造成损失函数值不稳定,而Smooth L1对离群点反应不敏感,可以有效地提高网络学习的稳定性,同时提高目标检测的准确率。最后将稳定中心损失与Softmax损失函数一起用于监督目标检测网络的训练,同时对物体类别进行判断。综上所述,本文主要提出了多深度特征表达结构和稳定中心损失函数改进Faster RCNN方法。本文主要在Pascal VOC 2007数据集上进行实验,通过实验发现,三种多深度特征表达结构都可以提高目标检测的准确率,其中采用密集网络思想的方法提高最大,表明在网络中融合多深度特征的方式可以获得更加完备的特征。本文还在Mnist数据集上验证了稳定中心损失函数的有效性,并与其他损失函数进行对比,发现稳定中心损失函数可以加快网络拟合速度。接下来,我们利用目标检测网络直接进行图像检索,相比于原始网络有明显提升。最后,我们将最终结果与最新的一些论文进行对比,也取得了不错的结果。