图像叠加水印方法和装置转让专利

申请号 : CN201510441633.0

文献号 : CN105069738B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曹志敏陈可卿印奇

申请人 : 北京旷视科技有限公司北京迈格威科技有限公司

摘要 :

本发明公开了一种图像叠加水印方法和其装置。该图像叠加水印方法包括:确定种子水印和水印参数,其中所述水印参数中的至少一个和/或所述种子水印是随机确定的;基于所述种子水印和所述水印参数生成水印图像;以及将所述水印图像叠加到原始图像上以获得水印保护图像。根据上述图像叠加水印方法和其装置,可以获得由随机水印所保护的图像。难以对该图像进行反叠加水印处理来获得原始图像。由此,在上述方法和装置中,有效防止了未授权方获得原始图像,从而较好地保护了原始图像。

权利要求 :

1.一种图像叠加水印方法,其特征在于,包括:

确定种子水印和水印参数,其中,所述种子水印是用于生成水印图像的基础图形或图案,所述水印参数是用于确定所述种子水印在所述水印图像中所呈现的形态的参数,所述水印参数中的至少一个和/或所述种子水印是随机确定的;

基于所述种子水印和所述水印参数生成所述水印图像;以及将所述水印图像叠加到原始图像上以获得水印保护图像。

2.如权利要求1所述的方法,其特征在于,所述确定种子水印和水印参数进一步包括:建立种子水印库,其中所述种子水印库中包括多种种子水印;以及在所述种子水印库中随机选择所述种子水印。

3.如权利要求1所述的方法,其特征在于,所述种子水印包括一维曲线。

4.如权利要求3所述的方法,其特征在于,所述一维曲线是通过将多个三角函数加权求和所获得的曲线。

5.如权利要求3或4所述的方法,其特征在于,所述生成水印图像包括:根据所述水印参数平行排布所述一维曲线,以生成所述水印图像。

6.如权利要求3或4所述的方法,其特征在于,所述水印参数包括以下项目中的一项或多项:曲线旋转角度、相邻曲线间距离、曲线线形宽度、曲线颜色、曲线缩放倍数。

7.如权利要求4所述的方法,其特征在于,所述水印参数包括相邻曲线的三角函数的相位差。

8.如权利要求1所述的方法,其特征在于,所述将所述水印图像叠加到原始图像上以获得水印保护图像进一步包括:根据以下公式计算所述水印保护图像:

Imagep=alpha*Image1+beta*Image2其中,Imagep表示所述水印保护图像,Image1表示所述原始图像,Image2表示所述水印图像,alpha和beta分别表示所述原始图像的参数和所述水印图像的参数。

9.一种图像叠加水印装置,其特征在于,包括:

确定模块,用于确定种子水印和水印参数,其中,所述种子水印是用于生成水印图像的基础图形或图案,所述水印参数是用于确定所述种子水印在所述水印图像中所呈现的形态的参数,所述水印参数中的至少一个和/或所述种子水印是随机确定的;

水印生成模块,用于基于所述种子水印和所述水印参数生成所述水印图像;以及叠加模块,用于将所述水印图像叠加到原始图像上以获得水印保护图像。

10.如权利要求9所述的装置,其特征在于,所述确定模块进一步包括:建库模块,用于建立种子水印库,其中所述种子水印库中包括多种种子水印;以及选择模块,用于在所述种子水印库中随机选择所述种子水印。

11.如权利要求9所述的装置,其特征在于,所述种子水印包括一维曲线。

12.如权利要求11所述的装置,其特征在于,所述一维曲线是通过将多个三角函数加权求和所获得的曲线。

13.如权利要求9所述的装置,其特征在于,所述叠加模块通过以下操作将所述水印图像叠加到原始图像上以获得水印保护图像:根据以下公式计算所述水印保护图像:

Imagep=alpha*Image1+beta*Image2其中,Imagep表示所述水印保护图像,Image1表示所述原始图像,Image2表示所述水印图像,alpha和beta分别表示所述原始图像的参数和所述水印图像的参数。

说明书 :

图像叠加水印方法和装置

技术领域

[0001] 本发明涉及图像处理领域,具体涉及一种图像叠加水印方法和装置。

背景技术

[0002] 图像水印技术是将一些信息嵌入原始图像当中且不影响原始图像的使用价值的技术。通过这些嵌入的信息,可以达到确认内容创建者、传送隐秘信息或者判断载体是否被篡改等目的。图像水印技术是保护图像安全的有效办法。
[0003] 但是,现有技术中,通常在原始图像上叠加一个固定水印图像来保护原始图像。对于应用该方法处理的一批图像,只要获得了其中任意一个原始图像和叠加了水印的该图像所构成的图像对,即可获得用来保护图像的固定水印图像。进而,对于该批图像中的任何其他叠加了水印的图像,通过“反叠加水印”处理,即消除水印处理,即可获得原始图像。因此,上述现有技术无法起到真正保护原始图像的作用。

发明内容

[0004] 鉴于上述问题,提出了本发明以便提供一种至少部分地解决上述问题的图像叠加水印方法和装置。
[0005] 根据本发明一个方面,提供了一种图像叠加水印方法。该图像叠加水印方法包括:确定种子水印和水印参数,其中该水印参数中的至少一个和/或该种子水印是随机确定的;
基于该种子水印和该水印参数生成水印图像;以及将该水印图像叠加到原始图像上以获得水印保护图像。
[0006] 可选地,确定种子水印和水印参数的步骤进一步包括:建立种子水印库,其中该种子水印库中包括多种种子水印;以及在该种子水印库中随机选择种子水印。
[0007] 可选地,该种子水印包括一维曲线。可选地,该一维曲线是通过将多个三角函数加权求和所获得的曲线。可选地,生成水印图像的步骤包括:根据该水印参数平行排布该一维曲线,以生成该水印图像。
[0008] 可选地,该水印参数包括以下项目中的一项或多项:曲线旋转角度、相邻曲线间距离、曲线线形宽度、曲线颜色、曲线缩放倍数。该水印参数还可以包括相邻曲线的三角函数的相位差。
[0009] 可选地,将该水印图像叠加到原始图像上以获得水印保护图像进一步包括:根据以下公式计算该水印保护图像:
[0010] Imagep=alpha*Image1+beta*Image2
[0011] 其中,Imagep表示所述水印保护图像,Image1表示所述原始图像,Image2表示所述水印图像,alpha和beta分别表示所述原始图像的参数和所述水印图像的参数。
[0012] 根据本发明另一方面,还提供了一种图像叠加水印装置,包括确定模块、水印生成模块和叠加模块。确定模块用于确定种子水印和水印参数,其中该水印参数中的至少一个和/或该种子水印是随机确定的。水印生成模块用于基于该种子水印和该水印参数生成水印图像。叠加模块用于将该水印图像叠加到原始图像上以获得水印保护图像。
[0013] 根据上述图像叠加水印方法和其装置,可以获得由随机水印所保护的图像。难以对该图像进行反叠加水印处理来获得原始图像。由此,在上述方法和装置中,有效防止了未授权方获得原始图像,从而较好地保护了原始图像。
[0014] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

[0015] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0016] 图1示出了根据本发明一个实施例的图像叠加水印方法的流程图;
[0017] 图2示出了根据本发明一个实施例的种子水印的示意图;
[0018] 图3示出了根据本发明另一个实施例的种子水印的示意图;
[0019] 图4A示出了根据本发明一个实施例的网纹的示意图;
[0020] 图4B示出了根据本发明一个实施例的、图4A所示的网纹经旋转生成的水印图像的示意图;
[0021] 图5A示出了根据本发明另一个实施例的网纹的示意图;
[0022] 图5B示出了根据本发明一个实施例的、图5A所示的网纹经缩放生成的水印图像的示意图;
[0023] 图6A、图6B和图6C分别示出了根据本发明一个实施例的水印保护图像;
[0024] 图7示出了根据本发明另一个实施例的图像叠加水印方法的流程图;
[0025] 图8示出了根据本发明一个实施例的图像旋转装置的示意性框图;以及[0026] 图9示出了根据本发明一个实施例的身份验证方法的流程图。

具体实施方式

[0027] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0028] 因为固定水印图像无法真正保护原始图像,本发明提供了一种新的图像叠加水印方法。其中,所叠加的水印图像是随机的,由此,更好地保护了原始图像。图1示出了根据本发明一个实施例的图像叠加水印方法100的流程图。如图1所示,该方法100包括步骤S110和步骤S120。
[0029] 在步骤S110中,确定种子水印和水印参数,其中水印参数中的至少一个和/或种子水印是随机确定的。
[0030] 种子水印是用于生成水印图像的基础图形或图案。种子水印可以确定水印的大体形状。例如,种子水印可以是线条图形。图2示出了根据本发明一个实施例的种子水印的示意图,其中,种子水印是贝塞尔曲线。种子水印是随机确定的,则基于种子水印生成的水印图像必然是随机的。这确保了最终获得的水印保护图像是难于消除水印的。
[0031] 可选地,种子水印包括一维曲线。一维曲线是线条上所有点均在一个平面的曲线。一维曲线变化形式多样。相对于其他形式的种子水印,由基于一维曲线生成的水印更难以通过反叠加水印处理消除,由此原始图像更加安全。此外,一维曲线所占图像面积非常小,因此,在原始图像上叠加基于一维曲线生成的水印,对原始图像的使用价值的影响微小。
[0032] 可选地,一维曲线是通过将多个三角函数加权求和所获得的曲线。三角函数是数学中常见的周期性函数。三角函数的值可以扩展到任意实数值。将多个三角函数加权求和可以获得变化多样的周期性曲线。改变求和公式中的任意参数,即可容易地改变种子水印的形状。图3示出了根据本发明另一个实施例的种子水印的示意图。图3所示种子水印曲线的函数表达式是以下公式:
[0033] y=sin(x)+0.5*sin(4*x)。
[0034] 通过将多个三角函数加权求和来获得种子水印,方法简单且结果多样。由此,该方式在尽量简化计算复杂度的情况下,更好地保护了原始图像。
[0035] 可选地,种子水印包括平面图案,例如,三角平面。
[0036] 水印参数是用于确定种子水印在水印图像中所呈现的形态的参数。对于包括一维曲线的种子水印,水印参数可以包括以下项目中的一项或多项:曲线旋转角度、相邻曲线间距离、曲线线形宽度、曲线颜色、曲线缩放倍数等。曲线旋转角度是在水印图像中曲线的横轴与水平方向的夹角。曲线缩放倍数包括曲线高度和曲线宽度的缩放。曲线高度是在纵向上曲线最高的点与曲线最低的点在该方向上的距离h。曲线宽度是在横向上曲线最左边的点与曲线最右边的点在该方向上的距离w。返回参考图2,其中示出了该种子水印的曲线高度h和曲线宽度w。对于通过将多个三角函数加权求和所获得的种子水印,水印参数可以包括相邻曲线的三角函数的相位差。对于包括平面图案的种子水印,水印参数可以包括以下项目中的一项或多项:相邻图案间距离、图案颜色等。水印参数中的至少一个可以是随机确定的,任何一个水印参数都从某个角度决定了种子水印在水印图像中所呈现的形态,由此基于水印参数生成的水印图像必然是随机的。这确保了最终获得的水印保护图像是难于消除水印的。
[0037] 在步骤S120中,基于种子水印和水印参数生成水印图像。根据种子水印和水印参数可以最终确定水印图像。
[0038] 该步骤S120可以包括:根据水印参数平行排布种子水印,例如一维曲线,以生成水印图像。平行排布种子水印这种方式,在成功实现水印保护功能的同时还计算简单。本领域普通技术人员可以理解,除了平行排布,还可以采用其他排布方式,例如每个种子水印与相邻种子水印成某一角度关系,例如10度。
[0039] 可选地,步骤S120可以包括步骤S121和步骤S122。在步骤S121中,根据相邻曲线间距离平行排布一维曲线,以形成网纹。在步骤S122中,根据其他水印参数调整网纹,以生成水印图像。
[0040] 图4A示出了根据本发明一个实施例的网纹的示意图。图4B示出了根据本发明一个实施例的、图4A所示的网纹经旋转生成的水印图像的示意图。其中图4A所示网纹旋转了曲线旋转角度θ后形成了图4B的水印图像。
[0041] 图5A示出了根据本发明另一个实施例的网纹的示意图。图5B示出了根据本发明一个实施例的、图5A所示的网纹经缩放生成的水印图像的示意图。其中图5A所示网纹缩放了曲线缩放倍数1.5倍后形成了图5B的水印图像。
[0042] 可选地,步骤S120可以包括步骤S121’和步骤S122’。在步骤S121’中,根据水印参数调整种子水印,例如针对一维曲线进行曲线缩放。在步骤S122’中,将经调整的种子水印进行平行排布,以生成水印图像。
[0043] 在步骤S130中,将水印图像叠加到原始图像上以获得水印保护图像。
[0044] 可选地,在像素级别上对水印图像和原始图像做加法。根据以下公式计算水印保护图像。
[0045] Imagep=alpha*Image1+beta*Image2
[0046] 其中,Imagep表示所述水印保护图像。Image1表示所述原始图像,Image2表示所述水印图像。alpha和beta分别表示所述原始图像的参数和所述水印图像的参数,其可以是任意实数。可选地,alpha+beta=1,并且alpha≥beta。例如,alpha=0.5,beta=0.5。
[0047] 上述图像叠加水印方法中,种子水印和/或至少一个水印参数是随机确定的,由此可以获得由随机水印所保护的图像。图6A、图6B和图6C分别示出了根据本发明一个实施例的水印保护图像,如图6A、图6B和图6C所示,水印图像彼此不同。因为水印是随机的,所以难以对水印保护图像进行反叠加水印处理来获得原始图像。由此,上述方法有效防止了未授权方获得原始图像,从而较好地保护了原始图像。
[0048] 图7示出了根据本发明另一个实施例的图像叠加水印方法700的流程图。该方法700包括步骤S711、S712、S713、S720和S730。其中步骤S720和S730与上述方法100中的S120和S130类似,为了简洁,在此不再赘述。在方法700中,通过步骤S713来确定水印参数。可以理解,水印参数可以是随机确定的,也可以是固定的。通过步骤S711和步骤S712来随机确定种子水印。
[0049] 在步骤S711中,建立种子水印库。种子水印库中包括多种种子水印,例如,不同的一维曲线和平面图案。
[0050] 在步骤S712中,在种子水印库中随机选择种子水印。
[0051] 具体地,可以给种子水印库中的每个种子水印一个唯一的编号索引。然后,在确定种子水印时,随机选择一个编号索引,即可获得与之相对应的种子水印。
[0052] 利用上述方式随机确定种子水印实现简单容易、运算速度快。
[0053] 可选地,图像叠加水印方法可以进一步包括通过随机确定种子水印的函数表达式中的各个参数来随机确定种子水印(未示出)。例如,对于种子曲线的函数表达式是多个三角函数加权和的情况,可以随机确定每个三角函数的权重、每个三角函数中自变量的倍数等。
[0054] 根据本发明另一方面,还提供了一种图像叠加水印装置。图8示出了根据本发明一个实施例的图像叠加水印装置800的示意性框图。如图8所示,该图像叠加水印装置800包括确定模块810、水印生成模块820和叠加模块830。
[0055] 确定模块810用于确定种子水印和水印参数。其中水印参数中的至少一个和/或种子水印是随机确定的。水印生成模块820用于基于种子水印和水印参数生成水印图像。叠加模块830用于将水印图像叠加到原始图像上以获得水印保护图像。
[0056] 可选地,确定模块810进一步包括建库模块和选择模块。建库模块用于建立种子水印库,其中种子水印库中包括多种种子水印。选择模块用于在种子水印库中随机选择种子水印。
[0057] 可选地,种子水印包括一维曲线。一维曲线可以是通过将多个三角函数加权求和所获得的曲线。可选地,水印生成模块820可以根据水印参数平行排布一维曲线来生成水印图像。
[0058] 可选地,水印参数包括以下项目中的一项或多项:曲线旋转角度、相邻曲线间距离、曲线线形宽度、曲线颜色、曲线缩放倍数。水印参数还可以包括相邻曲线的三角函数的相位差。
[0059] 可选地,叠加模块830可以通过以下操作将水印图像叠加到原始图像上以获得水印保护图像。根据以下公式计算水印保护图像:
[0060] Imagep=alpha*Image1+beta*Image2
[0061] 其中,Imagep表示水印保护图像,Image1表示原始图像,Image2表示水印图像,alpha和beta分别表示原始图像的参数和水印图像的参数。
[0062] 目前,图像叠加水印方法和装置在很多技术中都有应用,例如身份验证技术中。很多场景中,需要进行公民权威人脸图像比对。由此诞生了很多需要身份验证的系统,包括实名认证系统、人证合一核身系统、银行远程开户系统等。其中,一个典型应用场景是将用户现场或远程提交的照片和已有的权威数据库内的人脸图像进行人工或者机器比对,从而确定用户的真实身份是否是所声称的人。当前掌握权威公民人脸图像的相关机构提供了公民身份证图像查询服务。需要使用该项服务的用户,例如银行,电信,点对点(P2P)金融企业等,通过待查询用户的身份证号,查询下载得到该用户的权威人脸图像,再进行人工人脸核对或者机器算法执行的人脸识别核对。在上述场景中,存在未授权的第三方获得查询用户的权威人脸图像(如身份证图像)的可能,从而整个系统存在公民隐私泄露的风险。
[0063] 现有系统采用在人脸图像上叠加一个固定的水印图案方式保护原始图像。但如上所述,利用该方式进行保护的图像容易被消除水印,所以该方式无法起到真正保护原始图像的作用。
[0064] 图9示出了根据本发明一个实施例的身份验证方法900的流程图。如图9所示,该身份验证方法900包括上述图像叠加水印方法。在该方法900中,将利用上述图像叠加水印方法所生成的水印图像叠加到验证目标的原始图像上以获得水印保护图像。可以理解,这里的水印图像是随机的。最后,利用所获得的水印保护图像进行身份验证。
[0065] 本领域普通技术人员通过阅读上文关于图像叠加水印方法的详细描述,能够理解上述图像叠加水印装置和身份验证方法的构成、实现以及优点,因此这里不再赘述。
[0066] 在此提供的装置中的各个模块可以用各种可行的软件、硬件、固件或它们的组合来实现。每个模块可以由独立的中央处理单元(CPU)实现,以提高处理速度。替代地,每个装置可以由独立的CPU实现。
[0067] 在此提供的方法和装置不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0068] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0069] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0070] 本领域那些技术人员可以理解,可以对实施例中的装置中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个装置中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者装置的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0071] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0072] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的图像叠加水印装置中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0073] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。