CN113781287B - 水印图像处理方法、装置、电子设备及计算机可读存储介质 - Google Patents
水印图像处理方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113781287B CN113781287B CN202111044709.8A CN202111044709A CN113781287B CN 113781287 B CN113781287 B CN 113781287B CN 202111044709 A CN202111044709 A CN 202111044709A CN 113781287 B CN113781287 B CN 113781287B
- Authority
- CN
- China
- Prior art keywords
- target
- data information
- feature
- feature points
- pattern
- 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 58
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 230000009466 transformation Effects 0.000 claims abstract description 79
- 238000000034 method Methods 0.000 claims abstract description 73
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 40
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims abstract description 35
- 239000013598 vector Substances 0.000 claims description 136
- 238000013519 translation Methods 0.000 claims description 42
- 239000011159 matrix material Substances 0.000 claims description 38
- 238000003708 edge detection Methods 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 abstract description 14
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000013139 quantization Methods 0.000 description 6
- 230000001788 irregular Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 230000000873 masking effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 241000883964 Ariocarpus retusus Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003670 easy-to-clean Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- 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/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
本公开关于一种水印图像处理方法、装置、电子设备及存储介质。该方法包括:获取待处理图像和目标二维空间;从目标二维空间中选择多个特征点,连接多个特征点生成第一目标图案;在第一目标图案中,分别以多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,蒙版图形携带有第一数据信息,多个特征点分别对应的蒙版图形携带的第一数据信息的串联结果表征水印数据;将第二目标图案绘制到第一透明图像上,得到第二透明图像;将第二透明图像与待处理图像进行叠加,生成水印图像。本公开解决了相关技术中的数字水印技术存在不安全问题、受算法影响大,以及抵抗仿射变换弱的技术问题。
Description
技术领域
本公开涉及计算机图像处理技术领域,具体而言,涉及一种水印图像处理方法、装置、电子设备及计算机可读存储介质。
背景技术
数字水印(Digital Watermark)是数字版权保护(Digital Rights Management,简称为DRM)的重要技术之一。目前,相关技术提供的数字水印技术,通常是在媒体文件的存储版权信息的区域,例如,图片文件的图像文件格式(EXchangeable Image file Format,简称为EXIF)区域、视频文件的附加增强信息(Supplemental enhancement information,简称为SEI)区域加入水印数据信息等等。然而上述方法容易被识别和清洗,例如,对视频的重新编码,丢弃SEI区域信息,就可以完全清洗掉SEI区域的内容信息。另外,一种方法是,对图片或视频内容进行轻微修改,例如,在编码层面,对于图像的每个编码块的量化值进行一些修改,使得在基本不影响内容的情况下,将水印数据嵌入。但采用该方法,受到编解码的影响严重,如果对该图片使用其他编解码算法重新压缩或处理后,这些水印数据就会丢失,而且受图像变化的影响也较大,在对图像进行变化后无法得到原有的水印数据。
因此,在相关技术中的数字水印技术存在不安全,受算法影响大,以及抵抗仿射变换弱的技术问题。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本公开提供一种水印图像处理方法和装置、电子设备及存储介质,以至少解决由于忽略了对照组产生的溢出效应,从而导致确定出的资源投放控制参数准确性较低的技术问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供了一种水印图像处理方法,包括:获取待处理图像和目标二维空间;从所述目标二维空间中选择多个特征点,连接所述多个特征点生成第一目标图案;在所述第一目标图案中,分别以所述多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,所述蒙版图形携带有第一数据信息,所述多个特征点分别对应的所述蒙版图形携带的所述第一数据信息的串联结果表征水印数据;将所述第二目标图案绘制到第一透明图像上,得到第二透明图像;将所述第二透明图像与所述待处理图像进行叠加,生成水印图像。
可选地,所述连接所述多个特征点生成第一目标图案包括:确定连接所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息,所述第二数据信息与所述第一数据信息的串联结果联合表征所述水印数据;采用所述连接方式连接所述多个特征点,得到所述第一目标图案。
可选地,所述分别以所述多个特征点为中心生成对应的蒙版图形包括:分别确定以所述多个特征点为中心的预定区域;分别确定所述多个特征点对应的蒙版图形需要携带的所述第一数据信息,并确定所述第一数据信息对应的蒙版图形的特征参数的取值;分别根据所述特征参数的取值绘制所述预定区域,得到所述蒙版图形。
可选地,所述分别确定所述多个特征点对应的蒙版图形需要携带的所述第一数据信息,并确定所述第一数据信息对应的蒙版图形的特征参数的取值包括:根据数据信息与特征参数的取值区间之间的对应关系,分别确定与所述第一数据信息对应的所述特征参数的目标取值区间,从所述目标取值区间中确定所述特征参数的目标取值;分别将所述目标取值确定为所述第一数据信息对应的蒙版图形的特征参数的取值。
可选地,在根据数据信息与特征参数的取值区间之间的对应关系,分别确定与所述第一数据信息对应的所述特征参数的目标取值区间之前,还包括:将所述特征参数的取值范围划分为多个取值区间,其中,不同的取值区间对应不同的数据信息;建立所述数据信息与所述特征参数的取值区间之间的所述对应关系。
可选地,所述特征参数包括以下至少之一:形状、透明度、亮度、颜色。
可选地,所述蒙版图形为携带有所述第一数据信息的圆形区域。
根据本公开实施例的第二方面,提供了一种水印图像处理方法,包括:获取水印图像;
采用边缘检测算法识别所述水印图像中的多个蒙版图形所在位置,得到多个特征点,其中,所述多个蒙版图形分别以对应的特征点为中心,所述多个蒙版图形分别携带有对应的第一数据信息;读取所述多个特征点分别对应的蒙版图形的第一数据信息;将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到所述水印图像中的水印数据。
可选地,所述将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到所述水印图像中的水印数据,包括:在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息;将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到串联结果;根据所述串联结果和所述第二数据信息,得到所述水印图像中的水印数据。
可选地,所述读取所述多个特征点分别对应的蒙版图形的第一数据信息包括:分别获取所述多个特征点对应的蒙版图形的特征参数的目标取值;分别确定所述目标取值所在的目标取值区间,其中,所述特征参数的取值范围划分为多个取值区间,不同的取值区间对应不同的数据信息;根据取值区间与数据信息之间的对应关系,分别确定所述目标取值区间对应的第一数据信息。
可选地,在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式之前,还包括:当所述预定目标图案所包括的任意特征点,均能从构成所述第一目标图案的所述多个特征点中找到对应的特征点时,确定所述第一目标图案与预定目标图案匹配。
可选地,所述当所述预定目标图案所包括的任意特征点,均能从构成所述第一目标图案的所述多个特征点中找到对应的特征点时,确定所述第一目标图案与预定目标图案匹配,包括:获取目标线性变换矩阵和目标平移向量,其中,所述目标线性变换矩阵和所述目标平移向量用于构成仿射变换,所述仿射变换使得所述预定目标图案中的至少三个特征点均能够在所述第一目标图案中找到对应匹配的特征点所;采用所述目标线性变换矩阵对所述预定目标图案所包括特征点中任意的第一特征点对应的第一特征向量执行线性变换操作,以及采用所述目标平移向量对所述第一特征向量执行平移操作,得到第二特征向量,其中,所述第一特征向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第一特征点为终点构成的向量;当所述第一目标图案所包括的多个特征点中,总存在特征点对应第三特征向量,使得所述第二特征向量与所述第三特征向量之间的直线距离小于第一预定阈值时,则确定所述第一目标图案与预定目标图案匹配。
可选地,所述获取目标线性变换矩阵和目标平移向量包括:从所述第一目标图案的多个特征点中选取预定数量的第一目标特征点,得到所述预定数量的第一目标特征点向量;其中,所述预定数量为大于等于3的正整数,所述预定数量的第一目标特征点不在一条直线上,所述第一目标特征点向量为以所述第一目标图案所包括的特征点所在的二维空间的原点为起点,所述第一目标特征点为终点构成的向量;从所述预定目标图像所包括的特征点中选取相同的所述预定数量的第二目标特征点,得到所述预定数量的第二目标特征点向量;所述预定数量的第二目标特征点不在一条直线上,所述第二目标特征点向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第二目标特征点为终点构成的向量;依据根据所述预定数量的所述第一目标特征点向量和所述预定数量的所述第二目标特征点向量,建立以线性变换矩阵和平移向量为未知项的方程组,并通过求解未知项得到所述目标线性变换矩阵和所述目标平移向量。
可选地,在所述预定数量为3的情况下,选取的3个所述第一目标特征点构成的三角形的最大角度小于第二预定阈值,以及,选取的3个所述第二目标特征点构成的三角形的最大角度小于所述第二预定阈值。
根据本公开实施例的第三方面,提供了一种水印图像处理装置,包括:第一获取模块,用于获取待处理图像和目标二维空间;第一生成模块,用于从所述目标二维空间中选择多个特征点,连接所述多个特征点生成第一目标图案;第二生成模块,用于在所述第一目标图案中,分别以所述多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,所述蒙版图形携带有第一数据信息,所述多个特征点分别对应的所述蒙版图形携带的所述第一数据信息的串联结果表征水印数据;绘制模块,用于将所述第二目标图案绘制到第一透明图像上,得到第二透明图像;叠加模块,用于将所述第二透明图像与所述待处理图像进行叠加,生成水印图像。
可选地,所述第一生成模块包括:第一确定单元,用于确定连接所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息,所述第二数据信息与所述第一数据信息的串联结果联合表征所述水印数据;第一处理单元,用于采用所述连接方式连接所述多个特征点,得到所述第一目标图案。
可选地,所述第二生成模块包括:第二确定单元,用于分别确定以所述多个特征点为中心的预定区域;第三确定单元,用于分别确定所述多个特征点对应的蒙版图形需要携带的所述第一数据信息,并确定所述第一数据信息对应的蒙版图形的特征参数的取值;绘制单元,用于分别根据所述特征参数的取值绘制所述预定区域,得到所述蒙版图形。
可选地,所述第三确定单元包括:第一确定子单元,用于根据数据信息与特征参数的取值区间之间的对应关系,分别确定与所述第一数据信息对应的所述特征参数的目标取值区间,从所述目标取值区间中确定所述特征参数的目标取值;第二确定子单元,用于分别将所述目标取值确定为所述第一数据信息对应的蒙版图形的特征参数的取值。
可选地,所述第三确定单元还包括:第一划分子单元,用于将所述特征参数的取值范围划分为多个取值区间,其中,不同的取值区间对应不同的数据信息;第一建立子单元,用于建立所述数据信息与所述特征参数的取值区间之间的所述对应关系。
可选地,所述特征参数包括以下至少之一:形状、透明度、亮度、颜色。
可选地,所述蒙版图形为携带有所述第一数据信息的圆形区域。
根据本公开实施例的第四方面,提供了一种水印图像处理装置,包括:第二获取模块,用于获取水印图像;识别模块,用于采用边缘检测算法识别所述水印图像中的多个蒙版图形所在位置,得到多个特征点,其中,所述多个蒙版图形分别以对应的特征点为中心,所述多个蒙版图形分别携带有对应的第一数据信息;读取模块,用于读取所述多个特征点分别对应的蒙版图形的第一数据信息;处理模块,用于将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到所述水印图像中的水印数据。
可选地,所述处理模块包括:第四确定单元,用于在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息;第二处理单元,用于将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到串联结果;第三处理单元,用于根据所述串联结果和所述第二数据信息,得到所述水印图像中的水印数据。
可选地,所述读取模块包括:第一获取单元,用于分别获取所述多个特征点对应的蒙版图形的特征参数的目标取值;第五确定单元,用于分别确定所述目标取值所在的目标取值区间,其中,所述特征参数的取值范围划分为多个取值区间,不同的取值区间对应不同的数据信息;第六确定单元,用于根据取值区间与数据信息之间的对应关系,分别确定所述目标取值区间对应的第一数据信息。
可选地,所述处理模块还包括:第七确定单元,用于在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式之前,当所述预定目标图案所包括的任意特征点,均能从构成所述第一目标图案的所述多个特征点中找到对应的特征点时,确定所述第一目标图案与预定目标图案匹配。
可选地,所述第七确定单元包括:获取子单元,用于获取目标线性变换矩阵和目标平移向量,其中,所述目标线性变换矩阵和所述目标平移向量用于构成仿射变换,所述仿射变换使得所述预定目标图案中的至少三个特征点均能够在所述第一目标图案中找到对应匹配的特征点;处理子单元,用于采用所述目标线性变换矩阵对所述预定目标图案所包括特征点中任意的第一特征点对应的第一特征向量执行线性变换操作,以及采用所述目标平移向量对所述第一特征向量执行平移操作,得到第二特征向量,其中,所述第一特征向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第一特征点为终点构成的向量;第三确定子单元,用于当所述第一目标图案所包括的多个特征点中,总存在特征点对应第三特征向量,使得所述第二特征向量与所述第三特征向量之间的直线距离小于第一预定阈值时,则确定所述第一目标图案与预定目标图案匹配。
可选地,所述获取子单元包括:第一处理次子单元,用于从所述第一目标图案的多个特征点中选取预定数量的第一目标特征点,得到所述预定数量的第一目标特征点向量;其中,所述预定数量为大于等于3的正整数,所述预定数量的第一目标特征点不在一条直线上,所述第一目标特征点向量为以所述第一目标图案所包括的特征点所在的二维空间的原点为起点,所述第一目标特征点为终点构成的向量;第二处理次子单元,用于从所述预定目标图像所包括的特征点中选取相同的所述预定数量的第二目标特征点,得到所述预定数量的第二目标特征点向量;所述预定数量的第二目标特征点不在一条直线上,所述第二目标特征点向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第二目标特征点为终点构成的向量;第三处理次子单元,用于依据根据所述预定数量的所述第一目标特征点向量和所述预定数量的所述第二目标特征点向量,建立以线性变换矩阵和平移向量为未知项的方程组,并通过求解未知项得到所述目标线性变换矩阵和所述目标平移向量。
可选地,在所述预定数量为3的情况下,选取的3个所述第一目标特征点构成的三角形的最大角度小于第二预定阈值,以及,选取的3个所述第二目标特征点构成的三角形的最大角度小于所述第二预定阈值。
根据本公开实施例的第五方面,提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上述任一项所述的水印图像处理方法。
根据本公开实施例的第六方面,提供了一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行上述任一项所述的水印图像处理方法。
根据本公开实施例的第七方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的水印图像处理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
从目标二维空间中选择多个特征点,连接该多个特征点生成第一目标图案,在该第一目标图案中分别以该多个特征点为中心生成蒙版图形,得到第二目标图案,其中,该蒙版图形携带有表征水印数据的第一数据信息,将该第二目标图案绘制到第一透明图像上,得到第二透明图像,进而将该第二透明图像与待处理图像进行叠加,得到水印图像。采用蒙版图形的方式隐式地携带数据信息,保证了水印数据的安全性,采用图像叠加的方式得到水印图像,能够有效地避免复杂的编码算法,另外还能够有效地抵抗仿射变换,使得水印数据不会随图像的各种变化而丢失;进而克服了相关技术中的数字水印技术存在不安全,受算法影响大,以及抵抗仿射变换弱的技术问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据本发明本公开实施例的一种可选的水印图像处理方法的应用环境的示意图;
图2是根据本公开实施例的一种可选的水印图像处理方法的流程图;
图3是根据本公开实施例的另一种可选的水印图像处理方法的示意的流程图;
图4是根据本发明本公开实施例的又一种可选的水印图像处理方法的示意的流程图;
图5是根据本发明本公开实施例的一种可选的水印图像处理装置的结构示意图;
图6是根据本公开实施例的一种可选的水印图像处理装置的结构示意图;
图7是根据本公开实施例的一种可选的电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
根据本公开实施例的一个方面,提供了一种水印图像处理方法,可选地,作为一种可选的实施方式,上述水印图像处理方法可以但不限于应用于如图1所示的硬件环境中的图像水印处理系统中,其中,该图像水印处理系统可以包括但不限于终端设备102、网络104、服务器106。这里的终端设备102的数量可以包括但不限于多个硬件设备。终端设备102中运行有使用目标用户账号登录的客户端(如图1所示该客户端用于将待处理图像添加水印信息或者水印数据)。上述终端设备102中包括人机交互屏幕1022,处理器1024及存储器1026。人机交互屏幕1022用于呈现待处理图像和水印图像。处理器1024用于将待处理图像添加水印数据,生成水印图像,并将该水印图像发送给与客户端对应的服务器,以得到水印图像对应的水印数据。存储器1026用于存储上述二维空间的多个特征点,第一目标图案,第二目标图案,以及水印图像。
此外,服务器106中包括数据库1062及处理引擎1064,数据库1062中用于保存上述终端设备102发送的水印图像。处理引擎1064用于从水印图像中识别出多个蒙版图形所在位置,得到多个特征点,读取多个蒙版图形对应的第一数据信息,并依据读取的第一数据信息得到水印图像中的水印数据。
可选地,在本实施例中,上述终端设备可以是配置有目标客户端的终端设备,可以包括但不限于以下至少之一:手机(如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视等。目标客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端等用于接受所投放的虚拟资源的客户端。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络。上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器。上述仅是一种示例,本实施例中对此不作任何限定。
可选地,作为一种可选的实施方式,如图2所示,上述水印图像处理方法包括:
S202,获取待处理图像和目标二维空间;
S204,从目标二维空间中选择多个特征点,连接多个特征点生成第一目标图案;
S206,在第一目标图案中,分别以多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,蒙版图形携带有第一数据信息,多个特征点分别对应的蒙版图形携带的第一数据信息的串联结果表征水印数据;
S208,将第二目标图案绘制到第一透明图像上,得到第二透明图像;
S210,将第二透明图像与待处理图像进行叠加,生成水印图像。
通过上述处理,从目标二维空间中选择多个特征点,连接该多个特征点生成第一目标图案,在该第一目标图案中分别以该多个特征点为中心生成蒙版图形,得到第二目标图案,其中,该蒙版图形携带有表征水印数据的第一数据信息,将该第二目标图案绘制到第一透明图像上,得到第二透明图像,进而将该第二透明图像与待处理图像进行叠加,得到水印图像。采用蒙版图形的方式隐式地携带数据信息,保证了水印数据的安全性,采用图像叠加的方式得到水印图像,能够有效地避免复杂的编码算法,另外还能够有效地抵抗仿射变换,使得水印数据不会随图像的各种变化而丢失;进而克服了相关技术中的数字水印技术存在不安全,受算法影响大,以及抵抗仿射变换弱的技术问题。
作为一种可选的实施例,上述待处理图像的类型可以是多种的,例如,可以是采用照相设备拍摄得到的图像,也可以是从预定的视频中截取的图像。不管是上述哪种类型的图像,上述待处理图像均可以是一种需要添加数据水印的图像,该添加的数据水印用于在一定程度上体现该待处理图像的信息,例如,可以是表征该待处理图像的版权信息,可以是该待处理图像的分类信息,该待处理图像的作者信息,该待处理图像的素材信息等。另外,上述目标二维空间可以理解为一般意义上的二维空间,例如,二维空间是指仅由长度和宽度(在几何学中为X轴和Y轴)两个要素所组成的平面空间,只向所在平面延伸扩展。需要说明的是,该目标二维空间的精度可以依据需要灵活确定,例如,该二维空间中的点可以代表图像中的一个像素,该二维空间中的点可以是代表图像中的多个像素的集合,依据具体需要灵活选择。
作为一种可选的实施例,从目标二维空间中选择多个特征点时,该选择的多个特征点可以是有规律的多个点,也可以是没有规律的多个点。选择该多个特征点时,可以采用多种方式,例如,可以采用随机生成的方法得到该多个特征点,也可以采用固定算法的方式得到该多个特征点。在得到该多个特征点后,连接该多个特征点在该目标二维空间中即可以生成第一目标图案,其中,连接的方式不同,生成的第一目标图案也不相同。需要说明的是,连接的方式不仅包括该多个特征点连接的顺序,也包括该多个特征点连接的次数,或者多个特征点之间连接线的形状等。可选地,采用直线,顺序连接该多个特征点,得到该第一目标图案。
可选地,上述得到的第一目标图案可以是多种形状的,例如,得到的第一目标图案的形状可以是如星座的形状。例如,上述第一目标图案的形状如北斗七星的七颗星星连接后得到的形状,或者,如十二星座中其它每个星座的形状,也可以为类似十二星座的类似形状。另外,上述第一目标图案还可以是其它规则或者不规则的几何形状,例如,平面内的规则多边形,或者不规则多边形等。
作为一种可选的实施例,在第一目标图案中,分别以多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,蒙版图形携带有第一数据信息,多个特征点分别对应的蒙版图形携带的第一数据信息的串联结果表征水印数据。其中,通过蒙版图形携带第一数据信息时,可以采用多种方式,例如,可以采用蒙版图形的一些图形特征来携带该第一数据信息,比如,可以依据蒙版图形的形状来携带该第一数据信息,可以依据蒙版图形的亮度来携带该第一数据信息,可以依据蒙版图形的颜色来携带该第一数据信息,还可以依据该蒙版图形的透明度来携带该第一数据信息,等等。比如,蒙版图形的不同形状表征第一数据信息的分类,举例来说,如果蒙版图形是圆形的,则代表该第一数据信息表征的是该待处理图像的作者;而如果该蒙版图形是方形的,则代表该第一数据信息表征的是该待处理图像所采用的特效;等。又比如,蒙版图形的不同亮度表征第一数据信息的标识号,例如,同样是圆形的蒙版图形,但不同的图像亮度表示不同的作者,比如,当蒙版图形的亮度大于第一亮度阈值的情况下,该第一数据信息表征的是该待处理图像的作者是张三;而当蒙版图形的亮度小于等于该第一亮度阈值的情况下,该第一数据信息表征的是该待处理图像的作者是李四;等。蒙版图形的其它图形特征,比如,透明度和颜色,也可以采用上述表征的方式表示不同的第一数据信息,在此不进行一一举例。
另外,分别以多个特征点为中心生成对应的蒙版图形后,多个特征点对应的蒙版图形依据第一目标图案中多个特征点连接的方式进行连接后,得到第二目标图案,其中,多个特征点分别对应的蒙版图形携带的第一数据信息的串联结果表征水印数据,即该水印数据可以是该多个第一数据信息串联得到的。以上述蒙版图形的不同形状表示不同的第一数据信息为例,在一个第二目标图案中,可以包括多种形状的蒙版图形,例如,包括的蒙版图形包括:圆形,五角形,和椭圆形,不同形状的上述蒙版图形可以表示不同的数据;如果以圆形的蒙版图形表示数据0,五角形的蒙版图形表示数据1,椭圆形的蒙版图形表示数据2为例,那么包含1个五角形的蒙版图形,2个椭圆形的蒙版图形,3个圆形的蒙版图形顺序连接的第二目标图案中,可以表示的水印数据为122000;此外,同一形状不同颜色或不同亮度的蒙版图形表示的数据也可以不同,例如,椭圆形的蒙版图形,黄色表示的数据为0,绿色表示的数据为1,青色表示的数据为2,那么包含2个黄色,3个绿色,1个青色的蒙版图形顺序连接的第二目标图案,可以表示的水印数据为2-001112。需要说明的是,上述0,1,2…表示的是一种十进制的数值表述,在具体实施时,也可以采用二进制来替代。
需要说明的是,上述蒙版图形的形状虽然可以是多种,但考虑水印图像可能会有一些放大缩小,或者简单变形的需要,即可能会有一些自由变换图像,对图像进行仿射变换操作的需要,因此,为减少仿射变换对图像的影响,蒙版图形的形状可以选择一些受仿射变换影响较小的图形,例如,可以将蒙版图形选择为携带有该第一数据信息的圆形区域,从而使得蒙版图形在经过不同程度的仿射变换后,也能够保留完整的图像信息以及嵌入其中的水印数据,避免图像以及其中的水印数据受到影响,有效提高对数据识别的准确性。
作为一种可选的实施例,在得到第二目标图案后,可以将第二目标图案绘制到第一透明图像上,得到第二透明图像,之后将第二透明图像与待处理图像进行叠加,生成水印图像。其中,上述第一透明图像,第二透明图像以及上述待处理图像可以为大小尺寸相同的图像,也就是说在第一透明图像中绘制携带有水印数据的第二目标图案,得到第二透明图像,之后,采用图像叠加的方式得到水印图像。采用直接叠加图像的方式,不仅不需要复杂的编码算法,而且图像叠加的方式在一定程度上能够有效避免后续对水印图像进行仿射变换时导致丢失水印数据的情况。在本实施例中,完整的水印数据可以为上述待处理图像的拍摄信息,例如,拍摄时间,拍摄者的ID,或者拍摄设备的设备信息等,在此不做任何限定。
本申请上述实施例提供的水印图像处理方法,通过蒙版图形携带第一数据信息,以及多个特征点分别对应的蒙版图形携带的第一数据信息的串联结果表征水印数据,采用蒙版图形的方式携带水印数据,有效地保证了数据的安全,另外,通过图像叠加的方式生成水印图像,不仅操作简单,而且能够有效地对水印图像中的水印数据进行保护,使得水印数据能够从水印图像中完整地还原,避免水印数据的丢失。
在上述采用蒙版图形携带第一数据信息时,为使得蒙版图形连接获得的第二目标图案能够表征更为丰富的水印数据,在连接多个特征点生成第一目标图案时,可以采用以下方式,使得得到的第二目标图案能够表征更为丰富的水印数据:确定连接多个特征点的连接方式,其中,连接方式携带有第二数据信息,第二数据信息与第一数据信息的串联结果联合表征水印数据;采用连接方式连接多个特征点,得到第一目标图案。例如,在一个具体的实现过程中,第二数据信息表示数据类型,第一数据信息表示在该数据类型下的具体数据值,从而实现对多种类型数据的表示,使得第二目标图案能够表征更为丰富的水印数据。举例而言,在第一目标图案的形状为北斗七星的星座形状时,表示该水印数据表征的是该待处理图像的作者相关的信息,此时如果蒙版图形的形状为圆形时,表征该作者相关的信息是作者的名字字段,而且,此时蒙版图形的亮度大于第一亮度阈值,表征该名字字段对应的作者是张三。
作为一种可选的实施例,在分别以多个特征点为中心生成对应的蒙版图形时,可以采用多种方式,例如,分别确定以多个特征点为中心的预定区域;分别确定多个特征点对应的蒙版图形需要携带的第一数据信息,并确定第一数据信息对应的蒙版图形的特征参数的取值;分别根据特征参数的取值绘制预定区域,得到蒙版图形。蒙版图形依据一定图形特征来携带第一数据信息,因此,蒙版图形需要占用一定的图形区域,分别以多个特征点为中心确定预定区域,以及采用依据第一数据信息确定的特征参数绘制该预定区域,能够在一定程度上体现蒙版图形的统一性,使得采用蒙版图形表征水印数据更为标准,准确。其中,如上述所指出的,该预定区域可以是一个圆形区域,即分别以多个特征点为圆心的圆形区域。另外,上述所指的蒙版图形的特征参数(即用于表征上述所指的图形特征)可以包括多种,例如,可以包括以下至少之一:形状,透明度,亮度,颜色。
作为一种可选的实施例,分别确定多个特征点对应的蒙版图形需要携带的第一数据信息,并确定第一数据信息对应的蒙版图形的特征参数的取值时,可以采用以下处理方式:根据数据信息与特征参数的取值区间之间的对应关系,分别确定与第一数据信息对应的特征参数的目标取值区间,从目标取值区间中确定特征参数的目标取值;分别将目标取值确定为第一数据信息对应的蒙版图形的特征参数的取值。通过数据信息与特征参数的取值区间之间的对应关系,确定该第一数据信息对应的目标取值区间,以及从该目标取值区域中确定该第一数据信息对应的蒙版图形的特征参数的取值,由于作为最终特征参数的目标取值在一个取值区间中,因此,在绘制蒙版图形时不需要按照严格的具体值来绘制,只要采用在该取值区间中的值就可以表征该数据信息,在一定程度上实现对绘制的灵活性和简便性,有效提高生成第二目标图案的效率。
举例来说,相同形状不同亮度的蒙版图形表示不同数据,对于在二维空间内的任一特征点坐标(x,y)对应的蒙版图形,即以这个坐标位置为中心,例如,以该坐标位置为圆心,以预定长度为半径的圆形区域即为该蒙版图形。针对作为蒙版图形的该圆形区域,不同的亮度值代表不同的第一数据信息。亮度值越大,蒙版图形的隐藏性也相应变差,但被后期会有利于于水印识别。将根据不同的应用和场景下,可以选择不同的亮度值作为蒙版图形携带的数据信息。例如,写入的亮度改变量可以通过量化携带数据信息。比如,根据蒙版图形亮度将该蒙版图形状所圈定出的该圆形区域中的原始图像的每一个像素的亮度增大或减小一定数值,例如:30/255。实现时,可以将蒙版图形的亮度从减暗30/255到增亮30/255量化分为4等分档,用来表示二进制的0至3。因此,根据上述说明,二进制的0至3可以采用以下方式表示:亮度值减暗大于30可以表示00对应的数据信息,亮度值减暗0至30表示01对应的数据信息,亮度值增亮0至30表示10对应的数据信息,亮度值增亮大于30表示11对应的数据信息。假如该第一数据信息为10对应的数据信息,则蒙版图形对应的特征参数(亮度值)的取值应该从增亮0至30的区间(即目标取值区间)确定,优选地确定增亮值15为蒙版图形对应的特征参数的取值。需要说明的是,但实现过程中,该增亮值可以与15有一定的偏差,但只要增亮值在0至30这个区间即可。以上仅为实例,在此不作任何限定。
作为一种可选的实施例,在根据数据信息与特征参数的取值区间之间的对应关系,分别确定与第一数据信息对应的特征参数的目标取值区间之前,还包括:将特征参数的取值范围划分为多个取值区间,其中,不同的取值区间对应不同的数据信息;建立数据信息与特征参数的取值区间之间的对应关系。其中,将特征参数的取值范围划分为多个取值区间时,可以依据特征参数的性质来决定,例如,当该特征参数为颜色时,可以将特征参数的取值范围划分为三基色,也可以将该特征参数的取值范围划分为七彩色。通过建立数据信息与取值区间之间准确的对应关系,为后续确定蒙版图形的特征参数的取值提供基础,达到使用建立的对应关系,快速,准确地确定用于绘制蒙版图形的特征参数的取值的目的。
本申请上述可选实施例提供的水印图像处理方法,通过设置蒙版图形的不同特征参数,以及特征参数的不同取值,实现利用图形的多维度特征来携带水印数据,有效实现携带图像携带丰富水印数据的效果,解决相关技术中添加的水印数据携带信息单一的技术问题。
在一个可选实施方式中,依据蒙版图形的形状表征数据信息时,假设水印数据为1120000,那么该水印数据的转化的数据为7位,以每个蒙版图形表征1位数字为例,如圆形的蒙版图形可以表示数据0,五角形的蒙版图形可以表示数据1,椭圆形的蒙版图形表示数据2为例,那么上述第二目标图案中的蒙版图形顺序包含有:2个五角形的蒙版图形,1个椭圆形蒙版图形,4个圆形的蒙版图形。因此,可以分别对对应的特征点为中心,顺序将上述2个五角形的蒙版图形,1个椭圆形蒙版图形,4个圆形的蒙版图形绘制到上述第一目标图案中,得到第二目标图案,进而将该第二目标图案绘制到第一透明图像中,得第二透明图像,将第二透明图像叠加到待处理图像上,得到包含水印数据的水印图像。虽然上述蒙版图形的形状可以有多种,也可以依据多种来表征数据信息,但也可以选择蒙版图形的其它图形特征来表征数据信息。例如,蒙版图形选择携带数据信息的圆形区域,而采用蒙版图形的颜色,亮度,或者透明度来携带数据信息。
本实施例中,在图像处理的过程中通过会将图像进行仿射变换,而进行仿射变换后通常会改变蒙版图形的特征信息(例如,形状可能会变形),为了能够减小对于水印数据的影响,可以将蒙版图形的形状设置为一个圆形区域;同时可以将蒙版图形包含的像素数量设置为大于预设的阈值,而避免蒙版图形在缩小预设阈值倍数时能够被识别出来。通过将蒙版图形的形状为圆形区域,可以实现添加水印数据的图像在进行图像处理过程中水印数据失真或丢失的问题。在采用蒙版图形的颜色,亮度,或者透明度来携带数据信息时,一种图形特征可以携带多位比特的数据信息,例如,假设每个特征点对应的蒙版图形可以携带的数据的比特位是n比特,那么如果有m个特征点,就最多可以携带n*m比特的水印数据,从而达到高效,安全地在待处理图像中添加水印数据,得到水印图像。
可选地,作为一种可选的实施方式,如图3所示,上述水印图像处理方法包括:
S302,获取水印图像;
S304,采用边缘检测算法识别水印图像中的多个蒙版图形所在位置,得到多个特征点,其中,多个蒙版图形分别以对应的特征点为中心,多个蒙版图形分别携带有对应的第一数据信息;
S306,读取多个特征点分别对应的蒙版图形的第一数据信息;
S308,将多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到水印图像中的水印数据。
通过上述处理,采用边缘检测算法识别水印图像中多个蒙版图形所在位置,其中,多个蒙版图形分别携带对应的第一数据信息,通过读取多个蒙版图形分别携带的第一数据信息,得到水印图像中的水印数据。采用蒙版图形的方式隐式地携带数据信息,保证了水印数据的安全性,有效地避免复杂的编码算法,另外还能够有效地抵抗仿射变换,使得水印数据不会随图像的各种变化而丢失;进而克服了相关技术中的数字水印技术存在不安全,受算法影响大,以及抵抗仿射变换弱的技术问题。
作为一种可选的实施例,在采用边缘检测算法(Canny算法)识别水印图像中的多个蒙版图形所在位置,得到多个特征点时,可以包括但不限于通过计算机视觉中的Canny算法来识别到上述水印图像中的上述多个蒙版图形(即对应多个特征点)所在的位置。例如,在检测时,当上述多个蒙版图形包含椭圆形的蒙版图形时,可以通过椭圆拟合算法(fitEllipse算法)获取到椭圆形的蒙版图形的位置。
当上述多个特征点的位置被识别出后,假设以蒙版图形的亮度来表征水印数据时,可以通过判断该特征点对应的蒙版图形的形状边缘处相邻像素亮度的变化值的平均情况(如将其形状边缘一周的亮度梯度的绝对值进行积分,包括但不限于对图像边缘像素的Laplace算法变换的绝对值进行加和),获得与其最接近的亮度量化数据,通过获取到的亮度量化数据来获取水印图像的水印数据。
作为一种可选的实施例,读取多个特征点分别对应的蒙版图形的第一数据信息时,可以采用多种方式,例如,可以采用以下处理方式:分别获取多个特征点对应的蒙版图形的特征参数的目标取值;分别确定目标取值所在的目标取值区间,其中,特征参数的取值范围划分为多个取值区间,不同的取值区间对应不同的数据信息;根据取值区间与数据信息之间的对应关系,分别确定目标取值区间对应的第一数据信息。对应于上述生成水印图像的过程,同样,假设“亮度从减暗30/255到增亮30/255量化分为4等分档”。因此,亮度值减暗大于30可以表示00对应的数据信息,亮度值减暗0至30表示01对应的数据信息,亮度值增亮0至30表示10对应的数据信息,亮度值增亮大于30表示11对应的数据信息。假如特征点对应的蒙版图形的特征参数的目标取值为增亮18,则该目标取值所属的目标取值区间为增亮0至30的区间,而该增亮0至30的区间表示10对应的数据信息,因此,该蒙版图形通过该亮度值携带的数据信息即是10对应的数据信息。
通过获取特征点对应的蒙版图形的特征参数的目标取值,确定目标取值对应的目标取值区间,根据取值区间与数据信息之间的对应关系,确定目标取值区间对应的第一数据信息。采用取值区间与数据信息之间的对应关系,确定蒙版图形所携带的数据信息,由于只要是该取值区间中的值就可以表征该数据信息,因此,在一定程度上实现对数据信息表征的灵活性和简便性,有效提高获取数据信息的效率。
需要说明的是,在采用边缘检测算法识别水印图像中的多个蒙版图形所在位置,得到多个特征点之后,对该多个特征点进行连接时,不同的连接方式可以得到不同的图案。需要确定得到的图案是否表征的是预定目标图案中的蒙版图形所表征的水印数据时,需要将该多个特征点连接后构成的该图案(即第一目标图案)与预定目标图案进行比较,在两者比较结果为匹配的情况下,确定得到的该第一目标图案中蒙版图形所表征的水印数据即是预定目标图案中的蒙版图形所表征的水印数据。因此,将多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到水印图像中的水印数据时,可以采用以下处理方式:在多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定第一目标图案中多个特征点的连接方式,其中,连接方式携带有第二数据信息;将多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到串联结果;根据串联结果和第二数据信息,得到水印图像中的水印数据。采用上述处理方式,即从第一目标图案的连接方式中读取第二数据信息,从多个蒙版图形中读取对应第一数据信息的串联结果,将该串联结果结合上述第二数据信息,得到数据水印。因此,使得携带的水印数据更为丰富,即使得表征的信息更为全面,进而提升用户体验。例如,对应上述水印的生成过程,如果根据该多个特征点连接方式,即第二数据信息确定第一目标图案为北斗七星时,读取到的信息为该水印数据为该水印图像的作者相关的信息,如果此时蒙版图形的形状为圆形时,读取到的信息为表征该作者相关的信息是作者的名字字段,并且,此时蒙版图形的亮度大于第一亮度阈值,则从中读取到的信息为表征该名字字段对应的作者是张三。
本实施例中,通过上述方法获取到的多个特征点的多种连接方式包含了所有可能的目标图案,但是该多个特征点是一组离散的数据,换言之,上述多个特征点携带的数据的顺序不一定是预定目标图案表征的水印数据所对应的多个特征点的顺序,这时,需要将上述多个特征点构成的第一目标图案与预定目标图案进行匹配,在两者匹配的情况下,读取上述多个特征点对应的蒙版图形所携带的第一数据信息,从而得到水印数据。上述预定目标图案包括上述多个特征点的顺序是已知的,也就是说,将水印图像中获取的多个特征点构成的第一目标图案与预定目标图案进行匹配,匹配成功后,可以依次与预定目标图案相同的顺序,读取水印图像中对应的蒙版图形所携带的信息,进而结合第一目标图案中多个特征点的连接方式所携带的第二数据信息,得到水印图像中的水印数据。
本申请实施例通过获取水印图像中的水印数据,并且将水印图像中多个特征点所构成的第一目标图案与预定目标图案进行匹配,使得从该第一目标图案中得到的隐藏的水印数据更为精准,而且也保证了水印数据的安全性,实现了水印数据的完整性以及水印数据的安全性。
在水印数据中可以引入容错机制,例如在蒙版图形所携带的数据信息中引入容错机制,例如,对该携带的数据信息引入奇偶校验位,这样就可以使得到的水印数据具备一定容错性,在得到水印数据之后,具备错误恢复机制。
在一个或多个实施例中,在在多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定第一目标图案中多个特征点的连接方式之前,还包括:当预定目标图案所包括的任意特征点,均能从构成第一目标图案的多个特征点中找到对应的特征点时,确定第一目标图案与预定目标图案匹配。
通过上述处理,只要保证预定目标图案中的特征点在该第一目标图案中均能够找出对应的特征点,即可以认为存在一种仿射变换,能够将预定目标图案具有一定容差地重叠在该第一目标图案上,则认为该第一目标图案与该预定目标图案是匹配的,为后续从该第一目标图案中读取出的蒙版图形的数据信息是与预定目标图案表征的数据信息是相稳合的,即确定读取出的数据信息是准确的。
在一个或多个实施例中,上述当预定目标图案所包括的任意特征点,均能从构成第一目标图案的多个特征点中找到对应的特征点时,确定第一目标图案与预定目标图案匹配,包括:
获取目标线性变换矩阵和目标平移向量,其中,该目标线性变换矩阵和目标平移向量用于构成仿射变换,仿射变换使得预定目标图案中的至少三个特征点均能够在第一目标图案中找到对应匹配的特征点;
采用目标线性变换矩阵对预定目标图案所包括特征点中任意的第一特征点对应的第一特征向量执行线性变换操作,以及采用目标平移向量对第一特征向量执行平移操作,得到第二特征向量,其中,第一特征向量为以预定目标图案所包括的特征点所在的二维空间的原点为起点,第一特征点为终点构成的向量;
当第一目标图案所包括的多个特征点中,总存在特征点对应第三特征向量,使得第二特征向量与第三特征向量之间的直线距离小于第一预定阈值时,则确定第一目标图案与预定目标图案匹配。
本申请实施例通过上述处理,为实现隐藏的水印数据进行精准读取,保证了水印数据的安全性,确定第一目标图案与预定目标图案匹配时,通过获取目标线性变换矩阵和目标平移向量,使得获取的该目标线性变换矩阵和目标平移向量所构成的仿射变换,能够让预定目标图案中的至少三个特征点均能够在第一目标图案中找到对应匹配的特征点,由于该目标线性变换矩阵和目标平移向量所构成的仿射变换能够让预定目标图案中的至少三个特征点均能够在第一目标图案中找到对应匹配的特征点,因此,有较大可能地,针对该预定目标图案中的任意特征点均能够在通过该目标线性变换矩阵和目标平移向量所构成的仿射变换后,在该第一目标图案中找到对应匹配的特征点,相对于采用将预定目标图案中的每个特征点均分别与第一目标图案中的特征点进行匹配而言,有效地减少了匹配的计算量,以及复杂度,提高了匹配效率。
在一个或多个实施例中,获取目标线性变换矩阵和目标平移向量包括:
从第一目标图案的多个特征点中选取预定数量的第一目标特征点,得到预定数量的第一目标特征点向量;其中,预定数量为大于等于3的正整数,预定数量的第一目标特征点不在一条直线上,第一目标特征点向量为以第一目标图案所包括的特征点所在的二维空间的原点为起点,第一目标特征点为终点构成的向量;
从预定目标图像所包括的特征点中选取相同的预定数量的第二目标特征点,得到预定数量的第二目标特征点向量;预定数量的第二目标特征点不在一条直线上,第二目标特征点向量为以预定目标图案所包括的特征点所在的二维空间的原点为起点,第二目标特征点为终点构成的向量;
依据根据预定数量的第一目标特征点向量和预定数量的第二目标特征点向量,建立以线性变换矩阵和平移向量为未知项的方程组,并通过求解未知项得到目标线性变换矩阵和目标平移向量。
在上述实施例中,通过从预定目标图案与第一目标图案中匹配出的至少三个特征点,依据该至少三个特征点的数值,确定出该预定目标图案到该第一目标图案中的仿射变换。在一个或多个实施例中,上述水印图像处理方法中,在预定数量为3的情况下,选取的3个第一目标特征点构成的三角形的最大角度小于第二预定阈值,以及,选取的3个第二目标特征点构成的三角形的最大角度小于第二预定阈值。本申请实施例通过上述处理,由于第一目标图案携带数据信息具备一定的隐蔽性,因此,第一目标图案的整体形状可能偏不规则,因此,为表征信息的需要,为提前简化计算,以及减少计算过程的误差,在选择上述第一目标特征点,以及第二目标特征点时,即提前将一些容易出现奇异值的特征点的组合进行规避,例如,选择的第一目标特征点构成的三角形的最大角度,以及第二目标特征点构成的三角形的最大角度小于一个预定阈值,即上述的第二预定阈值,该第二预定阈值的角度可以根据具体情况,以及匹配要求灵活选择。可选地,该第二预定阈值可以选择为150度。
结合上述实施例及可选实施例,下面基于与相关技术中所采用的添加水印数据的各种方法对比的方式,对本申请的一种可选实施方式进行说明。
在相关技术中,添加图像水印信息时,可以采用在媒体文件的容器中(即媒体文件存储各种专门划定来存储附加信息的区域,或通过一些技术上的处理,填充在某些区域中,不影响图像的加载和使用)添加的方式来实现。一般媒体文件划定有存储版权信息的区域,例如,图片文件的EXIF区域、视频文件的SEI区域等等。这些方法是使用容器本身的能力来进行。但是,上述方法非常容易通过技术手段清洗掉,例如,对视频的重新编码,丢弃SEI信息,就可以完全清洗掉这些内容。
此外,在相关技术中,还可以对图片或视频内容进行轻微修改,例如,在编码层面,对于JPEG图像的每个8x8块的量化值进行一些修改,使得在基本不影响内容的情况下,将内容嵌入。steghide工具(算法)即可以实现将相当内容(例如,30KB)嵌入图像中,基本不影响图像的显示效果。但是,上述算法受到编解码的影响严重,如果对该图片使用其他编解码算法重新压缩或处理后,这些精致设计的信息就会丢失;同时该类算法也不适合自由的图像变化,例如,进行放大缩小以后,就可以失去原有的水印信息。
在相关技术中,所采用的另一种方式是:通过星座图的方式将水印嵌入图像中。但是,该星座图方法仅能用来识别特定模式,不能携带数据。另外,该星座图方法无法用来隐藏数据,而且星座图方法的特征点较少,星座图方法通过距离比例无法抵抗仿射变换,不具备高容错性。表1是相关技术的上述几种在图像中添加数据水印的方法与本申请所采用的方法的比较表:
表1
基于上述对比,本可选实施方式所采用的数字水印技术具备:安全,受算法影响小,以及抵抗仿射变换强的优势,下面对本可选实施方式的实现过程进行说明。本可选实施方式的数字水印的过程包括:写入数据和读取数据两个过程。
写入数据:即将水印叠加到拍摄得到的图像(或视频中的每一帧))过程,可以按如下步骤进行:
准备需要嵌入的数据,可以引入容错机制,例如奇偶校验位,这样就可以具备一定容错性,具备错误恢复机制。
选择一个或多个星座特征(即在二维空间中的无规律或有规律的若干个点,构成一个星座(点的集合),这些点可以是特定的若干个,也可以是随机生成的(但随机生成的方法需要是确定的,以便后期可以恢复)。
选择一个或多个特征点对应的蒙版图形。所谓特征点对应的蒙版图形,就是要叠加在原图上一些特殊图形。为了保持收到仿射变换等影响较小,一般选择圆形盘面(即以对应特征点为圆心携带数据的圆形区域,可以设置在2-5像素,这个尺寸决定了图像被减小多少倍还能识别出特征点。例如,如果是5像素的圆形盘面,意味着图像被缩小到原有的1/5后还有至少一个像素可以被识别)。实现过程中也可以选择其他的形状,只要保证识别过程不受到影响(或尽量少受到影响)即可。
举例而言:对于任意给定的图像的(x,y)坐标(如星座中的某颗星星的坐标),以这个坐标位置为中心,将这个图形形状(即蒙版图形,例如,上述所指的圆形盘面)所圈定出的范围中的原始图像的每一个像素的亮度增大或减小一定数值,例如:30/255。这个值越大,对于肉眼观察的隐藏性也更差,但被后期识别的可能性更高。在实现的过程中,可以根据不同的应用和鲁棒性,选择合适的值。例如,写入的亮度改变量可以通过量化携带数据(但不限于此)。如可以从减暗30/255到增亮30/255量化分为4等分档,用来表达二进制的0至3。
选择不同的多个蒙版图形(比如每个蒙版图形具有不同的透明度、亮度或者颜色,都可以视为不同的图形),可以将其视为对应于不同的数据。例如,选择了4个不同的蒙版,就可以表示二进制的00、01、10、11四种状态。后面可以用这个状态来存储数据。
生成一个与原始拍摄获得的画面尺寸一样的具有透明度的图像。按照上述选定的星座的位置,对每一个位置:对于用户给定的需要存储的数据流,根据上述定义的每个图形能够表达(存储)的视频的位数,读出相应的位流(即上述各个蒙版图形表达的位数进行串联后得到的串联结果),根据上述约定好的规则对应到图形,并将这个图形绘制到透明度的图像上。其中,上述定义的多个星座特征(例如,可以对应于上述实施例中的第二数据信息)也可以用来表达数据,例如,一共存在8中星座特征,那么此处选择任意一种,也可以用来表达二进制的000,001,010,011,100,101,110,111八种状态(3位数据)。
获得视频中的某一帧获得图像,将上述生成的图像叠加到获得的这个图像。叠加的方法不限定(一般是直接进行像素值相加)。
读取数据:是从重新编辑、编码后的视频中的帧或者图像中读取被写入数据环节嵌入的数据。其中,读取数据的方法是通过在图像中读取特征点,以及识别特征点的拓扑结构来识别水印匹配的。具体过程如下:
(1)读取特征点
(1.1)首先对图像进行边缘检测算法(包括但不限于计算机视觉中的Canny算法),识别特定几何形状的位置(如果水印图像中的蒙版图形的形状为椭圆形,则识别椭圆的位置,例如,采用计算机视觉中的fitEllipse算法),即得到图像中插入特征点的位置。
(1.2)这些位置被识别出后,可以通过判断该形状边缘处相邻像素亮度的变化值的平均情况(即将其形状边缘一周的亮度梯度的绝对值进行积分,在实现上包括但不限于对图像边缘像素的Laplace变换的绝对值进行加和),获得与其最接近的亮度量化档位(见写入时的若干等分档),这样就可以得到该点携带的数据。
(2)读取匹配特征拓扑
算法需要设定一个星座模式(Constellation Pattern),即由若干个点构成的拓扑关系,这有点像天空中的星座,看到星座的样子,就可以通过点之间的位置关系(而不一定是精确的位置)就能辨识出来星座。在水印算法中,在图像中读取这样的特征,就可以辨识出星座,也就是辨识出水印来。
(2.1)星座携带数据有两种方法,读取时分别要进行识别。
第一种是给定若干种星座,通过读取出写入的特征点,为每个点上携带若干比特的信息(例如,可以由两种写入、读取特征点的模式,这样可以表示0或1),这样,只要星座匹配上,这些点上携带的信息就可以串联成最后的位流,并以此携带数据。假设每个特征点可以携带的数据是n比特,那么如果有m个特征点,就最多可以实现n*m比特水印信息的存储。需要说明的是,该方法适宜于需要携带内容较多,而且允许点上携带信息的情况。如果存入的时候包含奇偶校验位等冗余数据,可以使用对应的算法恢复原始数据。
第二种是携带某一种可枚举的水印,例如,就只能携带一个24位的ID,表示一个特殊的意义(比如作者的内部代号)。那么可以设计一种算法,为每个不同的序号(ID)生成一个唯一对应的星座图(算法不限,保证每个星座不重复,且有区分度即可,且不一定星座中的点数太多)。这样只需要在识别的时候,与所有的模式一一匹配,即可以得到结果。该方法适宜于携带内容较少,但不允许点上携带信息的情况。
上述两种算法,都需要解决的是给定模式(星座)和通过输入图像识别出的点的匹配的问题。即,对于给定若干平面点构成个一个星座,以及通过图像上识别出的若干点构成的一个星座,匹配他们是否匹配。即是否存在一种仿射变换,让两个点集合具备一定容差地重叠在一起。该匹配过程同上述预定目标图案与第一目标图案相匹配的过程。
假设需要对照的模式(Pattern)由平面中的n个点构成,记做:P[i](i=0,1,...,n-1),其中P[i]是一个二维向量;从图像中,通过(1)步骤重建出的点为m个,记做Q[j](j=0,1,...,m-1),其中,Q[i]是一个二维向量。只要其中k个点是匹配的,那么就认为两个点构成的模式匹配,即:存在p[r]、q[r](r=0,1,...,k-1)使得:M P[p[r]]+V=Q[q[r]],其中M是一个2x2的矩阵,V是一个二维向量。在实现中,上面的等号无法精确等于,即需要引入一个容差,使得:|M P[q[r]]+V-Q[p[r]|2<R即可,其中|*|2表示*的二范数。
在识别的过程中,一般假定m>=n,且n>=3,即识别出的特征点数量不小于模板的点数。如图4所示,匹配算法如下:
(a)在Q中,任意选择三个不同的点,假设为Q[a],Q[b],Q[c],其中a,b,c=0,1,2,...n-1,且a≠b≠c(a,b,c互不相等),且Q[a]、Q[b]和Q[c]不在同一直线上(在实现时可要求该三点构成的三角形的最大角度不能超过某一阈值,比如150度)。
(b)对于(a)中确定的Q[a],Q[b],Q[c],求解:
M P[0]+V=Q[a]
M P[1]+V=Q[b]
M P[2]+V=Q[c]
其中,P[0]、P[1]和P[2]不在同一直线上(在实现时可要求该三点构成的三角形的最大角度不能超过某一阈值,比如150度)。
由于M是2x 2的矩阵,V是2维向量,M和V中包含共计6个未知数,且以上方程每个对应两个维度,所以事实上是6个关于M和V中6个未知数的线性方程。求解以上的线性方程,将得到M和V。
(a)和(b)还可以有替代方案:上面(a)和(b)步骤中选择了三个点来求解M和V,这在(b)中解线性方程时恰实现了方程数和未知数数量相同,直接求解即可。不过因为在图像空间中,Q中的位置识别可能存在少许误差,可能对后续过程存在影响。因此,可以考虑选择更多的点(例如:s个,s=4,5,...,min{m,n}),这样构成超定方程,利用广义逆等方法获得最小二乘最优解。这样在后续过程的匹配精度上更高,但计算量可能也多一点。
(c)对于计算得到的M和V,在Q中查找Q[t],t=0,1,2,...,m-1,且t≠a,t≠b,t≠c(以及t不等于替代方案中被选中的任何点的下标),使得对任意i=s,s+1,...n-1,都能找到一个t,满足:|Q[t]-P[i]|2<T,其中T是给定的一个容差。如果对以上任意i均能找到对应的t满足上面的条件,即最终确认两个模式的匹配。如果存在一个i,无法找到t,那么就不匹配。
图5是根据一示例性实施例示出的一种水印图像处理装置一的结构示意图。参照图5,该装置包括:第一获取模块502,用于获取待处理图像和目标二维空间;第一生成模块504,连接至上述第一获取模块502,用于从目标二维空间中选择多个特征点,连接多个特征点生成第一目标图案;第二生成模块506,连接至上述第一生成模块504,用于在第一目标图案中,分别以多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,蒙版图形携带有第一数据信息,多个特征点分别对应的蒙版图形携带的第一数据信息的串联结果表征水印数据;绘制模块508,连接至上述第二生成模块506,用于将第二目标图案绘制到第一透明图像上,得到第二透明图像;叠加模块510,连接至上述绘制模块508,用于将第二透明图像与待处理图像进行叠加,生成水印图像。
在一个或多个实施例中,第一生成模块504包括:第一确定单元,用于确定连接多个特征点的连接方式,其中,连接方式携带有第二数据信息,第二数据信息与第一数据信息的串联结果联合表征水印数据;第一处理单元,用于采用连接方式连接多个特征点,得到第一目标图案。
可选地,第二生成模块506包括:第二确定单元,用于分别确定以多个特征点为中心的预定区域;第三确定单元,用于分别确定多个特征点对应的蒙版图形需要携带的第一数据信息,并确定第一数据信息对应的蒙版图形的特征参数的取值;绘制单元,用于分别根据特征参数的取值绘制预定区域,得到蒙版图形。
可选地,第三确定单元包括:第一确定子单元,用于根据数据信息与特征参数的取值区间之间的对应关系,分别确定与第一数据信息对应的特征参数的目标取值区间,从目标取值区间中确定特征参数的目标取值;第二确定子单元,用于分别将目标取值确定为第一数据信息对应的蒙版图形的特征参数的取值。
可选地,第三确定单元还包括:第一划分子单元,用于将特征参数的取值范围划分为多个取值区间,其中,不同的取值区间对应不同的数据信息;第一建立子单元,用于建立数据信息与特征参数的取值区间之间的对应关系。
可选地,特征参数包括以下至少之一:形状、透明度、亮度、颜色。
可选地,蒙版图形为携带有第一数据信息的圆形区域。
图6是根据一示例性实施例示出的一种水印图像处理装置二的结构示意图。参照图6,该装置包括:第二获取模块602,用于获取水印图像;识别模块604,连接至上述第二获取模块602,用于采用边缘检测算法识别水印图像中的多个蒙版图形所在位置,得到多个特征点,其中,多个蒙版图形分别以对应的特征点为中心,多个蒙版图形分别携带有对应的第一数据信息;读取模块606,连接至上述识别模块604,用于读取多个特征点分别对应的蒙版图形的第一数据信息;处理模块608,连接至上述读取模块606,用于将多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到水印图像中的水印数据。
可选地,处理模块608包括:第四确定单元,用于在多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定第一目标图案中多个特征点的连接方式,其中,连接方式携带有第二数据信息;第二处理单元,用于将多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到串联结果;第三处理单元,用于根据串联结果和第二数据信息,得到水印图像中的水印数据。
可选地,读取模块606包括:第一获取单元,用于分别获取多个特征点对应的蒙版图形的特征参数的目标取值;第五确定单元,用于分别确定目标取值所在的目标取值区间,其中,特征参数的取值范围划分为多个取值区间,不同的取值区间对应不同的数据信息;第六确定单元,用于根据取值区间与数据信息之间的对应关系,分别确定目标取值区间对应的第一数据信息。
可选地,处理模块608还包括:第七确定单元,用于在多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定第一目标图案中多个特征点的连接方式之前,当预定目标图案所包括的任意特征点,均能从构成第一目标图案的多个特征点中找到对应的特征点时,确定第一目标图案与预定目标图案匹配。
可选地,第七确定单元包括:获取子单元,用于获取目标线性变换矩阵和目标平移向量,其中,目标线性变换矩阵和目标平移向量用于构成仿射变换,仿射变换使得预定目标图案中的至少三个特征点均能够在第一目标图案中找到对应匹配的特征点;处理子单元,用于采用目标线性变换矩阵对预定目标图案所包括特征点中任意的第一特征点对应的第一特征向量执行线性变换操作,以及采用目标平移向量对第一特征向量执行平移操作,得到第二特征向量,其中,第一特征向量为以预定目标图案所包括的特征点所在的二维空间的原点为起点,第一特征点为终点构成的向量;第三确定子单元,用于当第一目标图案所包括的多个特征点中,总存在特征点对应第三特征向量,使得第二特征向量与第三特征向量之间的直线距离小于第一预定阈值时,则确定第一目标图案与预定目标图案匹配。
可选地,获取子单元包括:第一处理次子单元,用于从第一目标图案的多个特征点中选取预定数量的第一目标特征点,得到预定数量的第一目标特征点向量;其中,预定数量为大于等于3的正整数,预定数量的第一目标特征点不在一条直线上,第一目标特征点向量为以第一目标图案所包括的特征点所在的二维空间的原点为起点,第一目标特征点为终点构成的向量;第二处理次子单元,用于从预定目标图像所包括的特征点中选取相同的预定数量的第二目标特征点,得到预定数量的第二目标特征点向量;预定数量的第二目标特征点不在一条直线上,第二目标特征点向量为以预定目标图案所包括的特征点所在的二维空间的原点为起点,第二目标特征点为终点构成的向量;第三处理次子单元,用于依据根据预定数量的第一目标特征点向量和预定数量的第二目标特征点向量,建立以线性变换矩阵和平移向量为未知项的方程组,并通过求解未知项得到目标线性变换矩阵和目标平移向量。
可选地,在预定数量为3的情况下,选取的3个第一目标特征点构成的三角形的最大角度小于第二预定阈值,以及,选取的3个第二目标特征点构成的三角形的最大角度小于第二预定阈值。
需要说明的是,在本实施例中,上述装置的实施例可以参考上述方法实施例,这里不做任何限定。
图7是根据一示例性实施例示出的一种用于水印图像处理的电子设备700的框图。如图7所示,电子设备包括处理器720和用于存储上述处理器可执行指令的存储器710。上述处理器被配置为执行指令,以实现上述的水印图像处理方法。本实施例中的电子设备还可以包括传输装置730、显示器740和连接总线750。传输装置730用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置730包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置730为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。上述显示器740用于显示渲染结果;上述连接总线750,用于连接上述电子设备中的各个模块部件。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器710,上述指令可由电子设备700的处理器720执行以完成上述水印图像处理方法。可选地,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供一种计算机程序产品,包括计算机程序/指令,上述计算机程序/指令被处理器执行时实现上述的水印图像处理方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (30)
1.一种水印图像处理方法,其特征在于,包括:
获取待处理图像和目标二维空间;
从所述目标二维空间中选择多个特征点,连接所述多个特征点生成第一目标图案;
在所述第一目标图案中,分别以所述多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,所述蒙版图形携带有第一数据信息,所述多个特征点分别对应的所述蒙版图形携带的所述第一数据信息的串联结果表征水印数据;
将所述第二目标图案绘制到第一透明图像上,得到第二透明图像;
将所述第二透明图像与所述待处理图像进行叠加,生成水印图像。
2.根据权利要求1所述的方法,其特征在于,所述连接所述多个特征点生成第一目标图案包括:
确定连接所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息,所述第二数据信息与所述第一数据信息的串联结果联合表征所述水印数据;
采用所述连接方式连接所述多个特征点,得到所述第一目标图案。
3.根据权利要求1所述的方法,其特征在于,所述分别以所述多个特征点为中心生成对应的蒙版图形包括:
分别确定以所述多个特征点为中心的预定区域;
分别确定所述多个特征点对应的蒙版图形需要携带的所述第一数据信息,并确定所述第一数据信息对应的蒙版图形的特征参数的取值;
分别根据所述特征参数的取值绘制所述预定区域,得到所述蒙版图形。
4.根据权利要求3所述的方法,其特征在于,所述分别确定所述多个特征点对应的蒙版图形需要携带的所述第一数据信息,并确定所述第一数据信息对应的蒙版图形的特征参数的取值包括:
根据数据信息与特征参数的取值区间之间的对应关系,分别确定与所述第一数据信息对应的所述特征参数的目标取值区间,从所述目标取值区间中确定所述特征参数的目标取值;
分别将所述目标取值确定为所述第一数据信息对应的蒙版图形的特征参数的取值。
5.根据权利要求4所述的方法,其特征在于,在根据数据信息与特征参数的取值区间之间的对应关系,分别确定与所述第一数据信息对应的所述特征参数的目标取值区间之前,还包括:
将所述特征参数的取值范围划分为多个取值区间,其中,不同的取值区间对应不同的数据信息;
建立所述数据信息与所述特征参数的取值区间之间的所述对应关系。
6.根据权利要求3所述的方法,其特征在于,所述特征参数包括以下至少之一:形状、透明度、亮度、颜色。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述蒙版图形为携带有所述第一数据信息的圆形区域。
8.一种水印图像处理方法,其特征在于,包括:
获取水印图像;
采用边缘检测算法识别所述水印图像中的多个蒙版图形所在位置,得到多个特征点,其中,所述多个蒙版图形分别以对应的特征点为中心,所述多个蒙版图形分别携带有对应的第一数据信息;
读取所述多个特征点分别对应的蒙版图形的第一数据信息;
将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到所述水印图像中的水印数据。
9.根据权利要求8所述的方法,其特征在于,所述将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到所述水印图像中的水印数据,包括:
在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息;
将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到串联结果;
根据所述串联结果和所述第二数据信息,得到所述水印图像中的水印数据。
10.根据权利要求8所述的方法,其特征在于,所述读取所述多个特征点分别对应的蒙版图形的第一数据信息包括:
分别获取所述多个特征点对应的蒙版图形的特征参数的目标取值;
分别确定所述目标取值所在的目标取值区间,其中,所述特征参数的取值范围划分为多个取值区间,不同的取值区间对应不同的数据信息;
根据取值区间与数据信息之间的对应关系,分别确定所述目标取值区间对应的第一数据信息。
11.根据权利要求9所述的方法,其特征在于,在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式之前,还包括:
当所述预定目标图案所包括的任意特征点,均能从构成所述第一目标图案的所述多个特征点中找到对应的特征点时,确定所述第一目标图案与预定目标图案匹配。
12.根据权利要求11所述的方法,其特征在于,所述当所述预定目标图案所包括的任意特征点,均能从构成所述第一目标图案的所述多个特征点中找到对应的特征点时,确定所述第一目标图案与预定目标图案匹配,包括:
获取目标线性变换矩阵和目标平移向量,其中,所述目标线性变换矩阵和所述目标平移向量用于构成仿射变换,所述仿射变换使得所述预定目标图案中的至少三个特征点均能够在所述第一目标图案中找到对应匹配的特征点;
采用所述目标线性变换矩阵对所述预定目标图案所包括特征点中任意的第一特征点对应的第一特征向量执行线性变换操作,以及采用所述目标平移向量对所述第一特征向量执行平移操作,得到第二特征向量,其中,所述第一特征向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第一特征点为终点构成的向量;
当所述第一目标图案所包括的多个特征点中,总存在特征点对应第三特征向量,使得所述第二特征向量与所述第三特征向量之间的直线距离小于第一预定阈值时,则确定所述第一目标图案与预定目标图案匹配。
13.根据权利要求12所述的方法,其特征在于,所述获取目标线性变换矩阵和目标平移向量包括:
从所述第一目标图案的多个特征点中选取预定数量的第一目标特征点,得到所述预定数量的第一目标特征点向量;其中,所述预定数量为大于等于3的正整数,所述预定数量的第一目标特征点不在一条直线上,所述第一目标特征点向量为以所述第一目标图案所包括的特征点所在的二维空间的原点为起点,所述第一目标特征点为终点构成的向量;
从所述预定目标图像所包括的特征点中选取相同的所述预定数量的第二目标特征点,得到所述预定数量的第二目标特征点向量;所述预定数量的第二目标特征点不在一条直线上,所述第二目标特征点向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第二目标特征点为终点构成的向量;
依据根据所述预定数量的所述第一目标特征点向量和所述预定数量的所述第二目标特征点向量,建立以线性变换矩阵和平移向量为未知项的方程组,并通过求解未知项得到所述目标线性变换矩阵和所述目标平移向量。
14.根据权利要求13所述的方法,其特征在于,在所述预定数量为3的情况下,
选取的3个所述第一目标特征点构成的三角形的最大角度小于第二预定阈值,以及,选取的3个所述第二目标特征点构成的三角形的最大角度小于所述第二预定阈值。
15.一种水印图像处理装置,其特征在于,包括:
第一获取模块,用于获取待处理图像和目标二维空间;
第一生成模块,用于从所述目标二维空间中选择多个特征点,连接所述多个特征点生成第一目标图案;
第二生成模块,用于在所述第一目标图案中,分别以所述多个特征点为中心生成对应的蒙版图形,得到第二目标图案,其中,所述蒙版图形携带有第一数据信息,所述多个特征点分别对应的所述蒙版图形携带的所述第一数据信息的串联结果表征水印数据;
绘制模块,用于将所述第二目标图案绘制到第一透明图像上,得到第二透明图像;
叠加模块,用于将所述第二透明图像与所述待处理图像进行叠加,生成水印图像。
16.根据权利要求15所述的装置,其特征在于,所述第一生成模块包括:
第一确定单元,用于确定连接所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息,所述第二数据信息与所述第一数据信息的串联结果联合表征所述水印数据;
第一处理单元,用于采用所述连接方式连接所述多个特征点,得到所述第一目标图案。
17.根据权利要求15所述的装置,其特征在于,所述第二生成模块包括:
第二确定单元,用于分别确定以所述多个特征点为中心的预定区域;
第三确定单元,用于分别确定所述多个特征点对应的蒙版图形需要携带的所述第一数据信息,并确定所述第一数据信息对应的蒙版图形的特征参数的取值;
绘制单元,用于分别根据所述特征参数的取值绘制所述预定区域,得到所述蒙版图形。
18.根据权利要求17所述的装置,其特征在于,所述第三确定单元包括:
第一确定子单元,用于根据数据信息与特征参数的取值区间之间的对应关系,分别确定与所述第一数据信息对应的所述特征参数的目标取值区间,从所述目标取值区间中确定所述特征参数的目标取值;
第二确定子单元,用于分别将所述目标取值确定为所述第一数据信息对应的蒙版图形的特征参数的取值。
19.根据权利要求18所述的装置,其特征在于,所述第三确定单元还包括:
第一划分子单元,用于将所述特征参数的取值范围划分为多个取值区间,其中,不同的取值区间对应不同的数据信息;
第一建立子单元,用于建立所述数据信息与所述特征参数的取值区间之间的所述对应关系。
20.根据权利要求17所述的装置,其特征在于,所述特征参数包括以下至少之一:形状、透明度、亮度、颜色。
21. 根据权利要求15至20中任一项所述的装置,其特征在于,所述蒙版图形为携带有所述第一数据信息的圆形区域。
22.一种水印图像处理装置,其特征在于,包括:
第二获取模块,用于获取水印图像;
识别模块,用于采用边缘检测算法识别所述水印图像中的多个蒙版图形所在位置,得到多个特征点,其中,所述多个蒙版图形分别以对应的特征点为中心,所述多个蒙版图形分别携带有对应的第一数据信息;
读取模块,用于读取所述多个特征点分别对应的蒙版图形的第一数据信息;
处理模块,用于将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到所述水印图像中的水印数据。
23.根据权利要求22所述的装置,其特征在于,所述处理模块包括:
第四确定单元,用于在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式,其中,所述连接方式携带有第二数据信息;
第二处理单元,用于将所述多个特征点分别对应的蒙版图形的第一数据信息进行串联,得到串联结果;
第三处理单元,用于根据所述串联结果和所述第二数据信息,得到所述水印图像中的水印数据。
24.根据权利要求22所述的装置,其特征在于,所述读取模块包括:
第一获取单元,用于分别获取所述多个特征点对应的蒙版图形的特征参数的目标取值;
第五确定单元,用于分别确定所述目标取值所在的目标取值区间,其中,所述特征参数的取值范围划分为多个取值区间,不同的取值区间对应不同的数据信息;
第六确定单元,用于根据取值区间与数据信息之间的对应关系,分别确定所述目标取值区间对应的第一数据信息。
25.根据权利要求23所述的装置,其特征在于,所述处理模块还包括:
第七确定单元,用于在所述多个特征点连接后构成的第一目标图案与预定目标图案匹配的情况下,确定所述第一目标图案中所述多个特征点的连接方式之前,当所述预定目标图案所包括的任意特征点,均能从构成所述第一目标图案的所述多个特征点中找到对应的特征点时,确定所述第一目标图案与预定目标图案匹配。
26.根据权利要求25所述的装置,其特征在于,所述第七确定单元包括:
获取子单元,用于获取目标线性变换矩阵和目标平移向量,其中,所述目标线性变换矩阵和所述目标平移向量用于构成仿射变换,所述仿射变换使得所述预定目标图案中的至少三个特征点均能够在所述第一目标图案中找到对应匹配的特征点;
处理子单元,用于采用所述目标线性变换矩阵对所述预定目标图案所包括特征点中任意的第一特征点对应的第一特征向量执行线性变换操作,以及采用所述目标平移向量对所述第一特征向量执行平移操作,得到第二特征向量,其中,所述第一特征向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第一特征点为终点构成的向量;
第三确定子单元,用于当所述第一目标图案所包括的多个特征点中,总存在特征点对应第三特征向量,使得所述第二特征向量与所述第三特征向量之间的直线距离小于第一预定阈值时,则确定所述第一目标图案与预定目标图案匹配。
27.根据权利要求26所述的装置,其特征在于,所述获取子单元包括:
第一处理次子单元,用于从所述第一目标图案的多个特征点中选取预定数量的第一目标特征点,得到所述预定数量的第一目标特征点向量;其中,所述预定数量为大于等于3的正整数,所述预定数量的第一目标特征点不在一条直线上,所述第一目标特征点向量为以所述第一目标图案所包括的特征点所在的二维空间的原点为起点,所述第一目标特征点为终点构成的向量;
第二处理次子单元,用于从所述预定目标图像所包括的特征点中选取相同的所述预定数量的第二目标特征点,得到所述预定数量的第二目标特征点向量;所述预定数量的第二目标特征点不在一条直线上,所述第二目标特征点向量为以所述预定目标图案所包括的特征点所在的二维空间的原点为起点,所述第二目标特征点为终点构成的向量;
第三处理次子单元,用于依据根据所述预定数量的所述第一目标特征点向量和所述预定数量的所述第二目标特征点向量,建立以线性变换矩阵和平移向量为未知项的方程组,并通过求解未知项得到所述目标线性变换矩阵和所述目标平移向量。
28.根据权利要求27所述的装置,其特征在于,在所述预定数量为3的情况下,
选取的3个所述第一目标特征点构成的三角形的最大角度小于第二预定阈值,以及,选取的3个所述第二目标特征点构成的三角形的最大角度小于所述第二预定阈值。
29.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如权利要求1至14中任一项所述的水印图像处理方法。
30.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至14中任一项所述的水印图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111044709.8A CN113781287B (zh) | 2021-09-07 | 2021-09-07 | 水印图像处理方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111044709.8A CN113781287B (zh) | 2021-09-07 | 2021-09-07 | 水印图像处理方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113781287A CN113781287A (zh) | 2021-12-10 |
CN113781287B true CN113781287B (zh) | 2024-03-01 |
Family
ID=78841501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111044709.8A Active CN113781287B (zh) | 2021-09-07 | 2021-09-07 | 水印图像处理方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113781287B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011238107A (ja) * | 2010-05-12 | 2011-11-24 | Oki Electric Ind Co Ltd | 画像処理装置及び画像処理方法 |
CN104902282A (zh) * | 2015-06-04 | 2015-09-09 | 深圳市明日空间信息技术有限公司 | 在视频帧上嵌入水印图片的处理方法及装置 |
CN108921859A (zh) * | 2018-06-28 | 2018-11-30 | 努比亚技术有限公司 | 图片处理方法、程序和计算机可读储存介质 |
CN113284034A (zh) * | 2021-05-27 | 2021-08-20 | 中国联合网络通信集团有限公司 | 图像处理方法和装置 |
-
2021
- 2021-09-07 CN CN202111044709.8A patent/CN113781287B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011238107A (ja) * | 2010-05-12 | 2011-11-24 | Oki Electric Ind Co Ltd | 画像処理装置及び画像処理方法 |
CN104902282A (zh) * | 2015-06-04 | 2015-09-09 | 深圳市明日空间信息技术有限公司 | 在视频帧上嵌入水印图片的处理方法及装置 |
CN108921859A (zh) * | 2018-06-28 | 2018-11-30 | 努比亚技术有限公司 | 图片处理方法、程序和计算机可读储存介质 |
CN113284034A (zh) * | 2021-05-27 | 2021-08-20 | 中国联合网络通信集团有限公司 | 图像处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113781287A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3410685B1 (en) | Image processing device, image processing method, and program | |
CN111784556A (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 | |
CN108921266B (zh) | 一种基于图像分割的静态二维码加密显示方法及装置 | |
CN111353956B (zh) | 图像修复方法、装置、计算机设备及存储介质 | |
CN115358911B (zh) | 屏幕水印的生成方法、装置、设备和计算机可读存储介质 | |
CN113538197B (zh) | 水印提取方法、装置、存储介质以及电子设备 | |
CN114626967A (zh) | 一种数字水印嵌入与提取方法、装置、设备及存储介质 | |
CN110634096B (zh) | 一种自适应多模态的信息隐藏方法及装置 | |
CN115375527A (zh) | 图像处理方法、装置、设备及存储介质 | |
JP2022101645A (ja) | 暗号化マスク確定方法、画像認識方法、モデルトレーニング方法、装置、電子機器、記憶媒体およびコンピュータプログラム | |
CN113781287B (zh) | 水印图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN117153128A (zh) | 基于物理隔离的数据传输方法、存储介质及电子设备 | |
CN110969042B (zh) | 二维码的识别方法、装置、硬件装置 | |
CN113298687B (zh) | 一种水印图像添加方法和装置 | |
CN110796136B (zh) | 标志与图像处理方法及相关装置 | |
Fadhil et al. | Improved Security of a Deep Learning-Based Steganography System with Imperceptibility Preservation | |
CN114387315A (zh) | 图像处理模型训练、图像处理方法、装置、设备及介质 | |
CN113763225A (zh) | 一种图像感知哈希方法、系统、设备及信息数据处理终端 | |
CN109840574B (zh) | 一种二维码信息的隐藏方法、装置、电子设备及存储介质 | |
US7295678B2 (en) | Method for inserting binary messages in a digital image | |
CN109919821B (zh) | 三维数字模型双重盲水印的嵌入、提取方法和存储介质 | |
CN113393358A (zh) | 图像处理方法和系统、存储介质、计算设备 | |
CN116611114B (zh) | 基于图像文件的头文件实现地图栅格数据加密及偏移方法 | |
CN110232285B (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 |