李 兵,趙明華,王 鋒
(西安理工大學計算機科學與工程學院,陜西 西安 710048)
伴隨大數據時代的來臨,數字圖像被廣泛使用于人們的工作生活中,圖像編輯與處理工具也得到迅猛發展,通過圖像編輯工具可以偽造出真假難辨的數字圖像,顛覆了人類“眼見為實”的傳統觀念[1]。尤其是將數字圖像篡改應用在政治、軍事及司法等敏感領域時,會對社會的平穩發展帶來很多負面影響。由此可以看出,關于數字圖像篡改檢測的研究擁有重要意義[2]。
數字水印是通過數字嵌入的形式將信息隱藏在數字化媒體內,以此完成隱秘傳輸、身份驗證、版權保護等功能,將此種手段應用于數字圖像內,能夠極大地維護圖像的信息安全,具備極高的應用價值。文獻[3]提出了基于SVD和直方圖的JPEG同幅圖像篡改盲檢測方法,分析了基于小波變換和奇異值分解方法對同幅圖像拼接篡改檢測的缺點,結合相關重要的思想,構建了一種改進算法,該算法運用SVD提取圖像塊特征,并采用偏移頻率的直方圖來確定閾值。但是該方法的圖像篡改盲檢測精度較低。文獻[4]提出了基于雙信息統計與引力聚類的圖像篡改檢測方法,利用Hessian矩陣來準確提取圖像的特征點,通過圖像的梯度直方圖來描述圖像的方向特征,并聯合圖像的顏色信息,構造雙信息統計機制,獲取圖像的特征向量,計算特征向量間的歐氏距離,構造近似測量模型,對圖像特征進行匹配,利用引力聚類方法,實現圖像特征點的聚類,精準檢測復制-粘貼篡改內容。但是該方法的圖像篡改盲檢測時間較長,導致檢測效率較低。
針對上述問題,本文提出一種基于大數據的圓對稱擴頻數字圖像篡改盲檢測方法。首先通過基于大數據的圓對稱擴頻數字圖像水印算法,利用偽隨機發生器得到一個圓形水印,將初始圖像進行DFT轉換,得到嵌入水印后的數字圖像,并精準判斷出圖像是否被惡意篡改;其次建立圖像篡改模型,識別圖像來源,探測圖像完整性,并對篡改方位實現有效定位;然后利用雙重變換下數字圖像篡改盲檢測方法,以此檢測圖像的真實性;最后進行仿真,證明本文方法的適用性及檢測精度和效率均優于傳統方法,可在真實場景中進行廣泛應用。
在大數據環境下,擴頻通信是指通過偽隨機碼將被傳輸信號采取頻譜擴展,讓占據的信道帶寬遠遠高于在一般通信狀態下的最小帶寬。圓對稱擴頻數字圖像是將一圓對稱水印嵌入到了圖像的頻域中,使用擴頻通信技術輸送一個窄帶水印,以此達到不可感知性及魯棒性統一的目的。
本文提出的水印算法是基于變換域方法,使用DFT特征在圖像頻域內嵌入一個圓對稱擴頻水印,可以準確判斷出圖像是否被篡改,能夠有效保護數字圖像的數據安全。
若初始圖像是實型離散函數I(x,y),0≤x≤N-1、0≤y≤N-1,且N=M,那么將此二維離散傅立葉轉換表示為

(1)
如果M、Φ是復數F(u,v)的振幅及相位,那么可得到
M=|F(u,v)|,Φ=∠F(u,v)
(2)
水印嵌入可劃分為三部分。首先通過偽隨機發生器生成一個圓形水印

(3)
式中,wi表示偽隨機矢量w的第i個分量,R表示圓形水印半徑。式(3)證明偽隨機發生器陸續輸出均位于以頻域原點為中心的圓內,位于圓外的點賦值都是0[5]。
其次,將初始圖像采取DFT變換,把W(u,v)引入初始圖像傅氏頻度的振幅內
Mw(u,v)=M(u,v)+αWc(u,v)
(4)
式中,α為按照經驗挑選的視覺參數值,可以維護水印的透明度及魯棒性。
最后,將Mw與Φ進行IDFT變換,獲取嵌入水印后的數字圖像Iw(x,y)。
檢測水印不需要初始圖像作為參照,僅需要把待測圖像采取傅立葉逆向轉換,然后從水印嵌入的位置進行水印提取,提取后的水印因為包含初始圖像的頻譜成分和惡意襲擊,所以與原本水印擁有很大差別。此時要使用一個判斷準則來斷定是否參雜水印數據[6]。本文運用水印和原水印的關聯性當作權衡標準,將其描述為

(5)
式中,W′與W依次為待判斷水印和正確水印,Corr值的擇取范圍在[0,1]之間,若該關聯值超出某個臨界值,則斷定該數字圖像內擁有水印。

若JPEG壓縮時的量化,采用四舍五入的取整手段,那么可得到
(6)
式中[·]為四舍五入取整,Q1為初始量化步長。
如果沒有實現量化的系數是du,采取兩次量化后的系數是D2,兩次量化的步長依次為Q1、Q2,則

(7)
不論Q1是奇數還是偶數,只要沒有量化的DCT系數du處在上面區間之中,那么雙重壓縮量化后獲得的系數是D2,所以可利用區間長度構建數字圖像篡改模型

(8)
現階段,許多數字圖像都是利用JPEG圖像壓縮標準進行儲存,在JPEG圖像的空域篡改處理后會再次進行JPEG壓縮,將其保存為JPEG格式[7]。
將模型與雙重壓縮效應進行融合可以看出,若一張JPEG圖像包括篡改與非篡改部分,則非篡改部分的DCT系數依舊具備雙量化功效,此部分和初始JPEG圖像雙重壓縮后的對照部分相同,篡改部分將不具備雙壓縮效果[8]。
通過構建數字圖像篡改模型,可以有效鑒別圖像的來源及完整性,并對圖像被篡改位置進行精準定位。
假設一個二維函數f(x,y)的Radon變換為此函數平面中一組直線的線積分,將其描述為
P(r,θ)=R(r,θ){f(x,y)}

(9)
其中,|r|表示原點O與直線的間距,θ∈[0,π]表示直線和y軸之間的夾角,δ(r)為Dirac函數。
通過式(9)可知,Radon變換是把二維函數f(x,y)沿直線r-xcosθ-ysinθ=0實現積分,借此得到在隨機(r,θ)位置上,f(x,y)沿該直線的求和值P(r,θ)。Radon變換針對數字圖像的幾何轉換具有以下特質:
1)平移特質,可將平移過程描述為式(10),式中r0=x0cosθ+y0sinθ0。
R(r,θ){f(x-x0,y-y0)}=P(r-r0,θ)
(10)
2)旋轉特質,其中旋轉角度是φ
R(r,θ){f(xcosφ+ysinφ,-xcosφ+ysinφ)}
=P(r,θ+φ)
(11)
3)尺度變換特質,其中尺度變換元素是λ,且λ≠0

(12)
此外,當f(x,y)為持續變化的狀態時,每個點及每個方向噪聲的Radon變換為一個常量,且該常量與噪聲的平均值相同,均等于0,因此可以得到

(13)
這就表示零均值的加性噪聲對Radon變換后的數字圖像不會發生影響[9]。
利用極坐標代表二維函數g(r,θ)的解析Fourier-Mellin變換,將其表達成
(14)
其中,s=σ-iu,u是一個實數參變量,σ是一個不小于0的實常數,通常取值為0.5。對P(r,θ)采取Fourier-Mellin變換,可將式(14)轉換為
(15)
通過上式可知,利用Radon變換和Fourier-Mellin變換后,初始數字圖像f(x,y)的旋轉變換就轉變成一個相位元素,初始圖像的尺度變換就轉變成一個幅度元素[10]。
在本文方法中,要預先將數組圖像采取疊加分塊處理,將整張圖像根據范圍像素位移分割成多個疊加塊,塊大小的設定不能高于篡改塊。
如果圖像大小是M*N,疊加塊大小是R*R,那么分割的疊加塊數量可描述為
S=(M-R+1)*(N-R+1)
(16)
因此,可將式(15)表示成

(17)
根據不變函數Z(u,k)所提取的圖像,其旋轉變換和尺度變換的不變特性為

(18)

(19)

(20)

(21)
式中,μ表示函數Z(u,k)的平均值,M、N分別是Z(u,k)的行數和列數,這四個特性值可以檢測出數據圖像是否有旋轉、縮放等篡改動作。由此,可以對圖像內每個疊加塊的四個特性值進行提取,將提取獲得的三維特性矩陣描述
Bi,j(1:4)=[e1,e2,e3,e4]
(22)
復制粘貼篡改會使圖像內包含兩個相近塊,通過計算每個疊加塊提取的特性相近度,就能找出兩個相近塊在數字圖像的區域位置。本文使用歐氏距離來推算出每個特性矢量的相近度大小。歐氏距離的推導解析式為

(23)
利用式(24)更深層地計算相近度大小

(24)
將設定閾值T和式(24)的計算結果進行對比,在s>T的情況下,表明圖像內包含相近區域。
因為在數字圖像中擁有諸多平坦區域,在篡改盲檢測時極有可能發生虛警反應,所以判斷結果一方面要設置一個適當的閾值T,另一方面還要使用主轉移矢量算法去除錯誤塊。此外,針對數字圖像的劃分,分塊越大,檢測效率就越好,在相同閾值T的基礎上,誤檢的幾率也就越高;反之,如果分塊的劃分太小,檢測精度雖然較高,但降低了檢測效率,同時虛警反應概率也相對很高。經過多次驗證,本文將數字圖像篡改盲檢測的分塊大小確定為8×8。
通過上述過程,可以進一步明確圖像的真實性,并在大數據環境下對篡改區域的旋轉平移等篡改狀態進行精準檢測。
為了驗證本文所提基于大數據的圓對稱擴頻數字圖像篡改盲檢測方法的有效性,利用MATLAB平臺,在Windows 10操作系統,處理器為AMD Athlon(tm)II P360 Dual-Core Processor 2.30 GHz,內存為24G,測試圖像的幀率為30fps,分辨率為800*600的環境下進行仿真對比實驗。圖1為原始數字圖像。

圖1 原始數字圖像
圖像在進行合成類篡改時,篡改區域的大小、預想及初始圖像壓縮因子的差值都會對檢測方法的精度造成較大影響。篡改圖像如圖2所示。

圖2 篡改圖像及區域
本文在上述實驗環境下,將壓縮因子的取值范圍設定在0~100。將篡改區域面積占全部圖像面積的百分比作為權衡篡改比例的原則。
圖3為本文方法與文獻[3]方法、文獻[4]方法在不同篡改比例下不同壓縮因子差值的檢測精度。

圖3 篡改盲檢測精度對比結果
根據圖3中的數據可知,伴隨篡改比例的增多,文獻[3]方法和文獻[4]方法可以很清楚地看出權衡篡改區域及無篡改區域的不一致性,檢測精度也逐步上升,但篡改盲檢測精度最高只有13%和33%。而伴隨篡改比例的增多,本文方法的檢測精度呈現出先上升后下降的趨勢,最高篡改盲檢測精度為87%,這是因為本文方法是建構在圖像DCT系數的統計特征內的,若篡改區域很小,統計特征不會發生顯著變化,因此檢測精度下降。綜上所述,本文方法的篡改盲檢測精度優于文獻[3]方法和文獻[4]方法的篡改盲檢測精度。
為了進一步驗證本文方法的有效性,對本文方法、文獻[3]方法和文獻[4]方法的數字圖像篡改盲檢測時間進行對比分析,對比結果如圖4所示。

圖4 圖像篡改盲檢測時間對比
根據圖4可知,當迭代次數為5時,本文方法的數字圖像篡改盲檢測時間比文獻[3]方法和文獻[4]方法的數字圖像篡改盲檢測時間短,本文方法的數字圖像篡改盲檢測時間在142s內,而文獻[3]方法和文獻[4]方法的數字圖像篡改盲檢測時間均在160s內。說明本文方法的檢測耗時較少,檢測效率較高。
為了提升數字圖像篡改部分檢測精度及效率,本文提出一種基于大數據的圓對稱擴頻數字圖像篡改盲檢測方法。通過將特征標識嵌入數字圖像內,保護圖像數據安全,利用基于JPEG雙重壓縮效應的數字圖像篡改模型,檢測圖像完整度,對篡改位置實施精確定位;運用Radon變換及解析Fourier-Mellin變換明確圖像的真實度。通過仿真,驗證本文方法檢測精度及效率均優于傳統方法,具備較高的優越性。