利索能及
我要发布
收藏
专利号: 2019105827598
申请人: 湖南科技大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于相对位置的矢量地理数据数字水印方法,包括以下步骤:

1)对原始二值水印图像进行预处理,生成二值水印位串;

2)对矢量空间数据集中的每个数据节点,计算其相对位置,将相对位置作为水印的嵌入域;

3)定义节点标识,根据节点标识,从水印位串中选择一个水印位,作为嵌入该节点相对位置的水印位;

4)基于量化索引水印算法将选择的水印位嵌入对应节点的相对位置中;

5)基于节点相对位置提取水印信息;

6)重构水印图像。

2.根据权利要求1所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤1)的具体步骤为:

1‑1)对图像大小为waterwidth×waterheight的二值水印图像进行置乱操作,得到置乱水印图像,waterwidth表示图像的宽度,waterheight表示图像的高度;

1‑2)对置乱水印图像按行提取像素值,得到一维水印位串:W={wi|wi∈(0,1)},(i=1,2,...,waterwidth×waterheight)。

3.根据权利要求2所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤2)的具体步骤为:

2‑1)逐一读取矢量空间数据集中的地物要素f,得到构成地物要素f的节点集合f={v1,v2,...,vn},n为f中的节点数量,vk=(xk,yk),(k=1,2,...,n),xk、yk分别为节点vk的横坐标和纵坐标;

2‑2)求出f中相距最远的两点,分别记为vfrom,vto,且有xfrom≤xto;

2‑3)记由vfrom,vto确定的直线为Lfrom,to,记f中除vfrom,vto之外的节点为vk′,过vk′向Lfrom,to作垂线,垂足记为vk′foot;

2‑4)记vfrom与vto之间的距离为dfrom,to,vfrom与vk′foot之间的距离为dfrom,k′foot,节点vk′的相对位置记为ck′,定义ck′如下:ck′即为水印位的嵌入域。

4.根据权利要求3所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤3)的具体步骤为:

3‑1)对于地物要素f,求出f中相距直线Lfrom,to最远的节点,记为vvertical,记vvertical到直线Lfrom,to的距离为dvertical;

3‑2)对于f中的节点vk,求出vk到直线Lfrom,to的距离,记为dk;

3‑3)定义中间变量idk如下式:

3‑4)定义节点标识:对于节点vk,取idk最高h有效位作为节点标识,计算公式如下:vidk=hsb(idk,h)

上式中vidk为节点vk的标识,hsb为取最高有效位截断函数,h为最高有效位位数;

3‑5)计算节点的消息验证码MAC:对于节点vk,根据下式计算其MAC:MAC(k)=H(K||H(vidk||K))上式中,H()是安全Hash函数,||是连接操作符,K是水印秘钥;

3‑6)利用每个节点对应的消息验证码,计算待嵌入节点中的水印位在水印位串中的索引号:对于节点vk,待嵌入水印位在水印位串中的索引号bitIndex(vk)如下式计算:bitIndex(vk)=MAC(k)mod(waterwidth×waterheight)上式中mod为模运算函数,记待嵌入节点vk中的水印位为 则有W为步骤1‑2)中定义的水印位串数组。

5.根据权利要求4所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤4)的具体步骤为:

4‑1)基于量化索引调制思想计算节点相对位置量化值:对于节点vk′,计算其相对位置ck′嵌入水印位 后的量化值Q(ck′),计算方法如下:上式中,t为中间临时变量,round()为取最近整数函数,Δ为量化步长,%为取余数运算符号;

4‑2)计算相对位置ck′的改变值

4‑3)计算节点vk′的xk′坐标的改变值

4‑4)计算节点vk′的yk′坐标的改变值Δyk′:

4‑5)计算嵌入水印位 后的节点坐标v′k′,v′k′=(x′k′,y′k′):经过上述步骤,即完成将水印位 嵌入节点vk′中,得到水印节点v′k′;循环对每个地物要素的每个节点嵌入相应水印位,即完成对整个矢量空间数据集添加水印。

6.根据权利要求5所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤4‑1)中,量化步长Δ的确定方法为:

4‑1‑1)记矢量空间数据集的数据精度为τ,量化步长Δ由下式确定:

7.根据权利要求6所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤5)的具体步骤为:

5‑1)定义待提取初始水印位串W′={w′i=0},(i=1,2,...,waterwidth×waterheight);

5‑2)定义一个与水印位串等长的整数序列{Bi=0},(i=1,2,...,waterwidth×waterheight);

5‑3)记加了水印的矢量空间数据集中的地物要素为f′,f′={v′1,v′2,...,v′n},n为构成f′的节点数量,v′k=(x′k,y′k)(k=1,2,...,n),为构成f′的节点;

5‑4)求出f′中相距最远的两点,分别记为v′from,v′to,且有x′from≤x′to,其中v′from,v′to中都不含水印,由v′from,v′to确定的直线为L′from,to;

5‑5)求出f′中相距直线L′from,to最远的节点,记为v′vertical,记v′vertical到直线L′from,to的距离为d′vertical;

5‑6)依序从f′的水印节点v′k′中,基于量化索引调制方法提取一个水印位,记为

5‑7)计算 在水印位串中的索引号bitIndex(v′k′);

5‑8)更新 的值:

5‑9)循环5‑3)到5‑8)的步骤,直到处理完数据集中所有的地物要素;然后对待提取水印位串W′进行如下更新:

8.根据权利要求7所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤5‑6)中,从节点v′k′中基于量化索引调制方法提取水印位 的过程如下:

5‑6‑1)过v′k′向L′from,to作垂线,垂足记为v′k′foot;

5‑6‑2)计算节点v′k′的相对位置c′k′:记v′from与v′to之间的距离为d′from,to,v′from与v′k′foot之间的距离为d′from,k′foot,节点v′k′的相对位置c′k′如下计算:

5‑6‑3)计算量化步长Δ′:

5‑6‑4)根据c′k′所在的量化区间提取出水印位 提取方法如下:上式中,/为除法取整运算符,%为取余数运算符。

9.根据权利要求8所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤5‑7)中, 在水印位串中的索引号bitIndex(v′k′)的计算步骤如下:

5‑7‑1)对于节点v′k′,求出v′k′到直线L′from,to的距离,记为d′k′;

5‑7‑2)定义中间变量id′k′如下式:

5‑7‑3)计算节点v′k′的标识:取id′k′最高h有效位作为节点标识,计算公式如下:vid′k′=hsb(id′k′,h)

上式中vid′k′为节点v′k′的标识,hsb为取最高有效位截断函数,h为最高有效位位数;

5‑7‑4)计算节点v′k′的消息验证码MAC′(k′),计算公式如下:MAC′(k′)=H(K||H(vid′k′||K))上式中,H()是一种安全Hash函数,||是连接操作符,K是水印秘钥;

5‑7‑5)计算 在水印位串中的索引号bitIndex(v′k′),计算方法如下:bitIndex(v′k′)=MAC′(k′)mod(waterwidth×waterheight)上式中mod为模运算函数。

10.根据权利要求9所述的基于相对位置的矢量地理数据数字水印方法,其特征在于,所述步骤6)的具体步骤为:

6‑1)对提取出的水印位串W′,每waterwidth个连续水印位作为一行,进行升维处理,转换成waterwidth×waterheight大小的二维二值图像;

6‑2)对步骤6‑1)生成的二值图像进行逆置乱变换,得到水印图像。