国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

針對三維動畫中關(guān)鍵幀數(shù)據(jù)的數(shù)字水印算法

2017-10-12 08:13李亞琴方立剛
現(xiàn)代電子技術(shù) 2017年19期
關(guān)鍵詞:數(shù)字水印關(guān)鍵幀方陣

李亞琴+方立剛

摘 要: 提出一種針對三維動畫中關(guān)鍵幀數(shù)據(jù)的數(shù)字水印算法。算法中水印的嵌入對象是運(yùn)動對象的運(yùn)動坐標(biāo),將運(yùn)動坐標(biāo)形成一個方陣,將具有惟一性的水印信息嵌入到方陣的特征向量的特定元素中,形成含有水印的動畫。當(dāng)動畫的版權(quán)出現(xiàn)爭議時,利用提取算法從動畫中提取出水印,以證明版權(quán)。通過仿真實(shí)驗(yàn)表明,該算法的隱蔽性、抗攻擊性較好,可以推廣到其他形式或用其他軟件制作的CG作品中。

關(guān)鍵詞: 數(shù)字水?。?動漫; 三維動畫; 3D MAX; 關(guān)鍵幀; 運(yùn)動坐標(biāo)

中圖分類號: TN915.08?34; TP391 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2017)19?0052?04

Digital watermarking algorithm for key frame data in three?dimensional animation

LI Yaqin, FANG Ligang

(Jiangsu Province Support Software Engineering R&D Center for Modern Information Technology Application in Enterprises, Suzhou 215104, China)

Abstract: A digital watermarking algorithm for key frame data in 3D animation is put forward, whose embedded object is the motion coordinates of moving object. The motion coordinates are formed into a square matrix. The unique watermarking information is embedded into the specific element of feature vector of the square matrix to form the new animation with watermark. When the copyright of an animation is disputed, the extraction algorithm is used to extract the watermark in the animation to prove its copyright. The results of simulation experiments show this algorithm has perfect concealment and high anti?attacking performance, and can be applied to CG works in other forms or produced with other softwares.

Keywords: digital watermarking; anime; three?dimensional animation; 3D MAX; key frame; motion coordinate

0 引 言

隨著網(wǎng)絡(luò)技術(shù)、數(shù)字化CG技術(shù)的發(fā)展,創(chuàng)作的多媒體資源內(nèi)容越來越豐富,形式越來越多樣,凝聚的內(nèi)涵越來越深刻,其在互聯(lián)網(wǎng)上發(fā)布、共享、開放和傳播的數(shù)量也越來越大。隨之而來的是,非授權(quán)使用者下載拷貝、更名和肆意使用這些網(wǎng)絡(luò)多媒體資源也變得越來越容易,由此產(chǎn)生的網(wǎng)絡(luò)多媒體資源的版權(quán)保護(hù)問題變得越來越突出[1]。

數(shù)字水印技術(shù)作為一種有效可行的版權(quán)保護(hù)技術(shù),在二維圖像和視頻的版權(quán)保護(hù)方面已經(jīng)得到深入的研究和廣泛的應(yīng)用。近幾年,由于三維圖像和視頻具有立體性和高信息量,三維媒體系統(tǒng)發(fā)展迅速,市場價值凸顯,市場份額逐漸增加,由此衍生的三維圖像和視頻的版權(quán)保護(hù)問題逐漸成為研究的熱點(diǎn)[2]。

迄今為止,關(guān)于數(shù)字媒體的版權(quán)保護(hù)已經(jīng)相當(dāng)成熟,針對文本、圖像、音頻、視頻等的數(shù)字水印算法在算法性能上也相當(dāng)成熟。針對多媒體資源版權(quán)保護(hù)的研究正上升到理論高度[3?4]。針對二維動畫的數(shù)字水印方法中,比較突出的有文獻(xiàn)[5],在Matlab軟件中完成水印的嵌入和提取,主要思路是將水印圖像嵌入到Flash動畫文件的結(jié)束標(biāo)簽之后,這樣可以提高水印的隱蔽性,也不會影響原始動畫的觀看效果。文獻(xiàn)[6]按照字節(jié)把選定的水印信息嵌入到Flash動畫中,算法支持高容量圖像作為水印。文獻(xiàn)[7]要求在讀入Flash文件時以字節(jié)數(shù)組的形式,依據(jù)字節(jié)數(shù)組中每一字節(jié)中比特“1”的計數(shù)的奇偶性來進(jìn)行水印嵌入和提取,采用數(shù)值異或和數(shù)值取反的算法將水印嵌入到Flash動畫中。

基于3D MAX三維動畫的水印方案中,文獻(xiàn)[8]把整個動畫渲染得出的所有幀疊加,把水印信息嵌入到后期合成階段。目前,對3D MAX動畫的水印算法研究不多,且針對關(guān)鍵幀的算法研究少之又少,所以針對3D MAX軟件制作的動畫,把水印隱形地嵌入到關(guān)鍵幀中,既不會破壞動畫的觀賞效果,又可以鑒定動畫的版權(quán)。

本文提出一種應(yīng)用于3D MAX三維動畫的數(shù)字水印方法,主要是應(yīng)用于3D MAX軟件的關(guān)鍵幀中,首先分析一個運(yùn)動物體的所有運(yùn)動幀,記錄所有運(yùn)動幀上的物體坐標(biāo),其次將坐標(biāo)形成一個矩陣,求得矩陣的特征向量,再將水印信息嵌入到特征向量中,最后利用新的嵌入水印的特征向量形成新的坐標(biāo),用新的坐標(biāo)約束物體的位置,形成含有水印信息的三維動畫。

1 3D MAX關(guān)鍵幀動畫

3D MAX是當(dāng)前流行的制作三維動畫的主要軟件之一,隨著3D MAX軟件功能的不斷完善,CG軟件制作平臺紛紛由Unix工作站向基于網(wǎng)絡(luò)的PC平臺轉(zhuǎn)移,CG制作成本大大降低,CG制作由電影的高端應(yīng)用進(jìn)入電視游戲等低端應(yīng)用。

用3D MAX制作的三維動畫可以在網(wǎng)絡(luò)上發(fā)布共享,然而隨之而來的侵權(quán)問題越來越嚴(yán)重,盜版者無視原創(chuàng)作者的心血,肆意下載抄襲原創(chuàng)作品,擾亂了文化市場的良好秩序,破壞了中國影視動漫市場的良好原創(chuàng)風(fēng)氣。所以,應(yīng)用于3D MAX三維動畫中的數(shù)字水印方法需要進(jìn)一步研究,以有效保護(hù)3D MAX三維動畫的知識產(chǎn)權(quán)。

2 提出針對三維動畫關(guān)鍵幀數(shù)據(jù)的水印算法

3D MAX中可以制作多種類型的動畫,其中一種是關(guān)鍵幀動畫,在時間線上根據(jù)故事情節(jié)需要創(chuàng)建多個關(guān)鍵幀,在關(guān)鍵幀上修改對象的屬性,從而完成動畫效果。

本文選擇把水印嵌入到三維動畫的運(yùn)動參數(shù)中,主要是嵌入到動畫的運(yùn)動坐標(biāo)上。

嵌入位置選擇的是運(yùn)動坐標(biāo)的最不重要位,也就是采用LSB算法,LSB算法作為數(shù)字水印技術(shù)最早也是最經(jīng)典的算法,在數(shù)字水印概念首次被提出時就使用它構(gòu)建水印嵌入和提取算法。LSB算法雖然魯棒性不高,但具有算法簡單、信息隱藏量大、對設(shè)備要求低的特點(diǎn),是其他算法無可比擬的[9]。

2.1 水印嵌入算法

步驟1:將一個選定運(yùn)動對象的全部坐標(biāo)值或者部分選定坐標(biāo)值形成一個矩陣,記為[X,][X]是一個[n×n]的方陣。

步驟2:求方陣[X]的特征值[V]和特征向量[D,V]是一個對角矩陣,[D]是一個[n×n]的方陣,記為:

[D=d11d12d13…d1nd21d22d23…d2n???dij?dn1dn2dn3…dnn]

式中:[i=1,2,…,n; j=1,2,…,n。]

步驟3:選取有效的水印信息,即選取能代表作者身份且惟一性的信息,記為[W,][W=[Wa]a=1,2,…,m,][m]是水印的長度。

步驟4:將水印信息[W]嵌入到特征向量[D]中。

Step1:依次提取[dij]的小數(shù)點(diǎn)后最后一位,記為[Ldij;]

Step2:依次將[Ldij]與[Wi]進(jìn)行異或操作[L_d_ij⊕][W_i,]如果兩個數(shù)值相同,則不嵌入水印,繼續(xù)比較[L_d_ij+1,]重復(fù)Step2;如果數(shù)值不相同,即[Ldij⊕Wi=1,]則轉(zhuǎn)入Step3比較大小;

Step3:比較大小,嵌入水印

for(i=1;i<=n;i++)

{for(j=1;j<=n;j++)

{

{if[Wa=9] [Ldij=45];

else if[Ldij>Wa] [Ldij=Wa];

a++;

}

if(a>m) break;

}

}

2.2 水印提取算法

如果一部三維動畫短片的版權(quán)出現(xiàn)爭議,原創(chuàng)作者要捍衛(wèi)自己的主權(quán),可以對這部短片進(jìn)行水印提取。水印提取算法是嵌入算法的逆過程。

步驟1:將一個選定對象的全部坐標(biāo)值或者部分選定坐標(biāo)值形成一個矩陣,記為[X,][X]是一個[n×n]的方陣。

步驟2:求方陣[X]的特征值[V]和特征向量[D,][V]是一個對角矩陣,[D]是一個[n×n]的方陣,記為:

[D=d′11d′12d′13…d′1nd′21d′22d′23…d′2n???d′ij?d′n1d′n2d′n3…d′nn]

式中:[i=1,2,…,n; j=1,2,…,n。]

步驟3:從特征向量[D]中提取水印。

Step1:依次提取[d′ij]的小數(shù)點(diǎn)后最后一位,記為[L′dij;]

Step2:依次將[L′dij]與[Wi]進(jìn)行異或操作[L_d_ij′⊕W_i,]如果兩個數(shù)值相同[Wi=L′dij,]則此位置嵌入了水??;如果數(shù)值不相同,即[L′dij⊕Wi=1,]則此位置未嵌入水印。提取出的水印記為[W,][W=W′a][a=1,2,…,m,][m]是水印的長度。

Step3:水印是9的特殊處理

for(i=1;i<=n;i++)

{for(j=1;j<=n;j++)

{if([L′dij=5])

if([L′dij-1=4])

[W′a=9];

}

}

本文提出的嵌入算法,工作量主要是遍歷三維動畫中一個運(yùn)動物體的所有運(yùn)動坐標(biāo)來嵌入水印,基本操作為賦值。設(shè)三維動畫有[n]幀,每幀選擇一個坐標(biāo),水印信息有[m]位,賦值次數(shù)為[m]次,其時間復(fù)雜度為[θm]。

本文提出的提取算法的工作量主要是遍歷三維動畫中一個運(yùn)動物體的所有運(yùn)動坐標(biāo)來提取水印,基本操作為比較。設(shè)三維動畫有[n]幀,每幀選擇一個坐標(biāo),水印信息有[m]位,比較次數(shù)為[m]次,其時間復(fù)雜度為[θm]。

3 仿真實(shí)驗(yàn)

本文選擇的三維動畫短片,情節(jié)是一架卡通飛機(jī)在飛行過程中撞上立柱沉入大海,動畫長度共有100幀,選擇的運(yùn)動對象是卡通飛機(jī),飛機(jī)有100個坐標(biāo)值,把100個[X]軸坐標(biāo)值形成一個10×10的方陣,將水印信息利用本文提出的算法嵌入到方陣的特征向量中,本文實(shí)驗(yàn)選擇的水印信號是二代身份證號,共有18位。本文實(shí)驗(yàn)全部在3D MAX 2014和Matlab R2011b中完成。

圖1是仿真實(shí)驗(yàn)的GUI界面,然后在callback中編寫代碼完成實(shí)驗(yàn)。

將三維動畫渲染成連續(xù)的靜態(tài)圖片來定量比較嵌入水印后視頻的變化程度,原始動畫和嵌入水印的動畫都各有100幀,則渲染后兩部動畫都各有100張連續(xù)的靜態(tài)圖片,分別求對應(yīng)位置的兩幅圖片的峰值信噪比,最后將100個峰值信噪比進(jìn)行平均得出本算法的峰值信噪比PSNR為52.733 2。

下面選擇動畫的第37幀進(jìn)行舉例,圖2是原始視頻的第37幀,在嵌入水印時,由于第37幀的坐標(biāo)符合嵌入判斷條件,所以在37幀上嵌入了水印,圖3是嵌入水印視頻的第37幀,視覺上難以察覺視頻的變化。

原始坐標(biāo)矩陣[X]和嵌入水印的坐標(biāo)矩陣[X]的相關(guān)系數(shù)為0.999 9,所以證明本文算法的水印隱蔽性很好。

三維動畫中,一個物體的世界坐標(biāo)有[X,Y,Z]三個軸向,所以本實(shí)驗(yàn)可以將其他水印信息嵌入到[Y]軸坐標(biāo)方陣和[Z]軸坐標(biāo)方陣中,實(shí)現(xiàn)多水印的嵌入。

對含有水印的動畫進(jìn)行攻擊,以驗(yàn)證算法的性能,本文所做的攻擊都是在3D MAX軟件中對.max源文件進(jìn)行攻擊:

(1) 刪除幀攻擊

本文水印信號選擇的是18位身份證號碼,也就是一共修改了原動畫中的18個坐標(biāo),即18%,如果動畫長度更長,那么被修改的坐標(biāo)的比例更小,被刪除的幾率也更小。將動畫中的第37幀刪除,提取水印時將只能提取出17位,提取水印和原始水印的相關(guān)系數(shù)是0.730 3。

(2) 修改幀攻擊

對動畫進(jìn)行微改,對動畫中飛行器的坐標(biāo)進(jìn)行微改,提取水印時仍然可以提取出18位,但是部分位的數(shù)據(jù)不準(zhǔn)確,提取水印和原始水印的相關(guān)系數(shù)是0.850 9。

(3) 修改動畫長度

將動畫的長度由原來的100幀修改為120幀,由于只是長度增加,動畫速度降低,所以對水印影響較小,提取水印和原始水印的相關(guān)系數(shù)是0.923 7。

(4) 壓縮

如果使用格式工廠等軟件對動畫進(jìn)行壓縮以及格式轉(zhuǎn)換,為了不改變動畫的視覺效果,大多的壓縮算法主要是針對動畫背景和其他肉眼難以區(qū)別的元素,而對運(yùn)動元素不會做過多處理,本文提出的算法將運(yùn)動物體的運(yùn)動坐標(biāo)作為水印嵌入目標(biāo),所以具有很好的抗壓縮性。

4 結(jié) 語

本文提出一種針對3D MAX軟件制作的三維動畫數(shù)字水印算法,旨在保護(hù)三維動畫這種CG作品形式的版權(quán),提出的嵌入算法和提取算法有效可行、簡單方便,可以保護(hù)動漫企業(yè)或動漫相關(guān)專業(yè)學(xué)生的三維動畫作品,而且本文的算法也可以推廣到MAYA等其他軟件制作的三維動畫,或者其他形式的CG作品中,適用面較寬。但是本文算法在抵抗坐標(biāo)整體平移攻擊時,魯棒性較差,今后將做進(jìn)一步的研究。

參考文獻(xiàn)

[1] 李旭東.用于網(wǎng)絡(luò)多媒體資源版權(quán)保護(hù)的數(shù)字水印方法[J].情報雜志,2014,33(10):171?174.

[2] 田敏,劉琚,萬文博,等.零視差點(diǎn)重組在三維圖像數(shù)字水印中的應(yīng)用[J].信號處理,2013,29(12):1684?1688.

[3] 樊宇.動漫作品中數(shù)字水印的添加與應(yīng)用研究[J].數(shù)字技術(shù)與應(yīng)用,2013(8):74.

[4] 鄧偉,鄧冠群,劉清堂.基于數(shù)字水印的教育資源版權(quán)保護(hù)[J].現(xiàn)代教育技術(shù),2013,23(3):91?94.

[5] 蔣文娟,陸娜.基于Flash動畫的數(shù)字水印研究及其Matlab實(shí)現(xiàn)[J].電腦知識與技術(shù),2014,10(16):3891?3892.

[6] 鄧華,司瑾,王光宇.基于Flash動畫的數(shù)字水印設(shè)計方法[J].電腦編程技巧與維護(hù),2011(14):99?100.

[7] 張曉彥,張曉明.基于Flash動畫的信息隱藏算法[J].計算機(jī)工程,2010,36(1):181?183.

[8] 樊宇.三維動畫變換域數(shù)字水印算法研究[J].計算機(jī)光盤軟件與應(yīng)用,2014(9):217?218.

[9] 王濤,李復(fù)旦,徐超,等.基于最低位有效算法和變化元素的矢量動畫水印方案[J].計算機(jī)應(yīng)用,2014,34(5):1304?1308.

[10] 馬婷,高大鵬,陳農(nóng)田.復(fù)合彩色數(shù)字水印圖像抗攻擊優(yōu)化方法仿真[J].計算機(jī)仿真,2016,33(6):418?422.

猜你喜歡
數(shù)字水印關(guān)鍵幀方陣
方陣訓(xùn)練的滋味真不好受
最強(qiáng)大腦:棋子方陣
基于網(wǎng)屏編碼的數(shù)字水印技術(shù)
基于改進(jìn)關(guān)鍵幀選擇的RGB-D SLAM算法
方陣填數(shù)
實(shí)力方陣 璀璨的星群
基于相關(guān)系數(shù)的道路監(jiān)控視頻關(guān)鍵幀提取算法
基于聚散熵及運(yùn)動目標(biāo)檢測的監(jiān)控視頻關(guān)鍵幀提取
基于數(shù)字水印的人臉與聲紋融合識別算法
基于矩陣分解和混沌置亂的數(shù)字水印算法
黑龙江省| 滨州市| 丰县| 仁化县| 舞阳县| 固镇县| 顺义区| 巨野县| 工布江达县| 贵港市| 社会| 武平县| 勐海县| 内丘县| 资溪县| 城步| 莱阳市| 监利县| 田东县| 临桂县| 武冈市| 招远市| 交城县| 康马县| 虞城县| 石家庄市| 清苑县| 广宁县| 荣成市| 滦南县| 郴州市| 军事| 永嘉县| 林芝县| 太原市| 柘城县| 台东县| 拜城县| 中西区| 昭苏县| 崇信县|