CN112907430B - 图像处理方法、装置、电子设备及计算机可读存储介质 - Google Patents
图像处理方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112907430B CN112907430B CN202110194128.6A CN202110194128A CN112907430B CN 112907430 B CN112907430 B CN 112907430B CN 202110194128 A CN202110194128 A CN 202110194128A CN 112907430 B CN112907430 B CN 112907430B
- Authority
- CN
- China
- Prior art keywords
- image
- target
- processed
- disturbance
- neural network
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 27
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 84
- 230000006870 function Effects 0.000 claims description 63
- 238000000034 method Methods 0.000 claims description 26
- 238000013459 approach Methods 0.000 claims description 14
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000002238 attenuated effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000000137 annealing Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开公开了一种图像处理方法、装置、电子设备及计算机可读存储介质,涉及互联网技术、计算机技术领域,尤其涉及图像处理技术领域。具体实现方案为:获取待处理图像和水印图像;对所述待处理图像添加扰动量,并将已添加所述扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件;其中,每次预测对所述待处理图像添加的所述扰动量不同,N为正整数。本公开提供的方案能够提升图像的安全性。
Description
技术领域
本公开涉及计算机技术的图像处理技术领域,尤其涉及一种图像处理方法、装置、电子设备及计算机可读存储介质。
背景技术
随着拍照、摄像技术的发展,图像和视频的应用越来越广泛。图像在网络传播的过程中,容易被盗用或修改,导致图像归属者的利益受到损害。为了减少这类情况的出现,通常会在图像或视频中添加水印,以确定图像的归属者,当图像被修改或复制盗用时,水印会被破坏,进而通过对水印进行识别能够确定图像的归属。
发明内容
本公开提供了一种图像处理方法、装置、电子设备及计算机可读存储介质。
根据本公开的第一方面,提供了一种图像处理方法,包括:
获取待处理图像和水印图像;
对所述待处理图像添加扰动量,并将已添加所述扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件;
其中,每次预测对所述待处理图像添加的所述扰动量不同,N为正整数。
根据本公开的第二方面,提供了一种图像处理装置,包括:
第一获取模块,用于获取待处理图像和水印图像;
处理模块,用于对所述待处理图像添加扰动量,并将已添加所述扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件;
其中,每次预测对所述待处理图像添加的所述扰动量不同,N为正整数。
根据本公开的第三方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据第一方面所述的方法。
根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据第一方面所述的方法。
本公开提供的方案,能够基于添加扰动量来完成对待处理图像的水印处理,使得满足预设条件所对应的添加了扰动量的待处理图像难以被破解,有效提升了图像安全性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例提供的一种图像处理方法的流程图;
图2是用来实现本公开实施例提供的图像处理方法中的一种卷积神经网络模型的结构图;
图3a是未添加扰动量的待处理图像;
图3b是图3a所示的图像经图2所示的卷积神经网络模型处理后输出的图像;
图4是应用于本公开实施例提供的图像处理方法中的一种水印图像;
图5a是应用于本公开实施例提供的图像处理方法中的一种添加了扰动量的待处理图像;
图5b是图5a所示的图像经图2所示的卷积神经网络模型处理后输出的图像;
图5c是图5a所示的图像经另一种卷积神经网络模型处理后输出的图像;
图6是本公开实施例提供的一种图像处理装置的结构图;
图7是用来实现本公开实施例的图像处理方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开实施例提供了一种图像处理方法。
请参照图1,图1是本公开实施例提供的一种图像处理方法的流程图,如图1所示,所述方法包括以下步骤:
步骤S101、获取待处理图像和水印图像。
需要说明地,本公开实施例提供的图像处理方法可以是应用于电子设备,如手机、平板电脑、笔记本计算机、台式计算机等。以下将以电子设备作为执行主体对本公开实施例所提供的图像处理方法进行具体说明。
本公开实施例中,所述待处理图像可以是电子设备实时拍摄的图像,例如当电子设备基于用户操作,拍摄得到一张图像,该图像可以是电子设备获取到的待处理图像;或者,所述待处理图像也可以是电子设备基于用户的操作,从存储的图像文件夹中选择的一张图像作为待处理图像,其中,图像文件夹中存储的图像可以是电子设备拍摄的图像,或者是基于网络下载的图像等。
可选地,所述待处理图像包括图片或者视频。
步骤S102、对所述待处理图像添加扰动量,并将已添加所述扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件。
其中,每次预测对所述待处理图像添加的所述扰动量不同,N为正整数。
在一些实施方式中,所述扰动量也可以是噪声,对所述待处理图像添加扰动量,也就是对所述待处理图像进行噪声处理。本公开实施例中,将添加了扰动量的待处理图像输入卷积神经网络模型(Convolutional Neural Networks,CNN)进行N次预测,所述CNN模型为编码-解码(encoder-decoder)模型,其结构包括图像重构、图像分割等,且输入图像和输出图像的宽高应当保持一致。
可以理解地,卷积神经网络模型为深度学习模型,卷积神经网络模型在获取到输入图像后,通过对输入图像进行编码和解码过程后,重构图像或者分割图像能够得到输出图像,并输出。请参照图2,图2是本公开实施例中所应用的一种卷积神经网络模型的结构示意图,该卷积神经网络模型的模型结构同语义分隔模型,输入是3通道蓝绿红BGR图像,其形状为B*3*H*W;输出是2通道特征图,其形状为B*2*H*W,输出在频率channel维度经过argmax函数,最终得到B*1*H*W的二值图像。当然,本公开实施例所应用的卷积神经网络模型也可以是其他CNN模型,此处不做过多赘述。
本公开实施例中,将添加了扰动量的待处理图像输入卷积神经网络模型,卷积神经网络模型对该待处理图像进行编码和解码过程后,重构图像或者分割图像以进行预测,并输出目标图像,并建立目标图像与水印图像之间的损失函数,以将目标图像与水印图像进行比对。其中,扰动量为变量,电子设备可以是基于损失函数来对扰动量进行更新,每更新一次扰动量,则对待处理图像添加最新更新的扰动量,并将添加了该更新的扰动量的待处理图像输入卷积神经网络模型进行一次预测,以得到输出的目标图像,并基于输出的目标图像建立与水印图像之间的损失函数,基于损失函数再次更新扰动量,依此不断对待处理图像添加最新更新的扰动量,并输入卷积神经网络模型,直至卷积神经网络模型输出的目标图像与水印图像之间的损失函数满足预设条件,则停止对扰动量的更新,并获取满足预设条件时所对应的扰动量。
可选地,所述预设条件可以是指所述目标图像与所述水印图像之间的损失函数最小,或者所述目标图像趋近于水印图像,换句话说,目标图像与水印图像看起来几乎一样。
具体地,定义卷积神经网络模型fω,其中ω为该卷积神经网络模型的模型参数;假设输入图像的图像矩阵为x,卷积神经网络模型输出图像为y,则有如下关系:y=fω(x)。
本公开实施例中,将添加扰动量的待处理图像输入卷积神经网络模型,定义待处理图像x添加的扰动量为σ,卷积神经网络模型对该添加了扰动量的待处理图像进行编码和解码过程后,输出的目标图像为yσ,则有如下关系:
yσ=fω(x+σ)。
可选地,假设水印图像为ytarget,则卷积神经网络模型输出的目标图像与水印图像之间的损失函数满足预设条件,可以是指yσ趋近于ytarget。本公开实施例中,也就是在添加扰动量σ后的待处理图像经卷积神经网络模型输出的目标图像yσ趋近于水印图像ytarget。进而,本公开实施例的目的也就是求解扰动量。
本公开实施例中,在获取到卷积神经网络模型输出的目标图像后,建立目标图像yσ与水印图像ytarget之间的损失函数L(yσ,ytarget),可选地,所述损失函数包括但不限于L1回归、L2回归、感知损失等图像重构损失函数,以及交叉熵损失函数、Focal loss损失函数、Dice loss损失函数等语义分隔训练的损失函数。该损失函数L以扰动量σ为自变量可以转化为:
L(fω(x+σn-1),ytarget);
其中,n表示扰动量σ的更新次数。本公开实施例中,也就是基于对扰动量的更新,来最小化损失函数L,进而最小化后的损失函数所对应的目标图像能够趋近于水印图像,所述趋近于可以是指目标图像与水印图像看起来几乎一致。这样,也就能够将最小化的损失函数所对应的扰动量确定为目标扰动量,通过对待处理图像添加目标扰动量,也就使得添加目标扰动量后的待处理图像输入特定的卷积神经网络模型后能够输出与水印图像几乎一致的目标图像,而由于卷积神经网络模型的层数很多,每一层都有不同算子组合,每一种算子都有很多超参数,且卷积神经网络模型通常具有几百万的参数量,所以伪造和破解该扰动量几乎是不可能的,即使扰动量的添加方法被获知,也难以破解卷积神经网络模型,进而使得添加了扰动量的待处理图像具有较高的安全性和隐蔽性。
需要说明地,目标图像yσ和水印图像ytarget宽高与输入卷积神经网络模型的待处理图像x保持一致。
本公开实施例中,通过对待处理图像添加扰动量,并将已添加扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至该卷积神经网络模型输出的目标图像与水印图像之间的损失函数满足预设条件。这样也就能够基于添加扰动量来完成对待处理图像的水印处理,使得满足预设条件所对应的添加了扰动量的待处理图像难以被破解,有效提升了图像安全性。
可选地,所述方法还包括:
对所述损失函数添加所述扰动量的约束项,以限制更新后的扰动量趋近于目标数值。
为了防止添加了扰动量的待处理图像容易被人眼感知,可以限制扰动量的大小趋近于目标数值,可选地,所述目标数值可以是0,这样也就能够确保添加了扰动量的待处理图像与原始待处理图像看起来一样。
本公开实施例中,可以给损失函数增加扰动量的约束项,包括但不限于扰动量σ的L1范数或L2范数,以使得扰动量σ的范数趋近于0。其中,L1范数或L2范数的概念及计算方式可以是参照相关技术,此处不做赘述。
本公开实施例中,通过对扰动量σ更新来最小化损失函数,所述方法还可以包括:
获取所述扰动量的学习率及所述损失函数对所述卷积神经网络模型输入图像的梯度;
基于所述学习率及所述梯度对所述扰动量进行更新。
可选地,为了最小化损失函数L,可以是基于凸优化的理论,扰动量沿着梯度下降的方向更新,扰动量σ的更新方式如下所示:
其中,表示损失函数对卷积神经网络模型输入图像的梯度,也就是对添加了扰动量的待处理图像的梯度,α表示扰动量的学习率,ytarget表示水印图像,fω(x+σn-1)表示卷积神经网络模型输出的目标图像,n表示扰动量的更新次数,例如σ0表示初始扰动量,初始扰动量可以为0也可以是(-ε,+ε)之间的随机初始扰动(ε是一个接近于0的超参数)。
可以理解地,上述公式中,σ的更新是沿着梯度下降的方向进行更新,也就是使得添加了扰动量的待处理图像经过卷积神经网络模型输出的目标图像与水印图像ytarget的损失函数减小,随着损失函数的收敛,卷积神经网络模型输出的目标图像也就会与ytarget趋于一致。这样,通过限定扰动量沿着梯度下降的方向进行更新,也就能够实现对损失函数的最小化处理,以确保卷积神经网络模型输出的目标图像能够趋近于水印图像。
可选地,所述基于所述学习率及所述梯度对所述扰动量进行更新,包括:
获取所述扰动量的初始学习率;
基于所述初始学习率、迭代次数及超参数进行学习率衰减,以获得目标学习率;
基于所述目标学习率及所述梯度对所述扰动量进行更新。
具体地,所述扰动量的初始学习率可以是预设的学习率,所述迭代次数可以是与扰动量的更新次数一致,所述超参数可以是预先设置的参数。本公开实施例中,通过对学习率进行衰减以实现对扰动量的更新,其中,所述学习率的衰减方式包括但不限于指数衰减、多步衰减、余弦退火等方式。
可选地,以指数衰减方式为例,所述学习率衰减公式如下:
α=α0·e-kt;
其中,α0是初始学习率,t是迭代次数,k为超参数。这样,也就能够实现对学习率的衰减,以得到目标学习率,α也就表示目标学习率。
本公开实施例中,基于衰减后的学习率(以及目标学习率)来对扰动量进行更新,例如目标学习率代入上述扰动量更新公式中,进而基于目标学习率及卷积神经网络模型输入图像的梯度来对扰动量进行更新。这样,通过学习率衰减来更新扰动量,以确保扰动量能够沿着梯度下降的方向进行更新,进而以实现对损失函数的最小化处理。
可选地,本公开实施例中还可以在卷积神经网络模型的迭代过程中,沿损失函数的梯度方向累积速度矢量来加速梯度下降,例如采用一阶动量法来更新扰动量,扰动量σ的更新公式如下所示:
σn=σn-1-α*mn;
其中,ξ、η为一阶动量的超参数,mn表示第n次迭代的梯度方向,mn-1为第n次迭代之前累积梯度方向,表示损失函数对卷积神经网络模型输入图像的梯度,也就是对添加了扰动量的待处理图像的梯度,ytarget表示水印图像,n表示扰动量的更新次数,x+σn表示添加了第n次更新的扰动量的待处理图像,fω(x+σn)表示卷积神经网络模型输出的目标图像,α表示扰动量的学习率。
本公开实施例中,在所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件的情况下,还可以对输出的目标图像与水印图像之间的相似度进行判断,以判断水印是否添加完成。可选地,所述方法还可以包括:
获取所述卷积神经网络模型基于对已添加所述扰动量的待处理图像进行预测后输出的第一目标图像;
基于结构相似性获取所述第一目标图像与所述水印图像之间的相似度值;
在所述相似度值大于预设阈值的情况下,确定所述第一目标图像与所述水印图像之间的损失函数满足预设条件,并将添加所述目标扰动量的待处理图像确定为水印添加完成的图像。
本公开实施例中,每更新一次扰动量,并将添加更新的扰动量的待处理图像输入所述卷积神经网络模型后,能够获得所述卷积神经网络模型输出的目标图像,而后可以是基于结构相似性(Structural SIMilarity,ssim)来度量目标图像与水印图像之间的相似度,根据相似度的大小来判断水印是否添加完成。
其中,结构相似性的计算公式如下:
ssim=L(X,Y)*C(X,Y)*S(X,Y);
其中,L(X,Y)是亮度比较,C(X,Y)是对比度比较,S(X,Y)是结构比较,μX和μY分别代表X、Y的平均值,分别代表X、Y的标准差,代表X、Y的协方差,C1、C2、C3分别为常数,X可以代表第一目标图像,Y代表水印图像,ssim表示第一目标图像和水印图像之间的相似度值。
进一步地,在基于上述公式获得第一目标图像与水印图像之间的相似度值后,判断所述相似度值是否超过预设阈值,若所述相似度值大于预设阈值,则可以第一图标图像足够接近水印图像,则可以认为第一目标图像与水印图像之间的损失函数满足所述预设条件,也就无需再对扰动量进行更新,并将第一目标图像所对应的添加了目标扰动量的待处理图像确定为水印添加完成的图像。这样,通过对卷积神经网络模型输出的目标图像与水印图像之间的相似度值进行判断,以确保输出的目标图像趋近于水印图像,使得添加了扰动量的待处理图像难以被破解,提升图像的安全性。
为更好地理解本公开所提供的技术方案,以下通过一个具体的实施例对本公开的图像处理方法进行说明。
请参照图3a,图3a为一张未添加扰动量的待处理图像,也就是未添加水印的图像,将该待处理图像输入如图2所示的卷积神经网络CNN模型后,得到该CNN模型输出的如图3b所示的输出图像。
获取水印图像,所述水印图像如图4所示,将该水印图像记作ytarget。本公开实施例中添加水印的过程,也就是求解最小扰动量σ使得CNN模型输出的二值图像(也即目标图像)yσ趋近于ytarget。
具体地,计算添加了扰动量的待处理图像输入CNN模型后输出的目标图像yσ,建立目标图像yσ和水印图像ytarget之间的损失函数Lf(yσ,ytarget),基于CNN输出的目标图像与水印图像建立损失函数,本实施例可以是建立交叉熵损失函数如下:
Lf(yσ,ytarget)=-(ytarget·log(yσ)+(1-ytarget)·log(1-yσ));
其中,yσ表示CNN模型输出的目标图像,ytarget表示水印图像。可选地,也可以是采用Focal loss、Dice loss等来构建损失函数。
为了使得添加扰动量后的待处理图像x+σ与未添加扰动的待处理图像x在肉眼感观上看不出差异,可以采用结构相似性ssim损失,使得x+σ和x两张图像结构性相近,公式如下:
Lσ(σ)=1-ssim(x+σ,x);
其中,ssim的计算公式如下:
ssim=L(X,Y)*C(X,Y)*S(X,Y);
其中,L(X,Y)是亮度比较,C(X,Y)是对比度比较,S(X,Y)是结构比较,μX和μY分别代表X、Y的平均值,分别代表X、Y的标准差,代表X、Y的协方差,C1、C2、C3分别为常数,X可以代表添加扰动量后的待处理图像x+σ,Y代表未添加扰动的待处理图像x,ssim表示这两张图像之间的相似度。
进一步地,本实施例最终采用的损失函数为上述两个损失函数的加权和:L=Lf+λ*Lσ;其中,λ为常数,以控制Lσ的权重,可选地,λ=0.01。
需要说明地,在本实施例中,还需要对扰动量σ进行更新,以最小化损失函数Lf。
具体地,扰动量σ的更新过程如下:
对初始学习率进行衰减,α=α0·e-kt;其中,α为衰减后的学习率,α0是初始学习率,t是迭代次数,k为超参数。
基于衰减后的学习率更新扰动量σ,公式如下:
其中,表示损失函数对CNN模型输入图像的梯度,也就是对添加了扰动量的待处理图像的梯度,α表示衰减后的学习率,ytarget表示水印图像,fω(x+σn-1)表示CNN模型输出的目标图像,n表示扰动量的更新次数,例如σ0表示初始扰动量,初始扰动量可以为0也可以是(-ε,+ε)之间的随机初始扰动(ε是一个接近于0的超参数)。
进一步地,计算yσ和ytarget的相似度值ssim,ssim的计算公式如上所示,此处不再赘述;当ssim大于预设阈值时,则认为yσ趋近于ytarget,则认为水印添加完成。
具体地,对图3a所示的待处理图像添加扰动量后,得到如图5a所示的图像,将图5a所示的图像输入图2所示的CNN模型,得到该CNN模型输出的如图5b所示的图像,可见图5b所示的图像与图4所示的水印图像几乎一样。进而,也就可以认为图5a所示的图像为添加了水印的图像。
为了测试本实施例中水印的保密性,使用另一个结构相同的CNN模型,但该模型的模型参数不同于上述图2所示CNN模型的模型参数,将5a所示的图像输入该CNN模型,得到如图5c所示的图像。可见,基于本公开方案添加的扰动量(或者说水印)只能通过特定的CNN模型来提取解密,进而使得添加了扰动量的图像具有较高的安全性,难以被破解,也不易被发现和伪造。
本公开实施例还提供一种图像处理装置,请参照图6,图像处理装置600包括:
第一获取模块601,用于获取待处理图像和水印图像;
处理模块602,用于对所述待处理图像添加扰动量,并将已添加所述扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件;
其中,每次预测对所述待处理图像添加的所述扰动量不同,N为正整数。
可选地,图像处理装置600还包括:
第二获取模块,用于获取所述扰动量的学习率及所述损失函数对所述卷积神经网络模型输入图像的梯度;
更新模块,用于基于所述学习率及所述梯度对所述扰动量进行更新。
可选地,所述更新模块还用于:
获取所述扰动量的初始学习率;
基于所述初始学习率、迭代次数及超参数进行学习率衰减,以获得目标学习率;
基于所述目标学习率及所述梯度对所述扰动量进行更新。
可选地,图像处理装置600还包括:
添加模块,用于对所述损失函数添加所述扰动量的约束项,以限制更新后的扰动量趋近于目标数值。
可选地,图像处理装置600还包括:
第三获取模块,用于获取所述卷积神经网络模型基于对已添加目标扰动量的待处理图像进行预测后输出的第一目标图像;
第四获取模块,用于基于结构相似性获取所述第一目标图像与所述水印图像之间的相似度值;
确定模块,用于在所述相似度值大于预设阈值的情况下,确定所述第一目标图像与所述水印图像之间的损失函数满足所述预设条件,并将添加所述目标扰动量的待处理图像确定为水印添加完成的图像。
本实施例提供的图像处理装置600能够实现上述图像处理方法实施例的全部技术方案,因此至少能够实现上述全部技术效果,此处不再赘述。
根据本公开的实施例,本公开还提供了一种电子设备、一种计算机可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序/指令或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序/指令,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如图像处理方法。例如,在一些实施例中,图像处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的图像处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行图像处理方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (10)
1.一种图像处理方法,包括:
获取待处理图像和水印图像;
对所述待处理图像添加扰动量,并将已添加所述扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件,其中,每次预测对所述待处理图像添加的所述扰动量不同,N为正整数;
在所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件的情况下,所述方法还包括:
获取所述卷积神经网络模型基于对已添加目标扰动量的待处理图像进行预测后输出的所述目标图像;
基于结构相似性获取所述目标图像与所述水印图像之间的相似度值;
在所述相似度值大于预设阈值的情况下,确定所述目标图像与所述水印图像之间的损失函数满足所述预设条件,并将添加所述目标扰动量的待处理图像确定为水印添加完成的图像。
2.根据权利要求1所述的方法,所述方法还包括:
获取所述扰动量的学习率及所述损失函数对所述卷积神经网络模型输入图像的梯度;
基于所述学习率及所述梯度对所述扰动量进行更新。
3.根据权利要求2所述的方法,其中,所述基于所述学习率及所述梯度对所述扰动量进行更新,包括:
获取所述扰动量的初始学习率;
基于所述初始学习率、迭代次数及超参数进行学习率衰减,以获得目标学习率;
基于所述目标学习率及所述梯度对所述扰动量进行更新。
4.根据权利要求1所述的方法,所述方法还包括:
对所述损失函数添加所述扰动量的约束项,以限制更新后的扰动量趋近于目标数值。
5.一种图像处理装置,包括:
第一获取模块,用于获取待处理图像和水印图像;
处理模块,用于对所述待处理图像添加扰动量,并将已添加所述扰动量的待处理图像输入卷积神经网络模型进行N次预测,直至所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件,其中,每次预测对所述待处理图像添加的所述扰动量不同,N为正整数;
所述装置还包括:
第三获取模块,用于在所述卷积神经网络模型输出的目标图像与所述水印图像之间的损失函数满足预设条件的情况下,获取所述卷积神经网络模型基于对已添加目标扰动量的待处理图像进行预测后输出的所述目标图像;
第四获取模块,用于基于结构相似性获取所述目标图像与所述水印图像之间的相似度值;
确定模块,用于在所述相似度值大于预设阈值的情况下,确定所述目标图像与所述水印图像之间的损失函数满足所述预设条件,并将添加所述目标扰动量的待处理图像确定为水印添加完成的图像。
6.根据权利要求5所述的装置,所述装置还包括:
第二获取模块,用于获取所述扰动量的学习率及所述损失函数对所述卷积神经网络模型输入图像的梯度;
更新模块,用于基于所述学习率及所述梯度对所述扰动量进行更新。
7.根据权利要求6所述的装置,其中,所述更新模块还用于:
获取所述扰动量的初始学习率;
基于所述初始学习率、迭代次数及超参数进行学习率衰减,以获得目标学习率;
基于所述目标学习率及所述梯度对所述扰动量进行更新。
8.根据权利要求5所述的装置,所述装置还包括:
添加模块,用于对所述损失函数添加所述扰动量的约束项,以限制更新后的扰动量趋近于目标数值。
9.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4中任一项所述的方法。
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-4中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110194128.6A CN112907430B (zh) | 2021-02-20 | 2021-02-20 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
KR1020237002646A KR20230020555A (ko) | 2021-02-20 | 2021-09-08 | 이미지 처리 방법, 장치, 전자 기기 및 컴퓨터 판독 가능 저장 매체 |
PCT/CN2021/117169 WO2022174578A1 (zh) | 2021-02-20 | 2021-09-08 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110194128.6A CN112907430B (zh) | 2021-02-20 | 2021-02-20 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112907430A CN112907430A (zh) | 2021-06-04 |
CN112907430B true CN112907430B (zh) | 2022-12-13 |
Family
ID=76124113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110194128.6A Active CN112907430B (zh) | 2021-02-20 | 2021-02-20 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
Country Status (3)
Country | Link |
---|---|
KR (1) | KR20230020555A (zh) |
CN (1) | CN112907430B (zh) |
WO (1) | WO2022174578A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112907430B (zh) * | 2021-02-20 | 2022-12-13 | 百度在线网络技术(北京)有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN113554057B (zh) * | 2021-06-21 | 2022-09-27 | 北京百度网讯科技有限公司 | 图的分割方法、装置及电子设备 |
CN115330583A (zh) * | 2022-09-19 | 2022-11-11 | 景德镇陶瓷大学 | 一种基于cmyk图像的水印模型训练方法及装置 |
CN117495649A (zh) * | 2024-01-02 | 2024-02-02 | 支付宝(杭州)信息技术有限公司 | 一种图像的处理方法、装置及设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10803591B2 (en) * | 2018-08-28 | 2020-10-13 | International Business Machines Corporation | 3D segmentation with exponential logarithmic loss for highly unbalanced object sizes |
CN109584179A (zh) * | 2018-11-29 | 2019-04-05 | 厦门美图之家科技有限公司 | 一种卷积神经网络模型生成方法及图像质量优化方法 |
EP3696771A1 (en) * | 2019-02-13 | 2020-08-19 | Robert Bosch GmbH | System for processing an input instance, method, and medium |
CN110598558B (zh) * | 2019-08-14 | 2022-05-06 | 杭州未名信科科技有限公司 | 人群密度估计方法、装置、电子设备及介质 |
CN111600835B (zh) * | 2020-03-18 | 2022-06-24 | 宁波送变电建设有限公司永耀科技分公司 | 一种基于fgsm对抗攻击算法的检测与防御方法 |
CN111523597B (zh) * | 2020-04-23 | 2023-08-25 | 北京百度网讯科技有限公司 | 目标识别模型训练方法、装置、设备以及存储介质 |
CN111768327B (zh) * | 2020-06-30 | 2022-07-19 | 苏州科达科技股份有限公司 | 基于深度学习的水印添加、提取方法、设备及存储介质 |
CN112907430B (zh) * | 2021-02-20 | 2022-12-13 | 百度在线网络技术(北京)有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
-
2021
- 2021-02-20 CN CN202110194128.6A patent/CN112907430B/zh active Active
- 2021-09-08 WO PCT/CN2021/117169 patent/WO2022174578A1/zh active Application Filing
- 2021-09-08 KR KR1020237002646A patent/KR20230020555A/ko unknown
Also Published As
Publication number | Publication date |
---|---|
CN112907430A (zh) | 2021-06-04 |
WO2022174578A1 (zh) | 2022-08-25 |
KR20230020555A (ko) | 2023-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112907430B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN110612538B (zh) | 生成输入数据项的离散潜在表示 | |
CN111344708B (zh) | 基于演进的数据流的自适应统计数据去标识 | |
CN113239705B (zh) | 语义表示模型的预训练方法、装置、电子设备和存储介质 | |
CN108230346B (zh) | 用于分割图像语义特征的方法和装置、电子设备 | |
WO2022105125A1 (zh) | 图像分割方法、装置、计算机设备及存储介质 | |
US9824317B2 (en) | Price-and-branch algorithm for mixed integer linear programming | |
CN110929799B (zh) | 用于检测异常用户的方法、电子设备和计算机可读介质 | |
US20190075309A1 (en) | Video compressed sensing reconstruction method, system, electronic device, and storage medium | |
WO2020070387A1 (en) | A method and apparatus for training a neural network used for denoising | |
CN113963110A (zh) | 纹理图生成方法、装置、电子设备及存储介质 | |
EP4018411B1 (en) | Multi-scale-factor image super resolution with micro-structured masks | |
WO2022086939A1 (en) | Dynamic language models for continuously evolving content | |
CN114781499A (zh) | 一种构建基于ViT模型的密集预测任务适配器的方法 | |
US20230360181A1 (en) | Machine Learning for High Quality Image Processing | |
KR102512507B1 (ko) | 결정되지 않은 다운스케일링 커널들로 생성된 이미지들을 업스케일링하기 위한 기법들 | |
CN114926322A (zh) | 图像生成方法、装置、电子设备和存储介质 | |
CN114399513A (zh) | 用于训练图像分割模型和图像分割的方法、装置 | |
CN116601682A (zh) | 经由以时间残差连接为特征的机器学习模型对顺序数据的改进处理 | |
CN115803753A (zh) | 用于高效推理的多阶段机器学习模型合成 | |
CN114358198A (zh) | 实例分割方法、装置及电子设备 | |
CN113989152A (zh) | 图像增强方法、装置、设备以及存储介质 | |
CN113177483A (zh) | 视频目标分割方法、装置、设备以及存储介质 | |
CN115577796A (zh) | 用重用transformer利用注意力中的冗余 | |
CN116051935B (zh) | 图像检测方法、深度学习模型的训练方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |