CN117218356A - 图像识别方法及装置 - Google Patents
图像识别方法及装置 Download PDFInfo
- Publication number
- CN117218356A CN117218356A CN202210617217.1A CN202210617217A CN117218356A CN 117218356 A CN117218356 A CN 117218356A CN 202210617217 A CN202210617217 A CN 202210617217A CN 117218356 A CN117218356 A CN 117218356A
- Authority
- CN
- China
- Prior art keywords
- image
- sample
- feature
- similarity
- vector
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 239000013598 vector Substances 0.000 claims abstract description 244
- 238000012545 processing Methods 0.000 claims abstract description 20
- 238000012549 training Methods 0.000 claims description 79
- 238000000605 extraction Methods 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 24
- 238000012937 correction Methods 0.000 claims description 20
- 230000009467 reduction Effects 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000004590 computer program Methods 0.000 description 22
- 238000003860 storage Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000013527 convolutional neural network Methods 0.000 description 10
- 230000001960 triggered effect Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000013138 pruning Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013434 data augmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000013535 sea water Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 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
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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
-
- 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/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Library & Information Science (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例提供了一种图像识别方法及装置,涉及图像处理技术领域。其中,该方法包括:获取待识别图像;对所述待识别图像进行图像特征提取,得到第一特征向量;在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和所述第一特征向量的相似度满足相似条件的样本图像,所述第二特征向量用于表示所述样本图像的图像特征;根据查找到的样本图像所对应的样本类别,确定所述待识别图像的目标类别。本申请实施例能够解决相关技术中存在的识别准确率不高、不稳健、泛化性能不佳的问题。
Description
技术领域
本申请涉及图像处理技术领域,具体而言,本申请涉及一种图像识别方法及装置。
背景技术
图像识别是计算机视觉领域中的一个重要的研究课题,已被广泛应用在众多领域。例如,面向海洋环境中的浮游生物的图像识别,以实现对该浮游生物长期、连续的原位观测。
目前,图像识别通常是利用训练集训练卷积神经网络模型,再根据该卷积神经网络模型对待识别图像进行类别预测,以得到待识别图像的目标类别。在基于图像分类的上述图像识别方案中,需要不断地更新训练集,进而使得卷积神经网络模型也随之开展较为频繁地重训练,方能够维持基于该卷积神经网络模型所进行的图像识别的识别性能。
然而,训练集的更新依赖于大量的人工标注和人工校正,由此,如何在减少人工参与的前提下,提高识别准确率、稳健性,进而保证泛化性能是尚待解决的问题。
发明内容
本申请各实施例提供了一种图像识别方法、装置、电子设备及存储介质,可以解决相关技术中存在的识别准确率不高、不稳健、泛化性能不佳的问题。所述技术方案如下:
根据本申请实施例的一个方面,一种图像识别方法,包括:获取待识别图像;对所述待识别图像进行图像特征提取,得到第一特征向量;在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和所述第一特征向量的相似度满足相似条件的样本图像,所述第二特征向量用于表示所述样本图像的图像特征;根据查找到的样本图像所对应的样本类别,确定所述待识别图像的目标类别。
根据本申请实施例的一个方面,一种图像识别装置,包括:图像获取模块,用于获取待识别图像;特征提取模块,用于对所述待识别图像进行图像特征提取,得到第一特征向量;图像查找模块,用于在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和所述第一特征向量的相似度满足相似条件的样本图像,所述第二特征向量用于表示所述样本图像的图像特征;图像识别模块,用于根据查找到的样本图像所对应的样本类别,确定所述待识别图像的目标类别。
在一示例性实施例中,所述特征提取模块包括:提取器单元,用于利用完成模型训练的特征提取器,将所述待识别图像转换为所述第一特征向量。
在一示例性实施例中,所述装置还包括:模型训练模块,用于根据训练集中的图像对,对基础模型进行模型训练,得到所述特征提取器,所述基础模型包括第一训练分支和第二训练分支,所述第一训练分支和所述第二训练分支分别包括特征提取层和降维层;所述模型训练模块包括:图像遍历单元,用于对所述训练集中的图像对进行遍历,所述图像对包括正样本对和负样本对,所述正样本对中的两个样本图像属于相同的样本类别,所述负样本对中的两个样本图像属于不同的样本类别;所述遍历包括:将所述图像对中的两个样本图像,分别输入所述第一训练分支和所述第二训练分支进行处理;根据所述第一训练分支和所述第二训练分支得到的处理结果,计算模型损失值;收敛单元,用于若所述模型损失值使得收敛条件被满足,则由所述基础模型中的特征提取层收敛得到所述特征提取器。
在一示例性实施例中,所述装置还包括:图像对构建模块;所述图像对构建模块包括:扩增单元,用于对所述训练集中的其中一个样本图像,至少进行两次不同的图像数据增强处理,则由所述样本图像至少扩增得到第一增强图像和第二增强图像;配对单元,用于对由所述训练集中各样本图像扩增得到的第一增强图像和第二增强图像,进行图像配对处理,得到所述图像对。
在一示例性实施例中,所述图像查找模块包括:相似度计算单元,用于针对特征向量集合中的每一个第二特征向量,分别计算所述第二特征向量和所述第一特征向量的相似度,所述特征向量集合由所述检索库中样本图像的第二特征向量构建;图像查找单元,用于将所述第二特征向量和所述第一特征向量的相似度最高的样本图像,作为从所述检索库中查找到的样本图像。
在一示例性实施例中,所述装置还包括:集合构建模块,用于由所述检索库中样本图像的第二特征向量构建所述特征向量集合;所述集合构建模块包:向量添加单元,用于对所述检索库中的每一个样本图像进行图像特征提取,分别得到所述检索库中各样本图像的第二特征向量,并添加至所述特征向量集合;向量遍历单元,用于对所述特征向量集合中的第二特征向量进行遍历,以遍历到的第二特征向量作为第一向量,分别计算所述第一向量和所述特征向量集合中其余第二特征向量的相似度,得到第一相似度;向量删除单元,用于基于所述第一相似度,从所述特征向量集合中删除冗余度高的第二特征向量,所述冗余度用于指示在所述特征向量集合中存在相似的第二特征向量的个数。
在一示例性实施例中,所述向量删除单元包括:向量确定子单元,用于将与所述第一向量的第一相似度大于第一设定阈值的第二特征向量,作为第二向量;相似度计算子单元,用于分别计算所述第二向量和所述特征向量集合中其余第二特征向量的相似度,得到第二相似度;冗余度计算子单元,用于根据与所述第一向量的第一相似度大于第一设定阈值的第二特征向量的个数,确定所述第一向量的冗余度,并根据与所述第二向量的第二相似度大于第二设定阈值的第二特征向量的个数,确定所述第二向量的冗余度;删除子单元,用于若所述第一向量的冗余度大于所述第二向量的冗余度,则将所述第一向量从所述特征向量集合中删除。
在一示例性实施例中,所述图像识别模块包括:图像识别单元,用于若查找到的样本图像的第二特征向量满足决策条件,则将查找到的样本图像所对应的样本类别,作为所述待识别图像的目标类别。
在一示例性实施例中,所述装置还包括:新类别校正模块,用于响应于类别校正指令,对所述待识别图像的目标类别进行校正;新类别添加模块,用于在所述待识别图像校正后的目标类别为新类别的情况下,响应于类别添加指令,将所述待识别图像及其校正后的目标类别添加至所述检索库,所述新类别是指所述待识别图像校正后的目标类别区别于所述检索库中的样本类别。
根据本申请实施例的一个方面,一种电子设备,包括:至少一个处理器、至少一个存储器、以及至少一条通信总线,其中,存储器上存储有计算机程序,处理器通过通信总线读取存储器中的计算机程序;计算机程序被处理器执行时实现如上所述的图像识别方法。
根据本申请实施例的一个方面,一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上所述的图像识别方法。
根据本申请实施例的一个方面,一种计算机程序产品,计算机程序产品包括计算机程序,计算机程序存储在存储介质中,电子设备的处理器从存储介质读取计算机程序,处理器执行计算机程序,使得电子设备执行时实现如上所述的图像识别方法。
本申请提供的技术方案带来的有益效果是:
在上述技术方案中,基于待识别图像的第一特征向量,在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和第一特征向量的相似度满足相似条件的样本图像,进而根据查找到的样本图像所对应的样本类别,确定待识别图像的目标类别,由此,实现图像检索替代图像分类的图像识别方案,由于图像检索的识别准确率取决于检索库中的样本图像及其对应的样本类别,而不同于图像分类依赖于训练集的频繁变动以及卷积神经网络模型的重训练,从而能够在尽量减少人工参与的前提下充分地提高识别准确率、稳健性,并充分地保证泛化性能,进而能够有效地解决相关技术中存在的识别准确率不高、不稳健、泛化性能不佳的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1是根据本申请所涉及的实施环境的示意图;
图2是根据一示例性实施例示出的一种图像识别方法的流程图;
图3是根据一示例性实施例示出的待识别图像为ROI图像的示意图;
图4是根据一示例性实施例示出的基础模型的结构示意图;
图5是根据一示例性实施例示出的特征提取层的结构示意图;
图6是根据一示例性实施例示出的特征提取层的模型训练过程的方法流程图;
图7是根据一示例性实施例示出的图像配对过程的示意图;
图8a是根据一示例性实施例示出的特征向量集合的构建过程的方法流程图;
图8b是图8a对应实施例所涉及的步骤550在一个实施例中的方法流程图;
图9是根据一示例性实施例示出的另一种图像识别方法的流程图;
图10是根据一示例性实施例示出的基于图像检索的图像识别框架的示意图;
图11是根据一示例性实施例示出的一种图像识别装置的结构框图;
图12是根据一示例性实施例示出的一种电子设备的硬件结构图;
图13是根据一示例性实施例示出的一种电子设备的结构框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
如前所述,在基于图像分类的图像识别方案中,需要不断地更新训练集,进而使得卷积神经网络模型也随之开展较为频繁地重训练,方能够维持基于该卷积神经网络模型所进行的图像识别的识别性能。
以面向海洋环境中的浮游生物的图像识别为例,由于自然海水环境的不断变化,必然造成了其中浮游生物类别和丰度的不断变化,并且在同一海域不同时间定点采样浮游生物,会随着浮游生物的日间垂直迁徙发生剧变,而出现数据漂移现象,进而在对浮游生物进行图像识别过程中,为了保证数据分布的均衡和稳定,需要训练集的频繁变动以及卷积神经网络模型的重训练,才能够在浮游生物类别和丰度不断变化的背景下维持图像识别的识别性能。然而,训练集的更新,一方面,依赖于大量的人工标注和人工校正,另一方面,在有限时空尺度和分辨率下采样图像而构建的训练集,始终难以全面如实地反映真实海洋环境中的浮游生物,这些都必然影响图像识别的识别准确率,无法满足海洋环境中浮游生物实时观测的需求。
由上可知,相关技术中仍存在识别准确率不高、不稳健、泛化性能不佳的局限性。
为此,本申请提供的图像识别方法,能够有效地提高识别准确率、稳健性,并充分地保证泛化性能,相应地,该图像识别方法适用于图像识别装置,该图像识别装置可部署于配置了冯诺依曼体系结构的电子设备,例如,该电子设备可以是台式电脑、笔记本电脑、服务器等等。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1为一种图像识别方法所涉及的一种实施环境的示意图。需要说明的是,该种实施环境只是一个适配于本发明的示例,不能认为是提供了对本发明的使用范围的任何限制。
该实施环境包括采集端110和服务端130。
具体地,采集端110,也可以认为是图像采集设备,包括但不限于摄像头、相机、摄录机等具有拍摄功能的电子设备。例如,采集端110为水下相机。
服务端130,该服务端130可以是台式电脑、笔记本电脑、服务器等等电子设备,还可以是由多台服务器构成的计算机集群,甚至是由多台服务器构成的云计算中心。其中,服务端130用于提供后台服务,例如,后台服务包括但不限于图像识别服务等等。
服务端130与采集端110之间通过有线或者无线等方式预先建立网络通信连接,并通过该网络通信连接实现服务端130与采集端110之间的数据传输。传输的数据包括但不限于:待识别图像等等。
在一应用场景中,通过采集端110与服务端130的交互,采集端110拍摄并采集得到待识别图像,并将该待识别图像上传至服务端130,以请求服务端130提供图像识别服务。
对于服务端130而言,在接收到采集端110上传的待识别图像之后,便调用图像识别服务,以便于在存储了样本图像及其对应的样本类别的检索库中,查找与待识别图像相似的样本图像,进而根据查找到的样本图像所对应的样本类别,确定待识别图像的目标类别,从而实现图像检索替代图像分类的图像识别方案,以此来解决相关技术中存在的识别准确率不高、不稳健、泛化性能不佳的问题。
请参阅图2,本申请实施例提供了一种图像识别方法,该方法适用于电子设备,该电子设备具体可以是图1所示出实施环境中的服务端130。
以该方法各步骤的执行主体为电子设备为例进行说明,但是并非对此构成具体限定。
如图2所示,该方法可以包括以下步骤:
步骤310,获取待识别图像。
其中,待识别图像是由图1所示出实施环境中的图像采集设备,对包含目标对象的环境进行拍摄并采集生成的。目标对象指的是拍摄环境中的对象,例如,目标对象可以是水下生物,该水下生物具体可以是海洋环境中的浮游生物。
可以理解,拍摄可以是单次拍摄,还可以是连续性拍摄,那么,针对同一个目标对象,对于连续性拍摄而言,可以得到一段视频,则待识别图像可以是该视频中的任意若干帧画面,而就多次拍摄来说,可以得到多张照片,则待识别图像可以是该多张照片中的任意若干张照片。也就是说,本实施例中的待识别图像可以是指动态图像,例如一段视频中的多帧画面、或者多张照片,还可以是指静态图像,例如一段视频中的任意一帧画面、或者多张照片中的任意一张照片,相应地,本实施例中的图像识别可以针对动态图像进行,还可以是针对静态图像进行,此处并未加以限定。
关于待识别图像的获取,待识别图像可以来源于图像采集设备实时拍摄并采集的待识别图像,也可以是预先存储于电子设备的一历史时间段由图像采集设备拍摄并采集的待识别图像。那么,对于电子设备而言,在图像采集设备拍摄并采集得到待识别图像之后,可以实时处理待识别图像,还可以预先存储了再处理,例如,在电子设备的CPU低的时候处理待识别图像,或者,根据工作人员的指示处理待识别图像。由此,本实施例中的图像识别可以针对实时获取到的待识别图像,也可以针对历史时间段获取到的待识别图像,在此并未进行具体限定。
在一种可能的实现方式,待识别图像为ROI(region of interest,感兴趣区域)图像,也就是说,在待识别图像中,目标对象位于感兴趣区域,也可以理解为,目标对象通过感兴趣区域标识,显著区别于背景区域。如图3所示,在ROI图像中,目标对象为浮游生物,位于感兴趣区域(灰白区域),显著区别于背景区域(黑色区域)。
步骤330,对待识别图像进行图像特征提取,得到第一特征向量。
其中,第一特征向量用于表示样本图像的图像特征,也可以认为是,第一特征向量是对待识别图像的图像特征的准确描述,应当理解,待识别图像不同,提取得到的图像特征将有所区别,相应地,第一特征向量也各不相同。
在一种可能的实现方式,图像特征的提取可以通过方向梯度直方图特征、局部二值模式特征、哈尔(Haar-like)特征等的特征提取算法实现。
在一种可能的实现方式,图像特征的提取是通过卷积核实现的。应当说明的是,基于不同数量和不同尺寸的卷积核,将得到不同长度的第一特征向量,以从不同尺度上反映待识别图像。
在一种可能的实现方式,图像特征的提取是通过特征提取器实现的,具体地,利用完成模型训练的特征提取器,将待识别图像转换为第一特征向量。
步骤350,在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和第一特征向量的相似度满足相似条件的样本图像。
首先说明的是,检索库,实质是建立了样本图像及其对应的样本类别的对应关系,通过建立的该对应关系,便能够快速地确定样本对象对应的样本类别,进而作为图像检索的依据。在一种可能的实现方式,样本图像是指标注了样本类别的图像,换而言之,样本图像是指携带了用于指示样本类别的标签的图像。
图像检索,实质是对待识别图像与检索库中样本图像之间的相似性进行度量,而基于图像检索的图像识别,并不是直接得到待识别图像的目标类别,而是通过比较待识别图像与检索库中样本图像之间的相似性,间接地得到待识别图像的目标类别,即先得到与待识别图像之间的相似性满足相似条件的样本图像对应的样本类别,再由此得到待识别图像的目标类别。
其次,本实施例中,待识别图像与检索库中样本图像之间的相似性的比较,是通过计算第一特征向量与第二特征向量的相似度实现的。其中,第一特征向量用于表示待识别图像的图像特征,第二特征向量用于表示检索库中样本图像的图像特征。
在一种可能的实现方式,相似度的计算方案包括但不限于:余弦相似度、欧式距离、曼哈顿距离、杰卡德相似系数、皮尔逊相关系数等等。
以余弦相似度举例说明相似度的计算过程:
在计算公式(1)中,Similarity(x,y)表示x和y的相似度,该相似度的取值范围为[0,1];x表示待识别图像的第一特征向量,y表示样本图像的第二特征向量。应当理解,相似度越接近1,表示第一特征向量和第二特征向量越接近,亦即是表示待识别图像和样本图像越相似。
值得一提的是,如前所述,待识别图像不限于静态图像,例如一张照片或者一帧画面,还可以是动态图像,若待识别图像是指动态图像,例如多张照片或者多帧画面,则可以结合计算公式(1)和计算公式(2),同时计算多个相似度。
V=Q×GT (2)。
其中,V表示相似度结果矩阵,Q表示待识别图像的第一特征向量矩阵,G表示检索库中各样本图像的第二特征向量矩阵。
基于此,在相似度结果矩阵V中,第i行各列数值表示:待识别图像中第i张照片或者第i帧画面的第一特征向量、和检索库中各样本图像的第二特征向量的相似度,此种方式下,不仅极大地提高了相似度计算效率,而且实现了多照片/多画面同时识别,有利于待识别图像的批量处理,能够有效地提高识别效率。
在一种可能的实现方式,相似条件是指相似度最高,由此,将第二特征向量和第一特征向量的相似度最高的样本图像,作为从检索库中查找到的样本图像。当然,在其他实施例中,相似条件还可以是指相似度超过相似度阈值(例如相似度阈值=0.8),或者,相似度排名超过设定排名(例如设定排名为10名)等等,那么,将第二特征向量和第一特征向量的相似度大于0.8的样本图像,或者,将第二特征向量和第一特征向量的相似度排在前10名的样本图像,作为从检索库中查找到的样本图像。
在一种可能的实现方式,第二特征向量预先计算并存储于电子设备的存储区,此种方式下,面对不同的待识别图像进行图像识别时,可以直接从电子设备的存储区中读取提前计算的第二特征向量,避免每一次图像识别过程中重复的第二特征向量提取,从而有利于进一步地提高图像识别的识别效率。
在一种可能的实现方式,第二特征向量以LUT(Look-up Table,查找表)方式存储于电子设备的存储区,那么,图像识别过程中,LUT能够直接加载至电子设备的内存,以此来避免第二特征向量在每一次图像识别过程中的重复提取。
上述过程,尤其适用于分布外样本的图像识别,例如,对于训练阶段未参与训练的新类别,基于图像分类的图像识别方案,不仅影响分类的正确率,还会导致丰度定量的不准确,而基于图像检索的图像识别方案,通过相似度计算,能够较为精准地排除分布外样本,进而有效地保障图像识别的识别精度。
步骤370,根据查找到的样本图像所对应的样本类别,确定待识别图像的目标类别。
也就是说,查找到的样本图像所对应的样本类别,是对待识别图像进行图像识别得到的识别结果,即待识别图像的目标类别。
发明人意识到,待识别图像的目标类别可能是一种新类别,即并不属于检索库中各样本图像对应的任意一种样本类别,也可以理解为,待识别图像的目标类别是未知类别,此时,根据查找到的样本图像所对应的样本类别,实际上并无法正确地得到待识别图像的目标类别。
基于此,为了避免图像识别错误,本实施例中,提出一种决策条件,以拒绝对未知类别的识别,从而避免识别错误。
在一种可能的实现方式,决策条件是指待识别图像与查找到的样本图像的相似度大于相似度阈值。那么,基于该决策条件的类别决策过程具体是指:若查找到的样本图像的第二特征向量和待识别图像的第一特征向量的相似度大于相似度阈值,则将查找到的样本图像所对应的样本类别,作为待识别图像的目标类别;否则,确定待识别图像的目标类别为新类别。
当然,在其他实施例中,决策条件还可以与查找到的样本图像所配置的权重有关,此处并非构成具体限定。
通过上述过程,实现图像检索替代图像分类的图像识别方案,由于图像检索的识别准确率取决于检索库中的样本图像及其对应的样本类别,而不同于图像分类依赖于训练集的频繁变动以及卷积神经网络模型的重训练,从而能够在尽量减少人工参与的前提下充分地保证识别准确率,进而能够有效地解决相关技术中存在的识别准确率不高、不稳健、泛化性能不佳的问题。
图4示出了一个实施例中基础模型的结构示意图,在图4中,基础模型包括第一训练分支和第二训练分支,第一训练分支和第二训练分支分别包括特征提取层和降维层。其中,特征提取层可以认为是未完成模型训练的特征提取器,用于图像特征的提取;降维层由两层全连接层组成,用于对特征提取层得到的特征向量进一步降维,例如,将特征提取层得到的长度为2048的特征向量转换为长度为128的特征向量。
图5示出了一个实施例中特征提取层的结构示意图,在图5中,特征提取层是具有50层结构深度且不包含全连接层的卷积神经网络模型。如图5所示,在50层结构中,除了卷积层Conv、池化层Pool、激活函数层ReLU、还以ResNeXt模块为基础,同时引入SE(Squeeze-and-Excitation)注意力模块,不仅使得基于该特征提取层得到的特征向量具有很强的抽象表达能力,而且在注意力机制的辅助下能够聚焦图像中对识别起主要作用的部分,例如,ROI图像中的感兴趣区域,从而充分地保证了图像特征能够更有效地被提取。
现结合图4至图7,对特征提取层的模型训练过程,即根据训练集中的图像对,对基础模型进行模型训练,得到特征提取器,进行以下详细地说明:
请参阅图6,在一示例性实施例中,模型训练过程可以包括以下步骤:
步骤410,对训练集中的图像对进行遍历。
其中,图像对包括正样本对和负样本对,正样本对中的两个样本图像属于相同的样本类别,负样本对中的两个样本图像属于不同的样本类别。
在此说明的是,图像对的构建过程:
如图7所示,对训练集中的其中一个样本图像701,至少进行两次不同的图像数据增强处理,则由样本图像701至少扩增得到第一增强图像7011和第二增强图像7012。其中,图像数据增强处理(Image Data Augmentation)包括但不限于:随机裁剪、旋转、翻转、灰度化、亮度调整、对比度调整、饱和度调整等等,此处并未加以限定。
对由训练集中各样本图像扩增得到的第一增强图像和第二增强图像,进行图像配对处理,得到图像对。
举例来说,假设训练集中样本图像包括701、702,相应地,由样本图像701扩增得到的第一增强图像和第二增强图像分别是7011、7012,由样本图像702扩增得到的第一增强图像和第二增强图像分别是7021、7022。
那么,经过图像配对处理后,构建得到的图像对包括{7011、7012}、{7011、7021}、{7011、7022}、{7012、7021}、{7012、7022}、{7021、7022}。其中,在上述图像对中,{7011、7012}、{7021、7022}属于正样本对,{7011、7021}、{7011、7022}、{7012、7021}、{7012、7022}属于负样本对。
那么,针对训练集中图像对进行的遍历过程,可以包括以下步骤:
步骤411,将图像对中的两个样本图像,分别输入第一训练分支和第二训练分支进行处理。
如图4所示,在一种可能的实现方式,在第一训练分支或者第二训练分支中,处理至少包括:通过特征提取层进行图像特征的提取、通过降维层进行特征向量的降维等。
值得一提的是,为了避免发生畸变,样本图像在输入第一训练分支或者第二训练分支之前,还进行了预处理。在一种可能的实现方式,预处理包括但不限于:填充、缩放、归一化等,此种方式下,由于避免了畸变的发生,有利于进一步有效地提高识别的准确率。
其中,填充、缩放等预处理,目的在于保证第一训练分支或者第二训练分支统一的输入尺寸,例如,统一的输入尺寸为224×224
归一化预处理,是指样本图像在进行编码预处理之后,根据以下计算公式(3),进行逐像素归一化。
其中,INorm表示样本图像中完成归一化处理的像素,I表示样本图像中待处理的像素;
mean和std分别表示训练集中全部样本图像中全部像素的像素均值和像素标准差。
步骤413,根据第一训练分支和第二训练分支得到的处理结果,计算模型损失值。
在一种可能的实现方式,模型损失值的计算公式(4)如下:
其中,Lsup表示模型损失值;
I表示训练集中所有样本图像的集合;P(i)表示训练集中排除了第i个样本图像所属的正样本对的集合;A(i)表示训练集中排除了第i个样本图像的所有样本图像的集合;
|P(i)|表示集合P(i)中样本图像的个数;
zi是集合I中第i个样本图像的特征向量;zp是集合P(i)中第p个样本图像的特征向量;zα是集合A(i)中第α个样本图像的特征向量;τ是温度超参数,用于平衡损失函数分别对正样本对与负样本对的关注程度。
若模型损失值使得收敛条件被满足,则执行步骤430。
否则,若模型损失值使得收敛条件未满足,则执行步骤415。
需要说明的是,收敛条件,可以是指模型损失值最小或者低于损失值阈值,还可以是指迭代次数满足迭代阈值,此处并未加以限定,可以根据应用场景的实际需要灵活地设置。
步骤415,更新基础模型的参数,并返回执行步骤410。
步骤430,由基础模型中的特征提取层收敛得到特征提取器。
由此,特征提取层的有监督对比学习式的模型训练完成,从而使得特征提取器具备在特征空间上拉近正样本对中两个样本图像、推远负样本对中两个样本图像的效果。
值得一提的是,在模型训练完成之后,双训练分支和降维层均被丢弃,只有双训练分支中的其中一个特征提取层保留下来,作为特征提取器用于后续的图像识别,相较于图像分类中的卷积神经网络模型,模型结构大大简化,进一步避免依赖于训练集的频繁变动来维持识别性能,更加有利于提高识别准确率。
在一示例性实施例中,上述方法还可以包括以下步骤:由检索库中样本图像的第二特征向量构建特征向量集合。
在一种可能的实现方式,特征向量集合为LUT。
如前所述,第二特征向量可以通过LUT方式存储于电子设备的存储区,以此来避免第二特征向量在每一次图像识别过程中的重复提取,从而有利于提高图像识别的识别效率。然而,发明人也意识到,随着检索库中样本图像数量的增多,LUT中预先计算的第二特征向量的数量也随之增多,由于需要计算第一特征向量和LUT中每一个第二特征向量的相似度,那么,LUT中第二特征向量的数量将影响相似度计算速度,从而影响图像识别的识别效率。
为此,本实施例中,提出一种特征向量集合的构建过程,以此实现LUT剪枝,既能够缩小LUT规模,即减少LUT中第二特征向量的数量,又能够尽量保持LUT中第二特征向量的多样性。
具体地,如图8a所示,特征向量集合的构建过程可以包括以下步骤:
步骤510,对检索库中的每一个样本图像进行图像特征提取,分别得到检索库中各样本图像的第二特征向量,并添加至特征向量集合。
步骤530,对特征向量集合中的第二特征向量进行遍历,以遍历到的第二特征向量作为第一向量,分别计算第一向量和特征向量集合中其余第二特征向量的相似度,得到第一相似度。
步骤550,基于第一相似度,从特征向量集合中删除冗余度高的第二特征向量。
其中,第二特征向量的冗余度,用于指示该第二特征向量在特征向量集合中存在相似的第二特征向量的个数。应当理解,冗余度越高,表示该第二特征向量在特征向量集合中存在相似的第二特征向量的个数越多,那么,在特征向量集合中,可以认为该第二特征向量对应的样本图像是冗余的,则可以从特征向量集合中删除该第二特征向量。
在一种可能的实现方式,如图8b所示,LUT的剪枝过程可以包括以下步骤:
步骤551,将与第一向量的第一相似度大于第一设定阈值的第二特征向量,作为第二向量。
步骤553,分别计算第二向量和特征向量集合中其余第二特征向量的相似度,得到第二相似度。
步骤555,根据与第一向量的第一相似度大于第一设定阈值的第二特征向量的个数,确定第一向量的冗余度,并根据与第二向量的第二相似度大于第二设定阈值的第二特征向量的个数,确定第二向量的冗余度。
其中,第一向量的冗余度,用于指示第一向量在特征向量集合中存在相似的第二特征向量的个数。相似是指第一相似度大于第一设定阈值。
第二向量的冗余度,用于指示第二向量在特征向量集合中存在相似的第二特征向量的个数。相似是指第二相似度大于第一设定阈值。
步骤557,基于第二特征向量的冗余度,从特征向量集合中删除相应的第二特征向量。
其中,若第一向量的冗余度大于第二向量的冗余度,则将第一向量从特征向量集合中删除,反之,若第二向量的冗余度大于第一向量的冗余度,则将第二向量从特征向量集合中删除。
举例来说,特征向量集合中的第二特征向量分别是:A、B、C、D。
假设当前遍历到的第二特征向量为A,作为第一向量,那么,分别计算第一向量A与其余第二特征向量B、C、D的相似度,得到第一相似度:0.91、0.95、0.97。
假设第一相似度0.91、0.95、0.97均大于第一设定阈值(0.8),则将第二特征向量B、C、D作为第二向量,此时,分别计算第二向量B与其余第二特征向量A、C、D的相似度,得到第二相似度:0.91、0.7、0.97;分别计算第二向量C与其余第二特征向量A、B、D的相似度,得到第二相似度:0.95、0.97、0.75;分别计算第二向量D与其余第二特征向量A、B、C的相似度,得到第二相似度:0.97、0.75、0.77。
假设第二设定阈值也为0.8,由上可知,与第一向量A的第一相似度大于0.8的第二特征向量(B、C、D)的个数为3,与第二向量B的第二相似度大于0.8的第二特征向量(A、D)的个数为2,与第二向量C的第二相似度大于0.8的第二特征向量(A、B)的个数为2,与第二向量D的第二相似度大于0.8的第二特征向量(A)的个数为1。
假设冗余度通过个数表示,则第一向量A的冗余度为3,第二向量B的冗余度为2,第二向量C的冗余度为2,第二向量D的冗余度为1,基于此,冗余度为3的第一向量A便从特征向量集合中删除。当然,在其他实施例中,冗余度也可以通过其他形式表示,例如,基于个数的归一化方式,此处并非构成具体限定。
其中,第一设定阈值和第二设定阈值可以相同,也可以不同,二者可以根据应用场景的实际需要灵活地调整,以平衡识别效率和识别精度。例如,在识别效率要求高的应用场景中,设置较小的第一设定阈值。
在上述实施例的配合下,对于LUT中不同的第二特征向量而言,当不同的第二特征向量在特征空间上的距离小于第一设定阈值才予以保留,从而实现LUT剪枝,既能够缩小LUT规模,又能够尽量保证LUT中第二特征向量的多样性。
在一浮游生物的应用场景中,假设存在200个浮游生物类别,若每个浮游生物类别包含1000个样本图像,则检索库中包含200,000个样本图像,那么,LUT中最多包含200,000个第二特征向量,以NVIDA RTX3090 GPU中的LUT为例,待识别图像进行图像识别耗时最多为5.8ms,完全能够满足海洋环境中浮游生物实时观测的需求。
请参阅图9,在一示例性实施例中,上述方法还可以包括以下步骤:
步骤610,响应于类别校正指令,对待识别图像的目标类别进行校正。
步骤630,在待识别图像校正后的目标类别为新类别的情况下,响应于类别添加指令,将待识别图像及其校正后的目标类别添加至检索库。
其中,新类别是指待识别图像校正后的目标类别区别于检索库中的样本类别。
如前所述,在基于图像分类的图像识别方案中,图像识别的识别性能部分依赖于大量的人工标注和人工校正,由于人工参与的工作量较大和人工参与的周期较短,此种图像识别方案并不利于降低图像识别的成本,无法实现相对稳健且灵活廉价的自动图像识别方案。
为此,本实施例中,在基于图像检索的图像识别方案中,提供人机交互接口,从而有助于及时发现和纠正图像识别的偏差,以充分地保证图像识别的识别性能。
具体地,图10示出了一个实施例中基于图像检索的图像识别框架的示意图。在图10中,该图像识别框架包括:用于获取待识别图像的查询图像模块(query)801、用于存储样本图像及其对应的样本类别的检索库(gallery)802、用于进行图像特征提取的特征提取器803、用于存储第二特征向量的LUT804、用于计算第一特征向量和第二特征向量的相似度的度量模块805、用于确定待识别图像的目标类别的决策模块806、人机交互接口。
如图10所示,人机交互接口包括校正接口807和添加接口808。校正接口807用于生成类别校正指令,以便于对待识别图像的目标类别进行校正;添加接口808用于生成类别添加指令,以便于将待识别图像及其校正后的目标类别添加至检索库。
假设电子设备为提供识别结果浏览的智能手机,该智能手机中,显示用于识别结果浏览的浏览页面,该浏览页面中显示校正接口和添加接口。应当说明的是,校正接口和添加接口实质是可实现人机交互的控件,例如,该控件可以是输入框、选择框、按钮、开关、进度条等等。
那么,若用户发现待识别图像的目标类别为新类别,便能够在校正接口触发相应操作,对于校正接口来说,若检测到用户触发的相应操作,则生成类别校正指令,以此指示电子设备响应于该类别校正指令而对待识别图像的目标类别进行校正,例如,校正接口为一可供用户输入新类别名称的输入框,用户的输入操作视为用户在校正接口触发的相应操作;同理,在待识别图像校正后的目标类别为新类别的情况下,用户还能够在添加接口触发相应操作,对于添加接口来说,若检测到用户触发的相应操作,则生成类别添加指令,以此指示电子设备响应于该类别添加指令而将待识别图像及其校正后的目标类别添加至检索库,例如,添加接口为一可供用户点击的“确认/取消”按钮,用户的点击操作视为用户在添加接口触发的相应操作。
补充说明的是,根据电子设备所配置的输入组件的不同,用户触发的相应操作的具体行为会有所区别。例如,电子设备为配置触控屏的智能手机,则触发的相应操作可以是点击、触摸、滑动等手势操作;或者,电子设备为配置鼠标的笔记本电脑,则触发的相应操作可以是单击、双击、拖拽等机械操作,本实施例并非对此构成具体限定。
在上述实施例的作用下,将有效的监督引入图像识别,一方面,有助于及时发现和纠正图像识别的偏差,以充分地保证图像识别的识别性能,另一方面,能够有效地增强检索库中样本图像的多样性,不仅避免因数据漂移造成识别效果下降,进而能够有效地改善图像识别的识别效果,而且多样性丰富的检索库使得特征空间的更多区域能够被样本图像构成的点群所覆盖,使得待识别图像在落入该区域时对应的目标类别能够被更加准确地被识别,进而有利于提升识别精度。
此外,基于图像检索的图像识别框架,具备“通过检索库中新类别的添加,便能够立刻将待识别图像的目标类别识别为新类别”的特性,使得重训练对于该图像识别框架而言并非总是必须的,从而有助于延缓对重训练的需求,并降低重训练的频次,为图像识别提供了更多的方便和更大的灵活性。
下述为本申请装置实施例,可以用于执行本申请所涉及的图像识别方法。对于本申请装置实施例中未披露的细节,请参照本申请所涉及的图像识别方法的方法实施例。
请参阅图11,本申请实施例中提供了一种图像识别装置900,包括但不限于:图像获取模块910、特征提取模块930、图像查找模块950、以及图像识别模块970。
其中,图像获取模块910,用于获取待识别图像。
特征提取模块930,用于对待识别图像进行图像特征提取,得到第一特征向量。
图像查找模块950,用于在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和第一特征向量的相似度满足相似条件的样本图像,第二特征向量用于表示样本图像的图像特征。
图像识别模块970,用于根据查找到的样本图像所对应的样本类别,确定待识别图像的目标类别。
需要说明的是,上述实施例所提供的图像识别装置在进行图像处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即图像识别装置的内部结构将划分为不同的功能模块,以完成以上描述的全部或者部分功能。
另外,上述实施例所提供的图像识别装置与图像识别方法的实施例属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
图12根据一示例性实施例示出的一种电子设备的结构示意。该电子设备适用于图1所示出实施环境中的服务端130。
需要说明的是,该电子设备只是一个适配于本申请的示例,不能认为是提供了对本申请的使用范围的任何限制。该电子设备也不能解释为需要依赖于或者必须具有图12示出的示例性的电子设备2000中的一个或者多个组件。
电子设备2000的硬件结构可因配置或者性能的不同而产生较大的差异,如图12所示,电子设备2000包括:电源210、接口230、至少一存储器250、以及至少一中央处理器(CPU,Central Processing Units)270。
具体地,电源210用于为电子设备2000上的各硬件设备提供工作电压。
接口230包括至少一有线或无线网络接口,用于与外部设备交互。例如,进行图1所示出实施环境中采集端110与服务端130之间的交互。
当然,在其余本申请适配的示例中,接口230还可以进一步包括至少一串并转换接口233、至少一输入输出接口235以及至少一USB接口237等,如图12所示,在此并非对此构成具体限定。
存储器250作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统251、应用程序253及数据255等,存储方式可以是短暂存储或者永久存储。
其中,操作系统251用于管理与控制电子设备2000上的各硬件设备以及应用程序253,以实现中央处理器270对存储器250中海量数据255的运算与处理,其可以是WindowsServerTM、Mac OS XTM、UnixTM、LinuxTM、FreeBSDTM等。
应用程序253是基于操作系统251之上完成至少一项特定工作的计算机程序,其可以包括至少一模块(图12中未示出),每个模块都可以分别包含有对电子设备2000的计算机程序。例如,图像识别装置可视为部署于电子设备2000的应用程序253。
数据255可以是存储于磁盘中的照片、图片等,还可以是待识别图像等等,存储于存储器250中。
中央处理器270可以包括一个或多个以上的处理器,并设置为通过至少一通信总线与存储器250通信,以读取存储器250中存储的计算机程序,进而实现对存储器250中海量数据255的运算与处理。例如,通过中央处理器270读取存储器250中存储的一系列计算机程序的形式来完成图像识别方法。
此外,通过硬件电路或者硬件电路结合软件也能同样实现本申请,因此,实现本申请并不限于任何特定硬件电路、软件以及两者的组合。
请参阅图13,本申请实施例中提供了一种电子设备4000,该电子设备400可以包括:台式电脑、笔记本电脑、电子设备等等。
在图13中,该电子设备4000包括至少一个处理器4001、至少一条通信总线4002以及至少一个存储器4003。
其中,处理器4001和存储器4003相连,如通过通信总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
通信总线4002可包括一通路,在上述组件之间传送信息。通信总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。通信总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器4003上存储有计算机程序,处理器4001通过通信总线4002读取存储器4003中存储的计算机程序。
该计算机程序被处理器4001执行时实现上述各实施例中的图像识别方法。
此外,本申请实施例中提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述各实施例中的图像识别方法。
本申请实施例中提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在存储介质中。电子设备的处理器从存储介质读取该计算机程序,处理器执行该计算机程序,使得该电子设备执行上述各实施例中的图像识别方法。
与相关技术相比,基于图像检索的图像识别框架,在检索库中样本图像良好的图像质量的前提下,通过有监督对比学习带来的强大的图像特征表示,使得特征空间上属于相同类别的正例聚拢、属于不同类别的负例远离,不仅避免依赖于模型的重训练,能够有效地提高图像识别的识别效率,而且充分地保证了图像识别的识别精度。
此外,图像识别框架中的检索库,不仅适用于重训练,而且适用于用户调整,有利于灵活定制化地服务不同属性和空间的识别任务。例如,面向多样性的生物的识别任务,检索库中样本图像尽量扩大样本类别的数量,以使图像识别能力能够兼顾多样性;面向某具体海域的浮游生物的识别任务,检索库中样本图像可以限定样本类别,即排除不可能出现的样本类别,既能够减少相似度计算的计算量,又能够避免待识别图像被误识别为不可能出现的样本类别,间接地保证了图像识别的识别性能;面向数量有限的感兴趣生物的识别任务,可进一步缩小检索库规模,使其仅包含感兴趣的样本类别。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种图像识别方法,其特征在于,所述方法包括:
获取待识别图像;
对所述待识别图像进行图像特征提取,得到第一特征向量;
在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和所述第一特征向量的相似度满足相似条件的样本图像,所述第二特征向量用于表示所述样本图像的图像特征;
根据查找到的样本图像所对应的样本类别,确定所述待识别图像的目标类别。
2.如权利要求1所述的方法,其特征在于,所述对所述待识别图像进行图像特征提取,得到第一特征向量,包括:
利用完成模型训练的特征提取器,将所述待识别图像转换为所述第一特征向量。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:根据训练集中的图像对,对基础模型进行模型训练,得到所述特征提取器,所述基础模型包括第一训练分支和第二训练分支,所述第一训练分支和所述第二训练分支分别包括特征提取层和降维层;
所述根据训练集中的图像对,对基础模型进行模型训练,得到所述特征提取器,包括:
对所述训练集中的图像对进行遍历,所述图像对包括正样本对和负样本对,所述正样本对中的两个样本图像属于相同的样本类别,所述负样本对中的两个样本图像属于不同的样本类别;所述遍历包括:
将所述图像对中的两个样本图像,分别输入所述第一训练分支和所述第二训练分支进行处理;
根据所述第一训练分支和所述第二训练分支得到的处理结果,计算模型损失值;
若所述模型损失值使得收敛条件被满足,则由所述基础模型中的特征提取层收敛得到所述特征提取器。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:在所述训练集中构建所述图像对;
所述在所述训练集中构建所述图像对,包括:
对所述训练集中的其中一个样本图像,至少进行两次不同的图像数据增强处理,则由所述样本图像至少扩增得到第一增强图像和第二增强图像;
对由所述训练集中各样本图像扩增得到的第一增强图像和第二增强图像,进行图像配对处理,得到所述图像对。
5.如权利要求1所述的方法,其特征在于,所述在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和所述第一特征向量的相似度满足相似条件的样本图像,包括:
针对特征向量集合中的每一个第二特征向量,分别计算所述第二特征向量和所述第一特征向量的相似度,所述特征向量集合由所述检索库中样本图像的第二特征向量构建;
将所述第二特征向量和所述第一特征向量的相似度最高的样本图像,作为从所述检索库中查找到的样本图像。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:由所述检索库中样本图像的第二特征向量构建所述特征向量集合;
所述由所述检索库中样本图像的第二特征向量构建所述特征向量集合,包括:
对所述检索库中的每一个样本图像进行图像特征提取,分别得到所述检索库中各样本图像的第二特征向量,并添加至所述特征向量集合;
对所述特征向量集合中的第二特征向量进行遍历,以遍历到的第二特征向量作为第一向量,分别计算所述第一向量和所述特征向量集合中其余第二特征向量的相似度,得到第一相似度;
基于所述第一相似度,从所述特征向量集合中删除冗余度高的第二特征向量,所述冗余度用于指示在所述特征向量集合中存在相似的第二特征向量的个数。
7.如权利要求6所述的方法,其特征在于,所述根据所述第一相似度,从所述特征向量集合中删除冗余度高的第二特征向量,包括:
将与所述第一向量的第一相似度大于第一设定阈值的第二特征向量,作为第二向量;
分别计算所述第二向量和所述特征向量集合中其余第二特征向量的相似度,得到第二相似度;
根据与所述第一向量的第一相似度大于第一设定阈值的第二特征向量的个数,确定所述第一向量的冗余度,并根据与所述第二向量的第二相似度大于第二设定阈值的第二特征向量的个数,确定所述第二向量的冗余度;
若所述第一向量的冗余度大于所述第二向量的冗余度,则将所述第一向量从所述特征向量集合中删除。
8.如权利要求1至7任一项所述的方法,其特征在于,所述根据查找到的样本图像所对应的样本类别,确定所述待识别图像的目标类别,包括:
若查找到的样本图像的第二特征向量满足决策条件,则将查找到的样本图像所对应的样本类别,作为所述待识别图像的目标类别。
9.如权利要求1至7任一项所述的方法,其特征在于,所述根据查找到的样本图像所对应的样本类别,确定所述待识别图像的目标类别之后,所述方法还包括:
响应于类别校正指令,对所述待识别图像的目标类别进行校正;
在所述待识别图像校正后的目标类别为新类别的情况下,响应于类别添加指令,将所述待识别图像及其校正后的目标类别添加至所述检索库,所述新类别是指所述待识别图像校正后的目标类别区别于所述检索库中的样本类别。
10.一种图像识别装置,其特征在于,所述装置包括:
图像获取模块,用于获取待识别图像;
特征提取模块,用于对所述待识别图像进行图像特征提取,得到第一特征向量;
图像查找模块,用于在用于存储样本图像及其对应的样本类别的检索库中,查找第二特征向量和所述第一特征向量的相似度满足相似条件的样本图像,所述第二特征向量用于表示所述样本图像的图像特征;
图像识别模块,用于根据查找到的样本图像所对应的样本类别,确定所述待识别图像的目标类别。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210617217.1A CN117218356A (zh) | 2022-06-01 | 2022-06-01 | 图像识别方法及装置 |
PCT/CN2022/137039 WO2023231355A1 (zh) | 2022-06-01 | 2022-12-06 | 图像识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210617217.1A CN117218356A (zh) | 2022-06-01 | 2022-06-01 | 图像识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117218356A true CN117218356A (zh) | 2023-12-12 |
Family
ID=89026872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210617217.1A Pending CN117218356A (zh) | 2022-06-01 | 2022-06-01 | 图像识别方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117218356A (zh) |
WO (1) | WO2023231355A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118035496A (zh) * | 2024-04-15 | 2024-05-14 | 腾讯科技(深圳)有限公司 | 视频推荐方法、装置、电子设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018119684A1 (zh) * | 2016-12-27 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 一种图像识别系统及图像识别方法 |
CN111898416A (zh) * | 2020-06-17 | 2020-11-06 | 绍兴埃瓦科技有限公司 | 视频流处理方法、装置、计算机设备和存储介质 |
CN112633297B (zh) * | 2020-12-28 | 2023-04-07 | 浙江大华技术股份有限公司 | 目标对象的识别方法、装置、存储介质以及电子装置 |
-
2022
- 2022-06-01 CN CN202210617217.1A patent/CN117218356A/zh active Pending
- 2022-12-06 WO PCT/CN2022/137039 patent/WO2023231355A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023231355A1 (zh) | 2023-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200311871A1 (en) | Image reconstruction method and device | |
WO2020228446A1 (zh) | 模型训练方法、装置、终端及存储介质 | |
WO2021036059A1 (zh) | 图像转换模型训练方法、异质人脸识别方法、装置及设备 | |
CN113065636B (zh) | 一种卷积神经网络的剪枝处理方法、数据处理方法及设备 | |
US20220222918A1 (en) | Image retrieval method and apparatus, storage medium, and device | |
CN110765882B (zh) | 一种视频标签确定方法、装置、服务器及存储介质 | |
CN113704531A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN110956131B (zh) | 单目标追踪方法、装置及系统 | |
CN112529149B (zh) | 一种数据处理方法及相关装置 | |
CN113205142A (zh) | 一种基于增量学习的目标检测方法和装置 | |
WO2023221790A1 (zh) | 图像编码器的训练方法、装置、设备及介质 | |
CN112561879B (zh) | 模糊度评价模型训练方法、图像模糊度评价方法及装置 | |
CN114676777A (zh) | 一种基于孪生网络的自监督学习细粒度图像分类方法 | |
CN111368733B (zh) | 一种基于标签分布学习的三维手部姿态估计方法、存储介质及终端 | |
CN113989556A (zh) | 一种小样本医学影像分类方法和系统 | |
WO2023231355A1 (zh) | 图像识别方法及装置 | |
CN116452810A (zh) | 一种多层次语义分割方法、装置、电子设备及存储介质 | |
WO2021051562A1 (zh) | 人脸特征点定位方法、装置、计算设备和存储介质 | |
CN114821140A (zh) | 基于曼哈顿距离的图像聚类方法、终端设备及存储介质 | |
WO2022127333A1 (zh) | 图像分割模型的训练方法、图像分割方法、装置、设备 | |
CN109558883B (zh) | 叶片特征提取方法及装置 | |
CN108986135B (zh) | 一种基于llc与频域残差显著度的目标跟踪方法及装置 | |
CN112131902A (zh) | 闭环检测方法及装置、存储介质和电子设备 | |
Rahman et al. | An Efficient Sports Classification Technique Incorporating CNN Transfer Learning Models | |
CN112597328B (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 |