本发明属于图像目标检测技术领域,具体涉及一种基于结构化高阶特征的目标检测系统及方法。
背景技术:
图像检测是计算机视觉和图像处理领域中的一项基本问题,其主要用于检测图像中包含的物体,输出物体的种类以及其所在坐标位置。
现有的图像目标检测方法主要包括基于手工提取特征的方法和基于深度学习提取特征的方法。
基于手工提取特征的方法,首先使用基于滑窗的方法,使用不同尺寸的矩形框一行一行地扫描整张图像,然后提取矩形框内的特征,判断是否有待检测的物体。
基于深度学习的图像目标检测方法,主要分为两个方向,分别是两阶段目标检测方法和一阶段目标检测方法。基于深度学习的两阶段目标检测方法首先在目标图像上生成多个区域预选框,然后对预选框内的目标区域进行分类以及回归,从而得到最终的检测结果。基于深度学习的一阶段目标检测方法首先将图像输入到卷积神经网络中,然后直接在卷积神经网络输出的特征图上进行坐标回归,这类目标检测方法不需要单独生成区域预选框,直接得到物体的位置坐标及其对应的分类置信度。
虽然现有方法在图像目标检测领域的研究已经取得了一定的成就,但是现有方法在进行目标检测时仅仅使用了简单的判别信息少的一阶特征,并无法准确地检测出图像中包含的目标。
技术实现要素:
本发明的目的是为解决现有方法在进行目标检测时仅仅使用了简单的判别信息少的一阶特征,导致无法准确地检测出图像中包含的目标的问题,而提出了一种基于结构化高阶特征的目标检测系统及方法。
本发明为解决上述技术问题采取的技术方案是:
基于本发明的一个方面,一种基于结构化高阶特征的目标检测系统,
所述目标检测系统包括多尺度特征提取模块、结构化高阶特征提取模块、特征加权模块、特征融合模块、预选框生成模块、特征映射模块、分类及回归模块,其中:
所述多尺度特征提取模块用于对待检测图像的不同尺度特征进行融合,输出多尺度特征;并将多尺度特征输入结构化高阶特征提取模块;
所述结构化高阶特征提取模块用于对输入的多尺度特征进行结构化处理,输出结构化的高阶特征;并将结构化的高阶特征输入特征加权模块;
所述特征加权模块用于对输入的结构化高阶特征进行处理,输出特征权重;
所述特征融合模块用于将结构化的高阶特征与特征加权模块输出的特征权重进行按位点积,将按位点积后的特征进行级联,输出加权的结构化高阶特征;
并将加权的结构化高阶特征输入特征映射模块;
预选框生成模块用于生成预选框坐标,并将预选框坐标输入到特征映射模块;特征映射模块用于将预选框坐标映射到加权的结构化高阶特征上,输出经过坐标映射后的特征;
经过坐标映射后的特征输入分类及回归模块,通过分类及回归模块输出目标检测结果。
基于本发明的另一个方面,一种基于结构化高阶特征的目标检测方法,该方法具体为:
将待检测图像输入多尺度特征提取模块,利用多尺度特征提取模块对待检测图像的不同尺度特征进行融合,获得多尺度特征;
利用结构化高阶特征提取模块对多尺度特征进行结构化处理,即对多尺度特征进行维度变换后,获得维度变换后的多尺度特征,并对维度变换后的多尺度特征进行奇异值分解,获得维度变换后的多尺度特征的奇异值矩阵;再对奇异值矩阵进行幂指数操作,获得结构化的多尺度特征;再对结构化的多尺度特征进行处理获得结构化高阶特征;
利用特征加权模块对结构化高阶特征进行处理,即计算结构化高阶特征的特征图上的每个特征点的权重,输出特征权重;
利用特征融合模块将结构化的高阶特征与特征权重进行按位点积,并将点积后的特征进行级联后,获得加权的结构化高阶特征;
特征映射模块(即感兴趣池化层)将预选框生成模块输出的预选框坐标映射到加权的结构化高阶特征的特征图上,获得经过坐标映射后的尺寸为w*h的特征;
分类及回归模块根据坐标映射后的特征输出目标检测结果。
本发明的有益效果是:本发明提出了一种基于结构化高阶特征的目标检测系统及方法,本发明的目标检测系统包括多尺度特征提取模块,结构化高阶特征提取模块,特征加权模块,特征融合模块,预选框生成模块,特征映射模块、分类及回归模块,多尺度特征提取模块将待检测的图像作为输入,对不同尺度特征进行融合,输出多尺度特征;结构化高阶特征提取模块将多尺度特征作为输入,首先对输入特征进行结构化处理,获得结构化的多尺度特征,再对结构化的多尺度特征进行高阶特征提取,输出结构化高阶特征。特征加权模块输出特征权重,特征融合模块将结构化高阶特征与特征权重进行按位点积,输出加权后的结构化高阶特征;特征映射模块将预选框坐标映射到加权结构化高阶特征,输出经过坐标映射后的特征;分类及回归网络输入为经过坐标映射后的特征,输出为目标检测结果。因此本发明在进行目标检测时,利用的是提取出来的结构化高阶特征,可以准确地检测出图像中包含的目标,克服了现有方法中的不足,与现有方法相比,采用本发明的方法可以使目标检测的准确率提高1.5%左右。
附图说明
图1为本发明的基于结构化高阶特征的目标检测系统的结构图;
图2为多尺度特征提取模块的网络结构图;
图3为结构化高阶特征提取模块进行特征结构化的示意图;
图4为结构化高阶特征提取模块的网络结构图;
图5为特征加权模块的网络结构图;
图6为特征融合模块的网络结构图;
图7为生成预选框的示意图;
图8为目标检测结果图1;
图9为目标检测结果图2;
图中的数值越接近于1代表目标检测结果越准确。
具体实施方式
具体实施方式一:如图1所示,本实施方式所述的一种基于结构化高阶特征的目标检测系统,所述目标检测系统包括多尺度特征提取模块、结构化高阶特征提取模块、特征加权模块、特征融合模块、预选框生成模块、特征映射模块、分类及回归模块,其中:
所述多尺度特征提取模块用于对待检测图像的不同尺度特征进行融合,输出多尺度特征;并将多尺度特征输入结构化高阶特征提取模块;
所述结构化高阶特征提取模块用于对输入的多尺度特征进行结构化处理,输出结构化的高阶特征;并将结构化的高阶特征输入特征加权模块;
所述特征加权模块用于对输入的结构化高阶特征进行处理,输出特征权重;
所述特征融合模块用于将结构化的高阶特征与特征加权模块输出的特征权重进行按位点积,将按位点积后的特征进行级联,输出加权的结构化高阶特征;
并将加权的结构化高阶特征输入特征映射模块;
预选框生成模块用于生成预选框坐标,并将预选框坐标输入到特征映射模块;特征映射模块用于将预选框坐标映射到加权的结构化高阶特征上,输出经过坐标映射后的特征;
经过坐标映射后的特征输入分类及回归模块,通过分类及回归模块输出目标检测结果。
具体实施方式二:如图2所示,本实施方式与具体实施方式一不同的是:所述多尺度特征提取模块包括卷积层c1_1~卷积层c6_1,按位相加层add1,最大池化层p1~最大池化层p4和级联层cat1~级联层cat2;
卷积层c1_1用于对待检测的图像依次进行第一卷积操作和第一激活操作;
卷积层c1_2用于对卷积层c1_1的输出依次进行第二卷积操作和第二激活操作;
最大池化层p1用于对卷积层c1_2的输出进行第一最大池化操作;
卷积层c2_1用于对最大池化层p1的输出依次进行第三卷积操作和第三激活操作;
卷积层c2_2用于对卷积层c2_1的输出依次进行第四卷积操作和第四激活操作;
最大池化层p2用于对卷积层c2_2的输出进行第二最大池化操作;
卷积层c3_1用于对最大池化层p2的输出依次进行第五卷积操作和第五激活操作;
卷积层c3_2用于对卷积层c3_1的输出依次进行第六卷积操作和第六激活操作;
卷积层c3_3用于对卷积层c3_2的输出依次进行第七卷积操作和第七激活操作;
最大池化层p3用于对卷积层c3_3的输出进行第三最大池化操作;
卷积层c4_1用于对最大池化层p3的输出依次进行第八卷积操作和第八激活操作;
卷积层c4_2用于对卷积层c4_1的输出依次进行第九卷积操作和第九激活操作;
卷积层c4_3用于对卷积层c4_2的输出依次进行第十卷积操作和第十激活操作;
最大池化层p4用于对卷积层c4_3的输出进行第四最大池化操作;
级联层cat1用于对卷积层c4_2和卷积层c4_3的输出进行第一特征级联操作;
卷积层c4_4用于对特征级联层cat1的输出依次进行第十一卷积操作和第十一激活操作;
卷积层c4_5用于对卷积层c4_4的输出依次进行第十二卷积操作和第十二激活操作;
卷积层c5_1用于对最大池化层p4的输出依次进行第十三卷积操作和第十三激活操作;
卷积层c5_2用于对卷积层c5_1的输出依次进行第十四卷积操作和第十四激活操作;
卷积层c5_3用于对卷积层c5_2的输出依次进行第十五卷积操作和第十五激活操作;
级联层cat2用于对卷积层c5_2和卷积层c5_3的输出进行第二特征级联操作;
卷积层c5_4用于对级联层cat2的输出依次进行第十六卷积操作和第十六激活操作;
按位相加层add1用于对卷积层c5_4和卷积层c4_5的输出进行第一按位相加操作;
卷积层c6_1用于对按位相加层add1的输出依次进行第十七卷积操作和第十七激活操作;
卷积层c6_1的输出为多尺度特征;
第一卷积操作至第二卷积操作均为64个卷积核大小为3*3,步长为1,填充为1的卷积操作;
第三卷积操作至第四卷积操作均为128个卷积核大小为3*3,步长为1,填充为1的卷积操作;
第五卷积操作至第七卷积操作均为128个卷积核大小为3*3,步长为1,填充为1的卷积操作;
第八卷积操作至第十卷积操作均为128个卷积核大小为3*3,步长为1,填充为1的卷积操作;
第十一卷积操作为1024个卷积核大小为1*1,步长为1,填充为0的卷积操作;
第十二卷积操作为1024个卷积核大小为1*1,步长为2,填充为0的卷积操作;
第十三卷积操作至第十五卷积操作均为512个卷积核大小为3*3,步长为1,填充为1的卷积操作;
第十六卷积操作为1024个卷积核大小为1*1,步长为1,填充为0的卷积操作;
第十七卷积操作为512个卷积核大小为1*1,步长为1,填充为0的卷积操作;
第一最大池化操作至第四最大池化操作均为池化核大小2*2,步长为2的最大池化操作;
第一特征级联操作至第二特征级联操作均将输入特征按照输入特征的第二个维度进行级联;
第一按位相加操作为将输入特征按位进行相加操作;
第一激活操作至第十七激活操作均采用relu激活函数。
具体实施方式三:如图4所示,本实施方式与具体实施方式二不同的是:所述结构化高阶特征提取模块包括卷积层c7~卷积层c11,按位点积层mul1~按位点积层mul2;
卷积层c7用于对输入的结构化多尺度特征进行第一卷积操作;
卷积层c8用于对输入的结构化多尺度特征进行第二卷积操作;
按位点积层mul1用于对卷积层c7和卷积层c8的输出进行第一按位点积操作;
卷积层c9用于对输入的结构化多尺度特征进行第三卷积操作;
卷积层c10用于对输入的结构化多尺度特征进行第四卷积操作;
卷积层c11用于对输入的结构化多尺度特征进行第五卷积操作;
按位点积层mul2用于对卷积层c9,卷积层c10和卷积层c11的输出进行第二按位点积操作;
按位点积层mul1和按位点积层mul2的输出为结构化的高阶特征;
第一卷积操作至第二卷积操作均为2048个卷积核大小为1*1、步长为1、填充为0的卷积操作;
第三卷积操作至第五卷积操作均为4096个卷积核大小为1*1、步长为1、填充为0的卷积操作;
第一按位点积操作至第二按位点积操作均为将输入特征按位进行点积。
具体实施方式四:如图5所示,本实施方式与具体实施方式三不同的是:所述特征加权模块包括卷积层c12_1~卷积层c13_5,全局池化层p5~全局池化层p6,外积层out1~外积层out2,softmax层s1~softmax层s2;
卷积层c12_1用于对按位点积层mul1的输出进行第一卷积操作;
卷积层c12_2用于对卷积层c12_1的输出进行第二卷积操作;
卷积层c12_3用于对卷积层c12_2的输出进行第三卷积操作;
全局池化层p5用于对按位点积层mul1的输出进行第一全局池化操作;
卷积层c12_4用于对全局池化层p5的输出进行第四卷积操作;
卷积层c12_5用于对卷积层c12_4的输出进行第五卷积操作;
外积层out1用于对卷积层c12_3和卷积层c12_5的输出进行第一外积操作;
softmax层s1用于对外积层out1的输出进行第一softmax操作;
卷积层c13_1用于对按位点积层mul2的输出进行第六卷积操作;
卷积层c13_2用于对卷积层c13_1的输出进行第七卷积操作;
卷积层c13_3用于对卷积层c13_2的输出进行第八卷积操作;
全局池化层p6用于对按位点积层mul2的输出进行第二全局池化操作;
卷积层c13_4用于对全局池化层p6的输出进行第九卷积操作;
卷积层c13_5用于对卷积层c13_4的输出进行第十卷积操作;
外积层out2用于对卷积层c13_3和卷积层c13_5的输出进行第二外积操作;
softmax层s2用于对外积层out2的输出进行第二softmax操作;
softmax层s1和softmax层s2的输出为特征权重;
第一卷积操作和第六卷积操作为128个卷积核大小为1*1、步长为1、填充为0的卷积操作;
第二卷积操作和第七卷积操作为64个卷积核大小为3*3、步长为1、填充为1的卷积操作;
第三卷积操作和第八卷积操作为1个卷积核大小为1*1、步长为1、填充为0的卷积操作;
第四卷及操作和第九卷积操作为128个卷积核大小为1*1、步长为1、填充为0的卷积操作;
第五卷积操作为2048个卷积核大小为1*1、步长为1、填充为0的卷积操作;
第十卷积操作4096个卷积核大小为1*1、步长为1、填充为0的卷积操作;
第一全局池化操作为池化核大小与按位点积层mul1的输出特征尺寸相同、步长为1的全局池化操作;
第二全局池化操作为池化核大小与按位点积层mul2的输出特征尺寸相同、步长为1的全局池化操作;
第一外积操作和第二外积操作均为输入特征*输入特征转置的操作;
第一softmax操作为对softmax层s1的输入进行softmax处理;
第二softmax操作为对softmax层s2的输入进行softmax处理。
具体实施方式五:如图6所示,本实施方式与具体实施方式四不同的是:所述特征融合模块包括按位点积层mul3~按位点积层mul4,级联层cat3,卷积层c14;
按位点积层mul3用于对按位点积层mul1输出和softmax层s1输出进行第一按位点积操作;
按位点积层mul4用于对按位点积层mul2输出和softmax层s2输出进行第二按位点积操作;
级联层cat3用于对按位点积层mul3的输出、mul4的输出以及结构化多尺度特征进行第一特征级联操作;
卷积层c14用于对级联层cat3的输出进行第一卷积操作和第一激活操作;
卷积层c14的输出为加权的结构化高阶特征;
第一按位点积操作至第二按位点积操作均为将输入特征按位进行点积;
第一级联操作将输入特征按照输入特征的第二个维度进行级联;
第一卷积操作为6656个卷积核大小为1*1,步长为1、填充为0的卷积操作;
第一激活操作采用relu激活函数。
具体实施方式六:基于具体实施方式一所述的一种基于结构化高阶特征的目标检测系统的目标检测方法:该方法具体为:
将待检测图像输入多尺度特征提取模块,利用多尺度特征提取模块对待检测图像的不同尺度特征进行融合,获得多尺度特征;
利用结构化高阶特征提取模块对多尺度特征进行结构化处理,即对多尺度特征进行维度变换后,获得维度变换后的多尺度特征,并对维度变换后的多尺度特征进行奇异值分解,获得维度变换后的多尺度特征的奇异值矩阵;再对奇异值矩阵进行幂指数操作,获得结构化的多尺度特征;再对结构化的多尺度特征进行处理获得结构化高阶特征;
利用特征加权模块对结构化高阶特征进行处理,即计算结构化高阶特征的特征图上的每个特征点的权重,输出特征权重;
利用特征融合模块将结构化的高阶特征与特征权重进行按位点积,并将点积后的特征进行级联后,获得加权的结构化高阶特征;
特征映射模块(即感兴趣池化层)将预选框生成模块输出的预选框坐标映射到加权的结构化高阶特征的特征图上,获得经过坐标映射后的尺寸为w*h的特征;
分类及回归模块根据坐标映射后的特征输出目标检测结果。
输出的目标检测结果包括目标的种类及位置坐标。
具体实施方式七:如图3所示,本实施方式与具体实施方式六不同的是:所述利用结构化高阶特征提取模块对多尺度特征进行结构化处理,即对多尺度特征进行维度变换后,获得维度变换后的多尺度特征,并对维度变换后的多尺度特征进行奇异值分解,获得维度变换后的多尺度特征的奇异值矩阵;再对奇异值矩阵进行幂指数操作,获得结构化的多尺度特征;其具体过程为:
对于多尺度特征x∈rc×w×h,r代表实数域,c代表特征维度,w代表特征宽度,h代表特征高度,对x进行维度变换,得到维度变换后的多尺度特征
对维度变换后的多尺度特征
式中,u和v均为单位正交矩阵,λ为维度变换后的多尺度特征
对维度变换后的多尺度特征
将结构化的多尺度特征y进行维度变化,得到维度变化后的结构化多尺度特征
具体实施方式八:如图7所示,本实施方式与具体实施方式七不同的是:所述特征映射模块将预选框生成模块输出的预选框坐标映射到加权的结构化高阶特征的特征图上,获得经过坐标映射后的尺寸为w*h的特征;其具体过程为:
在加权的结构化高阶特征的每个特征点上生成9个预选框,9个预选框包括三种不同的尺寸1282,2562和5122,且每个尺寸包括三种不同长宽比例1:1,1:2和2:1;
将每一个预选框定义成一个四元组(r,c,w,h),其中:(r,c)代表预选框左上角顶点的坐标值,(w,h)代表预选框的宽和高;
将宽和高为w*h的预选框分割成w*h大小的网格,再将分割成网格的预选框映射到提取的加权结构化高阶特征的特征图上,每个网格大小为
作为优选的是,w=h=7;
具体实施方式九:本实施方式与具体实施方式八不同的是:所述分类及回归模块包括分类网络和回归网络;
分类网络的损失函数定义为:
lcls(p,u)=-logpu
其中:lcls(p,u)为分类网络的损失函数,u代表预选框的类别标签,pu代表预测属于类别u的概率;
回归网络的损失函数定义为:
其中:lloc(tu,v)为回归网络的损失函数,v代表类别u对应的预选框,tu代表预选框v对应的回归目标,(x,y)代表预选框v的中心点坐标,(w,h)代表预选框v的宽和高,i∈{x,y,w,h},[u≥1]表示当预选框v被判断为背景时不计算其损失,即仅计算判断为前景的预选框的损失;
平滑l1损失函数的具体形式为:
x代表平滑l1损失函数的自变量,smoothl1(x)代表平滑l1损失函数的函数值;
v=(vx,vy,vw,vh)的表达式为:
vx=(gx-px)/pw
vy=(gy-py)/ph
vw=log(gw/pw)
vh=log(gh/ph)
其中:vx、vy、vw和vh均为中间变量,(px,py)代表预选框v的中心点坐标,(pw,ph)代表预选框v的宽和高;(gx,gy)代表目标的真实边界框的中心点坐标,(gw,gh)代表目标的真实边界框的宽和高;
整个分类及回归模块的损失函数l(p,u,tu,v)的定义为:
l(p,u,tu,v)=lcls(p,u)+λ[u≥1]lloc(tu,v)
其中:λ为平衡分类损失和回归损失的参数。
在本发明中设置λ为1。
作为优选的是,本发明的训练网络采用sgd优化算法,通过三步迭代方法对目标检测网络进行训练。
如图8和图9所示,为采用本发明方法获得的目标检测结果图。
本发明的上述算例仅为详细地说明本发明的计算模型和计算流程,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。