利索能及
我要发布
收藏
专利号: 2023106213763
申请人: 南京师范大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-08-18
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于不可见字符的高精地图水印方法,其特征在于,所述方法包括:获取地图数据中的标识符集合,表示为I=(I1,I2,I3,......Ii),i∈[1.N],N为标识符集合的长度,每个标识符包含其对应的属性值集合,表示为 n(i)为标识符Ii对应的属性值集合的长度;

基于Logistic映射对水印信息嵌入顺序进行置乱,所述映射表示为:Xn+1=f(Xn,μ)=μXn(1‑Xn)

其中,初始条件

利用映射产生的混沌序列对集合I与Ii进行置乱,置乱后的标识符集合表示为I′=(I′1,I′2,I′3,…I′i),标识符所对应的置乱后属性值集合表示为I′i=(A′1,A′2,A′3,...,A′n(i));

根据十进制字符与不可见字符的映射关系,将初始条件X0转换为不可见字符插入至数据的header标识符内容中;

在原始水印信息序列中加入水印比特对应的位置信息与校验码信息,得到复合型水印字符序列WM={wm[j],j∈[0,m‑1]},m表示水印字符序列的长度,wm[j]表示水印字符,j为水印字符的对应位置;

获取属性值集合I'中的属性值字段,基于不可见字符与比特字符和空格字符映射关系和不可见字符与十进制字符映射关系,将各个水印字符wm[j]及其索引位置信息转换为不可见字符后插入至属性值字段末尾处,直至所有标识符对应的属性值集合遍历完毕;

通过如下方法得到复合型水印字符序列:

根据标识性信息生成明文字符串,并对所述明文字符串进行编码生成二进制水印信息字符序列W,其长度为N1,则W={w[i],0≤i≤N1},w[i]表示值为0、1或空格的水印字符,i为水印字符的对应位置;

以空格为分隔符将W分成K份二进制字符串序列,存储于集合WL中,WL={WL[j],0≤j≤K},WL[j]表示单份二进制字符串序列;

遍历集合WL,对每份字符串进行海明码编码,将加入校验码后的二进制字符串集合WL转换为二进制字符序列WLStr,长度为L,则WLStr={WLStr[l],0≤l≤L},其中l表示二进制字符的对应位置,WLStr[l]值为0、1或空格;

最终复合型水印字符序列为WM,包括位置信息字符与水印信息字符;其中位置信息字符通过二进制字符的对应位置l转换为字符表示,水印信息字符通过WLStr[l]表示。

2.根据权利要求1所述的方法,其特征在于,在所有标识符对应的属性值集合遍历完毕后,所述方法还包括水印检测。

3.根据权利要求2所述的方法,其特征在于,所述水印检测具体包括:

获取头文件标识符中的初始条件X0与标识符集合I=(I1,I2,I3,......Ii),i∈[1.N],N为标识符集合的长度,其中单个标识符所对应的属性值集合为Ii=(A1,A2,A3,...An(i)),n(i)为标识符Ii对应的属性值集合的长度;

基于初始条件X0对标识符集合I进行伪随机置乱,获取符合水印嵌入顺序的标识符集合I′=(I′1,I′2,I′3,…I′i),相应置乱后的属性值集合为I′i=(A′1,A′2,A′3,...,A′n(i));

循环获取标识符属性值字段,检测属性值字段末尾是否包含指定的不可见字符:若包含不可见字符,则根据不可见字符与比特字符和空格字符映射关系和不可见字符与十进制字符映射关系,通过逆向映射将属性值字段中的不可见字符还原为水印字符片段WStr,表示为:WStr=value&index

式中&为字符串拼接操作,value值为0、1或空格,index表示由十进制数字组成的索引位置信息;

遍历完集合I'并进行升序排序,遍历完成获得水印字符片段集合,表示为WStrList=(WStr1,WStr2,WStr3,...,WStrN×n(i)),逐个分析集合中的水印字符片段,依据多数原则确定第index位的字符值;

若index位的字符值无法由多数原则确定或该index值与value值缺失,则将value赋值为0,index值由前一位已确定的位置信息进行递增,遍历完集合获得原始的复合水印字符序列WM;

按照海明码的纠错原理对WM包含的错误值进行纠错并将校验码剔除,确定最终的原始水印信息序列W。

4.一种基于不可见字符的高精地图水印装置,所述装置包括:

获取单元,被配置为获取地图数据中的标识符集合,表示为 i∈

[1.N],N为标识符集合的长度,每个标识符包含其对应的属性值集合,表示为Ii=(A1,A2,A3,...An(i)),n(i)为标识符Ii对应的属性值集合的长度;

第一置乱单元,被配置为基于映射对水印信息嵌入顺序进行置乱,所述映射表示为:Xn+1=f(Xn,μ)=μXn(1‑Xn)

其中,初始条件

第二置乱单元,被配置为利用映射产生的混沌序列对集合I与Ii进行置乱,置乱后的标识符集合表示为I=(I′1,I′2,I′3,…I′i),标识符所对应的置乱后属性值集合表示为I′i=(A′1,A′2,A′3,...,A′n(i));

第一转换单元,被配置为根据十进制字符与不可见字符的映射关系,将初始条件X0转换为不可见字符插入至数据的header标识符内容中;

序列生成单元,被配置为在原始水印信息序列中加入水印比特对应的位置信息与校验码信息,得到复合型水印字符序列WM={wm[j],j∈[0,m‑1]},m表示水印字符序列的长度,wm[j]表示水印字符,j为水印字符的对应位置;

第二转换单元,被配置为获取属性值集合I'中的属性值字段,基于不可见字符与比特字符和空格字符映射关系和不可见字符与十进制字符映射关系,将各个水印字符wm[j]及其索引位置信息转换为不可见字符后插入至属性值字段末尾处,直至所有标识符对应的属性值集合遍历完毕;

所述序列生成单元被进一步配置为:

根据标识性信息生成明文字符串,并对所述明文字符串进行编码生成二进制水印信息字符序列W,其长度为N1,则W={w[i],0≤i≤N1},w[i]表示值为0、1或空格的水印字符,i为水印字符的对应位置;

以空格为分隔符将W分成K份二进制字符串序列,存储于集合WL中,WL={WL[j],0≤j≤K},WL[j]表示单份二进制字符串序列;

遍历集合WL,对每份字符串进行海明码编码,将加入校验码后的二进制字符串集合WL转换为二进制字符序列WLStr,长度为L,则WLStr={WLStr[l],0≤l≤L},其中l表示二进制字符的对应位置,WLStr[l]值为0、1或空格;

最终复合型水印字符序列为WM,包括位置信息字符与水印信息字符;其中位置信息字符通过二进制字符的对应位置l转换为字符表示,水印信息字符通过WLStr[l]表示。

5.根据权利要求4所述的装置,其特征在于,所述装置还包括检测单元,其被配置为检测水印。

6.根据权利要求5所述的装置,其特征在于,所述检测单元被进一步配置为:获取头文件标识符中的初始条件X0与标识符集合I=(I1,I2,I3,......Ii),i∈[1.N],N为标识符集合的长度,其中单个标识符所对应的属性值集合为Ii=(A1,A2,A3,...An(i)),n(i)为标识符Ii对应的属性值集合的长度;

基于初始条件X0对标识符集合I进行伪随机置乱,获取符合水印嵌入顺序的标识符集合I′=(I′1,I′2,I′3,…I′i),相应置乱后的属性值集合为I′i=(A′1,A′2,A′3,...,A′n(i));

循环获取标识符属性值字段,检测属性值字段末尾是否包含指定的不可见字符:若包含不可见字符,则根据不可见字符与比特字符和空格字符映射关系和不可见字符与十进制字符映射关系,通过逆向映射将属性值字段中的不可见字符还原为水印字符片段WStr,表示为:WStr=value&index

式中&为字符串拼接操作,value值为0、1或空格,index表示由十进制数字组成的索引位置信息;

遍历完集合I'并进行升序排序,遍历完成获得水印字符片段集合,表示为WStrList=(WStr1,WStr2,WStr3,...,WStrN×n(i)),逐个分析集合中的水印字符片段,依据多数原则确定第index位的字符值;

若index位的字符值无法由多数原则确定或该index值与value值缺失,则将value赋值为0,index值由前一位已确定的位置信息进行递增,遍历完集合获得原始的复合水印字符序列WM;

按照海明码的纠错原理对WM包含的错误值进行纠错并将校验码剔除,确定最终的原始水印信息序列W。

7.一种存储有指令的非暂时性计算机可读存储介质,当所述指令由处理器执行时,执行根据权利要求1至3中任一项所述的方法。