第3期 葛园园,等:自动驾驶场景下小且密集的交通标志检测 ·367· 检测,本文首先对已有的基于深度学习的目标检测做 置回归出目标位置和类别信息,它们网络训练的整 了研究和总结,然后提出自己改进的目标检测框架。 个过程都是端到端的,检测速度非常快,可以达到 现有的基于深度学习的目标检测算法大致可以 实时要求。 分为两大类:一类是基于候选框提取的目标检测算 对于自动驾驶场景下小且密集的交通标志检测 法,另一类是基于回归方法的目标检测算法。下面 来说,上述两大类物体检测框架都存在着一定的缺 介绍这两大类目标检测算法的代表性检测框架。 陷:基于候选框的检测框架相比基于回归方法的检 R-CNN是Ross Girshick等最早提出的用卷 测框架来说,检测精度会高很多,但速度比较慢:基 积神经网络做目标检测的框架,它是基于候选框提 于回归方法的检测框架虽然检测速度比较快,但由 取的目标检测算法。首先通过selective search算法o 于是对图像进行暴力网格划分,对于物体的检测精 提取候选框,然后用这些候选框微调卷积神经网络 度比较差,尤其是对于小且密集物体的检测,效果 训练SVM(支持向量机)分类器,进行边框回归等。 非常差。因此,为了保证自动驾驶场景中小且密集 R-CNN在VOC2012数据集上mAP达到了53.3%, 的交通标志的检测精度,本文提出了对基于候选框 和之前该数据集上最好的检测结果相比提高了 目标检测框架中速度最快的R-FCNs框架进行改 30%。但R-CNN也存在着很大的缺陷,浪费磁盘空 进,进一步保证了小且密集的交通标志的检测精度。 间,训练时间长,检测速度慢。 SPP-Net2在R-CNN的基础上作了改进,提出 1检测框架 了共享卷积层策略,采用空间金字塔下采样(spatial R-FCNI目标检测框架分别以ResNet--50、Res pyramid pooling),将每个候选框映射后的特征归一 Net-1011作为提取特征的主体网络,在PASCAL 化到同样尺度,输入到后面的全连接层中。SPP- VOC数据集上取得了不错的检测效果,但是交通 Net的检测速度比R-CNN快了24~102倍,检测精 标志检测数据集中存在很多较小的物体,卷积网络 度也得到了一定的提高。但SPP-Net的训练过程包 层数越深,最后一层卷积特征图上的特征点对应于 括多个阶段,比较慢。 原图的感受野越大,对小物体的位置定位比较困 Fast R-CNNI将R-CNN与SPP-Net的空间金 难,检测效果比较差。因此,本文采用层数不是很 字塔采样融合到一起,提出了候选框下采样层(ROI 深的VGG161网络作为R-FCN的主体网络,并在 pooling layer),直接将映射后的候选框下采样到 此基础上针对小物体的检测作进一步的改进。本文 7×7大小的特征图输人到后面的全连接层中。Fast 提出的物体检测框架主要是对R-FCN检测框架的 R-CNN还提出了多任务损失函数,直接对候选框进 主体网络进行改进,网络的训练过程和R-FCN中的 行分类和边框回归,检测速度得到了很大提升,使 训练过程保持一致。图1是本文提出的基于改进 得候选框提取成为限制目标检测速度的一个计算瓶 版VGG16的R-FCN小物体检测框架。该检测框 颈。Faster R-CNNl为了解决候选框提取问题,提 架主要是对VGG16作了两个改进,第一个改进是 出了RPN(region proposal network)网铬来提取候选 将VGG16的卷积层conv5_1、conv52、conv53去 框,将RPN网络和Fast R-CNN网络结合到了一 掉,同时去掉conv43后面的pool4层;第二个改进 起。Faster R-CNN的检测精度和速度得到了很大的 是特征拼层,将conv41、conv42、conv43通过L2 提高。 normalization标准化,然后再拼接到一起,称之为 R-FCNI在Faster R-CNN的基础上作了进一 组合特征,然后输入到后续网络中。RPN网络在标 步的改进,提出位置敏感权重图(position-sensitive 准化后的卷积conv43上提取候选框,将候选框和 score maps)来解决图像分类时的旋转不变性和物体 网络最后一组卷积层特征输入到PSROIPooling层 检测上位置的旋转可变性之间的矛盾。R-FCN的 来做后续的物体分类和边框回归。 位置敏感权重图策略使得网络变成了一个全卷积网 2改进方法 络,不再有全连接层,进一步加快了目标检测的速 度和准确率。 本文提出的物体检测框架主要针对交通标志数 以上目标检测算法都是深度学习方面基于候选 据集中的小物体的检测。网络层数越深,最后一层 框的目标检测框架。另一类基于回归方法的目标检 卷积层的感受野越大,会破坏小物体在特征图上的 测框架的典型代表是YOLO1%和SSDm,它们不必 位置信息。R-FCNl物体检测框架使用ResNet--50、 先提取候选框,再进行候选框的分类和位置调整, ResNet-101作为主体网络时.可以很好地检测到较 而是直接对图像进行划分网格,在每个网格对应位 大的物体,但是对于存在大量密集的小物体的数据检测,本文首先对已有的基于深度学习的目标检测做 了研究和总结,然后提出自己改进的目标检测框架。 现有的基于深度学习的目标检测算法大致可以 分为两大类:一类是基于候选框提取的目标检测算 法,另一类是基于回归方法的目标检测算法。下面 介绍这两大类目标检测算法的代表性检测框架。 R-CNN 是 Ross Girshick 等 [9]最早提出的用卷 积神经网络做目标检测的框架,它是基于候选框提 取的目标检测算法。首先通过 selective search 算法[10] 提取候选框,然后用这些候选框微调卷积神经网络 训练 SVM(支持向量机) 分类器,进行边框回归等。 R-CNN 在 VOC2012 数据集上 mAP[11]达到了 53.3%, 和之前该数据集上最好的检测结果相比提高了 30%。但 R-CNN 也存在着很大的缺陷,浪费磁盘空 间,训练时间长,检测速度慢。 SPP-Net[12]在 R-CNN 的基础上作了改进,提出 了共享卷积层策略,采用空间金字塔下采样 (spatial pyramid pooling),将每个候选框映射后的特征归一 化到同样尺度,输入到后面的全连接层中。SPPNet 的检测速度比 R-CNN 快了 24~102 倍,检测精 度也得到了一定的提高。但 SPP-Net 的训练过程包 括多个阶段,比较慢。 Fast R-CNN[13]将 R-CNN 与 SPP-Net 的空间金 字塔采样融合到一起,提出了候选框下采样层 (ROI pooling layer),直接将映射后的候选框下采样到 7×7 大小的特征图输入到后面的全连接层中。Fast R-CNN 还提出了多任务损失函数,直接对候选框进 行分类和边框回归,检测速度得到了很大提升,使 得候选框提取成为限制目标检测速度的一个计算瓶 颈。Faster R-CNN[14]为了解决候选框提取问题,提 出了 RPN(region proposal network) 网络来提取候选 框,将 RPN 网络和 Fast R-CNN 网络结合到了一 起。Faster R-CNN 的检测精度和速度得到了很大的 提高。 R-FCN[15]在 Faster R-CNN 的基础上作了进一 步的改进,提出位置敏感权重图 (position-sensitive score maps) 来解决图像分类时的旋转不变性和物体 检测上位置的旋转可变性之间的矛盾。R-FCN 的 位置敏感权重图策略使得网络变成了一个全卷积网 络,不再有全连接层,进一步加快了目标检测的速 度和准确率。 以上目标检测算法都是深度学习方面基于候选 框的目标检测框架。另一类基于回归方法的目标检 测框架的典型代表是 YOLO[16]和 SSD[17] ,它们不必 先提取候选框,再进行候选框的分类和位置调整, 而是直接对图像进行划分网格,在每个网格对应位 置回归出目标位置和类别信息,它们网络训练的整 个过程都是端到端的,检测速度非常快,可以达到 实时要求。 对于自动驾驶场景下小且密集的交通标志检测 来说,上述两大类物体检测框架都存在着一定的缺 陷:基于候选框的检测框架相比基于回归方法的检 测框架来说,检测精度会高很多,但速度比较慢;基 于回归方法的检测框架虽然检测速度比较快,但由 于是对图像进行暴力网格划分,对于物体的检测精 度比较差,尤其是对于小且密集物体的检测,效果 非常差。因此,为了保证自动驾驶场景中小且密集 的交通标志的检测精度,本文提出了对基于候选框 目标检测框架中速度最快的 R-FCN[15]框架进行改 进,进一步保证了小且密集的交通标志的检测精度。 1 检测框架 R-FCN[15]目标检测框架分别以 ResNet-50、ResNet-101[18]作为提取特征的主体网络,在 PASCAL VOC[11]数据集上取得了不错的检测效果,但是交通 标志检测数据集中存在很多较小的物体,卷积网络 层数越深,最后一层卷积特征图上的特征点对应于 原图的感受野越大,对小物体的位置定位比较困 难,检测效果比较差。因此,本文采用层数不是很 深的 VGG16[19]网络作为 R-FCN 的主体网络,并在 此基础上针对小物体的检测作进一步的改进。本文 提出的物体检测框架主要是对 R-FCN 检测框架的 主体网络进行改进,网络的训练过程和 R-FCN 中的 训练过程保持一致。图 1 是本文提出的基于改进 版 VGG16 的 R-FCN 小物体检测框架。该检测框 架主要是对 VGG16 作了两个改进,第一个改进是 将 VGG16 的卷积层 conv5_1、conv5_2、conv5_3 去 掉,同时去掉 conv4_3 后面的 pool4 层;第二个改进 是特征拼层,将 conv4_1、conv4_2、conv4_3 通过 L2 normalization[20] 标准化,然后再拼接到一起,称之为 组合特征,然后输入到后续网络中。RPN 网络在标 准化后的卷积 conv4_3 上提取候选框,将候选框和 网络最后一组卷积层特征输入到 PSROIPooling 层 来做后续的物体分类和边框回归。 2 改进方法 本文提出的物体检测框架主要针对交通标志数 据集中的小物体的检测。网络层数越深,最后一层 卷积层的感受野越大,会破坏小物体在特征图上的 位置信息。R-FCN[15]物体检测框架使用 ResNet-50、 ResNet-101 作为主体网络时,可以很好地检测到较 大的物体,但是对于存在大量密集的小物体的数据 第 3 期 葛园园,等:自动驾驶场景下小且密集的交通标志检测 ·367·