李亞琴+方立剛
摘 要: 為了保護在線多媒體數(shù)字資源的版權(quán),提出一種針對3D MAX三維動畫的數(shù)字水印方案。選定動畫中的材質(zhì)參數(shù)作為水印嵌入位置,首先將若干有效材質(zhì)參數(shù)組成一個矩陣,對此矩陣進行小波變換,得到逼近分量和細節(jié)分量,其次將水印信息進行PCA分解,然后將小波變換后得到的逼近分量與PCA分解得到的第一分量進行數(shù)據(jù)融合,最后用融合得到的逼近分量與原始細節(jié)分量進行小波逆變換,從而將水印嵌入到材質(zhì)參數(shù)矩陣中,用新矩陣中的元素來重新設(shè)置材質(zhì),得到嵌入水印的三維動畫。實驗結(jié)果表明,算法簡單易行,水印隱蔽性好,抗攻擊性能強且擴展性好。
關(guān)鍵詞: 數(shù)字水??; 版權(quán)保護; 3D MAX; 材質(zhì); 小波變換; PCA; 數(shù)據(jù)融合
中圖分類號: TN915.08?34; TP391 文獻標識碼: A 文章編號: 1004?373X(2017)21?0084?03
Digital watermarking algorithm of texture parameters in 3D MAX animation
LI Yaqin, FANG Ligang
(Jiangsu Province Support Software Engineering R&D Center for Modern Information Technology Application, Suzhou 215104, China)
Abstract: In order to protect the copyright of the multimedia digital resources, a digital watermarking scheme for 3D MAX animation is put forward, and the texture parameters in animation are selected as the positions of watermark embedding. A matrix composed of several effective texture parameters is performed with wavelet transform to get the approximation component and detail component, then the watermark information is decomposed with PCA to get the first component, and the approximation component and first component are conducted with data fusion. The wavelet inverse transform is carried out for the approximation component and original detail component to embed the watermarking into a new matrix of texture parameters. The elements in the new matrix is used to reset the texture to obtain the 3D animation with embedding watermark. The experimental results show that the algorithm has simple operation, good watermark concealment, strong attack resistance and perfect extensibility.
Keywords: digital watermark; copyright protection; 3D MAX; texture; wavelet transform; PCA; data fusion
0 引 言
網(wǎng)絡上出現(xiàn)了大量的數(shù)字媒體資源,主要有圖像、音頻、視頻、文本格式材料等。這些多媒體資源是原作者辛勤勞動的成果,雖然網(wǎng)絡的便捷與快速給學習者打開了方便之門,但由于發(fā)布的網(wǎng)絡數(shù)字資源很容易被復制、修改和傳播,所以網(wǎng)上傳播的數(shù)字媒體資源存在嚴重的盜版和侵權(quán)問題。如何保護在線多媒體數(shù)字資源的版權(quán)已成為近年來法律界、教育界和計算機研究中面臨的難題之一[1]。
為了保障動漫行業(yè)健康發(fā)展,數(shù)字資源管理系統(tǒng)必須采取相應的技術(shù)措施來控制作品的非法訪問和拷貝。目前對多媒體資源版權(quán)保護的研究中,文獻[2]提出一種基于最低位有效算法和變化元素的矢量動畫水印方案,首先把矢量動畫中相鄰幀間變化元素的顏色值作為水印的嵌入位置,然后采取修改最低有效位的方法將多組水印編碼后嵌入到動畫中,提取水印時,多組水印互相驗證來提取出準確的水印。文獻[3]提出利用連續(xù)矢量圖幀中特定圖形元素顏色輕微修改來嵌入水印,通過分析圖形元素幀間顏色值的差異提取并驗證水印。文獻[4]提出將水印的效果圖嵌入到SWF格式的動畫文件中,應用高頻系數(shù)進行處理,嵌入水印之前先對水印的信息內(nèi)容進行預處理。文獻[5]提出3種矢量動畫的水印方案做理論研究。但是目前針對3D MAX三維動畫的水印方案少之又少。
本文提出一種針對3D MAX軟件制作的三維動畫的數(shù)字水印算法,主要是基于動畫中的材質(zhì)參數(shù)。將一部三維動畫中的若干有效材質(zhì)參數(shù)組成一個矩陣,對此矩陣進行小波變換,選定水印信息后,對水印進行PCA分解,將小波變換得到的系數(shù)與PCA分解得到的第一分量進行數(shù)據(jù)融合。最后用修改后的小波系數(shù)進行小波逆變換,成功將水印信號嵌入到矩陣中,用新的矩陣元素修改動畫的材質(zhì),得到嵌入水印的三維動畫。endprint
1 3D MAX動畫及材質(zhì)參數(shù)
3D MAX是專為流暢的角色動畫和新一代的三維工作流程而設(shè)計的,集三維建模、燈光、攝影機、材質(zhì)、動畫、特效、渲染于一身,在應用范圍方面,廣泛應用于廣告、影視、工業(yè)設(shè)計、建筑設(shè)計、多媒體制作、游戲、輔助教學以及工程可視化等領(lǐng)域。
材質(zhì)反映的是物體本身的物理屬性,表現(xiàn)物體實際的視覺狀態(tài),不同的物體具有不同的質(zhì)感,用材質(zhì)可以表現(xiàn)物體的顏色、紋理、透明度、凹凸程度、粗糙度、光澤度等。
2 基于3D MAX動畫中材質(zhì)參數(shù)的數(shù)字水印算法
2.1 水印嵌入算法
3D MAX中,主要在材質(zhì)編輯器中設(shè)置材質(zhì),每種材質(zhì)對應一個材質(zhì)球,每個材質(zhì)球里有若干參數(shù)。
步驟1:將一部動畫材質(zhì)編輯器中的有效參數(shù)集成到一個矩陣中,記為[X,][X=xij,i=1,2,…,m;][j=1,2,…,n,]對[X]進行一級二維離散小波變換,小波基選擇“db1”,得到HH,HL,LH,LL,分別是小波變換后的細節(jié)分量和逼近分量,逼近分量對應大尺度低頻分量,細節(jié)分量對應小尺度高頻分量,小波變換對高頻成分采用逐漸精細的時域或頻域取樣步長,從而聚焦到對象的任何細節(jié):
[(HH,HL,LH,LL)=dwt2(X,′db1′)] (1)
步驟2:選擇水印信息,記為[W,]對[W]進行PCA變換,得到三個分量,分別是pc,latent,explained,第一主分量pc作為實際嵌入的水印信息元素:
[pc,latent,explained=paccov(W)] (2)
步驟3:將LL與pc進行數(shù)據(jù)融合,即將水印信息pc嵌入到LL中,得到新的逼近分量記為LL*:
[LL*=Fuse(LL,pc,alphaFactor)] (3)
步驟4:將HH,HL,LH,LL*進行小波逆變換,得到新的矩陣,記為[X*]:
[X*=idwt2(HH,HL,LH,LL*,′db1′)] (4)
步驟5:用[X*]中的矩陣元素來重新設(shè)置材質(zhì)并賦予物體。
2.2 水印提取算法
水印提取算法實際上是嵌入算法的逆過程,當動畫的版權(quán)出現(xiàn)爭議時,利用提取算法提取出水印。
步驟1:首先將動畫材質(zhì)編輯器中的嵌入算法所選擇的有效參數(shù)組成一個矩陣,記為[X,]對[X]進行一級二維離散小波變換,小波基選擇“db1”,得到HH′,HL′,LH′,LL′,分別是小波變換后的細節(jié)分量和逼近分量。
步驟2:從LL′中提取水印,由于嵌入時采用的是數(shù)據(jù)融合方法,所以提取時采用獨立分量分析ICA分解的方法,具體步驟如下:
step1:讀取LL′記為[x1];
step2:令[X=[x1,x2]T,][x2]是密鑰,本文是[pc,]即嵌入水印時的第一主分量;
step3:調(diào)用ICA求得[A-1;]
step4:[Y=A-1X,Y=[y1,y2]T;]
step5:將[y2]轉(zhuǎn)換成一個[M1×M2]的二維矩陣[pc;]
step6:[pc‘]就是利用ICA方法提取出來的第一主分量,即提取出來的水印信息。
步驟3:將[pc‘]與[pc]進行比對,以證明水印的有效性及判別版權(quán)。
3 實驗結(jié)果與分析
3.1 實驗環(huán)境
本文選擇的三維動畫短片是一部人物動畫,將材質(zhì)編輯器中的有效參數(shù)集成到矩陣中,是一個12×12的二維矩陣,本文選擇的水印信息是二代身份證號,是1×18的一維矩陣。本文實驗全部在3D MAX 2014和Matlab R2011b中完成。
圖1是仿真實驗的GUI界面,然后在callback中編寫代碼完成實驗。
3.2 算法隱蔽性
為了驗證算法的隱蔽性,通過峰值信噪比(PSNR)來衡量,選擇的動畫共有230幀,將原始動畫渲染為一系列靜態(tài)連續(xù)圖片共有230張,將嵌入水印的動畫也做同樣渲染方式的選擇,共有230張,把對應位置的兩張圖片做峰值信噪比,共有230個PSNR數(shù)據(jù),本文算法的平均PSNR為50.562 4,說明算法的水印隱蔽性較好,矩陣[X]與矩陣[X*]的相關(guān)系數(shù)為0.998 9。
3.3 算法抗攻擊性
對含有水印的動畫進行攻擊,以驗證算法的性能,本文所做的攻擊都是在3D MAX軟件中對.max源文件進行攻擊。
(1) 刪除材質(zhì)參數(shù)攻擊
每個材質(zhì)球中包含多個參數(shù),用來表現(xiàn)物體不同的特性,如要表現(xiàn)物體的光澤度,需要設(shè)置自發(fā)光、環(huán)境光顏色、高光顏色、高光級別、光澤度等參數(shù);如要表現(xiàn)物體的粗糙特點,則要設(shè)置凹凸通道、置換通道參數(shù)等。在做攻擊時,刪除少于三個材質(zhì)參數(shù),用提取算法提取出水印后,提取水印與原始水印的相關(guān)系數(shù)為0.963 4。
(2) 修改材質(zhì)參數(shù)攻擊
對動畫的材質(zhì)參數(shù)做修改,本文實驗中修改了若干材質(zhì)參數(shù),提取水印和原始水印的相關(guān)系數(shù)如表1所示。
(3) 增加材質(zhì)球攻擊
增加材質(zhì)球,即在原來空白的材質(zhì)球上設(shè)置參數(shù),因為原始動畫中沒有這些參數(shù),提取水印時也無需用到這些參數(shù),所以對水印無影響,提取水印和原始水印的相關(guān)系數(shù)是1.000 0。
4 結(jié) 語
良好的原創(chuàng)風氣是中國動漫行業(yè)飛速發(fā)展的基本保障,也是中國動漫人的共同心聲。本文提出一種針對3D MAX動畫的數(shù)字水印算法,旨在保護三維動畫這種數(shù)字資源,算法簡單易行,通過實驗數(shù)據(jù)證明算法的隱蔽性好,且擴展性能好,不僅可應用在3D MAX軟件的動畫中,也可以應用于3D MAX的靜態(tài)效果圖或者其他三維軟件中。但是算法在抵抗整體刪除材質(zhì)球的攻擊方面能力較弱,今后將做進一步研究。
參考文獻
[1] 張芙蓉,湯澤軍.基于數(shù)字水印的多媒體教學資源版權(quán)保護的研究[J].長沙航空職業(yè)技術(shù)學院學報,2008,8(4):37?41.
[2] 王濤,李復旦,徐超,等.基于最低位有效算法和變化元素的矢量動畫水印方案[J].計算機應用,2014,34(5):1304?1308.
[3] 王濤.面向連續(xù)矢量圖的簡易數(shù)字水印方案[J].計算機工程與設(shè)計,2013,34(5):1609?1614.
[4] 劉小勇.基于FLASH動畫的數(shù)字水印設(shè)計方法[J].電腦知識與技術(shù),2015,11(21):149?150.
[5] 戴明輝.矢量動畫文件數(shù)據(jù)結(jié)構(gòu)的分析[J].佳木斯教育學院學報,2012(10):413?414.
[6] 楊娜.防偽電子票打印掃描過程中的數(shù)字水印失真和還原技術(shù)[J].現(xiàn)代電子技術(shù),2016,39(17):75?78.endprint