CN109784415B - 图像识别方法及装置、训练卷积神经网络的方法及装置 - Google Patents
图像识别方法及装置、训练卷积神经网络的方法及装置 Download PDFInfo
- Publication number
- CN109784415B CN109784415B CN201910075822.9A CN201910075822A CN109784415B CN 109784415 B CN109784415 B CN 109784415B CN 201910075822 A CN201910075822 A CN 201910075822A CN 109784415 B CN109784415 B CN 109784415B
- Authority
- CN
- China
- Prior art keywords
- image
- similarity
- feature map
- sample image
- feature
- 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
Images
Landscapes
- Image Analysis (AREA)
Abstract
公开了一种图像识别方法及装置、训练卷积神经网络的方法及装置,其中,图像识别方法包括:获取待识别图像以及至少一个样本图像;确定所述待识别图像与所述至少一个样本图像中的每一个样本图像之间的相似度,得到至少一个相似度;以及,根据所述至少一个相似度,确定所述待识别图像中对象的类别。本申请的图像识别方法及装置,具有较高的识别精度和更佳的鲁棒性。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像识别方法及装置、训练卷积神经网络的方法及装置。
背景技术
基于监督信息的分类,依赖于样本图像本身。一些方案中,使用已有类别标签的样本图像训练图像识别装置(例如,分类器),使得图像识别装置记忆该样本图像中对象的特征及其类别,在识别过程中,图像识别装置通过识别一图像中对象的特征并将该特征与其记忆的特征比对进而确定该图像中对象的类别。通过此方式构建的图像识别装置,其可支持的类别及其识别精度完全依赖于训练时所使用的样本图像,可支持的类别不可更改,当测试类别(即,待识别图像的类别)不属于训练类别(即,样本图像的类别)时,其识别精度低,而且学习能力较差,无法适应类别不断更新、识别精度要求较高的应用需求。
因此,期望提供一种图像识别方法及装置、训练卷积神经网络的方法及装置,以适应类别不断更新、识别精度要求高的应用需求。
发明内容
为了解决上述技术问题,提出了本申请。本申请的实施例提供了一种图像识别方法及装置、训练卷积神经网络的方法及装置。
根据本申请的一个方面,提供了一种图像识别方法,包括:
获取待识别图像以及至少一个样本图像;
确定所述待识别图像与所述至少一个样本图像中的每一个样本图像之间的相似度,得到至少一个相似度;以及
根据所述至少一个相似度,确定所述待识别图像中对象的类别。
根据本申请的另一个方面,提供了一种卷积神经网络的训练方法,包括:
读取训练集中的第一图像和第二图像,所述第一图像与所述第二图像之间相似度的真实值已知;
将所述第一图像和第二图像输入预先构建的卷积神经网络,并获得由所述卷积神经网络输出的所述第一图像与所述第二图像之间相似度的预测值;以及
估算所述相似度的预测值与所述相似度的真实值之间的一致性。
根据本申请的另一个方面,提供了一种电子设备,包括:
一个或多个处理器;以及
存储器,存储有计算机指令,所述计算机指令在被所述处理器运行时使所述处理器执行上述的图像识别方法。
根据本申请的另一个方面,提供了一种图像识别装置,包括:
获取模块,配置为获取待识别图像以及至少一个样本图像;
相似度确定模块,配置为确定所述待识别图像与所述至少一个样本图像中的每一个样本图像之间的相似度,得到至少一个相似度;以及
类别确定模块,配置为根据所述至少一个相似度,确定所述待识别图像中对象的类别。
根据本申请的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行上述的图像识别方法。
根据本申请的另一个方面,提供了一种电子设备,包括:一个或多个处理器;以及,存储器,存储有计算机指令,所述计算机指令在被所述处理器运行时使所述处理器执行上述的卷积神经网络的训练方法。
根据本申请的另一个方面,提供了一种训练卷积神经网络的装置,包括:
读取模块,配置为获取待识别图像以及样本图像;
执行模块,配置为将所述第一图像和第二图像输入预先构建的卷积神经网络,并获得由所述卷积神经网络输出的所述第一图像与所述第二图像之间相似度的预测值;以及
估算模块,配置为估算所述相似度的预测值与所述相似度的真实值之间的一致性。
根据本申请的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行上述的卷积神经网络的训练方法。
通过根据本申请实施例的图像识别方法及装置,通过待识别图像与样本图像之间的相似度来进行图像识别,图像识别的精度不依赖于样本图像中对象的呈现形态,识别精度更高、鲁棒性更佳,尤其针对待识别图像中对象的呈现形态与样本图像中对象的呈现形态差异较大的情况,识别精度更高、鲁棒性更好。
通过根据本申请实施例的训练卷积神经网络的方法及装置,通过相似度来训练用于执行图像识别的卷积神经网络,由此获得的卷积神经网络扩充能力强,能够快速学习新的类别,可适应类别更新频繁的应用场景。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本申请所适用的电子设备的示例性结构图。
图2是本申请一示例性实施例提供的图像识别方法的流程示意图。
图3是本申请一示例性实施例提供的图像识别方法中确定相似度的流程示意图。
图4是本申请一示例性实施例提供的图像识别方法中确定类别的流程示意图。
图5是本申请一示例性实施例提供的图像识别方法的示例性执行流程示意图。
图6是本申请一示例性实施例提供的图像识别方法中确定相似度的示例性执行流程示意图。
图7是本申请一示例性实施例提供的训练卷积神经网络的方法的流程示意图。
图8是本申请一示例性实施例提供的训练卷积神经网络的方法的具体流程示意图。
图9是本申请一示例性实施例提供的一图像混合示例的示意图。
图10是本申请一示例性实施例提供的图像识别装置的结构示意图。
图11是本申请一示例性实施例提供的图像识别装置的具体结构示意图。
图12是本申请一示例性实施例提供的训练卷积神经网络的装置的结构示意图。
图13是本申请一示例性实施例提供的训练卷积神经网络的装置的具体结构示意图。
具体实施方式
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
申请概述
由于同一类别的对象(比如,猫)其本身的形态、大小的差别、以及同一类别的对象(也可称为特征物)(例如,物体、人、指定景物等)在图像中呈现的形态、大小和方向的千差万别,尽管在样本图像充足的情况下可以克服,但在样本图像较少的情况下将导致图像识别装置识别精度较低。以对象“单杠”为例,如果在样本图像中“单杠”以横向呈现,而待识别图像中“单杠”却是纵向呈现时,待识别图像中“单杠”的识别精度就会比较低。可见,图像识别的精度强依赖于样本图像中对象的呈现形态,从而无法适应待识别图像中对象呈现状态各异且对识别精度有较高要求的应用需求。
传统的图像识别装置还存在扩充能力差的问题。图像识别装置的扩充能力,是指在已训练完成之后,当有新的类别出现时,是否需要很大的代价才能吸收进新的类别,代价包括大量标记好的新类别的样本图像以及需要对图像识别装置进行再训练。图像识别装置扩充能力差的情况下,图像识别装置支持的类别一般不可更改,更新类别时使用大量新的样本图像重新训练图像识别装置,不仅更新效率低,而且成本高。而在某些应用场景中,类别更新频繁,例如电商购物平台中通过识别图片找商品的应用场景下商品类别更新频繁且新的商品层出不穷。类似的应用场景要求图像识别装置能够快速学习新的类别。
针对上述的“因待识别图像中对象呈现形态与样本图像中对象呈现形态差异较大而导致图像识别精度低”技术问题,本申请提出了一种图像识别方法及装置,其在获取待识别图像以及至少一个样本图像之后,通过确定待识别图像与至少一个样本图像中的每一个样本图像之间的相似度来得到至少一个相似度,再根据该至少一个相似度来确定待识别图像中对象的类别。本申请实施例可通过待识别图像与样本图像之间的相似度来进行图像识别,图像识别的精度不依赖于样本图像中对象的呈现形态,识别精度更高、鲁棒性更佳,尤其针对待识别图像中对象的呈现形态与样本图像中对象的呈现形态差异较大的情况,识别精度更高、鲁棒性更好。
针对上述“图像识别装置扩充能力差而无法适应类别更新频繁的应用场景”技术问题,本申请还提出了一种训练卷积神经网络的方法及装置,其读取训练集中的第一图像和第二图像,所述第一图像与所述第二图像之间相似度的真实值已知;将所述第一图像和第二图像输入预先构建的卷积神经网络,并获得由所述卷积神经网络输出的所述第一图像与所述第二图像之间相似度的预测值;以及,估算所述相似度的预测值与所述相似度的真实值之间的一致性。本申请实施例通过相似度来训练用于执行图像识别的卷积神经网络,由此获得的卷积神经网络扩充能力强,能够快速学习新的类别,可适应类别更新频繁的应用场景。
应用场景
本申请实施例可应用于各种需要图像识别的应用场景。一个示例中,本申请实施例可应用于类别更新频繁的应用场景。举例来说,电商平台的应用具有输入图片即可鉴别图片中的商品的功能,而电商平台上的商品种类不仅更新频繁而且新商品层出不穷,对此类场景,本申请尤其适用。当然,本申请还可应用于其他场景,对于本申请实施例具体适用的场景,本申请实施例不作限制。
示例性电子设备
图1是本申请所适用的电子设备的结构示意图。如图1所示,本申请的电子设备10可以包括:一个或多个处理器11和用于存储所述处理器可执行指令的存储器12,处理器11用于执行下文“示例性方法”中所述图像识别方法的步骤和/或下文“示例性方法”中卷积神经网络的训练方法的步骤。
处理器11可以是中央处理单元(CPU)、GPU或者具有图像处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备10中的其他组件以执行期望的功能。
存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现下文所述的本申请的各个实施例的图像识别方法、卷积神经网络的训练方法以及/或者其他期望的功能。
在一个示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。该输入设备13还可以包括例如键盘、鼠标等等。该输出设备14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图1中仅示出了该电子设备10中的部分组件,省略了诸如总线、输入/输出接口等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。
本申请实施例的电子设备可以包括但不限于:个人计算机、服务器计算机、多处理器系统、基于微处理器的系统、可编程消费者电子设备、小型机、大型机等。
示例性方法
图2是根据本申请实施例的图像识别方法的流程图。
如图2所示,根据本申请实施例的图像识别方法可以包括:
步骤201,获取待识别图像以及至少一个样本图像;
步骤202,确定所述待识别图像与所述至少一个样本图像中的每一个样本图像之间的相似度,得到至少一个相似度;
步骤203,根据所述至少一个相似度,确定所述待识别图像中对象的类别。
本申请实施例的图像识别方法,通过确定待识别图像与至少一个样本图像之间的相似度来确定待识别图像中对象的类别,图像识别的精度不依赖于样本图像中对象的呈现形态,识别精度更高,尤其针对待识别图像中对象的呈现形态与样本图像中对象的呈现形态差较大的情况,识别精度更高。
图3是本申请实施例图像识别方法中步骤202的一种示例性流程。如图3所示,在至少一些实施例中,步骤202可以包括:
步骤301,提取所述待识别图像与所述每一个样本图像的相似特征图;
步骤302,将所述相似特征图与所述每一个样本图像的特征图拼接;
步骤303,基于所述拼接获得的特征图,确定所述待识别图像与所述每一个样本图像之间的相似度。
本申请实施例中,通过提取待识别图像和样本图像的相似特征图来确定两者的相似度,即通过待识别图像与样本图像之间的全局匹配处理(或称为非局部特征匹配的处理)来确定两者的相似度,进而由该相似度来确定待识别图像的类别,即使在待识别图像与样本图像中对象的呈现形态差异较大的情况下,也能够取得较高的识别精度。
本申请实施例中,提取相似特征图的步骤可以采用一迭代流程来实现。例如,步骤301中可以多次提取待识别图像与一样本图像的相似特征图,并且此多次提取中除第一次提取之外的每次提取过程中,可利用先前提取到的相似特征图来获得当前的相似特征图,如此,多次提取而得的相似特征图能够覆盖待识别图像与一样本图像之间更多方面的相似特征(例如,纹理等),从而更精确地确定该待识别图像与该样本图像之间的相似度,以进一步提高识别精度。当然,针对精度要求不高而要求执行效率更高的场景,提取相似特征图的步骤中也可以仅执行一次提取。
本申请实施例中,步骤301中提取相似特征图的方式可以有多种。在至少一些实施例中,步骤301中一次提取相似特征图的过程可以包括:针对待识别图像的特征图和样本图像的特征图执行相似度运算操作,得到一相似度分布图,再针对该相似度分布图与待识别图像的特征图执行点积操作,最后针对点积操作而得的特征图与待识别图像的特征图执行加和平均操作来得到相似特征图。替换地,如果在步骤301中要执行多次提取,对于除第一次之外的每次提取来说,可以针对先前获得的相似特征图(例如,上一次提取到的相似特征图)、点积操作而得的特征图、以及待识别图像的特征图执行加和平均操作来得到本次的相似特征图,如此,可将先前的相似特征图包含的相似特征叠加到当前的相似特征图中,以更精确地确定该待识别图像与该样本图像之间的相似度。
在至少一个实施例中,步骤301中提取所述待识别图像与所述每一个样本图像的相似特征图,可以包括如下步骤:
步骤a1,提取待识别图像的第一特征图和样本图像的第二特征图;
步骤a2,对所述第一特征图与所述第二特征图在各个特征点上执行相似度运算操作,以获得第一相似度分布图;
步骤a3,对所述第一特征图和所述第一相似度分布图执行点积操作;
步骤a4,对所述第一特征图与执行所述点积操作获得的特征图执行加和平均操作,以获得所述待识别图像与所述样本图像的相似特征图。
至少一个实施例中,步骤301中提取所述待识别图像与所述每一个样本图像的相似特征图,可以包括如下步骤:
步骤b1,提取待识别图像的第三特征图和所述样本图像的第四特征图;
步骤b2,对所述第三特征图与所述第四特征图在各个特征点上执行相似度运算操作,以获得第二相似度分布图;
步骤b3,对所述第三特征图和所述第二相似度分布图执行点积操作;
步骤b4,对之前提取到的相似特征图、所述第三特征图以及当前点积操作获得的特征图执行加和平均操作,以获得所述待识别图像与所述样本图像的相似特征图。
这里,待识别图像的第三特征图可以为以待识别图像的第一特征图为输入的卷积层的输出,样本图像的第四特征图可以为以样本图像的第二特征图为输入的卷积层的输出,之前获得的相似特征图可以为基于所述待识别图像的第一特征图和所述样本图像的第二特征图获得的相似特征图。
本申请实施例中,相似度分布图(例如,上文的第一相似度分布图或第二相似度分布图等)中各点的值表征待识别图像的特征图(例如,上文的第一特征图或第三特征图)和样本图像的特征图(例如,上文的第二特征图或第四特征图)在各点上的相似度。相似度分布图中值高的特征点对应待识别图像中与样本图像任一特征点相似度高的特征点,相似度分布图中值低的特征点对应待识别图像中与样本图像任一特征点相似度低的特征点。
本申请实施例中,相似度运算操作可以包括样本图像的特征图(例如,上文的第二特征图或第四特征图)的转置和点积操作,转置是为了使特征点之间能够执行点积操作,由于点积操作即矩阵相乘,而矩阵相乘是一矩阵的左边每行乘以另一矩阵的右边每列,因此,需要将样本图像的特征图转置以使得样本图像的特征图的每列代表每个特征点,以便针对两个特征图的各个特征点执行点积操作。
在至少一些实施例中,相似度运算操作可以包括:针对待识别图像的一特征图(例如,上文的第一特征图或第三特征图)中的每个特征点,在其与样本图像的特征图(例如,上文的第二特征图或第四特征图)中的全部特征点之间执行点积操作。
一个示例中,可以按照下式(1)来执行上述相似度运算操作:
其中,zq表示待识别图像的一特征图(例如,上文的第二特征图或第四特征图);zs表示样本图像的一特征图(例如,上文的第二特征图或第四特征图);θ(zq)是对应的矩阵通过对zq进行处理(例如下文的reshape)而获得的矩阵,该矩阵中一行代表zq中的一个特征点;是通过对zs进行处理(例如下文的reshape)而获得的矩阵,该矩阵中一行代表zs中的一个特征点;表示针对执行转置后获得的矩阵,该矩阵中一列代表zs中的一个特征点;f(zq,zs)表示相似度分布图可以是表征相似度分布图的矩阵。式(1)中,表示θ(zq)与中对应特征点之间的点积,即在θ(zq)中的每行与中的每列之间进行点积,表示针对经由θ(zq)中每行与中每列之间进行点积而得到的结果进行归一化操作。一个示例中,S可以表示Softmax函数(或称为归一化指数函数)。
本申请实施例中,加和平均操作可以包括:针对各个特征点的值相加并平均。
一个示例中,可以按照下式(2)来执行上述加和平均操作:
其中,表示相似特征图,zq表示待识别图像的一特征图(例如,上文的第二特征图或第四特征图);zs表示样本图像的一特征图(例如,上文的第二特征图或第四特征图);zq′表示先前获得的相似特征图(例如,上一次提取得到的相似特征图);g(zs)是通过对zs进行处理(例如下文的reshape)而获得的矩阵,该矩阵中一行代表zs中的一个特征点。
一个示例中,如果先前没有获得相似特征图(例如,第一次提取的时候),可以按照下式(3)来执行上述加和平均操作。
需要说明的是,上述公式(1)-(3)中的θ、g分别是针对一特征图执行不同程度的处理以获取表征该特征图的矩阵的运算操作,该运算操作可以包括但不限于下文的reshape等。θ、g可以是同一运算操作,但其运算操作使用的参数不同。举例来说,θ、g可以是一卷积运算操作,但其卷积运算操作使用的卷积核不同。
在至少一些实施例中,提取所述待识别图像与所述每一个样本图像的相似特征图,还可以包括:对待识别图像的一特征图(例如,上文的第一特征图或第三特征图)和样本图像的一特征图(例如,上文的第三特征图或第四特征图)分别执行尺寸调整操作,以使得所述待识别图像的特征图和所述样本图像的特征图支持所述相似度运算操作。在至少一个实施例中,上述尺寸调整操作可以包括:至少一次的卷积操作和至少一次的变形(reshape)操作,通过该卷积操作可以减小特征图的尺寸(例如,减小特征图的通道(channel)维度大小),从而降低相似度运算操作时的计算量,而通过变形(reshape)则可以把三维的特征图变换为二维的特征图,以便执行上文的相似度运算操作。
在至少一些实施例中,在步骤301之后,还可以包括:针对相似特征图执行至少一次尺寸调整操作,以使得该相似特征图与样本图像的特征图能够拼接起来。在至少一个实施例中,相似特征图一般为二维的特征图,而样本图像的特征图一般是三维,为了将两者进行拼接,可以通过至少一次变形(reshape)操作将二维的相似特征图转换为三维的特征图,以便针对该相似特征图和样本图像的特征图进行拼接,进而获得精确度更高的相似度。
本申请实施例中,步骤302中的拼接可以通过多种方式来实现。至少一个实施例中,步骤302中的拼接可以包括但不限于:将相似特征图与样本图像的特征图在预定的至少一个维度上(例如,通道、宽度和高度中至少之一)进行拼接。例如,相似特征图的大小是:高度H1、宽度W1和通道数C1,样本图像的特征图的大小是:高度H1、宽度W1和通道数C2,如果选择在通道方向上拼接的话,拼接而得到的特征图大小是:高度H1、宽度W1和通道数C3,C3=C1+C2。具体来说,可以将相似特征图与样本图像中坐标相同的特征点执行加操作。除此之外,该拼接还可以包括其他操作,对此,本申请实施例不予限制。
本申请实施例中,步骤303中基于所述拼接获得的特征图,确定所述待识别图像与所述每一个样本图像之间的相似度,可以包括:对所述拼接获得的特征图执行至少一次卷积运算操作和至少一次全连接(FC,full connected)操作,得到表征所述相似度的向量;对表征所述相似度的向量执行维度转换操作(即上文所述的reshape),得到表征所述相似度的分值。
图4是本申请实施例图像识别方法中步骤203的一种示例性实现流程。如图4所示,在至少一些实施例中,步骤203可以包括:
步骤401,确定所述至少一个相似度中满足预定条件的相似度;
步骤402,基于满足预定条件的相似度对应的样本图像的类别,确定所述待识别图像中对象的类别。
本申请实施例中,一待识别图像的相似度可以包括待识别图像与各个样本图像之间的相似度分值。例如,有三种样本图像时,待识别图像的相似度可以表示为[a,b,c],其中,a表示待识别图像与第1种样本图像之间的相似度分值,b表示待识别图像与第2种样本图像之间的相似度分值,c表示待识别图像与第3种样本图像之间的相似度分值。需要说明的是,一种样本图像是指类别相同的至少一幅样本图像。一个示例中,相似度分值可以通过0到1之间的任一数值来表示。当然,本申请实施例中相似度分值的表示方式并不限于此。
一个示例中,所述预定条件可以包括:所述样本图像与所述待识别图像之间的相似度分值超过预先设定的阈值。比如,样本图像1是“狗”,样本图像2是“猫”,设定阈值为0.5,如果待识别图像与样本图像1的相似度分值为0.7,与样本图像2的相似度分值为0.8,那么确定待识别图像中包含有两类对象,分别是“猫”和“狗”。
一个示例中,可以取相似度最高的样本图像的类别为待识别图像的类别。例如,待识别图像的相似度为[0.8,0.1,0.1]时,待识别图像与第1类样本图像的相似度分值为0.8,待识别图像与第2类样本图像的相似度分值为0.1,待识别图像与第3类样本图像的相似度分值为0.1,由此可见,待识别图像与第1类样本图像的相似度最高,则待识别图像中对象的类别与第1类样本图像相同。假设第1类样本图像的类别为“猫”,那么该待识别图像中的对象即为“猫”。
图5是本申请实施例图像识别方法的一示例性执行流程。如图5所示,图像识别方法的具体执行过程可以包括如下步骤:
步骤501,提取待测图片Q的特征图Q1,提取样本图片S的特征图S1;
本步骤中,可以通过一卷积模块(Conv Block1)对待测图片Q和样本图片S处理以得到其特征图Q1、特征图S1。例如,假设以84*84*3的张量数据来分别表示待测图片Q和样本图片S,可以通过一卷积模块(ConvBlock1)对这些张量数据进行处理以提取到其特征图Q1、S1,该特征图Q1、特征图S1的大小可以为41*41*64。步骤502,提取特征图Q1的特征图Q2,提取特征图S1的特征图S2;
本步骤中,可以通过一卷积模块对特征图Q1、特征图S1处理以得到其特征图Q2、特征图S2。例如,假设以41*41*64的张量数据来分别表示特征图Q1和特征图S1,可以通过一卷积模块(ConvBlock2)对这些张量数据进行处理以提取到其特征图Q2、S2,该特征图Q2、特征图S2的大小可以为19*19*64。
步骤503,提取特征图Q2和特征图S2的相似特征图M1;
本步骤中,可以通过一特征匹配模型对特征图Q2和特征图S2进行处理以得到这两个特征图的相似特征图。例如,假设以41*41*64的张量数据来分别表示特征图Q2和特征图S2,可以通过一特征匹配模型(Feature Matching1)对这些张量数据进行处理以获得相似特征图M1,该相似特征图M1的大小可以为19*19*64。
步骤504,提取相似特征图M1的特征图M11;
本步骤中,可以通过一卷积模块对相似特征图M1处理以得到其特征图M11。例如,可以通过一卷积模块(Conv Block3)对表征相似特征图M1的张量数据进行处理以提取到其特征图M11。
步骤505,提取特征图Q2的特征图Q3,提取特征图S2的特征图S3;
本步骤中,可以通过一卷积模块对特征图Q2、特征图S2处理以得到其特征图Q3、特征图S3。例如,可以通过一卷积模块(Conv Block3)分别对表征特征图Q2的张量数据和特征图S2的张量数据进行处理以提取到其特征图Q3、S3。
步骤506,提取特征图M11、特征图Q3以及特征图S3的相似特征图M2;
本步骤中,可以通过一特征匹配模型对特征图M11、特征图Q3以及特征图S3进行处理以得到这些特征图的相似特征图。例如,假设以19*19*64的张量数据来分别表示特征图M11、Q2、S2,可以通过一特征匹配模型(Feature Matching2)对这些张量数据进行处理来得到相似特征图M2,该相似特征图M2的大小可以为19*19*64。
步骤507,提取相似特征图M2的特征图M21;
本步骤中,可以通过一卷积模块对相似特征图M2处理以得到其特征图M21。例如,假设以19*19*64的张量数据来分别表示相似特征图M2,可以通过一卷积模块(Conv Block4)对该张量数据进行处理以提取到其特征图M21,该特征图M21的大小可以为19*19*64。
步骤508,提取特征图Q3的特征图Q4,提取特征图S3的特征图S4;
本步骤中,可以通过一卷积模块对特征图Q3、特征图S3处理以得到其特征图Q4、特征图S4。例如,假设以19*19*64的张量数据来分别表示特征图Q3和特征图S3,可以通过一卷积模块(ConvBlock4)对这些张量数据进行处理以提取到其特征图Q4、S4,该特征图Q4、特征图S4的大小可以为19*19*64。
步骤509,提取相似特征图M2的特征图M21、特征图Q4以及特征图S4的相似特征图M3;
本步骤中,可以通过一特征匹配模型对特征图M21、特征图Q4以及特征图S4进行处理以得到这些特征图的相似特征图。例如,假设以19*19*64的张量数据来分别表示特征图M21、Q4、S4,可以通过一特征匹配模型(Feature Matching3)对这些张量数据进行处理以提取到其相似特征图M3,该相似特征图M3的大小可以为19*19*64。
步骤510,将相似特征图M3与特征图S4拼接,得到拼接特征图C;
本步骤中,可以通过一特征拼接模块(Feature Concat)对相似特征图M3与特征图S4进行处理以得到其拼接而得的特征图C。例如,假设以19*19*64的张量数据来分别表示相似特征图M3、特征图S4,可以通过一特征拼接层(Feature Concat)对这些张量数据进行处理以获得拼接特征图C,该拼接特征图C的大小可以为19*19*128。
步骤511,提取拼接特征图C的特征图C1;
本步骤中,可以通过一卷积模块对拼接特征图C进行特征提取处理来得到特征图C1。例如,假设以19*19*128的张量数据来表示拼接特征图C,可以通过一卷积模块(ConvBlock5)对该张量数据进行处理来获得特征图C1,该特征图C1的大小可以为8*8*64。
步骤512,提取特征图C1的特征图C2;
本步骤中,可以通过一卷积模块对特征图C1进行特征提取处理来得到特征图C2。例如,假设以8*8*64的张量数据来表示特征图C1,可以通过一卷积模块(ConvBlock6)对该张量数据进行处理来获得特征图C2,该特征图C2的大小可以为3*3*64。
步骤513,对特征图C2执行全连接操作,得到二维特征图C3;
本步骤中,可以通过一全连接层对特征图C1进行处理来得到二维特征图C3。例如,假设以3*3*64的张量数据来表示特征图C2,可以通过一全连接层(FC1)对该张量数据进行降维处理来获得二维特征图C3,该二维特征图C3的大小可以为8*1。
步骤514,对二维特征图C3执行全连接操作,得到相似度分值(score)。
本步骤中,可以通过一全连接层(FC2)对二维特征图C3进行处理来得到相似度分值。例如,假设以8*1的矩阵来表示二维特征图C3,可以通过一全连接层(FC2)对该矩阵进行降维处理来获得相似度分值。
图5的示例性流程中,采用不同的卷积模块多次提取特征图(例如,这些卷积模块中运算操作使用的参数(比如,卷积运算操作的卷积核等)不同),可以充分提取样本图片和待测图片中之间多层面的相似特征(例如,纹理等),从而进一步提高图像识别的精度。具体应用中,特征图的提取步骤可根据执行效率、识别精度的需求来增加或省略。例如,图5的示例性流程中,步骤501、步骤504、步骤507、步骤505、步骤502、步骤508、步骤511、步骤512等均可根据需要省略,也可在这些步骤之间、之前或之后增加提取特征图的步骤,提取特征图的步骤越多相应的识别精度则越高而整体执行效率则可能相对较低,提取特征图的步骤越少则整体执行效率越高而识别精度则可能相对较低。同理,提取相似特征图的步骤也可以根据执行效率、识别精度等多方面的需求来增加或省略,例如,步骤503、步骤506和步骤509中可选择性的省去一部分,也可以在步骤503、步骤506和步骤509的之间、之前或之后增加提取相似特征图的步骤,提取相似特征图的步骤越多相应的识别精度则越高而整体执行效率则可能相对较低,提取相似特征图的步骤越少则整体执行效率越高而识别精度则可能相对较低。
图5所示的流程中描述了一张样本图片和一张待测图片经过4次(例如,4个卷积模块的处理)特征提取,其中有3次执行了非局部特征匹配,然后把非局部特征匹配的结果与样本图片的特征拼接起来,再经过两次提取(例如,两个卷积模块)和全连接操作(例如,两个全连接层)得到了上述样本图片和待测图片之间的相似度分值,该相似度分值代表了对这两张图片相似度的预测结果(即相似度分值)。具体应用中,可针对待测图片与多张样本图片分别执行图5所示的处理,即可得到待测图片与多张样本图片之间的相似度分值。
需要说明的是,图5中的“卷积模块”可以包含卷积运算操作(例如,神经网络中的一卷积层)和批归一化(Batchnorm)操作模块(例如,神经网络中具有批归一化功能的一个层级)。一个示例中,“卷积模块”还可以包括最大池化(max-pooling)操作模块(例如,神经网络中的一最大池化层),该最大池化模块用于缩小特征图的尺寸,例如,该最大值池化模块可用于将一84*84的特征图缩小为一41*41的特征图。举例来说,图5所示的示例性流程中,ConvBlock1、ConvBlock2、ConvBlock5、ConvBlock6可以包括一卷积运算操作、批归一化操作和一最大池化操作,而ConvBlock3、ConvBlock4则可以包括一卷积运算操作和一批归一化操作。
本申请实施例中,特征匹配模型可以是用于实现图像识别的卷积神经网络中的一部分或者是一独立的卷积神经网络,该特征匹配模型可以包括至少一个卷积层、相似运算操作层、点积操作层、加和平均操作层等,可通过训练得到。
图6是本申请实施例提取相似特征图的一示例性执行流程。
如图6所示,步骤503中提取相似特征图的具体执行过程可以包括如下步骤:
步骤601,提取特征图Q2的嵌入特征数据θ(Q2),提取特征图S2的嵌入特征数据φ(S2)和嵌入特征数据g(S2);
例如,特征图Q2和特征图S2的大小是19*19*64,分别经过一个1*1*1的卷积层处理,得到上述嵌入特征数据,大小为19*19*32;
步骤602,分别通过卷积层处理对上述嵌入特征数据θ(Q2)、嵌入特征数据φ(S2)和嵌入特征数据g(S2)执行变形(reshape)处理,得到这三个嵌入特征数据的二维特征图,每个二维特征图的大小为(19*19)*32;
步骤603,对嵌入特征数据θ(Q2)的二维特征图与嵌入特征数据φ(S2)的二维特征图执行相似度运算操作,得到相似度分布图f(Q2,S2);
本步骤中,可以按照上文式(1)来执行相似度运算操作。例如,嵌入特征数据θ(Q2)的二维特征图与嵌入特征数据φ(S2)的二维特征图大小为19*19*32,那么经过相似度运算操作之后得到的相似度分布图f(Q2,S2)大小为(19*19)*(19*19)。
步骤604,对相似度分布图f(Q2,S2)与嵌入特征数据g(S2)的二维特征图执行点积操作,得到特征图f(Q2,S2)g(S2);
本步骤中,通过点击操作得到基于相似分布图进行筛选后的特征,待测图片与样本图片之间相似的部分将得到更多的保留,而不相似的部分则被更多地抑制,从而能够更精确并全面的确定待测图片与样本图片之间的相似度。
步骤605,对特征图f(Q2,S2)g(S2)执行reshape操作,得到三维特征图;
步骤605,对步骤604得到的相似特征图再次执行reshape操作,得到三维特征图;
步骤606,将步骤605得到的三维特征图、特征图Q1执行加和平均操作,得到特征图Q2和特征图S2的相似特征图M1。
本步骤中,可以按照上文式(3)来执行加和平均操作。
图6所示的示例性流程得到的输出结果包括经过相似分布图抑制和加强后的样本图片的特征、待测图片的原始特征、以及上一次提取的相似特征图中的特征。需要说明的是,图6中部分步骤为可选步骤,例如,步骤601、步骤602、步骤605、步骤606等均可选择性的省略。同理,还可根据执行效率、相似度精度等的需要在图6中增加类似的步骤。
需要说明的是,上文步骤506和步骤509中提取相似特征图的过程与图6流程相同,所不同的是,在步骤506中和步骤509中可以按照上文式(2)来执行加和平均操作。
由上可见,针对待测图片与样本图片的全局特征而非局部特征执行了匹配处理,进而获得能够反映待测图片与样本图片之间全局特征的相似性的相似特征图,这样,即使对象在待测图像和样本图像中有不同的大小、形态和方向,也不会影响相似特征图提取的效果,从而获得精度较高的识别结果。
需要说明的是,图5和图6仅为本申请实施例图像识别方法的示例性执行方式,实际应用中本申请实施例图像识别方法的相似特征图提取、以及相似度的确定可以有多种执行方式,对此,本申请实施例不予限制。
本申请实施例中,上述图像识别方法可通过在电子设备10上运行一卷积神经网络(例如下文“训练方法”获得的卷积神经网络)来实现。
下面对本申请实施例中训练卷积神经网络的方法进行详细说明。需要说明的是,该卷积神经网络是用于实现上文所述图像识别方法的卷积神经网络。
图7是根据本申请实施例的卷积神经网络的训练方法的流程图。
如图7所示,根据本申请实施例的卷积神经网络的训练方法可以包括:
步骤701,读取训练集中的第一图像和第二图像,所述第一图像与所述第二图像之间相似度的真实值已知;
步骤702,将所述第一图像和第二图像输入预先构建的卷积神经网络,并获得由所述卷积神经网络输出的所述第一图像与所述第二图像之间相似度的预测值;
步骤703,估算所述相似度的预测值与所述相似度的真实值之间的一致性。
图8是根据本申请实施例的卷积神经网络的训练方法的又一流程图。如图8所示,在至少一个实施例中,本申请实施例的卷积神经网络的训练方法,还可以包括:
步骤704,判断所述相似度预测值与所述相似度真实值之间的一致性是否满足预先设定的一致性条件;
步骤705,在所述相似度的预测值与所述相似度的真实值之间的一致性不满足所述一致性条件时,调整所述卷积神经网络的参数。
步骤706,在所述相似度的预测值与所述相似度的真实值之间的一致性,满足所述一致性条件时,则结束。
本申请实施例中,卷积神经网络的参数包括但不限于:卷积神经网络的权重、偏移量等参数,一组权重用于指示该卷积神经网络中一卷积层中卷积核的大小和数量。
在至少一些实施例中,步骤703中可以利用最小平方差损失函数(MSE,meansquare error loss)估算预测值和真实值之间的损失值(loss),并验证该损失值是否在预定的范围内,如果在预定的范围内,则说明预测值和真实值之间的一致性满足一致性条件。如果不在预定的范围内,则会基于损失值自动调整卷积神经网络的权重参数,再重新训练,直到损失值收敛到某一值。
在至少一些实施例中,步骤706之后,可以选择验证精度最高时的权重参数作为卷积神经网络最终使用的权重参数,而不选用损失值收敛到某一值时的权重参数作为卷积神经网络最终使用的权重参数,以使得训练得到的卷积神经网络能够取得更高的识别精度。
本申请实施例中,上述卷积神经网络的结构(即包括多少层级和哪些种类的层级,以及这些层级之间的连接关系)可以预先设定,在图7的训练过程中可以根据预测值和真实值之间的一致性来调整该卷积神经网络的结构。
如图8所示,本申请的至少一些实施例中,上述卷积神经网络的训练方法中还可以包括:
步骤7001,将类别不同的至少两幅图像进行混合,以获得所述第一图像;
步骤7002,根据所述至少两幅图像与所述第二图像之间相似度的真实值,确定所述第一图像与所述第二图像之间相似度的真实值。
本申请实施例中,使用混合而得的第一图像来训练用于图像识别的卷积神经网络,可增加训练难度,有利于提高该卷积神经网络对相似度的识别能力,进而提高卷积神经网络的图像识别能力和图像识别精度。
下面以一个示例来详细说明步骤7001和步骤7002的示例性执行过程。
一个示例中,假设将三个不同的类别的支持图像(support image)(A,B,C)和三个查询图像(query image)(a,b,c)进行混合,其中,图像集a(包括图像a1,图像a2,……)与图像A属于同一类,图像集b(包括图像b1,图像b2,……)与图像B属于同一类,图像集c(包括图像c1,图像c2,……)与图像C属于同一类,即,[a1;A,B,C]=[1,0,0],[a2;A,B,C]=[1,0,0],……,[b1;A,B,C]=[0,1,0],[b2;A,B,C]=[0,1,0],……,[c1;A,B,C]=[0,0,1],[c2;A,B,C]=[0,0,1],……。将图像集a、图像集b和图像集c中的各个图像进行混合即可得到相应的多幅第一图像,这些第一图像的相似度真实值确定,将这些第一图像加入训练集即可用于卷积神经网络的训练。例如,可以将图像a1、图像b1以λ1:(1-λ1)的比例混合,相应的相似度真实值则是[λ1*a1+(1-λ1)*b2;A,B,C]=[λ1,(1-λ1),0];将图像a2与图像c2以λ2:(1-λ2)的比例混合,相应的相似度真实值则是[λ2*a2+(1-λ2)*c1;A,B,C]=[λ2,0,(1-λ2)]。图9是图像混合的一个示例。该示例中,将猫的图像与狗的图像按照1:1的比例混合而得一第一图像,如果猫的图像的相似度是[0,1,0],狗的图像的相似度是[1,0,0],则该第一图像的相似度为[0.5,0.5,0]。
经实验验证,通过将混合而得的第一图像加入训练集来训练用于图像识别的卷积神经网络,该卷积神经网络针对训练集的识别精度上升变缓,而对该卷积神经网络验证时的识别精度则在到达峰值之后不会有明显下降,并且该卷积神经网络支持的最高识别精度也高于其他方法。
本申请实施例的训练卷积神经网络的方法,通过相似度来训练用于执行图像识别的卷积神经网络,由此获得的卷积神经网络扩充能力强,能够快速更新类别和学习新的类别,可适应类别更新频繁或新类别层出不穷的应用场景。
示例性图像识别装置
图10是本申请一示例性实施例提供的图像识别装置100的结构示意图。如图10所示,该图像识别装置100可以包括:
获取模块101,配置为获取待识别图像以及至少一个样本图像;
相似度确定模块102,配置为确定所述待识别图像与所述至少一个样本图像中的每一个样本图像之间的相似度,得到至少一个相似度;以及
类别确定模块103,配置为根据所述至少一个相似度,确定所述待识别图像中对象的类别。
图11是本申请一示例性实施例提供的图像识别装置100的另一结构示意图。如图11所示,在至少一些实施例中,相似度确定模块102,可以包括:相似特征提取单元1021,配置为提取所述待识别图像与所述每一个样本图像的相似特征图;拼接单元1022,配置为将所述相似特征图与所述每一个样本图像的特征图拼接;第一确定单元1023,配置为基于所述拼接获得的特征图,确定所述待识别图像与所述每一个样本图像之间的相似度。
本申请实施例中,通过提取待识别图像和样本图像的相似特征图来确定两者的相似度,即通过待识别图像与样本图像之间的全局匹配处理(或非局部特征匹配的处理)来确定两者的相似度,进而由该相似度来确定待识别图像的类别,即使在待识别图像与样本图像中对象的呈现形态差异较大的情况下,也能够取得较高的识别精度。
如图11所示,在至少一些实施例中,相似特征提取单元1021,可以包括:提取操作单元10211,可配置为提取待识别图像的第一特征图和样本图像的第二特征图;相似度操作单元10212,可配置为对所述第一特征图与所述第二特征图在各个特征点上执行相似度运算操作,以获得第一相似度分布图;点积操作单元10213,可配置为对所述第一特征图和所述第一相似度分布图执行点积操作;加和平均操作单元10214,可配置为对所述第一特征图与点积操作单元10213获得的特征图执行加和平均操作,以获得所述待识别图像与所述样本图像的相似特征图。
至少一个实施例中,相似特征提取单元1021中:提取操作单元10211,还可配置为提取待识别图像的第三特征图和所述样本图像的第四特征图;相似度操作单元10212,还可配置为对所述第三特征图与所述第四特征图在各个特征点上执行相似度运算操作,以获得第二相似度分布图;点积操作单元10213,还可配置为对所述第三特征图和所述第二相似度分布图执行点积操作;加和平均操作单元10214,还可配置为对之前提取到的相似特征图、所述第三特征图以及点积操作单元10213当前获得的特征图执行加和平均操作,以获得所述待识别图像与所述样本图像的相似特征图。
如图11所示,在至少一些实施例中,所述第一确定单元1023,可以包括:第一操作单元10231,配置为对所述拼接获得的特征图执行至少一次卷积运算操作和至少一次全连接操作,得到表征所述相似度的向量;第二操作单元10232,配置为对表征所述相似度的向量执行维度转换操作,得到表征所述相似度的分值。
如图11所示,在至少一些实施例中,类别确定模块103,可以包括:第二确定单元1031,配置为确定所述至少一个相似度中满足预定条件的相似度;第三确定单元1032,配置为基于满足预定条件的相似度对应的样本图像的类别,确定所述待识别图像中对象的类别。
本申请实施例中,图像识别装置100可以通过软件、硬件或两者的结合来实现。例如,图像识别装置100可设置于上文电子设备10中或通过电子设备10来实现。
本申请实施例中图像识别装置100的其他技术细节可参照上文“示例性方法”中关于“图像识别方法”的记载,不再赘述。
本申请实施例的图像识别装置,通过确定待识别图像与至少一个样本图像之间的相似度来确定待识别图像中对象的类别,图像识别的精度不依赖于样本图像中对象的呈现形态,识别精度更高,尤其针对待识别图像中对象的呈现形态与样本图像中对象的呈现形态差异较大的情况,识别精度更高。
示例性训练卷积神经网络的装置
图12是本申请一示例性实施例提供的训练卷积神经网络的装置120的结构示意图。如图12所示,该训练卷积神经网络的装置120可以包括:
读取模块121,配置为获取待识别图像以及样本图像;
执行模块122,配置为将所述第一图像和第二图像输入预先构建的卷积神经网络,并获得由所述卷积神经网络输出的所述第一图像与所述第二图像之间相似度的预测值;
估算模块123,配置为估算所述相似度的预测值与所述相似度的真实值之间的一致性。
图13是本申请一示例性实施例提供的训练卷积神经网络的装置100的另一结构示意图。
如图13所示,在至少一些实施例中,训练卷积神经网络的装置100还可以包括:
调整模块124,配置为在所述估算模块判断相似度的预测值与所述相似度的真实值之间的一致性不满足所述一致性条件时,调整所述卷积神经网络的参数;
所述估算模块123,还配置为所述相似度预测值与所述相似度真实值之间的一致性是否满足预先设定的一致性条件。
如图13所示,在至少一些实施例中,训练卷积神经网络的装置120还可以包括:
混合模块125,可配置为将类别不同的至少两幅图像进行混合,以获得所述第一图像;以及,
真实值确定模块126,可配置为根据所述至少两幅图像与所述第二图像之间相似度的真实值,确定所述第一图像与所述第二图像之间相似度的真实值。
本申请实施例中,训练卷积神经网络的装置120可设置于上文电子设备10中或通过电子设备10来实现。具体应用中,本申请实施例训练卷积神经网络的装置120可以通过软件、硬件或两者的结合来实现。
本申请实施例中训练卷积神经网络的装置120的其他技术细节可参照上文“示例性方法”中关于“训练卷积神经网络的方法”的记载,不再赘述。
本申请实施例的训练卷积神经网络的装置,通过相似度来训练用于执行图像识别的卷积神经网络,由此获得的卷积神经网络扩充能力强,能够快速学习新的类别,可适应类别更新频繁的应用场景。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的图像识别方法中的步骤和/或训练卷积神经网络的方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的图像识别方法中的步骤和/或训练卷积神经网络的方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (12)
1.一种图像识别方法,包括:
获取待识别图像以及至少一个样本图像;
确定所述待识别图像与所述至少一个样本图像中的每一个样本图像之间的相似度,得到至少一个相似度;以及
根据所述至少一个相似度,确定所述待识别图像中对象的类别,
其中,确定所述待识别图像与所述每一个样本图像之间的相似度,包括:
提取所述待识别图像与所述每一个样本图像的相似特征图;
将所述相似特征图与所述每一个样本图像的特征图拼接;
基于所述拼接获得的特征图,确定所述待识别图像与所述每一个样本图像之间的相似度,
其中,提取所述待识别图像与所述每一个样本图像的相似特征图,包括:
提取待识别图像的第一特征图和样本图像的第二特征图;
对所述第一特征图与所述第二特征图在各个特征点上执行相似度运算操作,以获得第一相似度分布图;
对所述第一特征图和所述第一相似度分布图执行点积操作;
对所述第一特征图与执行所述点积操作获得的特征图执行加和平均操作,以获得所述待识别图像与所述样本图像的相似特征图。
2.根据权利要求1所述的方法,其中,提取所述待识别图像与所述每一个样本图像的相似特征图,还包括:
提取待识别图像的第三特征图和所述样本图像的第四特征图;
对所述第三特征图与所述第四特征图在各个特征点上执行相似度运算操作,以获得第二相似度分布图;
对所述第三特征图和所述第二相似度分布图执行点积操作;
对之前提取到的相似特征图、所述第三特征图以及当前点积操作获得的特征图执行加和平均操作,以获得所述待识别图像与所述样本图像的相似特征图。
3.根据权利要求1所述的方法,其中,基于所述拼接获得的特征图,确定所述待识别图像与所述每一个样本图像之间的相似度,包括:
对所述拼接获得的特征图执行至少一次卷积运算操作和至少一次全连接操作,得到表征所述相似度的向量;
对表征所述相似度的向量执行维度转换操作,得到表征所述相似度的分值。
4.根据权利要求1所述的方法,其中,根据所述至少一个相似度,确定所述待识别图像中对象的类别,包括:
确定所述至少一个相似度中满足预定条件的相似度;
基于满足预定条件的相似度对应的样本图像的类别,确定所述待识别图像中对象的类别。
5.一种卷积神经网络的训练方法,包括:
读取训练集中的第一图像和第二图像,所述第一图像与所述第二图像之间相似度的真实值已知;
将所述第一图像和第二图像输入预先构建的卷积神经网络,并获得由所述卷积神经网络输出的所述第一图像与所述第二图像之间相似度的预测值;以及
估算所述相似度的预测值与所述相似度的真实值之间的一致性,
所述方法还包括:
将类别不同的至少两幅图像进行混合,以获得所述第一图像;以及
根据所述至少两幅图像与所述第二图像之间相似度的真实值,确定所述第一图像与所述第二图像之间相似度的真实值。
6.根据权利要求5所述的训练方法,还包括:
判断所述相似度预测值与所述相似度真实值之间的一致性是否满足预先设定的一致性条件;
在所述相似度的预测值与所述相似度的真实值之间的一致性不满足所述一致性条件时,调整所述卷积神经网络的参数。
7.一种电子设备,包括:
一个或多个处理器;以及
存储器,存储有计算机指令,所述计算机指令在被所述处理器运行时使所述处理器执行根据权利要求1至4中任一项所述的方法。
8.一种图像识别装置,包括:
获取模块,配置为获取待识别图像以及至少一个样本图像;
相似度确定模块,配置为确定所述待识别图像与所述至少一个样本图像中的每一个样本图像之间的相似度,得到至少一个相似度;以及
类别确定模块,配置为根据所述至少一个相似度,确定所述待识别图像中对象的类别,
其中,所述相似度确定模块包括:相似特征提取单元,配置为提取所述待识别图像与所述每一个样本图像的相似特征图;拼接单元,配置为将所述相似特征图与所述每一个样本图像的特征图拼接;第一确定单元,配置为基于所述拼接获得的特征图,确定所述待识别图像与所述每一个样本图像之间的相似度;
其中,所述相似特征提取单元包括:提取操作单元,配置为提取待识别图像的第一特征图和样本图像的第二特征图;相似度操作单元,配置为对所述第一特征图与所述第二特征图在各个特征点上执行相似度运算操作,以获得第一相似度分布图;点积操作单元,配置为对所述第一特征图和所述第一相似度分布图执行点积操作;加和平均操作单元,配置为对所述第一特征图与所述点积操作单元获得的特征图执行加和平均操作,以获得所述待识别图像与所述样本图像的相似特征图。
9.一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如权利要求1至4中任一项所述的方法。
10.一种电子设备,包括:
一个或多个处理器;以及
存储器,存储有计算机指令,所述计算机指令在被所述处理器运行时使所述处理器执行根据权利要求5至6中任一项所述的方法。
11.一种训练卷积神经网络的装置,包括:
读取模块,配置为获取待识别图像以及样本图像;
执行模块,配置为将第一图像和第二图像输入预先构建的卷积神经网络,并获得由所述卷积神经网络输出的所述第一图像与所述第二图像之间相似度的预测值;以及
估算模块,配置为估算所述相似度的预测值与所述相似度的真实值之间的一致性,
所述装置还包括:
混合模块,配置为将类别不同的至少两幅图像进行混合,以获得所述第一图像;以及
真实值确定模块,配置为根据所述至少两幅图像与所述第二图像之间相似度的真实值,确定所述第一图像与所述第二图像之间相似度的真实值。
12.一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如权利要求5至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910075822.9A CN109784415B (zh) | 2019-01-25 | 2019-01-25 | 图像识别方法及装置、训练卷积神经网络的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910075822.9A CN109784415B (zh) | 2019-01-25 | 2019-01-25 | 图像识别方法及装置、训练卷积神经网络的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109784415A CN109784415A (zh) | 2019-05-21 |
CN109784415B true CN109784415B (zh) | 2021-02-26 |
Family
ID=66501349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910075822.9A Active CN109784415B (zh) | 2019-01-25 | 2019-01-25 | 图像识别方法及装置、训练卷积神经网络的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109784415B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110135517B (zh) * | 2019-05-24 | 2023-04-07 | 北京百度网讯科技有限公司 | 用于获取车辆相似度的方法及装置 |
CN111242162B (zh) * | 2019-12-27 | 2023-06-20 | 北京地平线机器人技术研发有限公司 | 图像分类模型的训练方法、装置、介质以及电子设备 |
CN111339884B (zh) * | 2020-02-19 | 2023-06-06 | 浙江大华技术股份有限公司 | 图像识别方法以及相关设备、装置 |
CN111340195B (zh) * | 2020-03-09 | 2023-08-22 | 创新奇智(上海)科技有限公司 | 网络模型的训练方法及装置、图像处理方法及存储介质 |
CN111461228B (zh) * | 2020-04-01 | 2024-03-15 | 腾讯科技(深圳)有限公司 | 图像推荐方法和装置及存储介质 |
CN111898561B (zh) * | 2020-08-04 | 2024-07-12 | 腾讯科技(深圳)有限公司 | 一种人脸认证方法、装置、设备及介质 |
CN113408546B (zh) * | 2021-06-21 | 2023-03-07 | 武汉工程大学 | 基于相互全局上下文注意力机制的单样本目标检测方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105354307B (zh) * | 2015-11-06 | 2021-01-15 | 腾讯科技(深圳)有限公司 | 一种图像内容识别方法及装置 |
CN106874921B (zh) * | 2015-12-11 | 2020-12-04 | 清华大学 | 图像分类方法和装置 |
CN106599883B (zh) * | 2017-03-08 | 2020-03-17 | 王华锋 | 一种基于cnn的多层次图像语义的人脸识别方法 |
CN108229532B (zh) * | 2017-10-30 | 2021-02-12 | 北京市商汤科技开发有限公司 | 图像识别方法、装置和电子设备 |
CN108171256A (zh) * | 2017-11-27 | 2018-06-15 | 深圳市深网视界科技有限公司 | 人脸图像质评模型构建、筛选、识别方法及设备和介质 |
CN108875767A (zh) * | 2017-12-07 | 2018-11-23 | 北京旷视科技有限公司 | 图像识别的方法、装置、系统及计算机存储介质 |
-
2019
- 2019-01-25 CN CN201910075822.9A patent/CN109784415B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109784415A (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109784415B (zh) | 图像识别方法及装置、训练卷积神经网络的方法及装置 | |
CN111797893B (zh) | 一种神经网络的训练方法、图像分类系统及相关设备 | |
Kao et al. | Visual aesthetic quality assessment with a regression model | |
CN110020592B (zh) | 物体检测模型训练方法、装置、计算机设备及存储介质 | |
US11416672B2 (en) | Object recognition and tagging based on fusion deep learning models | |
CN106897746B (zh) | 数据分类模型训练方法和装置 | |
CN108427927B (zh) | 目标再识别方法和装置、电子设备、程序和存储介质 | |
US9275307B2 (en) | Method and system for automatic selection of one or more image processing algorithm | |
WO2017133188A1 (zh) | 一种特征集确定的方法及装置 | |
US10373014B2 (en) | Object detection method and image search system | |
Elmahmudi et al. | A framework for facial age progression and regression using exemplar face templates | |
CN114419378B (zh) | 图像分类的方法、装置、电子设备及介质 | |
CN111223128A (zh) | 目标跟踪方法、装置、设备及存储介质 | |
CN112966685A (zh) | 用于场景文本识别的攻击网络训练方法、装置及相关设备 | |
CN111950415A (zh) | 一种图像检测方法和装置 | |
US20220351533A1 (en) | Methods and systems for the automated quality assurance of annotated images | |
CN116258873A (zh) | 一种位置信息确定方法、对象识别模型的训练方法及装置 | |
CN113239908B (zh) | 一种题目处理方法、装置、设备及介质 | |
CN112712123B (zh) | 匹配筛选方法、装置、电子设备和计算机可读存储介质 | |
CN114863132A (zh) | 图像空域信息的建模与捕捉方法、系统、设备及存储介质 | |
CN112434722A (zh) | 基于类别相似度的标签平滑计算的方法、装置、电子设备及介质 | |
Tang et al. | Learning Hough regression models via bridge partial least squares for object detection | |
TWI778673B (zh) | 資訊處理裝置、資訊處理方法及程式產品 | |
CN116912909A (zh) | 人脸识别方法、装置、存储介质以及电子设备 | |
KR20240106312A (ko) | 햅틱 질감 예측 장치 및 방법 |
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 |