程格平 胡春陽 寧彬
摘? 要: 為了提高數(shù)字指紋的共謀抵抗性和不可見性,提出基于BP神經(jīng)網(wǎng)絡(luò)的自適應(yīng)數(shù)字指紋算法。結(jié)合原始圖像的視覺特性,利用BP神經(jīng)網(wǎng)絡(luò)對(duì)載體圖像的子塊進(jìn)行分類,自適應(yīng)地確定指紋的嵌入強(qiáng)度,再使用自適應(yīng)遺傳算法,優(yōu)化指紋嵌入的位置。實(shí)驗(yàn)結(jié)果表明,該算法在保證指紋圖像視覺質(zhì)量的同時(shí),能夠提高指紋信號(hào)的抗共謀攻擊性能。
關(guān)鍵詞: 數(shù)字指紋; BP神經(jīng)網(wǎng)絡(luò); 遺傳算法; 視覺質(zhì)量; 共謀抵抗性
中圖分類號(hào):TP309? ? ? ? ? 文獻(xiàn)標(biāo)志碼:A? ? ?文章編號(hào):1006-8228(2019)06-78-04
Abstract: An adaptive digital fingerprinting algorithm based on the BP neural network is proposed in order to enhance the digital fingerprinting collusion resistant and imperceptibility. According to the visual characteristic of the original image, the fingerprinting embedding strength can be adaptively identified by classifying the sub-blocks of the carrier image based on BP neural network and the fingerprinting embedding locations is further optimized by applying the adaptive genetic algorithm. The experimental results show that the proposed method has superior performance on collusion-resistance of the fingerprinting algorithm without descending the image quality.
Key words: digital fingerprinting; BP neural network; genetic algorithm; image quality; collusion resistant
0 引言
數(shù)字指紋是一種重要的數(shù)字版權(quán)保護(hù)技術(shù),通過在多媒體作品的內(nèi)容中嵌入唯一代表用戶身份的信息,對(duì)數(shù)字產(chǎn)品的復(fù)制和分發(fā)進(jìn)行控制和跟蹤,為數(shù)字產(chǎn)品的侵權(quán)行為提供證據(jù),實(shí)現(xiàn)多媒體產(chǎn)品的版權(quán)保護(hù)[1]。作為一種特殊的數(shù)字水印,數(shù)字指紋不僅要能抵抗數(shù)字水印的信號(hào)處理攻擊和幾何攻擊,而且要能抵抗共謀攻擊[2]。
為了實(shí)現(xiàn)數(shù)字水印的不可感知性和魯棒性,研究人員提出了自適應(yīng)水印算法,基本思想是利用宿主圖像局部特征的強(qiáng)度變化來確定水印信號(hào)的嵌入位置和嵌入強(qiáng)度,從而實(shí)現(xiàn)不可見性和魯棒性的一種最佳折中。文獻(xiàn)[3]提出了一種基于宿主圖像分析和遺傳算法的水印算法。通過分析載體圖像質(zhì)量的視覺特性,利用遺傳算法尋找嵌入強(qiáng)度和位置的最優(yōu)參數(shù),不僅改善了宿主圖像的透明性,而且提高了水印圖像的安全性和魯棒性。近年來,一些機(jī)器學(xué)習(xí)(Machine Learning)方法(神經(jīng)網(wǎng)絡(luò)、遺傳算法、支持向量機(jī)等)應(yīng)用到數(shù)字水印領(lǐng)域,以解決水印優(yōu)化中存在的問題。遺傳算法是基于自然選擇和遺傳學(xué)機(jī)制的一種隨機(jī)搜索優(yōu)化算法,在圖像處理的優(yōu)化計(jì)算領(lǐng)域得到了廣泛的應(yīng)用[4]。Huang[5]等將遺傳算法應(yīng)用到數(shù)字水印領(lǐng)域,研究水印圖像的嵌入容量、保真度和魯棒性之間的平衡關(guān)系,改進(jìn)和優(yōu)化水印算法的性能。文獻(xiàn)[6]對(duì)遺傳算法進(jìn)行改進(jìn),通過在每一代種群中保留最佳個(gè)體參與遺傳,優(yōu)化算法的適應(yīng)度函數(shù)值,搜索水印的最佳嵌入位置,提高了水印算法的魯棒性。反向傳播神經(jīng)網(wǎng)絡(luò)(BP神經(jīng)網(wǎng)絡(luò))是一種多層前向反饋神經(jīng)網(wǎng)絡(luò),具有強(qiáng)大的自適應(yīng)、泛化和非線性逼近能力,與人類視覺系統(tǒng)(HVS,Human Visual System)具有極大的相似性,成為自適應(yīng)數(shù)字水印技術(shù)的重要研究方向。
本文基于數(shù)字指紋技術(shù)的基本框架,結(jié)合BP神經(jīng)網(wǎng)絡(luò)和遺傳算法的優(yōu)點(diǎn),根據(jù)圖像的局部視覺特性,優(yōu)化數(shù)字指紋算法性能,以提高數(shù)字指紋的共謀抵抗性和不可見性。
1 基于BP神經(jīng)網(wǎng)絡(luò)和遺傳算法的自適應(yīng)數(shù)字指紋算法
1.1 確定指紋的嵌入強(qiáng)度
人類視覺系統(tǒng)模型表明,人眼對(duì)不同亮度與紋理的圖像區(qū)域具有不同的敏感度[7]。根據(jù)圖像區(qū)域的亮度與紋理特性,利用BP神經(jīng)網(wǎng)絡(luò)劃分不同的圖像塊類型,確定不同類型的圖像塊對(duì)應(yīng)的指紋嵌入強(qiáng)度,以提高指紋系統(tǒng)的魯棒性和安全性。人眼對(duì)亮度的敏感程度通過圖像塊的明暗度值來度量,定義為:
其中,p(x,y)表示子圖像塊中位置為(x,y)的像素值,α為強(qiáng)度因子。
紋理敏感度則由圖像塊的熵值和方差計(jì)算,定義如下:
其中,z表示圖像塊的灰度級(jí),表示P(z)灰度級(jí)的概率。
BP神經(jīng)網(wǎng)絡(luò)通常采用梯度下降搜索算法,不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使得網(wǎng)絡(luò)的輸出值與實(shí)際輸出值的均方誤差最小[8]。假定BP神經(jīng)網(wǎng)絡(luò)的輸入層變量為,隱含層節(jié)點(diǎn)為,輸出層的輸入變量為,ωij是連接輸入層第i個(gè)節(jié)點(diǎn)和隱含層第j個(gè)節(jié)點(diǎn)的權(quán)值,θj是連接隱含層第j個(gè)節(jié)點(diǎn)的閾值,ωjk是連接隱含層第j個(gè)節(jié)點(diǎn)和輸出層第k個(gè)節(jié)點(diǎn)的權(quán)值,δk是連接隱含層第k個(gè)節(jié)點(diǎn)的閾值,是隱含層的激勵(lì)函數(shù),是輸出層的激勵(lì)函數(shù),則隱含層第j個(gè)節(jié)點(diǎn)的輸入值和輸出層第k個(gè)節(jié)點(diǎn)的輸出值分別為
每個(gè)樣本p的輸出誤差函數(shù)為
其中,Tk為樣本p的期望輸出值。
按照人眼視覺模型,圖像塊的亮度敏感度分為不敏感、敏感和較敏感三種級(jí)別,紋理程度分為平滑、邊緣和紋理三種類別。因此,載體圖像塊可分為9種類型,用表示,用于嵌入用戶的指紋信號(hào)。將圖像塊的三個(gè)特征屬性構(gòu)成一個(gè)特征向量,作為BP神經(jīng)網(wǎng)絡(luò)的輸入值。選取若干不同類型的圖像塊構(gòu)造樣本數(shù)據(jù)訓(xùn)練集U={(Vi,Ci),i=1,2,…,n},其中n為圖像塊的數(shù)量,Vi表示載體圖像中第i個(gè)圖像塊的局部特征,Ci為其對(duì)應(yīng)的圖像類型。使用經(jīng)過訓(xùn)練的BP神經(jīng)網(wǎng)絡(luò)對(duì)載體圖像塊進(jìn)行分類,并確定指紋的嵌入強(qiáng)度αi。
1.2 優(yōu)化指紋的嵌入位置
根據(jù)載體圖像的局部視覺特性,改進(jìn)傳統(tǒng)的遺傳算法并引入數(shù)字指紋技術(shù),優(yōu)化指紋的嵌入位置,以最大程度地改善數(shù)字指紋的共謀抵抗性和不可見性之間的平衡關(guān)系。
⑴ 編碼 將大小為m×n的載體圖像劃分為8×8子塊,每個(gè)圖像塊的DCT系數(shù)位置作為基因。設(shè)種群規(guī)模為G,每個(gè)染色體長(zhǎng)度為d,那么第i個(gè)染色體Pi的編碼為
其中,,第i個(gè)染色體的第k個(gè)基因。
⑵ 遺傳算子 對(duì)標(biāo)準(zhǔn)遺傳算法進(jìn)行改進(jìn),使交叉概率pc和變異概率pm隨個(gè)體適應(yīng)度值的變化而變化,避免算法過早收斂而陷于局部最優(yōu)。pc和pm定義為
其中,fmax和fmin表示種群中個(gè)體的最大適應(yīng)度和最小適應(yīng)度值,favg為平均適應(yīng)度值,f為兩個(gè)個(gè)體實(shí)行交叉操作的較大適應(yīng)度值,為實(shí)行變異操作的個(gè)體適應(yīng)度值,Pc1和Pc2分別為最大和最小交叉概率,Pm1和Pm2分別是最大和最小變異概率。
⑶ 遺傳操作 選擇操作采用輪盤賭和最優(yōu)個(gè)體保存方法。將每代適應(yīng)度最高的個(gè)體直接保留到下一代,不參與交叉和變異過程,直到被更好的個(gè)體所取代,確保最優(yōu)個(gè)體參與遺傳;交叉操作采用單點(diǎn)交叉和多點(diǎn)交叉相結(jié)合的方式進(jìn)行。在隨機(jī)選擇的兩個(gè)個(gè)體進(jìn)行交叉的過程中,交叉點(diǎn)的個(gè)數(shù)由隨機(jī)數(shù)確定,使用預(yù)先設(shè)定的交叉概率進(jìn)行交叉操作;在變異操作中,按照一定的概率隨機(jī)生成一定數(shù)量的變異位置,每個(gè)位置隨機(jī)生成位于區(qū)間0和1之間的一個(gè)實(shí)數(shù),若生成的實(shí)數(shù)大于預(yù)先設(shè)定的變異概率,則隨機(jī)生成區(qū)間1和64之間的一個(gè)整數(shù)替換相應(yīng)位置的值。
⑷ 適應(yīng)度函數(shù) 為了評(píng)估指紋圖像的視覺質(zhì)量,使用嵌入指紋后載體圖像與指紋圖像的峰值信噪比PSNR表示數(shù)字指紋的不可見性,定義為
其中,和分別表示原始圖像和指紋圖像的像素值。
為了評(píng)估指紋抵抗共謀攻擊的能力,采用抓一策略檢測(cè)參與共謀的用戶,定義共謀者檢測(cè)概率為
其中,T(i)表示相關(guān)性檢測(cè)統(tǒng)計(jì)量,Sc為共謀用戶集合。h為指紋檢測(cè)閾值,由錯(cuò)誤檢測(cè)概率Pf確定。
根據(jù)數(shù)字指紋的性能參數(shù),遺傳算法的適應(yīng)度函數(shù)定義為
其中,表示數(shù)字指紋的共謀抵抗性;λ表示縮放因子,M為共謀攻擊的種類數(shù),g表示當(dāng)前代數(shù)。
1.3 指紋的嵌入算法
⑴ 將大小為m×n的載體圖像劃分為8×8子塊;
⑵ 對(duì)每個(gè)子塊進(jìn)行DCT變換,按Zigzag順序掃描得到一維系數(shù)序列
⑶ 在每個(gè)子塊中,選擇經(jīng)過優(yōu)化的第i個(gè)DCT系數(shù)位置,使用加性水印方法嵌入指紋得到指紋圖像
其中,αi表示指紋的自適應(yīng)嵌入強(qiáng)度因子,Wi表示指紋信號(hào)。
1.4 指紋的共謀攻擊
假定有K個(gè)用戶參與共謀,則經(jīng)過共謀攻擊后的共謀偽本表示為
其中,表示共謀攻擊函數(shù)。
1.5 指紋的檢測(cè)算法
⑴ 對(duì)檢測(cè)圖像進(jìn)行8×8分塊DCT變換;
⑵ 按順序?qū)Ω鱾€(gè)圖像子塊進(jìn)行Zigzag順序掃描,得到一維系數(shù)序列;
⑶ 在指紋優(yōu)化的嵌入位置,使用相關(guān)性檢測(cè)器檢測(cè)共謀者,定義T(i)為
⑷ 根據(jù)公式⑾計(jì)算共謀者檢測(cè)概率Pg。
2 仿真實(shí)驗(yàn)及結(jié)果
為了評(píng)價(jià)本文提出指紋算法的共謀抵抗性和不可見性,本實(shí)驗(yàn)從標(biāo)準(zhǔn)圖像數(shù)據(jù)庫中選擇50幅大小為512×512的標(biāo)準(zhǔn)圖像作為測(cè)試樣本。使用MATLAB軟件平臺(tái)進(jìn)行實(shí)驗(yàn)仿真,并與文獻(xiàn)[3]的算法進(jìn)行性能比較。
在實(shí)驗(yàn)中,BP神經(jīng)網(wǎng)絡(luò)采用[64-8-9]的三層結(jié)構(gòu)模型,網(wǎng)絡(luò)輸入層為各8×8圖像塊的像素灰度值,從標(biāo)準(zhǔn)測(cè)試圖像中選取1000個(gè)圖像塊作為樣本數(shù)據(jù)集,學(xué)習(xí)訓(xùn)練次數(shù)為1000次。遺傳算法的初始種群大小為50,迭代次數(shù)為200,Pc1、Pc2、Pm1、Pm2分別取值為0.9、0.6、0.1、0.001。假定指紋用戶總數(shù)設(shè)置為1000,指紋信號(hào)為服從高斯分布的隨機(jī)數(shù)序列,共謀人數(shù)的最大值為30,錯(cuò)誤檢測(cè)概率為0.01,使用平均攻擊、最大值攻擊和梯度攻擊三種典型的共謀攻擊方式,則不同共謀人數(shù)攻擊后的實(shí)驗(yàn)結(jié)果如表1和表2所示。
從表1和表2的結(jié)果可以看出,與文獻(xiàn)[3]提出的算法相比較,對(duì)不同的共謀攻擊和共謀人數(shù),在保證指紋圖像視覺質(zhì)量的條件下,本文提出的算法具有較好的抗共謀攻擊能力,提高了指紋系統(tǒng)的綜合性能。
3 結(jié)論
本文提出了基于BP神經(jīng)網(wǎng)絡(luò)的自適應(yīng)數(shù)字指紋算法?;跀?shù)字指紋技術(shù),根據(jù)載體圖像的局部視覺特性,利用BP神經(jīng)網(wǎng)絡(luò)對(duì)圖像塊進(jìn)行分類,自適應(yīng)選擇指紋的嵌入強(qiáng)度。使用改進(jìn)的遺傳算法對(duì)指紋嵌入位置進(jìn)行優(yōu)化,提高了指紋算法的效率,實(shí)現(xiàn)了數(shù)字指紋的共謀抵抗性和不可見性的性能平衡。
參考文獻(xiàn)(References):
[1] Li X W, Guo B L, Wu X X, et al. On collusion attack fordigital fingerprinting[J]. Journal of Information Hiding and Multimedia Signal Processing,2011.2(4):366-376
[2] Gupta S, Shukla M. Reviews On WatermarkingTechniques:A Survey[J]. International Journal of Computer Science and Network Security (IJCSNS),2015.15(7):51
[3] Han J, Zhao X, Qiu C. A digital image watermarkingmethod based on host image analysis and genetic algorithm[J]. Journal of Ambient Intelligence and Humanized Computing,2016.7(1):37-45
[4] Gen M, Cheng R. Genetic algorithms and engineeringoptimization[M]. John Wiley & Sons,2000.
[5] Huang H C, Chu C M, Pan J S. The optimized copyrightprotection system with genetic watermarking[J]. Soft Computing,2009.13(4):333-343
[6] 李小璐,周曉誼,曹春杰.基于改進(jìn)的遺傳算法和SVM的圖像DCT變換域水印技術(shù)[J].現(xiàn)代電子技術(shù),2016.39(20):72-77
[7] Qi H, Dong Z, Zhao J. Human visual system basedadaptive digital image watermarking[J].Signal Processing,2008.88(1):174-188
[8] Sun L, Xu J, Liu S, et al. A robust image watermarkingscheme using Arnold transform and BP neural network[J]. Neural Computing and Applications,2017.