CN104281994A - 一种基于局部粗糙度分析的三维网格水印嵌入和检测方法 - Google Patents
一种基于局部粗糙度分析的三维网格水印嵌入和检测方法 Download PDFInfo
- Publication number
- CN104281994A CN104281994A CN201410567649.1A CN201410567649A CN104281994A CN 104281994 A CN104281994 A CN 104281994A CN 201410567649 A CN201410567649 A CN 201410567649A CN 104281994 A CN104281994 A CN 104281994A
- Authority
- CN
- China
- Prior art keywords
- watermark
- grid
- summit
- norm
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000004458 analytical method Methods 0.000 title claims abstract description 17
- 230000008569 process Effects 0.000 claims abstract description 20
- 230000007246 mechanism Effects 0.000 claims abstract description 9
- 238000001514 detection method Methods 0.000 claims description 17
- 239000000284 extract Substances 0.000 claims description 17
- 238000010606 normalization Methods 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 8
- 238000012804 iterative process Methods 0.000 claims description 3
- 238000011002 quantification Methods 0.000 claims description 3
- 230000015572 biosynthetic process Effects 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000000007 visual effect Effects 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 5
- 238000010008 shearing Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000006872 improvement Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- YMHOBZXQZVXHBM-UHFFFAOYSA-N 2,5-dimethoxy-4-bromophenethylamine Chemical compound COC1=CC(CCN)=C(OC)C=C1Br YMHOBZXQZVXHBM-UHFFFAOYSA-N 0.000 description 2
- 241000283973 Oryctolagus cuniculus Species 0.000 description 2
- 241000545067 Venus Species 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003746 surface roughness Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 241001311422 Liris Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000739 chaotic effect Effects 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000011158 quantitative evaluation Methods 0.000 description 1
- 238000011555 rabbit model Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C5/00—Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
本发明公开了一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,包括水印信息嵌入过程和水印信息检测过程;其中,水印信息嵌入过程为对三维网格模型根据顶点的粗糙度进行子网格划分,然后通过调整子网格的顶点范数分布实现多份水印嵌入;水印信息检测过程为从每个子网格中提取一份水印序列,然后通过多数投票机制确定提取的最终水印信息。
Description
技术领域
本发明涉及一种三维模型版权保护的数字水印技术,属于计算机图形学和多媒体信息安全技术领域,具体地说是一种基于局部粗糙度分析的三维网格水印嵌入和检测方法。
背景技术
鲁棒的数字水印技术可有效地应用于数字内容的版权保护,利用这种水印技术在多媒体内容的数据中嵌入水印信息,在发生版权纠纷时,可通过提取的水印信息确认其版权。用于版权保护的数字水印要求具有很强的鲁棒性和安全性,水印除了能在一般的常规处理操作中存在外,还应该能够抵抗恶意攻击。近年来,三维模型已广泛地应用于虚拟现实、视频游戏、辅助设计和医学图像等领域,随着网络技术和多媒体技术的方法,三维模型的拷贝和传播变得越来越便捷,版权问题不断产生,因此研究三维模型的数字水印技术是非常有必要的。然而由于三维模型的采样不规则性以及可能面临的攻击更为多种多样,因此目前针对三维模型的鲁棒水印技术研究比起其他的数字内容(如文本、图像、音频和视频等)相对较少,并且仍然存在着很多问题。
早期的三维模型的鲁棒水印研究,主要是对于模型整体采用某种修改几何或拓扑结构的方式来嵌入水印。然而,如文献1:O.Benedens.Watermarking of 3D polygon basedmodels with robustnessagainst mesh simplification.Proceedings of SPIE:Security andWatermarkingof Multimedia Contents,1999:329-340.和文献2:F.Cayre,B.Macq.DataHiding on 3-D Triangle Meshes.IEEE Transactions on Signal Processing,2003,51(4):939-949.所述的方法只能对于某几种攻击具有鲁棒性,且水印后引起的扭曲变形相对较大。文献3:K.Kim,M.Barni,and H.Z.Tan.Roughness-Adaptive 3-DWatermarking Based on Masking Effect of Surface Roughness,IEEE Transactions onInformation Forensics and security,2010,5(4):721-733.文献4:陈强,唐艳.基于表面粗糙度的自适应三维模型盲水印算法,计算机应用,2009,29(4):952-955.和文献5:朱利利,张建勋,汪波.基于粗糙度的三维网格模型数字水印,重庆大学学报(自然科学版),2014,28(2):87-91.往往通过二面角或平均曲率来描述粗糙度,据此来选择高粗糙度的顶点用于水印嵌入,或者增加嵌入强度来嵌入水印,在保证鲁棒性的基础上,增强了三维模型数字水印的不可感知性。然而,这些方法对于嵌入容量受限,且对鲁棒性的改善有限,对于某些常见的攻击依然较为敏感。而且二面角和平均曲率事实上描述的仅仅是模型的曲度,并不能很好的反应表面粗糙度,因此对于视觉扭曲的改善效果依然有限。中国专利201310126150.2基于顶点曲率的三维模型数字水印嵌入与盲检测方法,则利用顶点曲率的分布来嵌入水印,该方法对于多种攻击具有较好的鲁棒性,但对于细分和剪切攻击未作评价,且水印引起的几何扭曲相对较高。文献6:J.W.Cho,R.Prost and H.Y.Jung.An oblivious watermarking for 3-D polygonal meshes usingdistribution of vertex norms.IEEE Transactions on Signal Processing,2007,55(1):142-155.通过调整顶点范数分布来嵌入水印,被认为是近年来最为鲁棒的水印方法之一,但是仍然不能抵抗剪切攻击且易产生视觉上的扭曲。然而,剪切操作是三维建模、娱乐设计中的常见的网格编辑操作,因此,需要三维模型的水印能够抵抗此类攻击。
近年来,文献7:P.R.Alface,B.Macq,and F.Cayre.Blind and robust watermarking of3D models:How to withstand the cropping attack?Proceedings of the IEEE InternationalConference on Image Processing,San Antonio,2007,5:465-468.提出可通过网格分割的方法来增强水印抵抗剪切攻击的能力。在此基础上,后续部分研究开始提出基于不同的分割方法来提高水印的鲁棒性。中国专利201310167803.1基于网格分割的三维网格模型非盲水印实现方法,即是采用了此种思想,基于形状直径函数的分割算法对模型进行有意义的分割,然后对每个分割块嵌入水印,该方法可以抵抗简化、剪切、噪声等攻击,但对水印引起的几何扭曲改善不大,且依然会引起模型视觉质量的下降。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,用于支持对不同应用领域的三维模型的有效版权保护。
为了解决上述技术问题,本发明公开了一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,包括以下步骤:
步骤一,水印信息嵌入过程:对三维网格模型根据顶点的粗糙度进行子网格划分,然后通过调整子网格的顶点范数分布实现多份水印嵌入。
步骤二,水印信息检测方法:从各个子网格中提取一份水印序列,然后通过多数投票机制确定提取的最终水印信息。
本发明步骤一中所述水印信息嵌入过程包括以下步骤:
步骤11,水印序列生成:采用改进型逻辑斯蒂映射(logistic-map)xe+1=1-μxe 2,e=1,2,…调制混沌状态水印序列,并进行量化二值处理,当xe≥0时,取we为1,否则we为0。将最终得到的混沌二值序列作为水印信息W=(w1,w2,…,wL)。
步骤12,局部粗糙度分析:计算网格各顶点的高斯曲率κG(vi),构建网格拉普拉斯矩阵D,然后根据拉普拉斯矩阵设置权重计算各顶点的局部粗糙度LRi。将所有顶点按照局部粗糙度值降序排序,并平均划分为NP个子网格。
步骤13,对每个子网格,计算中心点on(xn,yn,zn),n=1,2,…NP,计算顶点范数ρk=||vk-on||,聚类顶点范数ρk到L个扇区(bins)中并把每个bin中的顶点范数ρe,k归一化到[0,1],转换为当在bin中嵌入水印值为1时,初始化β=1,归一化的顶点范数计算bin中归一化顶点范数的平均值,如果则令β=β-Δβ,迭代进行该步骤,直至满足当嵌入水印值为0时,则在迭代过程中判断,当时,令β=β+Δβ,继续迭代,直至满足为止。按此方法迭代地调整每个bin中归一化顶点范数,从而得到水印后的归一化顶点范数对此范数进行反归一化处理,将原始模型转为球坐标表示,然后根据嵌入水印后的范数值,保持角度不变的情况下转化为笛卡尔坐标,从而得到并保存含有粗糙度划分信息的水印网格模型文件并记录各子网格中心信息。
步骤12中顶点vi高斯曲率计算,公式如下:
表示在一阶三角形邻域内与vi相邻的内角,表示vi的一阶邻域三角形的个数。
步骤12中网格拉普拉斯矩阵计算,公式如下:
表示在一阶三角形邻域内所有与vi相邻的顶点个数,αi,j和βi,j分别是连接vi和vj的边所分隔开的两个相邻三角形的相对的两个内角。
步骤12中顶点vi局部粗糙度计算,公式如下:
步骤13中各子网格中心点计算,公式如下:
A(vk)表示在子网格中所有包含顶点vk的三角形面片的面积。
步骤13中子网格内顶点范数聚类计算,公式如下:
Be={vk∈Pn|ρmin+ε(ρmax-ρmin)+(e-1)ρb≤ρk<ρmax-ε(ρmax-ρmin)+eρb},
Be(1≤e≤L)表示第e个扇区(bin),Pn(1≤n≤NP)表示划分的第n个子网格,ε∈[0,0.15]表示裁剪率,用于裁减掉某些异常值。ρmin和ρmax分别表示该bin中顶点范数的最小值和最大值,ρk为该子网格中的各个顶点的顶点范数,ρb为每个bin中顶点范数范围的大小。
步骤13中将各bin中顶点范数ρe,k进行归一化计算转换为公式如下:
ρe,min和ρe,max分别表示第e个Bin中顶点范数的最小值和最大值。
步骤13中水印后顶点范数的反归一化计算,公式如下:
为嵌入水印后归一化的顶点范数值。
步骤13中各子网格Pn(n=1,2,…NP)中顶点笛卡尔坐标(xn,k,yn,k,zn,k)与球坐标(ρn,k,θn,k,φn,k)的转换,公式如下:
本发明步骤二中所述水印信息检测方法包括以下步骤:
步骤21,根据分发的含有粗糙度划分信息的水印网格模型文件,对各子网格,根据子网格中心信息on,计算各顶点v'k的顶点范数ρ'k=||v'k-on||,将顶点聚类到L个bins中,每个bin中的顶点范数归一化到区间[0,1],计算归一化后顶点范数的平均值若平均值则该bin中提取出水印1,反之,提取到水印0。
步骤21中顶点聚类到L个bins中,公式如下:
B'e={v'k∈Pn|ρ'min+ε(ρ'max-ρ'min)+(e-1)ρ'b≤ρ'k<ρmax-ε(ρ'max-ρ'min)+eρ'b},
B'e表示第e个bin,Pn(1≤n≤NP)表示划分的第n个子网格,ε∈[0,0.15]表示裁剪率,用于裁减掉某些异常值。ρ'min和ρ'max分别表示该子网格中顶点范数的最小值和最大值。ρ'b表示各bin中顶点范数范围的大小。
步骤21中每个bin中顶点范数ρ'e,k归一化到区间[0,1],转换为公式如下:
ρ'e,min和ρ'e,max分别表示第e个bin中顶点范数的最小值和最大值。
步骤22,根据步骤21,可提取到每个子网格的水印序列信息。对于多个水印序列,采用多数投票机制,逐位比较水印值,当1的数目大于0的数目时,该比特水印判定为1,反之,判定为0,逐位判断完毕,得到提取的最终水印序列W'=(w′1,w′2,…,w′L)。
步骤23,验证提取水印的有效性,对提取到的水印序列与原始水印序列进行逐位比对,计算位错误率BER,通常当位错误率BER>0.5时则认为检测不到水印信息。
步骤23中位错误率BER的计算,公式如下:
有益效果:本发明具有以下优点:首先,本发明有效降低了三维模型水印嵌入引起的几何扭曲和视觉降质;其次,本发明具有较好的鲁棒性,能够抵抗各类常见模型攻击,如文件攻击、相似变换、噪声、平滑、量化、细分、简化和剪切;最后,本发明嵌入水印容量相对较高,可为广泛应用于不同领域的三维网格模型提供有效地版权保护。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1是本发明的处理流程示意图。
图2a是实施例的输入三维模型集示例示意图。
图2b是对图2a输入三维模型集采用本发明所述方法进行处理,获得的基于局部粗糙度的子网格划分结果。
图2c是对图2a输入三维模型集采用本发明所述方法进行处理,嵌入水印后的三维模型的示意图。
具体实施方式
本发明公开了一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,包括水印信息嵌入过程和水印信息检测方法。其中,水印信息嵌入过程包括以下步骤:利用混沌系统生成混沌状态的二值序列作为水印信息;对网格模型的每个顶点进行局部粗糙度计算;对所有的顶点根据局部粗糙度进行从高到低排序,并平均划分为四个子网格;对于每个子网格中的顶点,计算顶点范数并进行归一化处理,通过直方图映射函数迭代调整顶点范数分布来嵌入水印;最后,在球坐标下根据水印后的顶点范数调整顶点坐标,再在保持角度不变的情况下将球坐标转化为笛卡尔坐标,最终得到水印网格模型。水印信息检测方法包括以下步骤:从水印网格模型的各个子网格中提取一份水印序列,然后通过多数投票机制确定提取的最终水印信息。本发明的水印方法能有效地同时降低对水印模型的几何扭曲和视觉扭曲,具有较高的嵌入容量,并能够抵抗各类常见模型攻击,如文件攻击、相似变换、噪声、平滑、量化、细分、简化和剪切,从而实现了为应用于不同领域的三维模型进行版权保护的目的。
本发明提出的基于局部粗糙度分析的三维网格水印嵌入和检测方法,采用了目前最为有效的局部粗糙度描述子对模型进行子网格的划分,在各个子网格中根据粗糙度的不同以不同强度嵌入水印,不仅可以提高水印的鲁棒性,而且可以有效地降低水印带来的几何扭曲和视觉降质。
具体而言,本发明公开了一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,包括水印信息嵌入过程和水印信息检测过程;
其中,水印信息嵌入过程为对三维网格模型根据顶点的粗糙度进行子网格划分,然后通过调整子网格的顶点范数分布实现多份水印嵌入;
水印信息检测过程为从每个子网格中提取一份水印序列,然后通过多数投票机制确定提取的最终水印信息。
所述水印信息嵌入过程包括以下步骤:
步骤11,水印序列生成:利用混沌系统调制混沌状态的二值序列作为水印信息;
步骤12,局部粗糙度分析:对三维网格模型所有顶点进行局部粗糙度计算,并按粗糙度值进行降序排序,平均划分子网格;
步骤13,水印嵌入:对每个子网格,调整顶点范数的分布以嵌入水印,并根据水印后的顶点范数修改顶点坐标。
步骤11中所述水印序列生成部分包括以下步骤:
步骤111,采用改进型的逻辑斯蒂映射xe+1=1-μxe 2对水印信息进行调制,e为自然数,使水印信息处于混沌状态,取分支参数μ=2,x0为迭代的初始值,并作为密钥存在;
步骤112,对于步骤111产生的水印序列进行二值量化,即当xe≥0时,取we为1,否则we为0,由we对应构成水印二值序列W=(w1,w2,…,wL),e=1,2,…L,L为水印长度。
步骤12中所述局部粗糙度包括以下步骤:
步骤121,计算三维网格模型所有顶点的离散高斯曲率,顶点的高斯曲率κG(vi)计算公式如下,i=1,2,3…,i取值上限是三维网格模型所有顶点总数:
其中,θj,表示在一阶三角形邻域内与vi相邻的内角,表示vi的一阶邻域三角形的个数;
步骤122,计算三维网格拉普拉斯矩阵:
其中,表示在一阶三角形邻域内所有与顶点vi相邻的顶点个数,αi,j和βi,j分别是连接顶点vi和顶点vj的边所分隔开的两个相邻三角形的相对的两个内角;
步骤123,计算三维网格模型所有顶点的局部粗糙度,顶点vi的局部粗糙度LRi根据其自身和邻接顶点的高斯曲率加权得到,i=1,2,3…,权重则由三维网格的拉普拉斯矩阵确定,计算公式如下:
步骤124,将三维网格模型所有顶点按照顶点粗糙度进行降序排序,并平均划分为NP个子网格,每个子网格Pn所含顶点个数相同:
其中,Pn表示划分的第n个子网格,1≤n≤NP,表示三维网格模型,vi表示中的第i个顶点,NV为三维网格模型顶点的数目,NP为划分子网格的数目。
步骤13中所述水印嵌入包括以下步骤:步骤131,对每个子网格,计算其网格中心on,公式如下:
其中,vk表示子网格Pn中的顶点坐标,A(vk)表示在子网格中所有包含顶点vk的三角形面片的面积;
步骤132,对子网格中的每个顶点,根据顶点坐标vk计算其到中心on的顶点范数ρk=||vk-on||,根据顶点范数将子网格中的顶点聚类到L个扇区中,公式如下:
Be={vk∈Pn|ρmin+ε(ρmax-ρmin)+(e-1)ρb≤ρk<ρmax-ε(ρmax-ρmin)+eρb},
其中,Be表示第e个扇区,1≤e≤L,Pn表示划分的第n个子网格,1≤n≤NP,ε∈[0,0.15]表示裁剪率,ρmin和ρmax分别表示该子网格中顶点范数的最小值和最大值,ρk为该子网格中的各个顶点的顶点范数,ρb为每个扇区中顶点范数范围的大小;
步骤133,将每个扇区的顶点范数ρe,k规范化到[0,1],转化为
步骤134,迭代地调整使得扇区中的顶点范数的平均值满足如下条件:
其中,α为水印嵌入强度因子,we为该扇区中所需要嵌入的水印值;
从而在每个扇区中嵌入1比特水印,根据嵌入水印后的顶点范数调整顶点坐标,从而得到水印后的网格模型。
步骤134中所述顶点范数的调整,采用迭代方式进行,具体步骤如下:
步骤1341,当在扇区中嵌入水印值为1时,初始化β=1,归一化的顶点范数调整为计算扇区中归一化顶点范数的平均值,如果则令β=β-Δβ,迭代进行本步骤,直至满足当嵌入水印值为0时,则在迭代过程中判断,当时,令β=β+Δβ,继续迭代,直至满足为止;
步骤1342,将归一化的顶点范数设置为调整后的值再进行反归一化处理得到ρ'e,k,将原始三维网格模型用球坐标表示,采用水印后的顶点范数ρ'e,k,保持角度不变转化为笛卡尔坐标系,从而得到并保存含有粗糙度划分信息的水印网格模型文件并记录各子网格中心信息。
水印信息检测过程包括:
步骤21,根据分发的含有粗糙度划分信息的水印网格模型文件,对各子网格,根据嵌入过程保存的子网格中心,计算顶点范数,聚类到L个扇区中,每个扇区中的顶点范数归一化到区间[0,1],计算归一化后顶点范数的平均值根据平均值大小判断该扇区中嵌入的水印值,公式如下:
步骤22,根据步骤21,提取到每个子网格的水印序列信息:对于所有水印序列,进行逐位比较水印值,当1的数目大于0的数目时,该比特水印判定为1,反之,判定为0,逐位判断完毕,得到提取的最终水印序列W'=(w′1,w'2,…,w'L);
步骤23,验证提取水印的有效性,对提取到的水印序列与原始水印序列进行逐位比对,计算位错误率BER,BER>0.5时认定为检测不到水印。
实施例
如图1所示,本实施例公开的一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,具体包括以下步骤:
步骤一,水印信息嵌入过程:对三维网格模型根据顶点的粗糙度划分为NP个子网格,然后通过调整子网格的顶点范数分布同时嵌入NP份水印。
步骤二,水印信息检测过程:从NP个子网格中各提取一份水印序列,然后通过多数投票机制逐位确定提取的最终水印信息。
本实施例的输入三维模型为三角形网格表示的三维模型。
下面具体介绍各个步骤的主要流程:
1.水印信息嵌入过程
对三维网格模型根据顶点的粗糙度划分为NP个子网格,然后通过调整子网格的顶点范数分布同时嵌入NP份水印,包括以下步骤:
步骤11,生成水印序列,包括文献8:魏金成,魏巍.改进型Logistic-Map混沌序列分析.电子设计工程,19(4):20-23中的改进型Logistic-Map混沌序列生成方式调制混沌状态水印序列。对输入的三维网格模型计算其各顶点的粗糙度,包括:文献9:M.Meyer,M.Desbrun,P.A.H.Barr.Discrete differential-geometry operators fortriangulated 2-manifolds.Visualization and Mathematics III,Springer Berlin Heidelberg,2003,35-57中的高斯曲率(Gaussian curvature,GC)和文献10:K.Wang,F.Torkhani,andA.Montanvert.A fast roughness-based approach to the assessment of 3D mesh visual quality.Computers&Graphics,2012,36:808-818中的网格拉普拉斯矩阵(MeshLaplacianmatrix)及局部粗糙度(Local roughness,LR)。从而对三维模型的每个顶点都计算出粗糙度值LRi,i=1,2,…,NV,NV为三维模型顶点的总数。
步骤12,如图2b所示,将三维网格模型所有顶点按照顶点粗糙度进行降序排序,并平均划分为NP多个子网格,每个子网格所含顶点个数相同:
其中,表示三维网格模型,NV为模型顶点的数目,NP为划分子网格的数目,取为4。
步骤13,对每个子网格,计算中心点on(xn,yn,zn),n=1,2,…NP,如文献11:J.W.Cho,R.Prost and H.Y.Jung.An oblivious watermarking for 3-D polygonal meshes usingdistribution of vertex norms.IEEE Transactions on Signal Processing,2007,55(1):142-155中计算顶点范数ρk=||vk-on||。采用文献12:M.Luo,A.G.Bors.Surface-preservingwatermarking of 3-D shapes.IEEE Transactions on Image Processing,2011,20(10):2813-2816和文献13:A.G.Bors,M.Luo.Optimized 3D Watermarking for MinimalSurface Distortion.IEEE Transactions on Image Processing,2013,22(5):1822-1835中的聚类方法,聚类顶点范数ρk到L个bins中并将每个bin中的顶点范数ρe,k归一化到[0,1]为采用文献11中的迭代方法调整各个bin中的归一化顶点范数使得每个bin中的归一化顶点范数均值满足条件:
步骤14,如图2c所示,对嵌入水印后的顶点范数进行反归一化处理,将原始模型转为球坐标表示,然后根据嵌入水印后的范数值,保持角度不变的情况下转化为笛卡尔坐标,从而得到并保存含有粗糙度划分信息的水印网格模型文件并记录各子网格中心信息。
2.水印信息检测过程
从NP个子网格中各提取一份水印序列,然后通过多数投票机制逐位确定提取的最终水印信息。包括以下步骤:
步骤21,对于含有粗糙度划分信息的水印网格模型文件,针对各子网格,根据嵌入过程保存的中心信息,以与嵌入方法同样的方式计算顶点范数,将顶点聚类到L个bins中,每个bin中的顶点范数归一化到区间[0,1],计算归一化后顶点范数的平均值若平均值则该bin中提取出水印1,反之,提取到水印0。
步骤22,根据步骤21,可提取到每个子网格的水印序列信息。对于多个水印序列,采用多数投票机制,逐位比较水印值,当1的数目大于0的数目时,该比特水印判定为1,反之,判定为0,逐位判断完毕,得到提取的最终水印序列W'=(w′1,w'2,…,w'L)。
步骤23,验证提取水印的有效性,对提取到的水印序列与原始水印序列进行逐位比对,计算位错误率通常当位错误率BER>0.5时则认为检测不到水印信息。当水印模型中检测到含有原始水印时,即可认为该水印的持有者为三维模型的版权所有人。
实施例
本实施例中,测试模型选用Cyberware公司提供的Venus,Horse和Rabbit来进行实验,其中Venus模型有100759个顶点,Horse模型有112642个顶点,Rabbit模型有70658个顶点。如图2所示为输入的三维网格模型,通过本实施例所述的基于局部粗糙度分析的三维网格水印嵌入和检测方法,可将图2a中的三维网格模型根据局部粗糙度划分为如图2b所示的4个子网格区域,并嵌入水印得到如图2c所示的水印网格模型。具体实施过程如下:
1、水印嵌入
取水印调制密钥μ=2,x0=0.7,长度L=256,生成水印信息。顶点范数聚类时裁剪率ε=0.01,子网格数目NP=4,四个子网格的嵌入水印强度分别设置为0.04,0.03,0.01和0.005。
2、水印检测
为验证方法的有效性,我们对嵌入水印后的模型采用LIRIS实验室开发的3D MeshWatermarking Benchmark软件进行各类常见攻击,如文件攻击、相似变换、噪声、平滑、量化、细分、简化和剪切。通过计算位错误率BER来衡量攻击后的水印模型提取到的水印序列与嵌入水印序列之间的差异。除从图2a,2c可主观上评价水印后模型的视觉误差外,还定量评价其几何扭曲(采用最大均方根MRMS测量)和视觉扭曲(采用网格结构扭曲MSDM测量)程度。
从实验结果可以看出,应用本发明后,原始模型在嵌入水印后,几何扭曲和视觉扭曲均达到较小的值,如表1所示。水印模型对于文件攻击、相似变换攻击以及中点细分攻击具有免疫性,即BER=0。对于其他几类常见攻击也有较高的鲁棒性,如表2所示,能够较好地保护应用于不同领域的三维模型的版权。
表1水印模型的几何扭曲和视觉扭曲测量
水印模型 | Venus | Horse | Rabbit |
MRMS | 0.64×10-4 | 0.71×10-4 | 0.69×10-4 |
MSDM | 0.12 | 0.17 | 0.14 |
表2水印模型鲁棒性实验结果
由以上实施方式可以看出,与现有技术相比,本发明基于局部粗糙度分析的三维网格模型水印嵌入和检测方法具有如下有益效果:本发明有效降低了三维模型水印嵌入引起的几何扭曲和视觉降质;其次,本发明具有较好的鲁棒性,能够抵抗各类常见模型攻击,如文件攻击、相似变换、噪声、平滑、量化、细分、简化和剪切;最后,本发明嵌入水印容量相对较高,可为广泛应用于不同领域的三维网格模型提供有效地版权保护。
本发明提供了一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (7)
1.一种基于局部粗糙度分析的三维网格水印嵌入和检测方法,其特征在于,包括水印信息嵌入过程和水印信息检测过程;
其中,水印信息嵌入过程为对三维网格模型根据顶点的粗糙度进行子网格划分,然后通过调整子网格的顶点范数分布实现多份水印嵌入;
水印信息检测过程为从每个子网格中提取一份水印序列,然后通过多数投票机制确定提取的最终水印信息。
2.根据权利要求1所述的方法,其特征在于,所述水印信息嵌入过程包括以下步骤:
步骤11,水印序列生成:利用混沌系统调制混沌状态的二值序列作为水印信息;
步骤12,局部粗糙度分析:对三维网格模型所有顶点进行局部粗糙度计算,并按粗糙度值进行降序排序,平均划分子网格;
步骤13,水印嵌入:对每个子网格,调整顶点范数的分布以嵌入水印,并根据水印后的顶点范数修改顶点坐标。
3.根据权利要求2所述的方法,其特征在于,步骤11中所述水印序列生成部分包括以下步骤:
步骤111,采用改进型的逻辑斯蒂映射xe+1=1-μxe 2对水印信息进行调制,e为自然数,使水印信息处于混沌状态,取分支参数μ=2,x0为迭代的初始值,并作为密钥存在;
步骤112,对于步骤111产生的水印序列进行二值量化,即当xe≥0时,取we为1,否则we为0,由we对应构成水印二值序列W=(w1,w2,...,wL),e=1,2,...L,L为水印长度。
4.根据权利要求2所述的方法,其特征在于,步骤12中所述局部粗糙度包括以下步骤:
步骤121,计算三维网格模型所有顶点的离散高斯曲率,顶点vi的高斯曲率κG(vi)计算公式如下,,i取值上限是三维网格模型所有顶点总数:
其中,θj,表示在一阶三角形邻域内与vi相邻的内角,表示vi的一阶邻域三角形的个数;
步骤122,计算三维网格拉普拉斯矩阵:
其中,表示在一阶三角形邻域内所有与顶点vi相邻的顶点个数,αi,j和βi,j分别是连接顶点vi和顶点vj的边所分隔开的两个相邻三角形的相对的两个内角;
步骤123,计算三维网格模型所有顶点的局部粗糙度,顶点vi的局部粗糙度LRi根据其自身和邻接顶点的高斯曲率加权得到,i=1,2,3...,权重则由三维网格的拉普拉斯矩阵确定,计算公式如下:
步骤124,将三维网格模型所有顶点按照顶点粗糙度进行降序排序,并平均划分为NP个子网格,每个子网格Pn所含顶点个数相同:
其中,Pn表示划分的第n个子网格,1≤n≤NP,表示三维网格模型,vi表示中的第i个顶点,NV为三维网格模型顶点的数目,NP为划分子网格的数目。
5.根据权利要求2所述的方法,其特征在于,步骤13中所述水印嵌入包括以下步骤:
步骤131,对每个子网格,计算其网格中心on,公式如下:
其中,vk表示子网格Pn中的顶点坐标,A(vk)表示在子网格中所有包含顶点vk的三角形面片的面积;
步骤132,对子网格中的每个顶点,根据顶点坐标vk计算其到中心on的顶点范数ρk=||vk-on||,根据顶点范数将子网格中的顶点聚类到L个扇区中,公式如下:
Be={vk∈Pn|ρmin+ε(ρmax-ρmin)+(e-1)ρb≤ρk<ρmax-ε(ρmax-ρmin)+eρb},
其中,Be表示第e个扇区,1≤e≤L,Pn表示划分的第n个子网格,1≤n≤NP,ε∈[0,0.15]表示裁剪率,ρmin和ρmax分别表示该子网格中顶点范数的最小值和最大值,ρk为该子网格中的各个顶点的顶点范数,ρb为每个扇区中顶点范数范围的大小;
步骤133,将每个扇区的顶点范数ρe,k规范化到[0,1],转化为
步骤134,迭代地调整使得扇区中的顶点范数的平均值满足如下条件:
其中,α为水印嵌入强度因子,we为该扇区中所需要嵌入的水印值;
从而在每个扇区中嵌入1比特水印,根据嵌入水印后的顶点范数调整顶点坐标,从而得到水印后的网格模型。
6.根据权利要求2所述的方法,其特征在于,步骤134中所述顶点范数的调整,采用迭代方式进行,具体步骤如下:
步骤1341,当在扇区中嵌入水印值为1时,初始化β=1,归一化的顶点范数调整为计算扇区中归一化顶点范数的平均值,如果则令β=β-Δβ,迭代进行本步骤,直至满足当嵌入水印值为0时,则在迭代过程中判断,当时,令β=β+Δβ,继续迭代,直至满足为止;
步骤1342,将归一化的顶点范数设置为调整后的值再进行反归一化处理得到ρ'e,k,将原始三维网格模型用球坐标表示,采用水印后的顶点范数ρ'e,k,保持角度不变转化为笛卡尔坐标系,从而得到并保存含有粗糙度划分信息的水印网格模型文件并记录各子网格中心信息。
7.根据权利要求5所述的方法,其特征在于,水印信息检测过程包括:
步骤21,根据分发的含有粗糙度划分信息的水印网格模型文件,对各子网格,根据嵌入过程保存的子网格中心,计算顶点范数,聚类到L个扇区中,每个扇区中的顶点范数归一化到区间[0,1],计算归一化后顶点范数的平均值根据平均值大小判断该扇区中嵌入的水印值,公式如下:
步骤22,根据步骤21,提取到每个子网格的水印序列信息:对于所有水印序列,进行逐位比较水印值,当1的数目大于0的数目时,该比特水印判定为1,反之,判定为0,逐位判断完毕,得到提取的最终水印序列W'=(w′1,w'2,...,w'L);
步骤23,验证提取水印的有效性,对提取到的水印序列与原始水印序列进行逐位比对,计算位错误率BER,BER>0.5时认定为检测不到水印。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410567649.1A CN104281994B (zh) | 2014-10-22 | 2014-10-22 | 一种基于局部粗糙度分析的三维网格水印嵌入和检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410567649.1A CN104281994B (zh) | 2014-10-22 | 2014-10-22 | 一种基于局部粗糙度分析的三维网格水印嵌入和检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104281994A true CN104281994A (zh) | 2015-01-14 |
CN104281994B CN104281994B (zh) | 2017-03-22 |
Family
ID=52256845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410567649.1A Active CN104281994B (zh) | 2014-10-22 | 2014-10-22 | 一种基于局部粗糙度分析的三维网格水印嵌入和检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104281994B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106485642A (zh) * | 2016-09-30 | 2017-03-08 | 北京交通大学 | 在三维网格模型中嵌入可见水印的方法 |
CN107067361A (zh) * | 2016-01-27 | 2017-08-18 | 韩国科学技术院 | 利用分割算法的三维网格模型水印方法及装置 |
CN108537717A (zh) * | 2018-05-10 | 2018-09-14 | 西安理工大学 | 基于角度调制的三维网格盲水印算法 |
CN108564518A (zh) * | 2017-12-21 | 2018-09-21 | 西安理工大学 | 基于径向距离和特征点的点云水印算法 |
CN108734712A (zh) * | 2017-04-18 | 2018-11-02 | 北京旷视科技有限公司 | 背景分割的方法、装置及计算机存储介质 |
CN109785443A (zh) * | 2018-12-21 | 2019-05-21 | 博迈科海洋工程股份有限公司 | 一种针对大型海洋工程装备的三维模型简化方法 |
CN110091221A (zh) * | 2019-05-13 | 2019-08-06 | 成都工业学院 | 一种模具表面处理方法 |
WO2020078323A1 (zh) * | 2018-10-15 | 2020-04-23 | 华为技术有限公司 | 水印嵌入方法、装置、终端及存储介质 |
CN111696111A (zh) * | 2020-06-15 | 2020-09-22 | 重庆大学 | 一种基于ssdf衰减图聚类的3d模型网格分割方法 |
CN113284036A (zh) * | 2021-06-15 | 2021-08-20 | 苏州科技大学 | 基于虚拟格网区间映射的矢量地图可逆水印算法 |
CN113642534A (zh) * | 2021-10-13 | 2021-11-12 | 海门市重型矿山机械厂 | 基于人工智能的采矿设备故障检测方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622721B (zh) * | 2012-03-06 | 2014-01-15 | 福建师范大学 | 基于深度图像映射的三维网格模型盲水印方法 |
CN103198448B (zh) * | 2013-04-11 | 2016-08-03 | 江苏大学 | 基于顶点曲率的三维模型数字水印嵌入与盲检测方法 |
CN103247017B (zh) * | 2013-05-08 | 2015-11-18 | 江苏大学 | 基于网格分割的三维网格模型非盲水印实现方法 |
-
2014
- 2014-10-22 CN CN201410567649.1A patent/CN104281994B/zh active Active
Non-Patent Citations (4)
Title |
---|
JAE-WON CHO ETAL.: "An Oblivious Watermarking for 3-D Polygonal Meshes Using Distribution of Vertex Norms", 《IEEE TRANSACTIONS ON SIGNAL PROCESSING》 * |
KWANGTAEK KIM ETAL.: "Roughness-Adaptive 3-D Watermarking Based on Masking Effect of Surface Roughness", 《IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY》 * |
朱利利 等: "基于粗糙度的三维网格模型数字水印", <<重庆理工大学学报(自然科学)>> * |
陈强 等: "基于表面粗糙度的自适应三维模型盲水印算法", 《计算机应用》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107067361A (zh) * | 2016-01-27 | 2017-08-18 | 韩国科学技术院 | 利用分割算法的三维网格模型水印方法及装置 |
US10769745B2 (en) | 2016-01-27 | 2020-09-08 | The Korea Advanced Institute Of Science And Technology | Three-dimensional mesh model watermarking method using segmentation and apparatus thereof |
CN106485642B (zh) * | 2016-09-30 | 2019-05-24 | 北京交通大学 | 在三维网格模型中嵌入可见水印的方法 |
CN106485642A (zh) * | 2016-09-30 | 2017-03-08 | 北京交通大学 | 在三维网格模型中嵌入可见水印的方法 |
CN108734712B (zh) * | 2017-04-18 | 2020-12-25 | 北京旷视科技有限公司 | 背景分割的方法、装置及计算机存储介质 |
CN108734712A (zh) * | 2017-04-18 | 2018-11-02 | 北京旷视科技有限公司 | 背景分割的方法、装置及计算机存储介质 |
CN108564518A (zh) * | 2017-12-21 | 2018-09-21 | 西安理工大学 | 基于径向距离和特征点的点云水印算法 |
CN108564518B (zh) * | 2017-12-21 | 2021-10-22 | 西安理工大学 | 基于径向距离和特征点的确定点云水印方法 |
CN108537717A (zh) * | 2018-05-10 | 2018-09-14 | 西安理工大学 | 基于角度调制的三维网格盲水印算法 |
CN108537717B (zh) * | 2018-05-10 | 2021-11-16 | 西安理工大学 | 基于角度调制的三维网格盲水印方法 |
WO2020078323A1 (zh) * | 2018-10-15 | 2020-04-23 | 华为技术有限公司 | 水印嵌入方法、装置、终端及存储介质 |
US11869112B2 (en) | 2018-10-15 | 2024-01-09 | Huawei Technologies Co., Ltd. | Watermark embedding method and apparatus, terminal, and storage medium |
CN109785443A (zh) * | 2018-12-21 | 2019-05-21 | 博迈科海洋工程股份有限公司 | 一种针对大型海洋工程装备的三维模型简化方法 |
CN109785443B (zh) * | 2018-12-21 | 2023-05-23 | 博迈科海洋工程股份有限公司 | 一种针对大型海洋工程装备的三维模型简化方法 |
CN110091221A (zh) * | 2019-05-13 | 2019-08-06 | 成都工业学院 | 一种模具表面处理方法 |
CN111696111A (zh) * | 2020-06-15 | 2020-09-22 | 重庆大学 | 一种基于ssdf衰减图聚类的3d模型网格分割方法 |
CN111696111B (zh) * | 2020-06-15 | 2023-04-18 | 重庆大学 | 一种基于ssdf衰减图聚类的3d模型网格分割方法 |
CN113284036A (zh) * | 2021-06-15 | 2021-08-20 | 苏州科技大学 | 基于虚拟格网区间映射的矢量地图可逆水印算法 |
CN113642534A (zh) * | 2021-10-13 | 2021-11-12 | 海门市重型矿山机械厂 | 基于人工智能的采矿设备故障检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104281994B (zh) | 2017-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104281994A (zh) | 一种基于局部粗糙度分析的三维网格水印嵌入和检测方法 | |
Zois et al. | Offline signature verification and quality characterization using poset-oriented grid features | |
CN101246586B (zh) | 一种基于曲线分割的矢量地图水印方法 | |
Zhao et al. | Particle shape quantification using rotation-invariant spherical harmonic analysis | |
CN103942540A (zh) | 基于曲波纹理分析和svm-knn分类的假指纹检测算法 | |
Yang et al. | Mesh discriminative features for 3D steganalysis | |
CN103048329A (zh) | 一种基于主动轮廓模型的路面裂缝检测方法 | |
CN104217388A (zh) | 一种基于fssvm的图像水印嵌入、提取的方法与装置 | |
CN104794671A (zh) | 抗投影攻击的矢量空间数据盲水印方法 | |
KR20170089752A (ko) | 분할 기법을 이용한 3차원 메쉬 모델 워터마킹 방법 및 장치 | |
Hui et al. | An active learning method for DEM extraction from airborne LiDAR point clouds | |
CN104217389A (zh) | 一种基于改进Arnold变换的图像水印嵌入、提取的方法与装置 | |
CN108335256B (zh) | 局部球坐标系下的三维盲水印嵌入和提取检测方法及装置 | |
Yang et al. | A steganalytic algorithm for 3D polygonal meshes | |
CN108876694B (zh) | 基于Schur分解的三维模型盲数字水印算法 | |
Liang et al. | Medial axis extraction algorithm specializing in porous media | |
CN103310134B (zh) | 一种基于地理语义支持的矢量数据水印防伪方法 | |
CN106709855B (zh) | 基于Beamlet线特征定位的3D模型水印方法 | |
Tsai et al. | A low-complexity region-based authentication algorithm for 3D polygonal models | |
Wang et al. | An adaptive watermark detection algorithm for vector geographic data | |
Hu et al. | Pore-network model for geo-materials | |
Li et al. | 3D steganalysis using laplacian smoothing at various levels | |
CN109977849B (zh) | 一种基于迹变换的图像纹理特征融合提取方法 | |
Liu et al. | A watermarking algorithm for 3D point cloud models using ring distribution | |
Feng | A new watermarking algorithm for point model using angle quantization index modulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |