掌桥专利:专业的专利平台
掌桥专利
首页

合成图像识别方法及装置、图像识别模型训练方法及装置

文献发布时间:2023-06-19 16:12:48



技术领域

本公开涉及人工智能技术领域中的深度学习、图像处理、计算机视觉技术领域,尤其涉及一种合成图像识别方法及装置、图像识别模型训练方法及装置。

背景技术

随着图像技术的不断发展,目前出现了众多的合成图像,为了保证信息安全,对合成图像的识别就显得尤为重要。

为了有效实现对合成图像的准确识别,需要提供一种图像识别模型训练方法、以及合成图像识别方法。

发明内容

本公开提供了一种合成图像识别方法及装置、图像识别模型训练方法及装置。

根据本公开的第一方面,提供了一种合成图像识别方法,包括:

获取待识别的第一图像;

根据图像识别模型中的特征提取层对所述第一图像进行处理,得到所述第一图像的目标特征矩阵,其中,所述目标特征矩阵用于指示所述第一图像中的多个像素点之间的特征相关度;

根据所述目标特征矩阵,确定所述第一图像的输出标签,所述输出标签用于指示所述第一图像是否为合成图像。

根据本公开的第二方面,提供了一种图像识别模型训练方法,包括:

获取训练数据,其中,所述训练数据中包括训练图像、所述训练图像对应的训练标签,所述训练标签用于指示所述训练图像是否为合成图像;

根据图像识别模型中的特征提取层对所述训练图像进行处理,得到所述训练图像的目标特征矩阵,其中,所述目标特征矩阵用于指示所述训练图像中的多个像素点之间的特征相关度;

根据所述目标特征矩阵,确定所述训练图像的预测标签;

根据所述预测标签和训练标签,对所述图像识别模型的模型参数进行更新。

根据本公开的第三方面,提供了一种合成图像识别装置,包括:

获取模块,用于获取待识别的第一图像;

处理模块,用于根据图像识别模型中的特征提取层对所述第一图像进行处理,得到所述第一图像的目标特征矩阵,其中,所述目标特征矩阵用于指示所述第一图像中的多个像素点之间的特征相关度;

确定模块,用于根据所述目标特征矩阵,确定所述第一图像的输出标签,所述输出标签用于指示所述第一图像是否为合成图像。

根据本公开的第四方面,提供了一种图像识别模型训练装置,包括:

获取模块,用于获取训练数据,其中,所述训练数据中包括训练图像、所述训练图像对应的训练标签,所述训练标签用于指示所述训练图像是否为合成图像;

处理模块,用于根据图像识别模型中的特征提取层对所述训练图像进行处理,得到所述训练图像的目标特征矩阵,其中,所述目标特征矩阵用于指示所述训练图像中的多个像素点之间的特征相关度;

确定模块,用于根据所述目标特征矩阵,确定所述训练图像的预测标签;

更新模块,用于根据所述预测标签和训练标签,对所述图像识别模型的模型参数进行更新。

根据本公开的第五方面,提供了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面或者第二方面所述的方法。

根据本公开的第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面或者第二方面所述的方法。

根据本公开的第七方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面或者第二方面所述的方法。

根据本公开的技术解决了合成图像的识别模型缺乏泛化性,进而导致合成图像识别的准确性不高的问题。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本公开的限定。其中:

图1为本公开实施例提供的合成图像的实现示意图;

图2为本公开实施例提供的图像识别模型训练方法的流程图;

图3为本公开实施例提供的图像识别模型训练方法的流程图二;

图4为本公开实施例提供的图像识别模型的结构示意图;

图5为本公开实施例提供的目标特征矩阵的实现示意图;

图6为本公开实施例提供的像素点和图像块的对应关系示意图;

图7为本公开实施例提供的图像识别模型的训练示意图;

图8为本公开实施例提供的合成图像识别方法的流程图;

图9为本公开实施例的图像识别模型训练装置的结构示意图;

图10为本公开实施例的合成图像识别装置的结构示意图;

图11是用来实现本公开实施例的图像识别模型训练方法及合成图像识别方法的电子设备的框图。

具体实施方式

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

为了更好的理解本公开的技术方案,下面对本公开所涉及的相关技术进行进一步的详细介绍。

随着科学技术的不断发展,在目前的日常生活中,深度伪造技术的应用并不少见,比如说智能客服的拟人回答、影视剧对角色的换脸处理、虚拟新闻主播对人力投入的降低。这些应用场景,通过对图像、声音、视频的伪造和自动生成,产生高度逼真的效果。

但是,随着技术的发展及应用门槛的降低,深度伪造技术对于个人信息安全、社会安全等的威胁也愈来愈大。越来越多人也能轻松实现“换脸”“变声”,因此“眼见”不一定“为实”正在生活中不断上演。还有一些人将其应用于安全漏洞攻击、虚假音视频诈骗等,技术滥用带来的风险逐渐为人们所知。

比如说可以结合图1对合成图像进行理解,图1为本公开实施例提供的合成图像的实现示意图。

如图1所示,假设当前存在原始图像101和原始图像102,在原始图像101中包括人物A的脸,在原始图像102中包括人物B的脸。

之后比如说可以可以学习原始图像101中人物A的脸部特征,以及学习原始图像102中人物B的脸部特征,并对脸部特征进行替换,进而得到合成图像103和合成图像104。

参照图1可以确定的是,在合成图像103中的人物,表现出了原始图像102中的人物B的面部特征,以及在合成图像104中的人物,表现出了原始图像101中的人物A的面部特征。

基于上述介绍可以确定的是,为了保证信息的安全和真实性,针对合成图像的识别就显得尤为重要。

目前,相关技术中在实现对合成图像的识别的时候,可以根据已有的公开深度鉴伪数据集进行模型训练,之后基于训练的模型进行合成图像的识别。

然而,直接将已有的公开数据集拿过来进行模型训练,可能导致对公开数据过拟合,并且训练数据集都是公开的,这是很容易被针对性攻击的。

或者,现有技术中还存在一种实现方式,在训练集不仅仅包含公开的深度鉴伪数据集,还对一些不同的场景进行复现,根据类似的伪造方式生成深度伪造数据,然后再进行模型训练,之后基于训练的模型进行合成图像的识别。

这种实现方式,不仅仅在收集了大量的公开数据集加入训练集中,还通过复现一些生成方式生成数据,这种方式在一定程度上增强了模型的泛化性,虽说不会像第一种方式一样容易被针对性攻击,但是对生成方式过拟合的问题依然没有解决。

以及,还存在另一种实现方式,不单单从深度伪造数据集上考虑,而是对伪造的图片、视频进行预处理,从而引入频域特征,联合空域特征综合进行训练与预测。

这种实现方式在一定程度解决了上述介绍的过拟合问题,通过构建双流或者多流的网络结构,引入了图像的频域特征,联合频域特征与空域特征增强模型在跨数据集泛化性的能力,但是跨数据集能力提升有限,且整体模型较大耗时长,在高速检测上存在一定的困难。

基于上述介绍可以确定的是,现有技术的实现方案存在过拟合的问题,从而会导致模型缺乏泛化性,而为了解决过拟合的问题,又会导致模型设计较为复杂,进而导致模型处理的耗时较长。因此现有技术中无法简单有效的提升模型处理的泛化性,进而导致针对合成图像的识别的准确性不高。

基于现有技术中的问题,目前需要在已有数据集的数据上,尽可能的泛化到尽可能多的场景,因此本公开提出了如下技术构思:深度伪造生成的人脸往往需要重新贴回原图,这就会导致重新贴合的图像块和原图的图像块之间的数据分布存在一定的差异性,因此本公开的技术方案并不完全依赖于某些数据集完成模型训练,而是基于图像特征的分布一致性来进行识别,通过识别图像中各个像素点之间的特征相关度,从而确定训练图像的标签,以有效的实现从数据分布的角度实现对合成图像的识别,以提升模型处理的泛化性,进而提升合成图像识别的正确性。

在上述介绍内容的基础上,下面结合具体的实施例对本公开提供的图像识别模型训练方法以及合成图像识别方法进行介绍,需要说明的是,本公开中各实施例的执行主体可以为服务器、处理器、微处理器等具备数据处理功能的设备,在实际实现过程中,具体的执行主体可以根据实际需求进行选择和设置,只要是具备数据处理功能的设备即可。

本公开中的内容包括两个部分,一部分是图像识别模型训练方法,该部分介绍的是图像识别模型的训练过程。另一部分是合成图像识别方法,该部分介绍的是图像识别模型的应用过程。

为了更好的理解本公开的技术方案,下面首先对图像识别模型训练方法进行介绍,图2为本公开实施例提供的图像识别模型训练方法的流程图。

如图2所示,该方法包括:

S201、获取训练数据,其中,训练数据中包括训练图像、训练图像对应的训练标签,训练标签用于指示训练图像是否为合成图像。

在本实施例中,为了对图像识别模型进行训练,需要首先获取至少一组训练数据,在任一组训练数据中,都包括训练图像,以及训练图像对应的训练标签。其中,训练标签用于指示训练图像是否为合成图像。

可以理解的是,训练图像有可能是合成图像,也有可能不是合成图像,因为当前的训练数据是用于模型训练的,因此训练图像的训练标签的指示,是训练图像的真实情况,也就是说可以真实的标注训练图像是否为合成图像。

S202、根据图像识别模型中的特征提取层对训练图像进行处理,得到训练图像的目标特征矩阵,其中,目标特征矩阵用于指示训练图像中的多个像素点之间的特征相关度。

在确定训练数据之后,就可以基于训练数据对图像识别模型进行训练了。在本实施例中,图像识别模型中可以包括至少一个特征提取层,其中,特征提取层用于对训练图像进行一系列的特征提取和特征转换处理,从而得到训练图像的目标特征矩阵,其中目标特征矩阵用于指示训练图像中的多个像素点之间的特征相关度。

因此可以根据图像识别模型中的至少一个特征提取层,对训练图像进行处理,从而得到训练图像的至少一个目标特征矩阵。

在一种可能的实现方式中,假设在当前的训练图像中共包括t个像素点,则目标特征矩阵比如说可以是t×t大小的,其中矩阵元素就用于表示各个像素点互相之间的特征相关度。

可以理解的是,目标特征矩阵指示像素点之间的特征相关度,实际上也就是指示了像素点之间数据分布的一致性,如果部分像素点之间的特征相关度比较小,那么相应的这部分像素点之间的数据分布一致性就比较低。那么这部分像素点就有可能都是来自原始图像,或者都是来自合成图像的。以及,如果部分像素点之间的特征相关度比较大,那么相应的这部分像素点之间的数据分布一致性就比较高。那么这部分像素点就有可能是分别来自原始图像和合成图像的。

S203、根据目标特征矩阵,确定训练图像的预测标签。

在本实施例中,图像识别模型中的多个特征提取层,会针对训练图像分别进行处理,从而得到训练图像的多个目标特征矩阵,在一种可能的实现方式中,这多个目标特征矩阵可以从不同的语义层来反映训练图像中像素点的特征相关度。因此在得到多个目标特征矩阵之后,还需要根据这多个目标特征矩阵进行进一步的综合处理,以得到最终的输出结果。

因此可以根据至少一个目标特征矩阵,确定训练图像的预测标签,本实施例中的预测标签就是图像识别模型输出的,预测训练图像是否为合成图像的指示信息。

在一种可能的实现方式中,比如说可以通过图像识别模型中的全连接层对至少一个目标特征矩阵进行处理,从而得到训练图像的预测标签。或者,还可以通过图像识别模型中的其余网络层对至少一个目标特征矩阵进行处理,只要该网络层可以实现对多个特征的联合,以得到一个最终的输出结果即可。

S204、根据预测标签和训练标签,对图像识别模型的模型参数进行更新。

可以理解的是,预测标签和训练标签都是用于指示训练图像是否为合成图像的,不同之处在于,预测标签是图像识别模型对训练图像进行处理之后输出的,其是图像识别模型预测的结果,并不能保证完全正确。而当前的训练标签是针对训练图像标注得到的,其指示的正确性是可以保证的。

模型训练的目的正是为了拉近预测标签和训练标签之间的距离,因此本实施例中可以根据预测标签和训练标签,对图像识别模型的模型参数进行更新,以实现对图像识别模型的训练。

在本实施例中,存在至少一组训练数据,在一种可能的实现方式中,比如说可以根据多组训练数据对图像识别模型进行多轮训练,从而得到训练完成的图像识别模型。

本公开实施例提供的图像识别模型训练方法,包括:获取训练数据,其中,训练数据中包括训练图像、训练图像对应的训练标签,训练标签用于指示训练图像是否为合成图像。根据图像识别模型中的特征提取层对训练图像进行处理,得到训练图像的目标特征矩阵,其中,目标特征矩阵用于指示训练图像中的多个像素点之间的特征相关度。根据目标特征矩阵,确定训练图像的预测标签。根据预测标签和训练标签,对图像识别模型的模型参数进行更新。通过图像识别模型中的多个特征提取层对训练图像进行处理,从而得到训练图像的多个目标特征矩阵,因为目标特征矩阵可以指示训练图像中的多个像素点之间的特征相关度,因此目标特征矩阵就可以有效的反映出训练图像中的多个像素点各自之间的数据分布是否一致,之后根据多个目标特征矩阵,确定训练图像的预测标签,然后根据预测标签和训练标签,对图像识别模型的模型参数进行更新,从而可以有效的实现对图像识别模型的训练,因为图像识别模型可以从像素点的特征相关度的角度,确定图像中像素点的数据分布一致性,从而可以有效提升图像识别模型的处理泛化性,进而提升合成图像识别的正确性。

为使读者更深刻地理解本公开的实现原理,现结合以下图3-图7对图2所示的实施例进行进一步细化。图3为本公开实施例提供的图像识别模型训练方法的流程图二,图4为本公开实施例提供的图像识别模型的结构示意图,图5为本公开实施例提供的目标特征矩阵的实现示意图,图6为本公开实施例提供的像素点和图像块的对应关系示意图,图7为本公开实施例提供的图像识别模型的训练示意图。

如图3所示,该方法包括:

S301、获取训练数据,其中,训练数据中包括训练图像、训练图像对应的训练标签,训练标签用于指示训练图像是否为合成图像。

其中,S301的实现方式与上述S201的实现方式类似,此处对此不再赘述。

S302、针对图像识别模型中的第i个特征提取层,确定训练图像在第i个特征提取层对应的输入信息,其中,i等于1时,输入信息为训练图像,i大于1时,输入信息为第i-1个特征提取层中的特征提取单元输出的初始特征矩阵。

在本实施例中,图像识别模型中比如说可以包括n个特征提取层,其中每个特征提取层都可以针对训练图像确定目标特征矩阵,但是各个特征提取层确定的特征矩阵的维度是不同的。

比如说可以结合图4进行理解,如图4所示,假设在图像识别模型中包括4个特征提取层,图4中框出了一个特征提取层的结构,那么图4中就包括从上到下的4个特征提取层。其中,针对各个特征提取层的处理过程都是类似的,因此下面以第i个特征提取层为主体,对特征提取层的处理的详细过程进行介绍。其中i为大于等于1,并且小于等于n的整数。

如图4所示,在特征提取层中包括特征提取单元,其中,特征提取单元用于对训练图像进行特征提取。并且,每一个特征提取单元在进行特征提取的时候,其输入信息都是不同的,因此首选需要确定各个特征提取单元的输入信息,但是输入信息都是和训练图像相关的信息。

在一种可能的实现方式中,在确定训练图像在第i个特征提取层对应的输入信息的时候。在i等于1时,也就是说针对的第1个特征提取层,其输入信息就是训练图像。以及在i大于1时,也就是说针对第2个以及之后的特征提取层,其输入信息就是第i-1个特征提取层中的特征提取单元所输出的初始特征矩阵,此处的初始特征矩阵是针对训练图像进行特征提取所得到的特征矩阵,此处的初始特征矩阵还可以理解为图像特征(feature)。

比如说可以参照图4进行理解,针对第1个特征提取层,其输入信息就是训练图像,针对第2个特征提取层、第3个特征提取层、第4个特征提取层,其输入信息就是上一个特征提取层的特征提取单元所输出的图像特征(初始特征矩阵)。

可以理解的是,随着特征提取层的深入进行,训练图像的大小会缩小,那么相应的训练图像的特征所携带的语义信息也会越高层,也就是说随着网络的深度的增加,语义信息会越丰富,因此本实施例中的多个特征提取层,可以从多个不同的语义层来确定训练图像的目标特征矩阵,之后再基于多个语义层的目标特征矩阵来综合确定最终的输出结果,从而可以保证网络识别模型对不同尺度、不同语义的特征的拟合能力。

S303、根据第i个特征提取层的特征提取单元对输入信息进行特征提取处理,得到训练图像在第i个特征提取层的初始特征矩阵,其中,初始特征矩阵的维度为N×C×H/2

在确定第i个特征提取层的输入信息之后,就可以根据第i个特征提取层的特征提取单元,对输入信息进行特征提取处理了。在一种可能的实现方式中,本实施例中的特征提取单元内部可以为卷积处理,或者也可以为其余任意的特征提取的处理操作,本实施例对此不做限制,只要特征提取单元可以实现特征提取即可。

在特征提取单元进行特征提取处理之后,就可以得到训练图像在第i个特征提取层的初始特征矩阵,其中,初始特征矩阵的维度为N×CH/2

例如可以结合图4进行理解,假设当前的训练图像原始的图像尺寸为3×H×W,其中,3是指训练图像的原始尺寸是3通道的。

如图4所示,针对第1个特征提取层,特征提取单元1进行特征提取之后,可以得到训练图像在第1个特征提取层的初始特征矩阵,其中,初始特征矩阵的维度为N×C×H/2×W/2。

针对第2个特征提取层,特征提取单元2进行特征提取之后,可以得到训练图像在第2个特征提取层的初始特征矩阵,其中,初始特征矩阵的维度为N×C×H/4×W/4。

针对第3个特征提取层,特征提取单元3进行特征提取之后,可以得到训练图像在第3个特征提取层的初始特征矩阵,其中,初始特征矩阵的维度为N×C×H/8×W/8。

针对第4个特征提取层,特征提取单元4进行特征提取之后,可以得到训练图像在第4个特征提取层的初始特征矩阵,其中,初始特征矩阵的维度为N×C×H/16×W/16。

S304、对初始特征矩阵进行矩阵变换,得到训练图像在第i个特征提取层的第一特征矩阵,第一特征矩阵的维度为N×C×HW/2

在得到训练图像的初始特征矩阵之后,可以理解的是,针对任一个训练图像,其初始特征矩阵都是C×H/2

比如说可以结合图4进行理解,如图4所示,针对第1个特征提取层,初始特征矩阵的维度为N×C×H/2×W/2,在进行矩阵变换之后,可以得到训练图像在第1个特征提取层的第一特征矩阵,其中,第一特征矩阵的维度为N×C×HW/4。

针对第2个特征提取层,初始特征矩阵的维度为N×C×H/4×W/4,在进行矩阵变换之后,可以得到训练图像在第2个特征提取层的第一特征矩阵,其中,第一特征矩阵的维度为N×C×HW/16。

针对第3个特征提取层,初始特征矩阵的维度为N×C×H/8×W/8,在进行矩阵变换之后,可以得到训练图像在第3个特征提取层的第一特征矩阵,其中,第一特征矩阵的维度为N×C×HW/64。

针对第4个特征提取层,初始特征矩阵的维度为N×C×H/16×W/16,在进行矩阵变换之后,可以得到训练图像在第4个特征提取层的第一特征矩阵,其中,第一特征矩阵的维度为N×C×HW/256。

S305、对第一特征矩阵进行通道置换处理,得到第二特征矩阵,其中,第二特征矩阵的维度为N×HW/2

在确定第一矩阵之后,本实施例中可以针对第一特征矩阵进行通道置换处理,从而得到第一特征矩阵。基于上述介绍可以确定的是,第一特征矩阵的的维度为N×C×HW/2

可以理解的是,当前进行通道置换,是为了便于后续进行矩阵乘法的操作,以确定像素点之间的特征相似度。

S306、根据第一特征矩阵和第二特征矩阵进行矩阵点乘处理,得到训练图像在第i个特征提取层对应的目标特征矩阵,目标特征矩阵的维度为N×HW/2

进一步的,在确定第一特征矩阵和第二特征矩阵之后,可以根据第一特征矩阵和第二特征矩阵进行矩阵点乘处理,从而得到训练图像在第i个特征提取层所对应的目标特征矩阵,本实施例中的目标特征矩阵的维度为N×HW/2

可以理解的是,第一特征矩阵和第二特征矩阵的不同仅仅在于通道的顺序不同,那么当前进行矩阵乘法的处理,就可以实现针对每一个像素点,都和其余的像素点进行多个维度的特征相似度的计算。此处的特征相似度的计算,实际上就是计算每个像素点的C维的特征向量的特征相似度。此处的特征相似度,可以理解为是C维的特征向量的余弦相似度。

可以理解的是,如果余弦相似度比较接近,那么表示两个像素点可能是同源的,也就是说来自于同一张图像,数据分布类似。或者,如果余弦相似度相差较大,就表示两个像素点可能是非同源的,也就是说来自于不同的图像,数据分布差异较大,有篡改的痕迹。

此次对本实施例中的目标特征矩阵进行进一步的详细介绍,假设当前第i个特征提取层处理的训练图像尺寸为H/2

比如说可以结合图5进行理解,假设当前训练图像的尺寸是2×2,那么当前训练图像中像素点的数量为就是4个,那么为了表示这4个像素点互相之间的特征相似度,目标特征矩阵的大小就是图5中所示的4×4的大小。

其中,S11就表示的是像素点1和像素点1之间的特征相似度,S12表示的就是像素点1和像素点2之间的特征相似度,以此类推。

因此本实施例中的目标特征矩阵,可以有效的表示训练图像中各个像素点之间的特征相关度。更进一步的说,可以表示训练图像中各个图像块之间的特征相关度。

下面结合图6对图像块之间的特征相关度进行理解,在本实施例中,第i个特征提取层确定的训练图像的第一特征矩阵的的维度为N×CHW/2

那么据此可以理解的是,在每一层中的图像大小相对于上一层都缩小了4倍,相应的也就是说,第i层中的一个图像像素点就对应第i-1层中的4个图像像素点。

可以结合图6进行理解,比如说当前第i层的图像尺寸为2×2,第i-1层的图像尺寸为4×4,那么相应的,第i层中的1个像素点就对应第i-1层中的4个像素点。比如说第i层中的像素点60就对应第i-1层中的像素点601、像素点602、像素点603、像素点604。

那么可以理解的是,确定第i层中的像素点60和其余3个像素点之间的特征相似度,实际上就可以表示第i-1层中的像素点601、像素点602、像素点603、像素点604组成的图像块,和第i-1层中的其余图像块之间的相似度。因此本实施例中的目标特征矩阵可以有效的指示训练图像中的图像块之间的特征相似度,进而反映图像块的分布一致性。

S307、将目标特征矩阵输入至对应的卷积层中,得到降维后的中间特征。

基于上述介绍可以确定的是,目标特征矩阵可以有效的指示各个训练图像中的各个图像块之间的特征相关度。同时,本实施例中从多个不同的以语义层进行特征抽取,确定了多个目标特征矩阵,之后根据多个语义层对应的目标特征矩阵再进行进一步的综合处理,从而可以保证图像识别模型可以针对不同尺度、不同语义的特征的拟合能力。

在一种可能的实现方式中,参照图4,比如说可以将至少一个目标特征矩阵分别输入至各自对应的卷积层中,进行降维处理,从而得到降维之后的中间特征。

S308、根据全连接层对降维后的中间特征进行特征连接处理,得到全连接层输出的训练图像的预测标签。

如图4所示,在得到降维之后的中间特征之后,可以进一步的根据全连接层对至少一个降维后的中间特征进行特征连接处理,从而可以得到全连接层所输出的训练图像的预测标签。

在一种可能的实现方式中,本实施例中的图像识别模型的整体结构,也就是图4中所示的主体网络结构,比如说可以是ResNeSt50,从而可以从多个不同的语义层抽取特征,以进行图像中多个图像块的自相关度的计算。或者在实际实现过程中,也可以选用其余的网络结构,本实施例对此不做限制。

S309、根据预测标签和训练标签,确定损失函数值。

在得到预测标签之后,就可以根据预测标签和训练标签对图像识别模型进行优化可。

在一种可能的实现方式中,比如说可以采用预设损失函数对训练标签和预测标签进行处理,从而确定损失函数值,其中预设损失函数的具体实现可以根据实际需求进行选择和设置,只要损失函数值可以反映训练标签和预测标签之间的差距即可。

示例性的,比如说预设损失函数可以满足如下公式:

其中,其中y

在一种可能的实现方式中,训练标签y

在实际实现过程中,预设损失函数的具体实现不限于上述介绍的类型,其还可以根据实际需求进行选择和设置,只要预设损失函数值可以描述预测标签和训练标签之间的距离即可。

S310、根据损失函数值,对图像识别模型的模型参数进行更新。

如图7所示,图像识别模型对训练图像处理之后,可以得到预测标签,之后根据预测标签和训练标签确定损失函数值,在确定损失函数值之后,参照图7,就可以根据损失函数值对图像识别模型的模型参数进行更新,以实现根据损失函数值对图像识别模型进行优化,以拉近图像识别模型所输出的预测标签和训练标签之间的距离,进而有效保证图像识别模型所输出的预测标签的正确性。

以及与上述实施例介绍的类似,本实施例中的模型训练过程可以针对多个训练图像进行多次迭代处理,从而得到训练完成的图像识别模型的模型参数。同时可以理解的是,本实施例中的模型优化目标是为了使得图像识别模型输出的训练图像的预测标签,和训练图像的训练标签尽可能的接近,更为具体的,可以确定图像识别模型的模型参数的优化目标是损失函数值最小。那么例如可以在确定损失函数值为最小值的时候,确定图像识别模型训练结束,得到训练后的图像识别模型。或者,还可以在多个训练图像均处理完成之后,确定图像识别模型训练结束,得到训练后的图像识别模型。

本公开实施例提供的图像识别模型训练方法,通过多个特征提取层分别针对训练图像进行特征提取,以确定目标特征矩阵,因为每个特征提取层都是以上一个特征提取层输出的图像特征为基础,进行特征提取的,从而可以保证随着网络的深度,特征提取层可以提取到更高层的语义特征,进而有效保证了从多个不同的语义层进行图像块的自相关度的计算,以保证图像识别模型可以对不同尺度、不同语义的特征的拟合能力。并且,本实施例中的每一个特征提取层,通过针对特征提取单元提取的初始特征矩阵,进行矩阵变换进行通道合并得到第一特征矩阵,以及再进一步进行通道置换得到第二特征矩阵,然后根据第一特征矩阵和第二特征矩阵进行矩阵乘法处理,从而可以得到可以表示各个像素点之间的特征相似度的目标特征矩阵,进一步的,因为本实施例中随着网络层的深度,特征提取层对应的图像尺寸总是在不断的缩小,因此目标特征矩阵就可以有效的反映出训练图像中的多个图像块各自之间的特征相似度,进而指示图像特征分布的一致性。最终再根据多个目标特征矩阵进行卷积、全连接处理,从而可以综合多个目标特征矩阵共同确定训练图像的预测标签,进而可以保证得到的预测标签的有效性。之后再根据预测标签和训练标签确定损失函数值,然后根据损失函数值对图像识别模型的模型参数进行更新,进而有效实现对图像识别模型的有效训练,保证图像识别模型输出结果的正确性。

上述实施例介绍的图像识别模型的训练过程,在上述介绍内容的基础上,下面再结合具体的实施例对图像识别模型的应用进行介绍。图8为本公开实施例提供的合成图像识别方法的流程图。

如图8所示,该方法包括:

S801、获取待识别的第一图像。

在本实施例中,可以获取待识别的第一图像,此处的第一图像可能是合成图像,也可能不是合成图像,本实施例对此不做限制,只要其是需要进行识别的图像即可。

S802、根据图像识别模型中的特征提取层对第一图像进行处理,得到第一图像的目标特征矩阵,其中,目标特征矩阵用于指示第一图像中的多个像素点之间的特征相关度。

S803、根据目标特征矩阵,确定第一图像的输出标签,输出标签用于指示第一图像是否为合成图像。

本实施例中的图像识别模型是上述介绍的实施例中训练得到的模型,则可以根据图像识别模型对第一图像进行处理,从而得到第一图像的输出标签。其实现方式与上述模型训练实施例中介绍的类似,可以根据图像识别模型中的特征提取层对第一图像进行处理,得到第一图像的目标特征矩阵,其中,目标特征矩阵用于指示第一图像中的多个像素点之间的特征相关度。之后再根据目标特征矩阵,确定第一图像的输出标签,输出标签可以用于指示第一图像是否为合成图像。其中图像识别模型的具体处理过程可以参照上述实施例的介绍,本实施例对此不再赘述。

此处的输出标签与上述介绍的预测标签类似,只是此处的输出标签是在模型应用过程中的称呼,因此输出标签就可以指示第一图像是否为合成图像。

在一种可能的实现方式中,本实施例中的输出标签比如说可以是0到1之间的值,用于指示第一图像为合成图像的概率。则进一步的,比如说可以将输入标签和预设概率值进行比较,若输出标签大于或等于预设概率值,则可以确定第一图像为合成图像,若输出标签小于预设概率值,则可以确定第一图像不是合成图像。

本公开实施例提供的合成图像识别方法,包括:获取待识别的第一图像。根据图像识别模型中的特征提取层对第一图像进行处理,得到第一图像的目标特征矩阵,其中,目标特征矩阵用于指示第一图像中的多个像素点之间的特征相关度。根据目标特征矩阵,确定第一图像的输出标签,输出标签用于指示第一图像是否为合成图像。因为图像识别模型是从图像中的图像块的数据分布角度,确定第一图像是否为合成图像,进而输出第一图像的输出标签,从而可以有效保证图像识别模型的泛化性,进而保证图像识别模型识别第一图像是否为合成图像的识别结果的正确性。

综上所述,本公开提供的方法,相对于现有技术中的方案,不仅仅简单的把公开数据与自生成数据加入训练中,而是从模型结构上出发解决了模型对于跨数据集的泛化性问题。同时,减少了频域特征提取的步骤,大大减小了模型的容量,加快了模型的预测速度,在跨数据能力与高速检测两方面都能达到很好的水平。

图9为本公开实施例的合成图像识别装置的结构示意图。如图9所示,本实施例的合成图像识别装置900可以包括:获取模块901、处理模块902、确定模块903。

获取模块901,用于获取待识别的第一图像;

处理模块902,用于根据图像识别模型中的特征提取层对所述第一图像进行处理,得到所述第一图像的目标特征矩阵,其中,所述目标特征矩阵用于指示所述第一图像中的多个像素点之间的特征相关度;

确定模块903,用于根据所述目标特征矩阵,确定所述第一图像的输出标签,所述输出标签用于指示所述第一图像是否为合成图像。

一种可能的实现方式中,所述处理模块902具体用于:

针对所述图像识别模型中的第i个特征提取层,根据所述第i个特征提取层的特征提取单元对所述第一图像进行特征提取处理,得到所述第一图像在所述第i个特征提取层的第一特征矩阵;

根据所述第一特征矩阵,确定所述第一图像在所述第i个特征提取层对应的目标特征矩阵;

其中,所述i为大于等于1并且小于等于n的整数,所述n为所述图像识别模型中特征提取层的数量。

一种可能的实现方式中,所述处理模块902具体用于:

确定所述第一图像在所述第i个特征提取层对应的输入信息,其中,所述i等于1时,所述输入信息为所述第一图像,所述i大于1时,所述输入信息为第i-1个特征提取层中的特征提取单元输出的初始特征矩阵;

根据所述第i个特征提取层的特征提取单元对所述输入信息进行特征提取处理,得到所述第一图像在所述第i个特征提取层的初始特征矩阵,其中,所述初始特征矩阵的维度为N×C×H/2^i×W/2^i;

对所述初始特征矩阵进行矩阵变换,得到所述第一图像在所述第i个特征提取层的第一特征矩阵,所述第一特征矩阵的维度为N×C×HW/2^(i+1);

其中,所述N为所述第一图像的数量,所述C为所述第一图像的通道数,所述H为所述第一图像的高度,所述W为所述第一图像的宽度。

一种可能的实现方式中,所述处理模块902具体用于:

对所述第一特征矩阵进行通道置换处理,得到第二特征矩阵,其中,所述第二特征矩阵的维度为N×HW/2^(i+1)×C;

根据所述第一特征矩阵和所述第二特征矩阵进行矩阵点乘处理,得到所述第一图像在所述第i个特征提取层对应的目标特征矩阵,所述目标特征矩阵的维度为N×HW/2^(i+1)×HW/2^(i+1)。

一种可能的实现方式中,所述图像识别网络中还包括卷积层;

所述确定模块903具体用于:

将所述目标特征矩阵输入至对应的卷积层中,得到降维后的中间特征;

根据所述降维后的中间特征进行特征连接处理,得到所述第一图像的输出标签。

一种可能的实现方式中,所述图像识别网络中还包括全连接层;

所述确定模块903具体用于:

根据所述全连接层对所述所述降维后的中间特征进行特征连接处理,得到所述全连接层输出的所述第一图像的输出标签。

图10为本公开实施例的图像识别模型训练装置的结构示意图。如图10所示,本实施例的图像识别模型训练装置100可以包括:获取模块1001、处理模块1002、确定模块1003、更新模块1004。

获取模块1001,用于获取训练数据,其中,所述训练数据中包括训练图像、所述训练图像对应的训练标签,所述训练标签用于指示所述训练图像是否为合成图像;

处理模块1002,用于根据图像识别模型中的特征提取层对所述训练图像进行处理,得到所述训练图像的目标特征矩阵,其中,所述目标特征矩阵用于指示所述训练图像中的多个像素点之间的特征相关度;

确定模块1003,用于根据所述目标特征矩阵,确定所述训练图像的预测标签;

更新模块1004,用于根据所述预测标签和训练标签,对所述图像识别模型的模型参数进行更新。

一种可能的实现方式中,所述处理模块1002具体用于:

针对所述图像识别模型中的第i个特征提取层,根据所述第i个特征提取层的特征提取单元对所述训练图像进行特征提取处理,得到所述训练图像在所述第i个特征提取层的第一特征矩阵;

根据所述第一特征矩阵,确定所述训练图像在所述第i个特征提取层对应的目标特征矩阵;

其中,所述i为大于等于1并且小于等于n的整数,所述n为所述图像识别模型中特征提取层的数量。

一种可能的实现方式中,所述处理模块1002具体用于:

确定所述训练图像在所述第i个特征提取层对应的输入信息,其中,所述i等于1时,所述输入信息为所述训练图像,所述i大于1时,所述输入信息为第i-1个特征提取层中的特征提取单元输出的初始特征矩阵;

根据所述第i个特征提取层的特征提取单元对所述输入信息进行特征提取处理,得到所述训练图像在所述第i个特征提取层的初始特征矩阵,其中,所述初始特征矩阵的维度为N×C×H/2^i×W/2^i;

对所述初始特征矩阵进行矩阵变换,得到所述训练图像在所述第i个特征提取层的第一特征矩阵,所述第一特征矩阵的维度为N×C×HW/2^(i+1);

其中,所述N为所述训练图像的数量,所述C为所述训练图像的通道数,所述H为所述训练图像的高度,所述W为所述训练图像的宽度

一种可能的实现方式中,所述处理模块1002具体用于:

对所述第一特征矩阵进行通道置换处理,得到第二特征矩阵,其中,所述第二特征矩阵的维度为N×HW/2^(i+1)×C;

根据所述第一特征矩阵和所述第二特征矩阵进行矩阵点乘处理,得到所述训练图像在所述第i个特征提取层对应的目标特征矩阵,所述目标特征矩阵的维度为N×HW/2^(i+1)×HW/2^(i+1)。

一种可能的实现方式中,所述图像识别网络中还包括卷积层;

所述确定模块1003具体用于:

将所述目标特征矩阵输入至对应的卷积层中,得到降维后的中间特征;

根据所述降维后的中间特征进行特征连接处理,得到所述训练图像的预测标签。

一种可能的实现方式中,以及所述图像识别网络中还包括全连接层;

所述确定模块1003具体用于:

根据所述全连接层对所述所述降维后的中间特征进行特征连接处理,得到所述全连接层输出的所述训练图像的预测标签。

一种可能的实现方式中,所述更新模块1004具体用于:

根据所述预测标签和所述训练标签,确定损失函数值;

根据所述损失函数值,对所述图像识别模型的模型参数进行更新。

本公开提供一种合成图像识别方法及装置、图像识别模型训练方法及装置,应用于人工智能技术领域,具体为深度学习、图像处理、计算机视觉技术领域,可应用于人脸识别等场景,以达到提升合成图像的识别模型的泛化性,进而提升合成图像识别的准确性的目的。

本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。

根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。

根据本公开的实施例,本公开还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。

图11示出了可以用来实施本公开的实施例的示例电子设备1100的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图11所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。

设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如图像识别模型训练方法及合成图像识别方法。例如,在一些实施例中,图像识别模型训练方法及合成图像识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM1003并由计算单元1001执行时,可以执行上文描述的图像识别模型训练方法及合成图像识别方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行图像识别模型训练方法及合成图像识别方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

相关技术
  • 合成图像识别方法及装置、图像识别模型训练方法及装置
  • 图像识别模型的训练方法及装置、图像识别方法及装置
技术分类

06120114741992