CN116108217B - 一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法 - Google Patents
一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法 Download PDFInfo
- Publication number
- CN116108217B CN116108217B CN202211327218.9A CN202211327218A CN116108217B CN 116108217 B CN116108217 B CN 116108217B CN 202211327218 A CN202211327218 A CN 202211327218A CN 116108217 B CN116108217 B CN 116108217B
- Authority
- CN
- China
- Prior art keywords
- hash
- vehicle
- prediction
- stage
- color
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000012549 training Methods 0.000 claims abstract description 26
- 239000003086 colorant Substances 0.000 claims description 11
- 230000014759 maintenance of location Effects 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 5
- 238000009499 grossing Methods 0.000 claims description 5
- 238000004873 anchoring Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 3
- 238000005259 measurement Methods 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 27
- 239000013598 vector Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000004821 distillation Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5838—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5854—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/56—Extraction of image or video features relating to colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Library & Information Science (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Devices For Checking Fares Or Tickets At Control Points (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法。其特征在于,以resnet50作为特征提取器,分别输入到车辆id、车型、颜色预测模块和哈希码生成模块四个分支同时训练。哈希码生成模块可以生成不同长度的哈希编码,车型和颜色预测模块分别对车型和颜色进行预测。该方法同时对车型预测、颜色预测、哈希编码生成模块进行优化,可以实现基于属性的粗粒度检索和基于不同层次哈希码的细粒度检索。针对逃费车辆,首先可以从数据库中针对粗粒度属性特征筛选出匹配的图片,再根据由短到长的哈希码不断进行更加精细化的检索。由粗到精的检索方法和哈希编码的方式大大提高检索速度和检索效率。
Description
技术领域
本发明属于图像处理、计算机视觉技术领域,具体为车辆相似图片检索方法。
背景技术
高速逃费车辆呈现出类别聚集现象,以货车居多。由于相同品类车辆特征高度相似,不同的光照和相机拍摄角度下车辆呈现出差异较大的特征,同品类车辆间单个车辆的识别具有较大难度,为一种更细粒度的图像识别问题。同时,在城市级别的检索场景下,针对待判定的疑似逃费车辆,数据库中需要检索的数据规模庞大。这就需要一个同时能保证检索速度和检索精度的检索方法。
发明内容
针对现有技术的不足和改进需求,本发明提供了一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法。其目的在于,采用由粗粒度到细粒度,由较短编码到较长编码的检索方式,逐步减小候选的检索数据集,保证较高的检索精度。同时所生成的数据都为01编码数据,能够实现较快检索。本发明解决技术问题所采用的技术方案如下:
步骤S1:训练基于深度哈希编码和多任务预测的网络;
步骤S11:获取数据,利用数据库中存储的车辆数据,生成样本标签,样本标签包括车辆id、车型、车辆颜色三种;以车牌号作为车辆的id,相同车牌号的图片则认为是同一辆车,不同车牌号的图片认为是不同的车辆;用CNN网络训练颜色提取器和车型提取器,对于相同id的所有车辆图片车型和颜色预测结果一致则认为预测正确,将结果作为车辆的颜色和车型,否则采用手工标注。
步骤S12:对数据进行预处理,将图片进行缩放到固定尺寸,并以一定概率进行随机旋转、随机剪裁、随机透视;
步骤S13:划分数据集,将预处理好的数据集划分为三部分,训练集、图库集、查询集;
步骤S14:构建网络,采用resnet50作为主干网络进行特征提取,哈希码生成模块(A1)、车型(A2)、颜色预测模块(A3)和车辆id(A4)四个分支同时训练。分支A1进行哈希编码生成、分支A2进行颜色预测、分支A3进行车型预测,分支A4进行训练过程中的车辆id预测。在训练阶段同时优化A1~A4四个分支,在推理阶段仅保留A1~A3三个分支。整个网络采用resnet50作为主干网络进行特征提取;图片经过resnet50主干网络生成feature之后,feature分别进入到深度哈希模块和车辆id、车型、颜色预测模块;损失函数由resnet50主干网络得到的triplet loss损失函数,深度哈希模块的损失函数,车辆id、车型、颜色预测模块的损失函数共同组成,并一起优化。深度哈希模块学习不同长度的哈希编码。通过相对距离保序性损失Ldis_sim_A1、类别保持性约束损失Lce_sim_A1使短编码对长编码的分布进行模仿,使短编码也能达到较好的效果。
步骤S15:进行batch采样,采用pk batch的方式构成一个batch图片,每一个batch随机采P个classes(车辆id),再在这个class下随机采K张属于该车辆id的图片,最后采集到P×K张图片组成1个batch。每次采用三元组数据即(样本A,与样本A为同一辆车的正例样本B,与样本A为不同车辆的负例样本C)输入到S14中的网络中进行训练,输出三组结果,通过定义的三元组损失函数triplet loss进行梯度回传达到网络更新的目的。
步骤S2:针对需要检索的图片利用训练好的网络进行特征推理;
步骤S21:在检索过程中,仅保留必要的网络结构,对id模块进行去除,同时也移除辅助生成的fc层。仅保留生成哈希编码、车型、颜色的必须的网络结构;
步骤S22:在输入一张需要查找的车辆图片后,将A2中最大概率的车型作为得到的车型,A3中最大概率的颜色作为得到的颜色,会得到该图片的车型M、颜色C和不同长度的哈希编码hash1~hash3。
步骤S3:根据推理的特征在历史数据中进行结果检索;
步骤S31:首先经过基于颜色和车型的直接检索,经过该阶段后Gallery中的候选图片减小到G1;
步骤S32:G1到G2和G2到G3中,采用基于哈希编码的直接检索和基于汉明距离的检索相结合的方式,对不同长度下哈希码的检索,进行由粗到精的检索;
步骤S33:先采用较短的哈希码hash3检索得到大于等于k1张图片,再选择中等长度的哈希码hash2进行检索,最后采用最长的哈希码hash1进行检索;
步骤S34:在G3到最终结果的阶段,仅采用基于汉明距离的检索,得到最终前k个结果。
作为本发明的一种优选技术方案,S14步骤中特征提取器后采用的三元组损失函数triplet loss为:
Ltriplet_loss=max(d(a,p)-d(a,n)+margin,0) (1)
其中,f(x)为特征提取器的映射函数;max表示取最大值;选取的锚定样本为xa,正样本为为xp,负样本为xn。损失函数使d(a,p)和d(a,n)的差值大于阈值margin。该损失函数使相似样本的距离比不同样本的距离更远。
作为本发明的一种优选技术方案,S14步骤中深度哈希模块具体包括:共3个stage,分别生成长度为1024,512,256的哈希码;每个stage都由全连接FC层和BN层组成,后一个stage的FC层会连接前一个stage的BN层;对于第i个stage得到经过BN后的值bi,采用符号函数sgn变为整型数值,转化为01的哈希值hashi,其公式如下:
作为本发明的一种优选技术方案,S14步骤中深度哈希模块的损失函数包含:相对距离保序性损失Ldis_sim_A1和类别保持性约束损失Lce_sim_A1;相对距离保序性损失Ldis_sim_A1使得在生成更短编码后正样本离anchor的距离和负样本离anchor的相对距离能够保持不变,其公式为
其中,gi(x)为输入图片到深度哈希模块第i个stage中BN层映射函数;max表示取最大值;为第i个stage中正样本到锚定样本的距离,/>为第i个stage中负样本到锚定样本的距离,/>表示第i个stage获得的triplet loss,损失函数使/>和/>的差值大于阈值margin,Ldis_sim_A1(kk,1)表示第k个stage和第1个stage之间triplet_loss损失差值的平方,lk表示第k层编码的长度,N表示深度哈希模块stage的层数;
Lce_sim_A1可以保证在更短的哈希编码下对id预测时的概率分布和较长哈希编码下的对id预测的概率分布保证分布一致,其公式为
其中,zk表示logits的第k位,qk表示softmax后的logits的第k位,表示第i个stage进行softmax后的logits的第k位,N表示深度哈希模块stage的层数。
作为本发明的一种优选技术方案,S14步骤中A2~A4分支包含:分支A2和A3都分别由fc1-relu-fc2构成,分支A2用于车辆类别预测,分支A3用于颜色预测,用CrossEntropy作为损失函数,分别记作Lce_A2,Lce_A3。
其中,M是车辆类别数量,C是颜色的数量,pi是模型输出的预测,y是真实的类别/颜色标签。
对于每辆车将对车辆id的判别视为分类任务进入分支A4中,resnet50主干网络生成的feature首先通过fc层,再预测属于每个id的概率,构建id损失Lid,并且为了防止过拟合对真实的标签qi采用标签平滑策略。计算公式如下:
其中,N是车辆数量,y是真实的id标签,pi是模型输出的预测,ε应用在标签平滑策略中,是一个较小的常数。
作为本发明的一种优选技术方案,S3步骤中数据检索的检索模式包含:(1)基于属性的直接检索:由于网络对于车型、颜色的识别已经具有较高的精确度,车型、颜色可以直接检索。以常用的mysql数据库为例,可以直接运用where语句检索相应的数据;(2)基于哈希编码的直接检索:直接寻找数据库中哈希码相同的图片,如果图片数量大于设定的阈值,将这些图片作为候选集进行检索。否则尝试对每一位变化生成与原哈希码只有一个bit之差的新哈希码,用新哈希码直接寻找数据库中的图片。找到所有满足的图片后,将这些图片作为下一阶段的候选集;(3)基于汉明距离的哈希码检索:采用汉明距离作为距离度量指标,假设图片1生成的二进制编码为hash1,图片2生成的二进制编码为hash2,其汉明距离即为hash1 XOR hash2后二进制中1的数量。
本发明提出了针对逃费车辆相似图片检索的方法,利用深度学习网络强大的拟合能力,通过构建三元组样本进行训练的方法,用resnet50作为特征提取器把图片转化为向量表示,三元组损失拉近了相同车辆生成的向量的距离,推远了不同车辆生成的向量的距离,从而特征提取器生成的向量可以反映车辆图片的相似程度。多分支网络同时对车型预测、颜色预测、哈希编码生成模块进行优化的方法,考虑了三类任务之间的关联性,一次性得到车辆颜色、车型和哈希码的预测。通过预测结果可以实现基于属性的粗粒度检索和基于不同层次哈希码的细粒度检索。基于属性的直接检索是一种比较鲁棒的检索方式,检索速度快并能直接利用mysql进行检索。基于不同层次哈希码的方式包含了基于哈希编码的直接检索和基于汉明距离的哈希码检索两种模式,利用了网络生成的不同长度的哈希编码。较短哈希码的检索由于计算的位数更少,速度更快;较长的哈希码则包含了图片数据的更多信息。由粗到精的检索从较短哈希码开始逐步过滤样本,再进行较长哈希码检索,大大提高了检索效率。
本发明的有益效果是:
1.本发明所提出的多分支网络考虑到颜色、车型、图像特征向量表示学习三类任务的关联性,同时对车辆的颜色、类别特征和车辆图片的特征向量的学习进行优化,端到端地获得逃费车辆的颜色、车型和特征向量表示;
2.本发明所提出的不同长度编码的生成和由粗到精的搜索有效的减少了大规模数据下的计算量,达到减小计算量的目的;
3.本发明所提出的逃费车辆相似图片检索方式同时结合了基于颜色和车型索引的检索和基于汉明距离的检索,提高了检索效率,同时也能保证较好的检索精度。
附图说明
下面结合附图和实施例对本发明进一步说明;
图1为本发明的图片特征生成网络结构图。
图2为本发明的深度哈希模块结构示意图。
图3为本发明的图片检索时的步骤示意图。
具体实施方式
下面结合附图和实施例,对本发明作进一步详细描述,以下实施例用于说明本发明,但不用来限制本发明的范围。
整个流程主要分为三大部分,网络训练部分、网络推理部分和数据检索部分。
一、网络训练部分
(1)数据获取:网络训练阶段利用数据库中存储的车辆数据,生成样本标签。样本标签主要有三类:车辆id、车型、车辆颜色。车辆id标签的获取方式为:对车辆数据的车牌号进行解析,以车牌号作为车辆的id,相同车牌号的图片则认为是同一辆车,不同车牌号的图片认为是不同的车辆,这样得到具有标签的样本数据。车型和车辆颜色的标签获取方式为:先用公开数据集OpenITS提供的针对城市卡口车辆图像的VRID数据集分别用CNN网络训练颜色提取器和车型提取器。之后在真实数据集下标注少量的图片进行微调,获得在真实场景下较为粗略的颜色提取器和车型提取器。最后将数据全部输入到训练好的颜色提取器和车型提取器中。对于相同车辆id的一组图片,如果颜色提取器和车型提取器的结果都相同则说明颜色提取器和车型提取器信息提取正确,否则采用人工标注的方法进行重新标注。
(2)数据预处理:将图片大小进行缩放到长宽分别为224和224,并将图片分别以0.5的概率进行随机旋转,图片随机剪裁。以0.5的概率进行图片随机透视。
(3)数据集划分:将预处理好的数据集划分为三部分,训练集、图库集、查询集。划分的方法如下:首先获取数据集中包含的所有车辆id并去重;之后,将数据集中车辆的id进行随机打乱,取前80%的车辆id作为训练集中包含的车辆,后20%的id作为测试集中包含的车辆。对于每个id,都把该id所包含的图片分成两部分,分别放入训练集(或查询集)和图库集中,具体过程如下:取出每个id包含的车辆中10%,如果该id在训练集中,则放入训练集,否则放入查询集,对于剩下的90%的图片直接放入图库集。这样划分可以满足训练集和查询集中没有重复的车辆,保证测试结果能正确反映模型对新的未见过车辆的效果。
(4)网络构建:网络构建部分如图1所示。模型特征提取部分采用resnet50作为主干网络进行特征提取。Resnet50网络主要包含5层(stage0-stage4)。stage0将输入的图片先后经过卷积层、BN层、ReLU激活函数、MaxPooling层。stage1-stage4主要由bottleneck组成,分别包含3、4、6、3个bottleneck。图片经过resnet50主干网络生成feature之后,进入到深度哈希模块。在生成feature阶段采用triplet loss使相似样本的距离比不同样本的距离更远。对于选取的锚定样本a,其正样本为p,负样本为n。triplet loss的公式如下:
Ltriplet_loss=max(d(a,p)-d(a,n)+margin,0) (1)
其中,f(x)为特征提取器的映射函数;max表示取最大值;选取的锚定样本为xa,正样本为为xp,负样本为xn。损失函数使d(a,p)和d(a,n)的差值大于阈值margin。该损失函数使相似样本的距离比不同样本的距离更远。
深度哈希模块A1的作用是生成不同长度的哈希编码,其结构如图2所示。因为当进行大规模检索时,更短的哈希编码能拥有更快的检索速度。一次性生成不同长度的哈希编码能帮助进行由粗到精的模型检索。深度哈希模块总共有3个stage,分别生成长度为1024,512,256的哈希码。每个stage都由全连接FC层和BN层组成。如图2所示,后一层的FC层会连接前一层的BN层。对于第i层得到经过BN后的值bi,采用符号函数sgn变为整型数值,转化为01的哈希值hashi,其公式如下:
其中,bi代表深度哈希模块中第i个stage的BN层的输出,sgn为符号函数,hashi代表第i个stage得到的哈希编码值。
借鉴模型蒸馏的思想,更长的编码拥有更丰富的语义信息。因此可以让更短的编码学习更长的编码的分布。其主要分为两个部分:相对距离保序性损失Ldis_sim_A1、类别保持性约束损失Lce_sim_A1。
在进行更短哈希编码的生成时,相对距离保序性损失Ldis_sim_A1使得在生成更短编码后正样本离anchor的距离和负样本离anchor的相对距离能够保持不变。这样即使在更短的编码下,也能保证相同的车辆图片比不同的车辆图片生成的哈希码拥有更短的距离,从而能够对两张图片是否代表一辆车进行判断。Ldis_sim_A1对triplet loss进行约束,其定义如下:
其中,gi(x)为输入图片到深度哈希模块第i个stage中BN层映射函数;max表示取最大值;为第i个stage中正样本到锚定样本的距离,/>为第i个stage中负样本到锚定样本的距离,/>表示第i个stage获得的triplet loss,损失函数使/>和的差值大于阈值margin,Ldis_sim_A1(k,1)表示第k个stage和第1个stage之间triplet_loss损失差值的平方,lk表示第k层编码的长度,N表示深度哈希模块stage的层数;
对于每个stage生成的bi,使其经过fc层生成logits。对于使用每个stage生成的logits,采用Logit Distillation的方式生成类别保持性约束损失Lce_sim_A1,其方法为首先对logit进行softmax,之后对于每个stage经过softmax后的logit和第一层的logit计算KL散度。KL散度反映了一个分布(后者)相比另一个分布(前者)的信息损失,这里为了保证对称性,对第k个stage和第1个stage的KL散度和第1个stage和第k个stage的KL散度求和。最小化类别保持性约束损失Lce_sim_A1可以保证在更短的哈希编码下对id预测时的概率分布和较长哈希编码下的对id预测的概率分布保证分布一致。公式如下所示:
其中,zk表示logits的第k位,qk表示softmax后的logits的第k位,表示第i个stage进行softmax后的logit的第k位,N表示深度哈希模块stage的层数。
feature经过fc_A2层到达车型模块A2分支,进行softmax后生成每类车辆车型的概率并以Lce_A2作为损失函数。feature经过fc_A3层到达颜色模块A3分支,进行softmax后生成每类颜色的概率并以Lce_A3作为损失函数。其公式如下:
其中,M是车辆类别数量,C是颜色的数量。pi是模型输出的预测,y是真实的类别/颜色标签。
A4分支是生成id loss的分支,feature首先通过fc层,再经过softmax预测属于每个id的概率,构建id损失Lid,由于id的判断过于细粒度,为了防止过拟合,对真实的标签qi采用标签平滑策略。采用如下的损失函数
整个网络的loss函数公式如下:
Loss=a0*Ltriplet_loss+a1*Ldis_sim_A1+a2*Lce_sim_A1+a3*Lce_A2+a4*Lce_A3+a5*Lid (18)
其中,α0,α1,α2,α3,α4,α5用作控制各损失函数权重的作用力度。
(5)batch采样:在网络训练阶段,采用pk batch的方式构成一个batch图片,每一个batch随机采P个classes(vehicle ID),再在这个class下随机采K个image(vehicle)。最后采集到P×K张image组成1个batch。
二、网络推理部分
网络推理阶段主要应用于对输入图片进行预测阶段。在这个阶段为了让模型更快,仅保留必要的网络结构,对id模块进行去除,同时也移除辅助Lce_sim_A1生成的fc层。仅保留生成哈希编码、车型、颜色的必须的网络结构。
在输入一张需要查找的车辆图片后,将A2中最大概率的车型作为得到的车型,A3中最大概率的颜色作为得到的颜色,会得到该图片的车型M、颜色C和不同长度的哈希编码hash1~hashN。
三、数据检索部分
数据检索部分指对于需要查找的逃费车辆图片,在数据库中进行其相似图片的检索。检索主要分为三种检索方式:基于属性的直接检索、基于哈希编码的直接检索和基于汉明距离的哈希码检索。
(1)基于属性的直接检索。由于网络对于车型、颜色的识别已经具有较高的精确度,因此车型、颜色可以直接检索。以常用的mysql数据库为例,可以直接运用where语句检索相应的数据。由于不需要两两计算距离,该方式具有较快的检索速度,能从大量数据中获得可能的候选集,从而减少后面精细检索需要比较的样本数量。
(2)基于哈希编码的直接检索。由于在实际检索中图片数量仍旧较多(假设为N),如果直接比较,会计算N次距离。因此首先会采用直接检索方案,直接进行哈希编码的检索,其过程为:直接寻找数据库中哈希码相同的图片,如果图片数量大于设定的阈值,将这些图片作为候选集进行检索。否则尝试对每一位变化生成与原哈希码只有一个bit之差的新哈希码,用新哈希码直接寻找数据库中的图片。找到所有满足的图片后,将这些图片作为下一阶段的候选集。如果没有找到足够数量满足条件的图片,则采用(3)基于汉明距离的检索。
(3)基于汉明距离的哈希码检索。采用汉明距离作为距离度量指标,假设图片1生成的二进制编码为hash1,图片2生成的二进制编码为hash2,其汉明距离即为hash1 XORhash2后二进制中1的数量。
检索流程如图3所示,在待检索的数据Query到达之后,会经过不同层次的检索阶段。首先经过基于颜色和车型的直接检索,经过该阶段后Gallery中的候选图片减小到G1。在G1到G2和G2到G3中,采用基于哈希编码的直接检索和基于汉明距离的检索相结合的方式,对不同长度下哈希码的检索,进行由粗到精的检索。先采用较短的哈希码hash3检索得到大于等于k1张图片,再选择中等长度的哈希码hash2进行检索,最后采用最长的哈希码hash1进行检索。在G3到最终结果的阶段,仅采用基于汉明距离的检索得到想要找到的最相似的top k张图片。由于生成了不同长度的哈希码,从较短的编码开始进行检索,并且进行不同层次的检索,检索阶段具有较快的检索速度。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
Claims (1)
1.一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法,其特征在于,包括以下步骤:
步骤S1:训练基于深度哈希编码和多任务预测的网络;
步骤S11:获取数据,利用数据库中存储的车辆数据,生成样本标签,样本标签包括车辆id、车型、车辆颜色三种;以车牌号作为车辆的id,相同车牌号的图片则认为是同一辆车,不同车牌号的图片认为是不同的车辆;用CNN网络训练颜色提取器和车型提取器,对于相同id的所有车辆图片车型和颜色预测结果一致则认为预测正确,将结果作为车辆的颜色和车型,否则采用手工标注;
步骤S12:对数据进行预处理,将图片进行缩放到固定尺寸,并以一定概率进行随机旋转、随机剪裁、随机透视;
步骤S13:划分数据集,将预处理好的数据集划分为三部分,训练集、图库集、查询集;
步骤S14:构建网络,采用resnet50作为主干网络进行特征提取,深度哈希模块分支A1、车型分支A2、颜色预测模块分支A3和车辆id分支A4四个分支同时训练;分支A1进行哈希编码生成、分支A3进行颜色预测、分支A2进行车型预测,分支A4进行训练过程中的车辆id预测;在训练阶段同时优化A1~A4四个分支,在推理阶段仅保留A1~A3三个分支;整个网络采用resnet50作为主干网络进行特征提取;图片经过resnet50主干网络生成feature之后,feature分别进入到深度哈希模块和车辆id、车型、颜色预测模块;损失函数由tripletloss损失函数,深度哈希模块的损失函数,车辆id、车型、颜色预测模块的损失函数共同组成,并一起优化;深度哈希模块学习不同长度的哈希编码;通过相对距离保序性损失Ldis_sim_A1、类别保持性约束损失Lce_sim_A1使短编码对长编码的分布进行模仿;
步骤S15:进行batch采样,采用pk batch的方式构成一个batch图片,每一个batch随机采P个classes,再在这个class下随机采K张属于该车辆id的图片,最后采集到P×K张图片组成1个batch;每次采用三元组数据即样本A,与样本A为同一辆车的正例样本B,与样本A为不同车辆的负例样本C,输入到步骤S14中的网络中进行训练,输出三元组结果,通过定义的三元组损失函数triplet loss进行梯度回传达到网络更新的目的;
步骤S2:针对需要检索的图片利用训练好的网络进行特征推理;
步骤S21:在检索过程中,对id模块进行去除,同时也移除辅助生成的fc层;仅保留生成哈希编码、车型、颜色的必须的网络结构;
步骤S22:在输入一张需要查找的车辆图片后,将A2中最大概率的车型作为得到的车型,A3中最大概率的颜色作为得到的颜色,会得到该图片的车型M、颜色C和不同长度的哈希编码hash1~hash3;
步骤S3:根据推理的特征在历史数据中进行结果检索;
步骤S31:首先经过基于属性的直接检索,经过该阶段后Gallery中的候选图片减小到G1;
步骤S32:采用基于哈希编码的直接检索和基于汉明距离的检索相结合的方式,对不同长度下哈希码的检索,进行由粗到精的检索;先采用较短的哈希码hash3检索得到大于等于k1张图片G2,再选择中等长度的哈希码hash2进行检索得到大于等于k2张图片G3,最后采用最长的哈希码hash1进行检索;
步骤S33:在G3到最终结果的阶段,仅采用基于汉明距离的检索,得到最终前k个结果;
步骤S14中特征提取器后采用的三元组损失函数triplet loss为:
Ltriplet_loss=max(d(a,p)-d(a,n)+margin,0) (1)
其中,f(x)为特征提取器的映射函数;max表示取最大值;选取的锚定样本为χa,正样本为为xp,负样本为χn;损失函数使d(a,p)和d(a,n)的差值大于阈值margin,该损失函数使相似样本的距离比不同样本的距离更远;
步骤S14中深度哈希模块具体包括:
共3个stage,分别生成长度为1024,512,256的哈希码;
每个stage都由全连接FC层和BN层组成,后一个stage的FC层会连接前一个stage的BN层;
对于第i个stage得到经过BN后的值bi,采用符号函数sgn变为整型数值,转化为0或1的哈希值hashi,其公式如下:
步骤S14中深度哈希模块的损失函数包含:
相对距离保序性损失Ldis_sim_A1和类别保持性约束损失Lce_sim_A1;
相对距离保序性损失Ldis_sim_A1使得在生成更短编码后正样本离anchor的距离和负样本离anchor的相对距离能够保持不变,其公式为:
其中,gi(x)为输入图片到深度哈希模块第i个stage中BN层映射函数;max表示取最大值;为第i个stage中正样本到锚定样本的距离,/>为第i个stage中负样本到锚定样本的距离,/>表示第i个stage获得的triplet loss,损失函数使和/>的差值大于阈值margin,Ldis_sim_A1(k,1)表示第k个stage和第1个stage之间triplet_loss损失差值的平方,Ik表示第k层编码的长度,N表示深度哈希模块stage的层数;
Lce_sim_A1可以保证在更短的哈希编码下对id预测时的概率分布和较长哈希编码下的对id预测的概率分布保证分布一致,其公式为
其中,zk表示logits的第k位,qk表示softmax后的logits的第k位,表示第i个stage进行softmax后的logits的第k位,N表示深度哈希模块stage的层数;
步骤S14中A2~A4分支包含:
分支A2和A3都分别由fc1-relu-fc2构成,分支A2用于车辆类别预测,分支A3用于颜色预测,用CrossEntropy作为损失函数,分别记作Lce_A2,Lce_A3;
其中,M是车辆类别数量,C是颜色的数量,pi是模型输出的预测,y是真实的类别/颜色标签;
对于每辆车将对车辆id的判别视为分类任务进入分支A4中,resnet50主干网络生成的feature首先通过fc层,再预测属于每个id的概率,构建id损失Lid,并且为了防止过拟合对真实的标签qi采用标签平滑策略,计算公式如下:
其中,N是车辆数量,y是真实的id标签,pi是模型输出的预测,ε应用在标签平滑策略中,是一个较小的常数;
步骤S3中数据检索的检索模式包含:
基于属性的直接检索:由于网络对于车型、颜色的识别已经具有较高的精确度,车型、颜色直接检索;
基于哈希编码的直接检索:直接寻找数据库中哈希码相同的图片,如果图片数量大于设定的阈值,将这些图片作为候选集进行检索;否则尝试对每一位变化生成与原哈希码只有一个bit之差的新哈希码,用新哈希码直接寻找数据库中的图片;找到所有满足的图片后,将这些图片作为下一阶段的候选集;
基于汉明距离的哈希码检索:采用汉明距离作为距离度量指标,假设图片1生成的二进制编码为hash1,图片2生成的二进制编码为hash2,其汉明距离即为hash1 XOR hash2后二进制中1的数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211327218.9A CN116108217B (zh) | 2022-10-27 | 2022-10-27 | 一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211327218.9A CN116108217B (zh) | 2022-10-27 | 2022-10-27 | 一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116108217A CN116108217A (zh) | 2023-05-12 |
CN116108217B true CN116108217B (zh) | 2023-12-19 |
Family
ID=86256851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211327218.9A Active CN116108217B (zh) | 2022-10-27 | 2022-10-27 | 一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116108217B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116595215A (zh) * | 2023-07-14 | 2023-08-15 | 先进操作系统创新中心(天津)有限公司 | 基于多模态技术的中文文本搜索图像或视频的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108657A (zh) * | 2017-11-16 | 2018-06-01 | 浙江工业大学 | 一种基于多任务深度学习的修正局部敏感哈希车辆检索方法 |
CN112818859A (zh) * | 2021-02-02 | 2021-05-18 | 电子科技大学 | 一种基于深度哈希的多级检索行人重识别方法 |
CN113377981A (zh) * | 2021-06-29 | 2021-09-10 | 山东建筑大学 | 基于多任务深度哈希学习的大规模物流商品图像检索方法 |
-
2022
- 2022-10-27 CN CN202211327218.9A patent/CN116108217B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108657A (zh) * | 2017-11-16 | 2018-06-01 | 浙江工业大学 | 一种基于多任务深度学习的修正局部敏感哈希车辆检索方法 |
CN112818859A (zh) * | 2021-02-02 | 2021-05-18 | 电子科技大学 | 一种基于深度哈希的多级检索行人重识别方法 |
CN113377981A (zh) * | 2021-06-29 | 2021-09-10 | 山东建筑大学 | 基于多任务深度哈希学习的大规模物流商品图像检索方法 |
Non-Patent Citations (1)
Title |
---|
交通监控视频中车辆重识别技术研究与实现;陈娜;《中国优秀硕士学位论文全文数据库信息科技辑》(第8期);第17-40页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116108217A (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108108657B (zh) | 基于多任务深度学习的修正局部敏感哈希车辆检索方法 | |
CN107885764B (zh) | 基于多任务深度学习快速哈希车辆检索方法 | |
CN109948425B (zh) | 一种结构感知自注意和在线实例聚合匹配的行人搜索方法及装置 | |
CN107679250B (zh) | 一种基于深度自编码卷积神经网络的多任务分层图像检索方法 | |
Lin et al. | RSCM: Region selection and concurrency model for multi-class weather recognition | |
Chong et al. | Simultaneous image classification and annotation | |
CN110297931B (zh) | 一种图像检索方法 | |
CN108984642B (zh) | 一种基于哈希编码的印花织物图像检索方法 | |
CN106055573B (zh) | 一种多示例学习框架下的鞋印图像检索方法及系统 | |
CN108197538A (zh) | 一种基于局部特征和深度学习的卡口车辆检索系统及方法 | |
CN108647595B (zh) | 基于多属性深度特征的车辆重识别方法 | |
Varga et al. | Fast content-based image retrieval using convolutional neural network and hash function | |
CN112766170B (zh) | 基于簇类无人机图像的自适应分割检测方法及装置 | |
CN116108217B (zh) | 一种基于深度哈希编码和多任务预测的逃费车辆相似图片检索方法 | |
CN113326390A (zh) | 基于深度特征一致哈希算法的图像检索方法 | |
CN114299362A (zh) | 一种基于k-means聚类的小样本图像分类方法 | |
CN114579794A (zh) | 特征一致性建议的多尺度融合地标图像检索方法及系统 | |
CN115909036A (zh) | 局部-全局自适应引导增强的车辆重识别方法及系统 | |
CN115292532A (zh) | 基于伪标签一致性学习的遥感图像域适应检索方法 | |
CN114596546A (zh) | 车辆重识别方法、装置及计算机、可读存储介质 | |
CN113743239A (zh) | 行人重识别方法、装置及电子设备 | |
CN112084353A (zh) | 一种快速陆标-卷积特征匹配的词袋模型方法 | |
CN117280338A (zh) | 细粒度视觉内容搜索平台 | |
CN109885716B (zh) | 基于异质多任务学习深度监督离散哈希的图像检索方法 | |
CN114020948A (zh) | 基于排序聚类序列辨别选择的草图图像检索方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |