CN111768327B - 基于深度学习的水印添加、提取方法、设备及存储介质 - Google Patents
基于深度学习的水印添加、提取方法、设备及存储介质 Download PDFInfo
- Publication number
- CN111768327B CN111768327B CN202010611246.8A CN202010611246A CN111768327B CN 111768327 B CN111768327 B CN 111768327B CN 202010611246 A CN202010611246 A CN 202010611246A CN 111768327 B CN111768327 B CN 111768327B
- Authority
- CN
- China
- Prior art keywords
- watermark
- image
- information
- sample
- loss function
- 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
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000013135 deep learning Methods 0.000 title claims abstract description 39
- 230000006870 function Effects 0.000 claims abstract description 83
- 238000003062 neural network model Methods 0.000 claims abstract description 32
- 238000012549 training Methods 0.000 claims abstract description 27
- 238000005286 illumination Methods 0.000 claims description 29
- 238000000605 extraction Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 14
- 230000009466 transformation Effects 0.000 claims description 12
- 230000000007 visual effect Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000006978 adaptation Effects 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims 4
- 238000012545 processing Methods 0.000 abstract description 10
- 230000000694 effects Effects 0.000 abstract description 7
- 238000012937 correction Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000009826 distribution Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005282 brightening Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription 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
- G06T1/005—Robust watermarking, e.g. average attack or collusion attack resistant
-
- 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/045—Combinations of networks
-
- 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
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0065—Extraction of an embedded watermark; Reliable detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请涉及一种基于深度学习的水印添加、提取方法、设备及存储介质,属于图像处理技术领域,该方法包括:获取待添加水印的水印信息;将水印信息和待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像;该编码器是使用样本水印信息、多张样本图像和预设损失函数对第一神经网络模型进行训练得到,预设损失函数包括基于最小可觉差建立的第一损失函数;可以解决使用现有的编码器编码得到的水印嵌入图像存在斑点或纹理的问题;编码器使用基于最小可觉差建立的第一损失函数的训练得到,可以保证该编码器编码得到的水印嵌入图像与目标图像之间满足人眼的最小可觉差,可以提高编码器的编码效果,从而提高水印嵌入图像的显示效果。
Description
技术领域
本申请涉及一种基于深度学习的水印添加、提取方法、设备及存储介质,属于图像处理技术领域。
背景技术
为了保证图像内容的安全性,常常需要在视频或者照片中加入一些水印来表征对应图像内容的一些属性。比如:图像内容的拍摄地点、拍摄时间、所属人(单位)等。为了避免水印被去除,现有技术提供一种隐形水印的相关方案,即在图像内容中加入一些肉眼看不到的水印信息。
一种典型的隐形水印添加方法包括:使用编码器将水印信息嵌入图像,得到水印嵌入图像。相应地,隐形水印提取方法包括:使用解码器对水印嵌入图像进行解码,得到水印信息。其中,编码器和解码器均由卷积神经网络构成。
然而,现有的编码器得到的水印嵌入图像会出现明显的斑点或者波纹,从而导致水印嵌入图像的显示效果不佳的问题;同时,水印嵌入图像经过转拍、转录等操作后,现有的解码器提取得到的水印信息可能存在随机错误,导致该水印信息与原始的水印信息不符的问题。
发明内容
本申请提供了一种基于深度学习的水印添加、提取方法、设备及存储介质,可以解决使用现有的编码器编码得到的水印嵌入图像存在斑点或纹理、解码器解码得到的水印信息误准确率较低的问题。本申请提供如下技术方案:
第一方面,提供了一种基于深度学习的水印添加方法,所述方法包括:
获取待添加水印的水印信息;
将所述水印信息和所述待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像;所述编码器是使用样本水印信息、多张样本图像和预设损失函数对第一神经网络模型进行训练得到,所述预设损失函数包括基于最小可觉差建立的第一损失函数。
可选地,所述将所述水印信息和所述待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像之后,还包括:
获取所述编码器运行过程中得到的水印编码图像;
将所述水印编码图像与所述目标图像之后的n帧图像分别进行叠加,得到每帧图像对应的水印嵌入图像,所述n为正整数。
可选地,所述将所述水印信息和所述待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像之前,还包括:
获取所述样本图像;
获取所述样本水印信息;
将所述样本图像和所述样本水印信息输入U-Net网络模型,得到第一模型输出结果;
将所述第一模型输出结果与所述样本图像输入所述预设损失函数,得到第一函数结果;
使用所述第一函数结果对所述U-Net网络模型进行训练,得到所述编码器。
所述基于最小可觉差建立的第一损失函数通过下式表示:
可选地,所述预设损失函数还包括第二损失函数,所述第二损失函数包括:L2损失函数、感知损失Perceptual Loss函数、Wasserstein loss函数中的任意一项或任意多项。
第二方面,提供了一种基于深度学习的水印提取方法,所述方法包括:
获取水印嵌入图像;
将所述水印嵌入图像输入预先训练的解码器,得到水印解码信息;所述解码器是使用多组样本数据对第二神经网络模型进行训练得到的,每组样本数据包括样本水印嵌入图像和所述样本水印嵌入图像对应的样本水印解码信息;
使用纠错码对所述水印解码信息进行纠错,得到水印信息。
可选地,所述使用纠错码对所述水印解码信息进行纠错,得到水印信息之后,还包括:
获取m帧水印嵌入图像对应的水印信息的投票结果,得到所述水印嵌入图像的最终水印提取结果,所述m为大于1的整数。
可选地,所述将所述水印嵌入图像输入预先训练的解码器,得到水印解码信息之前,还包括:
获取原始水印嵌入图像和所述原始水印嵌入图像对应的样本水印解码信息;
对所述原始水印嵌入图像进行随机光照变换,得到所述原始水印嵌入图像对应的样本水印嵌入图像;
将所述样本水印嵌入图像输入所述第二神经网络模型,得到第二模型输出结果;
将所述第二模型输出结果和所述样本水印解码信息输入交叉熵损失函数,得到第二函数结果;
使用所述第二函数结果对所述第二神经网络模型进行训练,得到所述解码器。
可选地,所述对所述原始水印嵌入图像进行随机光照变换,得到所述原始水印嵌入图像对应的样本水印嵌入图像,包括:
基于光照理论随机生成所述原始水印嵌入图像的光照信息;
使用所述光照信息对所述原始水印嵌入图像进行随机光照变换;
其中,所述光照信息包括:入射光线、视觉观察方向、理想反射光和/或入射光强。
第三方面,提供一种计算机设备,所述设备包括处理器和存储器;所述存储器中存储有程序,所述程序由所述处理器加载并执行以实现第一方面所述的基于深度学习的水印添加方法;或者,实现第二方面所述的基于深度学习的水印提取方法。
第四方面,提供一种计算机可读存储介质,所述存储介质中存储有程序,所述程序由所述处理器加载并执行以实现第一方面所述的基于深度学习的水印添加方法;或者,实现第二方面所述的基于深度学习的水印提取方法。
本申请的有益效果在于:通过获取待添加水印的水印信息;将水印信息和待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像;该编码器是使用多张样本图像和预设损失函数对第一神经网络模型进行训练得到,预设损失函数包括基于最小可觉差建立的第一损失函数;可以解决使用现有的编码器编码得到的水印嵌入图像存在斑点或纹理的问题;由于编码器使用基于最小可觉差建立的第一损失函数的训练得到,因此,可以保证该编码器编码得到的水印嵌入图像与目标图像之间满足人眼的最小可觉差,即不存在人眼可察觉的斑点或纹理,可以提高编码器的编码效果,从而提高水印嵌入图像的显示效果。
另外,通过获取水印嵌入图像;将水印嵌入图像输入预先训练的解码器,得到水印解码信息;解码器是使用多组样本数据对第二神经网络模型进行训练得到的,每组样本数据包括样本水印嵌入图像和样本水印嵌入图像对应的样本水印解码信息;使用纠错码对水印解码信息进行纠错,得到水印信息;可以解决解码器输出的水印解码信息可能存在随机错误的问题;由于使用纠错码可以对水印解码信息中的随机错误进行纠错,因此,可以提高得到的水印信息的准确性。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。
附图说明
图1是本申请一个实施例提供的基于深度学习的水印添加方法的流程图;
图2是本申请一个实施例提供的编码器的训练过程的流程图;
图3是本申请一个实施例提供的样本图像的示意图;
图4是本申请一个实施例提供的未使用JND损失函数训练的编码器输出的水印嵌入图像(右侧)和使用JND损失函数训练的编码器输出的水印嵌入图像(左侧)之间的比较示意图;
图5是本申请一个实施例提供的水印编码图像的示意图;
图6是本申请一个实施例提供的基于深度学习的水印提取方法的流程图;
图7是本申请一个实施例提供的解码器的训练过程的流程图;
图8是本申请一个实施例提供的基于深度学习的水印添加装置的框图;
图9是本申请一个实施例提供的基于深度学习的水印提取装置的框图;
图10是本申请一个实施例提供的计算机设备的框图。
具体实施方式
下面结合附图和实施例,对本申请的具体实施方式作进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
首先,对本申请涉及的若干名词进行介绍。
最小可觉差(Just Noticeable Distortion,JND):用于表示人眼不能察觉的最大图像失真,体现了人眼对图像改变的容忍度。在图像处理领域,JND可以用来度量人眼对图像中不同区域失真的敏感性。
感知损失(Perceptual Loss)函数:用于衡量两幅图像之间的差异。
Wasserstein loss函数:是两个概率分布的距离衡量指标。Wasserstein loss函数是概率分布的距离,它是两个在同一空间上(即维度相同)的随机变量x,y之差的范数均值的下确界。
交叉熵损失(cross entropy loss)函数:用于指示实际输出(概率)与期望输出(概率)的距离,交叉熵的值越小,两个概率分布就越接近。
U-net网络模型:采用的是一个包含下采样和上采样的网络结构。下采样用来逐渐展现环境信息,而上采样的过程是结合下采样各层信息和上采样的输入信息来还原细节信息,并且逐步还原图像精度。
纠错码:在传输过程中,原码发生错误后能在接收端自行发现或纠正的码。纠错码包括BCH纠错码。其中,BCH纠错码是循环码的一种,能纠正多个随机错误。BCH纠错码算法的原理包括:若循环码的生成多项式为:g(x)=LCM[m1(x),m3(x),…,m2t-1(x)]。其中,LCM表示最小公倍式,t为纠错个数,mi(x)为素多项式,则由此生成的循环码称为BCH码。BCH码的码长n=2m-1,或是n=2m-1的因子。其中,BCH码包括信息位和监督位,监督位用于纠正解码得到的字符串中的随机错误。比如:m=4,即bit位数为15位,其中11位为信息位,4位为监督位,来纠正解码的字符中随机的一位错误比特(bit)。
下面对本申请提供的基于深度学***板电脑等终端;或者,为服器,本实施例不对电子设备的类型作限定。
图1是本申请一个实施例提供的基于深度学习的水印添加方法的流程图。该方法至少包括以下几个步骤:
步骤101,获取待添加水印的水印信息。
水印信息是对待添加水印进行编码得到的信息。可选地,水印信息为二进制编码。在一个示意中,水印信息基于纠错编码算法得到的,比如:基于BCH编码算法对待添加水印进行编码,得到水印信息,以供解码端使用解码得到的字符串中的监督位纠正该字符串中的随机错误。
比如:电子设备将需要加入视频(图片)的信息,如:拍摄的地点、时间、所属人等信息与二进制串形成映射表,此时,嵌入图像的信息会随着比特串的长度的增加呈指数级增加。如:10bit长度的水印可以嵌入210=1024条信息,20bit长度的水印可以嵌入220=1048576条信息。
步骤102,将水印信息和待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像;编码器是使用样本水印信息、多张样本图像和预设损失函数对第一神经网络模型进行训练得到,预设损失函数包括基于最小可觉差建立的第一损失函数。
本实施例中,通过基于最小可觉差建立的损失函数来训练编码器,可以使得编码器编码得到的水印嵌入图像与目标图像之间满足人眼的最小可觉差,提高嵌入水印后的图像的不可觉察度。
参考图2,在将水印信息和待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像之前,还包括步骤21-24:
步骤21,获取样本图像;
比如:样本图像如图3所示。
步骤22,获取样本水印信息;
样本水印信息的相关说明详见步骤101中水印信息的描述,本实施例在此不再赘述。
步骤23,将样本图像和样本水印信息输入U-Net网络模型,得到第一模型输出结果;
本实施例中,以第一神经网络模型为U-Net网络模型为例进行说明,在其它实施方式中,第一神经网络模型也可以基于其它类型的神经网络模型建立,本实施例不对第一神经网络模型的类型作限定。
步骤24,将第一模型输出结果与样本图像输入预设损失函数,得到第一函数结果;使用第一函数结果对U-Net网络模型进行训练,得到编码器。
可选地,第一损失函数为JND损失函数。JND损失函数通过下式表示:
参考图4所示的未使用JND损失函数训练的编码器输出的水印嵌入图像(右侧)和使用JND损失函数训练的编码器输出的水印嵌入图像(左侧)之间的比较示意图,根据图4可知,使用JND损失函数训练的编码器输出的水印嵌入图像消除了很多纹理。
当然,预设损失函数还可以包括第二损失函数,第二损失函数包括但不限于:L2损失函数、感知损失Perceptual Loss函数、Wasserstein loss函数中的任意一项或任意多项,本实施例不对预设损失函数的类型作限定。
可选地,在目标图像为视频中的一帧图像时,若视频的帧率较大,此时,添加水印的过程需要在很短的时间内完成。比如:视频的帧率为30帧/秒,此时添加水印的过程需要在1ms甚至更短的时间内完成。这就会导致对添加水印的实时性的要求较高的问题。基于此,在步骤102之后,电子设备可以获取编码器运行过程中得到的水印编码图像;将水印编码图像与目标图像之后的n帧图像分别进行叠加,得到每帧图像对应的水印嵌入图像,n为正整数。换句话说,电子设备每隔n帧执行一次步骤101和102,通过跳帧添加水印的方式,降低了对水印添加过程的实时性的要求。
其中,n的值可以为1或者其它数值,本实施例不对n的取值作限定。在一个示例中,为了避免n的取值过大导致画面出现闪烁,n的取值为1。当然,随着帧率的增大,n的值也可以随之增大。
水印编码图像是编码器运行过程中得到的中间结果。水印编码图像参考图5所示。
综上所述,本实施例提供的基于深度学习的水印添加方法,通过获取待添加水印的水印信息;将水印信息和待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像;该编码器是使用多张样本图像和预设损失函数对第一神经网络模型进行训练得到,预设损失函数包括基于最小可觉差建立的第一损失函数;可以解决使用现有的编码器编码得到的水印嵌入图像存在斑点或纹理的问题;由于编码器使用基于最小可觉差建立的第一损失函数的训练得到,因此,可以保证该编码器编码得到的水印嵌入图像与目标图像之间满足人眼的最小可觉差,即不存在人眼可察觉的斑点或纹理,可以提高编码器的编码效果,从而提高水印嵌入图像的显示效果。
图6是本申请一个实施例提供的基于深度学习的水印提取方法的流程图。该方法至少包括以下几个步骤:
步骤601,获取水印嵌入图像。
水印嵌入图像为将水印信息和该待添加水印的目标图像输入编码器中得到的;或者,是使用编码器上一次输出的水印编码图像与当前图像进行叠加得到的,当前图像为位于目标图像之后的n帧图像中的任意一张图像。
步骤602,将水印嵌入图像输入预先训练的解码器,得到水印解码信息;解码器是使用多组样本数据对第二神经网络模型进行训练得到的,每组样本数据包括样本水印嵌入图像和样本水印嵌入图像对应的样本水印解码信息。
参考图7,本实施例中,将水印嵌入图像输入预先训练的解码器,得到水印解码信息之前,还包括步骤71-75:
步骤71,获取原始水印嵌入图像和原始水印嵌入图像对应的样本水印解码信息。
在一个示例中,原始水印嵌入图像是将样本水印解码信息和原始图像输入已训练好的编码器中得到的。具体过程参考图1所示的实施例,本实施例在此不再赘述。
步骤72,对原始水印嵌入图像进行随机光照变换,得到原始水印嵌入图像对应的样本水印嵌入图像。
由于在对视频进行转拍的过程中,会受到拍摄角度、光线、对焦、拍摄抖动等多方面的影响。在受拍摄角度及光照影响的条件下导致的画面变亮或者变暗,都会对解码准确性造成很大的影响。基于此,本实施例中,电子设备基于光照理论的随机光照变换,在模型训练的过程中不断地对原始水印嵌入图像实行随机位置及随机强度的光照变换,会使第二神经网络模型最终适应因拍摄角度及光照变化导致的画面变暗或者变亮,从而可以提高解码器进行水印提取时的鲁棒性。
可选地,对原始水印嵌入图像进行随机光照变换,得到原始水印嵌入图像对应的样本水印嵌入图像,包括:基于光照理论随机生成原始水印嵌入图像的光照信息;使用光照信息对原始水印嵌入图像进行随机光照变换;其中,光照信息包括:入射光线、视觉观察方向、理想反射光和/或入射光强。
由于光线照射到物体后形成漫反射和镜面反射两个部分,其中,漫反射和镜面反射可以用下述公式表示:
ID=CILIn·Nn
IS=CIL(Rn·Vn)s
其中,n代表第n个像素点,Nn代表照射面的法向量,Ln为入射光线,Vn为视觉观察方向,Rn为理想反射光,IL为入射光强。Nn、Ln、Vn、Rn、IL均为随机生成的矩阵。
步骤73,将样本水印嵌入图像输入第二神经网络模型,得到第二模型输出结果。
第二神经网络模型与第一神经网络模型相同或不同。可选地,第二神经网络模型为卷积神经网络模型。
步骤74,将第二模型输出结果和样本水印解码信息输入交叉熵损失函数,得到第二函数结果。
步骤75,使用第二函数结果对第二神经网络模型进行训练,得到解码器。
步骤603,使用纠错码对水印解码信息进行纠错,得到水印信息。
可选地,纠错码为BCH码,此时,电子设备基于BCH解码原理使用水印解码信息中的监督位对水印解码信息中信息位进行纠正,得到水印信息。
可选地,由于纠错码的纠错位数有限,因此,纠错得到的水印信息可能依然存在错误,此时,在步骤603之后,电子设备获取m帧水印嵌入图像对应的水印信息的投票结果,得到水印嵌入图像的最终水印提取结果。m为大于1的整数。
比如:输入的比特串和10帧水印嵌入图像的水印信息参考下表一所示,根据表一可知,投票结果为0 1 0 0 1 0 0 0 0 0,与输入的比特串相同。
表一:
输入的比特串 | 0 1 0 0 1 0 0 0 0 0 |
第1帧水印信息 | 0 1 0 0 1 0 0 0 0 0 |
第2帧水印信息 | 1 1 0 0 1 0 0 0 0 0 |
第3帧水印信息 | 0 1 0 0 1 0 0 0 0 0 |
第4帧水印信息 | 0 1 0 0 1 0 0 0 0 0 |
第5帧水印信息 | 0 1 0 0 1 0 1 0 0 0 |
第6帧水印信息 | 1 1 0 0 1 0 1 0 1 0 |
第7帧水印信息 | 0 1 0 0 1 0 0 0 0 0 |
第8帧水印信息 | 0 1 0 0 1 0 1 0 1 0 |
第9帧水印信息 | 0 1 0 0 1 0 0 0 0 0 |
第10帧水印信息 | 0 0 1 0 1 0 0 0 0 0 |
投票结果 | 0 1 0 0 1 0 0 0 0 0 |
综上所述,本实施例提供的基于深度学习的水印提取方法,通过获取水印嵌入图像;将水印嵌入图像输入预先训练的解码器,得到水印解码信息;解码器是使用多组样本数据对第二神经网络模型进行训练得到的,每组样本数据包括样本水印嵌入图像和样本水印嵌入图像对应的样本水印解码信息;使用纠错码对水印解码信息进行纠错,得到水印信息;可以解决解码器输出的水印解码信息可能存在随机错误的问题;由于使用纠错码可以对水印解码信息中的随机错误进行纠错,因此,可以提高得到的水印信息的准确性。
另外,通过对多帧水印信息进行投票得到投票结果,可以进一步纠正水印提取中的错误,从而进一步提高水印提取的准确性。
另外,由于解码器是使用经过随机光照变换得到的样本水印嵌入图像训练得到的,因此,解码器在提取不同光照情况下的水印嵌入图像的水印解码信息时,均可以得到准确率较高的水印解码信息,编码器的提取结果不再受水印嵌入图像的光照条件的影响,提高编码器提取水印解码信息的准确性。
图8是本申请一个实施例提供的基于深度学习的水印添加装置的框图。该装置至少包括以下几个模块:信息获取模块810和水印添加模块820。
信息获取模块810,用于获取待添加水印的水印信息;
水印添加模块820,用于将所述水印信息和所述待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像;所述编码器是使用多张样本图像和预设损失函数对第一神经网络模型进行训练得到,所述预设损失函数包括基于最小可觉差建立的第一损失函数。
相关细节参考上述方法实施例。
图9是本申请一个实施例提供的基于深度学习的水印提取装置的框图。该装置至少包括以下几个模块:图像获取模块910、水印解码模块920和信息纠错模块930。
图像获取模块910,用于获取水印嵌入图像;
水印解码模块920,用于将所述水印嵌入图像输入预先训练的解码器,得到水印解码信息;所述解码器是使用样本水印信息、多组样本数据对第二神经网络模型进行训练得到的,每组样本数据包括样本水印嵌入图像和所述样本水印嵌入图像对应的样本水印解码信息;
信息纠错模块930,用于使用纠错码对所述水印解码信息进行纠错,得到水印信息。
需要说明的是:上述实施例中提供的基于深度学习的水印添加、提取装置在进行基于深度学习的水印添加、提取时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将基于深度学习的水印添加、提取装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于深度学习的水印添加、提取装置与基于深度学习的水印添加、提取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10是本申请一个实施例提供的计算机设备的框图,该设备可以是上文的电子设备。该设备至少包括处理器1001和存储器1002。
处理器1001可以包括一个或多个处理核心,比如:4核心处理器、8核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1001所执行以实现本申请中方法实施例提供的基于深度学习的水印添加方法;或者,基于深度学习的水印提取方法。
在一些实施例中,计算机设备还可选包括有:***设备接口和至少一个***设备。处理器1001、存储器1002和***设备接口之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口相连。示意性地,***设备包括但不限于:射频电路、触摸显示屏、音频电路、和电源等。
当然,计算机设备还可以包括更少或更多的组件,本实施例对此不作限定。
可选地,本申请还提供有一种计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的基于深度学习的水印添加方法;或者,基于深度学习的水印提取方法。
可选地,本申请还提供有一种计算机产品,该计算机产品包括计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的基于深度学习的水印添加方法;或者,基于深度学习的水印提取方法。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于深度学习的水印添加方法,其特征在于,所述方法包括:
获取待添加水印的水印信息;
将所述水印信息和所述待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像;所述编码器是使用样本水印信息、多张样本图像和预设损失函数对第一神经网络模型进行训练得到,所述预设损失函数包括基于最小可觉差建立的第一损失函数;所述基于最小可觉差建立的第一损失函数通过下式表示:
2.根据权利要求1所述的方法,其特征在于,将所述水印信息和所述待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像之后,还包括:
获取所述编码器运行过程中得到的水印编码图像;
将所述水印编码图像与所述目标图像之后的n帧图像分别进行叠加,得到每帧图像对应的水印嵌入图像,所述n为正整数。
3.根据权利要求1所述的方法,其特征在于,所述将所述水印信息和所述待添加水印对应的目标图像输入预先训练的编码器,得到水印嵌入图像之前,还包括:
获取所述样本图像;
获取所述样本水印信息;
将所述样本图像和所述样本水印信息输入U-Net网络模型,得到第一模型输出结果;
将所述第一模型输出结果与所述样本图像输入所述预设损失函数,得到第一函数结果;
使用所述第一函数结果对所述U-Net网络模型进行训练,得到所述编码器。
4.根据权利要求1所述的方法,其特征在于,所述预设损失函数还包括第二损失函数,所述第二损失函数包括:L2损失函数、感知损失Perceptual Loss函数、Wasserstein loss函数中的任意一项或任意多项。
5.一种基于深度学习的水印提取方法,其特征在于,所述方法包括:
获取水印嵌入图像,所述水印嵌入图像为将水印信息和待添加水印的目标图像输入编码器中得到的;或者,是使用编码器上一次输出的水印编码图像与当前图像进行叠加得到的,所述当前图像为位于所述目标图像之后的n帧图像中的任意一张图像;所述编码器是使用样本水印信息、多张样本图像和预设损失函数对第一神经网络模型进行训练得到,所述预设损失函数包括基于最小可觉差建立的第一损失函数;所述基于最小可觉差建立的第一损失函数通过下式表示:
其中,表示亮度适应的视觉阈,表示空间掩码;Mr为所述第一神经网络模型的第一模型输出结果;L2表示对计算结果进行L2归一化;LJND为第一损失函数;σ为对计算结果进行L2归一化过程中使用的系数;C为计算亮度适应的视觉阈与空间掩码的最小值时使用的系数;
将所述水印嵌入图像输入预先训练的解码器,得到水印解码信息;所述解码器是使用多组样本数据对第二神经网络模型进行训练得到的,每组样本数据包括样本水印嵌入图像和所述样本水印嵌入图像对应的样本水印解码信息;
使用纠错码对所述水印解码信息进行纠错,得到水印信息。
6.根据权利要求5所述的方法,其特征在于,所述使用纠错码对所述水印解码信息进行纠错,得到水印信息之后,还包括:
获取m帧水印嵌入图像对应的水印信息的投票结果,得到所述水印嵌入图像的最终水印提取结果,所述m为大于1的整数。
7.根据权利要求5所述的方法,其特征在于,所述将所述水印嵌入图像输入预先训练的解码器,得到水印解码信息之前,还包括:
获取原始水印嵌入图像和所述原始水印嵌入图像对应的样本水印解码信息;
对所述原始水印嵌入图像进行随机光照变换,得到所述原始水印嵌入图像对应的样本水印嵌入图像;
将所述样本水印嵌入图像输入所述第二神经网络模型,得到第二模型输出结果;
将所述第二模型输出结果和所述样本水印解码信息输入交叉熵损失函数,得到第二函数结果;
使用所述第二函数结果对所述第二神经网络模型进行训练,得到所述解码器。
8.根据权利要求7所述的方法,其特征在于,所述对所述原始水印嵌入图像进行随机光照变换,得到所述原始水印嵌入图像对应的样本水印嵌入图像,包括:
基于光照理论随机生成所述原始水印嵌入图像的光照信息;
使用所述光照信息对所述原始水印嵌入图像进行随机光照变换;
其中,所述光照信息包括:入射光线、视觉观察方向、理想反射光和/或入射光强。
9.一种计算机设备,其特征在于,所述设备包括处理器和存储器;所述存储器中存储有程序,所述程序由所述处理器加载并执行以实现如权利要求1至4任一项所述的基于深度学习的水印添加方法;或者,实现如权利要求5至8任一项所述的基于深度学习的水印提取方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有程序,所述程序被处理器执行时用于实现如权利要求1至4任一项所述的基于深度学习的水印添加方法;或者,实现如权利要求5至8任一项所述的基于深度学习的水印提取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010611246.8A CN111768327B (zh) | 2020-06-30 | 2020-06-30 | 基于深度学习的水印添加、提取方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010611246.8A CN111768327B (zh) | 2020-06-30 | 2020-06-30 | 基于深度学习的水印添加、提取方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111768327A CN111768327A (zh) | 2020-10-13 |
CN111768327B true CN111768327B (zh) | 2022-07-19 |
Family
ID=72724182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010611246.8A Active CN111768327B (zh) | 2020-06-30 | 2020-06-30 | 基于深度学习的水印添加、提取方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111768327B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112183150B (zh) * | 2020-10-16 | 2022-11-08 | 上海了物网络科技有限公司 | 图像二维码及其制备方法、解析装置和解析方法 |
CN112561768B (zh) * | 2020-12-02 | 2024-03-29 | 中国电子科技集团公司第十五研究所 | 基于深度学习的电脑屏幕最佳水印类型确定方法及*** |
CN112907430B (zh) * | 2021-02-20 | 2022-12-13 | 百度在线网络技术(北京)有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN113222804B (zh) * | 2021-06-02 | 2022-03-15 | 景德镇陶瓷大学 | 面向陶瓷工艺的上采样陶瓷水印模型训练方法和嵌密方法 |
CN113592693B (zh) * | 2021-07-12 | 2023-05-12 | 南京信息工程大学 | 基于Y-Net的数字水印方法、装置及*** |
CN113658032B (zh) * | 2021-10-20 | 2022-02-18 | 广东迅维信息产业股份有限公司 | 基于深度学习和图像处理的图像水印加解密方法及*** |
CN115273247A (zh) * | 2022-07-19 | 2022-11-01 | 北京大学 | 一种针对深度伪造的主动防御方法、*** |
CN116630131A (zh) * | 2023-07-25 | 2023-08-22 | 北京和人广智科技有限公司 | 屏幕隐形水印的编码、解码***及方法 |
CN116703687B (zh) * | 2023-08-02 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 图像生成模型处理、图像生成方法、装置和计算机设备 |
CN117094871A (zh) * | 2023-09-01 | 2023-11-21 | 江苏群杰物联科技有限公司 | 图像水印处理方法、装置、电子设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3397157B2 (ja) * | 1999-01-13 | 2003-04-14 | 日本電気株式会社 | 電子透かし挿入システム |
CN111314704B (zh) * | 2018-12-12 | 2023-01-17 | 中国科学院深圳先进技术研究院 | 图像级jnd阈值的预测方法、装置、设备及存储介质 |
CN111223034B (zh) * | 2019-11-14 | 2023-04-28 | 中山大学 | 基于深度学习的大容量抗打印/拍摄盲水印***及方法 |
CN111127476B (zh) * | 2019-12-06 | 2024-01-26 | Oppo广东移动通信有限公司 | 一种图像处理方法、装置、设备及存储介质 |
-
2020
- 2020-06-30 CN CN202010611246.8A patent/CN111768327B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111768327A (zh) | 2020-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111768327B (zh) | 基于深度学习的水印添加、提取方法、设备及存储介质 | |
CN113658051B (zh) | 一种基于循环生成对抗网络的图像去雾方法及*** | |
US20230008085A1 (en) | Method for embedding watermark in video data and apparatus, method for extracting watermark in video data and apparatus, device, and storage medium | |
CN112819720B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
US11836898B2 (en) | Method and apparatus for generating image, and electronic device | |
EP1908007B1 (en) | Image watermarking | |
CN113807334B (zh) | 一种基于残差网络的多尺度特征融合的人群密度估计方法 | |
CN116205820A (zh) | 图像增强方法、目标识别方法、设备及介质 | |
CN113888431A (zh) | 图像修复模型的训练方法、装置、计算机设备及存储介质 | |
CN112070648A (zh) | 水印嵌入、提取方法、装置及电子设备 | |
CN113538197A (zh) | 水印提取方法、装置、存储介质以及电子设备 | |
CN118097089B (zh) | 基于整体性网络的夜间仓储机器人目标检测方法及*** | |
CN117152182B (zh) | 一种超低照度网络相机图像处理方法、装置及电子设备 | |
CN116051407A (zh) | 一种图像修复方法 | |
CN116109512A (zh) | 一种基于航拍遥感影像的图像处理方法、装置及存储介质 | |
CN112004148B (zh) | 视频处理方法、装置、计算机设备及存储介质 | |
CN113570494B (zh) | 一种加密数字水印添加方法及***、设备和存储介质 | |
CN113095991B (zh) | 一种基于深度学习的高动态范围图像隐写和恢复方法 | |
CN114612316A (zh) | 一种核预测网络图像去雨方法和装置 | |
CN114493971A (zh) | 媒体数据转换模型训练、数字水印嵌入方法和装置 | |
CN116391200A (zh) | 缩放不可知水印提取 | |
CN113538198B (zh) | 水印添加方法、装置、存储介质以及电子设备 | |
CN116781926A (zh) | 基于通道空间注意力机制的视频水印嵌入方法及*** | |
CN116664444A (zh) | 基于图像的自编码器训练方法、装置、设备及存储介质 | |
CN117333347A (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 |