第16卷第3期 智能系统学报 Vol.16 No.3 2021年5月 CAAI Transactions on Intelligent Systems May 2021 D0L:10.11992tis.202005016 改进Center-Net网络的自主喷涂机器人室内窗户检测 洪恺临',曹江涛',姬晓飞2 (1.过宁石油化工大学信息与控制工程学院,辽宁抚顺113001;2.沈阳航空航天大学自动化学院,辽宁沈阳 110136) 摘要:室内自主喷涂机器人可以实现室内墙面喷涂的自动化以此提升喷涂的效率,诚少人力物力的投入。而 基于计算机视觉的室内窗户检测算法则是该机器人的关键技术。对于室内窗户检测,由于环境光照、窗户形状 和窗户透光属性的存在,传统方法无法得到较好的效果。针对此问题,设计一种基于深度学习的室内窗户检测 算法。该算法主要对中心点网络(CenterNet))的特征提取网络进行修改,减少部分卷积操作,使用Ghost模块替 换原始的卷积模块,降低特征冗余,并引入注意力机制,让网络尽可能表达重要信息。实验结果表明,改进的 CenterNet在不损失网络精度的前提下,大幅度提高了网络的运算速度,使得该检测算法即使在机器人端的嵌 入式系统上也可以达到实时检测的效果。 关键词:喷涂机器人;深度学习;目标检测;室内窗户检测;中心点网络;Gost模块;注意力机制:嵌入式设备 中图分类号:TP391.1文献标志码:A文章编号:1673-4785(2021)03-0425-08 中文引用格式:洪恺临,曹江涛,姬晓飞.改进Center-Net网络的自主喷涂机器人室内窗户检测IJ.智能系统学报,2021, 16(3):425-432. 英文引用格式:HONG Kailin,CAO Jiangtao,JI Xiaofei..Indoor window detection of autonomous spraying robot based on im- proved CenterNet networkJ).CAAI transactions on intelligent systems,2021,16(3):425-432. Indoor window detection of autonomous spraying robot based on improved CenterNet network HONG Kailin',CAO Jiangtao',JI Xiaofei? (1.School of Information and Control Engineering,Liaoning Shihua University,Fushun 113001,China;2.School of Automation, Shenyang Aerospace University,Shenyang 110136,China) Abstract:An indoor autonomous spraying robot can realize the automation of indoor wall spraying to improve the effi- ciency of spraying and reduce the investment of manpower and material resources.The indoor window detection al- gorithm based on computer vision is the key technology of the robot.For indoor window detection,traditional methods cannot obtain good results owing to the actual scene's requirements for recognition speed and accuracy as well as the presence of lighting in the environment,shape of the window,and light transmission properties of the window.To solve this problem,an indoor window detection algorithm based on deep learning is designed.This algorithm mainly modifies the backbone feature extraction of the CenterNet network,reduces part of the convolution operation,replaces the origin- al convolution module with ghost block,reduces the redundancy feature,and introduces an attention mechanism to keep the network under a limited number of parameters that express important information as much as possible.The experi- mental results show that the improved CenterNet algorithm greatly improves the operation speed of the network without losing the accuracy of the network so that the network can achieve a real-time detection effect even on the embedded system of the robot. Keywords:spraying robot;deep learning;target detection;indoor window detection;Center-Net;Ghost block;atten- tion mechanism;embedded device 随着城镇化水平的不断提高,室内装修领域大部分的室内喷涂工作仍然是以人工喷涂为主, 的自动化发展水平受到越来越多人的关注。目前 喷涂的效率低且质量难以保证。现有的室内喷涂 收稿日期:2020-05-12. 机器人虽然可以进行简单的墙面喷涂,但是都缺 基金项目:国家自然科学基金项目(61673199):辽宁省科技公 少环境中不可喷涂区域的识别,如果希望喷涂机 益研究基金项目(2016002006). 通信作者:姬晓飞.E-mail:jixiaofei7804@126.com 器人真正地做到自主喷涂,那么对于窗户的检测
DOI: 10.11992/tis.202005016 改进 Center-Net 网络的自主喷涂机器人室内窗户检测 洪恺临1 ,曹江涛1 ,姬晓飞2 (1. 辽宁石油化工大学 信息与控制工程学院,辽宁 抚顺 113001; 2. 沈阳航空航天大学 自动化学院,辽宁 沈阳 110136) 摘 要:室内自主喷涂机器人可以实现室内墙面喷涂的自动化以此提升喷涂的效率,减少人力物力的投入。而 基于计算机视觉的室内窗户检测算法则是该机器人的关键技术。对于室内窗户检测,由于环境光照、窗户形状 和窗户透光属性的存在,传统方法无法得到较好的效果。针对此问题,设计一种基于深度学习的室内窗户检测 算法。该算法主要对中心点网络 (CenterNet) 的特征提取网络进行修改,减少部分卷积操作,使用 Ghost 模块替 换原始的卷积模块,降低特征冗余,并引入注意力机制,让网络尽可能表达重要信息。实验结果表明,改进的 CenterNet 在不损失网络精度的前提下,大幅度提高了网络的运算速度,使得该检测算法即使在机器人端的嵌 入式系统上也可以达到实时检测的效果。 关键词:喷涂机器人;深度学习;目标检测;室内窗户检测;中心点网络;Ghost 模块;注意力机制;嵌入式设备 中图分类号:TP391.1 文献标志码:A 文章编号:1673−4785(2021)03−0425−08 中文引用格式:洪恺临, 曹江涛, 姬晓飞. 改进 Center-Net 网络的自主喷涂机器人室内窗户检测 [J]. 智能系统学报, 2021, 16(3): 425–432. 英文引用格式:HONG Kailin, CAO Jiangtao, JI Xiaofei. Indoor window detection of autonomous spraying robot based on improved CenterNet network[J]. CAAI transactions on intelligent systems, 2021, 16(3): 425–432. Indoor window detection of autonomous spraying robot based on improved CenterNet network HONG Kailin1 ,CAO Jiangtao1 ,JI Xiaofei2 (1. School of Information and Control Engineering, Liaoning Shihua University, Fushun 113001, China; 2. School of Automation, Shenyang Aerospace University, Shenyang 110136, China) Abstract: An indoor autonomous spraying robot can realize the automation of indoor wall spraying to improve the efficiency of spraying and reduce the investment of manpower and material resources. The indoor window detection algorithm based on computer vision is the key technology of the robot. For indoor window detection, traditional methods cannot obtain good results owing to the actual scene’s requirements for recognition speed and accuracy as well as the presence of lighting in the environment, shape of the window, and light transmission properties of the window. To solve this problem, an indoor window detection algorithm based on deep learning is designed. This algorithm mainly modifies the backbone feature extraction of the CenterNet network, reduces part of the convolution operation, replaces the original convolution module with ghost block, reduces the redundancy feature, and introduces an attention mechanism to keep the network under a limited number of parameters that express important information as much as possible. The experimental results show that the improved CenterNet algorithm greatly improves the operation speed of the network without losing the accuracy of the network so that the network can achieve a real-time detection effect even on the embedded system of the robot. Keywords: spraying robot; deep learning; target detection; indoor window detection; Center-Net; Ghost block; attention mechanism; embedded device 随着城镇化水平的不断提高,室内装修领域 的自动化发展水平受到越来越多人的关注。目前 大部分的室内喷涂工作仍然是以人工喷涂为主, 喷涂的效率低且质量难以保证。现有的室内喷涂 机器人虽然可以进行简单的墙面喷涂,但是都缺 少环境中不可喷涂区域的识别,如果希望喷涂机 器人真正地做到自主喷涂,那么对于窗户的检测 收稿日期:2020−05−12. 基金项目:国家自然科学基金项目 (61673199);辽宁省科技公 益研究基金项目 (2016002006). 通信作者:姬晓飞. E-mail:jixiaofei7804@126.com. 第 16 卷第 3 期 智 能 系 统 学 报 Vol.16 No.3 2021 年 5 月 CAAI Transactions on Intelligent Systems May 2021
·426· 智能系统学报 第16卷 就是必不可少的。室内窗户的检测有如下几个难 maximum suppression,.NMS)的方式进行筛选得到 点:)光照强度变化使得算法的准确性很容易受 最终的检测框。但是对于室内窗户检测而言,机 到影响:2)窗户透光属性的存在导致窗户外面的 器人所采集到的图片中窗户的数量比较少,会导 环境对窗户检测存在很大的干扰:3)喷涂过程中 致大量的anchor被NMS去除掉,使得网络效率 距离墙面很近时只能捕捉到窗户局部的影像。正 不高。而无锚框(Anchor--free)类型的网络则通 是因为上述问题的存在使得室内窗户检测变得更 过在特征图中直接检测目标的关键点,并回归出 加复杂。与此同时,在实际的机器人开发过程中, 目标所在的位置,极大地提升了网络的效率。An 机器人的成本、功耗都要在考虑的范围内。因此 chor-free类型具有代表性的网络包括Corner- 应用于喷涂机器人上的窗户检测算法必须要保证 Net、CornerNet-.Lite、Center-Netl、FCOS(fully 所使用传感器和处理器的成本与功耗符合实际的 convolutional one-stage object detection)l等。其 开发需求。因此开发一种实时高效的室内窗户检 中,Center--Net算法在识别速度和准确性上均具有 测算法对机器人的落地具有十分重要的意义。 非常好的效果,但是由于其复杂特征提取网络的 目前常用的窗户检测数据包括3D点云数据和 存在,很难应用于机器人所搭载的嵌入式设备上。 图像数据2,其中3D点云数据的获取需要搭载 本文设计一种基于深度学习的室内窗户检测 造价较为昂贵的双目相机或深度相机,考虑到图像 算法,引入Anchor-.free类型的Center--Net网络作 数据采集成本较低,因此基于图像数据的研究更 为基础网络,并对其网络结构进行改进,在不损 具有可行性。Ai等回使用多尺度小波对采集图像 失精度的情况下提升其检测速度,减少网络的参 进行表示,再将其输入到级联分类器中进行窗户检 数量,使其适用于喷涂机器人窗户检测的特定应 测:孔倩倩等通过对窗户进行轮廓分析筛选出符 用。本文的创新点是简化Center-Net原始特征提 合条件的轮廓,并利用最小生成树对所有矩形进行 取网络的结构,在提升速度的同时也防止由于参 合并以此确定窗户的位置:缪君等结合窗户的直 数量过多而导致过拟合的问题;将普通的卷积操 线特征、颜色特征和纹理特征使用分割技术提取 作替换成更加高效的Ghost模块16,以此进一步 完整的窗户。总体来说,目前的方法都是基于手工设 提升网络推理速度;在编码结构的最后一层引入 计的特征进行室内窗户检测,该种方式受环境的影 注意力机制,通过添加压缩激励模块(squeeze and 响较大,无法在喷涂机器人上得到很好的应用。 excitation block,SE-block)m来保证网络在有限的 而基于深度学习的方法因其适应性强,易于 参数量下尽可能表达重要信息。实验结果表明, 转换等特点已被应用到各个领域。针对目标检测 该网络即使在嵌入式设备上也可以满足其准确性 领域的深度学习方法无论是两阶段的Fast R- 和实时性的需求。 CNN(fast region-based convolutional neural 1 networks)51 Faster R-CNN(faster region-based con- Center-Net目标检测算法 volutional neural networks)SPP-Net(spatial pyram- Center-Net是Zhou等于2019年4月提出的 id pooling networks)m,还是单阶段的YOLO(you Anchor-free目标检测网络。算法框架如图I所 only look once)SSD(single shot multi-box detect- 示,将待检测目标中心视为关键点,然后再分别 or)9、Retina--Neto,都先预设大量不同尺度和横纵 对目标的长宽以及中心点的偏移量进行回归以此 比的锚框(anchor),再通过非极大值抑制(non- 完成目标检测任务。 关链点预测层 编码解码结构 输出尺寸:类别数×128×128 Resnet-18 DLA-34 Hourglass-104 中心点偏差回层 输出尺寸:2×128×128 输人尺寸:3x512×512 宽高回归层 输出 输出尺寸:256×128×128 金出尺可寸 2×128×128 图1 Center-Net算法框架 Fig.1 Center-Net algorithm framework
就是必不可少的。室内窗户的检测有如下几个难 点:1) 光照强度变化使得算法的准确性很容易受 到影响;2) 窗户透光属性的存在导致窗户外面的 环境对窗户检测存在很大的干扰;3) 喷涂过程中 距离墙面很近时只能捕捉到窗户局部的影像。正 是因为上述问题的存在使得室内窗户检测变得更 加复杂。与此同时,在实际的机器人开发过程中, 机器人的成本、功耗都要在考虑的范围内。因此 应用于喷涂机器人上的窗户检测算法必须要保证 所使用传感器和处理器的成本与功耗符合实际的 开发需求。因此开发一种实时高效的室内窗户检 测算法对机器人的落地具有十分重要的意义。 目前常用的窗户检测数据包括 3D 点云数据[1] 和 图像数据[2-4] ,其中 3D 点云数据的获取需要搭载 造价较为昂贵的双目相机或深度相机,考虑到图像 数据采集成本较低,因此基于图像数据的研究更 具有可行性。Ali 等 [2] 使用多尺度小波对采集图像 进行表示,再将其输入到级联分类器中进行窗户检 测;孔倩倩等[3] 通过对窗户进行轮廓分析筛选出符 合条件的轮廓,并利用最小生成树对所有矩形进行 合并以此确定窗户的位置;缪君等[4] 结合窗户的直 线特征、颜色特征和纹理特征使用分割技术提取 完整的窗户。总体来说,目前的方法都是基于手工设 计的特征进行室内窗户检测,该种方式受环境的影 响较大,无法在喷涂机器人上得到很好的应用。 而基于深度学习的方法因其适应性强,易于 转换等特点已被应用到各个领域。针对目标检测 领域的深度学习方法无论是两阶段的 Fast RCNN(fast region-based convolutional neural networks)[5] 、Faster R-CNN(faster region-based convolutional neural networks)[6] 、SPP-Net(spatial pyramid pooling networks)[7] ,还是单阶段的 YOLO(you only look once)[8] 、SSD(single shot multi-box detector)[9] 、Retina-Net[10] ,都先预设大量不同尺度和横纵 比的锚框 (anchor),再通过非极大值抑制 (nonmaximum suppression, NMS) 的方式进行筛选得到 最终的检测框。但是对于室内窗户检测而言,机 器人所采集到的图片中窗户的数量比较少,会导 致大量的 anchor 被 NMS 去除掉,使得网络效率 不高。而无锚框 (Anchor-free)[11] 类型的网络则通 过在特征图中直接检测目标的关键点,并回归出 目标所在的位置,极大地提升了网络的效率。Anchor-free 类型具有代表性的网络包括 CornerNet[12] 、CornerNet-Lite[13] 、Center-Net[14] 、FCOS(fully convolutional one-stage object detection)[15] 等。其 中,Center-Net 算法在识别速度和准确性上均具有 非常好的效果,但是由于其复杂特征提取网络的 存在,很难应用于机器人所搭载的嵌入式设备上。 本文设计一种基于深度学习的室内窗户检测 算法,引入 Anchor-free 类型的 Center-Net 网络作 为基础网络,并对其网络结构进行改进,在不损 失精度的情况下提升其检测速度,减少网络的参 数量,使其适用于喷涂机器人窗户检测的特定应 用。本文的创新点是简化 Center-Net 原始特征提 取网络的结构,在提升速度的同时也防止由于参 数量过多而导致过拟合的问题;将普通的卷积操 作替换成更加高效的 Ghost 模块[16] ,以此进一步 提升网络推理速度;在编码结构的最后一层引入 注意力机制,通过添加压缩激励模块 (squeeze and excitation block, SE-block)[17] 来保证网络在有限的 参数量下尽可能表达重要信息。实验结果表明, 该网络即使在嵌入式设备上也可以满足其准确性 和实时性的需求。 1 Center-Net 目标检测算法 Center-Net 是 Zhou 等于 2019 年 4 月提出的 Anchor-free 目标检测网络。算法框架如图 1 所 示,将待检测目标中心视为关键点,然后再分别 对目标的长宽以及中心点的偏移量进行回归以此 完成目标检测任务。 ... 编码解码结构 关键点预测层 中心点偏差回归层 宽高回归层 输入 输出 Resnet-18 DLA-34 Hourglass-104 输入尺寸: 3×512×512 输出尺寸: 256×128×128 输出尺寸: 类别数×128×128 输出尺寸: 2×128×128 输出尺寸: 2×128×128 图 1 Center-Net 算法框架 Fig. 1 Center-Net algorithm framework ·426· 智 能 系 统 学 报 第 16 卷
第3期 洪恺临,等:改进Center-.Net网络的自主喷涂机器人室内窗户检测 ·427· l.1 Center-Net特征提取网络 所示,图中绿色箭头对应DA,红色方框对应HDA。 原始的Center--Net分别使用Resnet-l8(resid- HDA的作用是将数据的浅层与深层表达进行更 ual networks-18)DLA-34(deep layer aggregation- 好地融合,这种融合方式比简单的残差网络(R©s- 34)和Hourglass-104编码,解码(encoder--decoder) Net)和稠密网络(DenseNet)P更好。而IDA的作 结构作为特征提取网络,实验结果表明,DLA-34 用则是通过不断迭代将浅层特征重新定义从而完 网络在速度和准确性上得到了很好的平衡。因此 善最终输出的特征。网络的编码阶段就是将 本文窗户检测算法也是在DLA-34网络基础上进 IDA与HDA相结合。解码部分则是对相邻的 行的改进。 HDA结构的输出进行合并,在合并的过程中将小 DLA是Yu等20于2019年提出的一种特征 分辨率的特征使用逆卷积(deconv)2四操作进行上 聚合的方式,分为迭代深层聚合(iterative deep ag- 采样并将得到的结果与相邻HDA的输出进行可 gregation,IDA)和层次深度聚合(hierarchical deep 形变卷积(deformconv)2),最后再相加,以该种方 aggregation,.HDA)。Center-Net特征提取网络还对 式迭代生成树状结构,最终得到256×128×128 原始DLA-34进行了一些改进,网络框架如图2 的输出。 下采样 解码部分 上采样 输出尺寸 迭代深层聚合 ■ 256×128×128 可形变卷积 聚合节点 ☐卷积模块 ■层次深度聚合 输出尺寸 3×512×512 输出尺寸 db石b 输出尺寸 64×128×128 输出尺寸 输出尺寸 128×64×64编码部分 512×16×16 256×32×2 一一一一一 图2 Center-Net中的DLA-34算法框架 Fig.2 DLA-34 algorithm framework in Center-Net l.2 Center-Net检测框回归网络 了4次下采样,所以特征图重新映射到原始图像 将特征提取网络的结果分别送入3个网络分 上的时候会带来精度损失,因此对于每一个中心 支中,分别是关键点预测层、中心点偏移量回归 点,都额外用一个偏移量去补偿它。这两个层的 层以及检测框宽高回归层。 损失函数都使用L,损失函数: 其中关键点预测层的输出为80×128×128, 128对应输出特征的长宽,而80则对应COC0数 u=R∑o,-(层-p 据集的80类目标。首先将关键点通过高斯核分 布到128×l28分辨率的热图(heatmap)上,再将热 图与网络的输出逐点计算损失函数。该损失函数 式中:R对应下采样的次数;O是网络预测的偏 为了解决正负样本不平衡的问题,使用了Focal 移量;币是对实际框下采样之后进行取整。目标 Loss损失函数o的思想,其公式为 框长宽的回归也类似,其中S为回归后的尺寸, (1-)°1g(位,立c=1 54为原图尺寸。 N之1-yy(9n)g(1-) 其他 e 在网络的测试阶段,将测试图片送入到网络 式中:N是图像中待检测目标的数量;a和B是 得到3个分支的输出之后,由于该网络没有使用 Focal Loss的超参数;Yc是真实框映射到heatmap anchor所以在进行多余检测框别除的时候不使用 之后的各点像素值;P是网络输出结果的像素值。 NMS,而是使用一个3×3的最大池化操作(max- 目标框长宽和目标框的中心点坐标偏移量估 poo),以此抑制关键点预测输出中极大值的8邻 计层的输出都是2×128×128。中心点坐标偏移量 域,起到去掉多余框的作用。最后将得到的输出 估计层存在的意义是由于该网络中对图像进行 进行解码得到检测框
1.1 Center-Net 特征提取网络 原始的 Center-Net 分别使用 Resnet-18(residual networks-18)[18] 、DLA-34(deep layer aggregation- 34) 和 Hourglass-104[19] 编码解码 (encoder-decoder) 结构作为特征提取网络,实验结果表明,DLA-34 网络在速度和准确性上得到了很好的平衡。因此 本文窗户检测算法也是在 DLA-34 网络基础上进 行的改进。 DLA 是 Yu 等 [20] 于 2019 年提出的一种特征 聚合的方式,分为迭代深层聚合 (iterative deep aggregation, IDA) 和层次深度聚合 (hierarchical deep aggregation,HDA)。Center-Net 特征提取网络还对 原始 DLA-34 进行了一些改进,网络框架如图 2 所示,图中绿色箭头对应 IDA,红色方框对应 HDA。 HDA 的作用是将数据的浅层与深层表达进行更 好地融合,这种融合方式比简单的残差网络 (ResNet) 和稠密网络 (DenseNet)[21] 更好。而 IDA 的作 用则是通过不断迭代将浅层特征重新定义从而完 善最终输出的特征。网络的编码阶段就是将 IDA 与 HDA 相结合。解码部分则是对相邻的 HDA 结构的输出进行合并,在合并的过程中将小 分辨率的特征使用逆卷积 (deconv)[22] 操作进行上 采样并将得到的结果与相邻 HDA 的输出进行可 形变卷积 (deformconv)[23] ,最后再相加,以该种方 式迭代生成树状结构,最终得到 256×128×128 的输出。 输出尺寸 64×128×128 输出尺寸 128×64×64 输出尺寸 256×32×2 输出尺寸 512×16×16 编码部分 下采样 聚合节点 卷积模块 层次深度聚合 解码部分 输出尺寸 3×512×512 输出尺寸 256×128×128 上采样 迭代深层聚合 可形变卷积 图 2 Center-Net 中的 DLA-34 算法框架 Fig. 2 DLA-34 algorithm framework in Center-Net 1.2 Center-Net 检测框回归网络 将特征提取网络的结果分别送入 3 个网络分 支中,分别是关键点预测层、中心点偏移量回归 层以及检测框宽高回归层。 其中关键点预测层的输出为 80×128×128, 128 对应输出特征的长宽,而 80 则对应 COCO 数 据集的 80 类目标。首先将关键点通过高斯核分 布到 128×128 分辨率的热图 (heatmap) 上,再将热 图与网络的输出逐点计算损失函数。该损失函数 为了解决正负样本不平衡的问题,使用了 Focal Loss 损失函数[10] 的思想,其公式为 Lk = −1 N ∑ xyc ( 1−Yˆ xyc)α lg( Yˆ xyc) , Yˆ xyc = 1 ( 1−Yxyc)β ( Yˆ xyc)α lg( 1−Yˆ xyc) , 其他 N α β Yxyc Yˆ xyc 式中: 是图像中待检测目标的数量; 和 是 Focal Loss 的超参数; 是真实框映射到 heatmap 之后的各点像素值; 是网络输出结果的像素值。 目标框长宽和目标框的中心点坐标偏移量估 计层的输出都是 2×128×128。中心点坐标偏移量 估计层存在的意义是由于该网络中对图像进行 了 4 次下采样,所以特征图重新映射到原始图像 上的时候会带来精度损失,因此对于每一个中心 点,都额外用一个偏移量去补偿它。这两个层的 损失函数都使用 L1 损失函数: Loff = 1 N ∑ p Oˆ p˜ − ( p R − p˜ ) Lsize = 1 N ∑N k=1 Sˆ pk − sk Oˆ P˜ p˜ Sˆ pk sk 式中:R 对应下采样的次数; 是网络预测的偏 移量; 是对实际框下采样之后进行取整。目标 框长宽的回归也类似,其中 为回归后的尺寸, 为原图尺寸。 在网络的测试阶段,将测试图片送入到网络 得到 3 个分支的输出之后,由于该网络没有使用 anchor 所以在进行多余检测框剔除的时候不使用 NMS,而是使用一个 3×3 的最大池化操作 (maxpool),以此抑制关键点预测输出中极大值的 8 邻 域,起到去掉多余框的作用。最后将得到的输出 进行解码得到检测框。 第 3 期 洪恺临,等:改进 Center-Net 网络的自主喷涂机器人室内窗户检测 ·427·
·428· 智能系统学报 第16卷 2改进的Center-.Net算法 Ghost模块;在编码阶段的最后一层添加SE模 块。本文通过上述3种方式提升网络的速度与准 Center-Net网络虽然在MSCOCO、PASCAL 确性。 VOC等数据集上表现良好,但是被应用于喷涂 2.1网络结构的简化 机器人上的目标检测算法在考虑其准确性的同时 在COC0数据集中待检测物体一共有80个 还需要考虑算法的实时性,所以网络的大小、参 类别,并且各类目标的形态尺寸变化较大,但是 数量以及网络的运行时间在算法的评估层面都需 对于室内窗户检测这种单分类物体检测来说可以 要被考虑。本文在原有Center-Net的基础上进行 对网络进行一些简化,在提升速度的同时还可以 优化改进,分别为:对特征提取网络结构进行简 防止因存在大量冗余的特征而导致网络过拟合。 化;将网络中的普通卷积模块替换为高性能的 改进的特征提取网络如图3所示。 。下采样 上采样 解码部分 迭代深层聚合 输出尺寸 可形变卷积 1256×128×128 聚合节点 Ghost模块 层次深度聚合 SE模块 输人尺寸 3x512x5120十00也d oo 输出尺寸 输出尺寸 64×128×128 输出尺时 256×32×32 128×64×64 图3改进的Center-Net特征提取网络框架 Fig.3 Improved Center-Net feature extraction network framework 对比图2与图3,可以看出特征提取网络改进 征进行重新整合,再经过一个Ghost结构得到输 的部分在于编码阶段减少了一个HDA模块,这 出。其中,BN(batch normalization)为批归一化操 种操作使得网络下采样输出的分辨率从原来的 作,Relu(rectified linear unit)为激活函数。在图4 16×16变到32×32,该操作减少了编码解码所需要 中,使用黑色小方框表示Gost模块。 的时间。实验结果表明,网络的简化没有导致检 输出 测精度的过分下降。 ↑BN 2.2高效卷积模块的使用 Ghost结构 Ghot结构 为了使网络的推理速度进一步提升,对普通 ↑BN Relu 的卷积模块也进行了优化。目前有很多高效的网 深度可分离卷积 络结构可以应用于移动设备,比如MobileNet!2 BN Relu ShuffleNet等。本文使用华为诺亚方舟实验室于 输 Ghost结构 2020年由韩凯等o提出的Ghost结构来替换原始 网络中所使用的普通卷积模块。Ghost结构见图4 输入 左侧,其核心思想是先使用卷积核生成一部分特 图4 Ghost模块结构 征,之后使用生成的特征通过一些计算代价小的 Fig.4 Ghost block structure 线性变换来生成另外一部分特征,最终将这两部 2.3注意力机制的引入 分特征叠加到一起得到最终的输出。 上述操作尽可能地减少了网络的参数量和运 Ghost结构这种高效的卷积操作可以使网络 行时间,为了让网络在有限参数量下尽可能表达 的运行时间进一步缩短。通过Ghost结构搭建的 重要信息,在网络编码结构的最后一层引入了注 Ghost模块如图4右侧所示,网络输入首先经过一 意力机制,使用了压缩激励模块(SE-block)叨,如 个Ghost结构,然后通过深度可分离卷积26]对特 图5所示
2 改进的 Center-Net 算法 Center-Net 网络虽然在 MSCOCO、PASCAL VOC 等数据集上表现良好,但是被应用于喷涂 机器人上的目标检测算法在考虑其准确性的同时 还需要考虑算法的实时性,所以网络的大小、参 数量以及网络的运行时间在算法的评估层面都需 要被考虑。本文在原有 Center-Net 的基础上进行 优化改进,分别为:对特征提取网络结构进行简 化;将网络中的普通卷积模块替换为高性能的 Ghost 模块;在编码阶段的最后一层添加 SE 模 块。本文通过上述 3 种方式提升网络的速度与准 确性。 2.1 网络结构的简化 在 COCO 数据集中待检测物体一共有 80 个 类别,并且各类目标的形态尺寸变化较大,但是 对于室内窗户检测这种单分类物体检测来说可以 对网络进行一些简化,在提升速度的同时还可以 防止因存在大量冗余的特征而导致网络过拟合。 改进的特征提取网络如图 3 所示。 输出尺寸 64×128×128 输出尺寸 128×64×64 输出尺寸 256×32×32 编码部分 聚合节点 层次深度聚合 解码部分 下采样 上采样 迭代深层聚合 可形变卷积 输入尺寸 3×512×512 输出尺寸 256×128×128 Ghost 模块 SE 模块 图 3 改进的 Center-Net 特征提取网络框架 Fig. 3 Improved Center-Net feature extraction network framework 对比图 2 与图 3,可以看出特征提取网络改进 的部分在于编码阶段减少了一个 HDA 模块,这 种操作使得网络下采样输出的分辨率从原来的 16×16 变到 32×32,该操作减少了编码解码所需要 的时间。实验结果表明,网络的简化没有导致检 测精度的过分下降。 2.2 高效卷积模块的使用 为了使网络的推理速度进一步提升,对普通 的卷积模块也进行了优化。目前有很多高效的网 络结构可以应用于移动设备,比如 MobileNet[24] 、 ShuffleNet[25] 等。本文使用华为诺亚方舟实验室于 2020 年由韩凯等[16] 提出的 Ghost 结构来替换原始 网络中所使用的普通卷积模块。Ghost 结构见图 4 左侧,其核心思想是先使用卷积核生成一部分特 征,之后使用生成的特征通过一些计算代价小的 线性变换来生成另外一部分特征,最终将这两部 分特征叠加到一起得到最终的输出。 Ghost 结构这种高效的卷积操作可以使网络 的运行时间进一步缩短。通过 Ghost 结构搭建的 Ghost 模块如图 4 右侧所示,网络输入首先经过一 个 Ghost 结构,然后通过深度可分离卷积[26] 对特 征进行重新整合,再经过一个 Ghost 结构得到输 出。其中,BN(batch normalization) 为批归一化操 作,Relu (rectified linear unit) 为激活函数。在图 4 中,使用黑色小方框表示 Ghost 模块。 深度可分离卷积 BN 输入 输出 一致 卷积 输入 输出 BN Relu BN Relu Ghost 结构 Ghost 结构 Ghost 结构 Φ1 Φ2 Φk ... 图 4 Ghost 模块结构 Fig. 4 Ghost block structure 2.3 注意力机制的引入 上述操作尽可能地减少了网络的参数量和运 行时间,为了让网络在有限参数量下尽可能表达 重要信息,在网络编码结构的最后一层引入了注 意力机制,使用了压缩激励模块 (SE-block)[17] ,如 图 5 所示。 ·428· 智 能 系 统 学 报 第 16 卷
第3期 洪恺临,等:改进Center--Net网络的自主喷涂机器人室内窗户检测 ·429· F(W 图片,然后对其进行随机拼接,得到训练图,如 图6所示。这样做大幅度地增广了数据,还使得 训练集中存在大量的局部窗户图。因此本实验将 测试集的图片分成2个部分,1000张是采集的完 整窗户,1000张是采集的局部窗户。以此验证改 进网络的窗户检测效果,以及拼接方式增强的数 图5压缩激励模块结构 Fig.5 SE-block structure 据集是否更有利于网络学习局部窗户的特征。 该结构主要包括3个操作,首先压缩操作是 对所有通道的特征图做一个全局平均池化(glob al average pooling,GAP),得到cxl×1个特征。其 多图 中每个特征都具有全局的感受野,表征特征通道 拼接 上响应的全局分布。之后是激励操作,通过参数 W为每个特征通道生成权重,公式为 s=Fex(z,W)=(g(z,W))=(W26(Wiz)) 图6使用多图拼接得到的训练数据 式中:6对应Sigmoid激活函数;o对应Relu激活 Fig.6 Training data obtained by multi-graph splicing 函数;z是上一层的输出。最后是权重调整操作, 3.3网络训练与测试 公式为 如表1所示,本实验在训练和测试阶段分别 元e=Fce(ue,Se)=uc·S2 使用了2种不同的处理器。训练阶段使用图形工 式中:W为上一个卷积层的输出;s为经过压缩激 作站,加快网络的训练速度,节省实验时间。而 励操作的输出。相乘的作用是对原始的特征进行 在测试阶段,使用喷涂机器人上所搭载的移动端 重标定,这样有助于网络更关注具有代表性的特 处理器对网络的准确性和实时性进行验证,以此 征。在图3中使用蓝色方框代表SE模块,从图3 检验算法是否符合要求。 中可以看到,在网络完成3个HDA操作得到的聚 合节点不直接送到解码网络中,而是经过SE模 表1训练和测试过程实验平台对比 Table 1 Comparison of training and testing process exper- 块之后再进行解码。这种注意力机制的引入让网 imental platform 络更加集中于重要特征的学习,以此保证网络在 实验平台 训练过程 测试过程 数据量大幅度减小的情况下也能很好地完成检测 CPU Intel(R)i7-7700 ARM Cortex-A57 任务。 GPU NVIDIA GTX1080Ti NVIDIA Pascal 3实验测试与分析 系统 Ubuntu16.04LTS Ubuntu16.04LTS 3.1数据集 框架 Pytorch1.4.0 Pytorch1.4.0 本文所检测的日标还没有公开的数据集,所以 训练阶段首先使用网络在COCO数据集上进 文中使用的数据集是通过喷涂机器人所搭载的摄 行训练,以此得到较为健壮的权重参数,然后将 像头进行采集室内窗户影像,分辨率为640×480。 网络在本次实验中的窗户数据集上进行迁移学 使用labelimg软件进行手工标注。一共10000张图 习。将图片的分辨率转换为512×512,然后送入 像,其中8000张用作训练集,2000张用作测试集。 网络训练200次,前100次冻结特征提取网络的 3.2图像预处理与增强 权重,只训练3个网络分支,后100次将所有网络 相较于大型开源数据集,本次实验所使用的 层解冻,并且使用不同的学习率进行训练,以此 数据集相对较小,所以需要通过图像预处理对图 得到网络最终的权重值。 像进行数据增强,除了常规对图像进行简单的位 在测试阶段改变图像的分辨率,喷涂机器人 移、缩放、颜色空间变换之外,本次实验还对室内 上摄像头所采集的是640×480的分辨率,在训练 喷涂场景进行了相应的分析,以此让数据集得到 的时候将图像统一映射到512×512的分辨率,如 更为有效的增强。由于喷涂机器人在喷涂过程中 果测试阶段也沿用这种方式那么网络就会计算很 具有距离墙面比较近的工作特性,更多时候需要 多使用灰色填充的空缺位置,这无疑使得网络进 识别的窗户是不完整的,所以本实验对于图像的 行了很多没有价值的计算。所以在测试阶段,本 预处理还加人了多图拼接,即每次随机选取4张 文将图片映射成为512×384,由于网络中没有全
h c c w h w c×1×1 c×1×1 uc 全局平 均池化 Fex(·,W) Fscale(·) xc ~ 图 5 压缩激励模块结构 Fig. 5 SE-block structure W 该结构主要包括 3 个操作,首先压缩操作是 对所有通道的特征图做一个全局平均池化 (global average pooling, GAP),得到 c×1×1 个特征。其 中每个特征都具有全局的感受野,表征特征通道 上响应的全局分布。之后是激励操作,通过参数 为每个特征通道生成权重,公式为 s = Fex(z,W) = σ(g(z,W)) = σ(W2δ(W1z)) δ σ z 式中: 对应 Sigmoid 激活函数; 对应 Relu 激活 函数; 是上一层的输出。最后是权重调整操作, 公式为 x˜c = Fscale(uc ,sc) = uc ·sc 式中:uc 为上一个卷积层的输出; sc 为经过压缩激 励操作的输出。相乘的作用是对原始的特征进行 重标定,这样有助于网络更关注具有代表性的特 征。在图 3 中使用蓝色方框代表 SE 模块,从图 3 中可以看到,在网络完成 3 个 HDA 操作得到的聚 合节点不直接送到解码网络中,而是经过 SE 模 块之后再进行解码。这种注意力机制的引入让网 络更加集中于重要特征的学习,以此保证网络在 数据量大幅度减小的情况下也能很好地完成检测 任务。 3 实验测试与分析 3.1 数据集 本文所检测的目标还没有公开的数据集,所以 文中使用的数据集是通过喷涂机器人所搭载的摄 像头进行采集室内窗户影像,分辨率为 640×480。 使用 labelimg 软件进行手工标注。一共 10000 张图 像,其中 8 000 张用作训练集,2 000 张用作测试集。 3.2 图像预处理与增强 相较于大型开源数据集,本次实验所使用的 数据集相对较小,所以需要通过图像预处理对图 像进行数据增强,除了常规对图像进行简单的位 移、缩放、颜色空间变换之外,本次实验还对室内 喷涂场景进行了相应的分析,以此让数据集得到 更为有效的增强。由于喷涂机器人在喷涂过程中 具有距离墙面比较近的工作特性,更多时候需要 识别的窗户是不完整的,所以本实验对于图像的 预处理还加入了多图拼接,即每次随机选取 4 张 图片,然后对其进行随机拼接,得到训练图,如 图 6 所示。这样做大幅度地增广了数据,还使得 训练集中存在大量的局部窗户图。因此本实验将 测试集的图片分成 2 个部分,1 000 张是采集的完 整窗户,1 000 张是采集的局部窗户。以此验证改 进网络的窗户检测效果,以及拼接方式增强的数 据集是否更有利于网络学习局部窗户的特征。 多图 拼接 图 6 使用多图拼接得到的训练数据 Fig. 6 Training data obtained by multi-graph splicing 3.3 网络训练与测试 如表 1 所示,本实验在训练和测试阶段分别 使用了 2 种不同的处理器。训练阶段使用图形工 作站,加快网络的训练速度,节省实验时间。而 在测试阶段,使用喷涂机器人上所搭载的移动端 处理器对网络的准确性和实时性进行验证,以此 检验算法是否符合要求。 表 1 训练和测试过程实验平台对比 Table 1 Comparison of training and testing process experimental platform 实验平台 训练过程 测试过程 CPU Intel(R) i7-7700 ARM Cortex-A57 GPU NVIDIA GTX1080Ti NVIDIA Pascal 系统 Ubuntu16.04LTS Ubuntu16.04LTS 框架 Pytorch1.4.0 Pytorch1.4.0 训练阶段首先使用网络在 COCO 数据集上进 行训练,以此得到较为健壮的权重参数,然后将 网络在本次实验中的窗户数据集上进行迁移学 习。将图片的分辨率转换为 512×512,然后送入 网络训练 200 次,前 100 次冻结特征提取网络的 权重,只训练 3 个网络分支,后 100 次将所有网络 层解冻,并且使用不同的学习率进行训练,以此 得到网络最终的权重值。 在测试阶段改变图像的分辨率,喷涂机器人 上摄像头所采集的是 640×480 的分辨率,在训练 的时候将图像统一映射到 512×512 的分辨率,如 果测试阶段也沿用这种方式那么网络就会计算很 多使用灰色填充的空缺位置,这无疑使得网络进 行了很多没有价值的计算。所以在测试阶段,本 文将图片映射成为 512×384,由于网络中没有全 第 3 期 洪恺临,等:改进 Center-Net 网络的自主喷涂机器人室内窗户检测 ·429·