CN101246586A - 一种基于曲线分割的矢量地图水印方法 - Google Patents

一种基于曲线分割的矢量地图水印方法 Download PDF

Info

Publication number
CN101246586A
CN101246586A CNA2008100264057A CN200810026405A CN101246586A CN 101246586 A CN101246586 A CN 101246586A CN A2008100264057 A CNA2008100264057 A CN A2008100264057A CN 200810026405 A CN200810026405 A CN 200810026405A CN 101246586 A CN101246586 A CN 101246586A
Authority
CN
China
Prior art keywords
prime
watermark
centerdot
sigma
curve
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.)
Granted
Application number
CNA2008100264057A
Other languages
English (en)
Other versions
CN101246586B (zh
Inventor
张鸿生
李岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China Normal University
Original Assignee
South China Normal University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by South China Normal University filed Critical South China Normal University
Priority to CN2008100264057A priority Critical patent/CN101246586B/zh
Publication of CN101246586A publication Critical patent/CN101246586A/zh
Application granted granted Critical
Publication of CN101246586B publication Critical patent/CN101246586B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

本发明一种基于曲线分割的矢量地图水印方法,其包括如下步骤:利用水印嵌入界面将矢量地图嵌入水印;对待加水印的矢量地图进行曲线分割;分割后的矢量地图的曲线总数目,生成的水印信息循环多次的嵌入到曲线中;对水印嵌入曲线的位置进行旋转;利用水印提取及检测单元对含有水印信息的地图提取水印信息,计算水印的相似度,并进行相似度检测。本方法能保证矢量图形或地图精度,又具有安全性、鲁棒性,并能抗剪裁、抗无损压缩等优点。

Description

一种基于曲线分割的矢量地图水印方法
技术领域
本发明涉及一种基于曲线分割的矢量地图水印方法。
背景技术
数字水印技术涉及的应用领域比较广泛,尤其是在各种图像、视频和音频数据中已有相当多的研究成果,并已形成各种产品投入应用。然而,它们绝大多数是针对场模型的栅格数据,而基于对象模型的矢量图形数字水印则研究的相对非常少。随着矢量图形的广泛应用和SVG网络图形发布标准的推出,各种矢量数据,如:GIS、3D数字模型、各种设计图、规划图和艺术创作图等,常以矢量图形存储、表达和传输。值得关注的是,随着“数字中国”的逐步实现,空间信息应用面越来越广泛,空间信息共享服务被列入重要的议事议程,但随之而来的重要问题之一是空间信息的数据版权保护。因此,作为空间信息主要数据类型——矢量图形或数字地图的数字水印必然受到多方关注,并成为亟需解决的关键技术之一。
目前,国内外关于矢量图形数字水印的研究较少,相关的技术仍不够成熟,常在水印的鲁棒性、安全性、抗压缩能力和抗格式转换等方面的性能不能兼顾,难以适应或符合实际应用。矢量图形数字水印嵌入的算法按水印信息嵌入方式可分为两大类:一是移动点;二是添加点。移动点的水印嵌入算法又被分为:空间域或频率域移动点,前者的算法主要是通过在一定容差范围内移动坐标点来嵌入水印;后者则是基于频率域的算法,这类方法通过运用各种变换算法,如:DCT变换、傅立叶变换或小波变换的系数来嵌入水印,其实质也是移动矢量图形的顶点,且顶点的移动幅度无法精确控制,故不适合对精度要求较高的矢量地图应用。然而,添加点算法仅有屈指可数的研究报道,主要采用在每个顶点附近或若干个顶点附近嵌入水印点,这些算法主要优点是简单、鲁棒性较好,但缺乏安全性,不能抗矢量图有损压缩压缩和无损压缩的攻击或应用操作攻击。
发明内容
本发明的目的在于针对上述问题,提供一种既能保证矢量图形或地图精度,又具有安全性、鲁棒性,并能抗剪裁、抗无损压缩的基于曲线分割的矢量地图水印方法。
本发明采取的技术方案为:一种基于曲线分割的矢量地图水印方法,包括如下步骤:
(1)利用水印嵌入界面实现水印生成、矢量地图嵌入水印和水印提取检测;
(2)对待加水印的矢量地图进行曲线分割;
(3)根据步骤(2)分割后的矢量地图的曲线总数目,把在步骤(1)中生成的水印信息循环多次的嵌入到曲线中;
(4)对步骤(3)水印嵌入曲线的位置进行旋转;
(5)利用水印提取及检测单元对含有水印信息的地图提取水印信息,计算水印的相似度,并进行相似度检测。
步骤(1)中,从用户证书中取出密钥,利用密钥对个性化用户信息进行加密形成水印信息,加密算法采用RSA公钥系统,用户个性化信息为20~25个英文字母。
步骤(2)中,把矢量地图看作一个曲线的集合,对所有的长曲线按照一定阈值进行分割,形成多条短曲线。
用于分割曲线的阈值应由用户密钥确定。
步骤(3)中,每条曲线中除了最后一个顶点的其它所有顶点的附近都嵌入一个水印点,一条曲线所有的水印点都表示同一个水印位,曲线上的第i个点为(vxk,i,vyk,i),要嵌入的水印位为b′i,嵌入水印点的坐标为(vx′k,i,vy′k,i),则(vx′k,i,vy′k,i)的计算公式如下:
dx k = ( vx k + 1 , i - vx k , i ) b ′ i · α · p k dy k = ( vy k + 1 , i - vy k , i ) b ′ i · α · p k
vx ′ k , i = vx k , i + dx k vy ′ k , i = vy k , i + dy k
其中,0<α<1,是调制幅值,pk由用户密钥确定。
步骤(4)中,对水印嵌入曲线的坐标点(vx′k,i,vy′k,i)进行位置的旋转,旋转角度为θ,则计算公式如下:
vx ′ k , i vy ′ k , i = vx k , i vy k , i + cos θ - sin θ sin θ cos θ · dx k d y k
对嵌入点以前一结点为中心旋转一个小角度θ,使嵌入的水印点和原曲线的两个结点间略有偏移。
步骤(5)中,①把水印地图和原始地图进行比较,按照水印嵌入算法步骤(2)进行水印图形或地图的曲线分割。
②对水印图中的水印点进行反旋转,旋转角度为θ,第i条曲线的第k个水印点为(vx′2k+1,i,vy′2k+1,i),则其反旋转的计算公式为:
dx ′ k = vx ′ 2 k + 1 , i - vx k , i dy ′ k = vy ′ 2 k + 1 , i - vy k , i
vx ′ 2 k + 1 , i vy ′ 2 k + 1 , i = vx k , i vy k , i + cos ( - θ ) - sin ( - θ ) sin ( - θ ) cos ( - θ ) · d x ′ k d y ′ k
③对每一条曲线Pi和P′i,分别计算其除去最后一个点后的重心坐标:
vx ′ i ‾ = 1 h i ′ - 1 Σ k = 1 h i ′ - 1 vx ′ k vy ′ i ‾ = 1 h i ′ - 1 Σ k = 1 h i ′ - 1 vy ′ k
vx i ‾ = 1 h i - 1 Σ k = 1 h i - 1 vx k vy ‾ i = 1 h i - 1 Σ k = 1 h i - 1 vy k
并对原图的每条曲线i的顶点计算以下两个量的值:
Δxi = 1 2 h i - 2 Σ k = 1 h i - 1 ( vx k + 1 - vx k ) · p k Δyi = 1 2 h i - 2 Σ k = 1 h i - 1 ( vy k + 1 - vy k ) · p k
④按照以下公式分别计算每条曲线纵横坐标的水印点:
1)Δxi≠0 && Δyi≠0
qx i = Σ { i | i / c = j } vx ′ i ‾ - vx i ‾ Δxi = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α qy i = Σ { i | i / c = j } vy ′ i ‾ vy i ‾ Δyi = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α
2)Δxi=0 && Δyi≠0
qx j = Σ { i | i / c = j } Σ k = 1 h i - 2 vx k , i ‾ - vx k , i ( vx k + 1 , i - vx k , i ) · p k = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α qy i = Σ { i | i / c = j } vy ′ i ‾ - vy i ‾ Δyi = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α
3)Δxi≠0 && Δyi=0
qx j = Σ { i | i / c = j } v x ′ i ‾ - vx i ‾ Δxi = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α qy i = Σ { i | i / c = j } Σ k = 1 h i - 2 vy k , i ‾ - vy k , i ( vy k + 1 , i - vy k , i ) · p k = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α
4)Δxi=0 && Δyi=0
qx j = Σ { i | i / c = j } Σ k = 1 h i - 2 vx k , i ‾ - vx k , i ( vx k + 1 , i - vx k , i ) · p k = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α qy i = Σ { i | i / c = j } Σ k = 1 h i - 2 vy k , i ‾ - vy k , i ( vy k + 1 , i - vy k , i ) · p k = Σ { i | i / c = j } b ′ i · α = c · b ′ j · α
⑤计算每条曲线的水印信息值:
m &prime; j = 1 qx j + qy j 2 > 1 0 qx j + qy j 2 < 1
⑥对提取出的水印m’进行检测,首先计算其与原始水印信息m的相似度,公式如下:
sim = &Sigma; i = 0 n - 1 ( m i &CenterDot; m i &prime; ) &Sigma; i = 0 n - 1 m i 2 &CenterDot; &Sigma; i = 0 n - 1 m i &prime; 2
对照相似度的阈值曲线进行阈值确定,从而判断是否有水印存在。
附图说明
图1为水印嵌入、提取和检测方法的实施流程图;
图2为水印嵌入方法的用户界面;
图3为水印提取和检测方法的用户界面;
图4为相似度阈值的阈值曲线;
图5为试验区SVG矢量地图被嵌入完整水印图示;
图6为试验区地图经多种几何变换操作后的水印图示;
图7为对试验区水印图进行7种比例裁剪攻击模式的示意图。
具体实施方式
如图1所示,本发明的基于曲线分割的矢量地图水印方法,在此,以基于XML-SVG的全文本标准格式的地图为例,其包括两个方面:a、水印嵌入算法与处理方法;b、水印提取和检测算法与处理方法。
a、水印嵌入算法与处理方法:
(1)利用水印嵌入界面将矢量地图嵌入水印。
利用本发明的水印嵌入界面,如图2所示,可对矢量地图嵌入水印。系统要求使用者必须提供用户证书库文件,即用户证书信息,包括:证书库密码、证书别名和证书密码。此外,还需输入用户的个性化信息,从用户的水印证书中取出用户密钥,采用RSA密钥系统对用户个性化的待嵌入信息加密,并形成水印信息,如:单位名称或姓名等用于生成水印信息,并保存用户特征水印信息后,方能进一步将其嵌入待加水印的地图中。上述的用户个性化信息一般为20~25个英文字母。
(2)对待加水印的矢量地图进行曲线分割。
矢量图形的曲线分割由于本文发明是将每一个水印信息位(watermark bit)嵌入到图形图层中每一条曲线内,若图层中所包含的原始曲线数分布不均匀,或者曲线长度过长等,均会导致水印信息在整个图层上分布不均匀,或水印信息大于图形本身的信息,从而降低水印的鲁棒性。因此,在嵌入水印前则先对整个图层的曲线进行长度和数目适中的曲线段分割。
曲线分割是以深度优先顺序排列好图形树中的多边形边界(曲线),并计算各曲线的长度(以结点数目计)。在分割曲线时,不仅需限定曲线的最大长度为dmax,即大于dmax的曲线应分割为多条曲线;还需限定曲线的最小长度为dmin,小于dmin的曲线被弃为不嵌入水印点的线段。另外,dmax可根据用户信息(M)和用户证书中的密钥计算水印信息的长度n,以字节位数计,m=(m1,m2,...,mn)。其中,mi∈{0,1}确定之,再对矢量地图所有曲线进行分割,即:由用户密钥确定曲线长度的阈值,按照该阈值对长曲线进行分割,形成多条短曲线。
(3)根据步骤(2)分割后的矢量地图的曲线总数目,把步骤(1)中生成的水印信息循环多次的嵌入到曲线中。
根据步骤(2)分割后的矢量图形或地图的曲线总数目,把步骤(1)中生成的水印信息循环多次的嵌入到曲线中,每条曲线嵌入一个水印位,水印点的位置与用户密钥有关。假定某条曲线上第i个点为(vxk,i,vyk,i),要嵌入的水印位为b′i,嵌入水印点的坐标为(vx′k,i,vy′k,i),则(vx′k,i,vy′k,i)的计算公式如下:
dx k = ( vx k + 1 , i - vx k , i ) b &prime; i &CenterDot; &alpha; &CenterDot; p k dy k = ( vy k + 1 , i - vy k , i ) b &prime; i &CenterDot; &alpha; &CenterDot; p k
vx &prime; k , i = vx k , i + dx k vy &prime; k , i = vy k , i + dy k
其中,0<α<1,是调制幅值,pk由用户密钥确定。
(4)对步骤(3)水印嵌入曲线的位置进行旋转。
对步骤(3)嵌入的坐标点(vx′k,i,vy′k,i)进行位置的旋转,如旋转角度为θ,则计算公式如下:
vx &prime; k , i vy &prime; k , i = vx k , i vy k , i + cos &theta; - sin &theta; sin &theta; cos &theta; &CenterDot; dx k d y k
这里,对嵌入点以前一结点为中心旋转一个小角度θ,使嵌入的水印点和原曲线的两个结点间略有偏移,以提高水印信息的鲁棒性。
b、水印提取和检测算法与处理方法:
(5)如图3所示,利用水印提取及检测单元对含有水印信息的地图提取水印信息,计算水印的相似度,并进行相似度检测,其具体包括以下步骤:
①把水印地图和原始地图进行比较,按照水印嵌入算法步骤②进行水印图形或地图的曲线分割。
②对水印图中的水印点进行反旋转,旋转角度为θ,第i条曲线的第k个水印点为(vx′2k+1,i,vy′2k+1,i),则其反旋转的计算公式为:
dx &prime; k = vx &prime; 2 k + 1 , i - vx k , i dy &prime; k = vy &prime; 2 k + 1 , i - vy k , i
vx &prime; 2 k + 1 , i vy &prime; 2 k + 1 , i = vx k , i vy k , i + cos ( - &theta; ) - sin ( - &theta; ) sin ( - &theta; ) cos ( - &theta; ) &CenterDot; d x &prime; k d y &prime; k
③对每一条曲线Pi和P′i,分别计算其除去最后一个点后的重心坐标:
vx &prime; i &OverBar; = 1 h i &prime; - 1 &Sigma; k = 1 h i &prime; - 1 vx &prime; k vy &prime; i &OverBar; = 1 h i &prime; - 1 &Sigma; k = 1 h i &prime; - 1 vy &prime; k
vx i &OverBar; = 1 h i - 1 &Sigma; k = 1 h i - 1 vx k vy &OverBar; i = 1 h i - 1 &Sigma; k = 1 h i - 1 vy k
并对原图的每条曲线i的顶点计算以下两个量的值:
&Delta;xi = 1 2 h i - 2 &Sigma; k = 1 h i - 1 ( vx k + 1 - vx k ) &CenterDot; p k &Delta;yi = 1 2 h i - 2 &Sigma; k = 1 h i - 1 ( vy k + 1 - vy k ) &CenterDot; p k
④按照以下公式分别计算每条曲线纵横坐标的水印点:
1)Δxi≠0 && Δyi≠0
qx i = &Sigma; { i | i / c = j } vx &prime; i &OverBar; - vx i &OverBar; &Delta;xi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } vy &prime; i &OverBar; vy i &OverBar; &Delta;yi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
2)Δxi=0 && Δyi≠0
qx j = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vx k , i &OverBar; - vx k , i ( vx k + 1 , i - vx k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } vy &prime; i &OverBar; - vy i &OverBar; &Delta;yi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
3)Δxi≠0 && Δyi=0
qx j = &Sigma; { i | i / c = j } v x &prime; i &OverBar; - vx i &OverBar; &Delta;xi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vy k , i &OverBar; - vy k , i ( vy k + 1 , i - vy k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
4)Δxi=0 && Δyi=0
qx j = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vx k , i &OverBar; - vx k , i ( vx k + 1 , i - vx k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vy k , i &OverBar; - vy k , i ( vy k + 1 , i - vy k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
⑤计算每条曲线的水印信息值:
m &prime; j = 1 qx j + qy j 2 > 1 0 qx j + qy j 2 < 1
⑥对提取出的水印m’进行检测。首先计算其与原始水印信息m的相似度,公式如下:
sim = &Sigma; i = 0 n - 1 ( m i &CenterDot; m i &prime; ) &Sigma; i = 0 n - 1 m i 2 &CenterDot; &Sigma; i = 0 n - 1 m i &prime; 2
然后,对照相似度的如图4所示的阈值曲线进行阈值确定,从而判断是否有水印存在。
为了验证本发明的可靠性,我们利用本发明提供的矢量地图水印算法进行了以下的各种试验。如图5~7所示,试验中,对一张SVG地图嵌入水印,设置的用户个性化信息为“kongjianxinxizhongxin”,即“空间信息中心”的汉语拼音,对该信息加密后形成1152位的完整水印信息,把水印信息嵌入到地图中形成水印图。然后,对水印图进行几何变形操作、剪裁和抗压缩等几种外部攻击实验进行水印性能的测试,以及对旋转角度θ的变化对水印性能的影响进行定量分析:
1、几何攻击下的水印检测。对完整水印图经横坐标向右平移5000个单位,纵坐标平移500000个单位,然后围绕地图的中心顺时针旋转30度,再以相对于原点缩小地图到原来的85%的几何变换后,水印检测的相似度为0.996527,有效水印位1152bits。由此可见,几何变形操作对svg水印地图中的水印没有影响。
2、裁剪攻击下的水印检测。地图在网络传输或使用过程中,剪裁是最常见的操作。由于不同人对同一幅地图可能有不同的使用目的,他们可能会只取其中需要的部分。这样,嵌入矢量地图或图形数据中数字水印的抗剪裁能力就显得相当重要。水印检测的结果如表1所示,为水印图在7种剪裁攻击下的检测结果,对照图4中的阈值曲线,可以看出,即使水印地图被裁剪了1/3以上时,仍能检测出其中的水印信息。因此,本发明具有很好的抗裁剪能力。
  裁剪模式   总顶点数   裁剪顶点数   有效水印位位数   水印相似度
  P1   249462   0   1152   0.996527
  P2   249462   124416   591   0.928934
  P3   249462   132076   885   0.945762
  P4   249462   210076   191   0.643979
  P5   249462   203051   150   0.48
  P6   249462   105198   641   0.9063962
  P7   249462   2096   1140   0.9894736
  P8   249462   169053   377   0.9098143
                             表1
3、抗压缩性能分析。本实验采用经典的道格拉斯-普克压缩算法(DP算法),实验只对其进行了简单修改,用于测试水印的抗压缩能力,并将前期研究所提出的添加点的水印算法作为对比算法。实验样本采用矢量图GD.svg,压缩算法的阈值T为相连的两条线段的斜率之差,即在连续的三个结点中,若中间结点偏离两边结点的连线达到指定的斜率差,则认为中间的结点是可压缩的结点。分别用对比算法和本发明的算法对GD.svg嵌入水印(本发明的算法的旋转角度θ设置为0.4,水印信息的长度为1152位),设置不同的阈值T,对水印图进行有损压缩,再分别检测水印信息。从表2的对比算法与本发明的算法抗压缩能力的比较给出的实验结果可知,对比算法嵌入的水印点随着压缩阈值的增大,压缩量迅速增大,检测的相似度也迅速的降低,本发明的算法嵌入的水印点由于经过了旋转操作,具有较好的抗压缩能力,压缩阈值增大到0.3时,仍保持0.64410的水印信息相似度。
  阈值T   被压缩掉的结点数   水印相似度
  对比算法   本发明算法   对比算法   本发明算法
  0.02   83503   2790   0.45537   0.71875
  0.04   102170   4487   0.29073   0.70833
  0.08   114349   7852   0.16578   0.68055
  0.16   121996   14033   0.09065   0.66146
  0.20   123659   17124   0.07370   0.65972
  0.30   125753   25550   0.05330   0.64410
                             表2
4、旋转角度的定量分析。在本发明的水印嵌入算法中,在水印点嵌入后旋转角度θ,该角度的大小既可影响水印地图的精度,又可能影响到水印的抗压缩能力、抗剪裁攻击能力。因此,确定θ的大小,既要考虑到地图对精度的需求,又要考虑其对水印性能的影响。由于不同的应用单位可能对地图的精度要求不同,则所设计的工具中该算法的θ角度大小是可交互调节,即精度可控,故不在此进行精度讨论;对其抗压缩性则视压缩算法而言,例如:常用的矢量图压缩的DP算法,其压缩能力也与用户预定的阈值有关。因此,在具体的水印信息嵌入应用中,交互调节θ值需既考虑地图精度,又考虑其抗压缩性,即灵活选择θ的大小,在精度范围内取偏离程度较大的值,且不大于压缩算法极限值域即可。使其在保证地图质量的前提下,最大程度的提高水印的抗压缩能力。
在此,还对θ值的大小变化对水印抗剪裁能力进一步进行定量分析。同样以上述svg地图为例,不断改变角度θ的大小,对其完整水印图及剪裁后的水印进行水印提取及相似度计算,试验结果如表3的旋转角度θ的变化对水印图检测及抗裁剪能力的影响所示。由试验结果可以看出,θ对水印最终的相似度并无明显的影响,对水印的抗裁剪能力也无明显影响。
  旋转角度θ(弧度)   裁剪前的相似度   裁剪掉的结点数   裁剪后的相似度
  0   0.99653   56158   0.94576
  0.12   0.99826   56156   0.94802
  0.24   0.99653   56154   0.94576
  0.36   0.99826   56155   0.9435
  0.48   0.99653   56155   0.94802
  0.6   0.99653   56156   0.94576
  0.72   0.99826   56158   0.95028
  0.84   0.99653   56158   0.94576
  0.96   0.99653   56159   0.9435
  1.08   0.99826   56159   0.94576
                                  表3

Claims (7)

1、一种基于曲线分割的矢量地图水印方法,其特征在于包括如下步骤:
(1)利用水印嵌入界面实现水印生成、矢量地图嵌入水印和水印提取检测;
(2)对待加水印的矢量地图进行曲线分割;
(3)根据步骤(2)分割后的矢量地图的曲线总数目,把在步骤(1)中生成的水印信息循环多次的嵌入到曲线中;
(4)对步骤(3)水印嵌入曲线的位置进行旋转;
(5)利用步骤(1)中水印提取及检测单元对含有水印信息的地图提取水印信息,计算水印的相似度,并进行相似度检测。
2、如权利要求1所述的基于曲线分割的矢量地图水印方法,其特征在于:步骤(1)中,从用户证书中取出密钥,利用密钥对个性化用户信息进行加密形成水印信息,加密算法采用RSA公钥系统,用户个性化信息为20~25个英文字母。
3、如权利要求2所述的基于曲线分割的矢量地图水印方法,其特征在于:步骤(2)中,把矢量地图看作一个曲线的集合,对所有的长曲线按照一定阈值进行分割,形成多条短曲线。
4、如权利要求3所述的基于曲线分割的矢量地图水印方法,其特征在于:用于分割曲线的阈值应由用户密钥确定。
5、如权利要求2所述的基于曲线分割的矢量地图水印方法,其特征在于:步骤(3)中,每条曲线中除了最后一个顶点的其它所有顶点的附近都嵌入一个水印点,一条曲线所有的水印点都表示同一个水印位,曲线上的第i个点为(vxk,i,vyk,i),要嵌入的水印位为b′i,嵌入水印点的坐标为(vx′k,i,vy′k,i),则(vx′k,i,vy′k,i)的计算公式如下:
dx k = ( vx k + 1 , i - vx k , i ) b &prime; i &CenterDot; &alpha; &CenterDot; p k dy k = ( vy k + 1 , i - vy k , i ) b &prime; i &CenterDot; &alpha; &CenterDot; p k
vx &prime; k , i = vx k , i + dx k vy &prime; k , i = vy k , i + dy k
其中,0<α<1,是调制幅值,pk由用户密钥确定。
6、如权利要求2所述的基于曲线分割的矢量地图水印方法,其特征在于:步骤(4)中,对水印嵌入曲线的坐标点(vx′k,i,vy′k,i)进行位置的旋转,旋转角度为θ,则计算公式如下:
vx &prime; k , i vy &prime; k , i = vx k , i vy k , i + cos &theta; - sin &theta; sin &theta; cos &theta; &CenterDot; dx k d y k
对嵌入点以前一结点为中心旋转一个小角度θ,使嵌入的水印点和原曲线的两个结点间略有偏移。
7、如权利要求2所述的基于曲线分割的矢量地图水印方法,其特征在于:步骤(5)中,①把水印地图和原始地图进行比较,按照水印嵌入算法步骤(2)进行水印图形或地图的曲线分割;
②对水印图中的水印点进行反旋转,旋转角度为θ,第i条曲线的第k个水印点为(vx′2k+1,i,vy′2k+1,i),则其反旋转的计算公式为:
dx &prime; k = vx &prime; 2 k + 1 , i - vx k , i dy &prime; k = vy &prime; 2 k + 1 , i - vy k , i
vx &prime; 2 k + 1 , i vy &prime; 2 k + 1 , i = vx k , i vy k , i + cos ( - &theta; ) - sin ( - &theta; ) sin ( - &theta; ) cos ( - &theta; ) &CenterDot; d x &prime; k d y &prime; k
③对每一条曲线Pi和P′i,分别计算其除去最后一个点后的重心坐标:
vx &prime; i &OverBar; = 1 h i &prime; - 1 &Sigma; k = 1 h i &prime; - 1 vx &prime; k vy &prime; i &OverBar; = 1 h i &prime; - 1 &Sigma; k = 1 h i &prime; - 1 vy &prime; k
vx i &OverBar; = 1 h i - 1 &Sigma; k = 1 h i - 1 vx k vy &OverBar; i = 1 h i - 1 &Sigma; k = 1 h i - 1 vy k
并对原图的每条曲线i的顶点计算以下两个量的值:
&Delta;xi = 1 2 h i - 2 &Sigma; k = 1 h i - 1 ( vx k + 1 - vx k ) &CenterDot; p k &Delta;yi = 1 2 h i - 2 &Sigma; k = 1 h i - 1 ( vy k + 1 - vy k ) &CenterDot; p k
④按照以下公式分别计算每条曲线纵横坐标的水印点:
1)Δxi≠0 && Δyi≠0
qx i = &Sigma; { i | i / c = j } vx &prime; i &OverBar; - vx i &OverBar; &Delta;xi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } vy &prime; i &OverBar; vy i &OverBar; &Delta;yi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
2)Δxi=0 && Δyi≠0
qx j = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vx k , i &OverBar; - vx k , i ( vx k + 1 , i - vx k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } vy &prime; i &OverBar; - vy i &OverBar; &Delta;yi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
3)Δxi≠0 && Δyi=0
qx j = &Sigma; { i | i / c = j } v x &prime; i &OverBar; - vx i &OverBar; &Delta;xi = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vy k , i &OverBar; - vy k , i ( vy k + 1 , i - vy k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
4)Δxi=0 && Δyi=0
qx j = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vx k , i &OverBar; - vx k , i ( vx k + 1 , i - vx k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha; qy i = &Sigma; { i | i / c = j } &Sigma; k = 1 h i - 2 vy k , i &OverBar; - vy k , i ( vy k + 1 , i - vy k , i ) &CenterDot; p k = &Sigma; { i | i / c = j } b &prime; i &CenterDot; &alpha; = c &CenterDot; b &prime; j &CenterDot; &alpha;
⑤计算每条曲线的水印信息值:
m &prime; j = 1 qx j + qy j 2 > 1 0 qx j + qy j 2 < 1
⑥对提取出的水印m’进行检测,首先计算其与原始水印信息m的相似度,公式如下:
sim = &Sigma; i = 0 n - 1 ( m i &CenterDot; m i &prime; ) &Sigma; i = 0 n - 1 m i 2 &CenterDot; &Sigma; i = 0 n - 1 m i &prime; 2
对照相似度的阈值曲线进行阈值确定,从而判断是否有水印存在。
CN2008100264057A 2008-02-22 2008-02-22 一种基于曲线分割的矢量地图水印方法 Expired - Fee Related CN101246586B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100264057A CN101246586B (zh) 2008-02-22 2008-02-22 一种基于曲线分割的矢量地图水印方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100264057A CN101246586B (zh) 2008-02-22 2008-02-22 一种基于曲线分割的矢量地图水印方法

Publications (2)

Publication Number Publication Date
CN101246586A true CN101246586A (zh) 2008-08-20
CN101246586B CN101246586B (zh) 2010-11-24

Family

ID=39947025

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100264057A Expired - Fee Related CN101246586B (zh) 2008-02-22 2008-02-22 一种基于曲线分割的矢量地图水印方法

Country Status (1)

Country Link
CN (1) CN101246586B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458810B (zh) * 2008-12-08 2010-12-01 哈尔滨工程大学 一种基于对象属性特征的矢量地图水印方法
CN101950411A (zh) * 2010-09-14 2011-01-19 湖南大学 基于轮廓小波变换和椭圆加密体制加密算法的数字水印加密系统
CN101604440B (zh) * 2009-04-23 2011-08-03 哈尔滨工程大学 基于空间特征的矢量地图可逆水印处理方法
CN102254296A (zh) * 2011-07-13 2011-11-23 南京师范大学 一种gis矢量数据图像水印的相似度计算方法
CN102054262B (zh) * 2009-11-04 2012-05-30 武汉大学 一种抵抗几何攻击的矢量地图水印方法
CN102982500A (zh) * 2012-09-28 2013-03-20 浙江工业大学 基于虚拟网格的矢量地图水印嵌入方法及检测方法
CN103049881A (zh) * 2012-12-22 2013-04-17 浙江工业大学 基于矢量地理数据结构的矢量水印攻击方法
CN103793872A (zh) * 2014-01-10 2014-05-14 浙江工业大学 基于指纹特征的抗解释攻击数字水印嵌入方法
CN103886540A (zh) * 2014-02-26 2014-06-25 浙江工业大学 椭圆型图形特征的数字指纹嵌入与检测方法
CN106097350A (zh) * 2016-06-15 2016-11-09 大连理工大学 一种链码与图论技术相结合的图像曲线提取方法
CN106599727A (zh) * 2016-12-02 2017-04-26 江苏师范大学 一种矢量地图完整性认证方法
CN106997578A (zh) * 2017-03-03 2017-08-01 浙江工业大学 一种抛物线图形特征的数字指纹嵌入与检测方法
CN107358635A (zh) * 2017-07-19 2017-11-17 辽宁工程技术大学 一种基于模糊相似性的彩色形态学图像处理方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226671B (zh) * 2013-02-05 2015-10-07 浙江工业大学 基于Agent的数字指纹远程嵌入与发布方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458810B (zh) * 2008-12-08 2010-12-01 哈尔滨工程大学 一种基于对象属性特征的矢量地图水印方法
CN101604440B (zh) * 2009-04-23 2011-08-03 哈尔滨工程大学 基于空间特征的矢量地图可逆水印处理方法
CN102054262B (zh) * 2009-11-04 2012-05-30 武汉大学 一种抵抗几何攻击的矢量地图水印方法
CN101950411A (zh) * 2010-09-14 2011-01-19 湖南大学 基于轮廓小波变换和椭圆加密体制加密算法的数字水印加密系统
CN102254296A (zh) * 2011-07-13 2011-11-23 南京师范大学 一种gis矢量数据图像水印的相似度计算方法
CN102254296B (zh) * 2011-07-13 2012-10-24 南京师范大学 一种gis矢量数据图像水印的相似度计算方法
CN102982500B (zh) * 2012-09-28 2015-08-05 浙江工业大学 基于虚拟网格的矢量地图水印嵌入方法及检测方法
CN102982500A (zh) * 2012-09-28 2013-03-20 浙江工业大学 基于虚拟网格的矢量地图水印嵌入方法及检测方法
CN103049881A (zh) * 2012-12-22 2013-04-17 浙江工业大学 基于矢量地理数据结构的矢量水印攻击方法
CN103049881B (zh) * 2012-12-22 2016-02-17 浙江工业大学 基于矢量地理数据结构的矢量水印攻击方法
CN103793872A (zh) * 2014-01-10 2014-05-14 浙江工业大学 基于指纹特征的抗解释攻击数字水印嵌入方法
CN103886540A (zh) * 2014-02-26 2014-06-25 浙江工业大学 椭圆型图形特征的数字指纹嵌入与检测方法
CN103886540B (zh) * 2014-02-26 2017-01-11 浙江工业大学 椭圆型图形特征的数字指纹嵌入与检测方法
CN106097350A (zh) * 2016-06-15 2016-11-09 大连理工大学 一种链码与图论技术相结合的图像曲线提取方法
CN106599727A (zh) * 2016-12-02 2017-04-26 江苏师范大学 一种矢量地图完整性认证方法
CN106599727B (zh) * 2016-12-02 2019-01-25 江苏师范大学 一种矢量地图完整性认证方法
CN106997578A (zh) * 2017-03-03 2017-08-01 浙江工业大学 一种抛物线图形特征的数字指纹嵌入与检测方法
CN107358635A (zh) * 2017-07-19 2017-11-17 辽宁工程技术大学 一种基于模糊相似性的彩色形态学图像处理方法
CN107358635B (zh) * 2017-07-19 2020-11-03 辽宁工程技术大学 一种基于模糊相似性的彩色形态学图像处理方法

Also Published As

Publication number Publication date
CN101246586B (zh) 2010-11-24

Similar Documents

Publication Publication Date Title
CN101246586B (zh) 一种基于曲线分割的矢量地图水印方法
Wang et al. A high capacity reversible data hiding method for 2D vector maps based on virtual coordinates
Wang et al. Reversible fragile watermarking for locating tampered blocks in 2D vector maps
Peng et al. Blind watermarking scheme for polylines in vector geo-spatial data
CN103049877B (zh) 基于顶点分布特征数字化三维模型的水印嵌入和检测方法
CN103377457B (zh) 一种矢量地理数据精确认证脆弱水印方法
Ren et al. Selective authentication algorithm based on semi-fragile watermarking for vector geographical data
CN103247017A (zh) 基于网格分割的三维网格模型非盲水印实现方法
CN104794671A (zh) 抗投影攻击的矢量空间数据盲水印方法
Ai et al. A new digital watermarking scheme for 3D triangular mesh models
Xun et al. A robust zero-watermarking algorithm for vector digital maps based on statistical characteristics
CN101533508A (zh) 三维网格模型双重数字水印方法
CN106780287A (zh) 基于矢量地理线数据组织特征的无损水印方法
CN103377455B (zh) 一种面向版权保护服务的三维地理模型数字水印方法
Jang et al. A crypto-marking method for secure vector map
Li et al. Study on copyright authentication of GIS vector data based on Zero-watermarking
Neyman et al. Reversible fragile watermarking based on difference expansion using manhattan distances for 2d vector map
CN101576993B (zh) 一种基于数据蒙板的gis矢量数据数字水印嵌入及提取方法
CN103377320B (zh) 一种矢量地理数据选择性认证半脆弱水印方法
Xun et al. A robust zero-watermarking algorithm for 2D vector digital maps
Lee et al. Vector watermarking method for digital map protection using arc length distribution
CN101533509A (zh) 盲水印的三维网格分割方法
Ren et al. A zero-watermarking scheme based on spatial topological relations for vector dataset
CN103903218B (zh) 用于公开验证所有权的鲁棒地理数据水印方法
Tao et al. Watermarking GIS data for digital map copyright protection

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101124

Termination date: 20130222