◆劉俊伯 馬 源 魏 堯 和嘉鵬
(華東理工大學(xué)信息學(xué)院 上海 200237)
隨著當(dāng)今互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,數(shù)字圖像已成為當(dāng)下時(shí)代主流的信息傳輸方式,應(yīng)用也極為廣泛,由此也產(chǎn)生了諸如圖像篡改等網(wǎng)絡(luò)安全問(wèn)題。圖像篡改主要是一部分人為了達(dá)到某種目的,而使用圖像處理軟件隨意地改變圖像內(nèi)容以達(dá)到某種惡意的目的或獲取利益。篡改后的圖像具有一定的安全隱患,這些惡意行為不僅影響人們的日常生活,甚至?xí)<皣?guó)家安全。通常,篡改后的圖像能達(dá)到以假亂真的視覺(jué)效果,因此,研究針對(duì)數(shù)字圖像的篡改認(rèn)證取證技術(shù)就顯得尤為重要。
圖像篡改檢測(cè)技術(shù)分為主動(dòng)檢測(cè)技術(shù)和被動(dòng)檢測(cè)技術(shù)。主動(dòng)檢測(cè)技術(shù)指的是預(yù)先在圖像中嵌入某種數(shù)字簽名、數(shù)字水印等信息,接收方通過(guò)提取該類(lèi)信息來(lái)檢測(cè)所得信息是否與發(fā)送方的信息一致,以此來(lái)判斷圖像是否被篡改。而被動(dòng)檢測(cè)技術(shù)則是通過(guò)提取數(shù)字圖像的各特征(如DC、AC系數(shù)),來(lái)判斷圖像是否被篡改。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)在模式識(shí)別和圖像分類(lèi)等領(lǐng)域有著廣泛的應(yīng)用。本文選用深度學(xué)習(xí)的CNN網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)篡改檢測(cè),改變了傳統(tǒng)圖像特征提取的方法,取得了很高的檢測(cè)率,具有一定的新穎性。
JPEG雙壓縮指的是用兩個(gè)不同的質(zhì)量因子 QF(Quality Factor)對(duì)同一張圖片分別進(jìn)行前后兩次的壓縮。在雙壓縮時(shí),原始圖像首先被解壓縮,即先解碼和反量化,再進(jìn)行逆DCT變換,再把進(jìn)行過(guò)以上操作的圖像進(jìn)行第二次壓縮操作,過(guò)程圖1所示。
由于DCT系數(shù)值的統(tǒng)計(jì)直方圖在經(jīng)過(guò)JPEG雙壓縮之后會(huì)出現(xiàn)一定的周期性,其中JPEG圖像二次壓縮后的AC系數(shù)值的直方圖會(huì)呈現(xiàn)出周期性的高低交錯(cuò),而一次壓縮的JPEG圖像就不會(huì)有此特性。因此,本文把這種二次壓縮后的JPEG圖像統(tǒng)計(jì)特性的改變稱(chēng)為“DQ效應(yīng)”(Double Quantization)。通過(guò)對(duì)DCT系數(shù)直方圖進(jìn)行傅立葉變換,這時(shí)經(jīng)過(guò)JPEG二次壓縮直方圖頻譜圖的兩邊,小幅度上依然會(huì)有極值出現(xiàn),而經(jīng)過(guò)JPEG一次壓縮的沒(méi)有這個(gè)特點(diǎn)。這些特性即是進(jìn)行JPEG篡改取證的重要理論依據(jù),我們發(fā)現(xiàn)JPEG雙壓縮會(huì)讓DCT系數(shù)的AC交流分量值出現(xiàn)特殊的規(guī)律:(1)如果QF1>QF2,會(huì)導(dǎo)致系數(shù)值缺失且具有周期性;(2)如果QF1≤QF2,會(huì)導(dǎo)致極值的周期性。JPEG一次壓縮過(guò)的圖像的直方圖類(lèi)似是拉普拉斯或廣義高斯分布,JPEG二次壓縮會(huì)破壞這種情況[3]。綜上所述,根據(jù)JPEG雙壓縮后敏感的系數(shù)特征,其具體實(shí)現(xiàn)算法如下:
圖1 JPEG雙壓縮流程[1]
(1)圖像分塊的離散余弦變換(BDCT變換):
首先對(duì)輸入的JPEG圖像進(jìn)行無(wú)重疊的8×8的分塊,圖像邊緣不足8×8的部分用0補(bǔ)值,并對(duì)每一小塊分別進(jìn)行離散余弦變換。將結(jié)果四舍五入至整數(shù)。對(duì)于任意8×8塊的離散余弦變換的公式為:
上式中,u,v∈ [1,7],且f(x,y),F(xiàn)(u,v)分別表示離散余弦變換前后的圖像。
(2)對(duì)每一塊提取系數(shù)構(gòu)建特征向量:
在全圖圖像塊中,如果將數(shù)據(jù)直接輸入網(wǎng)絡(luò),將很難確定這種輸入數(shù)據(jù)的方式,且增加了訓(xùn)練的計(jì)算量。冗余信息會(huì)影響到CNN特征表達(dá)的結(jié)果,故讓代表圖像特征最多嘴密集部分的系數(shù)代入模型可以使之有效實(shí)現(xiàn)(由于DC系數(shù)值分布導(dǎo)致不能很好地設(shè)計(jì)特征的取值,所以主要考慮了 AC系數(shù)),進(jìn)而對(duì)得到的DCT系數(shù)矩陣進(jìn)行Zig-zag排序處理,具體方式如圖2所示。
按Zig-zag順序取第2-11像素塊,統(tǒng)計(jì)每一個(gè)像素塊中出現(xiàn)的系數(shù)值為{-11,-10,…,0,…,10,11}內(nèi)共23個(gè)整數(shù)出現(xiàn)的次數(shù),構(gòu)成一個(gè)10×23表示的特征向量。用Q表示規(guī)定大小的塊,則表示為第i個(gè)頻率處DCT系數(shù)值為u的統(tǒng)計(jì)值,Zig-zag提取圖像塊具體位置如表1所示。
(4)卷積神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)
神經(jīng)網(wǎng)絡(luò)的構(gòu)建方面,本例采用了經(jīng)典的CNN網(wǎng)絡(luò),經(jīng)過(guò)實(shí)驗(yàn)發(fā)現(xiàn)八層結(jié)構(gòu)學(xué)習(xí)效果較好。訓(xùn)練數(shù)據(jù)在輸入之前,先進(jìn)行統(tǒng)一的標(biāo)準(zhǔn)化處理,在兩個(gè)全連接層處采用Dropout技術(shù)來(lái)抑制網(wǎng)絡(luò)對(duì)訓(xùn)練數(shù)據(jù)過(guò)擬合,并使用 Adam算法(Adaptive Moment Estimation)來(lái)對(duì)實(shí)驗(yàn)參數(shù)進(jìn)行更新,最后對(duì)學(xué)習(xí)率、卷積核大小等超參數(shù)使用網(wǎng)格搜索算法來(lái)調(diào)優(yōu),得到了最終的模型,具體內(nèi)容如圖3所示。
訓(xùn)練集采用了Github上用戶(hù)@namtpham提供的圖像篡改數(shù)據(jù)集 CASIA v2.0[4],其中包含各種色彩鮮明的動(dòng)物圖像共 7491張。從中隨機(jī)選取1100張作為訓(xùn)練圖像;測(cè)試集采用了從公共數(shù)據(jù)庫(kù)[5]選取的鳥(niǎo)類(lèi)圖像,共200張。運(yùn)用重疊分塊去處理每張圖片。初始?jí)K大小設(shè)置為64×64,分塊的位移為64。從圖像篡改取證的角度出發(fā),依次去驗(yàn)證算法對(duì) JPEG雙壓縮的篡改檢測(cè),觀(guān)察其能否區(qū)分開(kāi)一次壓縮的圖像和二次壓縮的圖像。
圖2 Zig-zag排序方式
表1 提取圖像塊的具體位置
圖3 卷積神經(jīng)網(wǎng)絡(luò)具體模型
圖4 數(shù)據(jù)集(a)-(b):未篡改圖像;(c)-(d):篡改圖像
通過(guò)訓(xùn)練與測(cè)試CNN分類(lèi)器對(duì)一次壓縮和二次壓縮的區(qū)分能力,將樣本塊分成了64×64,128×128,512×512,1024×1024的不同維度大小。圖5展示了不同維度的塊和不同QF2條件下,圖像在CNN網(wǎng)絡(luò)中分類(lèi)正確率的大小。
圖5表明樣本塊的分辨率設(shè)置的越大,最后的分類(lèi)正確率就會(huì)越高??梢悦黠@看出,當(dāng)分塊維度為1024×1024時(shí),正確率基本達(dá)到90%及以上。因?yàn)榉謮K的維度越大,其帶有的特征信息也就越多,區(qū)分自然也更容易。而且第二次壓縮的質(zhì)量因子越大,分類(lèi)的正確率會(huì)越高。在給出的尺寸下,當(dāng)?shù)诙螇嚎s因子QF2=95時(shí),分類(lèi)正確率幾乎都能達(dá)到95%及以上。
圖5 不同維度分塊和不同QF2下的檢測(cè)準(zhǔn)確率
本文首先對(duì)數(shù)據(jù)集進(jìn)行分類(lèi)、設(shè)置不同的訓(xùn)練和測(cè)試指標(biāo),并用深度學(xué)習(xí)的方法來(lái)實(shí)現(xiàn)對(duì)JPEG雙壓縮的篡改取證,并獲得了很高的檢測(cè)準(zhǔn)確率。下一步將在此基礎(chǔ)上,實(shí)現(xiàn)圖像篡改定位。