1.一种基于深度自编码卷积神经网络的多任务分层图像检索方法,其特征在于:
所述方法包括以下步骤:
1)构建用于深度学习和训练识别的多任务端到端卷积神经网络;所述的卷积神经网络,共要分为三个模块组成:共享卷积模块、感兴趣区域二次筛选模块、感兴趣区域坐标回归和识别模块,这些模块由卷积层、激活层和下采样层交替构成的深度卷积神经网络;输入图像在网络中进行逻辑回归、层层映射,得到各层对于图像不同的表现形式,实现感兴趣区域的深度表示;
2)基于RPN网络对感兴趣区域二次筛选模型的快速视觉分割检测和定位,采用以RPN网络为基础添加初次和再次筛选网络,对RPN产生的初始建议框进行评分和多重过滤,根据得分的高低和最大响应区域的过滤确定最后感兴趣区域;
3)进行全图稀疏哈希码的粗检索,通过对初次筛选网络,首先RPN产生的建议框的属性概率向量进行二值化编码,然后通过向量融合方式对二维向量进行扁平化成一维向量得到全图的稀疏哈希码;最后通过余弦距离对这种紧凑的二进制编码向量进行快速图像对比;
4)基于最大响应的区域感知语义特征和矩阵h的精准比对检索,通过再次筛选网络,对初次筛选网络结果和全连接层最大响应提取建议框的高层语义信息,结合在快速对比方法中得到的返回图像使用修正余弦距离进行有选择性的比较、排序,前k个图像最为最后返回结果。
2.如权利要求1所述的基于深度自编码卷积神经网络的多任务分层检索相似图像的方法,其特征在于:所述步骤1)中,共享卷积模块:共享网络由5个卷积模块组成,其中conv2_x到conv5_x的最深层分别为{42,82,162,162}作为特征图的输出尺寸,conv1作为输入层只含有单层卷积层;
感兴趣区域坐标回归和识别模块:RPN网络将一个任意尺度图像作为输入,输出矩形目标建议框的集合,每个框包含4个位置坐标变量和一个得分;为了生成区域建议框,首先输入图像经过卷积共享层生成特征图,然后,在特征图上进行多尺度卷积操作,实现为:在每一个滑动窗口的位置使用3种尺度和3种长宽比,以当前滑动窗口中心为中心,并对应一种尺度和长宽比,则可以在原图上映射得到9种不同尺度的候选区域,如对于大小为w×h的共享卷积特征图,则总共有w×h×9个候选区域;最后,分类层输出w×h×9×2个候选区域的得分,即对每个区域是目标/非目标的估计概率,回归层输出w×h×9×4个参数,即候选区域的坐标参数;
训练RPN网络时,给每个候选区域分配一个二进制的标签,以此来标注该区域是不是目标,操作如下:1)与某个真正目标区域(Ground Truth,GT)有最高的IoU(Intersection-over-Union,交集并集之比)重叠的候选区域;2)与任意GT包围盒有大于0.7的IoU交叠的候选区域,分配负标签给与所有GT包围盒的IoU比率都低于0.3的候选区域;3)介于两者之间的舍弃;
有了这些定义,遵循Faster RCNN中的多任务损失,最小化目标函数,对一个图像的损失函数定义为:
其中,i是第i个候选区域的索引,是候选区域是第i类的概率;如果候选区域的标签为正, 为1,如果候选区域标签为0, 就是0;ti是一个向量,表示预测的包围盒的4个参数化坐标,是对应的GT包围盒的坐标向量,Ncls和Nreg分别为分类损失函数与位置回归损失函数的归一化系数,λ为两者之间的权重参数,分类损失函数Lcls是两个类别的对数损失,两个类别为目标和非目标:对于位置回归损失函数Lreg,用以下函数定义:
其中,R是鲁棒的损失函数smooth L1:
感兴趣区域二次筛选模块:根据RPN网络输出的I个感兴趣的建议框的图像特征,首先送入初次筛选层去除2/3背景框增大正样本比例,且能有效减少背景区域的产生;然后再将初次筛选过后的感兴趣的建议框的图像特征进行卷积和ReLU处理,得到I个含有4096维的特征图,接着分别送入分类层和窗口回归层进行处理;最后为了获取最大响应的区域感知语义特征,将得到的I个4096维特征图接入再次筛选网络,最后再次反选出最精确建议框的区域感知语义特征;
卷积神经网络训练是一个反向传播过程,与BP算法类似,通过误差函数反向传播,利用随机梯度下降法对卷积参数和偏置进行优化调整,直到网络收敛或者达到最大迭代次数停止;
该神经网络训练是一个反向传播过程,通过误差函数反向传播,利用随机梯度下降法对卷积参数和偏置进行优化调整,直到网络收敛或者达到最大迭代次数停止;
反向传播需要通过对带有标签的训练样本进行比较,采用平方误差代价函数,对于c个类别,N个训练样本的多类别进行识别,网络最终输出误差函数用公式(5)来计算误差,N式中,E为平方误差代价函数,为第n个样本对应标签的第k维, 为第n个样本对应网络预测的第k个输出;
对误差函数进行反向传播时,采用传统的BP算法类似的计算方法,如公式(6)所示,δl=(Wl+1)TδL+1×f′(ul) (ul=Wlxl-1+bl) (6)式中,δl代表当前层的误差函数,δl+1代表上一层的误差函数,Wl+1为上一层映射矩阵,f'表示激活函数的反函数,即上采样,ul表示未通过激活函数的上一层的输出,xl-1表示下一层的输入,Wl为本层映射权值矩阵。
3.如权利要求1或2所述的基于深度自编码卷积神经网络的多任务分层图像检索方法,其特征在于:所述步骤2)中,从视频或相机中获取的图像包含多个目标区域,利用概率层对RPN每个建议框坐标输出及得分输出先后经过非极大值抑制和阈值筛选得到最终坐标框及得分,最后再次经过再筛选网络选出最精确建议框的区域,通过对建议框的两次筛选保证对目标对象的准确检测及识别。
4.如权利要求2所述的基于深度自编码卷积神经网络的多任务分层图像检索方法,其特征在于:所述步骤3)中,哈希方法的目标是将样本表示成一串固定长度的二进制编码,包括两个方面:1)对于共享相同语义概念的两个图像,二进制码之间的汉明距离应尽可能小,否则如果相应的图像来自不同的类,汉明距离应该更大,该特征意味着二进制码在汉明空间中具有辨别特性;2)哈希方法可以被视为一个黑盒子,其中输入通常是低级或中级特征,如GIST特征,黑盒子的输出是二进制代码,它在汉明空间中保持语义属性;这种二进制代码的固有属性可以被视为从特征表示的角度建立在低或中等特征的基础上的高级表示,并使其返回与查询图像更相关的语义;
深度哈希算法的处理过程为;首先假设目标数据集可分为c个类别标签,目标图像经过感兴趣区域的初次筛选网络可获取每个感兴趣区域的目标类别的概率向量p=(x1,x2,...,xc),xc∈(0,1),为促使稀疏编码模块的二进制输出利用分段函数对概率向量p进行二值化处理;如果目标图像I含有m个感兴趣区域,相应的就会产生m个p向量,融合之后得到P=(p1,p2,...,pm),全局概率矩阵P的维度为m×c,P送入二值化函数得到矩阵h,二值化过程如公式(7)所示:其中i,j∈(m,c),其次,为了加快图像检索的速度再次采用向量融合的方式,将矩阵h压缩至1×c维的矩阵H表示目标图像的全局特征;整个过程如公式(8)、公式(9)所示,首先将矩阵h转置与自身相乘后得到c×c维的过度矩阵h′,接着选取过度矩阵h′对角线元素作为最后目标图像I的全局特征二进制哈希码,即矩阵H;
H=diag(h′) (9)
稀疏哈希矩阵H是一个1×c维向量且Hi∈{0,1},i∈c, 表示矩阵(hTh)第i行,第j列;使用H对目标数据集进行粗检索,利用低维度向量可有效缩短检索时间改善检索精度;
通过深度自编码卷积神经网络,学习到图像的稀疏哈希矩阵和图像目标区域深层感知语义信息,基于上述观点,采用一种由粗到细的检索策略,最终实现图像检索系统的快速搜索、准确返回;首先通过图像的稀疏哈希矩阵检索出一组属性相类似的图像,然后通过图像目标区域深层感知语义信息在粗检索出的一组图像中,有选择性检索出与目标图像最为相似的前k个图片;
检索过程如下:对于给定的图像I,首先提取图像的输出Outj(H)稀疏哈希矩阵H;
假设目标数据集由n个图像构成,表示为Γ={I1,I2,…,In},则目标数据集的稀疏哈希码由ΓH={H1,H2,…,Hn},Hi∈{0,1}表示;进一步假设给定检索图像Iq和检索图像的稀疏哈希码Hq,使用余弦距离度量Hq与Hi∈ΓH之间相似度,将余弦值大于阈值TH图像放入候选池U中, 粗检索结果,作为候选图像用于后续精检索过程。
5.如权利要求4所述的基于深度自编码卷积神经网络的多任务分层图像检索方法,其特征在于:给定查询图像Iq和候选池U,使用从再次筛选网络和全连接层精选出来的区域感知语义特征来确定候选池U中图像前k个排名;每幅图像包含的建议框个数不定,可能含有一个或多个;若查询图像Iq包含m个建议框,从候选池U中随机选择一副图像In∈U包含了m′个建议框,如果使用暴力的检索方式对比所有建议框,则需要对比m×m′次,m×m′值越大对整个检索系统运行速度的降低就越多,针对这个问题:为减少建议框的比对次数,提高程序的运行效率,以矩阵h作为衡量比较次数依据;查询图像Iq矩阵h表示为hq,一个m×c维向量,候选池中随机图像In的矩阵h矩阵为hn,则相应的对比次数如公式(10)所示:结果num≤m×m′,通过公式(10)的建议框选择性比较大大减少了需要比对的次数及检索系统运算时间,其中图像中建议框数量越多效果越明显,获取需要对比的建议框如公式(11)所示:其中dis(·)表示修正余弦距离公式,表现形式如公式(12)所示:
查询图像和目标数据集中的任意一张图像的区域感知语义特征分别使用fq,fn表示,带人公式(11)得到对比建议框矩阵s,m×m′维,图像产生的建议框往往存在两大类:同类建议框和非同类建议框,所以选择比较的建议框也会存在两类比较结果,因此造成类内和类间建议框的个数的不同的检索差异,所以利用公式(13)可消除这些差异:以查询图像的建议框为基准,取图像Iq与In类内框的最大值,类间框的平均值,最后在图像Iq的类内再次取均值,通过运算最大程度上降低这些差异保证结果的准确性,并得到图像Iq与In的相似度sim;
首先需要更新矩阵s,取图像Iq与In类内框的最大值,更新公式如下:
在公式(13)中i,j∈(m,m′),选出矩阵s′中第i行最大值用 表示,最后利用公式(14),取图像Iq与In类间框的平均值并在Iq类内平均,最后得到整张图片的相似度,sim获取公式如下:公式(14)中i,j∈(m,m′),字符 表示查询图片的矩阵的第i行,第j列,s′j表示矩阵s′的第j列,相似度计算公式计算结果sim值越大图像相似度越高,对于候选池U中每个候选图片 的排名从sim的最大值开始排列,这样就确定了前k个图片的排名。
6.如权利要求5所述的基于深度自编码卷积神经网络的多任务分层图像检索方法,其特征在于:所述方法还包括:步骤5)搜索图像精度的评价,这里使用一个以排名为基础的标准来进行评价;对于给定一个搜索图像Iq和一个相似性度量,对每个数据集图像进行一个排名;这里用评估前k个排名图像来表示一个搜索图像Iq的检索精度,用公式(15)表示;
式中,Rel(i)表示搜索图像Iq与第i个排名图像之间的真实相关,k表示排名图像的个数,Precision@k搜索精度;在计算真实相关时,只考虑有分类标签的部分,Rel(i)∈{0,1},如果搜索图像与第i个排名图像都具有相同的标签设置Rel(i)=1,否则设置Rel(i)=0,遍历候选池P中前k个排名图像就能得到搜索精度。