一种基于深度学习的图像去水印方法与流程

文档序号:22579108发布日期:2020-10-20 16:55阅读:1417来源:国知局
一种基于深度学习的图像去水印方法与流程

本发明涉及图像去水印技术领域,尤其涉及一种基于深度学习的图像去水印方法。



背景技术:

如今,水印作为一种保护版权的有效方式被广泛应用于海量的互联网图像中,针对水印的各种处理变得越来越重要,比如水印的检测以及水印的去除与反去除。

在日常生活中如果下载和使用了带有水印的互联网图像,往往既不美观也可能构成侵权。面对细节丰富且复杂的水印,传统的ps去水印方法已经不能满足需求,对细节破坏的比较严重。

水印在图像中的视觉显著性很低,而且水印面积小、颜色浅、透明度高,导致带水印图像与无水印图像间差异很小、区分度低,所以精度要求高的去水印操作有一定实现难度。

研究发现,未经任何学习过程的卷积图像生成器架构可以捕捉到大量图像数据,尤其是解决不同图像修复问题的图像数据。在卷积网络对损坏图像反复迭代时,它能自动利用图像的全局统计信息重构丢失的部分。

在图像复原中,基于学习的方法和基于非学习的方法是两种通用的方法。基于学习的方法是一种直接的方法,将有噪点图像作为输入数据,无噪点图像作为输出数据去训练深度卷积网络进行学习。基于非学习的方法或者说是手动制作先验的方法,是在合成数据里强行添加一些例如自然、真实图像的所属类别这样的信息。

一般训练图像降噪模型,需要给神经网络输入带噪音图像和无噪音的干净样本这样成对的数据集。一组是清晰无噪点原图,一组是有噪点图,神经网络在大量对比中,学习到去除噪点的方法。l1损失可以得到目标的中值,这意味着网络可以被训练用来修复有显著异常内容的图像(最高可达50%),而且也仅仅需要成对的被污染图像。这样的思路的瓶颈在于:寻找成对的符合要求的数据集是较困难的。

图像到图像转换问题的一个特征定义是将高分辨率输入网格映射到高分辨率输出网格。输入和输出的表面外观虽然存在差异,但是两者是相同底层结构的渲染。使用对抗生成网络的生成器的输入结构大致与输出结构对齐。

在某些常见情况下,网络可以学习恢复信号而不用输入“干净”的信号,且得到的结果接近或相当于使用“干净”样本进行训练。

因此,现有技术需要进一步改进和完善。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种基于深度学习的图像去水印方法。

本发明的目的通过下述技术方案实现:

一种基于对抗生成网络的图像去水印方法,该方法主要包括如下具体步骤:

1)自制有水印数据集。

2)构造解决图像到图像的转换问题的生成对抗网络模型。水印去除问题可以看作是一个从图像到图像的转换问题,也就是把带水印图像转换为无水印图像。

3)模型分为生成器和判别器。首先进行生成器模块的设计。为了在细节和边缘部分获得更好的结果,使用跳跃连接结构实现有噪点图像到复原图像间的转换。

4)编码器的设计。编码器输出特征图的不同通道组合了图像的不同特征。13个卷积层,没有全连接层。

5)解码器的设计。解码器使用最大池化的索引进行上采样。

6)判别器模块的设计。为了更好地对图像的局部做判断,把图像等分成patch,判别器判断的是感受野n*n局部patch的真假性。

7)设计损失函数。在该去水印模型中,采用感知损失和l1范数相结合的方式替换传统的均方误差损失法,使得无水印生成图像在细节和纹理上能够更贴近原图。

8)把数据集输入到搭建的的模型中进行训练与测试。输入带水印数据集后,该模型能分离出水印和背景图,进而还原图像。

进一步的,步骤1)还包括:收集各样的水印,为了保证模型的泛化性能,水印种类尽可能的多。网站上的图片都有统一样式的水印,去网站上传图片,让网站为图片加上水印,通过图像减法计算差值,得到了水印图像。一共收集了100种水印,选择网上的官方数据集作为原始的无水印图像,利用图像处理工具把收集的100种水印随机设置大小、位置以及透明度后,添加到原始图像上,得到自制的水印图像数据集。

进一步的,步骤2)还包括:先通过水印检测模型检测出水印区域,然后再针对水印区域来进行水印去除操作。为了尽可能提升网络输出无水印图像的质量,将输入信息添加到输出中,从而尽可能保留图像的背景信息。

进一步的,步骤3)还包括:生成器结构中,每个卷积层得到的特征图都会级联到对应的上采样层,从而每层特征图都能有效使用到后续计算中。使用跳层连接的方法,从而使得最终所得到的特征图中既包含了高级别的特征,也包含很多的低级别的特征,实现了不同尺度下特征的融合。

进一步的,步骤4)还包括:在编码器处,执行卷积和最大池化。进行2*2最大池化时存储相应的最大池化索引。

进一步的,步骤5)还包括:在解码器处,执行上采样和卷积。最后,每个像素送到softmax分类器。在上采样期间,调用相应编码器层的最大池化索引以进行上采样。

进一步的,步骤6)还包括:模型采用30*30大小的输出,每个元素感受野是70*70的patch,判别器会判断30个70*70的patch的真假性。对于不同尺寸的patch参数值做实验后,发现70*70的参数值比较合适。

进一步的,步骤7)还包括:若仅仅使用gan损失函数只能够衡量生成图片的结构与真实图片的结构是否相似,l1和l2范数并不能很好地恢复图像的高频部分,l1范数计算的是两个像素值的距离,能较好地恢复图像的低频部分即图像中的色块特征。在该去水印模型中,采用感知损失和l1范数相结合的方式替换传统的均方误差损失法,使得无水印生成图像在细节和纹理上能够更贴近原图。

进一步的,步骤8)还包括:输入带水印数据集后,该模型能分离出水印和背景图,进而还原图像。模型能从大型真实图像数据集中学习到图像的先验信息,像素可以按照一定方式组合成一张无水印图像,通过这样的路径学习到通用图像信息的模型就能用来复原图像或者是生成高分辨率图像了。

本发明的工作过程和原理是:本发明提供一种基于深度学习的图像去水印方法,在一定程度上,图像去水印的过程是一种图像恢复的工作,对抗生成网络能有效应对图像恢复。在生成器中输入带水印的原始图像作为条件约束,通过判别器和生成器间的对抗训练,提高生成器的能力,改善去水印效果。

与现有技术相比,本发明还具有以下优点:

(1)本发明所提供的基于深度学习的图像去水印方法与传统技术相比,可以生成分辨率更高的图片,在模型对抗生成的博弈过程中,若是生成不清晰的图片,判别网络会判别该生成图像是假的。

(2)本发明所提供的基于深度学习的图像去水印方法具有高鲁棒性和安全性的去水印方案,使得不仅对单一图片可视水印的擦除性能显著,对大规模图片集也能保持高还原性。

附图说明

图1是本发明所提供的基于深度学习的图像去水印方法的流程图。

图2是本发明所提供的图像生成网络生成器中的生成器的结构示意图。

图3是本发明所提供的图像生成网络生成器中的编码器的结构示意图。

图4是本发明所提供的图像生成网络生成器中的解码器使用最大池化的索引进行上采样的示意图。

图5是本发明所提供的图像生成网络生成器中使用跳层连接的局部模型示意图。

图6是本发明所提供的有水印输入图(左图)和无水印生成图(右图)的效果对比示意图。

图7是本发明所提供的有水印输入图(左图)和无水印生成图(右图)的效果对比示意图。

图8是本发明所提供的有水印输入图(左图)和无水印生成图(右图)的效果对比示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明作进一步说明。

以下首先就本发明的技术术语进行解释与说明:

感受野:感受野表示输入空间中一个特定cnn特征的范围区域。一个特征的感受野可以采用区域的中心位置和特征大小进行描述。cnn中每层的featuremap上的像素点在原始图像中映射的区域大小,相当于高层的特征图中的像素点受原图多大区域的影响。

上采样:上采样又称为放大图像或图像插值,主要目的是放大原图像,从而可以显示在更高分辨率的显示设备上。图像放大几乎都是采用内插值方法,即在原有图像像素的基础上在像素点之间采用合适的插值算法插入新的元素。

马尔可夫模型:是一种统计模型,广泛应用在语音识别、词性自动标注、音字转换、概率文法等各个应用领域。

生成器:主要用来学习真实图像分布从而让自身生成的图像更加真实,以“骗过”判别器。

判别器:需要对接收的图片进行真假判别。

动态均衡:生成器生成的图像接近于真实图像分布,而判别器识别不出真假图像,对于给定图像的预测为真的概率基本接近0.5。

实施例1:

如图1至图8所示,本实施例公开了一种基于深度学习的图像去水印方法,包括如下具体实施步骤:

1)自制有水印数据集。

2)构造解决图像到图像的转换问题的生成对抗网络模型。设想的方法是无监督图像到图像的翻译,灵感来自基于gan的修复和检测模型。水印去除问题可以看作是一个从图像到图像的转换问题,也就是把带水印图像转换为无水印图像。

3)模型分为生成器和判别器。首先进行生成器模块的设计。生成器包括编码器和解码器。为了生成清晰逼真的图像,在细节和边缘部分获得更好的结果,使用跳跃连接结构实现有噪点图像到复原图像间的转换。

4)编码器的设计。编码器输出特征图的不同通道组合了图像的不同特征。13个卷积层,没有全连接层。

5)解码器的设计。解码器使用最大池化的索引进行上采样。

6)接着是判别器模块的设计。为了更好地对图像的局部做判断,也就是说把图像等分成patch,判别器判断的是感受野n*n局部patch的真假性。模型采用30*30大小的输出,每个元素感受野是70*70的patch。

7)设计损失函数。在该去水印模型中,采用感知损失和l1范数相结合的方式替换传统的均方误差损失法,使得无水印生成图像在细节和纹理上能够更贴近原图。

8)把数据集输入到搭建的的模型中进行训练与测试。输入带水印数据集后,该模型能分离出水印和背景图,进而还原图像。

步骤1)水印去除问题可以看作是一个从图像到图像的转换问题,也就是把带水印图像转换为无水印图像。无论是搭建水印检测模型还是水印去除模型,都需要海量水印图像作为数据基础。然而现实中并没有直接可以使用的水印图像数据集。因此,第一步是构建一个水印图像数据集。收集各式各样的水印,为了保证后续模型良好的泛化性能,所以水印的种类要尽可能的多,水印样式也要尽可能丰富。网站上的图片都有统一样式的水印,只需要去网站上传一张纯色背景的图片,这里采用的是50%中性灰的纯色背景图,让网站系统为这张图片加上水印,然后通过图像减法计算出差值,也就得到了水印图像。最后一共收集了100种来自于企业、组织以及个人的水印,涵盖了中文、英文、数字和图形等不同的样式。制作带水印的图像,为了保证数据集的一般性,选择网上公开的官方数据集作为原始的无水印图像,然后利用图像处理工具把收集的100种水印随机设置大小、位置以及透明度后,添加到原始图像上,从而得到自制的水印图像数据集。

步骤2)构建的模型具有完整的循环网络结构,研究发现,gan在图像修复和重建上具有很强大的能力,因为水印在图像上的面积较小,所以直接对整幅图像进行水印去除显得过于粗暴,也会使得去除水印的速度大大减慢。针对这种情况,先通过水印检测模型检测出水印区域,然后再针对水印区域来进行水印去除操作。为了尽可能提升网络输出无水印图像的质量,将输入信息添加到输出中,从而尽可能保留图像的背景信息。

步骤3)生成器结构中,每个卷积层得到的特征图都会级联到对应的上采样层,从而每层特征图都能有效使用到后续计算中。即跳层连接,输入和输出图像的外表面不同,而潜在结构相似,对于去水印这样的图像恢复任务来说,输入和输出图像应共享底层信息,使用跳层连接的方法,避免了直接在高级特征图中进行监督和损失计算,结合了低级特征图中的特征,从而使得最终所得到的特征图中既包含了高级别的特征,也包含很多的低级别的特征,实现了不同尺度下特征的融合,提高模型的结果精确度。不同层次的特征即不同大小的感受野,对于大小不同的目标对象的敏感度不同。感受野大的特征很容易识别出大物体,大物体边缘信息和小物体信息容易在深层网络多次采样过程中弄丢,此时需要感受野小的特征来帮助。去水印模型中保留浅层结构可以较好地保留图像边界、角点等高频的内容。

步骤4)在编码器处,执行卷积和最大池化。进行2*2最大池化时存储相应的最大池化索引。

步骤5)在解码器处,执行上采样和卷积。最后,每个像素送到softmax分类器。在上采样期间,调用相应编码器层的最大池化索引以进行上采样。在编码器和解码器之间还存在短连接,使得网络更好训练,生成结果更好。

步骤6)若模型是网络1*1大小的输出,则感受野表示的是原图,判别器判断的是原图的真假性。一般情况下,gan只需要输出一个true或fasle的矢量,这是代表对整张图像的评价。该模型中,为了更好地对图像的局部做判断,也就是说把图像等分成patch,判别器判断的是感受野n*n局部patch的真假性。模型采用30*30大小的输出,每个元素感受野是70*70的patch,判别器会判断30个70*70的patch的真假性。对于不同尺寸的patch参数值做实验后,发现70*70的参数值比较合适。判别器对整个n*n大小图像卷积,输出的是一个n*n的矩阵,n*n矩阵的每一个元素只有true或false两个可能值,这样的结果通过卷积层得到,逐次叠加的卷积层最终输出n*n矩阵,矩阵中每个元素代表原图一个较大的感受野,即原图的一个patch,然后对所有响应求平均值得到最终判别结果。n值可以比图像的全尺寸小,如果n值取1,则类似于l2范数。若距离大于patch块直径的元素间相互独立,判别器会把图像建模成一个马尔可夫随机场,马尔可夫随机场会通过像素值的局部碎片区域描绘图像特征。

步骤7)一般而言,在取出噪声的图像复原任务中,需要最小化损失函数,计算损失函数相对于随机噪声的梯度并遍历图像空间直到其收敛到某个点。还可以采用第二种方法:构造一个用随机数初始化的函数,来自不同空间的输出可以映射到图像,使用梯度下降更新随机数,直到其在某个点收敛。因此优化图像空间可以转化为优化随机数。若仅仅使用gan损失函数只能够衡量生成图片的结构与真实图片的结构是否相似,l1和l2范数并不能很好地恢复图像的高频部分,也就是图像中的边缘区域,l1范数计算的是两个像素值的距离,衡量的是两张图片的颜色相似程度,能较好地恢复图像的低频部分即图像中的色块特征。权衡后,在该去水印模型中,采用感知损失和l1范数相结合的方式替换传统的均方误差损失法,使得无水印生成图像在细节和纹理上能够更贴近原图。

步骤8)输入带水印数据集后,该模型能分离出水印和背景图,进而还原图像。由于水印嵌入时,对于不同的原始无水印图像,会有一定程度的嵌入不一致性,该去水印模型具有高鲁棒性和安全性的去水印方案,使得不仅对单一图片可视水印的擦除性能显著,对大规模图片集也能保持高还原性。假设模型能从大型真实图像数据集中学习到图像的先验信息,即像素可以按照一定方式组合成一张无水印图像,通过这样的路径学习到通用图像信息的模型就能用来复原图像或者是生成高分辨率图像了。实际上仅仅只需要在存在噪点的有水印图像上训练,同样也能学习到图像的先验信息,这种训练表示模型在单张存在噪点的有水印图像上反复迭代。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1