·368· 智能系统学报 第13卷 集来说,检测结果没有浅层的VGG16效果好。因 卷积层,第三、四、五组分别有3个卷积层,每一组 此,本文采用VGG161作为R-FCN的主体网络, 的特征图大小相同,前4组特征每组后面都接了 VGG16从conv11到conv5_3总共有13个卷积 1个步长为2的下采样层。本文提出的两个关键改 层,每一层的卷积核大小、移动步长都是相同的,这 进点都是对VGG16网络进行改进,下面对这两个 13个卷积层可以分为5组,第一、二组分别有2个 关键改进点作具体说明。 convl 1 conv4 1 conv4 2 conv4 3 conv5 1 conv5 2 conv5 3 RPN Rols per-Rol Re vote PSROIPooling 图1基于改进版VGG16的R-FCN小物体检测框架 Fig.1 Small-size object detection architecture based on modified VGG16's R-FCN 2.1减小特征图缩放倍数 向量X=(x1,2,…,x)来表示一个输入特征层的所有 VGG16作为R-FCN的主体网络,在卷积cov53 元素,对该特征图进行如下标准化: 上通过RPN网络提取候选框,从conv1_1到conv5 =X2 (1) 3,中间经过了4次步长为2的下采样层,原始图像 到达conv53层边长缩小了16倍,conv53特征图 K6=(∑r (2) 上的一个特征点相当于对应原图的16×16个像素 式中表示标准化后的特征图向量。标准化后的特 点。当RPN网铬从conv53上产生候选框时,有边 征向量元素值比较小,使得网络训练变得比较困 长小于16个像素的候选框被过滤掉了,因为边长小 难,为了更好地训练网络,通常会对标准化后的元 于16个像素的候选框无法映射到从conv53上卷 素通过一个比例因子y进行缩放,假设变化后的元 积得到的后续特征图上,这就造成许多边长小于 素为y,则 16个像素的小物体无法被检测到,或者检测不准确。 yi=Yixi (3) 针对这一问题,本文提出减小特征图缩放倍数的策 最后得到变化后的特征图向量Y=1,2,…y)。 略,也就是说,去掉卷积conv51、conv52、conv5 在网络训练过程中,假设1是需要优化的损失函数, 3和pool4层,在conv43层上通过RPN产生候选 则关于缩放因子y,和输入特征图的更新规则如下: 框,再映射到从conv43上得到的后续特征图上。 alal 这样,原图到conv43边长缩小了8倍,边长在 脉莎 (4) 8~16范围内的小物体可以得到更好的检测效果。 al al I XX 2.2特征拼层 x=(IXTXI (5) RPN网络产生的边长较小的候选框和最后一 票-卫彩 (6) 层卷积特征作映射后得到的特征尺度特别小,只用 cov43层输入到后续的网络中进行分类和边框回 使用如上标准化方式对VGG16同组的卷积层 归特征不充足,对于小物体位置定位来说检测效果 conv41、conv42、conv43进行标准化,然后将它 不是很好,还有待提升。因此,为了能够丰富小物 们拼接起来,称之为组合特征,再输入到后续的网 体的特征信息,使得对于小物体的位置定位更加精 络中训练模型,然后进行分类和边框回归,这一改 确,提出了特征拼层的策略。首先对卷积conv41、 进能够检测到更多的小物体,小物体定位精确度也 conv42、conv43进行L2 normalization。假设用 得到了一定的提升。集来说,检测结果没有浅层的 VGG16 效果好。因 此,本文采用 VGG16[19]作为 R-FCN 的主体网络, VGG16 从 conv1_1 到 conv5_3 总共有 13 个卷积 层,每一层的卷积核大小、移动步长都是相同的,这 13 个卷积层可以分为 5 组,第一、二组分别有 2 个 卷积层,第三、四、五组分别有 3 个卷积层,每一组 的特征图大小相同,前 4 组特征每组后面都接了 1 个步长为 2 的下采样层。本文提出的两个关键改 进点都是对 VGG16 网络进行改进,下面对这两个 关键改进点作具体说明。 2.1 减小特征图缩放倍数 VGG16 作为 R-FCN 的主体网络,在卷积 conv5_3 上通过 RPN 网络提取候选框,从 conv1_1 到 conv5_ 3,中间经过了 4 次步长为 2 的下采样层,原始图像 到达 conv5_3 层边长缩小了 16 倍,conv5_3 特征图 上的一个特征点相当于对应原图的 16×16 个像素 点。当 RPN 网络从 conv5_3 上产生候选框时,有边 长小于 16 个像素的候选框被过滤掉了,因为边长小 于 16 个像素的候选框无法映射到从 conv5_3 上卷 积得到的后续特征图上,这就造成许多边长小于 16 个像素的小物体无法被检测到,或者检测不准确。 针对这一问题,本文提出减小特征图缩放倍数的策 略,也就是说,去掉卷积 conv5_1、conv5_2、conv5_ 3 和 pool4 层,在 conv4_3 层上通过 RPN 产生候选 框,再映射到从 conv4_3 上得到的后续特征图上。 这样,原图到 conv4_3 边长缩小了 8 倍,边长在 8~16 范围内的小物体可以得到更好的检测效果。 2.2 特征拼层 RPN 网络产生的边长较小的候选框和最后一 层卷积特征作映射后得到的特征尺度特别小,只用 conv4_3 层输入到后续的网络中进行分类和边框回 归特征不充足,对于小物体位置定位来说检测效果 不是很好,还有待提升。因此,为了能够丰富小物 体的特征信息,使得对于小物体的位置定位更加精 确,提出了特征拼层的策略。首先对卷积 conv4_1、 conv4_2、conv4_3 进行 L2 normalization[12]。假设用 向量 X = (x1, x2,··· , xd) 来表示一个输入特征层的所有 元素,对该特征图进行如下标准化: Xb = X ∥X∥2 (1) ∥X∥2 = (∑d i=1 |xi | 2 )1/2 (2) Xb γi yi 式中 表示标准化后的特征图向量。标准化后的特 征向量元素值比较小,使得网络训练变得比较困 难,为了更好地训练网络,通常会对标准化后的元 素通过一个比例因子 进行缩放,假设变化后的元 素为 ,则 yi = γibxi (3) Y = (y1, y2,··· , yd) γi 最后得到变化后的特征图向量 。 在网络训练过程中,假设 l 是需要优化的损失函数, 则关于缩放因子 和输入特征图的更新规则如下: ∂l ∂Xb = ∂l ∂γ · γ (4) ∂l ∂X = ∂l ∂Xb ( I ∥X∥2 − XXT ∥X∥ 3 2 ) (5) ∂l ∂γi = ∑ yi ∂l ∂yi bxi (6) 使用如上标准化方式对 VGG16 同组的卷积层 conv4_1、conv4_2、conv4_3 进行标准化,然后将它 们拼接起来,称之为组合特征,再输入到后续的网 络中训练模型,然后进行分类和边框回归,这一改 进能够检测到更多的小物体,小物体定位精确度也 得到了一定的提升。 conv1_1 conv4_1 conv4_2 conv4_3 conv5_1 conv5_2 conv5_3 L2 L2 L2 Rols RPN concatenate conv PSROIPooling Ret per−Rol vote 图 1 基于改进版 VGG16 的 R-FCN 小物体检测框架 Fig. 1 Small-size object detection architecture based on modified VGG16’s R-FCN ·368· 智 能 系 统 学 报 第 13 卷