專利名稱:盲水印的三維網格分割方法
技術領域:
本發(fā)明涉及一種盲水印的三維網格分割方法。
背景技術:
近十年來,數字水印已經成為版權保護和所有權聲明的一種重要方法。大部分可應用的 數字水印技術主要集中于傳統(tǒng)的數據媒體類型如音頻、圖像和視頻,他們廣泛地分布在互連 網上。直到若干年前,學者們才開始對三維水印進行研究。這是三維對象越來越多地在建筑 設計、虛擬現實、娛樂、機械工程和文化遺產等領域廣泛傳播的結果。但是,對三維對象的 研究還遠沒有像對圖像和視頻的研究那樣的深入。
任何水印算法的兩個主要要求是水印的魯棒性和安全性。魯棒性要求水印能夠被檢測出
來即使水印模型經歷各種有意或無意的變換和攻擊。為什么大部份的三維圖形對象水印算法 是非盲水印,在檢測時需要載體的信息,或者一些算法需要復雜的注冊的過程? 一般而言, 一旦有意或無意的操作發(fā)生,如果沒有載體的信息的話水印的嵌入和提取將會不同步,結果 導致水印檢測失敗。然而,除非多攜帶密鑰或一些附加信息,否則在水印的檢測過程中安全 需求是實現不了的。這樣可以避免多傳輸或復制載體也能增加安全性。
在大部分的數字水印應用中存在抗剪切或分割的問題。在這種情況下,任何原始相關信 息的丟失都將導致在提取水印吋需要同步恢復丟失的信息才能提取嵌入的水印,在某些情況 下這會導致嵌入的數據會丟失。不僅三維水印需要處理這種問題,許多變換的空域水印算法 也需要處理這種問題。
本發(fā)明所述的網格分割算法是以改進三維模型盲水印抵抗剪切、變形等拓撲攻擊的魯棒 性為目的的。有兩種方法來解決這種問題。 一種方法是把三維模型分割成若干塊,每個水印 位重復的嵌入到那些水印塊中,在剪切和簡化攻擊的情況下,可以從剩下的塊中提取水印。 另一種方法是將每個水印位復制c次,也就是同一水印位被重復嵌入c次,這樣可以增強水
印的抗攻擊性。然而后者存在下述的缺點
1) 計算代價高。如特征值分解或重構水印模型時高階的Lapkcian矩陣求逆將花費相當 多的時間來執(zhí)行。
2) 缺少具有顯著幾何特征的替代網格作為水印目標。
當網格被分割成特殊個數的替代網格的時候,計算時間將大大的減少,并且水印技術可 以利用網格可被開發(fā)的完全分開的局部特征。
有效的網格分塊是高質量三維水印算法的關鍵。但是,由于他們會遇到任意的攻擊,三維網格分塊不是件容易的事。在水印提取階段,三維網格在沒有載體網格的情況下能夠被同 步的分割成塊,這在三維水印架構里扮演重要的角色。
分割算法把網格分割成特定數量的塊,分割將通過以下幾種方式之一來實施。他們對水 印應用有著不同的理論貢獻。
基于拓撲學的分割技術通過鄰接頂點來分割網格。過去幾年解決圖像分割問題的算法還 很少。當給定網格連通性時,通過鄰接關系來對頂點分組并不需要網格的幾何信息。Ohbudli 的水印算法從多邊形網格的拓撲結構來構造Kirchhoff矩陣。通過修改這個矩陣的光譜系數來 起嵌入水印。 一個簡單的網格分割算法雖然不能抵抗網格簡化攻擊,但也可以在一定程度上 增強抗切割攻擊的魯棒性。
基于幾何學的分隔技術是通過位置的相近性來分隔網格獨立于網格連接關系。Lee的算 法就是基于幾何學分割的例子,在沒有連接信息的情況下也能正確計算相鄰頂點。算法通過 一個重復的操作來得到若干個中心點并且網格頂點按中心和頂點之間距離最小的原則群集成 塊。但是被剪切的網格的塊中心點會偏離于原來載體網格的中心點。在遇到剪切攻擊的情況 下這種網格分割不穩(wěn)定。為了進行水印提取和重排列處理,這些塊的中心點必須用一個列表 來傳輸。
以上提到的兩種方法,塊的數量是人為給定的。大部分基于語意學的網格分塊算法,根 據網格區(qū)域的同質性自動決定分塊的數量。他們利用三維多邊形網格幾何和拓撲的特性進行 分組的方法來把網格分割成有意義的子網格。到現在為止基于語意學的網格分塊方法的水印 應用還很少。
雖然網格分割問題已經受到了很大的關注,但主要的研究集中在為了實現高效的壓縮和 編碼的三維模型分割方面。將現有的這些分割算法應用于三維水印,存在的主要問題是真實 的分割可能不滿足水印的需要,因為三維壓縮架構依賴于一些相關的變換參數和剩余的補償 替代網格之間差距的誤差。本發(fā)明的目標是只須很少的輔助數據來開發(fā)一種能夠預測水印網 格分割邊界的分割方法。
發(fā)明內容
本發(fā)明的目的在于提供一種盲水印的三維網格分割方法,該方法不僅在水印嵌入過程中 只需攜帶少量信息就能夠實現對攻擊后的模型實施同步分塊,而且水印檢測過程中不需要原 始模型就能提取水印,只需很少的輔助數據就能夠預測水印網格分割邊界。
為實現上述之目的,本發(fā)明的技術方案是 一種盲水印的三維網格分割方法,其特征在 于水印的嵌入過程包括以下步驟
(1)用NPCA算法對原模型進行處理,并將所有頂點分成復數個集合;(2) 進行網格分割;將所述復數個頂點集合根據平均距離映射成正視圖,并從正視圖中 選取適當的相素作為附加信息,從而得到附加信息抽樣視(3) 嵌入水印信息; 水印的提取過程包括以下步驟-
(a) 用NPCA算法對受攻擊的模型進行處理;
(b) 提取受攻擊模型的附加信息抽樣視(c) 將原模型的附加信息抽樣視圖與受攻擊模型的附加信息抽樣視圖相減,進行網格對 齊然后估算分割網格;
(d) 提取水印。
本發(fā)明的有益效果是通過從載體網格的正視圖中選取適當的相素作為附加信息來匹配三 維網格正視圖,并不需要原載體網格就能決定載體網格的關鍵位置,然后劃分出穩(wěn)定的分塊 邊界。因此,水印嵌入過程中只需攜帶少量信息就能夠實現對攻擊后的模型實施同步分塊, 水印檢測過程中不需要原始模型就能提取水印,是一種只需很少的輔助數據就能夠預測水印 網格分割邊界的盲水印分割方法。
下面結合附圖及具體實施例對本發(fā)明作進一步的詳細說明。
圖1是本發(fā)明實施例的流程圖。
具體實施例方式
我們以將原始網格和攻擊網格分割成跟水印嵌入和檢測階段類似的特殊塊為目的。水印 檢測過程中除了需要一些附加信息外不需要原始網格。如果水印網格遭受輕微的攻擊,原始 網格和水印網格之間的相似部分的同步就比較容易。攻擊會導致原始網格和水印網格的同步 分割信息嚴重地丟失。
本發(fā)明的盲水印的三維網格分割方法,水印的嵌入過程包括以下步驟
(1) 用NPCA算法對原模型進行處理,并將所有頂點分成復數個集合;
(2) 進行網格分割;將所述復數個頂點集合根據平均距離映射成正視圖,并從正視圖中 選取適當的相素作為附加信息,從而得到附加信息抽樣視(3) 嵌入水印信息; 水印的提取過程包括以下步驟
(a) 用NPCA算法對受攻擊的模型進行處理;
(b) 提取受攻擊模型的附加信息抽樣視(c) 將原模型的附加信息抽樣視圖與受攻擊模型的附加信息抽樣視圖相減,進行網格對齊然后估算分割網格; (d)提取水印。
三維網格同步分塊的主要步驟如圖1所示。下面將詳細敘述本發(fā)明的減少網格分割誤差 問題的方法。
1. NPCA的作用
所有的三維模型包括水印模型存在許多不同的類型,使得很難找到一種對齊方法可以適 用于所以可能的分類。最著名的對齊方法是PCA方法和Karhunen-Loeve變換。PCA算法輸 入一些頂點集合得到一些互不相關的特性。模型的頂點集合和模型三角形的質心作為PCA的 輸入。CPCA和NPCA協(xié)方差計算如下
Ci = [f(Ai十玩+ Ci)+9爭十Bi十Cj)/3)]
A '=1
其中,E是三維模型的總面積,Ai,Bi,Ci是三角形Ti的頂點,i^,2,…,N, N是模型三角形 的個數。
&,叫是三角形r,的表面積和單位法向量。f(V)=(V-m)(v-m)T 。這里把m尸丄^^,.Hi做
£ ,=i
為質心m,而不是mfl^A.fAi+Bi+CO/G做為質心。因為后者對拓撲攻擊比較敏感。表l
比較了兩種m的選擇。敏感性有歐氏距離《nM,m嚴),《m2,m嚴)來定義,其中m" , Z=l,2 ,是
被攻擊模型的質心。 考慮如下攻擊類型
1) 網格不完全切除,面的一邊切除掉10%, 20%, 30%;
2) 網格簡化,基于邊刪除的方法,簡化30%和50%。
那么單位特征向量d或C2就被計算出來了,他代表模型的主要方向并形成正交的訴3 空間。這些向量按特征值的遞增或遞減進行分類并用來對齊模型坐標的主要的軸。也就是模 型被平移使得模型質心與坐標原點重合并旋轉主要的軸和坐標軸重合。
然而,如果對模型實施拓撲攻擊的話,模型的主方向會發(fā)生偏離。即使如此,我們也可
以發(fā)現PCA主方向的偏離度比NPCA主方向的偏離度大。記《。,/l^,f為d的按順序遞減 的特征值(《)2《、《)〉0),0(/),11(/)是相應的特征向量。同理才)2《^豸)X)是Q的特征值,ui、t4n),ii^是相應的特征向量。當模型受到拓撲攻擊時,CPCA和NPCA協(xié)方差矩 陣重新計算,記為C,W和C"。向量《,v『,v^對應于C^的特征值/4^^^/^,特征向 量vf)W),v^對應于Ct)的W) 2/4"") 2/4n)>0特征值。記a"g(u"),v"))為向量u!s)和v")的夾 角,其中se(c,n)。
通過實驗,質心m2和正交坐標C2被攻擊后跟d相比受到了輕微的影響。這使得我們 用m2做為模型的質心和NPCA算法來分割模型,這將在下一部分詳細敘述。
2. 分割網格
我們的網格分割算法比較適合于把網格分割成2, 4或8塊。用方程來表示,這里我們記 訴s空間平面方程ax+by+cz+d-0為p-(a,b,c,d),平面p和向量v的關系記為pdc(p,v)。如果 pdc(p,v)X),那么v就歸到同一組,否則歸到其他組。
計算Q的特征向量并且按照特征值遞減進行分類。使模型對齊到公認的系統(tǒng)。定義兩平 面Pl=(0, 1,0,0)和p2=(0, 0,1,0)。以分割成4部分為例,對齊后模型的所有的頂點Vj簡記 為
Gb if pdc(PbVj)〉0 & pdc(p2,Vi)>0 G2, if pdc(ppVi)〉0 & pdc(p2,Vj)《0 G3, if pdc(Pi,Vj)SO & pdc(p2,Vi)>0 G4, if pdc(Pi,Vi)SO & pdc(p2,Vj)S0
其中N是模型頂點數。
3. 攻擊模型的分割邊界評估
總的來說,盲水印算法比較實用,因為水印檢測過程不需要原始模型的信息。然而眾所 周知的是盲水印算法的魯棒性比非盲水印的魯棒性差,在魯棒性方面圩多優(yōu)化算法取得了很 大的進步。在這一部分將詳細的敘述在水印檢測階段如何同步地分割在水印嵌入階段只嵌入 少量附加信息的網格。
實際上,對于網格分割提出了一個新的圖像匹配分割算法,簡稱EM。首先,得到三維被 攻擊的模型的公認位置的視圖。這個視圖由三維模型面到質心邁距離的二維灰度圖像來表示。 那么方塊內平均錯誤的方法被用來評估帶有輔助信息的原始模型的公認位置參數,也可以用 來評估被攻擊的模型公認位置參數。
最后,執(zhí)行一個三維模型的逆相似變換,這樣分割邊界就畫出來了。詳細過程如下 首先將被攻擊的模型變換到公認位置,它的表面被繪制成視圖。開始,我們設置 《=(27' + 1); /(45),化-2^/(2S),/,hO,l,…,25-l其中5是抽樣率。所有頂點vi=(xi,yi,zi),^=1,2,...^)被轉換到球面坐標
《=Kv,) = VV+x2+z,2 ,
《=e(v,) = arctan(^,2 +z,2 )/乂, "=p(v,.) = arctan(z, /;c,). 然后我們定義O(y,A)和craA:)如下 Ca) = {v, i & S<S < .
0ca),其中i-i是模操作.如果0(M)為空,那么crca"o.
然后,范圍在
的ol/,W和二維灰度圖像也叫做視圖,從xoy-平面前的一個視點得
到。也就是,這個視圖把平均距離信息ol/,W做為xoy平面上的投影。因為xoy-平面前的信
息和xoy-平面后的信息重疊在xoy-平面上,除前者之外后者被拼湊成一塊。為了方便起見, 我們把攻擊模型的視圖叫做攻擊視圖,也由矩陣M,d 來表示。
我們使用EM算法來決定分塊邊界。設^…^為選擇的像素集合,他們分散在載體網格視 圖里,將被用來識別攻擊模型的分割邊界在分割階段。有很多方法來確定這些像素,例如選 擇滿足/mod8-4條件的像素。按照經驗我們設置4^/6""4^/32為附加信息量。
EM算法搜索攻擊視圖矩陣和^…^的平移距離和旋轉角度使得方塊平均錯誤最小
,!X+W6- ,]2 (2)
其中",厶)是^在載體網格視圖中的位置并且(^, )是沿水平和垂直方向偏離",/J
的值。很顯然,攻擊視圖可以通過平移和旋轉載體網格得到。所以方程(2)等價于-
廳S[°>i+ i",r),p2+ 2(w) 一&]2
,ipos(&)+jposfe).tan(力 力,pos(^)-ipos(^)-tan(力 其中化,化是/W'i的偏離象素,函數ipos(仏),jpos(&)分別代表《,的水平和垂直位置, 這里一個格子表示一個象素。我們得到平移和旋轉的度數是輕微的這個結論。整數外,P2的搜索范圍限定在[^/8,B/8]之間并且rm/(2^),選擇象-^/4^^5/4這樣小的整數,平均方塊誤 差的最小值的計算時間也隨著減少。
而且,我們需要通過攻擊模型的質心m來估算原始網格的質心。質心修正的過程將改進 分割的精度,因為我們的網格分割算法在模型對齊到公認的相關框架之后執(zhí)行的。在平移距 離^,P2和旋轉角度/W基礎上,我們定義增量m那么
最后,實施旋轉和平移變換并且所有的頂點根據方程l的方法分成若干塊。平移使得m' 與坐標原點一致。那么模型里的所有頂點通過下列式子得到
其中y^/^兀/5,WziY(ca)是繞y軸或z軸弧度為co的旋轉矩陣。更多不規(guī)則的塊可以通過指定的相 關路徑比如Dijkstra路徑來獲得。
以上是本發(fā)明的較佳實施例,凡依本發(fā)明技術方案所作的改變,所產生的功能作用未超 出本發(fā)明技術方案的范圍時,均屬于本發(fā)明的保護范圍。
權利要求
1、一種盲水印的三維網格分割方法,其特征在于水印的嵌入過程包括以下步驟(1)用NPCA算法對原模型進行處理,并將所有頂點分成復數個集合;(2)進行網格分割;將所述復數個頂點集合映射成映射視圖,并從映射視圖中選取適當的相素作為附加信息,從而得到附加信息抽樣視圖;(3)嵌入水印信息;水印的提取過程包括以下步驟(a)用NPCA算法對受攻擊的模型進行處理;(b)提取受攻擊模型的附加信息抽樣視圖;(c)將原模型的附加信息抽樣視圖與受攻擊模型的附加信息抽樣視圖相減,進行網格對齊然后估算分割網格;(d)提取水印。
2、根據權利要求1所述的盲水印的三維網格分割方法,其特征在于在步驟(2)中,將所 述復數個頂點集合根據平均距離映射成正視圖,并從正視圖中選取適當的相素作為附加信息。
全文摘要
本發(fā)明涉及一種盲水印的三維網格分割方法,水印的嵌入過程包括以下步驟1)用NPCA算法對原模型進行處理,并將所有頂點分成復數個集合;2)進行網格分割;將頂點集合映射成正視圖,并從正視圖中選取適當的相素得到附加信息抽樣視圖;3)嵌入水印信息;水印的提取過程包括以下步驟a)用NPCA算法對受攻擊的模型進行處理;b)提取受攻擊模型的附加信息抽樣視圖;c)將原模型的附加信息抽樣視圖與受攻擊模型的附加信息抽樣視圖相減,進行網格對齊然后估算分割網格;d)提取水印。該方法只需攜帶少量信息就能夠實現對攻擊后的模型實施同步分塊,且不需要原始模型就能提取水印,只需很少的輔助數據就能夠預測水印網格分割邊界。
文檔編號G06T1/00GK101533509SQ20091011135
公開日2009年9月16日 申請日期2009年3月23日 優(yōu)先權日2009年3月23日
發(fā)明者姚志強, 孔祥增, 潘日晶, 陳麗萍 申請人:福建師范大學