1.一种优化分类与定位任务的目标检测方法,其特征在于,所述目标检测方法包括训练过程以及检测过程,所述训练过程如下:
1.1、输入图片,生成图像块;
1.2、筛选正图像块;
1.3、筛选负图像块;
1.4、输入图像块,训练模型;
所述检测过程如下:
2.1、预测焦点像素集;
2.2、生成焦点图像块;
2.3、RoI阶段;
2.4、分类和回归;
2.2生成的焦点图像块送入全连接层;焦点图像块经过softmax层被分类成具体目标对象,其位置ground-truth boxes所在坐标在regression层中进行优化,其中softmax层的作用为将分类结果进行归一化,regression层则修正区域提议边框的位置,通过上述优化使得输入的区域提议的边框(Px,Py,Pw,Ph)与GroundTruth box(Gx,Gy,Gw,Gh)尽可能得接近,其中(x,y)为边框的中心位置,(w,h)表示边框的宽和高,中心位置通过平移的方式进行修正,边框的宽和高则通过缩放进行修正;
在传统Faster R-CNN框架中,其优化目标是最小化候选区域的分类与回归损失,表示为:L=Lcls(H1(Fl,P),y)+Lloc(H2(Fl,P),B)其中,Lcls表示分类(classification)损失函数,Lloc表示定位(location)损失函数,y代表目标类别,B代表目标位置,H1(Fl,P)={f(Fl,P),C(Fl,P)},H2(Fl,P)={f(Fl,P),R(Fl,P)},f(Fl,P)为通用的特征提取函数,C(Fl,P)和R(Fl,P)为分别从特征进行分类和定位的预测函数,P表示矩形标注框区域,Fl表示P的RoI特征,但是,Lcls与Lloc存在内在冲突,分类任务要求具有平移不变性,即候选区域有微小变化时,分类结果需保持不变;定位任务要求具备平移感知性,即候选区域有微小变化时,回归结果需随之改变,表示为:C(f(Fl,P))=C(f(Fl,P+ε))
R(f(Fl,P))≠R(f(Fl,P+ε))
其中,ε表示极其微小变化的值,为了针对性的解决分类与定位的内在冲突,定义新的损失函数如下:其中,
式子中上标D表示与原损失函数区分;
表示适应分类任务的候选区域, 表示适应定位任务的候选区域, 与 是根据函数τ从原候选区域P演变而来,τc对应分类任务的候选区域演变公式,τr对应定位任务的候选区域演变公式, 与 具体的演变的公式如下:ΔR与ΔC表示候选区域P通过其平移变化分别生成 与 对具有平移感知性的分类任务,对候选区域P进行整体的移动,区域中新点的值使用双线性插值计算,使得可微,ΔR的公式表示如下:ΔR=γFr(F;θr)·(w·h)
其中, 表示张量的实数域,上标表示其维数,在这表示为1*1*2维的张量,γ表示预先定义来调节ΔR的标量,F为候选区域P的RoI特征,θr表示学习参数,w表示候选区域P的宽度,h表示候选区域P的高度,Fr表示一个每层输出为{256,256,2}的三层全连接网络;
对于分类任务,对共享的候选区域P,选择一个长宽为k*k的网格,规则的候选区域P通过逐点变形得到不规则的适应分类任务的候选区域 ΔC的公式表示如下:ΔC=γFc(F;θc)·(w·h)
其中, γ表示预先定义来调节ΔC的标量,F为候选区域P的RoI特征,θc表示学习参数,w表示候选区域P的宽度,h表示候选区域P的高度,Fc表示一个每层输出为{256,256,k*k*2}的三层全连接网络;
为减少参数,Fr与Fc首层共用同一个全连接层,为了通过不规则的 来产生图像特征区域 采用了与池化操作Deformable RoI pooling相同的操作,公式如下:其中,G(x,y)是坐标为(x,y)的网格,|G(x,y)|表示网格中采样点的个数,p0与p1为网格中采用点的坐标,FB(·)则是能够使得ΔC可微的双线性插值;
随后,基于 与 使用不同的特征提取器 与 进行分类与定位的预测;
2.5、焦点合成。
2.如权利要求1所述的优化分类与定位任务的目标检测方法,其特征在于,所述2.4中,引入渐进约束PC来辅助新损失函数的学习,对于分类任务,渐进约束如上式,H1(y|F1,P)为类y的置信度,mc为预设的间隔,|·|+中加号表示该式为非负实数,上式约束新损失函数的预测置信度需要比常规特征提取器高,且至少需要高mc;
对于定位分支,渐进约束如上式,为原损失函数的预测结果, 为新损失函数转换后的预测结果,B为ground-truth boxes所在的区域,mr为预设的间隔,上式仅对正样本进行计算,即预测结果的IoU需要比至少常规特征提取器高,且至少需要高mr;
训练时最终的损失函数为上式,其结合了所有的损失,包括原始损失函数classical loss与新的损失函数extra loss。
3.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述1.1中,所述图像块是指在任一尺度下,某图片上一系列固定大小的以恒定间隔排布的窗口,每个窗口都可能包含一个或几个目标,在尺度{S1,S2,...,Sn}下生成的图像块记作Ci,其中Sn表示第n个尺度。
4.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述1.2中,图像的正确的标注框ground-truth boxes随着图像尺度的变化进行对应的缩放,因此对于每一个尺度i,需要指定理想检测面积desired area range为分别表示理想检测面积的最小值与最大值,若某个
ground-truth boxes完全位于一个图像块内,则该ground-truth boxes被图像块包围,用贪心的策略,根据图像块包围的ground-truth boxes数量,从每个尺度i中筛选图像块作为正图像块,记作 其中贪心算法是一种每一步选择上都要保证能获得局部最优解的算法。
5.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述1.3包括以下步骤:步骤1.3.1使用步骤二中筛选得到的正图像块训练一个仅有几个epochs的弱RPN,epochs指代所有的数据送入网络中完成一次前向计算及反向传播的过程,其中RPN是在Faster RCNN中首次提出的深度全卷积网络,该RPN仅用来选择负图像块,因此即使精度不高也几乎不会对模型最终性能产生影响;
步骤1.3.2使用该RPN检测整个训练集,根据检测结果即RPN提议的区域选择负图像块,选择过程如下:a)排除所有被正图像块 包围的区域提议(Region proposals),区域提议指最有可能为目标的区域;
b)在每个尺度i下使用贪心算法选择至少包含M个区域提议的图像组成负图像块池;
步骤1.3.3训练时从负图像块池中以固定数量随机选择参与训练的负图像块,表示为其中U表示的是负图像块全集,neg指的是negative, 指尺度i下的负图像块。
6.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述1.4包括以下步骤:步骤1.4.1使用一个庞大的开源数据集ImageNet初始化共享的卷积层,包括kernel(卷积核的尺寸)、stride(卷积步长)、padding(输入的每一条边补充0的层数)、dilation(卷积核元素之间的间距)、group(从输入通道到输出通道的阻塞连接数)、bias(偏置)、in_channels(输入信号的通道)、out_channels(输出信号的通道)参数,初始化RPN网络中卷积核部分,通过步骤三中筛选出的正负图像块训练RPN,训练之后,共享的卷积层以及RPN的边框回归(Bounding-box regression)函数被更新,边框回归函数指的是一种关系使得输入的原始窗口P经过映射得到一个跟ground-truth box更接近的回归窗口P1,该函数通过梯度下降法(一种寻找目标函数最小化的方法)实现参数的更新;
步骤1.4.2用ImageNet重新初始化共享的卷积层,初始化Fast-RCNN网络的池化层以及卷积层,通过使用训练过的RPN计算得到区域提议,计算步骤包括使用滑动窗口机制生成区域提议,并进行分类与回归,再将生成的区域提议重新训练Fast-RCNN,根据步骤1.4.1设置的参数,重复步骤1.4.1,训练结束之后,共享的卷积层以及Fast-RCNN的权重参数都会被更新;
步骤1.4.3使用步骤1.4.2中训练完成的共享卷积层初始化RPN网络,随后,第二次训练RPN网络,通过初始化后的RPN网络计算得到区域提议,计算步骤与步骤1.4.2相同,训练结束之后,RPN中边框回归函数被更新;
步骤1.4.4保持步骤1.4.3中的共享卷积层不变,再次训练Fast-RCNN网络,具体步骤与步骤1.4.2相同,训练完毕,得到最终的一个统一网络。
7.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述2.1中,焦点像素集位于卷积神经网络特征图的粒度之上,由带ReLU的两层卷积层(3*3和1*1)以及一个二分类器soffmax组成,特征图上某个与小目标重叠的像素记为焦点像素,对于输入的面积为X*Y的图片,经过一个步长为s的全卷积神经网络,得到一个特征图标签集L的大小为X′*Y′ X′与Y′分别代表经过全卷积神经网络后输出的特征图标签集的长和宽,对每一个大小为s*s的标签l(l∈L),作如下的定义:其中,1代表标注正,0代表标注负,-1表示无效,GTArea表示实际边界框经过缩放后的面积,即ground-truth boxes区域面积,其中a、b、c皆为判定的阈值,IoU为重叠度,即两个矩形框重叠面积占其并集的面积比例;
在训练时,焦点像素集标注为正,忽略与极小目标、中等目标重叠的像素,其他像素标注为负,同时,同一目标的标记可能随着训练尺度的变化而发生改变。
8.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述2.2中,由于存在某在图像块面积过小,缺少检测的必要信息,为了保证检测效率,需要指定图像块最小面积为k,输入为预测分支输出的焦点像素集预测结果P、设定的阈值t、膨胀系数d以及图像块最小面积k,焦点图像块生成算法的步骤如下:步骤2.2.1用阈值t将P二值化;
步骤2.2.2使用d*d的过滤器对P进行膨胀操作;
步骤2.2.3从P中获得连通域集合S;
步骤2.2.4对每个在S中的连通域,生成多个最小面积大于k的图像块C;
步骤2.2.5合并重叠的图像块C;
基于焦点图像块,级联推断过程如下:
a)在最低分辨率检测并生成焦点图像块;
b)在当前最低分辨率图像块上检测,并进一步生成下一尺度的焦点图像块;
c)重复步骤b,仅将可能存在目标的区域即焦点图像块传递给下一尺度检测。
9.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述2.3中,ROI指的是从目标图像中识别出的候选识别区域,也就是步骤2.2中生成的焦点图像块,ROI Pooling的作用是把大小形状各不相同的候选识别区域归一化为固定尺寸的目标识别区域,不同于CNN网络中的池化层,ROI Pooling通过如下的方法得到固定尺寸的输出,过程如下:步骤2.3.1对于ROI Pooling层,首先确定输出大小,然后确定内核大小、步幅和填充值,将ROI Pooling层的输出大小表示为w2*h2,输入候选区域的大小为w*h;
步骤2.3.2将步骤二的焦点图像块划分为w2*h2大小的子窗口,每个窗口的大小为步骤2.3.3对步骤2.3.1中每个子窗口取最大元素作为输出,从而得到大小为w2*h2的输出。
10.如权利要求1或2所述的优化分类与定位任务的目标检测方法,其特征在于,所述
2.5中,步骤2.2中使用d*d的过滤器对P进行膨胀操作可以有效避免应在下一尺度检测的物体出现在焦点图像块的边界上,因此可以忽略所有出现在图像块边界上的检测框,对其他位置的目标,有如下规则:对于处在原图边界上的目标,则检查其是否整体位于某图像块中,如果整体位于某图像块中,保留其检测结果,否则忽略;在检测过程的最后,使用非极大值抑制方法合并各尺度检测结果,获得最终结果。