方旺盛,曾 苑,岳崇倫
(1.江西理工大學(xué)信息工程學(xué)院,江西贛州341000;2.廣州城建職業(yè)學(xué)院建筑工程技術(shù)系,廣東廣州 510925)
視頻水印是將水印信息秘密隱藏在視頻產(chǎn)品中,它主要用于標(biāo)識(shí)和保護(hù)產(chǎn)品的版權(quán)[1]。魯棒性和不可見(jiàn)性是數(shù)字水印的兩個(gè)主要基本特征。在水印嵌入的過(guò)程中,兩者是相互制約的,要使這兩者之間的矛盾得到統(tǒng)一,目前使用的方法有:1)在離散小波變換域的中頻中嵌入水印信息[2],可以克服在低頻系數(shù)和高頻系數(shù)嵌入水印的缺點(diǎn)。在離散小波變換域的低頻部分中嵌入水?。?],會(huì)降低水印的不可見(jiàn)性;在高頻部分嵌入水印時(shí),會(huì)降低水印的魯棒性。2)優(yōu)化搜索水印的嵌入強(qiáng)度α。嵌入強(qiáng)度α過(guò)大會(huì)影響水印的不可見(jiàn)性;反之,會(huì)減弱水印的魯棒性[4]。同時(shí)嵌入強(qiáng)度α?xí)绊懺家曨l幀圖像與含水印視頻幀圖像之間的相似度。目前,一些求解它的嵌入強(qiáng)度的方法層出不窮,金聰?shù)热颂岢鐾ㄟ^(guò)極大似然估計(jì)算法計(jì)算水印的嵌入強(qiáng)度[5],但要求宿主圖像信息序列一定要滿足高斯分布;金聰?shù)热颂岢鐾ㄟ^(guò)矩估計(jì)算法計(jì)算水印的嵌入強(qiáng)度[6],但要求宿主圖像的像素值序列服從Weibull分布;伯曉晨等人提出通過(guò)峰值信噪比和信噪比公式計(jì)算嵌入強(qiáng)度[7],但前提必須滿足原始圖像變換域系數(shù)滿足拉普拉斯分布;余燕忠等人提出利用信噪比公式得到每塊的嵌入強(qiáng)度[8],但這樣可能會(huì)引起圖像的塊效應(yīng)。以上算法均缺少靈活性,且適用范圍不廣,如能引用恰當(dāng)?shù)乃∏度霃?qiáng)度尋優(yōu)策略,即可有效地拓寬嵌入強(qiáng)度的應(yīng)用范圍。
本文提出一種通過(guò)粒子群優(yōu)化算法來(lái)搜索水印的最佳嵌入強(qiáng)度,然后在三級(jí)三維離散小波變換域的中頻系數(shù)中嵌入水印信息,嵌入方式采用乘法嵌入方式[9],為了能更好地掩蔽水印的頻率,在嵌入方式中添加局部加權(quán)因子,根據(jù)不同層次的小波變換取不同的值。這樣可以達(dá)到綜合優(yōu)化水印的魯棒性和不可見(jiàn)性的目的。
心理學(xué)家Kennedy和Eberhart博士在1995年共同提出了粒子群優(yōu)化算法[10],它起源于對(duì)鳥(niǎo)群覓食行為的研究。標(biāo)準(zhǔn)粒子群優(yōu)化算法可以描述為:假設(shè)在一個(gè)d維的目標(biāo)搜索空間里,粒子種群的個(gè)數(shù)為M個(gè),第m個(gè)粒子的位置用向量 xm= [xm1,xm2,…,xmd],m=1,2,…,M ,飛行速度用vm=[vm1,vm2,…,vmd],第m個(gè)粒子在這次迭代的最優(yōu)位置 pbm= [pbm1,pbm2,…,pbmd],整個(gè)粒子群在這次迭代的最優(yōu)位置為gb=[gb1,gb2,…,gbd],粒子m通過(guò)式(1)和(2)不斷更新它的速度和位置
式中:m=1,2,…,M;d=1,2,…,D;c0為慣性系數(shù);c1和c2為加速因子,也叫學(xué)習(xí)因子,分別調(diào)整個(gè)體最優(yōu)解和全局最優(yōu)解飛行的最大邊長(zhǎng);r1,r2∈[0,1],都是服從均勻分布的獨(dú)立隨機(jī)數(shù);t為粒子更新迭代次數(shù);T為粒子最大迭代次數(shù)。
在尋優(yōu)過(guò)程中,粒子根據(jù)自身的飛行經(jīng)驗(yàn)和同伴的飛行經(jīng)驗(yàn)來(lái)及時(shí)地調(diào)整自己,根據(jù)計(jì)算得到的適應(yīng)度函數(shù)值可以知道局部最優(yōu)解和全局最優(yōu)解。每個(gè)粒子通過(guò)當(dāng)前速度、位置、當(dāng)前位置與局部最優(yōu)解之間的距離、當(dāng)前位置與全局最優(yōu)解之間的距離不斷迭代,從而更新粒子本身的位置。迭代的終止條件根據(jù)它實(shí)際的具體問(wèn)題而定,一般是指迭代次數(shù)達(dá)到最大設(shè)定值或者全局最優(yōu)適應(yīng)值已滿足要求時(shí)選擇迭代終止。
粒子群優(yōu)化算法(PSO)在搜索水印嵌入強(qiáng)度的過(guò)程中,需要定義一個(gè)適應(yīng)度函數(shù)作為尋優(yōu)根據(jù)。在選擇PSO適應(yīng)度函數(shù)時(shí),應(yīng)該選擇盡可能簡(jiǎn)單,同時(shí)又能很好地分析視頻質(zhì)量和魯棒性的適應(yīng)度函數(shù)。將水印提取的相似度(NC)和圖像峰值信噪比(PSNR)作為水印的魯棒性和不可見(jiàn)性的評(píng)價(jià)標(biāo)準(zhǔn)。采用PSO在全局范圍內(nèi)搜索水印的嵌入強(qiáng)度α,使得PSNR和NC達(dá)到最優(yōu)。得到的適應(yīng)度函數(shù)式
式中:α為水印嵌入強(qiáng)度;rPSNR為含水印圖像的PSNR的值;uNCi
設(shè)定粒子群即嵌入強(qiáng)度α的一維變化范圍為[αmin,αmax]。在區(qū)間[αmin,αmax]上,利用 PSO 算法尋求適應(yīng)度函數(shù)f(α)的最大值。設(shè)f(α)取最大值時(shí)α =αb,則αb為嵌入強(qiáng)度的最優(yōu)估計(jì)值。PSO對(duì)水印進(jìn)行優(yōu)化過(guò)程如圖1所示。
圖1 PSO對(duì)水印進(jìn)行優(yōu)化過(guò)程
假定水印圖像為二值灰度圖像,本文選擇通過(guò)乘法嵌入方式在三級(jí)三維離散小波變換后的中頻系數(shù)中嵌入水印信息,其具體步驟如下:
1)對(duì)二值灰度圖像進(jìn)行水印預(yù)處理,通過(guò)采用Arnold變換與Logistic混沌映射相結(jié)合的灰度置亂預(yù)處理方法[11-12]。設(shè)它的密鑰為 k1,然后再進(jìn)行值域轉(zhuǎn)換,將得到二值水印序列wk,M為水印的長(zhǎng)度。
2)通過(guò)直方圖幀差法[13]將視頻流分成幾個(gè)場(chǎng)景,通過(guò)密鑰k2選擇R個(gè)場(chǎng)景,再通過(guò)密鑰k3幀選出4幀連續(xù)視頻序列作為關(guān)鍵幀。
3)在所選擇的每一個(gè)關(guān)鍵幀圖像的亮度分量Y上進(jìn)行三級(jí)三維小波變換,先進(jìn)行空間上的二維小波變換,再進(jìn)行時(shí)間上一維小波變換,在中頻區(qū)域中通過(guò)層閾值法選擇M個(gè)中頻系數(shù)來(lái)嵌入水印信息。具體方法如下:先設(shè)置1個(gè)系數(shù)的初始閾值φj=2lbcj-1,cj為第j層中絕對(duì)值最大的中頻系數(shù)(j=2,3),依據(jù)降序排序,依次選擇絕對(duì)值大于φj的系數(shù),第3層選擇的中頻系數(shù)個(gè)數(shù)為N3,第2層選擇的中頻系數(shù)個(gè)數(shù)為N2,如果N2+N3<M,則取它的閾值為βj=φj/2,以此類推直到找到M個(gè)中頻系數(shù),并利用密鑰k4保存所選擇的這M個(gè)中頻系數(shù)的位置坐標(biāo),以利于下面提取水印信息。
4)按照乘法嵌入方式,將二值水印序列嵌入到這M個(gè)中頻系數(shù)上,公式定義為
則局部加權(quán)因子
5)將嵌入水印后的系數(shù)矩陣進(jìn)行小波逆變換,得到嵌入水印信號(hào)的Y分量視頻信號(hào),然后根據(jù)密鑰k2,k3返回到原視頻場(chǎng)景中,從而得到含水印的視頻場(chǎng)景。
水印信息的提取過(guò)程其實(shí)就是水印嵌入過(guò)程的逆過(guò)程,本實(shí)驗(yàn)對(duì)水印信息可以進(jìn)行盲提取,不需要原始視頻,其具體步驟如下:
1)將待檢測(cè)視頻序列按直方圖幀差法進(jìn)行場(chǎng)景分割(與水印嵌入的過(guò)程一致),通過(guò)密鑰k2取出R個(gè)場(chǎng)景,然后再通過(guò)密鑰k3取出它的4個(gè)關(guān)鍵幀,最后提取出它的亮度分量,即Y分量,然后在Y分量上對(duì)它進(jìn)行三級(jí)三維離散小波變換,先進(jìn)行時(shí)間上一維小波變換,再進(jìn)行空間上二維小波變換。
2)然后根據(jù)通過(guò)密鑰k4提取水印序列,提取公式為
3)將提取出的一維水印序列變?yōu)槎S,然后再通過(guò)密鑰k1進(jìn)行混沌置亂逆變換可以得到二值水印圖像。
首先初始化粒子群,算法選取初始種群數(shù)目為20個(gè),采用最大進(jìn)化代數(shù)為60,各個(gè)參數(shù)按實(shí)踐經(jīng)驗(yàn)設(shè)置,確定慣性系數(shù)c0=0.5,加速因子c1=c2=2,隨機(jī)系數(shù)r1=r2=1。在實(shí)際應(yīng)用中,通過(guò)動(dòng)態(tài)調(diào)整慣性系數(shù)的值來(lái)加快算法的收斂速度,而隨機(jī)系數(shù)也可以進(jìn)行適當(dāng)?shù)恼{(diào)整,防止算法搜索到局部最優(yōu)解,并且粒子群的位置應(yīng)在搜索區(qū)間平均分布。在一定的運(yùn)算量的前提下,粒子群數(shù)目越多,越不易陷入局部最優(yōu),PSO算法參數(shù)設(shè)置如表1所示。對(duì)嵌入水印的幀圖像實(shí)施3種攻擊:0.5%椒鹽噪聲,0.1%高斯噪聲,量化參數(shù)為8的MPEG-2壓縮攻擊。
表1 粒子群參數(shù)設(shè)置
嵌入強(qiáng)度在水印嵌入過(guò)程中,它有控制水印容量的作用,它的值越大,圖像的魯棒性就越好,但其不可見(jiàn)性將被減弱,所以要選擇一個(gè)較為理想的嵌入強(qiáng)度值。根據(jù)粒子群優(yōu)化算法搜索視頻序列waterfall,container和foreman的第3幀關(guān)鍵幀的最佳水印嵌入強(qiáng)度,結(jié)果見(jiàn)表2。
表2 PSO搜索最佳嵌入水印強(qiáng)度結(jié)果
實(shí)驗(yàn)采用標(biāo)準(zhǔn)的視頻系列waterfall,container,foreman作為測(cè)試視頻,大小為288×352,水印圖像采用一個(gè)32×32的二值灰度圖像,實(shí)驗(yàn)平臺(tái)是MATLAB R2009a。
圖2為原始視頻系列waterfall,container,foreman中的某一幀關(guān)鍵幀圖像和水印原圖像,圖3為嵌入水印后的視頻幀圖像。從主觀上評(píng)價(jià),嵌入水印前后的視頻幀圖像沒(méi)有發(fā)生明顯的變化;從客觀角度評(píng)價(jià),當(dāng)PSNR≥30 dB時(shí),人就很難從視覺(jué)上發(fā)現(xiàn)嵌入水印前后之間的差異,嵌入水印后視頻幀的圖像的PSNR值都在40 dB以上。因此,本算法不管從客觀上還是從主觀上都滿足水印的不可見(jiàn)性。
通過(guò)對(duì)嵌入水印的各個(gè)視頻幀圖像進(jìn)行0.5%椒鹽噪聲,0.1%高斯噪聲和量化參數(shù)為8的MPEG-2壓縮攻擊。實(shí)驗(yàn)圖像結(jié)果如表3所示。實(shí)驗(yàn)結(jié)果表明,該算法對(duì)這幾種攻擊都具有較好的魯棒性。
表3 視頻幀圖像的攻擊實(shí)驗(yàn)結(jié)果以及提取水印信息
實(shí)驗(yàn)采用標(biāo)準(zhǔn)視頻container.yuv,利用上述PSO算法搜索container.yuv序列視頻幀圖像的最佳嵌入強(qiáng)度值為α=2.345 1。下面對(duì)它們兩者進(jìn)行0.1%高斯噪聲攻擊實(shí)驗(yàn)如圖4所示,圖4a是本文實(shí)驗(yàn)結(jié)果,圖4b是文獻(xiàn)[14]的加法嵌入方式實(shí)驗(yàn)結(jié)果。
圖4 container視頻幀圖像經(jīng)高斯噪聲攻擊實(shí)驗(yàn)結(jié)果以及提取水印信息
實(shí)驗(yàn)結(jié)果表明,利用乘法嵌入方式嵌入水印,它抗高斯噪聲的魯棒性較好,提取的水印雖有點(diǎn)模糊,但仍能分辨出來(lái),而利用文獻(xiàn)[14]中的加法方式嵌入水印,則它的抗高斯噪聲的魯棒性較差,提取出的水印更模糊些。因此,本文提出的算法可以更好地滿足水印的魯棒性及不可見(jiàn)性。
本文通過(guò)引用粒子群優(yōu)化算法(PSO)對(duì)水印的嵌入強(qiáng)度進(jìn)行搜索,再通過(guò)乘法嵌入方式把水印信息嵌入到小波變換域的中頻系數(shù)中。一方面,搜索到最佳水印嵌入強(qiáng)度;另一方面,利用乘法嵌入方式,提高水印的魯棒性。實(shí)驗(yàn)結(jié)果表明,這樣能更好地綜合優(yōu)化水印的魯棒性和不可見(jiàn)性。
:
[1]謝斌,任克強(qiáng),肖玲玲.一種基于HVS的DCT域穩(wěn)健視頻水印算法[J].電視技術(shù),2011,35(9):30-35.
[2]熊祥光,楊錦尊,崔魏.基于三維小波變換和HVS的視頻水印算法[J].武漢大學(xué)學(xué)報(bào):工學(xué)版,2010,43(3):357-360.
[3]馬志英,王修運(yùn).基于幀間小波變換的視頻水印研究[J].計(jì)算機(jī)工程與科學(xué),2010,32(5):143-146.
[4]鄭江云,江巨浪.一種低復(fù)雜度的基于小波的彩色圖像水印算法[J].電視技術(shù),2007,31(8):88-90.
[5]金聰,彭嘉熊.數(shù)字圖像水印嵌入強(qiáng)度的最優(yōu)估計(jì)[J].紅外與激光工程,2004,33(2):174-177.
[6]金聰,彭嘉熊.數(shù)字圖像水印嵌入強(qiáng)度的矩估計(jì)方法[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2004,16(5):691-695.
[7]伯曉晨,卜彥龍,沈林成,等.給定降質(zhì)約束下一類DCT域圖像水印算法的拉伸系數(shù)估計(jì)[J].國(guó)防科技大學(xué)學(xué)報(bào),2002,24(6):52-57.
[8]余燕忠,王新偉.基于信噪比的自適應(yīng)圖像水印算法[J].計(jì)算機(jī)工程,2003,29(1):70-74.
[9]COX I J,KILIAN J,LEIGHTON F,et al.Secure spread spectrum watermarking for multimedia[J].IEEE Trans.Image Processing,1997,6(12):1673-1687.
[10]KENNEDY J,EBERHART R C.Particle swarm optimization[C]//Proc.IEEE International Conference on Neural Network.Perth:IEEE Press,1995:1942-1948.
[11]李趙紅,侯建軍.基于Logistic混沌映射的DCT域脆弱數(shù)字水印算法[J].電子學(xué)報(bào),2006,34(12):2134-2137.
[12]FANG Wangsheng,WU Lulu,ZHANG Rong.A watermark preprocessing algorithm based on arnold and logistic chaotic map[EB/OL].[2012-06-01].http://wenku.baidu.com/view/2eeab7ccbb4cf7ec4 afed0e7.html.
[13]錢(qián)剛,曾貴華.典型視頻鏡頭分割方法的比較[J].計(jì)算機(jī)工程與應(yīng)用,2004(32)51-55.
[14]鐘寧,何遵文,匡鏡明.基于遺傳算法的圖像水印優(yōu)化嵌入技術(shù)研究[J].兵工學(xué)報(bào),2008,29(9):1054-1058 .