第16卷第1期 智能系统学报 Vol.16 No.1 2021年1月 CAAI Transactions on Intelligent Systems Jan.2021 D0:10.11992/tis.202004033 隔级融合特征金字塔与CornerNet 相结合的小目标检测 赵文清3,孔子旭,赵振兵 (1.华北电力大学控制与计算机工程学院,河北保定071003,2.华北电力大学电气与电子工程学院,河北保定 071003;3.复杂能源系统智能计算教育部工程研究中心,河北保定071003) 摘要:为弥补CornerNet中小目标语义信息弱的缺陷,提出隔级融合特征金字塔的方法,提高小目标平均准确 率。对骨干网络后半部分融合后的4个特征图进行提取,将尺寸较小的特征图进行2次卷积,得到2个新的特 征图;运用上下融合、隔级融合和旁路连接的思想,生成融合后的特征图并将其组成特征金字塔。将改进后的 算法与当前主流CornerNet、.Faster RCNN、RetinaNet算法在MS COCO数据集上进行比较,结果表明.改进后算 法在对小目标进行检测时,小目标平均准确率有较大提高。隔级融合特征金字塔在CornerNet上能有效融合高 低层特征图,使融合后的特征图有较强的语义信息,提高CornerNet网络的小目标平均准确率。 关键词:CornerNet::小目标检测:卷积:特征图;隔级融合:上下融合:旁路连接:特征金字塔 中图分类号:TP391文献标志码:A文章编号:1673-4785(2021)01-0108-09 中文引用格式:赵文清,孔子旭,赵振兵.隔级融合特征金字塔与CornerNet相结合的小目标检测.智能系统学报,2021, 16(1):108-116. 英文引用格式:ZHAO Wenqing,KONGZixu,ZHAO Zhenbing.Small target detection based on a combination of feature pyramid and CornerNet[JI.CAAI transactions on intelligent systems,2021,16(1):108-116. Small target detection based on a combination of feature pyramid and CornerNet ZHAO Wenging3,KONG Zixu',ZHAO Zhenbing? (1.School of Control and Computer Engineering,North China Electric Power University,Baoding 071003,China;2.School of Elec- trical and Electronic Engineering,North China Electric Power University,Baoding 071003,China;3.Engineering Research Center of the Ministry of education for Intelligent Computing of complex energy system,Baoding 071003) Abstract:To improve the problem of the weak semantic information of the small target in CornerNet,a method of the hierarchical fusion feature pyramid is proposed to increase the average accuracy of the small target.The method first ex- tracts the four feature maps after the fusion of the second half of the backbone network,then convolves the feature maps with a smaller size twice to obtain two new feature maps,and finally uses the ideas of the upper and lower fusion,inter- level fusion,and bypass connection to generate a fused feature map and form it into a feature pyramid.The result shows that the average accuracy for small targets obtained by our algorithm has been greatly improved compared with those by current mainstream algorithms,such as CornerNet,Faster RCNN,and RetinaNet on the MS COCO dataset,which demonstrates great superiority.The inter-level fusion feature pyramid can effectively fuse high-level and low-level fea- ture maps on CornerNet,so that the fused feature maps have strong semantic information,and improve the average ac- curacy of the small targets of the CornerNet network. Keywords:CornerNet;small target detection;convolution;feature map;interval fusion;upper and lower fusion;bypass connection;feature pyramid 收稿日期:2020-04-27. 目标检测的目的是使计算机像人类一样,从 基金项目:国家自然科学基金项目(61871182):中央高校基本 图像中获取所需要的信息。这对于人眼来说一件 科研业务费面上项目(2020MS153). 通信作者:赵文清.E-mail:jbzwq(@126.com. 很简单的事情,通过观察目标的颜色、形状等特
DOI: 10.11992/tis.202004033 隔级融合特征金字塔与 CornerNet 相结合的小目标检测 赵文清1,3,孔子旭1 ,赵振兵2 (1. 华北电力大学 控制与计算机工程学院,河北 保定 071003; 2. 华北电力大学 电气与电子工程学院,河北 保定 071003; 3. 复杂能源系统智能计算教育部工程研究中心,河北 保定 071003) 摘 要:为弥补 CornerNet 中小目标语义信息弱的缺陷,提出隔级融合特征金字塔的方法,提高小目标平均准确 率。 对骨干网络后半部分融合后的 4 个特征图进行提取,将尺寸较小的特征图进行 2 次卷积,得到 2 个新的特 征图;运用上下融合、隔级融合和旁路连接的思想,生成融合后的特征图并将其组成特征金字塔。将改进后的 算法与当前主流 CornerNet、Faster RCNN、RetinaNet 算法在 MS COCO 数据集上进行比较,结果表明,改进后算 法在对小目标进行检测时,小目标平均准确率有较大提高。隔级融合特征金字塔在 CornerNet 上能有效融合高 低层特征图,使融合后的特征图有较强的语义信息,提高 CornerNet 网络的小目标平均准确率。 关键词:CornerNet;小目标检测;卷积;特征图;隔级融合;上下融合;旁路连接;特征金字塔 中图分类号:TP391 文献标志码:A 文章编号:1673−4785(2021)01−0108−09 中文引用格式:赵文清, 孔子旭, 赵振兵. 隔级融合特征金字塔与 CornerNet 相结合的小目标检测 [J]. 智能系统学报, 2021, 16(1): 108–116. 英文引用格式:ZHAO Wenqing, KONG Zixu, ZHAO Zhenbing. Small target detection based on a combination of feature pyramid and CornerNet[J]. CAAI transactions on intelligent systems, 2021, 16(1): 108–116. Small target detection based on a combination of feature pyramid and CornerNet ZHAO Wenqing1,3 ,KONG Zixu1 ,ZHAO Zhenbing2 (1. School of Control and Computer Engineering, North China Electric Power University, Baoding 071003, China; 2. School of Electrical and Electronic Engineering, North China Electric Power University, Baoding 071003, China; 3. Engineering Research Center of the Ministry of education for Intelligent Computing of complex energy system, Baoding 071003) Abstract: To improve the problem of the weak semantic information of the small target in CornerNet, a method of the hierarchical fusion feature pyramid is proposed to increase the average accuracy of the small target. The method first extracts the four feature maps after the fusion of the second half of the backbone network, then convolves the feature maps with a smaller size twice to obtain two new feature maps, and finally uses the ideas of the upper and lower fusion, interlevel fusion, and bypass connection to generate a fused feature map and form it into a feature pyramid. The result shows that the average accuracy for small targets obtained by our algorithm has been greatly improved compared with those by current mainstream algorithms, such as CornerNet, Faster RCNN, and RetinaNet on the MS COCO dataset, which demonstrates great superiority. The inter-level fusion feature pyramid can effectively fuse high-level and low-level feature maps on CornerNet, so that the fused feature maps have strong semantic information, and improve the average accuracy of the small targets of the CornerNet network. Keywords: CornerNet; small target detection; convolution; feature map; interval fusion; upper and lower fusion; bypass connection; feature pyramid 目标检测的目的是使计算机像人类一样,从 图像中获取所需要的信息。这对于人眼来说一件 很简单的事情,通过观察目标的颜色、形状等特 收稿日期:2020−04−27. 基金项目:国家自然科学基金项目 (61871182);中央高校基本 科研业务费面上项目 (2020MS153). 通信作者:赵文清. E-mail:jbzwq@126.com. 第 16 卷第 1 期 智 能 系 统 学 报 Vol.16 No.1 2021 年 1 月 CAAI Transactions on Intelligent Systems Jan. 2021
第1期 赵文清,等:隔级融合特征金字塔与CornerNet相结合的小目标检测 ·109· 点就能轻易地判定目标的类别及位置;但计算机 础模型,如图1所示。首先经过一系列降采样,将 “看到的”却是一个个的像素值,很难从这些像素 图像分辨率降低4倍(文献[13]中输入图像大小 值中抽象出目标的特征并确定目标的位置山。目 为511×511,输出图像大小为128×128),然后经过 标检测技术在日常生活中广泛应用,例如安装摄 特征提取网络提取特征。该网络通过串联2个沙 像头检测可疑人物携带的诸如作案工具等小目 漏网络模块组成,沙漏网络模块中间用一个中继 标,分析异常行为,从而做到对危险的预判:在智 监督进行连接。每个沙漏网络模块都是先通过 能自动驾驶中,检测前方目标并进行识别,系统 系列步长为2的降采样操作缩小输入的大小,获 作出判断并采取相应措施;在交通视频监控中, 得一些分辨率较低的特征,从而使计算复杂度降 车牌、车标等小目标需要准确检测;航拍图片因 低,然后通过上采样恢复到输入图像大小,提高 为拍摄距离比较远而造成目标像素过低等等,这 图像的分辨率,更好地预测物体的准确位置。整 些问题都需要采用目标检测技术,因此,对小目 个沙漏网络的深度是104层,最后将该特征图作 标进行准确快速的检测尤为必要。小目标主要分 为2个预测模块的输入,预测的关键点为左上角 为绝对小目标(像素低)和相对小目标(相对于原 和右下角,因此是2个模块输入。在每个模块里 图的长宽比例小),图像大小为原图像的01倍或 面,首先经过角池化,然后输出3个分支:热图、 图像像素低于32×32,即可认定为小目标。 嵌入矢量和偏移。 目前主流的目标检测算法主要分为两大类。 角池化 热图 第1类是双阶段检测方法,代表性算法有Faster 左上角 嵌人 R-CNN(towards real-time object detection with re- 点预测 失量 gion proposal networks)SPP-Net(spatial pyramid 特征图 右下角 偏移 pooling in deep convolutional networks for visual re- 点预测 cognition)、Mask R-CNN等。双阶段检测算法 Hourglass网络 首先针对输入图像选择候选区域,然后用卷积对 图1 CornerNet检测模型 产生的候选区域提取特征,最后对候选区域进行 Fig.1 CornerNet detection model 分类和位置回归。双阶段检测算法由于检测框与 1.1.1预测模块详细结构 小目标的不匹配等问题,在进行特征提取的过程 图2为左上角点的处理过程。图2中虚线框 中会造成边缘信息丢失,导致检测率低下。第 分为2路,2路处理过程一致,最后再用ReLu激 2类是单阶段检测方法,代表性的算法有 活函数处理。2路特征图经处理后进行融合,然 SSD(single shot multiBox detector)YOLO(you 后用3×3的卷积核和批量归一处理融合后的特征 only look once)s、Retina-Net例等。单阶段算法相 图,最后将处理后的特征图与骨干网络输出,并 较于双阶段算法不需要计算候选框区域,直接对 经1×1卷积和批量归一化处理后的特征图进行融 输入图片进行回归,检测目标的类别概率和位置 合,融合后的特征图进行ReLu激活函数处理,经 坐标10。 处理后的特征图再次进行3×3的卷积、批量归一 由于特征图语义信息弱,导致小目标检测效 果差。2017年Lin等提出了FPN((feature pyram- 化、ReLu激活函数处理,最后3个输出分别为热 图、嵌入矢量和偏移、右下角点与左上角点处理 id networks for object detection)网络。该算法有 过程一致。 2条分支,第1条分支采用自上而下网络,第2条 分支采用自下而上网络。通过旁路连接将2个特 左上角点池化模块 3×3 征图像融合,从而实现多尺度目标检测。本文 Conv-BN 借鉴FPN算法的核心思想,在其基础上进行改进 并运用到CornerNet(detecting objects as paired key- points)算法中,用来对小目标进行检测。 1 CornerNet算法 1 Conv-BN 3×3 Conv-BN Conv l.l基于沙漏网络的CornerNet网络模型 Conv-BN-ReLu CornerNet!1模型采用沙漏网络(stacked hour- 图2角点检测模块 glass networks for human pose estimation)w作为基 Fig.2 Corner detection module
点就能轻易地判定目标的类别及位置;但计算机 “看到的”却是一个个的像素值,很难从这些像素 值中抽象出目标的特征并确定目标的位置[1]。目 标检测技术在日常生活中广泛应用,例如安装摄 像头检测可疑人物携带的诸如作案工具等小目 标,分析异常行为,从而做到对危险的预判;在智 能自动驾驶中,检测前方目标并进行识别,系统 作出判断并采取相应措施;在交通视频监控中, 车牌、车标等小目标需要准确检测;航拍图片因 为拍摄距离比较远而造成目标像素过低等等,这 些问题都需要采用目标检测技术,因此,对小目 标进行准确快速的检测尤为必要。小目标主要分 为绝对小目标 (像素低) 和相对小目标 (相对于原 图的长宽比例小),图像大小为原图像的 0.1 倍或 图像像素低于 32×32,即可认定为小目标[2]。 目前主流的目标检测算法主要分为两大类。 第 1 类是双阶段检测方法,代表性算法有 Faster R-CNN(towards real-time object detection with region proposal networks) [3] 、SPP-Net(spatial pyramid pooling in deep convolutional networks for visual recognition) [4] 、Mask R-CNN[5] 等。双阶段检测算法 首先针对输入图像选择候选区域,然后用卷积对 产生的候选区域提取特征,最后对候选区域进行 分类和位置回归。双阶段检测算法由于检测框与 小目标的不匹配等问题,在进行特征提取的过程 中会造成边缘信息丢失,导致检测率低下 [6]。第 2 类是单阶段检测方法,代表性的算法 有 SSD(single shot multiBox detector) [7] 、YOLO(you only look once) [8] 、Retina-Net[9] 等。单阶段算法相 较于双阶段算法不需要计算候选框区域,直接对 输入图片进行回归,检测目标的类别概率和位置 坐标[10]。 由于特征图语义信息弱,导致小目标检测效 果差。2017 年 Lin 等 [11] 提出了 FPN(feature pyramid networks for object detection) 网络。该算法有 2 条分支,第 1 条分支采用自上而下网络,第 2 条 分支采用自下而上网络。通过旁路连接将 2 个特 征图像融合,从而实现多尺度目标检测[12]。本文 借鉴 FPN 算法的核心思想,在其基础上进行改进 并运用到 CornerNet(detecting objects as paired keypoints) 算法中,用来对小目标进行检测。 1 CornerNet 算法 1.1 基于沙漏网络的 CornerNet 网络模型 CornerNet[13] 模型采用沙漏网络(stacked hourglass networks for human pose estimation) [14] 作为基 础模型,如图 1 所示。首先经过一系列降采样,将 图像分辨率降低 4 倍 (文献 [13] 中输入图像大小 为 511×511,输出图像大小为 128×128),然后经过 特征提取网络提取特征。该网络通过串联 2 个沙 漏网络模块组成,沙漏网络模块中间用一个中继 监督进行连接。每个沙漏网络模块都是先通过一 系列步长为 2 的降采样操作缩小输入的大小,获 得一些分辨率较低的特征,从而使计算复杂度降 低,然后通过上采样恢复到输入图像大小,提高 图像的分辨率,更好地预测物体的准确位置。整 个沙漏网络的深度是 104 层,最后将该特征图作 为 2 个预测模块的输入,预测的关键点为左上角 和右下角,因此是 2 个模块输入。在每个模块里 面,首先经过角池化,然后输出 3 个分支:热图、 嵌入矢量和偏移。 角池化 热图 嵌入 矢量 偏移 特征图 左上角 点预测 右下角 点预测 Hourglass 网络 图 1 CornerNet 检测模型 Fig. 1 CornerNet detection model 1.1.1 预测模块详细结构 3×3 1×1 3×3 图 2 为左上角点的处理过程。图 2 中虚线框 分为 2 路,2 路处理过程一致,最后再用 ReLu 激 活函数处理。2 路特征图经处理后进行融合,然 后用 的卷积核和批量归一处理融合后的特征 图,最后将处理后的特征图与骨干网络输出,并 经 卷积和批量归一化处理后的特征图进行融 合,融合后的特征图进行 ReLu 激活函数处理,经 处理后的特征图再次进行 的卷积、批量归一 化、ReLu 激活函数处理,最后 3 个输出分别为热 图、嵌入矢量和偏移、右下角点与左上角点处理 过程一致。 Relu 左上角点池化模块 热图 嵌入 矢量 偏移 骨干 网络 3×3 Conv-BN 3×3 Conv-BN-ReLu 1×1 Conv-BN + + 1×1 Conv 3×3 Conv-BN 图 2 角点检测模块 Fig. 2 Corner detection module 第 1 期 赵文清,等:隔级融合特征金字塔与 CornerNet 相结合的小目标检测 ·109·
·110· 智能系统学报 第16卷 1.1.2角池化 示e和ek的平均值。式(6)用来缩小属于同一个 角池化通过编码来更好地定位角点。角池化 目标(第k个目标)2个角点的嵌入矢量(ek,e)距 层首先最大池化无中在(i,)与(,A之间所有的 离。式(7)用来扩大不属于同一个目标的2个角 特征向量,使之成为特征向量t,然后最大池化 点的嵌入矢量距离。 中在(,)与(W)之间所有的特征向量,使之成为 l。最后把t和l加在一起: (6) max(f,t+w: t2{ i<H fi,其他 (1) 2 ax(.A 1 (7) = max(fi.li).j<W 1lm,其他 最后的网络损失函数为式(2)、式(⑤)(⑦)相加的 1.13热图 形式: 热图:预测角点位置,特征图的每个通道的值 L=Ldet aLpull +BLpush +yLott (8) 表示所定位点为角点的分数: 式中:a=B=0.1;y=1。 -1 1.2FPN网络 La二N 2017年Lin等1提出了特征图金字塔算法。 222-地 FPN算法可以将浅层与深层的特征图进行融合, (2) 利用邻近特征图的语义信息,通过融合上下2层 式(2)是针对角点预测的损失函数,整体上是 的特征,得到语义信息更加丰富的特征图供后续 改良版的Focal Loss(focal loss for dense object de- 的检测,通过融合这些不同层的特征图来达到预 tection)。式中:pa表示预测的热图在C类的 测效果,解决了多尺度下小目标准确检测的问 (i)位置的值;y表示位置(i,)的ground-truth; 题。目前很多算法都引入FPN模型来提高其检 N为图中待检测目标的数量。 测率,例如,文献[16]在SSD算法中引入FPN 1.14偏移 算法,在PASCAL VOC2007数据集上平均准确率 偏移:输出从输入映射到特征图的误差信息。 较SSD提高1.7%;文献[17]在YOLO V3算法中 在神经网络中存在着下采样层,因此从原始 引入FPN算法,在PASCAL VOC2007数据集上 的图像输入到最后的偏移的过程会产生累计误 平均准确率较YOL0V3提高1.58%:事实表明单 差,因此引入偏移修正进行修正: 一特征检测的算法引入FPN后平均准确率有较大 a-(倍-别告-别 (3) 提升。浅层特征图虽然具有较少的语义信息,但 是保留较为准确的位置信息,而在小目标检测中, 由于输入图像到不同尺寸的特征图之间会有 小目标对于位置的敏感度要远远大于大目标。同 尺寸缩小,因此在设计特征图时P~P。之间都是 时,对于深层的特征图随着特征图的下采样过多 2的倍数。假设缩小倍数是n,那么输人图像上 导致在深层特征图丰富的语义信息中保留了大目 的(x,y)点对应到特征图上为 标的特征而丢失了小目标的特征信息。文献[13] D (4) 中CornerNet仅是对一张特征图进行检测,其忽略 式(4)中的符号是向下取整,取整会带来精度 了浅层特征,导致小目标效果检测不是很理想。 丢失问题,所以通过式(3)计算偏移,然后通过式 初期为了验证引入FPN算法的有效性,在骨干网 (5)的Smooth L,损失函数监督学习该参数: 络输出一张特征图的基础上,增加一个浅层特征 图形成2路分支供检测,发现准确率有所提升,从 >SmoothLLoss(ox,0) (5) 而验证本文想法的正确性。本文基于FPN思想, 1.1.5嵌入矢量 充分利用CornerNet骨干网络输出的浅层特征图 嵌入矢量:将角点配对,如果一个左上角点和 与深层特征图进行融合,形成语义信息更加丰富 一个右下角点属于一个目标,那么它们的嵌人矢 的4层与6层特征金字塔供检测,进而提升准确率。 量距离较小。 2隔级融合特征金字塔与CornerNet 嵌人矢量的训练是由2个损失函数实现的。 相结合的小目标检测模型 e表示第k个目标的左上角角点的嵌人矢量,e 表示第k个目标的右下角角点的嵌入矢量,e表 CornerNet模型采用Hourglass作为其骨干网
1.1.2 角池化 ft ti j fl li j ti j li j 角池化通过编码来更好地定位角点。角池化 层首先最大池化 中在 (i,j) 与 (i,H) 之间所有的 特征向量,使之成为特征向量 ,然后最大池化 中在 (i,j) 与 (W,j) 之间所有的特征向量,使之成为 。最后把 和 加在一起: ti j = { max( fti j , t(i+1)j ) , i < H ftH j , 其他 ti j = { max( fIi j , li(j+1) ) , j < W ltiW , 其他 (1) 1.1.3 热图 热图:预测角点位置,特征图的每个通道的值 表示所定位点为角点的分数: Ldet = −1 N ∑C c=1 ∑H i=1 ∑W j=1 { ( 1− pci j)α log( 1− pci j) , yci j = 1 ( 1−yci j)β ( pci j)α log( 1− pci j) , 其他 (2) pci j yci j 式 (2) 是针对角点预测的损失函数,整体上是 改良版的 Focal Loss(focal loss for dense object detection)。式中: 表示预测的热图在 C 类的 (i,j) 位置的值; 表示位置 (i,j) 的 ground-truth; N 为图中待检测目标的数量。 1.1.4 偏移 偏移:输出从输入映射到特征图的误差信息。 在神经网络中存在着下采样层,因此从原始 的图像输入到最后的偏移的过程会产生累计误 差,因此引入偏移修正进行修正: ok = ( xk n − ⌊ xk n ⌋ , yk n − ⌊ yk n ⌋) (3) 由于输入图像到不同尺寸的特征图之间会有 尺寸缩小,因此在设计特征图时 P1~P6 之间都是 2 的倍数。假设缩小倍数是 n,那么输入图像上 的 (x,y) 点对应到特征图上为 (⌊ x n ⌋ , ⌊ y n ⌋) (4) 式 (4) 中的符号是向下取整,取整会带来精度 丢失问题,所以通过式 (3) 计算偏移,然后通过式 (5) 的 Smooth L1 损失函数监督学习该参数: Loff = 1 N ∑N k=1 SmoothL1Loss(ok , ∧ ok) (5) 1.1.5 嵌入矢量 嵌入矢量:将角点配对,如果一个左上角点和 一个右下角点属于一个目标,那么它们的嵌入矢 量距离较小。 etk ek ek 嵌入矢量的训练是由 2 个损失函数实现的。 表示第 k 个目标的左上角角点的嵌入矢量, 表示第 k 个目标的右下角角点的嵌入矢量, 表 etk ek etk ek 示 和 的平均值。式 (6) 用来缩小属于同一个 目标 (第 k 个目标)2 个角点的嵌入矢量 ( , ) 距 离。式 (7) 用来扩大不属于同一个目标的 2 个角 点的嵌入矢量距离。 Lpull = 1 N ∑N k=1 [(etk −ek) 2 +(ebk −ek) 2 ] (6) Lpush = 1 N(N −1) ∑N k=1 ∑N j=1 j,k max(0,∆− ek − ej ) (7) 最后的网络损失函数为式 (2)、式 (5)~(7) 相加的 形式: L = Ldet +αLpull +βLpush +γLoff (8) 式中:α=β =0.1; γ =1。 1.2 FPN 网络 2017 年 Lin 等 [11] 提出了特征图金字塔算法。 FPN 算法可以将浅层与深层的特征图进行融合, 利用邻近特征图的语义信息,通过融合上下 2 层 的特征,得到语义信息更加丰富的特征图供后续 的检测,通过融合这些不同层的特征图来达到预 测效果,解决了多尺度下小目标准确检测的问 题 [15]。目前很多算法都引入 FPN 模型来提高其检 测率,例如,文献 [16] 在 SSD 算法中引入 FPN 算法,在 PASCAL VOC 2007 数据集上平均准确率 较 SSD 提高 1.7%;文献 [17] 在 YOLO V3 算法中 引入 FPN 算法,在 PASCAL VOC 2007 数据集上 平均准确率较 YOLO V3 提高 1.58%;事实表明单 一特征检测的算法引入 FPN 后平均准确率有较大 提升。浅层特征图虽然具有较少的语义信息,但 是保留较为准确的位置信息,而在小目标检测中, 小目标对于位置的敏感度要远远大于大目标。同 时,对于深层的特征图随着特征图的下采样过多 导致在深层特征图丰富的语义信息中保留了大目 标的特征而丢失了小目标的特征信息。文献 [13] 中 CornerNet 仅是对一张特征图进行检测,其忽略 了浅层特征,导致小目标效果检测不是很理想。 初期为了验证引入 FPN 算法的有效性,在骨干网 络输出一张特征图的基础上,增加一个浅层特征 图形成 2 路分支供检测,发现准确率有所提升,从 而验证本文想法的正确性。本文基于 FPN 思想, 充分利用 CornerNet 骨干网络输出的浅层特征图 与深层特征图进行融合,形成语义信息更加丰富 的 4 层与 6 层特征金字塔供检测,进而提升准确率。 2 隔级融合特征金字塔与 CornerNet 相结合的小目标检测模型 CornerNet 模型采用 Hourglass 作为其骨干网 ·110· 智 能 系 统 学 报 第 16 卷
第1期 赵文清,等:隔级融合特征金字塔与CornerNet相结合的小目标检测 ·111 络,只用该网络的最后输出图作检测。虽然特征 2次卷积,目的是使得可供检测的特征图尺度更 图语义信息比较丰富,但是日标位置不精准。由 加丰富。本文基于其再次进行卷积的思想,将特 于小目标尺寸过小,极易与背景融合,导致小目 征金字塔中尺寸最小的特征图进行2次卷积,进 标检测率低下u。针对CornerNet算法对小目标 而得到更多尺度的特征图为隔级融合做准备,最 检测出现漏检误检的问题,本文将骨干网络部分 后将对组成特征金字塔的特征图进行隔级融合、 语义信息丰富且尺寸不同的特征图提取出来。 上下融合、旁路连接,融合后的特征图语义信息 FCOS(fully convolutional one-stage object 更加丰富。 detection)算法同样是无框检测,该算法在引入 图3为本文提出的隔级融合特征金字塔与 特征金字塔的基础上对最小的特征图又进行了 CornerNet结合的小目标检测模型。 ·特征图 角池化 8×8 +;征图 左上角点 热图 C416×16 ·特征图 Prediction 嵌人 16×16 Hourglass网络 矢量 C32×32 32×32 特征图 偏移 C 64×64 Prediction 64×64 →特征图 右下角点 C 128×128 128×128特征图 骨干网络 隔级融合特征金字塔 预测模块 图3隔级融合特征金字塔与CornerNet结合的小目标模型 Fig.3 Small target model based on the combination of connected feature pyramid and CornerNet 2.1改进后的沙漏网络 后进行上采样(蓝色方块),上采样之后将特征图 图4为一个沙漏网络模块,内部大多采用残 与上一个支路处理后的特征图进行融合,融合后 差网络的残差块进行特征提取。过程如下:对输 再经过一个残差块进行特征提取,2次下采样之 入的特征图进行一系列的下采样(红色方块),下 间有3个残差模块进行特征提取。C1~C4是提取 采样前分出一条之路保留上采样前的特征图,然 出来的特征图,为隔级融合特征金字塔做准备。 四 题☒卧四-图-四图卧四卧Ⅲ-0下-团+60+且$-日6-0-固-61 |残差块☒Pooling layer且上采样(双线性内插法) 图4沙漏网络模型 Fig.4 Hourglass network model 图5为2种残差模块示意图。CornerNet中的 不使用1×1卷积,参考图5(a),假设同样输入3×3× 沙漏网络的残差块采用图5(a)基本块,其由2个 128的特征图,第1步经过128个3×3卷积核,第 3×3卷积组成。由于改进后的网络添加了特征金 2步再经过128个3×3卷积核对特征图进行卷积。 字塔,导致整个模型推理速度变慢,因此本文骨 整体过程的参数数目为3×3×128×128×2=294912。 干网络中的残差模块采用图5b)中的瓶颈块。 2种不同情况,参数数目相差5.5倍。因此,改进 采用图5(b)瓶颈块的残差模块,假设输入是 后的沙漏网络在保证准确度的前提下,参数量大 一个3×3×128的特征图,首先采用64个1×1的卷 为减少,推理速度变快。 积将128通道的特征图降到64通道,然后用 2.2隔级融合特征金字塔模型 3×3卷积进行特征提取,最后通过1×1卷积将特 在卷积神经网络中,网络越深,特征图拥有的 征图恢复到128通道。此过程涉及的参数数目为 抽象特征信息就越多。因此运用隔级连接来融合 1×1×128×64+3×3×64×64+1×1×64×128=53248。如 高层与低层的特征图,融合出语义信息更丰富的
络,只用该网络的最后输出图作检测。虽然特征 图语义信息比较丰富,但是目标位置不精准。由 于小目标尺寸过小,极易与背景融合,导致小目 标检测率低下[18]。针对 CornerNet 算法对小目标 检测出现漏检误检的问题,本文将骨干网络部分 语义信息丰富且尺寸不同的特征图提取出来。 FCOS(fully convolutional one-stage object detection)[19] 算法同样是无框检测,该算法在引入 特征金字塔的基础上对最小的特征图又进行了 2 次卷积,目的是使得可供检测的特征图尺度更 加丰富。本文基于其再次进行卷积的思想,将特 征金字塔中尺寸最小的特征图进行 2 次卷积,进 而得到更多尺度的特征图为隔级融合做准备,最 后将对组成特征金字塔的特征图进行隔级融合、 上下融合、旁路连接,融合后的特征图语义信息 更加丰富。 图 3 为本文提出的隔级融合特征金字塔与 CornerNet 结合的小目标检测模型。 Hourglass 网络 P6 P5 P4 P3 P2 P1 C4 C3 C2 C1 特征图 特征图 特征图 特征图 特征图 特征图 Prediction Prediction 角池化 热图 嵌入 矢量 偏移 左上角点 右下角点 骨干网络 隔级融合特征金字塔 预测模块 128×128 64×64 32×32 16×16 8×8 16×16 32×32 64×64 128×128 4×4 图 3 隔级融合特征金字塔与 CornerNet 结合的小目标模型 Fig. 3 Small target model based on the combination of connected feature pyramid and CornerNet 2.1 改进后的沙漏网络 图 4 为一个沙漏网络模块,内部大多采用残 差网络的残差块进行特征提取。过程如下:对输 入的特征图进行一系列的下采样 (红色方块),下 采样前分出一条之路保留上采样前的特征图,然 后进行上采样 (蓝色方块),上采样之后将特征图 与上一个支路处理后的特征图进行融合,融合后 再经过一个残差块进行特征提取,2 次下采样之 间有 3 个残差模块进行特征提取。C1~C4 是提取 出来的特征图,为隔级融合特征金字塔做准备。 / 2 / 2 / 2 / 2 / 2 * 2 * 2 * 2 * 2 * 输入 2 残差块 Pooling layer 上采样 (双线性内插法) 图 4 沙漏网络模型 Fig. 4 Hourglass network model 图 5 为 2 种残差模块示意图。CornerNet 中的 沙漏网络的残差块采用图 5(a) 基本块,其由 2 个 3×3 卷积组成。由于改进后的网络添加了特征金 字塔,导致整个模型推理速度变慢,因此本文骨 干网络中的残差模块采用图 5(b) 中的瓶颈块。 采用图 5(b) 瓶颈块的残差模块,假设输入是 一个 3×3×128 的特征图,首先采用 64 个 1×1 的卷 积将 128 通道的特征图降到 64 通道,然后用 3×3 卷积进行特征提取,最后通过 1×1 卷积将特 征图恢复到 128 通道。此过程涉及的参数数目为 1×1×128×64+3×3×64×64+1×1×64×128=53 248。如 不使用 1×1 卷积,参考图 5(a),假设同样输入 3×3× 128 的特征图,第 1 步经过 128 个 3×3 卷积核,第 2 步再经过 128 个 3×3 卷积核对特征图进行卷积。 整体过程的参数数目为 3×3×128×128×2=294 912。 2 种不同情况,参数数目相差 5.5 倍。因此,改进 后的沙漏网络在保证准确度的前提下,参数量大 为减少,推理速度变快。 2.2 隔级融合特征金字塔模型 在卷积神经网络中,网络越深,特征图拥有的 抽象特征信息就越多。因此运用隔级连接来融合 高层与低层的特征图,融合出语义信息更丰富的 第 1 期 赵文清,等:隔级融合特征金字塔与 CornerNet 相结合的小目标检测 ·111·
·112· 智能系统学报 第16卷 特征图,不仅能融合不同特征图的尺度信息,还 特征图:C1、C2、C3、C4,其尺寸大小分别为 能有效融合高低层的细节信息。图6为隔级融 128×128、64×64、32×32、16×16,如图6所示。 合特征金字塔模型。 图6中骨干网络是沙漏网络,特征金字塔分 1×1,64 3×3.256 为3部分:自底向上部分(红色框左半部分),中间 Relu Relu 3×3,64 连接部分(通过尺寸大小为1×1、通道为256的卷 3×3,256 Relu 积核对特征图进行卷积),隔级连接与特征融合部 1×1,256 分(红色框右半部分)。 I Relu Relu 具体步骤如下: (a)基本块 (b)瓶颈块 CornerNet骨干网络由2个沙漏网络组成。 图5残差模块 从第2个沙漏网络后半部分中提取出不同尺寸的 Fig.5 Residual module 隔级融合特征金字塔 特征图 特征图 C416×16 特征图 16×16 沙漏网络 C332×32 32×32 特征图 C 64×64 特征图 64×64 128×128 特征图 128×128 骨干网绍 隔级融合特征金字塔 ☐1×1×256 8×up 1×1Conw 图6隔级融合特征金字塔模型 Fig.6 Pyramid model of feature fusion P,就是C(文献[13]在预处理时已经将通道 图、嵌入矢量和偏移,3个分支。 卷积成256,所以不用做任何操作)。P是由P4经 热图负责预测角点位置,嵌入矢量负责将角 过卷积核尺寸为3×3步长为2卷积得到,尺寸大 点进行配对,偏移进行位置修订。 小为8×8;P6由P,经过卷积核尺寸为3×3步长为 2再次进行卷积得到,尺寸大小为4×4,目的是为 3 实验及结果分析 获得深层更加鲁棒的语义信息,为接下来的隔层 本文实验使用的操作系统为Ubuntu16.04LTS, 连接做准备。 首先P。运用双线性内插法进行上采样,将其 GPU为NVIDIA GeForce RTX2080Ti,深度学习框 尺度扩大到32×32,P,运用双线性内插法进行上 架为pytorchl.0。 采样,将其尺度扩大到32×32;然后用尺寸大小为 3.1实验数据集 1×1的卷积核改变C,的通道,使其通道数与P 为了避免过拟合,本文先采用VOC2007的部 保持一致;最后将处理后的3个特征图相加得到 分数据集进行预训练,然后再采用与CornerNet相 特征图P(如图蓝色虚线框)并采用3×3卷积核对 同的MS COCo数据集进行实验。MS Coco2 其卷积,目的是消除特征图的混叠效应。P、P2 数据集有80类,包含80K的训练集、40K的验证 特征图的得到的流程与P3流程一致。 集以及20K的测试集。 对特征图P~P,每一个特征图有2个模块: 3.2评价指标 左上角和右下角的预测模块,2个模块的结构相 本文目的是提升CornerNet算法的小目标准 同,每个预测模块中先经过角池化,然后输出热 确率,因此选取MS COCO最重要的评价指标
特征图,不仅能融合不同特征图的尺度信息,还 能有效融合高低层的细节信息[20]。图 6 为隔级融 合特征金字塔模型。 图 6 中骨干网络是沙漏网络,特征金字塔分 为 3 部分:自底向上部分 (红色框左半部分),中间 连接部分 (通过尺寸大小为 1×1、通道为 256 的卷 积核对特征图进行卷积),隔级连接与特征融合部 分 (红色框右半部分)。 具体步骤如下: CornerNet 骨干网络由 2 个沙漏网络组成。 从第 2 个沙漏网络后半部分中提取出不同尺寸的 特征图: C1、 C2、 C3、 C4 ,其尺寸大小分别 为 128×128、64×64、32×32、16×16,如图 6 所示。 (a) 基本块 (b) 瓶颈块 Relu Relu 3×3, 256 3×3, 256 Relu Relu Relu 1×1, 64 3×3, 64 1×1, 256 图 5 残差模块 Fig. 5 Residual module 沙漏网络 P6 P5 P4 P3 P2 P1 C4 C3 C2 C1 特征图 特征图 特征图 特征图 特征图 特征图 隔级融合特征金字塔 2×up 8×up 骨干网络 隔级融合特征金字塔 16×16 32×32 64×64 128×128 1×1×256 4×4 8×8 16×16 32×32 64×64 128×128 + 1×1 Conv 图 6 隔级融合特征金字塔模型 Fig. 6 Pyramid model of feature fusion P4 就是 C4 (文献 [13] 在预处理时已经将通道 卷积成 256,所以不用做任何操作)。P5 是由 P4 经 过卷积核尺寸为 3×3 步长为 2 卷积得到,尺寸大 小为 8×8;P6 由 P5 经过卷积核尺寸为 3×3 步长为 2 再次进行卷积得到,尺寸大小为 4×4,目的是为 获得深层更加鲁棒的语义信息,为接下来的隔层 连接做准备。 首先 P6 运用双线性内插法进行上采样,将其 尺度扩大到 32×32,P4 运用双线性内插法进行上 采样,将其尺度扩大到 32×32;然后用尺寸大小为 1×1 的卷积核改变 C3 的通道,使其通道数与 P4 保持一致;最后将处理后的 3 个特征图相加得到 特征图 P3 (如图蓝色虚线框) 并采用 3×3 卷积核对 其卷积,目的是消除特征图的混叠效应。P1、P2 特征图的得到的流程与 P3 流程一致。 对特征图 P1~P6,每一个特征图有 2 个模块: 左上角和右下角的预测模块,2 个模块的结构相 同,每个预测模块中先经过角池化,然后输出热 图、嵌入矢量和偏移,3 个分支。 热图负责预测角点位置,嵌入矢量负责将角 点进行配对,偏移进行位置修订。 3 实验及结果分析 本文实验使用的操作系统为 Ubuntu 16.04LTS, GPU 为 NVIDIA GeForce RTX 2080Ti,深度学习框 架为 pytorch1.0。 3.1 实验数据集 为了避免过拟合,本文先采用 VOC2007 的部 分数据集进行预训练,然后再采用与 CornerNet 相 同的 MS COCO 数据集进行实验。MS COCO[21] 数据集有 80 类,包含 80 K 的训练集、40 K 的验证 集以及 20 K 的测试集。 3.2 评价指标 本文目的是提升 CornerNet 算法的小目标准 确率,因此选取 MS COCO 最重要的评价指标 ·112· 智 能 系 统 学 报 第 16 卷