一种基于神经网络的图像处理方法、装置及存储介质与流程

专利2022-06-29  51


本公开涉及计算机图像处理技术领域,尤其涉及一种基于神经网络的图像处理方法、装置及存储介质。



背景技术:

以神经网络为代表的人工智能(artificialintelligence,ai)技术应用到了医学诊断、人脸识别、自动驾驶等众多场景之中。为了提高图像处理的安全性,可以对神经网络模型进行加密,从而使神经网络模型即使被窃取也无法直接被使用。

相关技术中,首先对原始数据进行加密,然后用加密后的数据进行神经网络模型的训练或者预测。但是,该方案中加密过程会改变图像本身的视觉效果,同时,由于数据加密和神经网络预测是一体的,如果将加密后的数据分发到其他设备进行预测,则设备接收的图像已经不具有原始的视觉作用,无法验证和复核预测结果是否正确。



技术实现要素:

有鉴于此,本公开提出了一种基于神经网络的图像处理方法、装置及存储介质。

根据本公开的一方面,提供了一种基于神经网络的图像处理方法,所述方法包括:

根据第一图像、预设密钥及噪音生成器,得到加密噪音;

根据所述第一图像及所述加密噪音,得到第二图像;

通过所述第二图像及加密的神经网络,得到图像加密的相关预测结果。

在一种可能的实现方式中,所述方法还包括:

根据所述第二图像及所述加密噪音,得到所述第一图像。

在一种可能的实现方式中,所述根据第一图像、预设密钥及噪音生成器,得到加密噪音,包括:

根据从第一噪音矩阵中选取的至少一个指定位置,得到所述预设密钥;其中,所述第一噪音矩阵为与所述第一图像相同大小的矩阵;

将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置,得到第二噪音矩阵,且所述至少一个指定位置之外的其他像素点位置的值为0;

将所述第二噪音矩阵作为所述加密噪音。

在一种可能的实现方式中,所述将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置之前,所述方法还包括:

从所述第一噪音矩阵中,选取所述至少一个指定位置之外的其他像素点位置的值;

根据所述至少一个指定位置之外的其他像素点位置的值,得到输入所述噪音生成器的至少一个向量。

在一种可能的实现方式中,所述方法还包括:

根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络;

所述加密的神经网络,为通过噪音生成网络及图像判别网络间的生成对抗训练所得到的生成对抗网络(generativeadversarialnetworks,gan)。

在一种可能的实现方式中,所述方法还包括:

根据所述第一样本图像进行训练,得到原始神经网络;

所述第二样本图像,为根据所述噪音生成网络得到噪音矩阵后对所述第一样本图像加密所得到的样本图像;

所述根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络,包括:

根据所述第一样本图像在所述原始神经网络上的第一损失函数值、所述第一样本图像在所述加密的神经网络上的第二损失函数值、所述第二样本图像在所述加密的神经网络上的第三损失函数值及所述噪音生成网络得到的噪音矩阵的2范数,得到第四损失函数值,并通过所述第四损失函数值的反向传播,训练所述噪音生成网络;

根据所述图像判别网络输入所述第一样本图像得到的第一判别输出值、及所述图像判别网络输入所述第二样本图像得到的第二判别输出值,得到第五损失函数,并通过所述第五损失函数值的反向传播,训练所述图像判别网络;

若所述噪音生成网络及所述图像判别网络通过所述生成对抗训练达到收敛,则结束所述生成对抗训练,将所述噪音生成网络作为所述噪音生成器,将所述图像判别网络作为判别器;

根据所述噪音生成器和判别器,将所述加密的神经网络训练达到收敛。

根据本公开的另一方面,提供了一种基于神经网络的图像处理装置,包括:

加密噪音生成模块,根据第一图像、预设密钥及噪音生成器,得到加密噪音;

图像加密模块,用于根据所述第一图像及所述加密噪音,得到第二图像;

预测模块,用于通过所述第二图像及加密的神经网络,得到图像加密的相关预测结果。

在一种可能的实现方式中,所述装置还包括:

图像解密模块,用于根据所述第二图像及所述加密噪音,得到所述第一图像。

在一种可能的实现方式中,所述加密噪音生成模块,包括:

预设密钥生成单元,用于根据从第一噪音矩阵中选取的至少一个指定位置,得到所述预设密钥;其中,所述第一噪音矩阵为与所述第一图像相同大小的矩阵;

第二噪音矩阵生成单元,用于将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置,得到第二噪音矩阵,且所述至少一个指定位置之外的其他像素点位置的值为0;

加密噪音生成单元,用于将所述第二噪音矩阵作为所述加密噪音。

在一种可能的实现方式中,所述将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置之前,所述方法还包括:

从所述第一噪音矩阵中,选取所述至少一个指定位置之外的其他像素点位置的值;

根据所述至少一个指定位置之外的其他像素点位置的值,得到输入所述噪音生成器的至少一个向量。

在一种可能的实现方式中,所述装置还包括:

训练模块,用于根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络;

所述加密的神经网络,为通过噪音生成网络及图像判别网络间的生成对抗训练所得到的gan。

在一种可能的实现方式中,所述训练模块,还用于根据所述第一样本图像进行训练,得到原始神经网络;

所述第二样本图像,为根据所述噪音生成网络得到噪音矩阵后对所述第一样本图像加密所得到的样本图像;

所述训练模块,包括:

噪音生成网络训练单元,用于根据所述第一样本图像在所述原始神经网络上的第一损失函数值、所述第一样本图像在所述加密的神经网络上的第二损失函数值、所述第二样本图像在所述加密的神经网络上的第三损失函数值及所述噪音生成网络得到的噪音矩阵的2范数,得到第四损失函数值,并通过所述第四损失函数值的反向传播,训练所述噪音生成网络;

图像判别网络训练单元,用于根据所述图像判别网络输入所述第一样本图像得到的第一判别输出值、及所述图像判别网络输入所述第二样本图像得到的第二判别输出值,得到第五损失函数,并通过所述第五损失函数值的反向传播,训练所述图像判别网络;

加密的神经网络生成单元,用于若所述噪音生成网络及所述图像判别网络通过所述生成对抗训练达到收敛,则结束所述生成对抗训练,将所述噪音生成网络作为所述噪音生成器,将所述图像判别网络作为判别器;根据所述噪音生成器和判别器,将所述加密的神经网络训练达到收敛。

根据本公开的另一方面,提供了一种基于神经网络的图像处理装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行上述方法。

根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。

本公开实施例中,通过预设密钥、噪音生成器对原始图像进行加密,并利用加密后的图像和加密的神经网络得到预测结果;由于加密的神经网络只针对预设密钥加密后的图像有效,在神经网络的结构和参数被窃取的情况下无法直接应用于原始图像,从而提高了图像处理的安全性;同时,由于加密后的图像仍然保持了原始图像的视觉效果,将原始图像加密后分发到搭载加密的神经网络的设备后,既可以利用加密的神经网络进行预测,也可以根据加密后的图像进一步验证预测结果的正确性。

根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。

图1示出根据本公开一实施例的一种基于神经网络的图像处理方法的流程图;

图2示出根据本公开一实施例的通过训练好的加密的神经网络进行预测的示意图;

图3示出根据本公开一实施例的对图像进行加密的示意图;

图4示出根据本公开一实施例的通过对加密的神经网络进行训练的示意图;

图5示出根据本公开一实施例的通过对加密的神经网络进行训练的流程示意图;

图6示出根据本公开一实施例的一种基于神经网络的图像处理装置的结构图;

图7示出根据本公开一实施例的一种用基于神经网络的图像处理的装置的框图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

近年来,以神经网络为代表的人工智能技术经历了飞跃式发展,尤其是在图像处理领域该技术已经应用到了医学诊断、人脸识别、自动驾驶等众多场景之中。在这些应用中,最核心的部分是神经网络模型,因此对于神经网络模型进行加密可以使神经网络模型即使被窃取也无法直接被使用,从而起到提高图像处理的安全性的作用。

相关技术中,首先对原始数据进行加密,然后用加密后的数据进行神经网络模型的训练或者预测;该方案中加密过程会改变图像本身的视觉效果并且该加密方法是不可逆的,即不能由加密后的图像还原出原始图像。同时,该方案中数据加密和神经网络预测是一体的,如果将加密后的数据分发给搭载有神经网络预测的设备进行预测,则设备接收的图像已经不具有原始的视觉作用;在某些应用场景比如医疗影像领域,加密后的图像就只能用于模型预测而无法再由医生通过观察直接用做诊断,从而无法验证和复核模型预测结果是否正确。

因此,本公开提出了一种基于神经网络的图像处理方案,通过预设密钥、噪音生成器对原始图像进行加密,并利用加密后的图像和加密的神经网络得到预测结果;由于加密的神经网络只针对预设密钥加密后的图像有效,在神经网络的结构和参数被窃取的情况下无法直接应用于原始图像,从而提高了图像处理的安全性;同时,由于加密后的图像仍然保持了原始图像的视觉效果,将原始图像加密后分发到搭载加密的神经网络的设备后,既可以利用加密的神经网络进行预测,也可以根据加密后的图像进一步验证预测结果的正确性。

图1示出根据本公开一实施例的一种基于神经网络的图像处理方法的流程图。如图1所示,该方法可以包括以下步骤:

步骤10、根据第一图像、预设密钥及噪音生成器,得到加密噪音;

步骤20、根据所述第一图像及所述加密噪音,得到第二图像;

步骤30、通过所述第二图像及加密的神经网络,得到图像加密的相关预测结果。

本公开实施例中,在对第一图像进行预测的过程中,可以先利用该预设密钥及噪音生成器,生产加密噪音,并利用该加密噪音对第一图像进行加密,从而得到第二图像,进而可以利用训练好的加密的神经网络对第二图像进行预测,得到图像加密的相关预测结果。其中,加密的神经网络只针对输入为第二图像时,可以得到正确的预测结果,而输入为第一图像时对会给出错误的预测结果,从而实现了神经网络模型的加密。另外,由于预设密钥由加密的神经网络的持有者生产和掌握,因此,即使在加密的神经网络的结构和参数等信息被窃取的情况下,偷窃者也无法得到密钥,从而无法对第一图像进行加密,进而无法使用加密的神经网络,保障了图像处理的安全性。

需要说明的是,由于本公开实施例中图像处理方法在保证加密的神经网络的预测效果的同时可以保持图像的视觉效果,在第一图像加密得到第二图像后,将第二图像分发到搭载由该加密的神经网络的设备后,既可以利用对应的加密的神经网络对第二图像进行预测,也不会破坏第二图像本身的视觉作用。因此,本公开实施例中对第一图像进行加密得到第二图像(即步骤10、步骤20)与利用加密的神经网络对第二图像进行预测(即步骤30),可以一起实施,也可以分开实施,对此不作限定;示例性地,可以通过第一设备实现对第一图像进行加密得到第二图像,同时,可以通过搭载有对应的加密的神经网络的第二设备对第二图像进行预测。其中,对于部署在不同设备的加密的神经网络可以设置不同的预设密钥,从而进一步保证神经网络模型的安全。

举例来说,图2示出根据本公开一实施例的通过训练好的加密的神经网络进行预测的示意图,如图2所示,首先利用预设密钥、噪音生成器对原始图像(即第一图像)进行加密,得到加密图像(即第二图像)。然后将加密后的图像输入到训练好的加密的神经网络,从而可以得到正确的预测结果。同时,如图2中虚线所示,如果直接将原始的待预测图像输入到上述训练好的加密的神经网络,则会给出错误的预测结果。因此,即使加密神经网络模型被窃取,由于没有预设密钥,从而无法对原始图像进行加密,进而无法得到正确的预测结果。

在一种可能的实现方式中,所述根据第一图像、预设密钥及噪音生成器,得到加密噪音,包括:根据从第一噪音矩阵中选取的至少一个指定位置,得到所述预设密钥;其中,所述第一噪音矩阵为与所述第一图像相同大小的矩阵;将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置,得到第二噪音矩阵,且所述至少一个指定位置之外的其他像素点位置的值为0;将所述第二噪音矩阵作为所述加密噪音。

示例性地,第一图像的尺寸为h*w,则第一噪音矩阵的尺寸也为h*w,在第一噪音矩阵上选择n个特定位置,这n个位置即为一个预设密钥。噪音生成器输出一个长度为n的向量,并将该向量中每个分量的值分别赋到第一噪音矩阵中选择的n个指定位置;同时,除了这n个位置外,第一噪音矩阵中其他位置的值赋为0,从而,生成了第二噪音矩阵。其中,n的具体数值及在指定位置的具体位置可以根据实际需求进行设定,本公开实施例对此不作限定,例如,可以根据第一噪音矩阵的行列数(h和w)设置n的值及指定位置的具体位置,n的数值可以与第一噪音矩阵的行数h一致;具体位置可以遍布第一噪音矩阵中的各行,即在每一行中选定一个指定位置。

在一种可能的实现方式中,所述将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置之前,所述方法还包括:从所述第一噪音矩阵中,选取所述至少一个指定位置之外的其他像素点位置的值;根据所述至少一个指定位置之外的其他像素点位置的值,得到输入所述噪音生成器的至少一个向量。

示例性地,根据上述实施例中,第一噪音矩阵上选择的n个特定位置,提取第一图像中除这n个位置以外剩下所有像素点的值,并且排列为一个长度为h*w-n的向量;然而可以将该向量输入到噪音生成器,根据上述实施例中的方式得到加密噪音,进而可以将第一图像与加密噪音叠加,得到第二图像。

举例来说,图3示出根据本公开一实施例的对图像进行加密的示意图,如图3所示,原始图像(即第一图像)的尺寸为4*4,首先生成一个和原始图像同样尺寸的矩阵,在该矩阵上选择4个特定位置,这4个位置可以看作一个预设密钥。然后提取除这4个位置以外剩下所有像素点的值并且排列为一个长度为12的第一向量。接下来,将该向量输入噪音生成器,输出一个长度为4的第二向量,并将得到的新的向量中每个元素的值分别赋到噪音矩阵中所选取的4个位置,除了这4个位置外,噪音矩阵中其他位置的值赋为0,这样就生成了一个噪音矩阵(即加密噪音)。进而,可以用该噪音矩阵和原始图像矩阵相加得到一个新的矩阵,该矩阵即为加密后的图像矩阵(即第二图像)。

在一种可能的实现方式中,所述方法还包括:根据所述第二图像及所述加密噪音,得到所述第一图像。

示例性地,在需要将第二图像转变为第一图像时,可以参照上述实施例中进行图像加密的方式,采用对应的流程生成噪音矩阵,之后用第二图像减去噪音矩阵即可得到第一图像;这样,本公开实施例中图像加密流程实现了可逆,即可以由加密后的图像还原出原始的图像,从而避免了加密过程可能导致的原始数据丢失。

基于此,本公开实施例还提供了上述实施例中加密的神经网络的训练方法。

在一种可能的实现方式中,所述方法还包括:根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络;所述加密的神经网络,为通过噪音生成网络及图像判别网络间的生成对抗训练所得到的gan。

其中,gan是一种深度学习模型,由噪音生成网络和图像判别网络构成,通过彼此间互相博弈产生需要的输出。其中噪音生成网络的作用是由第一样本图像生成噪音矩阵,图像判别网络则判断输入的图像是第一样本图像还是第二样本图像。从而,使噪音生成网络能够生成尽量小的噪音去迷惑图像判别网络,从而使第二样本图像和第一样本图像的差异尽量小。在对gan完成后,固定gan中的各参数,继续对加密的神经网络进行训练,直到收敛,训练完成后,噪音生成器用于上述实施例预测过程中对第一图像进行加密,而加密的神经网络则用于第二图像进行预测。这样,利用gan以及相应的训练策略实现模型加密,通过选择适当的损失函数训练出满足要求的噪音生成器和加密的神经网络,使得原始图像和加密后的图像之间的差异非常小,却在输入加密的神经网络后会分别给出正确和错误的预测结果,从而起到提高图像处理的安全性的作用。

举例来说,图4示出根据本公开一实施例的通过对加密的神经网络进行训练的示意图,如图4所示,在训练阶段,首先可以按照上述实施例中的方式生成预设密钥,该预设密钥由神经网络模型的所有者掌握,并利用该密钥对原始图像(即第一样本图像)进行加密从而生成加密后的图像(即第二样本图像),然后同时利用原始图像和加密后的图像对神经网络模型进行训练;在训练噪音生成网络时,通过选择适当的损失函数使得加密噪音尽量小,同时让神经网络模型在加密后的图像上给出尽量正确的结果而在原始图像上给出尽量错误的结果,训练过程完成后保存训练好的加密的神经网络。

在一种可能的实现方式中,所述方法还包括:根据所述第一样本图像进行训练,得到原始神经网络;所述第二样本图像,为根据所述噪音生成网络得到噪音矩阵后对所述第一样本图像加密所得到的样本图像;

所述根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络,包括:根据所述第一样本图像在所述原始神经网络上的第一损失函数值、所述第一样本图像在所述加密的神经网络上的第二损失函数值、所述第二样本图像在所述加密的神经网络上的第三损失函数值及所述噪音生成网络得到的噪音矩阵的2范数,得到第四损失函数值,并通过所述第四损失函数值的反向传播,训练所述噪音生成网络;根据所述图像判别网络输入所述第一样本图像得到的第一判别输出值、及所述图像判别网络输入所述第二样本图像得到的第二判别输出值,得到第五损失函数,并通过所述第五损失函数值的反向传播,训练所述图像判别网络;若所述噪音生成网络及所述图像判别网络通过所述生成对抗训练达到收敛,则结束所述生成对抗训练,将所述噪音生成网络作为所述噪音生成器,将所述图像判别网络作为判别器;根据所述噪音生成器和判别器,将所述加密的神经网络训练达到收敛。

需要说明的是,本公开实施例中,加密噪音由gan生成,由于在训练噪音生成网络的第四损失函数中加入了表示噪音大小的项,使得噪音生成网络会用尽量小的噪声对第一样本图像加密,所以第二样本图像相对于第一样本图像几乎不会产生视觉上的差异,从而可以根据第二样本图像进一步验证预测结果的正确性。

举例来说,图5示出根据本公开一实施例的通过对加密的神经网络进行训练的流程示意图,如图5所示,首先,利用原始图像(即第一样本图像)训练一个原始神经网络模型。然后,构造一个gan(包括:噪音生成网络和图像判别网络),其中噪音生成网络的作用是由原始图像生成噪音矩阵,图像判别网络则判断输入的图像是原始图像还是加密过的图像。在训练噪音生成网络时,冻结图像判别网络的参数,利用原始图像分别经过噪音生成网络、图像判别网络、神经网络模型得到的相应输出结果计算得到第四损失函数,并由该第四损失函数通过优化器更新该噪音生成网络的参数,从而达到训练噪音生成网络的目的;相应的,在训练图像判别网络时,冻结噪音生成网络的参数,并利用原始图像及加密后的图像分别经过该网络得到的相应输出结果计算得到第五损失函数,并由该第五损失函数通过优化器更新该图像判别网络的参数,从而达到训练图像判别网络的目的;如此反复交叉训练噪音生成网络和图像判别网络直到收敛。这样,通过生成对抗训练使噪音生成网络能够生成尽量小的噪音去迷惑图像判别网络,从而使加密后的图像和原始图像的差异尽量小;在训练过程中,训练图像判别网络时损失函数(即第五损失函数)选择为:

ld=yn (1-yc)

其中yc,yn分别表示输入图像为原始图像和加密过的图像时的输出值。

训练噪音生成网络时损失函数(即第四损失函数)选择为:

lg=(1-yn)-|l(dc,mc)–l(dc,mn)| |l(dc,mc)-l(dn,mn)| lp

其中,l(dc,mc)为原始图像在原始神经网络模型上的损失函数值(即第一损失函数值),l(dc,mn)为原始图像在加密的神经网络上的损失函数值(即第二损失函数值),l(dn,mn)为加密图像在加密的神经网络上的损失函数值(即第三损失函数值),lp表示噪音生成网络产生的噪音矩阵的2范数;其中,lp代表了添加的噪音强度,通过这一损失函数可以使训练噪音生成网络时产生尽量小的噪音,从而可以尽量保持原始图像的视觉作用。

这样,对gan进行训练直至收敛,最后,在gan收敛后,冻结噪音生成器和判别器的参数,继续训练加密的神经网络、,直至收敛,得到训练好的加密的神经网络。

需要说明的是,尽管以上述实施例作为示例介绍了一种基于神经网络的图像处理方法如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各实施方式,只要符合本公开的技术方案即可。

这样,本公开实施例中由密钥控制的可逆的图像加密方式是由图像加密和相应的模型训练策略两部分结合实现的,而非单纯地用加密后的图像训练模型来实现;由于在训练噪音生成器的损失函数中加入了表示噪音大小的项,使得模型会用尽量小的噪声对图像加密,所以加密后的图像相对于原图像几乎不会产生视觉上的差异,对于某些应用场景比如医疗ai产品,图像加密部分和神经网络模型可以分开,即分发到搭载由神经网络模型的设备的图像是加密后的图像,而由于加密后的图像仍然保持了原始图像的视觉效果,因而其既可以用于神经网络模型的预测也可以由医生直接观察做出诊断,从而便于医生进一步验证神经网络模型给出的预测结果。同时,由于模型加密方法由预设密钥控制,可以通过改变预设密钥对不同设备设定不同的加密方法,即使整个神经网络模型都被窃取,如果没有相应的密钥也无法使用,从而有效保护图像处理的安全性,适用于医疗ai等领域图像的加密需求。

图6示出根据本公开一实施例的一种基于神经网络的图像处理装置的结构图。如图6所示,该装置可以包括:加密噪音生成模块41,根据第一图像、预设密钥及噪音生成器,得到加密噪音;图像加密模块42,用于根据所述第一图像及所述加密噪音,得到第二图像;预测模块43,用于通过所述第二图像及加密的神经网络,得到图像加密的相关预测结果。

在一种可能的实现方式中,所述装置还包括:图像解密模块,用于根据所述第二图像及所述加密噪音,得到所述第一图像。

在一种可能的实现方式中,所述加密噪音生成模块,包括:预设密钥生成单元,用于根据从第一噪音矩阵中选取的至少一个指定位置,得到所述预设密钥;其中,所述第一噪音矩阵为与所述第一图像相同大小的矩阵;第二噪音矩阵生成单元,用于将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置,得到第二噪音矩阵,且所述至少一个指定位置之外的其他像素点位置的值为0;加密噪音生成单元,用于将所述第二噪音矩阵作为所述加密噪音。

在一种可能的实现方式中,所述将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置之前,所述方法还包括:

从所述第一噪音矩阵中,选取所述至少一个指定位置之外的其他像素点位置的值;

根据所述至少一个指定位置之外的其他像素点位置的值,得到输入所述噪音生成器的至少一个向量。

在一种可能的实现方式中,所述装置还包括:训练模块,用于根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络;所述加密的神经网络,为通过噪音生成网络及图像判别网络间的生成对抗训练所得到的gan。

在一种可能的实现方式中,所述训练模块,还用于根据所述第一样本图像进行训练,得到原始神经网络;所述第二样本图像,为根据所述噪音生成网络得到噪音矩阵后对所述第一样本图像加密所得到的样本图像;所述训练模块,包括:噪音生成网络训练单元,用于根据所述第一样本图像在所述原始神经网络上的第一损失函数值、所述第一样本图像在所述加密的神经网络上的第二损失函数值、所述第二样本图像在所述加密的神经网络上的第三损失函数值及所述噪音生成网络得到的噪音矩阵的2范数,得到第四损失函数值,并通过所述第四损失函数值的反向传播,训练所述噪音生成网络;图像判别网络训练单元,用于根据所述图像判别网络输入所述第一样本图像得到的第一判别输出值、及所述图像判别网络输入所述第二样本图像得到的第二判别输出值,得到第五损失函数,并通过所述第五损失函数值的反向传播,训练所述图像判别网络;加密的神经网络生成单元,用于若所述噪音生成网络及所述图像判别网络通过所述生成对抗训练达到收敛,则结束所述生成对抗训练,将所述噪音生成网络作为所述噪音生成器,将所述图像判别网络作为判别器;根据所述噪音生成器和判别器,将所述加密的神经网络训练达到收敛。

需要说明的是,尽管以上述实施例作为示例介绍了一种基于神经网络的图像处理装置如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各实施方式,只要符合本公开的技术方案即可。

这样,本公开实施例中由密钥控制的可逆的图像加密方式是由图像加密和相应的模型训练策略两部分结合实现的,而非单纯地用加密后的图像训练模型来实现;由于在训练噪音生成器的损失函数中加入了表示噪音大小的项,使得模型会用尽量小的噪声对图像加密,所以加密后的图像相对于原图像几乎不会产生视觉上的差异,对于某些应用场景比如医疗ai产品,图像加密部分和神经网络模型可以分开,即分发到搭载由神经网络模型的设备的图像是加密后的图像,而由于加密后的图像仍然保持了原始图像的视觉效果,因而其既可以用于神经网络模型的预测也可以由医生直接观察做出诊断,从而便于医生进一步验证神经网络模型给出的预测结果。同时,由于模型加密方法由预设密钥控制,可以通过改变预设密钥对不同设备设定不同的加密方法,即使整个神经网络模型都被窃取,如果没有相应的密钥也无法使用,从而有效保护了图像处理的安全性,适用于医疗ai等领域图像的加密需求。

图7示出根据本公开一实施例的一种用基于神经网络的图像处理的装置1900的框图。例如,装置1900可以被提供为一服务器。参照图7,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。

装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(i/o)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由装置1900的处理组件1922执行以完成上述方法。

本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c 等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。

这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。


技术特征:

1.一种基于神经网络的图像处理方法,其特征在于,所述方法包括:

根据第一图像、预设密钥及噪音生成器,得到加密噪音;

根据所述第一图像及所述加密噪音,得到第二图像;

通过所述第二图像及加密的神经网络,得到图像加密的相关预测结果。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

根据所述第二图像及所述加密噪音,得到所述第一图像。

3.根据权利要求1所述的方法,其特征在于,所述根据第一图像、预设密钥及噪音生成器,得到加密噪音,包括:

根据从第一噪音矩阵中选取的至少一个指定位置,得到所述预设密钥;其中,所述第一噪音矩阵为与所述第一图像相同大小的矩阵;

将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置,得到第二噪音矩阵,且所述至少一个指定位置之外的其他像素点位置的值为0;

将所述第二噪音矩阵作为所述加密噪音。

4.根据权利要求2所述的方法,其特征在于,所述将所述噪音生成器输出的至少一个向量,分别赋值到所述至少一个指定位置之前,所述方法还包括:

从所述第一噪音矩阵中,选取所述至少一个指定位置之外的其他像素点位置的值;

根据所述至少一个指定位置之外的其他像素点位置的值,得到输入所述噪音生成器的至少一个向量。

5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:

根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络;

所述加密的神经网络,为通过噪音生成网络及图像判别网络间的生成对抗训练所得到的生成对抗网络gan。

6.根据权利要求5所述的方法,其特征在于,所述方法还包括:

根据所述第一样本图像进行训练,得到原始神经网络;

所述第二样本图像,为根据所述噪音生成网络得到噪音矩阵后对所述第一样本图像加密所得到的样本图像;

所述根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络,包括:

根据所述第一样本图像在所述原始神经网络上的第一损失函数值、所述第一样本图像在所述加密的神经网络上的第二损失函数值、所述第二样本图像在所述加密的神经网络上的第三损失函数值及所述噪音生成网络得到的噪音矩阵的2范数,得到第四损失函数值,并通过所述第四损失函数值的反向传播,训练所述噪音生成网络;

根据所述图像判别网络输入所述第一样本图像得到的第一判别输出值、及所述图像判别网络输入所述第二样本图像得到的第二判别输出值,得到第五损失函数,并通过所述第五损失函数值的反向传播,训练所述图像判别网络;

若所述噪音生成网络及所述图像判别网络通过所述生成对抗训练达到收敛,则结束所述生成对抗训练,将所述噪音生成网络作为所述噪音生成器,将所述图像判别网络作为判别器;

根据所述噪音生成器和判别器,将所述加密的神经网络训练达到收敛。

7.一种基于神经网络的图像处理装置,其特征在于,包括:

加密噪音生成模块,根据第一图像、预设密钥及噪音生成器,得到加密噪音;

图像加密模块,用于根据所述第一图像及所述加密噪音,得到第二图像;

预测模块,用于通过所述第二图像及加密的神经网络,得到图像加密的相关预测结果。

8.根据权利要求7所述的装置,其特征在于,所述装置还包括:

训练模块,用于根据第一样本图像和第二样本图像进行训练,得到所述加密的神经网络;

所述加密的神经网络,为通过噪音生成网络及图像判别网络间的生成对抗训练所得到的生成对抗网络gan。

9.一种基于神经网络的图像处理装置,其特征在于,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行所述存储器存储的可执行指令时实现权利要求1至权利要求6中任意一项所述的方法。

10.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至6中任意一项所述的方法。

技术总结
本公开涉及一种基于神经网络的图像处理方法、装置及存储介质,其中,该方法包括:根据第一图像、预设密钥及噪音生成器,得到加密噪音;根据所述第一图像及所述加密噪音,得到第二图像;通过所述第二图像及加密的神经网络,得到图像加密的相关预测结果。本公开实施例中,由于加密的神经网络只针对预设密钥加密后的图像有效,在神经网络的结构和参数被窃取的情况下无法直接应用于原始图像,从而提高了图像处理的安全性;同时,由于加密后的图像仍然保持了原始图像的视觉效果,将原始图像加密后分发到搭载加密的神经网络的设备后,既可以利用加密的神经网络进行预测,也可以根据加密后的图像进一步验证预测结果的正确性。

技术研发人员:吴振洲;陈晓天
受保护的技术使用者:北京安德医智科技有限公司
技术研发日:2020.01.21
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-21769.html

最新回复(0)