一种实用的矢量地图数据盲数字水印解决方案

2010-11-15 08:43闵连权杨永强
测绘工程 2010年4期
关键词:数字水印矢量算法

李 强,闵连权,吴 彬,杨永强

(1.信息工程大学 测绘学院,河南 郑州 450052;2.69027部队,新疆 乌鲁木齐 830006)

一种实用的矢量地图数据盲数字水印解决方案

李 强1,2,闵连权1,吴 彬2,杨永强2

(1.信息工程大学 测绘学院,河南 郑州 450052;2.69027部队,新疆 乌鲁木齐 830006)

目前,数字水印技术研究主要集中在算法的设计和改进方面,文中针对矢量地图数据数字水印技术应用,提出一种基于统计分类的矢量地图数据盲数字水印解决方案,并对多种不同的攻击进行检测实验,取得较好的效果。

矢量地图数据;盲数字水印;统计;水印生成

现阶段的数字水印技术研究主要集中在算法的设计和改进方面[1-13],针对矢量地图数据数字水印技术的实际应用要求,本文提出了一种基于统计分类的完整的盲数字水印系统解决方案。

1 实用的盲数字水印系统方案设计

1.1 实用的盲数字水印系统的设计要求

当前的数字水印技术,按照水印的检测过程可以分为盲水印和非盲水印,盲水印是指只需要密钥,不需要原始数据的参与;非盲水印是指需要原始数据的参与。现阶段,矢量地图数据数字水印技术研究主要集中在非盲水印方面,但由于在实践操作上,大多数情况下进行水印检测时,不容易或不可能获得原始数据,因而,盲水印更具有实用价值和应用前景。

由于盲数字水印原型系统研究还很少,因而在系统的设计要求方面,笔者借鉴和参考了数字水印的算法研究和其他相关系统的设计标准。

1)逼真度。水印系统的逼真度指原始矢量地图和嵌入水印的矢量地图在视觉上的相似程度。

2)安全性。安全性是指水印能够抵御对手恶意攻击的能力。数字水印应能抵抗各种蓄意的攻击,能够唯一标示水印的相关信息,保证任何第三方都不能伪造水印。

3)鲁棒性。鲁棒性是指对矢量地图数据经过常规的攻击处理操作后,仍能检测到水印的能力。对矢量地图数据的常规操作包括压缩、删点、增点、噪声攻击、格式转换等。

4)盲水印检测。即只需要待检测数据就可以检测是否含有水印,或含有的水印信息,由于实际应用中,原始数据不方便或不可能得到,因而盲水印检测尤为重要,也是数字水印技术发展的一个趋势。

5)便捷性。应用的快捷友好是任何系统设计的一个目标,在实用的数字水印系统的设计中,这种要求就体现为在对同一数据进行不同的水印信息嵌入时,水印信息生成的便捷性;进行盲水印检测时,系统的运算处理快捷性等。

1.2 实用的盲数字水印系统的方案设计

实际应用中,一个完整的水印系统的设计应该包括水印的简便生成、鲁棒性的水印嵌入、快捷的检测等,根据前述的设计标准和要求,分别在此三方面提出了相应的算法方案。

1)水印的简便生成。采用通过汉字点阵读取的方式简便、快速的生成水印信息,该方案在水印系统的实际应用中具有很大的创新性。

2)水印的嵌入。这主要是指在水印算法的设计方面,本文通过作者设计的一种基于统计特性的矢量地图数据的数字水印算法,来实现水印的嵌入。

3)水印的检测。在水印的检测和提取方面,主要是指仅通过待检测数据,采取与嵌入算法相逆的算法,提取水印信息。

2 水印的简便生成

当前多数针对盲水印的数字水印信息生成方法,是在每次进行水印嵌入前,将固定大小二值或灰度图像信息进行读取,这样,在嵌入不同的水印信息时,就需要通过相应的工具或者软件处理不同的图像信息,该方法在理论、算法研究中体现不出它的劣势,但从实际应用的角度分析,该方法比较复杂,可操作性较差。针对这种现状,本文提出了一种通过用户输入文字的点阵信息读取,初生成水印信息,而后采取位运算操作进行置乱的水印信息生成方法,其实现过程如图1所示。

图1 水印信息生成过程

该方法主要包含2个方面,即水印信息的初生成和水印信息的置乱处理。

2.1 水印信息的初生成

VC++环境下,通过在对话框中键入的文字信息作为原始水印信息,如图2所示,通过C++语言的函数来读取文字的点阵图像信息。

图2 键入的文字信息作为水印信息

主要步骤如下:

1)创建设置字体相关信息。对于对话框中键入的文字,为其创建字体信息;

CFontm_font;

m_font.CreateFont(相关参数设置);

2)设置文字的背景色。将背景设置为与字体区别较大的颜色,便于后面的二值图像辨别读取、生成:

SetBkColor(相关参数设置);

3)利用函数获取文字的大小范围。根据获得的大小信息,建立相应的二维矩阵 GetTextExtent(相关参数设置);

4)获取相应点的颜色信息。将获取的颜色信息转换为相应的图像点阵信息,并将其作为水印信息,以备后面的水印嵌入:

GetPixel(相关参数设置);

通过以上步骤,以一种简单、快捷的方法生成了水印信息,如图3所示。

图3 生成的水印信息

2.2 水印信息的置乱

采用一种C++语言中位运算的色彩空间置乱的办法,即通过上面得到的图像矩阵,将其依顺序排列为一维数组,并将其按照一定的原则分为 p类,同时确定 p个数,将表示图像信息的像素值与每个分类规则对应的数值进行位运算操作,从而达到置乱的目的,如图4所示。

图4 水印信息的置乱

进行盲水印信息提取时,只需要原始矢量地图数据的参与,将 p作为密钥进行反置乱操作,反置乱操作采取与置乱相应的运算。为确保水印信息的安全,也可以采用类似方法多次进行置乱。该置乱操作具有置乱效果好、运算简单、速度快的特点。

多次置乱后的水印信息如图5所示。

图5 置乱后的水印信息

3 水印嵌入

现有的水印算法,无论是空域还是变换域,都是将水印信息嵌入在特定的坐标或者系数上,这就决定了对于多种形式的攻击,一旦某一个或某几个的坐标或系数遭到破坏,就很可能不能完整地提取出水印信息,甚至不能提取出水印信息,本文采取的是在不影响数据精度的前提下,针对相应的坐标点进行操作,将同一水印信息位依据水印信息和坐标数据特性的关系重复嵌入到分类数据中,然后提取嵌入该水印信息位的该类数据的每个水印信息,最后通过统计嵌入同一水印信息位的该类数据的水印特性,得出嵌入该位置的水印信息位,依次类推,进而获取水印信息,算法嵌入流程如图6所示。

图6 水印嵌入算法流程

首先,根据坐标数据自身稳定特性(一般情况下嵌入水印信息时,坐标数据的千、百、十位等的值不会改变,具有一定的“稳定性”,将其进行变换处理),将变换处理后的数据根据水印信息大小进行分类,消除其在空间上的相关性,使得分类后的数据类具有很大的随机性,将水印信息重复嵌入到坐标数据中。

假设 x坐标可以表示为:x=xkxk-1…x2x1,xi表示坐标数据每一位值,1≤i≤k;

计算 x坐标的稳定数学特性:m=f(xkxk-1…xi)k≥g≥i≥2,g根据数据记录格式取约定值。

根据水印信息的大小a,对m进行分类,将坐标数据分成n类:n=g(m,a),为了保证每一个水印信息位的嵌入,必须满足 n≥a。

其次,根据第i水印信息位的特性,结合第 i类数据的分类序号,修改该类数据的坐标信息,从而达到嵌入水印信息的目的。

{改变其坐标特性;}

为了实现盲水印检测和提取的准确性,在修改数据的坐标信息时,应使得第 i类水印信息位的特性与第i类各数据坐标信息之间具有唯一的对应关系。

4 水印的检测

水印的检测就是利用水印信息位与各分类中数据的对应关系,进行水印的检测和提取。具体过程如下:

首先,利用与嵌入相同的分类规则对待检测坐标数据进行分类,其次,利用嵌入水印后坐标数据特性信息,提取水印信息位,然后,对每一类数据提取出的水印信息位进行统计计算,当某类m个数据中提取的水印信息位为i的比例大于某一预定值的时候,就可以判定该水印信息位为 i,以此类推,即可提取出全部水印信息位,即得到水印图像。

5 实验与分析

W indow s XP平台,Visual C++环境下,采用某地貌层数据进行实验,数据大小为2.7 MB,坐标数据点158 704个。

首先,对其直接嵌入水印信息,嵌入水印信息后的矢量地图显示如图7所示;然后对嵌入水印后的矢量地图数据分别进行各种攻击实验,然后提取水印信息。

进行阈值为3的道格拉斯压缩后提取的水印效果如图8所示;进行随机删除30%点后提取的水印效果如图9所示;对30%的点增加-3至3的随机噪声后,提取的效果如图10所示;对矢量地图数据进行格式转换攻击,提取的效果如图11所示;将数据进行裁剪40%的攻击后的地图显示如图12所示,提取的水印效果如图13所示;数据 X坐标平移1个单位,Y坐标平移2个单位攻击后,提取的效果如图14所示。

图7 嵌入水印信息后的矢量地图显示

实验结果表明,该解决方案对于各种常用的攻击如道格拉斯压缩、随机删除、增加均匀噪声、格式转换等的攻击后,提取的水印效果都比较好;对于数据平移攻击,虽然水印信息显示时,由于水印信息生成算法的缘故,颜色信息颠倒,但是并不影响水印的判断;对于数据裁剪攻击,当裁剪的数据量不大于40%,水印提取效果比较好,当裁剪的数据量大于40%时,提取的效果稍差一些。

6 结束语

本文在对当前矢量地图数据数字水印技术研究现状分析的基础上,针对下一阶段矢量地图数据数字水印技术的应用,设计了一种实用的矢量地图数据盲数字水印解决方案,首先,在水印的生成方面,研究了一种通过文字点阵读取简单快速的生成水印信息,其次,在水印的嵌入算法方面,提出了一种基于统计特性的矢量地图数据数字水印算法,最后对整个方案进行了实验,取得了较好的效果。对于如何进一步抵抗更多的攻击,进行水印嵌入算法的优化和改进,是下一步的努力方向。

[1]XU ZHOU,YU REN,XUEZENG PAN.Watermark embedded in polygonal line fo r copyright p rotection of contour map[J].International Journal of Computer Science and Network Security,2006,7:7.

[2]GERRIT SCHULZ,VO IGT.M.A High Capacity Watermarking System fo r Digital Maps[C],Proceedings of the 2004 M ultimedia and Security Wo rkshop on M ultimedia and Security.Magdeburg,Germany,2004:180-186.

[3]SHAO CHENGYONG.A Robust algo rithm for watermarking 2D vector maps w ith low shape-distortions[J],JOURNAL OF CH INA ORDNANCE,2006,2,(3)

[4]李媛媛,许录平.用于矢量地图版权保护的数字水印[J].西安电子科技大学学报:自然科学版,2005,31(5):719-723.

[5]李安波.GIS矢量数据产品版权保护的关键技术研究[D].南京:南京师范大学,2007.

[6]R.OHBUCH I,H IROO UEDA,SHUH ENDOH.Robust watermarking of vector digital maps[A].In:Proceedings of ICM E[C],Lausanne,Sw itzerland,2002.

A practical blind digital watermarking scheme for vector map data

L IQiang1,2,M IN Lian-quan1,WU Bin2,YANG Yong-qiang2
(1.Institute of Surveying and Mapping,Info rmation Engineering University,Zhengzhou 450052,China;2.Troops 69027,U rumqi 830006,China)

A t p resent,the research of watermarking is arithmetic’s design and op timization mostly.This paper forwards an app lied watermarking solution w hich is based on statistic to p rotect the copy right of vecto r map data.Experiments conducted on watermarking w ith different attacks show that the p roposed algorithm succeeds in the extraction of watermarking.

vector map data;blind digital watermarking;statistic;w atermark create

TP391.41

A

1006-7949(2010)04-0064-04

2009-11-25

李 强(1982-),男,硕士研究生,助理工程师.

[责任编辑张德福]

猜你喜欢
数字水印矢量算法
矢量三角形法的应用
基于网屏编码的数字水印技术
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
进位加法的两种算法
基于FPGA的数字水印提取系统设计研究
基于矢量最优估计的稳健测向方法
一种改进的整周模糊度去相关算法
三角形法则在动态平衡问题中的应用
基于数字水印的人脸与声纹融合识别算法