一种三维模型设计稿加数字水印和检测数字水印的方法与流程

文档序号:12597947阅读:478来源:国知局
本发明属于版权保护领域和数字水印安全
技术领域
,特别是涉及一种三维模型设计稿加数字水印和检测数字水印的方法。
背景技术
:随着数字化技术的迅猛发展,信息的获取与传播都获得了极大的便利,同时也带来了数字化产品的版权保护问题。数字水印技术为数字化产品的版权保护提供了一种有效的方法。目前数字水印技术大多是针对图像、音频和视频,而对三维模型设计稿的版权保护的研究较少。随着3D打印技术的快速普及,三维模型的应用也越来越广泛,三维模型设计稿也越来越多。三维模型设计稿也蕴含着巨大的社会和经济价值,成为宝贵的资源。如何保护三维模型设计稿的版权,使得三维模型设计稿的设计者和拥有者的权益不受损失,迫切需要一种能够防止未经授权而非法使用三维模型设计稿的方法。技术实现要素:有鉴于此,本发明提供了一种三维模型设计稿加数字水印和检测数字水印的方法,能够有效的解决三维模型设计稿的版权保护问题。为了达到上述目的,本发明的技术方案包括如下步骤:步骤一、获取三维模型设计稿并读取该三维模型设计稿的设计数据。步骤二、数字水印生成,该步骤包括如下具体步骤:S2.1,获取所述设计数据;并将所述设计数据及其对应时间戳信息转换为水印信息。S2.2,将步骤2.1中转换得到的水印信息分段编码为二进制代码D,D为l位的二进制序列:D={di|di∈{0,1},i=1,2,…,l},其中l为水印容量。S2.4,计算映射的初始值x:x=。S2.5,依据映射的初始值x:x=,采用改进型Logistic映射生成伪随机序列k:k={ki,i=1,2,…,l};ki具体取值是由x的值是正数、负数或0来决定,k在值域[-1,1]内均匀分布。S2.6,利用k调制数据D,生成数字水印W;W={wi|wi=(2di-1)×kl,i=1,2,……,l}。步骤三、将步骤生成的数字水印嵌入到所述三维模型设计稿中,具体包括如下步骤:S3.1,根据步骤1.2中获取的三维模型设计稿的设计数据,通过对设计数据进行分析,找出设计数据的表示方法中冗余信息;所述冗余信息为三维模型中两个曲面相交产生的相交线。S3.2,针对三维模型设计稿的NURBS曲面中的冗余信息,其为一条x次NURBS曲线,其控制顶点为y,权因子为ui(i=0,1,……,n),n为任意自然数;该冗余信息的节点矢量为U=[u0,u1,……,un+x+1],其中ui∈[0,1];un+x+1为节点矢量的最大区间。针对W中的每个二进制位,均计算出一个待插入节点:ui=Δi+y×wi,其中Δi=,i=1,2,……,l,y为所述冗余信息的控制顶点。其中ui<ui+1,y的取值必须满足:0<y<。S3.3,将W中的所有二进制位均插入到其对应的待插入节点中。进一步地,S2.2中的水印信息包括信息头、三维模型设计稿描述、设计者信息、授权用户信息、授权时间信息、授权方式、授权结束时间、授权期间使用次数、保留位和数据校验位。进一步地,三维模型设计稿采用NURBS曲面表示法。进一步地,三维模型设计稿依据上述一种针对三维模型设计稿加数字水印的方法添加数字水印,则该数字水印检测方法包括如下步骤:Step1,对三维模型设计稿进行重定位,根据公式D(P,Q)=d()=min()∈Q。其中P,Q分别是两个三维模型,其中P为当前三维模型设计稿,Q为重定位后的三维模型设计稿,n和m分别是P,Q的顶点数,和是相应的顶点;T为P至Q的变换矩阵。Step2,生成水印信息W;W={wi,i=1,2,……,l}。wi=;其中y为冗余信息的控制顶点,ui为权因子(i=0,1,……,n),节点矢量为U=[u0,u1,……,un+k+1],其中ui∈[0,1];Δi=,i=1,2,……,l,l+1。St.为符合条件的意思。Step3,根据改进型Logistic映射生成伪随机序列k。Step4,利用W和k得到数字水印的二进制代码D=,则D即为检测出的数字水印。有益效果:1、本发明提供的数字水印添加方法能够根据三维模型设计稿的设计数据进行数字水印生成,并采用切点插入法将数字水印信息进行嵌入,切点插入对于NURBS曲面是不会影响模型的几何形状,而且切点一旦插入水印信息也很难被移除,对三维模型设计稿的水印的鲁棒性也有了很大的提高。因此本方法实现了在不影响三维模型设计稿的视觉效果和使用效果的情况下进行版权保护。2、本发明提供的数字水印检测方法是在上述添加方法的基础上采用一定的逆向方法获取已添加的数字水印,其中三维模型设计稿在进行水印提取之前需要进行预处理操作,即进行网格重定位,这样能够避免三维模型设计稿因经过了一些有意无意的攻击而导致的顶点不一致的问题。附图说明图1为本发明中加数字水印方法流程图。具体实施方式下面结合附图并举实施例,对本发明进行详细描述。实施例1、本实施例提供了一种针对三维模型设计稿加数字水印的方法,其特征在于,包括如下步骤;步骤一、获取三维模型设计稿并读取该三维模型设计稿的设计数据;步骤二、数字水印生成,该步骤包括如下具体步骤:S2.1,获取设计数据;并将设计数据及其对应时间戳信息转换为水印信息;其中的水印信息包括信息头、三维模型设计稿描述、设计者信息、授权用户信息、授权时间信息、授权方式、授权结束时间、授权期间使用次数、保留位和数据校验位。信息标识信息容量大小(单位:比特)信息头2三维模型设计稿描述16设计者信息8授权用户信息8授权时间信息16授权方式4授权结束时间16授权期间使用次数4保留位32数据校验(CRC_32)32S2.2,将步骤2.1中转换得到的水印信息分段编码为二进制代码D,D为l位的二进制序列:D={di|di∈{0,1},i=1,2,…,l},其中l为水印容量;S2.4,计算映射的初始值x:x=;S2.5,根据初始值x确定改进型Logistic映射生成伪随机序列k:k={ki,i=1,2,…,l},ki具体取值是由x的值是正数、负数或0来决定,k在值域[-1,1]内分布均匀,落在空间内每个点的概率是均匀的;S2.6,利用k调制数据D,生成数字水印W;W={wi|wi=(2di-1)×kl,i=1,2,……,l},通过该公示实现原始数字水印的加密操作,其中wi是利用加密算法来生成的每位具体的水印密文,则是改进型Logistic映射生成伪随机序列位,di对应的是原始水印字符串的二进制位;步骤三、将步骤生成的数字水印嵌入到三维模型设计稿中,具体包括如下步骤:S3.1,根据步骤1.2中获取的三维模型设计稿的设计数据,通过对设计数据进行分析,找出设计数据的表示方法中冗余信息,即三维模型中两个曲面相交产生的相交线,曲面的某些信息修改并不会影响此相交线,这就属于冗余信息;获取的三维模型设计稿的设计数据,通过对设计数据进行分析,找出设计数据的表示方法中冗余信息,一般的三维模型设计稿都是用多边形网格表示法和参数曲面表示法,本实施例采用国际标准的NURBS曲面。S3.2,本发明采用切点插入的方法来写进水印信息,切点插入对于NURBS曲面是不会影响模型的几何形状,而且切点一旦插入水印信息也很难被移除,对三维模型设计稿的水印的鲁棒性也有了很大的提高。具体如下:针对三维模型设计稿的NURBS曲面中一条m次NURBS曲线的控制顶点为y;权因子为ui(i=0,1,……,n),其中n为任意自然数,节点矢量为U=[u0,u1,……,un+m+1],其中ui∈[0,1];针对W中的每个二进制位,均计算出一个待插入节点:ui=Δi+d’×wi,其中Δi=,i=1,2,……,l,d’为NURBS曲线的控制顶点;其中ui<ui+1,d’的取值必须满足:0<d’<;S3.3,将W中的所有二进制位均插入到其对应的待插入节点中。实施例2、本实施例在实施例1的基础上提出了一种三维模型设计稿的数字水印检测方法,其中三维模型设计稿依据实施例1一种针对三维模型设计稿加数字水印的方法添加数字水印,则该数字水印检测方法包括如下步骤:Step1,三维模型设计稿在进行水印提取之前需要进行预处理操作,即进行网格重定位。三维模型设计稿可能经过了一些有意无意的攻击,比如模型设计稿的坐标的旋转、平移、缩放,模型的剪切、平滑等等,在水印的提取过程中需要进行重定位以找到与原始模型顶点相对应的顶点位置。对三维模型设计稿进行重定位,根据公式D(P,Q)=d()=min()∈Q。其中P,Q分别是两个三维模型,n和m分别是P,Q的顶点数,和是相应的顶点。计算变换矩阵T,使得目标函数D(P,Q)取最小值。Step2,生成水印信息W;W={wi,i=1,2,……,l}。wi=;其中y为冗余信息——即一条x次NURBS曲线的控制顶点,ui为权因子(i=0,1,……,n),n为任意自然数,节点矢量为U=[u0,u1,……,un+x+1],un+x+1为节点矢量的最大区间。其中ui∈[0,1];Δi=,i=1,2,……,l,l+1。Step3,根据改进型Logistic映射生成伪随机序列k。Step4,利用W和k得到数字水印的二进制代码D=,则D即为检测出的数字水印。综上,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1