融合FCOS的R-CNN城市道路环境识别方法及装置
文献发布时间:2023-06-19 09:32:16
技术领域
本发明涉及城市道路环境识别和行人检测视觉分析技术领域,具体地指一种融合FCOS的R-CNN城市道路环境识别方法及装置。
背景技术
道路环境和行人的识别分割是无人驾驶及智能交通的重要研究内容。由于实际道路环境的复杂性和多样性,实现道路的准确检测仍面临诸多问题,比如数据集分辨率不断增大带来的小目标漏检问题。传统的R-CNN神经网络道路环境识别分割网络应用广泛,但由于需要逐像素生成锚定框作为先验知识输入RPN网络,普遍算法实时性差、超参数多。因此可以从更换RPN网络的角度出发,选择不需要生成锚点的算法来减少超参数的引入,通过摄像机拍摄得到的图像对道路环境进行分割,分析道路环境和行人的分布情况。
与传统的R-CNN神经网络道路环境识别分割网络相比,无锚定框(anchor-free)检测网络FCOS可以摆脱识别和分割效果依赖于RPN网络的锚定框先验知识这一弊端。基于RPN网络,通过遍历的方式,从神经网络的某一层特征图的左上角逐像素遍历到右下角,以生成大量的先验锚定框,限制了检测速度提高。改进FPN的特征分层检测算法,适应当前公共数据集越发庞大、分辨率越来越高的发展趋势。
发明内容
本发明针对现有技术的不足之处,提出了一种融合FCOS的R-CNN城市道路环境识别方法及装置,对城市道路环境下行人目标漏检率高、识别精度低的问题提出了解决方案。
为实现上述目的,本发明所设计的一种融合FCOS的R-CNN城市道路环境识别方法,其特殊之处在于,所述方法为构建一种融合FCOS的R-CNN城市道路环境实例分割网络模型,使用图像数据集进行模型训练,将待识别图片输入至经过训练的网络模型,得到识别结果;
所述一种融合FCOS的R-CNN城市道路环境实例分割网络模型的构建包括如下步骤:
1)搭建基于FCOS的目标检测网络:用获取的图像进行特征提取,形成若干个特征层,使用FPN进行分层检测,再经过分类与回归子网络对FPN的每个特征层进行类别预测、寻找中心点和边框回归操作;
2)实例分割:用边框回归的输出与输入的图像做特征池化对齐,融合Mask R-CNN的语义分割子网络,将单阶段FCOS目标检测网络,改为双阶段的网络结构;计算改进的MaskR-CNN网络的损失函数,将池化后的特征图通过基于Mask R-CNN的语义分割子网络进行逐像素预测语义类别,得到最终的实例分割结果。
优选地,所述步骤1)中使用ResNet网络作为特征提取网络,从输入图像开始,通过若干次卷积和下采样逐级减小特征图分辨率,每层特征图大小为上层的1/2,每个输入图像通过ResNet特征提取网络生成三层的特征图。
优选地,所述步骤1)中使用改进的FPN特征分层识别方法,FPN网络结构由自下而上部分、自上而下部分和横向连接三部分构成;特征层作为自下而上部分把原始图片进行缩小,自下而上部分把最小分辨率特征图进行适当地放大,然后使用横向连接将相同分辨率的特征图进行融合。
优选地,所述改进的FPN特征分层识别方法中,当图像数据集的图像分辨率低于800×1024时,特征分层识别公式为
式中,w和h分别表示RoI区域的宽度和高度,k表示用于检测目标的P
优选地,所述改进的FPN特征分层识别方法中,当图像数据集的图像分辨率高于或等于800×1024时,特征分层识别公式为
式中,w和h分别表示RoI区域的宽度和高度,k表示用于检测目标的P
优选地,所述步骤2)所述基于FCOS的目标检测网络通过包围框的中心点坐标及中心点到包围框的上下左右四条边的距离表示包围框:
设第i个包围框的左上角的角点坐标为
式中,(x,y)为中心点像素的坐标,l
优选地,所述寻找中心点操作的计算公式为:
其中,centerness
优选地,所述步骤2)中改进的Mask-RCNN网络的损失函数的计算方法为:
式中,X和Y分别表示预测分割图和GT分割图,dice表示损失值,取值范围为(0,1)。
本发明还提出一种装置,其特殊之处在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的方法。
本发明还提出一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述方法。
相对于现有技术,本发明提出了一种用于道路环境和行人检测系统,并采用计算机视觉技术进行分布检测,以较好满足智能交通领域的需求。基于深度学习的实例分割算法按照是否使用区域建议网络(Region Proposal Network,RPN)的分类标准,可以被划分为单阶段(one-stage)和双阶段(two-stage)两类方法。其中单阶段的实例分割算法将整幅图像作为输入,通过卷积直接得到目标的类别、位置和掩码信息,整个过程只需一步。而双阶段实例分割算法首先通过RPN初步提取候选框,然后对每一个候选框内的区域分别进行目标检测和实例分割,整个过程分为两步。因此采用双阶段的方法,参考R-CNN二阶段精修和分割思想为FCOS添加了实例分割子网络,融合Mask R-CNN网络的二阶段设计,在FCOS上增加语义分割子网络。
首先通过ResNet残差网络提取特征,使用FPN处理多尺度目标获得不同分辨率的特征图,并且充分利用特征金字塔多尺度特征,改进了FPN的分层公式,更适用于当前高分辨率、识别目标尺度变化大的数据集,降低行人的漏检率;用FCOS目标检测算法绘制包围框,提取FPN每一层特征做密集预测,通过寻找中心点操作Center-ness和类别预测分支输出预测框得分,以去除低质量的预测框,并通过边框回归调整预测框位置,以FCOS目标检测算法替代传统的RPN算法,可以减小超参数的数量,也有利于提高检测的速度;接着将边框回归输出获得的RoI区域,将得到的预测RoI经过RoI Align获得固定分辨率的RoI区域特征图,输入基于Mask R-CNN的语义分割子网络,得到最终的实例分割结果,即语义蒙版预测。融合Mask R-CNN的语义分割子网络能够在有效检测目标的同时输出高质量的实例分割蒙版,并且具有很高的泛化性能,可以和多种R-CNN框架结合。选取Dice loss作为损失函数,以评价指标IOU作为监督条件训练网络,相比于大部分R-CNN网络使用BCE loss进行训练,更能提高道路环境的分割精度。
本发明的有益效果在于:
1、本发明针对数据集分辨率不断增大带来的小目标漏检问题,改进了FPN特征金字塔分层方式,可以提高城市道路环境的目标识别精度,同时提高了实例分割的精度。
2、本发明提出了在以anchor-free的FCOS检测网络作为RPN网络的基础上,融合Mask R-CNN实例分割子网络,构建了新型图像识别和实例分割网络,解决了传统R-CNN算法问题实时性低的问题。
3、本发明针对当前基于Mask R-CNN实例分割采用的BCE损失函数收敛慢且不利于分割精度提高的问题,采用了新的基于IOU的损失函数Dice loss,使网络学习更贴近于评价指标,进一步提高分割精度。
4、本发明能够应用于无人驾驶及智能交通领域对道路环境和行人识别分割。
附图说明
图1为本发明融合FCOS的R-CNN城市道路环境识别方法的流程图;
图2为基于FCOS的分割网络结构图;
图3为FPN网络结构图;
图4为FCOS目标包围框形式图;
图5为ROIAlign操作示意图;
图6为分割子网络结构图;
图7为融合FCOS的R-CNN网络改进算法精度对比图;
图8为基于Mask R-CNN的改进策略通用性精度对比图;
图9为本发明实施例的算法性能比对图;
图10为本发明实施例中检测分割可视化效果图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步的详细描述,但本发明的实施方式不限于此。
如图1所示,本发明提出的融合FCOS的R-CNN城市道路环境识别方法是构建一种融合FCOS的R-CNN城市道路环境实例分割网络模型,使用图像数据集进行模型训练,将待识别图片输入至经过训练的网络模型,得到识别结果的过程。
一种融合FCOS的R-CNN城市道路环境实例分割网络模型的构建包括如下步骤:
1)搭建基于FCOS的目标检测网络:用获取的图像进行特征提取,形成若干个特征层,使用FPN进行分层检测,再经过分类与回归子网络对FPN的每个特征层进行类别预测、寻找中心点和边框回归操作;
2)实例分割:用边框回归的输出与输入的图像做特征池化对齐,融合Mask R-CNN的语义分割子网络,将单阶段FCOS目标检测网络,改为双阶段的网络结构;计算改进的MaskR-CNN网络的损失函数,将池化后的特征图通过基于Mask R-CNN的语义分割子网络进行逐像素预测语义类别,得到最终的实例分割结果。
本发明提出的一种融合FCOS的R-CNN城市道路环境实例分割网络模型的网络结构图如图2所示。首先,用ResNet架构对获图像进行特征提取生成C3,C4,C5层,用改进的FPN特征分层检测方法生成P3,P4,P5,P6,P7层;其次,用FCOS目标检测算法,在每个特征图上设置包围框,对其进行类别预测和寻找中心点操作Center-ness将得分较低、质量较差的包围框删除,再使用边框回归调整包围框的大小,使其更接近于真实框;再根据改进的FPN分层公式,将输出的包围框映射到FPN的全部特征层级上,在各层级进行边框回归后,结合原始输入图像进行ROI Align特征池化对齐操作;最后,在FCOS目标检测的基础上,融合Mask R-CNN网络的二阶段设计,仅使用基于FCN的语义分割子网络而无包围框精修子网络,并对Mask R-CNN损失函数进行优化,选取Dice loss作为损失函数,可以提高道路环境的分割精度。
步骤S1基于FCOS的目标检测网络:首先使用ResNet网络进行特征提取,并使用FPN进行分层检测,为充分利用特征金字塔的多尺度特征,对FPN特征分层识别公式进行改进,更好的适应当前高分辨率、识别目标尺度变化大的城市道路环境数据集;再经过分类与回归子网络对FPN每层进行类别预测、寻找中心点操作Center-ness和边框回归。具体的实施可以分为以下几个步骤:
步骤S11搭建ResNet特征提取网络
使用ResNet网络作为特征提取网络,由于该网络引入残差结构,可以很好地抑制了网络梯度消失或者爆炸现象,残差结构使用了ReLU激活函数,使得特征学习更加容易。从输入图像开始,通过多次卷积和下采样逐级减小特征图分辨率,每层特征图大小为上层的1/2,每个输入图像通过ResNet特征提取网络生成三层的特征图,分别为C
步骤S12改进的FPN特征分层识别方法
如图3所示,FPN网络结构主要由自下而上(bottom-up)、自上而下(top-down)和横向连接三部分构成。ResNet网络作为自下而上bottom-up部分把原始图片每层缩小为上层的1/2,自上而下top-down把最小分辨率特征图每层放大为上层的2倍,然后使用横向连接采用逐元素相加的方式,将相同分辨率的特征图进行融合,最后用3*3的卷积进一步消除融合后的混叠效应。一方面,FPN的低层特征提供了丰富的位置信息,有助于分割小目标;另一方面,FPN的高层特征又提供了丰富的语义信息,有助于分割大目标。这样允许每一级的特征都可以和高级、低级特征互相结合,最终生成如图2所示的P
针对当前大部分数据集的高分辨率图像,对FPN的特征分层识别公式改进,将原公式在FPN的P
最开始常用数据集ImageNet的图像分辨率仅为224×224,且图像背景简单识别难度低。FPN针对ImageNet数据集提出了特征分层识别公式
式中,w和h分别表示RoI(region of interest,感兴趣区域)区域的宽度和高度,k表示用于检测目标的P
公式(1)中超参数“224”与数据集ImageNet图像分辨率密切相关,然而并不适用于如今广泛应用的高分辨率数据集。考虑到COCO 2017和Cityscapes数据集的图像分辨率多在800×1024以上,本文改进公式(1),改进的FPN特征分层识别公式为
式中,k下限为3上限为7,即k
因此公式(2)比公式(1)更适用于目前高分辨率的数据集,改进的FPN特征分层识别公式,增大了FPN各层检测目标间的尺寸差距,充分利用FPN的每一层特征信息,直接增强了本文设计网络的学习和分类能力。
步骤S13分类与回归
传统的RPN网络设置锚定框比例设计为1:1和1:2,然而大部分城市道路环境中的行人目标比例约在1:3至1:4,因此小尺度的包围框无法完全框住行人目标,导致行人的识别率较低,而大尺度的包围框则会框住多个行人目标,导致多个行人的密集型目标无法区分而识别为一个行人。如图4所示,FCOS目标检测算法的目标识别包围框描述方案,通过包围框的中心点坐标,及中心点到包围框的上下左右四条边的距离表示包围框,避免了锚定框比例设计不当导致城市道路环境下行人漏检的问题。
设第i个包围框的左上角的角点坐标为
其中,以l
初步类别预测与RetinaNet一样采用C个二分类,共输出C个预测值。由于FCOS算法使用逐像素回归策略,在提升召回率的同时,会产生许多低质量的中心点偏移较多的预测边界框,使用寻找中心点center-ness来抑制这些低质量检测到的边界框,且不引入任何超参数。
Center-ness层的主要目标就是找到目标的中心点,即离目标中心越近,输出值越大,反之越小,而中心的目标定义如(3)式,可见最中心的点的centerness
步骤S2实例分割:
改进FCOS单阶段目标检测的网络架构,融合Mask R-CNN的语义分割子网络,构建了新型图像识别和实例分割网络。将边框回归结果与输入图像做ROI Align特征池化对齐操作操作,获得固定分辨率的RoI区域特征图后,输入基于Mask R-CNN语义分割子网络。并引入新的基于IOU的损失函数Dice loss,对Mask损失函数进行优化,使网络学习更贴近于评价指标,提高对城市道路环境图像的分割精度。
步骤S21特征池化对齐(ROI Align)
利用ROI Align模块调整建议框的特征维度,使所有建议框的维度都等于全连接层的输入维度。如图5所示,首先将先依据输出的尺寸作为网格将RoI划分为2×2的单元格,再将每个单元格均分成四个小单元格;将每个小单元格的中心点视为采样点,对采样点进行双线性插值,得到其像素值;最后对每个单元格内的4个采样点进行最大池化,即得到ROIAlign的结果。
步骤S22融合Mask R-CNN的语义分割子网络
将单阶段FCOS目标检测网络,改为双阶段的网络结构,融合Mask R-CNN网络的二阶段设计。以FCOS检测框架作为RPN网络生成RoI区域,结合传统两阶段R-CNN网络的池化和精细分类、分割子网络,设计出基于FCOS的分割网络结构。直接把FCOS预测的包围框作为网络第一阶段获得的RoI区域,然后通过RoI Align将RoI区域的尺寸大小池化为固定尺寸14×14后输入分割子网络,如图6分割子网络结构图所示。
步骤S23计算改进的Mask-RCNN网络的损失函数
随着卷积神经网络的飞速发展,数据集对神经网络识别结果的评价指标也在不断增大难度,大部分评价指标都以神经网络输出的预测包围框(B-box)与真值B-box的交并比(IOU)作为衡量是否正确识别目标的标准。然而,大部分R-CNN网络仍然使用原始的二进制交叉熵损失函数(BCE,Binary Cross Entropy)训练网络。显然,以评价指标IOU作为监督条件训练网络更有利于提高网络学习能力和精度提高。IOU计算公式为
式中,B
式中,X和Y分别表示预测分割图和GT分割图。dice的取值范围为(0,1),当IOU=0时Dice loss=1,反向传播往降低Dice loss传播,也即代表优化方向向提高预测蒙版和真实值的IOU值优化;当IOU=1时dice=0,此时达到最优,无需优化。
显然对于IOU值较低的情况,Dice loss能更好地反向传播梯度、优化提高IOU值。使用GIOU loss能很好地契合数据集的评价指标,并且比起BCE loss更利于神经网络模型训练和精度提高。
本发明的实施例实验在i58300H处理器、NVIDIA GTX-1060显卡及8G内存的PC机上进行,并使用Pytorch1.1.0深度学习框架实现。选取典型的城市道路景观数据集Cityscapes作为评估对象,设置网络训练参数,然后通过实验分析改进算法的性能。为了验证模型的鲁棒性和泛化能力,一并选取COCO 2017数据集作为评估对象,然后将在COCO2017数据集上训练好的模型通过迁移学习到Cityscapes数据集上继续训练,以进一步分析本文算法性能。经消融实验测试,网络结构改进算法精度如表1所示。
表1网络结构改进算法精度对比表
本设计的融合FCOS的R-CNN网络,在不加上本文改进FPN特征分层识别方法和Diceloss的情况下,Bbox mAP高达33.33%,Mask mAP达30.54%。而直接将FCOS替代Mask R-CNN的RPN网络,保留第二阶段Bbox精修时,网络性能却极大地下降,Bbox mAP降到21.75%,Mask mAP降到11.59%。
通过消融实验,在Cityscapes数据集上比对本文融合FCOS的R-CNN网络算法改进策略有效性,,第五项为Mask R-CNN的算法精度。显然,本文设计的融合FCOS的R-CNN网络在所有情况下均比当前先进的Mask R-CNN表现更优,Bbox mAP高0.6%以上,Mask mAP高1.5%以上,表明本文设计网络更合理、具有更高的精度。
如图8所示,FPN分层识别方法和损失函数改进策略的通用性验证实验表明,本发明改进算法具有较好的通用性,在Mask R-CNN网络仍能明显提高算法性能,并且每部分改进均对对检测城市道路环境中的多类别目标有较好的性能提升。
选择当前先进的FCOS和Mask R-CNN网络与本发明设计的网络作对比实验,在Cityscapes和COCO 2017数据集上分别训练并比较算法精度和推理耗时,结果如表2所示。本文算法与现在先进的基于深度学习的识别和分割算法进行进一步对比,得到如表3所示在COCO 2017数据集上多种算法的实例分割精度比对表。显然,本文算法在几乎所有指标下,均有更高的精度。
表2多数据集算法性能比对表
表3实例分割精度比对表
如图9所示,实验证明了本文算法不仅继承了FCOS优秀的Bbox检测性能,且具有不逊色于Mask R-CNN网络的特征学习能力和特征泛化能力,在迁移学习中两种指标表现仍优于Mask R-CNN网络。图10为对比实验结果图,上方Mask R-CNN效果图和下方本文算法效果图。
基于上述方法,本发明还提出一种装置,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述方法。
基于上述方法,本发明还提出一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述方法。
本说明书未作详细描述的内容属于本领域专业技术人员公知的现有技术。
最后需要说明的是,以上具体实施方式仅用以说明本专利技术方案而非限制,尽管参照较佳实施例对本专利进行了详细说明,本领域的普通技术人员应当理解,可以对本专利的技术方案进行修改或者等同替换,而不脱离本专利技术方案的精神和范围,其均应涵盖在本专利的权利要求范围当中。
- 融合FCOS的R-CNN城市道路环境识别方法及装置
- 基于Faster R-CNN与SVM结合的融合特征典型负荷识别方法及系统