任帥 徐振超 王震 賀媛 張弢 蘇東旭 慕德俊
摘 要:針對現(xiàn)有三維模型信息隱藏算法無法有效抵抗不均勻壓縮的問題,提出一種基于多融合態(tài)的多載體低密度的信息隱藏算法。首先通過平移和縮放對多個三維模型進行定位、定向及定型;其次對三維模型進行不同角度的旋轉(zhuǎn),以中心點作為融合點進行融合,得到多個融合態(tài);再次,利用局部高度和Mean Shift聚類分析算法對融合態(tài)模型的頂點進行能量劃分,得到不同能量的頂點;最后,通過修改頂點坐標(biāo)的方法將經(jīng)過Arnold置亂變化的秘密信息快速隱藏于多個融合態(tài)和三維模型中。實驗結(jié)果表明,該算法對抵御不均勻壓縮的攻擊有很好的魯棒性且具有很高的不可見性。
關(guān)鍵詞:信息隱藏;三維模型;融合態(tài);局部高度理論;Mean Shift聚類分析
中圖分類號:TP309.2;TP301.6
文獻標(biāo)志碼:A
文章編號:1001-9081(2019)04-1100-06
Abstract: Aiming at the problem that the existing 3D model information hiding algorithms cannot effectively resist uneven compression, a multi-carrier low-density information hiding algorithm based on multiple fusion states was proposed. Firstly, multiple 3D models were positioned, oriented and stereotyped by translation and scaling. Secondly, the 3D models were rotated at different angles and merged by using the center point as merging point to obtain multiple fusion states. Thirdly, local height and Mean Shift clustering analysis were used to divide the energy of the vertices of the fusion state model, obtaining the vertices with different energies. Finally, by changing the vertex coordinates, the secret information changed by Arnold scrambling was quickly hidden in multiple fusion states and 3D models. Experimental results show that the proposed algorithm is robust against uneven compression attacks and has high invisibility.
Key words: information hiding; 3D model; fusion state; local height theory; Mean Shift clustering analysis
0?引言
三維模型的信息隱藏技術(shù)是當(dāng)今信息隱藏安全領(lǐng)域中的一個研究熱點。目前,基于三維模型的信息隱藏技術(shù)的研究主要是基于空間域和變換域的。文獻[1]首先以協(xié)方差分析得到三維模型的初始特征點為核心,在它的K近鄰域中構(gòu)建不跨越區(qū)域最小三角形為嵌入單元的底面;其次將剩余頂點按照升序排序,尋找合適的嵌入頂點;最后通過改變頂點信息來嵌入水印。文獻[2]通過計算模型的重心,利用頂點和重心連線與模型求交的方法計算出重心交點距離比,并通過修改三角形面片3個頂點對應(yīng)的重心點距離比(Ratio of Barycenter and Crosspoint, RBC)來嵌入信息。文獻[3]通過修改某些頂點的積分不變量來進行秘密信息的嵌入,在一定程度上能抵抗網(wǎng)格編輯和裁剪等攻擊。文獻[4]通過計算頂點的局部高度,利用Mean Shift聚類分析把模型的頂點分成了魯棒點、亞魯棒點、脆弱點三類,通過實現(xiàn)不同信息的嵌入提高了隱藏的魯棒性。
文獻[5]利用3D模型自身的結(jié)構(gòu),選擇和提取幾何特征來進行信息隱藏。文獻[6]通過對特征點和非特征點構(gòu)成的二維矩陣進行小波變換來嵌入信息。文獻[7]提出了一種新的三維多邊形網(wǎng)格自適應(yīng)隱寫算法,該算法具有自適應(yīng)性、高效性等特點。由于三維模型在變換域進行信息隱藏的難度較大,三維模型信息隱藏算法大部分都是在三維網(wǎng)格的情況下進行秘密信息隱寫,可提取的特征值不是很多,對抵御不均勻壓縮的攻擊魯棒性也不是很好。
本文在上述研究成果的基礎(chǔ)上,提出一種基于多融合態(tài)的多載體低密度信息隱藏算法。該算法通過對多個三維模型進行定位、定向及定型,以三維模型的中心為融合點,通過沿X軸、Y軸旋轉(zhuǎn)不同角度來得到多個融合態(tài);然后,利用局部高度和Mean Shift聚類分析算法對融合態(tài)模型的頂點進行能量劃分得出魯棒點、亞魯棒點和脆弱點;最后,通過修改頂點坐標(biāo)的值來完成信息隱藏。
1?本文的信息隱藏算法
本文的信息隱藏算法主要分為三個階段:首先,對三維模型進行預(yù)處理,通過一定的方法構(gòu)建多個融合態(tài);其次利用局部高度和Mean Shift聚類分析算法對融合態(tài)模型的頂點進行能量劃分,標(biāo)記出融合態(tài)的魯棒點、亞魯棒點和脆弱點;最后,通過修改頂點坐標(biāo)的方法對經(jīng)過Arnold置亂變化的秘密信息進行快速信息隱藏。
1.1?以三維模型中心點融合的多融合態(tài)算法
融合態(tài)載體是對多個單載體進行有效標(biāo)識和預(yù)處理,然后通過一定的方法組合在一起形成一個融合態(tài)載體。用多個載體進行信息隱藏,可以降低信息隱藏的密度,形成一種大容量、低密度的隱藏環(huán)境。圖1表示的就是一個簡單的融合態(tài)模型。
對三維模型預(yù)處理后,得到三維模型的中心點Cmid、方向向量u和中間頂點到中心的平均距離Lmid后,可以進行融合態(tài)的構(gòu)建, 本文算法通過以三維模型的中心Cmid為匯聚點,對三維模型進行平移、旋轉(zhuǎn),得到三個不同的融合態(tài)S1、S2、S3。
融合態(tài)S1:把三維模型M′1,M′2,…,M′n依次以同方向向量u,中心坐標(biāo)Cmid,平移到三維坐標(biāo)原點O,得到融合態(tài)S1,結(jié)果如圖3所示。
融合態(tài)S2:在計算其他融合態(tài)時,為了在旋轉(zhuǎn)的過程中使每個三維模型露出來的定點數(shù)量基本均勻,本文算法采用90°除以三維模型個數(shù)n來計算旋轉(zhuǎn)的角度α(即α=90°/n)。
把三維模型M′1平移到坐標(biāo)的原點,三維模型M′2以中心點融合,使用式(2)計算出的方向特征向量u對三維模型沿著X軸正方向旋轉(zhuǎn)α角度,三維模型M′3沿著X軸正方向旋轉(zhuǎn)2α角度,依次進行旋轉(zhuǎn),三維模型M′n旋轉(zhuǎn)(n-1)α角度,得到融合態(tài)S2,融合態(tài)S2如圖4所示。
融合態(tài)S3:計算模型需要旋轉(zhuǎn)的角度β(β=90°/n),三維模型M′1的中心移到原點O,使用式(2)計算出的方向特征向量u對三維模型M′2沿著Y軸正方向旋轉(zhuǎn)β角度,模型M′3繼續(xù)沿著Y軸正方向旋轉(zhuǎn)2β,模型M′n沿Y軸正方向旋轉(zhuǎn)(n-1)β,這樣就得到了融合態(tài)S3,得到的融合態(tài)S3如圖5所示。
本文算法利用多融合態(tài)理論,通過對多個三維模型進行縮放、平移、旋轉(zhuǎn)得到多個融合態(tài),該算法可以使用三維模型盡量多的點。在后期,通過對每個融合態(tài)進行秘密信息隱藏,對提取的秘密信息進行校驗,提高信息隱藏的魯棒性。
1.2?局部高度的頂點標(biāo)注與篩選
局部高度是南京大學(xué)Lin等[9]提出的一種三維模型的顯著性度量方式,可以計算三維模型的凸起程度。設(shè)三維模型的頂點v的R-鄰居點集合為NR(v),縮寫為NR,則頂點v的局部高度由式(5)計算得出:
計算出頂點的局部高度后,利用Mean Shift算法[10]這種非參數(shù)化的概率密度估計方法對載體表面的局部高度進行聚類分析,按照局部高度值的大小得出載體的特征,通過測量三維模型頂點的凸起程度(如圖6),可以計算得到特征點(Feature Vertice, FV)、亞特征點(Sub-feature Vertice,SV)和背景點(Background Vertice, BV)這三類特征點,根據(jù)信息隱藏能量分析理論,F(xiàn)V、SV、BV這3類的能量依次降低,因此把其命名為魯棒點、亞魯棒點和脆弱點。
本文算法中對融合態(tài)S1、S2、S3的頂點進行能量信息標(biāo)注,標(biāo)記三維模型的亞魯棒點為Vsen,此為信息隱藏的嵌入點。
1.3?修改頂點坐標(biāo)的快速信息隱藏算法
本文的三維模型信息隱藏算法是通過對三維模型頂點坐標(biāo)值的個位數(shù)字進行修改,來實現(xiàn)信息的隱藏。偶數(shù)代表二進制數(shù)字0,奇數(shù)代表二進制數(shù)字1,通過對數(shù)字進行加1的方式來對需要修改的點進行修改。例如:頂點V1、V2、V3、V4的X軸坐標(biāo)個位表示的二進制信息為0011(如圖7(a)所示),如果要存儲0010的二進制信息,則對頂點的X坐標(biāo)值修改為圖7(b)的結(jié)果,結(jié)果存儲的二進制信息為0010。
該算法是對三維的頂點坐標(biāo)進行修改,因此該方法對秘密信息具有快速存儲和讀取的性能。圖8表示的是在3dMax仿真平臺中對一個茶壺頂點的坐標(biāo)值進行修改。
1.4?信息隱藏的詳細嵌入步驟
基于多融合態(tài)的多載體低密度信息隱藏算法分為以下8個步驟,本文算法流程如圖9所示。
步驟4?利用式(3)計算出三維模型中心到頂點的平均距離(L1,L2,…,Ln),然后對距離進行排序,選取中間的平均距離Lmid為三維模型縮放的標(biāo)準(zhǔn);用式(4)計算出縮放比例,對其他三維模型進行縮放處理。目的是為了保證三維模型在實現(xiàn)融合態(tài)時的大小能基本一致,同時抵抗均勻壓縮。
步驟5?在3dMax2012平臺中將縮放好的三維模型以中心點為匯聚點依次平移到坐標(biāo)原點,得到融合態(tài)S1。利用1.2節(jié)中描述的局部高度計算公式和Mean Shift聚類分析算法,標(biāo)記融合態(tài)S1的亞魯棒點為Vsen-S1并獲取其頂點坐標(biāo)VS1,利用1.3節(jié)中的隱藏算法,通過修改頂點中Z軸坐標(biāo)值的個位來實現(xiàn)隱藏,奇數(shù)代表1,偶數(shù)代表0,依次對頂點坐標(biāo)對比和修改來嵌入比特序列Cre。
步驟6?把融合態(tài)S1的三維模型拆分開,在以中心點為匯聚點的基礎(chǔ)上,使用方向特征向量u把三維模型依次沿著X軸正方向旋轉(zhuǎn)α角度,得到融合態(tài)S2,標(biāo)記三維模型的亞魯棒點為Vsen-S2。獲取融合態(tài)S2的頂點坐標(biāo)VS2,通過修改頂點坐標(biāo)X軸坐標(biāo)值的個位數(shù)字來對秘密信息Cre進行嵌入。
步驟7?把融合態(tài)S2的三維模型拆分開,讓三維模型依次沿著Y軸正方向旋轉(zhuǎn)β角度,得到融合態(tài)S3,標(biāo)記三維模型的亞魯棒點為Vsen-S3。獲取融合態(tài)S3的頂點坐標(biāo)VS3,通過對頂點坐標(biāo)Y軸坐標(biāo)值的個位數(shù)字進行修改嵌入秘密信息Cre。
步驟8?把融合態(tài)S3分開后得到含有秘密信息的三維模型M*1,M*2,…,M*n。
1.5?信息提取步驟
秘密信息的提取是信息嵌入的逆過程,主要分為以下幾個過程:第1步?按照信息隱藏嵌入步驟中的步驟1~5對含有秘密信息的三維模型M*1,M*2,…,M*n進行平移、旋轉(zhuǎn)和縮放處理,使三維模型恢復(fù)到組合融合態(tài)之前的狀態(tài),然后恢復(fù)3個融合態(tài),并從中提取秘密信息。
第2步?按照步驟8恢復(fù)融合態(tài)S3,對三維頂點的Y軸值進行提取,得到比特序列Cre3。
第3步?按照步驟7恢復(fù)融合態(tài)S2,對三維頂點的X軸值進行提取,得到比特序列Cre2。
第4步?按照步驟6恢復(fù)融合態(tài)S1,對三維頂點的Z軸值進行提取,得到比特序列Cre1。
第5步?對得到的Cre1、Cre2、Cre3三個比特序列進行對比、校驗得出最終的比特序列Ce,即秘密信息。
2?實驗與結(jié)果分析
對本文算法進行仿真實驗,實驗環(huán)境為Matlab2014,3dMax2012。
所選載體是由12個三維模型、隱藏圖像為64×64的baboon二值圖像和含有秘密信息的三維模型組成(如圖10所示)。
2.1?不可見性
2.1.1?不可見性分析
已有基于三維模型的信息隱藏算法的信息嵌入為修改頂點到中心的距離,而本文的隱藏算法是利用多個三維模型進行融合得出一個新的三維模型,需要隱藏的信息被分配到多個三維模型上面,這樣使得每個模型中都有隱藏的信息存在,提高了算法的不可見性。
2.1.2?不可見性實驗
1)Hausdorff距離。
Hausdorff距離[11]是度量兩個點集間的最大不匹配程度,距離越小,則表示匹配程度越高。
圖11為算法基于Hausdorff距離的不可見性實驗對比結(jié)果。
文獻[12]算法是基于球型分割(Spherical Segmentation, SS)的算法,該算法首先對三維模型進行主元分析、球形分割等預(yù)處理,以立體分區(qū)中法向量變化較大的點為特征點,根據(jù)待嵌入秘密信息量對特征點進行小波變換,最后將秘密信息嵌入到載體中。文獻[13]算法是通過處理非重疊的2×2像素塊,利用修改方向技術(shù)將秘密數(shù)據(jù)嵌入到每個四像素塊中,不僅可以動態(tài)修改像素值,還可以改變嵌入的數(shù)字,提高了秘密信息嵌入的魯棒性。本文實驗使用的三維模型共含有2341874個頂點,取各個頂點3個坐標(biāo)值十進制的尾數(shù)進行信息隱藏,即可容納性約為2341874×3=223bit。以文中選定的局部高度為聚類參數(shù)對頂點進行魯棒性劃分,所得到亞魯棒點約為1159017個,即用于隱藏秘密信息的容量約為1159017×3=222bit。由圖11可知,本文算法的Hausdorff距離在k>10時,除去k=20時的數(shù)據(jù)噪點,始終低于文獻[12-13]算法,表明本文算法相比基于文獻[12-13]算法,在嵌入量較大時,不可見性較好。
2)骨架相識度匹配。
骨架相似度En是另一種描述的是兩個三維模型的骨架相似程度,En越大,表明三維模型越相似,算法中對模型的修改程度越小。圖12為基于骨架相似度En的不可見性實驗對比結(jié)果,從中可看出,在開始信息隱藏時,本文算法的骨架相似度匹配曲線位置除了部分坐標(biāo)值相同,其他始終高于文獻[12-13]算法,表明本文算法相比文獻[12-13]算法,不可見性較好。
2.2?魯棒性
2.2.1?魯棒性分析
魯棒性是衡量對三維模型經(jīng)過處理后的改變程度,反映信息的修改程度。三維模型可以抵抗旋轉(zhuǎn)、平移、等比例縮放等變換,在本文中使用多個三維模型以及融合態(tài)對需要隱藏的信息進行隱藏,增加了對隱藏信息的校驗,使算法能抵抗一定程度的非均勻縮放、隨機加噪攻擊等攻擊。
2.2.2?魯棒性實驗
本文采用式(7)正確信息的比特數(shù)比率(Bit Correct Ration, BCR)作為算法魯棒性的客觀評判標(biāo)準(zhǔn):
BCR=正確的秘密信息比特數(shù)秘密信息總比特數(shù)(7)
本文實驗中首先對含密的三維模型進行旋轉(zhuǎn)、均勻縮放、隨機加噪、不均勻壓縮等仿真實驗,然后對進行干擾處理的三維模型進行秘密信息提取,計算BCR。BCR越高,則算法的魯棒性越強;否則算法的魯棒性越弱。
表1給出模型在遭受不同程度的攻擊之后,從模型中提取秘密信息并計算BCR的結(jié)果。
從表1可看出,模型對旋轉(zhuǎn)、不均勻壓縮、隨機加噪等攻擊有較強的魯棒性。
根據(jù)魯棒性檢驗算法,將本文算法與文獻[13-14]算法進行比較,本文重點對非均勻縮放攻擊和隨機加噪攻擊進行了對比,圖13~14分別給出在非均勻壓縮、隨機加噪等攻擊下與文獻[13-14]算法的BCR對比。
由圖13~14可看出本文算法魯棒性在非均勻壓縮、隨機加噪等攻擊下的曲線的坐標(biāo)值,即BCR數(shù)值均高于文獻[13-14]算法,表明本文算法對非均勻壓縮、隨機加噪攻擊具有很強的魯棒性。
3?結(jié)語
本文基于融合態(tài)的思想對三維模型進行預(yù)處理和旋轉(zhuǎn)操作得到多個融合態(tài),再利用局部高度理論和Mean Shift聚類技術(shù)對融合態(tài)頂點進行能量劃分,最后通過修改頂點的方法實現(xiàn)信息隱藏。由于本文算法使用的是多個三維模型,而且是對頂點的個位數(shù)值進行修改,所以能保證算法的不可見性和魯棒性。通過實驗對比可知,在相同攻擊下,
本文算法比文獻[13-14]算法具有更強的魯棒性,尤其是抵抗非均勻壓縮,達到了對信息隱藏的要求。
參考文獻(References)
[1] 齊向明, 史雙宇, 楊曉陶.基于特征點提取的三維點云模型水印算法[J]. 計算機應(yīng)用, 2014, 34(5): 1309-1312, 1353. (QI X M, SHI S Y, YANG X T. Watermarking algorithm of 3D point cloud model based on feature point extraction[J]. Journal of Computer Applications, 2014, 34(5): 1309-1312, 1353.)
[2] 廖學(xué)良, 王瑀屏.一種新的三維模型水印嵌入空域算法[J]. 計算機學(xué)報, 2008, 31(10): 1848-1856. (LIAO X L, WANG Y P. A new 3D model watermark embedding spatial algorithm[J]. Chinese Journal of Computers, 2008, 31(10): 1848-1856.)
[3] WANG Y P, HU S M. A new watermarking method for 3D models based on integral invariants[J]. IEEE Transactions on Visualization & Computer Graphics, 2009, 15(2): 285.
[4] 任帥, 趙祥模, 張弢, 等.基于局部高度與Mean Shift的三維模型信息隱藏算法[J]. 計算機科學(xué), 2017, 44(3): 187-191. (REN S, ZHAO X M, ZHANG T, et al. Information hiding algorithm for 3D model based on local height and Mean Shift[J]. Computer Science, 2017, 44(3): 187-191.)
[5] OHBUCHI R, MASUDA H, AONO M. Watermarking three-dimensional polygonal models[C]// Proceedings of the Fifth ACM International Conference on Multimedia. New York: ACM, 1997: 261-272.
[6] 張建明, 周小梅, 王新宇, 等.局部特征點的3維模型變換域水印算法[J]. 中國圖象圖形學(xué)報, 2014, 19(4): 613-621. (ZHANG J M, ZHOU X M, WANG X Y, et al. Three-dimensional model transform domain watermarking algorithm for local feature points[J]. Journal of Image and Graphics, 2014, 19(4): 613-621.)
[7] CHENG Y M, WANG C M. An adaptive steganographic algorithm for 3D polygonal meshes[J]. The Visual Computer, 2007, 23(9/10/11): 721-732.
[8] 翟浩, 楊有, 萬輝.基于頂點排序的三維模型數(shù)字水印算法[J]. 重慶文理學(xué)院學(xué)報(社會科學(xué)版), 2014, 33(5): 128-133. (ZHAI H, YANG Y, WAN H. Digital watermarking algorithm based on vertex sorting for 3D models[J]. Journal of Chongqing University of Arts and Sciences (Social Sciences Edition), 2014, 33(5): 128-133.)
[9] 林金杰,朱代輝,楊育彬.3維模型局部高度研究[J].中國圖象圖形學(xué)報, 2011, 16(10): 1841-1849.(LIN J J, ZHU D H, YANG Y B. Three-dimensional model study on local height[J]. Journal of Image & Graphics, 2011, 16(10): 1841-1849.)
[10] COMANICIU D, MEER P. Mean shift analysis and applications[C]// Proceedings of the Seventh IEEE International Conference on Computer Vision. Piscataway, NJ: IEEE, 2002: 1197.
[11] YI X, CAMPS O I. Line-based recognition using a multidimensional hausdorff distance[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1999, 21(9): 901-916.
[12] 任帥, 張弢, 楊濤, 等.基于三維模型球型分割的信息隱藏算法[J]. 計算機應(yīng)用, 2017, 37(9): 2576-2580. (REN S, ZHANG T, YANG T, et al. Information hiding algorithm based on three-dimensional model spherical segmentation[J]. Journal of Computer Applications, 2017, 37(9): 2576-2580.)
[13] LIAO X, DING L. Data hidng in digital image using four pixel-value-differencing and multiple-base notational[C]// Proceedings of the 2015 International Conference on Intelligent Information Hiding and Multimedia Signal Processing. Piscataway, NJ: IEEE, 2016: 76-80.
[14] 張弢, 慕德俊, 任帥, 等.利用內(nèi)切球解析的三維模型信息隱藏算法[J]. 西安電子科技大學(xué)學(xué)報(自然科學(xué)版), 2014, 41(2): 185-190. (ZHANG T, MU D J, REN S, et al. Three-dimensional model information hiding algorithm using inner sphere parsing[J]. Journal of Xidian University, 2014, 41(2): 185-190.)