一种基于空间冗余关系的电子海图水印方法_2

文档序号:9305038阅读:来源:国知局
印序列。
[0057] 6、所述的"读取链表内节点元素,按照两个节点为一组进行分组"的步骤中,如前 所述,自头指针开始,将具有联接关系的两个相邻元素分为一组。如图3所示,每一条取线 都包含着若干由分组元素组成的微小直线。环形区域的设计同样如此。
[0058] 7、所述的水印嵌入步骤中,如图2和图3所示,根据分组元素a,b的坐标值 (xa,ya),(xb,yb),定义& 为取得中点坐标。若待嵌入的水印值为1, 则在a,b之间增加一个冗余节点(X。,y。);如果水印值为0,则跳过此步骤,不在在a,b之间 插入节点。这样既确保了水印相当容量,又减弱了对地图数据规模的过度增加。
[0059] 8、所述的构建密钥的步骤中,根据每次水印嵌入的顶点和分组情况标记顶点ID, 构建二维矩阵,存储并将其作为提取密钥保存下来。
[0060] 9、所述的提取水印的步骤中,利用密钥矩阵,得到关键顶点的链表。根据两个相邻 顶点是否存在一个中间节点,来判断提取比特值1,反之,提取比特值〇,以此类推,对提取 的水印编码重新组合。
[0061] 10、所述的水印验证相似度比较的步骤中,对于检测到的水印标识Wt由于载体地 图受到攻击,会造成部分信息位丢失,造成1与原水印W内容不一致。对此,提出一种基于 相似度的水印检测方式。
[0062]
[0063] 公式中,W为原始水印,Wt为检测出的水印。N为水印容量。
[0064] 检测阈值的取值一般在0. 6到0. 7之间,也就是0. 6彡Sim(W,Wt)彡0. 7时,满足 完整性要求,将得到的嵌入水印信息的海图文件输出。
[0065] 本发明提出的是一种基于空间冗余关系的电子海图水印方法。(1)读取电子海图 文件,读取地图顶点的空间位置关系;(2)以线、面连接关系为对象,将顶点序列存储为链 表结构;(3)扫描水印位图并将其转换为二值序列;(4)按顺序读取水印信息,当水印比特 为1时,向链表内插入前后顶点的中间值,当水印比特为〇时,则跳过;(5)记录嵌入顺序, 构建提取密钥;(6)利用密钥,提取空间关系对象内的水印编码;(7)根据二值水印序列和 水印位图的大小,生成水印位图。(8)计算检测水印与原始水印的相似程度,为版权归属及 内容完整性提供判据。本发明实现了一种无损的水印嵌入方法,很好地保持了地图空间位 置关系的完整性,适合电子海图数据的分发使用,如图4到图6所示。
[0066] 其步骤包括:
[0067] (1)读取海图文件,确定所有顶点的空间位置关系,即独立、在线上、在面上。读取 海图文件,由于海图涉及大陆坐标系和海洋坐标系的融合,节点的空间关系相对复杂。
[0068] (2)对于在线上以及围绕成环状的顶点集合,将其按照连接关系存储为链表结构。 以拓扑空间关系为对象,考虑线上的节点连接,以及区域形式的闭环连接,将具有连接关系 的节点以链表形式存储。
[0069] (3)根据水印位图信息,转换为二进制的水印字符串。将水印位图图像,转换为二 进制编码,并计算嵌入容量
[0070] (4)读取链表内节点元素,并按照两个节点为一组进行处理;结合冗余嵌入特点, 将链表内的元素,以每两个相邻的节点为一组,进行分组。
[0071] (5)对于每一个比特的水印编码,顺序提取分组对象的定义块;针对分组,获得每 个组内对象的数据块,获得坐标值。
[0072] (6)当水印值为1时,向分组对象内插入一新的元素,当水印值为0时,转入下一步 骤;采用向链表内的分组嵌入冗余对象的方式嵌入水印信息。具体做法为:
[0073] 当水印比特值为1时,在分组元素的中心位置嵌入一个冗余节点;当水印比特值 为〇时,则跳过。
[0074] 根据处理后的链表和空间关系,重新生成地图。
[0075] (7)构造可供水印提取的密钥,将水印序列依次写入载体对象内。将每次选择的分 组对象ID组合为向量,并保存为水印提取的密钥。
[0076] (8)根据提取密钥,依次读取二值水印序列。基于地图拓扑关系的不变性,根据提 取密钥,重新提取节点链表并进行分组。当存在一个节点位于分组对象的中心位置时,则水 印提取为1 ;否则提取为〇.
[0077] (9)根据读取的二值水印序列和水印位图的大小,生成水印位图,同原始水印,进 行比较和相似度计算。根据水印生成规则,转换水印序列,并通过相似度计算,获得与原始 水印的相似数据,确定水印的完整性。
【主权项】
1. 一种基于空间冗余关系的电子海图水印方法,其特征在于:包括以下步骤, 步骤一:读取海图文件,确定所有顶点的空间位置关系,顶点的空间位置关系为独立、 在线上或者在面上; 步骤二:对于在线上以及围绕成环状的顶点集合,将其按照连接关系存储为链表; 步骤三:根据水印位图信息,转换为二进制的水印字符串; 步骤四:读取链表内节点元素,并按照两个相邻节点为一组进行分组; 步骤五:对于每一个比特的水印编码,顺序提取分组,获得每个分组内对象的数据块, 进而获得坐标值,采用向链表内的分组嵌入冗余对象的方式嵌入水印信息,得到嵌入水印 信息的海图文件; 步骤六:构造可供水印提取的密钥,根据每次水印嵌入的顶点和分组情况标记顶点ID,构建二维矩阵作为提取密钥; 步骤七:根据提取密钥,依次读取二值水印序列; 步骤八:根据读取二值水印序列,得到检测水印位图,同原始水印位图进行比较,计算 相似度,如果相似度大于阈值,将步骤五中得到的嵌入水印信息的海图文件输出,如果相似 度小于阈值,不输出海图文件。2. 根据权利要求1所述的一种基于空间冗余关系的电子海图水印方法,其特征在于: 所述的对于在线上以及围绕成环状的顶点集合,将其按照连接关系存储为链表结构的方法 为: 对于任意节点Vi,Vj,若存在连接关系R,使得ViRVj成立,且V_jRVi=ViRVj,则得到链表L;= L ; U {v Vj}; 对于描述区域的连接关系Q,存在ViQvi+1Q...vi+niQvhQvi时,得到链表关系L;= L;U {v i, Vi + 1, . . . , Vi+n !, vn+1}; 若在关系R下,LinL卢①,且LinL.j=vm,LinLk=Vn,vmRvn成立,说明多条路线 之间存在公共顶点,贝定义新链表L' =1^(1 {vm,vn}; 若在Q关系下QnL,#〇,说明区域之间存在公共重叠的线路,得到新链表的连接关 系L-LjnLj〇3. 根据权利要求1所述的一种基于空间冗余关系的电子海图水印方法,其特征在于: 所述的采用向链表内的分组嵌入冗余对象的方式嵌入水印信息的方法为: 分组元素a,b的坐标值(Xa,ya),(xb,yb),取得中点坐标为:莰入的水印值为1,则在a,b之间增加一个冗余节点 (X。,y。);如果水印值为0,不在a,b之间插入节点。4. 根据权利要求1所述的一种基于空间冗余关系的电子海图水印方法,其特征在于: 所述的根据提取密钥,依次读取二值水印序列的操作为: 根据提取密钥,得到关键顶点的链表,如果两个相邻顶点中存在一个中间节点,则提取 水印比特值为1,如果两个相邻顶点中无中间节点,则提取水印比特值为〇,得到二值水印 序列。5. 根据权利要求1所述的一种基于空间冗余关系的电子海图水印方法,其特征在于: 所述的检测水印位图和原始水印位图的相似度为:其中,W为原始水印,Wt为检测出的水印,N为水印容量。
【专利摘要】本发明公开了一种基于空间冗余关系的电子海图水印方法。读取海图文件,确定所有顶点的空间位置关系;对于在线上以及围绕成环状的顶点集合,将其按照连接关系存储为链表;根据水印位图信息,转换为二进制的水印字符串;读取链表内节点元素,并按照两个相邻节点为一组进行分组;对于每一个比特的水印编码,顺序提取分组,采用向链表内的分组嵌入冗余对象的方式嵌入水印信息;构造可供水印提取的密钥;依次读取二值水印序列;根据读取二值水印序列,得到检测水印位图,同原始水印位图进行比较,计算相似度,将嵌入水印信息的海图文件输出。本发明能够保持电子海图空间拓扑关系无损,有效抵抗非法复制,维护用户版权。
【IPC分类】G06T1/00
【公开号】CN105023235
【申请号】CN201510400310
【发明人】孙建国, 李佳楠, 李博权
【申请人】哈尔滨工程大学
【公开日】2015年11月4日
【申请日】2015年7月9日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1