一种基于深度极化哈希的分层车辆图像检索方法与流程

文档序号:32058404发布日期:2022-11-04 22:21阅读:44来源:国知局
一种基于深度极化哈希的分层车辆图像检索方法与流程

1.本发明涉及图像处理技术领域,特别涉及一种基于深度极化哈希的分层车辆图像检索方法。


背景技术:

2.从20世纪70年代开始,有关图像检索的研究就已开始,当时主要是基于文本的图像检索技术(tbir),利用文本描述的方式描述图像的特征,如绘画作品的作者、年代、流派、尺寸等。到90年代以后,出现了对图像的内容语义,如图像的颜色、纹理、布局等进行分析和检索的图像检索技术,即基于内容的图像检索(cbir)技术。cbir还包括对动态视频、音频等其它形式多媒体信息的检索技术。
3.后来随着深度学习的广泛应用,以及cnn提取图像深度特征的强大能力,研究人员开始通过深度学习来提取图像特征,这种深度特征比传统的gist、sift等方法提取的特征有用的多,应用到图像检索上面十分有效。
4.而对于车辆检索领域,在当前的大数据时代,每条公路上都有好多监控摄像头,每天都会产生大量的车辆图片数据。车辆图像检索的任务就是从这些海量的车辆图像数据中检索出与给定查询图片同一型号甚至同一车牌的图片,但是这些大量车辆图像数据的检索数据库变得越来越大,通过深度学习提取图像的特征越来越慢、越来越繁琐,从而导致检索的速度和精度都有所损失。为了加快检索速度,研究人员引入哈希码,将图片的特征进行哈希化,通过汉明距离计算他们之间的相似度以加快检索速度。而训练哈希函数的量化损失往往是不可微的,因此无法通过梯度下降法反向传播更新网络参数,有的研究人员就通过近似的方法逼近要学习的哈希函数,但是这样通常或多或少会存在一些量化误差,导致最终的检索结果并没有达到最好。


技术实现要素:

5.本发明的目的克服现有技术存在的不足,为实现以上目的,采用一种基于深度极化哈希的分层车辆图像检索方法,以解决上述背景技术中提出的问题。
6.一种基于深度极化哈希的分层车辆图像检索方法,包括:
7.获取车辆图像数据集并进行预处理;
8.搭建分层极化网络模型,进行极化损失函数和优化器的配置,并导入车辆图像数据集进行特征学习和哈希函数学习的训练;
9.利用训练好的分层极化网络模型提取数据集中查询图像和数据库图像的超类特征和子类特征,并利用学习后的哈希函数对超类特征和子类特征进行哈希化,得到哈希码;
10.通过得到的哈希码的超类哈希特征和哈希子类特征计算相似度进行分层图像检索,得到检索结果。
11.作为本发明的进一步的方案:所述获取车辆图像数据集并进行预处理的具体步骤包括:
12.获取车辆图像数据集,所述车辆图像数据集包括m张图像的训练集和n张图像的测试集,其中将m张图像的训练集作为待检索数据库;
13.对车辆图像训练集进行预处理,根据车辆品牌划分为若干个超类,再在每个超类品牌中根据不同车辆型号划分为若干个子类;
14.对输入的车辆图像训练集的rbg通道归一化处理,限定于-1至1之间,并采用裁剪、翻转,以及旋转的数据增强方法对车辆图像固定大小尺寸。
15.作为本发明的进一步的方案:所述搭建分层极化网络模型,进行极化损失函数和优化器的配置,并导入车辆图像数据集进行特征学习和哈希函数学习的训练的具体步骤包括:
16.获取车辆图像数据集的训练集和测试集;
17.搭建分层极化网络模型,制定深度模型训练策略,其中训练集与测试集的比例为m:n=4:1;
18.再对输入的车辆图像样本进行归一化处理:(image/255)
×
2-1;
19.其中,image为输入的车辆图像样本,采用数据增强方法扩大训练样本量,对车辆图像统一调整尺寸大小到256*256,然后剪裁尺寸大小到224*224;
20.通过模型的骨干网络学习深度特征,对划分为超类和子类分支学习对应的超类特征和子类特征;
21.将模型的优化器设定为adam,采用可微分的极化损失函数优化网络参数,设置哈希函数的初始化长度为bit位的{1,-1}随机值,然后采用自适应更新的方式更新超类和子类对应的哈希函数。
22.作为本发明的进一步的方案:所述通过模型的骨干网络学习深度特征,对划分为超类和子类分支学习对应的超类特征和子类特征的具体步骤包括:
23.将resnet50网络作为骨干网络提取每张图片的深度特征,公式为:x=resnet(t);
24.然后设置超类分支为一个全连接层网络学习超类特征v
sup
=fc(x),子类分支为d个全连接层网络学习每一个超类的子类特征v
isub
=fc(x),i∈{1,2,

,d};
25.其中,resnet()为resnet50网络,fc()为全连接层网络,d为超类类别数。
26.作为本发明的进一步的方案:所述采用可微分的极化损失函数优化网络参数的具体步骤包括:
27.采用可微分的极化损失函数使得骨干网络的输出特征v中的每个元素均偏离0,所述极化损失函数的公式:
[0028][0029]
其中,v为每个分支的超类子类特征,t为要学习的哈希函数,m为阈值,用于控制极化损失的极化程度,k为哈希位数bit;
[0030]
得到目标函数为:
[0031][0032]
其中,w为网络中要学习的权重,l为类别数,c
x
为第x类的样本集;
[0033]
将得到的超类损失l
psup
和d个子类损失l
pisub
之和作为最终的总损失,i∈{1,2,

,d}。
[0034]
作为本发明的进一步的方案:所述采用自适应更新的方式更新超类和子类对应的哈希函数的具体步骤包括:
[0035]
对于每一个类别c,获取其预测正确的特征vc,然后将该特征值符号化作为更新后的哈希值,即t
c_new
=sign(vc),其中sign()为符号函数。
[0036]
作为本发明的进一步的方案:所述利用学习后的哈希函数对超类特征和子类特征进行哈希化的具体步骤包括:
[0037]
获取数据集中的查询图像和数据库图像,提取对应的超类特征和子类特征;
[0038]
对得到的超类特征和子类特征,采用三元赋值的方式和学习后的哈希函数进行哈希化,得到最终的哈希码,公式为:
[0039][0040]
其中,x为超类和子类特征的各个元素的特征值,m为极化损失中的阈值。
[0041]
作为本发明的进一步的方案:所述通过得到的哈希码的超类哈希特征和哈希子类特征计算相似度进行分层图像检索,得到检索结果的具体步骤包括:
[0042]
利用数据集中的查询图像和数据库图像的超类哈希特征计算之间的汉明距离,得到一个候选排序结果,汉明距离的计算公式为:
[0043][0044]
其中,b和t分别代表要计算的两个向量,k代表哈希位数bit;
[0045]
获取候选排序结果中的前k个数据库图像进行子类特征相似度计算,其中k为数据库图像数量的1/10;
[0046]
最后计算子类哈希特征之间的汉明距离得到最终的检索排序结果。
[0047]
与现有技术相比,本发明存在以下技术效果:
[0048]
采用上述的技术方案,通过以基于深度哈希的模型为基础,根据车辆图片的品牌和型号分层式的提取超类和子类特征,并通过可微分的极化损失函数优化网络参数,其中利用分步更新的方式更新网络各层的参数,并利用自适应的方式更新哈希函数。分层检索时首先提取查询图像和数据库图像的超类和子类特征,利用学习到的哈希函数将对应的超类和子类特征转换为哈希特征,然后根据超类哈希特征计算他们之间的汉明距离,筛选出前k个图片根据子类哈希特征计算他们之间的汉明距离得到最终的检索结果。实现了快速分层车辆图像检索,提高了针对车辆图像检索的检索速度和检索精度,解决了常规图像检索应用于特定场景图像中检索效果差的问题。
附图说明
[0049]
下面结合附图,对本发明的具体实施方式进行详细描述:
[0050]
图1为本技术公开的实施例的结构示意图;
[0051]
图2为本技术公开的实施例的分层车辆图像检索的步骤示意图;
[0052]
图3为本技术公开的实施例的分层极化网络结构示意图;
[0053]
图4为本技术公开的实施例的分层车辆检索结构示意图。
具体实施方式
[0054]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0055]
请参考图1和图2,本发明实施例中,一种基于深度极化哈希的分层车辆图像检索方法,包括:
[0056]
s1、获取车辆图像数据集并进行预处理,本实施例中,具体步骤包括:
[0057]
获取车辆图像数据集,所述车辆图像数据集包括m张图像的训练集和n张图像的测试集,其中将m张图像的训练集作为待检索数据库;
[0058]
对车辆图像训练集进行预处理,根据车辆品牌划分为若干个超类,再在每个超类品牌中根据不同车辆型号划分为若干个子类;
[0059]
对输入的车辆图像训练集的rbg通道归一化处理,限定于-1至1之间,并采用裁剪、翻转,以及旋转的数据增强方法对车辆图像固定大小尺寸。
[0060]
s2、搭建分层极化网络模型,进行极化损失函数和优化器的配置,并导入车辆图像数据集进行特征学习和哈希函数学习的训练,具体步骤包括:
[0061]
s21、获取车辆图像数据集的训练集和测试集;
[0062]
设置车辆图像的训练集为m张图像t={t1,t2,

,ti,

,tm},设置m张训练集图片对应的超类标签为l
sup
={l
1sup
,l
2sup
,

,l
isup


,l
msup
},子类标签为l
sub
={l
1sub
,l
2sub
,

,l
isub


,l
msup
},其中ti表示训练集中第i张图像,l
isup
表示训练集中第i张图像的超类标签,l
isub
表示训练集中第i张图像的子类标签;
[0063]
设置n张车辆图像的测试集查询图片为q={q1,q2,

,qi,

,qn},其中qi表示测试集中第i张图像;
[0064]
s22、搭建分层极化网络模型,制定深度模型训练策略,其中训练集与测试集的比例为m:n=4:1;
[0065]
再对输入的车辆图像样本进行归一化处理:(image/255)
×
2-1;
[0066]
其中,image为输入的车辆图像样本,采用数据增强方法扩大训练样本量,对车辆图像统一调整尺寸大小到256*256,然后剪裁尺寸大小到224*224;
[0067]
s23、通过模型的骨干网络学习深度特征,对划分为超类和子类分支学习对应的超类特征和子类特征,本实施例中,其具体步骤包括:
[0068]
本实施例中,如图3所示,图示为分层极化网络结构示意图。
[0069]
将resnet50网络作为骨干网络提取每张图片的深度特征,公式为:x=resnet(t);
[0070]
然后设置超类分支为一个全连接层网络学习超类特征v
sup
=fc(x),子类分支为d个全连接层网络学习每一个超类的子类特征v
isub
=fc(x),i∈{1,2,

,d};
[0071]
其中,resnet()为resnet50网络,fc()为全连接层网络,d为超类类别数。
[0072]
s24、将模型的优化器设定为adam,采用可微分的极化损失函数优化网络参数,设置哈希函数的初始化长度为bit位的{1,-1}随机值,然后采用自适应更新的方式更新超类
和子类对应的哈希函数。
[0073]
具体的,所述采用可微分的极化损失函数优化网络参数的具体步骤包括:
[0074]
采用可微分的极化损失函数使得骨干网络的输出特征v中的每个元素均偏离0,所述极化损失函数的公式:
[0075][0076]
其中,v为每个分支的超类子类特征,t为要学习的哈希函数,m为阈值,用于控制极化损失的极化程度,k为哈希位数bit;
[0077]
得到目标函数为:
[0078][0079]
其中,w为网络中要学习的权重,l为类别数,c
x
为第x类的样本集;
[0080]
将得到的超类损失l
psup
和d个子类损失l
pisub
之和作为最终的总损失,i∈{1,2,

,d}。
[0081]
上述损失是一种可微分的极化损失,可以通过梯度下降法直接反向传播更新网络参数w,我们在更新的时候采用分步更新的方式,具体做法为首先根据超类标签l
sup
和对应的哈希函数优化超类分支和骨干网络的网络参数,然后冻结骨干网络的参数,根据所属超类的子类标签l
isub
和对应的哈希函数优化子类分支的网络参数。
[0082]
本实施例中,所述采用自适应更新的方式更新超类和子类对应的哈希函数的具体步骤包括:
[0083]
对于每一个类别c,获取其预测正确的特征vc,然后将该特征值符号化作为更新后的哈希值,即t
c_new
=sign(vc),其中sign()为符号函数。
[0084]
s3、利用训练好的分层极化网络模型提取数据集中查询图像和数据库图像的超类特征和子类特征,并利用学习后的哈希函数对超类特征和子类特征进行哈希化,得到哈希码;
[0085]
本实施例中,如图4所示,图示为分层车辆检索结构示意图,所述利用学习后的哈希函数对超类特征和子类特征进行哈希化的具体步骤包括:
[0086]
获取数据集中的查询图像和数据库图像,提取对应的超类特征和子类特征;
[0087]
对于查询图像q和数据库图像,即m张训练集图像t={t1,t2,

,ti,

,tm},输入到搭建的分层极化网络模型中提取其对应的超类特征vq
sup
、vt
sup
和子类特征vq
sub
、vt
sub

[0088]
其中,vq
sup
为查询图像的超类特征,vt
sup
为数据库图像的超类特征,vq
sub
为查询图像的子类特征,vt
sub
为数据库图像的子类特征;
[0089]
后面我们会利用哈希函数将这些特征进行哈希化,具体的,采用一种三元赋值的方式,由于分层极化网络会将超类特征和子类特征的特征值偏离0,但其中一些预测错误的样本得到的特征值处于-1到1之间,即在阈值m范围内,而预测正确的样本特征值往往会大于1或者小于-1,即在阈值m范围外,因此通过利用三元赋值方式得到最终的哈希码:
[0090][0091]
其中,x为超类和子类特征的各个元素的特征值,m为极化损失中的阈值,本实施例中,m默认为1,因此得到的哈希码可以使预测错误的那些的特征值变为0以减小误差。
[0092]
s4、通过得到的哈希码的超类哈希特征和哈希子类特征计算相似度进行分层图像检索,得到检索结果,其具体步骤包括:
[0093]
本实施例中,根据得到的哈希码hq
sup
、ht
sup
、hq
sub
、ht
sub
,其中hq
sup
为查询图像q的超类哈希特征、ht
sup
为数据库图像t的超类哈希特征、hq
sub
为查询图像q的对应该超类的子类哈希特征、ht
sub
为数据库图像t的对应该超类的子类哈希特征;
[0094]
我们首先利用查询图像和数据库图像的超类哈希特征hq
sup
、ht
sup
计算其之间的汉明距离,得到一个候选排序结果,汉明距离的计算公式为:
[0095][0096]
其中,b和t分别代表要计算的两个向量,k代表哈希位数bit;
[0097]
获取候选排序结果中的前k个数据库图像进行子类特征相似度计算,其中k为数据库图像数量的1/10,即k=m/10;
[0098]
最后我们进行子类特征相似度的计算,利用查询图片和k个数据库图片子类哈希特征hq
sub
、ht
sub
之间的汉明距离得到最终的检索排序结果。
[0099]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1