2024年6月14日发(作者:)
(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(21)申请号 CN2.X
(22)申请日 2012.04.06
(71)申请人 王涛
地址 510640 广东省广州市天河区五山华南农业大学茶山区15栋401房
(72)发明人 王涛
(74)专利代理机构 广州市华学知识产权代理有限公司
代理人 杨晓松
(51)
G06T1/00
权利要求说明书 说明书 幅图
(10)申请公布号 CN 102663668 A
(43)申请公布日 2012.09.12
(54)发明名称
一种基于连续矢量图形的数字水印
系统及实现方法
(57)摘要
本发明公开了一种基于连续矢量图
形的数字水印系统及实现方法,数字水印
系统包括数字水印生成端和数字水印验证
端,数字水印生成端包括数字水印生成端
通信模块、待处理矢量图形集队列模块、
水印值码流生成模块、水印值码流序列模
块、数字水印添加模块、待发送矢量图形
集队列模块、生成端的水印数据存储器以
及时序数据生成模块;数字水印验证端包
括数字水印验证端通信模块、接收矢量图
形集队列模块、数字水印信息提取模块、
提取码流存储模块、数字水印验证模块以
及验证端的水印数据存储器。本发明具有
可在极简的矢量图形中嵌入并验证数字水
印的特点,嵌入数据量大,实现简单,可
实现多种数字水印。
法律状态
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.一种基于连续矢量图形的数字水印系统,其特征在于,包括用于向连续矢量图中
添加 数字水印数据信息的数字水印生成端WGT及用于检测连续矢
息并验证其正确性的数字水印验证
端通信
量图中添加的数字水印数据信
端WVT;其中,数字水印生成端WGT包括数字水印生成
模块CM-G、待处理矢量图形集队列模块PVL、水印值码流生成模块CG、水印值
码流 序列模块WGCL、数字水印添加模块WG、待发送矢量图形
数据存储器DG以及时序数据生成
块
集队列模块SVL、生成端的水印
模块T;数字水印验证端WVT包括数字水印验证端通信模
CM-V、接收矢量图形集队列模块RVL、数字水印信息提取模块WR、提取码流存
储模块
WRCL、数字水印验证模块WV以及验证端的水印数
据存储器DV;
所述数字水印添加模块WG分别与待处理矢量图形集队列模块PVL、水印值码流
序列模 块WGCL、待发送矢量图形集队列模块SVL、生成端
成模块T连接,数字水印的水印数据存储器DG以及时序数据生
生成端通信模块CM-G与待发送矢量图形集队列模块SVL连接,水
印值码流生成模块CG分别与生成端的水印数据存储器DG、水印值码流序
接; 列模块WGCL连
所述数字水印验证端通信模块CM-V、接收矢量图形集队列模块RVL、数字水印
信息提 取模块WR、提取码流存储模块WRCL以及数字水印
水印数据存储器DV分别与
验证模块WV依次连接,所述验证端的
数字水印信息提取模块WR、数字水印验证模块WV连接;
所述数字水印生成端通信模块CM-G,用于对添加了数字水印的连续矢量图形集进
行发
送;
所述待处理矢量图形集队列模块PVL,用于记录要添加数字水印的原连续矢量图
形集;
所述水印值码流生成模块CG,用于按照生成端的水印数据存储器DG中记录的水
印数据 信息和水印值码流生成规则来生成水印值码流,并存储
到水印值码流序列模块WGCL中;
所述水印值码流序列模块WGCL,用于存储、记录生成的水印值码流,以便将特
定的水
所述数字水印添加模块WG,用于按添加数字水印的编码规则,依次修改连续矢量
图形
所述待发送矢量图形集队列模块SVL,用于临时保存已添加了数字水印的连续矢
量图形
所述生成端的水印数据存储器DG,用于存放:(1)从水印数据生成水印码流的算法
及 相关计算参数;(2)码流嵌入数据包规则及计算参数;(3)嵌入
嵌入算法及计算参数;(6)对比矢量图形
集数据序列,准备发送;
集中一个或多个图形元素的一个或多个属性值;
印值添加到特定的连续矢量图形集中;
范围;(4)水印数据;(5)
数据包的选择方式或计算方式;
所述时序数据生成模块T,用于生成时戳或时序序号,以便将时序信息添加到连续
矢量 图形集数据序列的数字水印中去,标明矢量图形集的先后顺序
关系,防止重放攻击或篡改;
所述数字水印验证端通信模块CM-V,用于接收连续的矢量图形数据包;
所述接收矢量图形集队列模块RVL,用于存储所接收的连续的矢量图形数据包序
列;
所述数字水印信息提取模块WR,用于从接收的连续矢量图形数据包序列的图形元
素和
所述提取码流存储模块WRCL,用于存储提取出的数字水印码流数据序列;
所述数字水印验证模块WV,用于对提取的码流进行分析,验证所接收的连续的矢
量图 形数据包中所提取、分析出来的数字水印中数据信息是否与验
的水印所嵌入并最终要验证的数据
属性中提取数字水印信息;
证端的水印数据存储器DV中
信息中的数据信息一致,并输出验证结果;
所述验证端的水印数据存储器DV,存放内容与生成端的水印数据存储器DG存放
内容一
2.根据权利要求1所述的基于连续矢量图形的数字水印系统,其特征在于,所述数
字水 印生成端WGT还包括与待发送矢量图形集队列模块SVL连
输出模块O,用于将已添加了数字
致。
接的带水印的连续矢量图形文件
水印的连续矢量图形集数据存储到一个存储文件中。
3.一种基于权利要求1所述基于连续矢量图形的数字水印系统的基于连续矢量图形
的数
字水印实现方法,其特征在于,包括以下步骤:
S1、数字水印生成端与数字水印验证端知识交换:在一次通信前,确定嵌入范围、
码流 嵌入数据包规则及嵌入算法,并在数字水印生成端和数字水印
共享; 验证端之间进行协商、交换和
S2、在数字水印生成端,准备连续矢量图形集数据包序列;
S3、在数字水印生成端,确定传输的水印数据,并根据它来按由生成端和验证端
商定的
S4、在数字水印生成端,在矢量图形数据包中按码流嵌入数据包规则嵌入数字水
印码流 数据:对连续矢量图形数据包序列中当前要嵌入水印的
包规则,在数字水印码流选
参数和商定的算法生成水印码流;
矢量图形数据包,按照码流嵌入数据
择码流中的片段或片段的组合,再按照嵌入范围与嵌入算法,修
改该数据包中一个或多个图形元素的一个或多个属性,将数字水印码流数据
哪些码流数据嵌入哪些矢量图形数据包、嵌入哪
证端商定的参数和商
或数据片段嵌入;
些属性、修改属性的方式,均由生成端和验
定的算法计算来确定,所述属性包括图形属性和矢量包发送时间属性;
S5、在数字水印生成端,在每个矢量图形数据包的发送时序数据所标示时刻,发
送带有
S6、在数字水印验证端,接收带有数字水印部分或全部信息的连续矢量图形数据
包;
S7、在数字水印验证端,提取连续矢量图形数据包中属性上的变化值,计算嵌入
的码流 数据:根据当前接收到的矢量图形数据包,跟之前收到
数字水印部分或全部信息的矢量图形数据包;
的矢量图形数据包或之前收到的多个 矢量图形数据包的统计值对
比,提取连续矢量图形数据包中属性上的变化值,计算数字水印
码流数据;
S8、在数字水印验证端,通过汇总收到的数字水印嵌入码流,提取水印数据;
S9、在数字水印验证端,验证计算出来的水印数据,从而验证所接收的连续矢量
图形数
4.根据权利要求3所述的实现方法,其特征在于:所述S2中的连续矢量图形集数
据包 序列包括一系列单个的矢量图形数据包;每个矢量图形数据包
据包序列是否携带了数字水印生成端嵌入数字水印。
包括以下数据:
(1)、矢量图形数据包的描述数据;
(2)、矢量图形数据包的发送时序数据;
(3)、矢量图形数据包的矢量图形内容。
5.根据权利要求3所述的实现方法,其特征在于:所述S3、S4中,将时间信息、
校验
信息加入码流生成算法中、嵌入位置确定中和嵌入内容中。
6.根据权利要求3所述的实现方法,其特征在于:所述S3、S4中,在生成并添加
数字 水印时,使用参数来控制生成的水印码流数据和在连续矢量图
的变化来使数字水印及其嵌入发生
来正确
形数据包中的嵌入,通过参数
可控变化;所述S7、S8中,在验证数字水印时,通过参数
提取和验证数字水印数据。
7.根据权利要求3所述的实现方法,其特征在于:所述S3中,所生成的数字水印
码流 分散嵌入矢量图形数据包序列中的不同矢量图形数据包中,或
码流嵌入一个矢量图形数据包中。者组合几个水印码流或将全部
8.根据权利要求3所述的实现方法,其特征在于:所述S4中,在连续矢量图形数
据包
(1)、在将矢量图形数据包序列中的所有单个矢量图形数据包中均加入数字水印码
流数 据后,再依次一个个发送矢量图形数据包,或将所有数据包放
序列中嵌入数字水印码流的方式有两种:
入一个文件;
(2)、在一个矢量图形数据包中嵌入数字水印码流数据后发送,随后再进行后续一
个矢
量图形数据包的数字水印嵌入并发送。
9.根据权利要求3所述的实现方法,其特征在于:所述S4中,在连续矢量图形数
据包 序列中的一个或多个矢量图形元素的一个或多个图形属性中嵌
或者在连续矢量图形数据包序列中
入一组或多组数字水印数据,
各单个矢量图形数据包的发送时间上嵌入数字水印数据。
说 明 书
技术领域
本发明属于一种应用于在计算机信息安全、网络通信鉴别与认证、数字版权保护和
管理 的实现数字水印的系统和方法,特别是涉及一种在连续矢量图形中实
法。 现数字水印的系统和方
背景技术
数字水印(Digital Watermarking)技术是将一些标识信息(即数字水印)直接嵌入数字
载体 当中(包括多媒体、文档、软件等)或是数据的间接表示(修改特定区域
体的使用价值,也不容易被探知和再次修改,但
方)识别和辨认。通过这些
隐秘信
的结构),且不影响原载
可以被水印生产方(或与生产方合作的其它
隐藏在载体中的信息,可以达到确认内容创建者、购买者、传送
息或者判断载体是否被篡改等目的。数字水印是信息隐藏技术的一个重要研究方向。
数字水印是实现来源鉴别和版权保护的有效办法,是信息隐藏技术研
究领域的重要分支。
在一个完整的数字水印系统中:有一个或以上的数字水印生成端,负责在原数据或
称载 体数据中秘密地或公开地添加数据水印数据;有一个或以上的数字水
有数字水印数据的载体数据后,将数字水印数据
数据正确性、合法性和来源
印验证端,在接收了含
从载体数据中提取/分离出来,并对数字水印
进行鉴别,实现数字水印的作用。
数字水印技术基本上具有下面几个方面的特点:
1、安全性:数字水印的信息应是安全的,难以篡改和伪造,同时,应当有较低的
误检测 率,当原内容发生变化时,数字水印应当发生变化,从而可以
检测原始数据的变更。
2、水印可见性/隐蔽性:根据应用需要,数字水印可以是可见的、明显的,也可以
是不 可知觉的。对不可见水印,应不影响被保护数据的正常使用;不会严
用。 重影响载体的质量和使
3、鲁棒性(也称健壮性):是指在经历无意或有意的信号处理过程后,数字水印仍
能保
4、水印容量:是指载体在不发生形变的前提下可嵌入的水印信息量。
目前的数字水印主要是添加在点阵图像中(如添加到图片、视频中的数字水印和数
字印
矢量图(vector graphics)是指以特定图形类型(如点、线、圆、圆锥体等)及绘图参数
(如 坐标、线宽、色彩值等)描述一个图形或
单一矢量图形组成的
章)。近年来对矢量图中添加数字水印也逐渐进行了研究。
持信息完整性并能被准确鉴别。但鲁棒性不是数字水印的必须要求。
图形图像区域的可视特性的图形数据形式,或多个
复合矢量图形—如矢量字形。例如,一个二维环形,只需要描述其圆心、
外环半径、内环半径、颜色、边缘线型、线宽及边缘颜色,就可以将其绘制
球体,只需要描述其球心坐标、球半径、球颜色、球面
出来;一个三维
反光度/透明度。
一个矢量图中会包含多个图形元素(primitive),图形元素即是点、线、圆、圆锥体
等二维 或三维的、具有单一绘图规则或算法的绘图单元。多个图形元
一个中国国旗的矢量图,就由一个红底矩
素共同组成复合图形。例如,
形和5个不同位置和大小的黄色正五角星形组成。
矢量图形(包括矢量字形)目前广泛应用在工程制图、三维立体模型和相关的数字媒
体 艺术作品、网络矢量图(如SVG格式的网络矢量图)、地理信息系统/
图,未来还将在计算机远程屏幕输出和展现方面空间信息系统、数字地
有进一步应用。
随着矢量图形在计算机和通信领域的广泛应用,在矢量图形中加入数字水印就有了
需求 和技术实现方案。但由于描述矢量图形所需的数据量极小,这个优点
难以在极少量的矢量图形数据中添加数字水印而
点);无法提供足够的数据冗余量
反而带来的两个缺点:
不被发现(数字水印的隐蔽性是其常用特
来保护数字水印数据不会被篡改和伪造。
因此,近年来出现的给矢量图形添加数字水印的技术方案,都是基于较大的矢量图
形数 据量才能实现数字水印的嵌入(如现有矢量图水印方案都是针对矢量
大量矢量图形元素的矢量图)。 地图、矢量工程图等有
目前的文献和专利中,都没有很好的解决在极少量的矢量图形数据中添加数字水印
而不
美国专利(US Patent 7644281)公开了一种对文本或矢量图文档加水印的方法和装置。
它的原理是对字符或矢量图形的灰度或颜色进行调整,所公开的方法
合同、技术或商业文档进行保护,可以用在任何
贝保护、鉴别和时戳证明;
档中嵌
被发现的这个技术问题:
可适用于对安全文档、
物理支持件、纸张或塑料上;它可以用在拷
最后它可以用在其它非安全相关的应用中,例如文档追踪,或文
入警告或其它基于数字水印的自动处理。但该方案是针对静态矢量图形,且无法对
极 简的矢量图(例如只有一个矢量图形元素,如一个圆或一个矩形)添加
数字水印。
中国专利(申请号2.7、2.7、2.5、
2.5、 2.2、2.6、2.8、
2.4、2.4、
开了几种面向空间/
2.5、2.8、
2.X、2.3、2.5)公
地理信息数据的矢量图数字水印方法,主要的方法是基于顶点、统计灰度
等属性的修改,但这些专利均为面向静态矢量图形的方法,且嵌入的数据量
简的矢量图(例如只有一个矢量图形元素,如一个圆或
较小,无法对极
一个矩形)添加数字水印。
中国专利(申请号CN2.9)公开了一种基于运动矢量的视频水印嵌入和
提取 方法,水印嵌入步骤为:步骤a,在编码
步骤b,根据所述编时,获取编码端视频帧的第i个运动矢量(Xi,Yi);
码端运动矢量(Xi,Yi)横坐标Xi与纵坐标Yi的小数部分的组合关系,获
取所述编码端运动矢量(Xi,Yi)的特征向量(V1i,V2i);步骤c,按照修改
端运动矢量(Xi,Yi)的横坐标Xi或纵坐标Yi,使得所
的横坐标V1i、纵坐标V2i与将要
d,在解码时,
规则调整所述编码
述编码端运动矢量的特征向量(V1i,V2i)
嵌入的两位水印Wk,Wk+1相同;水印提取步骤为:步骤
获取解码端视频帧的第i个运动矢量(Xi,Yi);步骤e,根据所述解码端运动矢
量(Xi,Yi)横坐标Xi与纵坐标Yi的小数部分的组合关系,获取所述解码端
的特征向量(V1i,V2i);步骤f,提取运动矢量(Xi,Yi)
分别为解码端运动矢量(Xi,Yi)的
方法,是以特
运动矢量(Xi,Yi)
中的水印信息,两位水印Wk,Wk+1
特征向量(V1i,V2i)的横坐标V1i,纵坐标V2i。所公开的
定的运行矢量(原文中的“第i个运动矢量”)作为嵌入水印数据的对象,且水
印数据的嵌入并没有与连续矢量图的时序相关,嵌入时没有将嵌入的水印数
嵌入到连续多个矢量图形数据中。 据编制成码流并
中国专利(申请号CN2.4)公开一种信息安全技术领域的基于H.264标准
运 动矢量的脆弱性水印嵌入和提取方法,在I帧前一个P帧的运动矢量
息,水印容量大并且保真度高;水印信息包含帧中选择性地嵌入水印信
号和时间戳,并使用对称密码算法加密,使 其具有抗攻击性并可在一定
足之处精度上定位视频的篡改,且对视频编码比特率影响很小。但其不
包括:应用范围限定于对基于H.264的视频数据中实现脆弱性水印嵌入和提取方法,
且仅能实现脆弱性水印;该发明是在视频编码中的附加信息嵌入水印,
矢量图形数据;其水印机制不是针对连续矢量图
字水印的。
保护的视频帧而不是
形中嵌入连续码流、由完整的码流来传输数
类似的还有中国专利(申请号为CN2.3的一种基于H.264运动矢量的视
频水 印嵌入提取方法、申请号为CN2.5的基于MPEG-2标准
法以及申请号为CN2.9的基于
特定视频压缩标准的
的实时数字视频水印方
H.264标准的实时数字视频水印方法),都是基于
数字水印实现方法,也均为在视频标准中视频编码中的附加信息中嵌入
现有的对单张矢量图形的数字水印实现方案还有一个缺点:目前的矢量图形的数字
水印 实现方案主要是基于坐标修改的,这种方法很容易造成原图的变形和
图的显示效果受到影响,另一方面也很容易暴露
是由于矢量图的数据量太少,
去嵌入
数字水印数据。
失真。这一方面导致原
嵌入到矢量图中的数字水印。究其原因,仍
除了在坐标中进行修改外,难以再在其它方面找到足够的空间
水印数据。
这种情况导致了矢量图形的数字水印难以实现并应用在计算机领域、网络通信领域、
信
发明内容
本发明的首要目的在于克服现有技术在矢量图形添加数字水印方面的缺点和不足,
提出 了一种基于连续矢量图形的数字水印系统,该方法通过在连续矢量图
息安全和数字媒体艺术产品版权保护等领域。
形中进行矢量图形参数 的连续变化来嵌入编码码流,通过嵌入连续矢量
字水印数据分布在码流中各
印,是
图中的连续码流数据来携带数字水印信息(数
单个编码值之中),实现了在极少量的矢量图形数据中添加数字水
对传统矢量图形数字水印方案与相关系统的革新,是对计算机图形图像技术、信息
安
本发明的另一目的是提供一种基于连续矢量图形的数字水印实现方法,实现了在极
少量
本发明通过下述技术方案实现上述首要目的:一种基于连续矢量图形的数字水印系
统, 其特征在于,包括用于向连续矢量图中添加数字水印数据信息的数字
于检测连续矢量图中添加的数字水印数据信息并
中,数字水印生成端WGT
PVL、
的矢量图形数据中添加数字水印。
全技术、矢量图形数字版权保护在理论和应用方面的创新。
水印生成端WGT及用
验证其正确性的数字水印验证端WVT;其
包括数字水印生成端通信模块CM-G、待处理矢量图形集队列模块
水印值码流生成模块CG、水印值码流序列模块WGCL、数字水印添加模块WG、
待发 送矢量图形集队列模块SVL、生成端的水印数据存储器DG以及时
水印验证端WVT包括数字水印验证端通信模块
字水印信息提取模块WR、
水印数
序数据生成模块T;数字
CM-V、接收矢量图形集队列模块RVL、数
提取码流存储模块WRCL、数字水印验证模块WV以及验证端的
据存储器DV;
所述数字水印添加模块WG分别与待处理矢量图形集队列模块PVL、水印值码流
序列模 块WGCL、待发送矢量图形集队列模块SVL、生成端的水印
成模块T连接,数字水印生成端通信模
印值码流生成模块
数据存储器DG以及时序数据生
块CM-G与待发送矢量图形集队列模块SVL连接,水
CG分别与生成端的水印数据存储器DG、水印值码流序列模块WGCL连
接;
所述数字水印验证端通信模块CM-V、接收矢量图形集队列模块RVL、数字水印
信息提 取模块WR、提取码流存储模块WRCL以及数字水印验证模
水印数据存储器DV分别与数字水印信息
块WV依次连接,所述验证端的
提取模块WR、数字水印验证模块WV连接;
所述数字水印生成端通信模块CM-G,用于对添加了数字水印的连续矢量图形集进
行发
所述待处理矢量图形集队列模块PVL,用于记录要添加数字水印的原连续矢量图
形集;
所述水印值码流生成模块CG,用于按照生成端的水印数据存储器DG中记录的水
印数据 信息和水印值码流生成规则来生成水印值码流,并存储到水印
送;
值码流序列模块WGCL中;
所述水印值码流序列模块WGCL,用于存储、记录生成的水印值码流,以便将特
定的水
所述数字水印添加模块WG,用于按添加数字水印的编码规则,依次修改连续矢量
图形
所述待发送矢量图形集队列模块SVL,用于临时保存已添加了数字水印的连续矢
量图形
所述生成端的水印数据存储器DG,用于存放:(1)从水印数据生成水印码流的算法
及 相关计算参数;(2)码流嵌入数据包规则及计算参数;(3)嵌入范围;
嵌入算法及计算参数;(6)对比矢量图形数据包的选择
集数据序列,准备发送;
集中一个或多个图形元素的一个或多个属性值;
印值添加到特定的连续矢量图形集中;
(4)水印数据;(5)
方式或计算方式;
所述时序数据生成模块T,用于生成时戳或时序序号,以便将时序信息添加到连续
矢量 图形集数据序列的数字水印中去,标明矢量图形集的先后顺序关系,
防止重放攻击或篡改;
所述数字水印验证端通信模块CM-V,用于接收连续的矢量图形数据包;
所述接收矢量图形集队列模块RVL,用于存储所接收的连续的矢量图形数据包序
列;
所述数字水印信息提取模块WR,用于从接收的连续矢量图形数据包序列的图形元
素和
所述提取码流存储模块WRCL,用于存储提取出的数字水印码流数据序列;
所述数字水印验证模块WV,用于对提取的码流进行分析,验证所接收的连续的矢
量图 形数据包中所提取、分析出来的数字水印中数据信息是否与验证端的
的水印所嵌入并最终要验证的数据信息中的数据
属性中提取数字水印信息;
水印数据存储器DV中
信息一致,并输出验证结果;
所述验证端的水印数据存储器DV,存放内容与生成端的水印数据存储器DG存放
内容一
优选地,所述数字水印生成端WGT还包括与待发送矢量图形集队列模块SVL连
接的带 水印的连续矢量图形文件输出模块O,用于将已添加了数字水
到一个存储文件中。
致。
印的连续矢量图形集数据存储
本发明通过下述技术方案实现上述另一目的:一种基于连续矢量图形的数字水印实
现方
法,包括以下步骤:
S1、数字水印生成端与数字水印验证端知识交换:在一次通信前,确定嵌入范围、
码流 嵌入数据包规则及嵌入算法,并在数字水印生成端和数字水印验证端
共享; 之间进行协商、交换和
S2、在数字水印生成端,准备连续矢量图形集数据包序列;
S3、在数字水印生成端,确定传输的水印数据,并根据它来按由生成端和验证端
商定的
S4、在数字水印生成端,在矢量图形数据包中按码流嵌入数据包规则嵌入数字水
印码流 数据:对连续矢量图形数据包序列中当前要嵌入水印的矢量图
包规则,在数字水印码流选择码流中的片
改该数据包中一个或
参数和商定的算法生成水印码流;
形数据包,按照码流嵌入数据
段或片段的组合,再按照嵌入范围与嵌入算法,修
多个图形元素的一个或多个属性,将数字水印码流数据或数据片段嵌入;
哪些码流数据嵌入哪些矢量图形数据包、嵌入哪些属性(包括图形属性和矢
性)、修改属性的方式,均由生成端和验证端商定的参
量包发送时间属
数和商定的算法计算来确定。
S5、在数字水印生成端,在每个矢量图形数据包的发送时序数据所标示时刻,发
送带有
S6、在数字水印验证端,接收带有数字水印部分或全部信息的连续矢量图形数据
包;
S7、在数字水印验证端,提取连续矢量图形数据包中属性上的变化值,计算嵌入
数字水印部分或全部信息的矢量图形数据包;
的码流 数据:根据当前接收到的矢量图形数据包,跟之前收到的矢量
矢量图形数据包的统计值对比,提取连续
码流数据;
图形数据包或之前收到的多个
矢量图形数据包中属性上的变化值,计算数字水印
S8、在数字水印验证端,通过汇总收到的数字水印嵌入码流,提取水印数据;
S9、在数字水印验证端,验证计算出来的水印数据,从而验证所接收的连续矢量
图形数
优选地,所述S2中的连续矢量图形集数据包序列包括一系列单个的矢量图形数据
包;每
(1)、矢量图形数据包的描述数据;
(2)、矢量图形数据包的发送时序数据;
(3)、矢量图形数据包的矢量图形内容。
优选地,所述S3、S4中,可将时间信息、校验信息加入码流生成算法中、嵌入位
置确定
优选地,所述S3、S4中,在生成并添加数字水印时,使用参数来控制生成的水印
码流数 据和在连续矢量图形数据包中的嵌入,通过参数的变化来使数
所述S7、S8中,在验证数字水印时,通
中和嵌入内容中,以实现数字水印防攻击和保护。
个矢量图形数据包包括以下数据:
据包序列是否携带了数字水印生成端嵌入数字水印。
字水印及其嵌入发生可控变化;
过参数来正确提取和验证数字水印数据。
优选地,所述S3中,所生成的数字水印码流分散嵌入矢量图形数据包序列中的不
同矢量 图形数据包中,或者组合几个水印码流或将全部码流嵌入一个
矢量图形数据包中。
优选地,所述S4中,在连续矢量图形数据包序列中嵌入数字水印码流的方式有两
种:
(1)、在将矢量图形数据包序列中的所有单个矢量图形数据包中均加入数字水印码
流数
文件;
(2)、在一个矢量图形数据包中嵌入数字水印码流数据后发送,随后再进行后续一
个矢
优选地,所述S4中,在连续矢量图形数据包序列中的一个或多个矢量图形元素的
一个或 多个图形属性中嵌入一组或多组数字水印数据,或者在连续矢
量图形数据包的发送时间上嵌入数字水印
量图形数据包的数字水印嵌入并发送。
据后,再依次一个个发送矢量图形数据包,或将所有数据包放入一个
量图形数据包序列中各单个矢
数据。
本发明的作用原理是:本发明认为,在单张的矢量图形下嵌入数字水印,如果所包
含的 矢量图形数目少、总数据量小,难以嵌入数字水印;通过坐标修改来
致原矢量图形失真。而在连续矢量图的情况下,
在某个或多个图形属性(颜
数据。
嵌入的数字水印容易导
可以利用连续矢量图中特定或全部矢量图形
色、坐标、改变时间等)上的同步或异步变化,来嵌入数字水印
通过连续矢量图形中属性的变化值来嵌入水印、通过变化值来验证水印,是本发明
的
本发明认为,基于传统的、单张的矢量图形的数字水印实现方法,难以嵌入大量的
水印 数据,使用受到较大限制,而基于连续矢量图形的数字水印实现方法,
式,可以适应极少的矢量图形数据的应用情形,
原理核心。
是一种更有优势的方
从而使数字水印技术可以在矢量图形领域得
到进一步应用。
本发明与现有技术相比,具有如下优点和有益效果:
第一、可在极简的矢量图中嵌入并验证数字水印:这是目前的矢量图形数字水印方
法所 无法实现的。本发明所公开的系统和方法,对即使只有一个矢量图形
个像素点)的矢量图,也可以通过对其颜色进行
值上按编码分别进行相应的
端验证
元素(例如一个圆或一
的连续细微改变(如红色、蓝色或绿色色彩
加1、减1)来在数字水印生成端嵌入数字水印、在数字水印验证
数字水印。
第二、嵌入数据量大。对一个图形元素,可以分别在颜色、坐标等属性以及这些属
性的 改变时间上嵌入数据。而图形元素越多,则嵌入的数据量就成倍的增
使得实现多种数字水印成为可能。 加。嵌入的数据量丰富,
第三、可以实现多种类型的数字水印:由于可以利用连续矢量图中特定或全部矢量
图形 在某个或多个图形属性(颜色、坐标、改变时间等)上的同步或异步变
据,因此可以实现可见水印、不可见水印、脆弱
其中:可见水印可以通过对
不可见
化来嵌入数字水印数
性水印、健壮性水印等各种类型的数字水印。
可见属性(如颜色、坐标)随着时间序列进行大比例修改来实现;
水印可以通过随着时间序列对不可见属性的修改或对可见属性的细微修改来实现;
脆 弱性水印可以通过在矢量图形中所有图形元素的嵌入同一保密数据或
实现(这样,攻击者无论修改哪个属性的哪次取
互相印证的保密数据来
值都会被发现,从而达到脆弱性水印的效果);
健壮性水印可以通过在矢量图形中多个图形元素的嵌入冗余的或互相印证的
(这样,攻击者改了一处,仍然可以从其它图形元素的
达到健壮性水印的效果)。其它类
保密数据来实现
变化中提取出原来的水印信息,从而
型或需求的数字水印,也可以得到实现。
第四、实现简易性:本发明公开的基于连续矢量图形的数字水印实现方法及系统,
其原 理十分简单,是利用时间序列下对属性值变化序列的修改和提取来完
证,无论用软件还是硬件来实现都是十分简单的。成数字水印的嵌入和验
第五、在计算机和通信领域的广泛适用性:由于本发明所提出的方案,可以在计算
机软 件、硬件中实现,因此可以在计算机、网络通信和无线通信、数字电
分布式计算等领域进行实现和使用。 视、移动计算、云计算、
第六、安全性:本方法可以通过嵌入保密信息来实现防篡改功能、通过嵌入时刻信
息和 时序信息来实现防重防攻击,因此具有较高的安全性。又由于本发明
多个矢量图形元素的属性嵌入冗余的数据(一个
形成互相验证、互相保护的
嵌入数据量大,可以在
数据的多个副本或多个不同形式的校验值),
体系,增强保护性。
第七、兼容性:如果修改的是矢量图中多个矢量图形元素的多个坐标值,且不进行
连续 矢量属性的改变,则本发明所公开的数字水印方法就是现有的静态矢
数字水印算法。 量地图、矢量工程图的
附图说明
图1是本发明一种基于连续矢量图形的数字水印系统的结构方框图;
图2是本发明一种基于连续矢量图形的数字水印实现方法的流程图;
图3是本发明一种基于连续矢量图形的数字水印实现方法中数字水印生成端处理过
程的
框架结构图;
图4是本发明一种基于连续矢量图形的数字水印实现方法中数字水印验证端处理过
程的
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限
于此。
本发明实现了基于连续矢量图形的数字水印系统,如图1所示,包括用于向连续矢
量图 中添加数字水印数据信息的数字水印生成端WGT及用于检测连续矢
数据信息并验证其正确性的数字水印验证端
印生成端通信模块
框架结构图。
量图中添加的数字水印
WVT;其中,数字水印生成端WGT包括数字水
CM-G、待处理矢量图形集队列模块PVL、水印值码流生成模块CG、水印
值码流序列模块WGCL、数字水印添加模块WG、待发送矢量图形集队列
的水印数据存储器DG以及
通信模
模块SVL、生成端
时序数据生成模块T;数字水印验证端WVT包括数字水印验证端
块CM-V、接收矢量图形集队列模块RVL、数字水印信息提取模块WR、提取码流
存 储模块WRCL、数字水印验证模块WV以及验证端的水印数据存储
器DV。
所述数字水印生成端通信模块CM-G,用于对添加了数字水印的连续矢量图形集进
行发 送;所述待处理矢量图形集队列模块PVL,用于记录要添加数字水
所述水印值码流生成模块CG,用于按照生成端
和水印值码流生成规则来生
印值码
印的原连续矢量图形集;
的水印数据存储器DG中记录的水印数据信息
成水印值码流,并存储到水印值码流序列模块WGCL中;所述水
流序列模块WGCL,用于存储、记录生成的水印值码流(code stream),以便将特定
的
水印值添加到对应的连续矢量图形集中。
所述数字水印添加模块WG,用于按添加数字水印的编码(encode)规则,依次修改
连续矢 量图形集中一个或多个图形元素的一个或多个属性值。所述待
用于临时保存已添加了数字水印的连续矢
发送矢量图形集队列模块SVL,
量图形集数据序列,准备发送。
所述生成端的水印数据存储器DG,用于存放:(1)从水印数据生成水印码流的算法
及 相关计算参数;(2)码流嵌入数据包规则及计算参数;(3)嵌入范围;
嵌入算法及计算参数;(6)对比矢量图形数据包的选择
(4)水印数据;(5)
方式或计算方式。
所述时序数据生成模块T,用于生成时戳(time stamp,是用于标明时刻和时序关系
的一种 数据)或时序序号,以便按照本发明数字水印实现方法中数字
数据序列的数字水印中去,标明矢量图形
水印算法添加到连续矢量图形集
集的先后顺序关系,防止重放攻击或篡改。
所述数字水印验证端通信模块CM-V,用于接收数字水印生成端通信模块CM-G发
送的 连续的矢量图形数据包;所述接收矢量图形集队列模块RVL,用于
图形数据包序列;所述数字水印信息提取模块
形数据包序列中商定的图形
用于存
存储所接收的连续的矢量
WR,用于以商定的形式从接收的连续矢量图
元素和属性中提取数字水印信息;所述提取码流存储模块WRCL,
储提取出的数字水印码流数据序列;所述数字水印验证模块WV,用于对提取的码
流 进行分析,验证所接收的连续的矢量图形数据包中所提取、分析出来
是否与验证端的水印数据存储器DV中的“水印
息”一致,并输出验证结果。
数据存储器
的数字水印中数据信息
所嵌入并最终要验证的数据信息中的数据信
所述验证端的水印数据存储器DV,存放内容与生成端的水印
DG模块所存放内容一致。
在本实施例中,数字水印生成端还包括带水印的连续矢量图形文件输出模块O,用
于将 已添加了数字水印的连续矢量图形集数据存储到一个存储文件中,以
证。带水印的连续矢量图形文件输出模块O为
的应用场景(例如带水印的
便以后再进行播放和验
可选部件,适合于生成带水印的矢量图形作品
二维/三维动画源文件等)。
上述数字水印生成端和数字水印验证端均可以作为一个独立系统,也可以作为其它
系统
的组成部分而存在;无论哪种,均不应破
坏对本发明的保护。
上述各模块的处理功能,可以用软件、硬件、固件、可编程芯片等方式实现,如果
用固 件中的微程序来实现,则另外需要一个模块或部件来执行这些微程序
的“DSP芯片”)。 (如下面实施例中所说
由于是利用连续矢量图形来传输数字水印,因此本方案无法用在静态的矢量图形内
容(包 括无法用到以打印、喷涂等形式对矢量图形进行物理处理后获得的产
入和验证。 物)上进行数字水印嵌
下面以下述实施例,详细说明应用上述系统实现的具体过程,流程如图2所示:
(在下面的实施例描述中,未加水印的矢量图形数据包内容用v表示,而已加水印
的用
实施例1
本实施例描述本发明最简单的实施方式,即矢量图中只有一个圆的情况下的实施方
式,
S1、数字水印生成端与数字水印验证端知识交换:在一次通信前,确定嵌入范围
包括以下步骤:
v′表示)
与嵌入 规则、嵌入算法等数字水印,并在数字水印的生成端和数字水
换和共享信息。 印的验证端之间进行协商、交
S2、在数字水印生成端,准备连续矢量图形集数据序列(即未加水印的序列);
连续矢量图形集数据包序列包括一系列单个的矢量图形数据包。每个矢量图形数据
包应
(1)、矢量图形数据包的描述数据:如序列号、来源等;
(2)、本矢量图形数据包的发送时序数据:这个数据表明本矢量图形数据包的发送
时间
(3)、本矢量图形数据包的矢量图形内容:这是一个列表数据,包括本矢量图形数
据包
形参数。
数字水印嵌入主要是在(2)“发送时序数据”及(3)中“矢量图形参数”中进行修改来
实现嵌入。在实施中,并不要求在发送第一个矢量图形数据包之前,就将所
图形数据包都准备好或生成好;矢量图形数据包可以是
的。
中的一个或多个图形元素的相关参数,包括:矢量图形类型、矢量图
或时序(在第几位发送);
包括以下数据:
有要发送的矢量
不断出现、不断添加水印、不断发送
在本实施例中,从数字水印的生成端要传输的、原始的连续矢量图数据包序列为V
= {v1,v2,...,vi},其中i∈N,
N为自然数集合。
本实施例中,对所有
从上述内容可知,连续矢量图形数据包序列的播放内容是一个不断向右移动的、颜
色为
S3、如图3所示,在数字水印生成端,确定传输的水印数据,并根据水印数据生
成水印
在步骤S3中,从水印数据生成水印码流的算法为:按“水印数据各分量值-临时参
数值= 水印码流分量”,并在每个码流分量后加一个校验值进入码流
方);相应的,从水印码流计算水印数据
流,对这4个码流按
码流;
RGB(182,38,231)的圆形。
(校验值为每个码流分量值的平
的算法为:在计算中的码流中取第1、3、5、7个码
以下算法计算:水印码流分量+临时参数值=原水印数据分量。本实施例
中,在数字水印的生成端要嵌入连续矢量图形中传输的数据为m=(3,4,1,
过程中有使用临时参数,临时参数值3),计算水印码流的
keysession=2,所获得的最终码流为(c1,c2,
c3,c4,c5,c6,c7,
水印数据是指要从生成端通过数字水印传输到验证端的完整的信息或数据。水印码
流是 指:将原来要进行嵌入的、完整的水印数据,按一定算法转换生成的
码流是分散在连续矢量图形中各个帧中,是对连
是水印数据的载体。如果嵌
印数据。
c8)=(-1,1,-2,4,1,1,-1,1)。
码流(code stream),这个
续矢量图形数据包中属性的修改值或变化值,
入的水印数据比较简单,则可以不编制水印码流而直接嵌入该水
例如:要传输的是水印数据是29,在嵌入和传输水印的过程中,不是直接传输29,
而是 传输29的二进制数(29十进制=11101二进制)
在连续矢量图形序列对某个图形元素原来没有改变 的颜色值进行微小修
改,使其连续两个帧中的颜色变化值为(11101),如可以将原来颜色为
RGB(232,122,49)的图形颜色中绿色(G)连续改变成(122,123,124,125,
这个连续序列中变化值就嵌入了11101的码流。 125,126),
在生成码流的算法中,可以加入时间信息、校验信息,从而提高数字水印的安全性、
可
从水印数据生成水印码流的过程中,可以使用计算参数来使计算结果出现可控变化
(类 似加密过程中的密钥)。相关计算参数应只在数字水印生成端和验证
方得知。若采用这种
靠性。
端之间共知,不应有第三
方式,则相应的计算参数也需要在通信前在生成端和验证端之间进行交
生成码流的作用是:(1)将水印数据切割为许多分量,分散到多个矢量图形数据包
的多 个图形元素的属性修改中,减少对原矢量图形的属性的改变,以便嵌
码流的不同部分分别嵌入矢量图形数据包中的不
发明的水印数据安全性。
换和共享。
入不可见水印;(2)将
同地方,可以互相验证、互相保护,提高本
所生成的数字水印码流,可以分散嵌入矢量图形数据包序列中的不同矢量图形数据
包中, 也可以组合几个或将全部码流嵌入一个矢量图形数据包中。这
来决定。 由S1中的码流嵌入数据包方案
由于码流中的各个片段,可以分别或组合放到一个或多个矢量图形数据包中,那么
只要 通过连续矢量图形数据包(例如5个数据包)收集到了所有码流片段,
数据包中获得完整码流并提取水印数据。最极端情况,
可以完整实现数字水印的嵌入和验
就可以完成从这5个
只需要两个连续矢量图形数据包,就
证(但两个数据包,也是可能的最少数量)。
S4、在数字水印生成端,在矢量图形数据包中按码流嵌入数据包规则嵌入数字水
印码流
在步骤S4中,码流嵌入数据包规则为:每9个矢量图形数据包为一组(第一组为
v1,v2, v3,v4,
数据;
v5,v6,v7,v8,v9),
上述8个码流(包括检验值)分别依次嵌入8个矢量图形数据包中; 嵌入算
法为对相应的属性做加法;嵌入范围是:嵌入所有矢量图形数据包中所有矢量图形
元
对本实施例中的矢量图形数据包,按照所述码流嵌入数据包规则在连续9个矢量图
形数 据包中修改属性,使连续两个矢量图形数据包的特定属性(圆的颜色
化值符合最终码流(c1,
素的颜色属性中的红色分量。
的红色分量)之间的变
c2,c3,c4,c5,c6,
c7,c8)=(-1,1,-2,4,1,1,-1,1)的变化序列。最终
经过修改的 特定属性(圆的颜色的红色分量)取值变化序列为:
(v1′,v2′,v3′,v4′,
v5′,v6′,v7′,v8′,
v9′);圆1.颜色.红色=(182,181,182,180,184,186,186,185,
186),后一取值对比前一取值
1)。
在嵌入水印的实现中,可以在嵌入位置、嵌入内容上加入时间信息、校验信息,从
而提
这里,在连续矢量图形数据包序列中嵌入数字水印码流的方式有两种:
高数字水印的安全性、可靠性。
的变化值为(0,-1,1,-2,4,1,1,-1,
(1)、等全部数据包嵌入后水印码流后,成队依次发送:可将矢量图形数据包序列
中的 所有单个矢量图形数据包中均加入数字水印码流数据后,再依次一个
(或将所有数据包放入一个文件)。 个发送矢量图形数据包
(2)、一个数据包嵌入后水印码流后,立刻单个发送:可在一个矢量图形数据包中
嵌入 数字水印码流数据后发送,随后再进行后
续一个矢量图形数据包的数字水印嵌入。
S5、在数字水印生成端,发送带有数字水印的矢量图形数据包:在数字水印的生
成端, 在时刻vq′.tq发送vq′到数
字水印的验证端。则(v1′,v2′,v3′,
v4′,v5′,v6′,v7′,
v8′, v9′,…,v200′)依次在起始时
包时按间后的25,50,...,5000毫秒时刻被发送出去。发送矢量图形数据
顺序和发送时间发送。
S6、如图4所示,在数字水印验证端,接收带有数字水印的矢量图形数据包:在
数字水 印的验证端,收到P′={v1′,v2′,
v3′,v4′,v5′,v6′,
v7′,v8′,v9′,…,v200′}。
S7、在数字水印验证端,提取连续矢量图形数据包中属性上的变化值,计算嵌入
的码流
在本实施例中,根据嵌入范围与嵌入规则“所有矢量图形数据包中所有矢量图形元
素的 颜色属性中的红色分量”,并根据对比矢量图形数据包选择或生成方
数据。
式为“每个矢量图形数据 包与之前一个矢量图形数据包进行对比(即计算
的差vq′与vq-1′在嵌入范围与嵌入规则属性上
异)”,从连续的vq+1′-vq′=Δvq′算出
Δvq′及圆1颜色属性的变化值Δvq′.eq1.颜色
的变化值依次为(0,-1,1,-2,4,1,1,-1,1)。因此嵌入的水印码流为(-
1,1,-2,4,1,1,-1,1)。
这里,变化值的提取,可以在当前收到的矢量图形数据包与它之前紧邻的(即
vq和vq-1之间)进行对比来提取,也可以在当前收到的矢
量图形数据包与之前收到的某个矢量图形数
的统计值进行对比来提取。
矢量图形属性的变化值在数字水印数据嵌入与验证中的核心作用,体现了:本发明
是根 据每个矢量图形数据包上的属性值与之前的矢量图形数据包上参数的
数据。这是本发明的核心特征。
据包或多个矢量图形数据包
变化值来嵌入数字水印
S8、在数字水印验证端,通过汇总收到的数字水印嵌入码流,提取水印数据。
在本实施例中,根据从水印码流计算水印数据的算法”通过获得的(c1,
c2,c3,c4,c5,c6,
c7, c8)=(-1,1,-2,4,1,1,-1,1),算出
水印数
有意义的水印码流为c=(-1,-2,1,-1)。再根据从水印码流计算
据的算法,并根据临时参数值为2,提取出原水印数据为m=(3,4,1,3)。
S9、在数字水印验证端,进行数字水印验证:在实施例中,从接收的连续矢量图
形数据 包中计算出来的m=(3,4,1,3),根据发送端和验证端之间
约定的“嵌入并验证的水印数据” m=(3,4,1,3),可以确认在连续矢量
字水印的生成端(进图形中传输过来的数据m(以及所有矢量图形)是来自数
行数据来源和通信对象的鉴别和认证)。
说明:这里,m=(3,4,1,3)可以替换成公司的名称、商标注册号等证明信息,
从而实施数 字水印和数字版权保护;由于临时参数是保密的,攻击者即使
改上述矢量图形内容中的水印嵌入属性
改就会被发觉);本
知道水印嵌入算法,也无法篡
(一旦篡改上述矢量图形的颜色并影响了水印,则篡
实施例实现的是脆弱性水印,并且没有加入时序数据(所以本实施例无法
防止重放攻击);在单独一个图形元素上进行数字水印
能。 嵌入和验证,是现有方法无法完成的功
步骤S3、S4中,在嵌入码流的生成中、在将水印码流嵌入连续矢量图形数据包的
属性中, 将时间信息、校验信息加入码流生成算法中、嵌入位置确定中
水印的安全性、可靠性。 和嵌入内容中,从而提高数字
在本实施例中,需要数字水印生成端与数字水印验证端双方共享的信息包括:
1、要嵌入并验证的水印数据m=(3,4,1,3);
2、在S3中,从水印数据生成水印码流的算法和从水印码流计算水印数据的算法;
3、在S4中使用的码流嵌入数据包规则、嵌入范围与嵌入规则;
4、嵌入算法为对相应的属性做加法;
5、对比矢量图形数据包选择或生成方式。
上述通信双方共享的信息中,第1、2项要嵌入并验证的水印数据、从水印数据生
成水印 码流的算法和从水印码流计算水印数据的算法水印数据)这些
第三方;第3、4、5项必要时可公开(当
数据需严格保密,不应泄露给
然为了保密和安全,不公开更好)。
本实施例中,每收到连续9个矢量图形数据包,就可以完成一轮数字水印的验证。
实施例2
本实施例描述以时间间隔作为嵌入水印数据的方式,且相关的处理功能用固件芯片
形式 实现。固件芯片EPROM采用INTEL 82802AA芯片;相关的指令执
用得州仪器(TI)公司的C5402 DSP芯片)。
行机构为DSP芯片(采
S1、数字水印生成端与数字水印验证端知识交换;
S2、在数字水印生成端,准备连续矢量图形集数据序列(即未加水印的序列):
在本实施例中,从数字水印的生成端要传输的、原始的连续矢量图数据包序列为V
= {v1,v2,...,vi}(i∈N,N为自
然数集合)。
本实施例中,对所有
从上述内容可知,连续矢量图形数据包序列的播放内容是一个不断扩大的环形和一
个不
S3、在数字水印生成端,确定传输的水印数据,并根据它来编制成水印码流:
本实施例中,在数字水印生成端要嵌入连续矢量图形中传输的数据为(90,72,79,
78, 71,71,85,79),所使用的、计算水印码流的临时参数值为66,按
码流为(c1,c2,
动的矩形。
生成码流算法,所获得的最终
c3,c4,c5,c6,c7,
c8)=(24,6,13,12,5,5,19,13)。
S4、在数字水印生成端,在矢量图形数据包中按规则嵌入数字水印码流数据:
对本实施例中的矢量图形数据包,按照码流嵌入数据包规则在分别相隔(24,6,13,
12,5,5, 19,13)的矢量图形数据包(即在第25、31、44、56、61、66、
改属性),并按嵌入范围和嵌入规则修改
85、98个矢量图形数据包上修
属性值。最终经过修改的特定属性取值变化序列为:
(v25′,v31′,v44′,v56′,
v61′,v66′,v85′,
v98′).ti.=(2012-12-12 19:21:54
且(v25′,v31′,v44′,v56′,
v61′,v66′,v85′,v98′).ei-
000+25*i+25*cn),与其它的矢量图形数据包不同。
j.颜色.红色=原红色分量±1。
对其它i不属于25、31、44、56、61、66、85、98的取值,则vq′=
vq(即不做修改)。
S5、在数字水印生成端,发送带有数字水印的矢量图形数据包:在数字水印生成
端,在 时刻vq′.tq发送vq′到数字
水印验证端,则(v1′,v2′,v3′,
v4′,v5′,v6′,v7′,
v8′,v9′,…,v200′)依次在设定的时刻被发送
出去。
S6、在数字水印验证端,接收带有数字水印的矢量图形数据包:在数字水印验证
端,收 到V′={v1′,v2′,v3′,
v4′,v5′,v6′,v7′,
v8′,v9′,…,v200′}。
S7、在数字水印验证端,提取连续矢量图形数据包中属性上的变化值,计算嵌入
的码流
在本实施例中,对比矢量图形数据包选择或生成方式为“每个矢量图形数据包与之
前一 个矢量图形数据包进行对比”,根据嵌入范围与嵌入规则“所选定的矢
量图形元素的颜色属性中的红色分量发生修改”
vq+1′-
数据:
量图形数据包中所有矢
和“发送时间与预期时间有差距”,从连续的
vq′=Δvq′判断颜色属性的变化值,检索出第25、31、44、
56、61、66、85、98个 矢量图形数据包应被嵌入数字水印,并根据码流
嵌入数据包规则为“每相隔{c1,c2,...,cn}的
数 据包中,修改矢量图中所有图形元素指定属性的属性值”,计算出原
来的码流为(24,6,13,12,5,5,
19,13)。
S8、在数字水印验证端,通过汇总收到的数字水印嵌入码流,提取水印数据:
在本实施例中,根据从水印数据生成水印码流的算法,通过获得的(c1,
c2,c3,c4,c5,c6,
c7, c8)=(24,6,13,12,5,5,19,13),。
66,算
再根据从水印码流计算水印数据的算法”,并根据临时参数值为
出原水印数据为m=(90,72,79,78,71,71,85,79)。
S9、在数字水印验证端,进行数字水印验证:在实施例中,从接收的连续矢量图
形数据 包中计算出来的(90,72,79,78,71,71,85,79),根据数
的嵌入并验证的水印数据字水印发送端和数字水印验证端之间约定
m=(90,72,79,78,71,71,85,79),可以确认在连续矢量图形中传输过
来的水印数据m(以及所有矢量图形)是来自数字水印生成端(进行数据来源
鉴别和认证)。 和通信对象的
补充说明:本实施例中传输的“ZHONGGUO”字符串,完全可以代之以任何一个公
司 的名称,从而在矢量播放内容中嵌入原始来源信息,从而实现数字版
权保护。
在本实施例中,需要数字水印生成端和数字水印验证端双方共享的信息包括:
1、要嵌入并验证的水印数据:本实施例中为(90,72,79,78,71,71,85,79),
转换成ASCII码
2、在S3中,从水印数据生成水印码流的算法为:按“水印数据各分量值-临时参数
为“ZHONGGUO”。
值= 水印码流分量”;相应的,从水印码流计算水印数据的算法为:按“水
值=原水印数据分量”。本实施例中,计算水印
66。
印码流分量+临时参数
码流的过程中有使用临时参数,临时参数值为
3、在S4使用的码流嵌入数据包规则:设水印码流结果为{c1,c2,...,cn},则在
每相隔 {c1,c2,...,cn}的数据包中,修改矢量图中所有图形元素指
可)。 定属性的属性值(只要出现修改即
4、在S4要使用的嵌入范围与嵌入规则:嵌入所选定的矢量图形数据包中所有矢
量图形 元素的颜色属性中的红色分量,该数据包的该红色分量发生修
据包的发送时间数据。 改;同时,修改该矢量图形数
5、嵌入算法为:对颜色,对相应的颜色分量做加法或减法;对发送时间,相应的
矢量图 形数据包的“发送时序数据”增加cn*25毫秒(即控
制出现相应的延迟),这里cn为码流分量。
6、对比矢量图形数据包选择或生成方式为:每个矢量图形数据包与之前一个矢量
图形数 据包进行对比(即计算vq′与vq-1′在嵌
入范围与嵌入规则属性上的差异)。
本实施例中,要收集到第98个矢量图形数据包后,才能完成数字水印的验证。
实施例3
本实施例中,在连续两个矢量图形数据包之间实现数字水印嵌入。由于本发明所提
出的 数字水印嵌入方法是要基于矢量图形数据包之间属性上的修改和比较
量图形数据包是本发
来实现,因此,两个矢
明实现数字水印的最低数量要求。
S1、数字水印生成端与数字水印验证端知识交换;
S2、在数字水印生成端,准备连续矢量图形集数据序列(即未加水印的序列):
在本实施例中,从数字水印生成端要传输的、原始的连续矢量图数据包序列为V=
{v1,v2,...,vi},i∈N,N为自然数
集合。
本实施例中,仅对第1、第2个矢量图形数据包进行水印嵌入和验证演示。
从上述内容可知,本实施例中连续矢量图形数据包序列的播放内容是一系列移动的、
不
S3、在数字水印生成端,确定传输的水印数据,并根据它来生成水印码流:
本实施例中,按水印数据生成水印码流的算法,在数字水印生成端要嵌入的水印数
据及
S4、在数字水印生成端,在矢量图形数据包中按规则嵌入数字水印码流数据:
对本实施例中的矢量图形数据包,按照码流嵌入数据包规则在第2个矢量图形数据
包嵌 入水印(一次性将码流各分量全部嵌入一个矢量图形数据包中),并按
最终码流均为(3,9,2,1,5)。
同大小的圆形(但其颜色值一样)。
嵌入范围和嵌入算法修
包为:
改属性值。最终经过修改的v2数据
而其它的vq′=vq(即不做改变)
S5、在数字水印生成端,发送带有数字水印的矢量图形数据包:在数字水印生成
端,在 时刻vq′.tq发送vq′到数字
水印验证端。则(v1′,v2′,v3′,
v4′,v5′,v6′,v7′,
v8′,v9′,…,v200′)依次在设定的时刻被发送
出去。
S6、在数字水印验证端,接收带有数字水印的矢量图形数据包:在数字水印验证
端,收 到V′={v1′,v2′,v3′,
v4′,v5′,v6′,v7′,
v8′,v9′,…,v200′}。
S7、在数字水印验证端,提取连续矢量图形数据包中属性上的变化值,计算嵌入
的码流 数据:在本实施例中,对比矢量图形数据包选择或生成方式为
一个矢量图形数据包进行对比”,根据嵌
矢量图形元素的颜色
“每个矢量图形数据包与之前
入范围与嵌入规则“所选定的矢量图形数据包中所有
属性中的红色分量发生修改”和“发送时间与预期时间有差距”,从连续
的v2′-v1′=Δv2′判断颜色属性的变化值,
检索出:
并根据嵌入范围、嵌入规则和嵌入算法,可计算、提取出原来的码流为m=(3,9,
2,1,5)。
S8、在数字水印验证端,通过汇总收到的数字水印嵌入码流,提取水印数据:在
本实施 例中,根据从水印码流计算水印数据的算法,可知原水印数据
为m=(3,9,2,1,5)。
S9、在数字水印验证端,进行数字水印验证:在实施例中,从接收的连续矢量图
形数据 包中计算出来的m=(3,9,2,1,5),根据数字水印发送端
证的水印数据m=(3,9,2,1,
矢量图
和数字水印验证端之间约定的嵌入并验
5),可以确认在连续矢量图形中传输过来的水印数据m(以及所有
形)是来自数字水印生成端(进行数据来源和通信对象的鉴别和认证)。
这里,通过在数字水印中添加冗余数据、时序数据,可以判断接收到的矢量图形包
有无
在本实施例中,需要双方共享的信息包括:
1、要嵌入并验证的水印数据m=(3,9,2,1,5)。
2、在S3中,从水印数据生成水印码流的算法为:按“水印数据各分量值=水印码
流分量”; 相应的,从水印码流计算水印数据的算法为:按“水印码流分
印码流即原水印数据,不做任何转换和处
被篡改、重复发送。
量原水印数据分量”。也即,水
理。
3、在S4使用的码流嵌入数据包规则:按嵌入的水印码流各分量值,对第二个矢
量图形 数据包,依次修改按顺序排列的各图形元素指定属性的属性值。
4、在S4要使用的嵌入范围与嵌入规则:修改指定数据包中指定矢量图形元素的
颜色值 的分量,在第i个图形元素上,修改第(i mod 3)+1个颜色分量
量)。 (红绿蓝分别第1、2、3个分
5、嵌入算法为:对相应的属性做加法。
6、对比矢量图形数据包选择或生成方式为:每个矢量图形数据包与之前一个矢量
图形数 据包进行对比(即计算vq′与vq-1′在嵌
入范围属性上的差异)。
实施例4
本实施例中,实现脆弱性水印:所有序列中某些图形的某些属性变化值/变化次数
的总和
S1、数字水印生成端与数字水印验证端知识交换;
S2、在数字水印生成端,准备连续矢量图形集数据序列(即未加水印的序列):
在本实施例中,从数字水印生成端要传输的、原始的连续矢量图数据包序列为V=
{v1,v2,...,vi},i∈N,N为自然数
是一定值,而这个值就是要传的水印数据。
集合。
本实施例中,对所有
从上述内容可知,连续矢量图形数据包序列的播放内容是一个不断扩大的环形。要
注意
S3、在数字水印生成端,确定传输的水印数据,并根据它来生成水印码流:
本实施例中,在数字水印生成端要嵌入连续矢量图形中传输的数据为6,所使用的、
计 算水印码流的临时参数值为3,且按生成
原来就应发生属性改
的是,每一帧中,原来就要求的属性改变有2次。
码流算法,统计在第1到第3个矢量图形数据包中
变为9。最终生成的码流(即01串)中,出现1的次数应为3+4=7,设
S4、在数字水印生成端,在矢量图形数据包中按规则嵌入数字水印码流数据:
对本实施例中的矢量图形数据包,按照码流嵌入数据包规则、嵌入范围和嵌入算法
修改 属性值,在v2、v3中按(3,4)的数量来修改属性(包括原来就要变化
颜色值):
随意生成的码流为(0,3,4)。
的属性)(这里修改
添加的属性变化值,在上面用下划线标示。
对第3个矢量图形数据包之后的,也可以按固定长度或不固定长度来设计属性值,
使之
S5、在数字水印生成端,发送带有数字水印的矢量图形数据包:在数字水印生成
端,在 时刻vq′.tq发送vq′到数字
满足属性变化数量的条件。
水印验证端。则(v1′,v2′,v3′,
v4′,v5′,v6′,v7′,
v8′,v9′,…,v200′)依次在设定的时刻被发送
出去。
S6、在数字水印验证端,接收带有数字水印的矢量图形数据包:在数字水印验证
端,收 到V′={v1′,
v2′,v3′,v4′,v5′,
v6′,v7′,v8′,v9′,…,
v200′}。
S7、在数字水印验证端,提取连续矢量图形数据包中属性上的变化值,计算嵌入
的码流 数据:在本实施例中,对比矢量图形数据包选择或生成方式为
一个矢量图形数据包进行对比”,根据嵌
到的v1′,
“每个矢量图形数据包与之前
入范围与嵌入规则、根据共享的临时参数值=3,从收
v2′,v3′中统计属性变化值为(0,3,4),共检测出7次属
性变化。
S8、在数字水印验证端,通过汇总收到的数字水印嵌入码流,提取水印数据:在
本实施 例中,根据从水印码流计算水印数据的算法,码流中数字总和
要传输的水印数据为7-3=4。
为7,而临时参数值为3,因此
S9、在数字水印验证端,进行数字水印验证:在实施例中,从接收的连续矢量图
形数据 包中计算出来的4,与根据数字水印发送端和数字水印验证端
数据m=4一致,可以确认在连续矢量图
是来自数字水印生成端(进
之间约定的嵌入并验证的水印
形中传输过来的水印数据m(以及所有矢量图形)
行数据来源和通信对象的鉴别和认证)。
补充说明:
(1)无论原连续矢量图形数据包序列中原图形属性有没有变化,都不影响本实施例
中水
(2)添加了这种水印的连续矢量图形数据包序列不能被篡改(无论是帧还是属性值),
在本实施例中,需要双方共享的信息包括:
1、要嵌入并验证的水印数据:本实施例中为4。
2、在S3中,从水印数据生成水印码流的算法为:先统计连续第1到n个(本实施
例中 n取临时参数值,但也可以另行设定)矢量图形数据包中矢量图形的
为C),生成一任意数字串(数字串长度为n-1)且
值,则水印码流分量=此任
水印数
一旦丢帧或被修改任何属性,算出的水印数据就无法对上。
印添加算法的实现。
属性变化次数总和(设
数字串中数字总和=水印数据值+临时参数
意数字串;相应的,从水印码流计算水印数据的算法为:码流=原
据+临时参数值”。本实施例中,计算水印码流的过程中有使用临时参数,临时参
数值
3、在S4使用的码流嵌入数据包规则:第1-N中任意矢量图形数据包中,如果生
成的数 字串为(c1,c2,...,cn),
为3。
则每个cn表示这个矢量图形数据包相比起前一矢量图形数据包在属性上
4、在S4要使用的嵌入范围与嵌入规则:任意矢量图形数据包中任意图形元素的
任意矢
量图形属性(除了发送时间数据、原来也要发生变化的属性)。
要出现的变化次数(包括原来就要出现的属性修改)。
5、嵌入算法为:对相应的属性作任意修改,修改次数即为该矢量图形数据包上的
码流值。
6、对比矢量图形数据包选择或生成方式为:每个矢量图形数据包与之前一个矢量
图形数 据包进行对比(即计算
vq′与vq-1′在嵌入属性上的差异)。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限
制, 其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替
为等效的置换方式,都包含在本发明的保护范围代、组合、简化,均应
之内。


发布评论