張智豐,裴志利
(內蒙古民族大學 計算機科學與技術學院,內蒙古 通遼028000)
為了確保圖像信息的真實性[1-3],研究人員提出了相應的圖像偽造檢測算法。其中,以移動復制偽造檢測研究最為廣泛。MF HashmiI等[4]為了提高算法檢測精度,提出了DWT 耦合SIFT 變換的圖像偽造檢測算法,實驗結果顯示其算法具有良好的檢測精度。然而,SIFT 變換是提取圖像特殊點的關鍵點,難以有效檢測模糊、旋轉等篡改。為了克SIFT 變換的弊端,Amerini等[5]提出了基于J-Linkage算法的魯棒聚類均值的復制移動偽造檢測算法,仿真結果表明該算法的魯棒性得到了進一步地提高,但是,J-Linkage算法無法消除圖像特征的誤配現象。王任華等[6]利用RANSAC去除誤配區域,得到模型參數,精確定位偽造區域,仿真結果顯示其將RANSAC用于圖像偽造檢測,能夠有效降低特征誤配率,提高算法的檢測精度,但是,RANSAC策略仍然需要設置閾值,其檢測精度仍然受閾值的影響,且難以有效檢測縮放等偽造區域。
盡管當前圖像復制移動偽造檢測算法能夠對圖像進行真偽決策,可識別出偽造區域,但是此類算法都需要提前設置閾值參數,自適應較差,且難以兼顧高的檢測精度與魯棒性。
近年來,局部二值模式LBP (local binary patterns)[7]已被學者用于決策圖像真偽,能有效檢測旋轉、亮度變化等偽造區域,但是其檢測精度不佳,難以識別噪聲、縮放等偽造區域,且難以去除圖像特征誤配點對問題。文獻[6,7]為圖像偽造檢測提供了一個新思路。對此,本文引入模糊集理論,聯合傳統的LBP,設計了模糊二值模式算子,增強算子的識別能力,嵌入隨機樣本一致策略,消除圖像特征誤配,提出了隨機樣本一致策略耦合模糊二值模式算子的圖像偽造檢測算法。最后,在Matlab平臺上測試了本文算法的檢測精度與魯棒性能。
本文算法流程如圖1所示。從圖中可知,本文算法主要含有:①基于模糊局部二值模式算子的圖像特征提取;②設計新的塊匹配算法,完成特征匹配;③基于隨機樣本一致算法的特征誤配消除,精確檢測出偽造區域。

圖1 本文算法流程
假設圖像I的尺寸為M×N,將其分割成尺寸為B×B的重疊子塊b1,b2,…,bTB;且這些子塊的尺寸要小于待檢測的偽造區域的尺寸。依據如下模型確定重疊子塊的數量

再引入自適應Wiener 濾波[8],過濾這些重疊子塊

經過Wiener濾波處理后,能夠較好地保持圖像邊緣與圖像高頻成分;隨后設計模糊局部二值模式算子FLBP(fuzzy local binary pattern),提取圖像特征。
對于圖像中的每個像素,傳統的局部二值模式算子LBP只考慮一個3×3的窗口;并以矩形中心點的灰度值為閾值,對矩形內其它像素作二值化處理,然后根據像素的不同位置進行加權求和得到該窗口的LBP 值[9]。圖1顯示了傳統LBP算子的計算過程。給定中心像素,則LBP值可以通過與其領域像素的比較,來計算

其中,P 為領域像素數量;wp=2P為權重;hp=(dn-dc)代表局部中心像素與領域像素的灰度差值。
傳統LBP算子的計算如圖2所示。

圖2 傳統LBP算子的計算
為了改善LBP算子只能局限于方形的不足,Ojala等[9]對其進行拓展,通過不斷旋轉圓形鄰域得到一系列初始定義的LBP值,取其最小值作為該鄰域的LBP值,如圖3所示。LBP值計算模型為

式中:R——圓形半徑;ROR ——旋轉函數。

圖3 不用P與R 的圓形對稱領域
可見,不管是傳統的LBP算子,還是拓展后的LBP算子,其通過周邊像素的硬閾值,來提取特征,使其對噪聲、相差較小的像素非常敏感,在面對大范圍的相似區域時,LBP算子的識別能力較弱,難以去除圖像特征誤配點對問題。
故本文引入模糊邏輯,聯合模型 (1),設計了模糊二值模式算子,將局部領域分割成更多的二值模式,以增強算子的描述能力,使其能感知圖像灰度水平的不確定性,有效檢測噪聲。給定數字圖像,假設B 為區間[greference,gmax]內所有像素Px的模糊集合;S為區間[0,greference]內所有像素Px的模糊集合。其中,gmax為領域像素的最大灰度;greference為參考灰度。則B、S 模型為

其中,uB、uS分別為模糊集合B 、S 的隸屬度函數,代表著每個像素屬于閉區間[0,1]的程度;H ={0,1,2…n-1}為n個領域像素數量。
隸屬度函數uB、uS的定義如下

其中,A ∈[0,gmax]代表控制模糊度的參數;
可見,模糊局部二值模式算子可以用多個LBP 編碼表示,其結構如圖4所示。那么模糊LBP 算子的n個像素的領域可以用多個有序對 (LBP 編碼,CLBP值)來表示。其中,CLBP代表LBP編碼對其直方圖的貢獻度,根據隸屬度函數uB、uS,則CLBP計算模型如下

其中,k∈(0,n)代表參與LBP編碼計算的領域像素數量。
依據模型 (8),對于一個外圍像素,由于不同的貢獻值,會產生不同的LBP編碼。則對于一個含有n個像素的領域,對直方圖的總貢獻CTotal為

對于尺寸為M×N 的圖像,通過確定每個像素(i,j)的FLBP模式后,再計算整個圖像的FLBP 編碼的歸一化直方圖,以此作為特征矢量

以尺寸為128×128的圖像為例,分割成10×10大小的重疊塊,取3個貢獻值CLBP=0.2,0.5,1,則會產生3個FLBP 算子。對于第n 個圖像分塊,依據模糊LBP 算子,會產生3個特征矢 量V1,n,V2,n,V3,n;為 了 消 除 光 照 變換影響,引入歸一化技術[10],將特征矢量V1,n,V2,n,V3,n內的所有元素值置于區間[0,1]內,如圖5所示。

圖4 本文設計的模糊局部二值模式算子的計算

圖5 第n個子塊的模糊LBP算子特征提取
根據模型 (1)與FLBP算子可知,對于圖5中的輸入圖像,會產生14 161 個重疊塊,且每個分塊都會有3 個FLBP算子。因此,本文引入字典排序[11],對這些特征矢量進行排序;并定義3 個特征矩陣:FM1=Matrix(V1),FM2=Matrix(V2),FM3=Matrix(V3),這些矩陣的行與列分別代表分塊引擎與特征矢量。也就是通過特征提取,整個圖像可以用3個特征矩陣來表示。
假設相似塊產生相似特征,在k維空間內,對于一個由n個特征矢量構成的特征矩陣FM ,有FM =[V1,V2,…,Vn]T,Vi∈Rk,i=1,2…n。為了提高塊匹配效率與精度,并克服當前圖像偽造檢測的塊匹配需要預設閾值的難題,本文引入字典排序與K-d樹,定義識別多數規則,設計了新的塊匹配算法:
步驟1 給定輸入圖像,再次引入字典排序,對特征矩陣FM1,FM2,FM3進行處理。對于每個特征矩陣的特征矢量,確定出與其對應的歐式距離最小的匹配矢量。歐式距離計算模型為[12]

式中:Vi,Vj——相應矩陣中的特征矢量;n——特征矢量的維數。
對于輸入圖像的第n 個分塊,其在特征矩陣FM1,FM2,FM3中 的 特 征 矢 量 分 別 為V1,n(i1),V2,n(i2),V3,n(i3),i1,i2,i3代表FM1,FM2,FM3中行的位置,則第n個分塊的中心坐標為(xn,yn)。首先,確定特征矩陣FM1中的第n個分塊對應的相似塊。為了使用K-d樹搜索機制來提高搜 索 效 率[13],令FM1(i1)=V1,n(i1)。將V1,n(i1)視為一個model,以及特征矢量S 的集合視為一個參考Reference,即S =Reference。S的計算模型為

式中:m——圖像重疊塊的數量,對于圖5,m =1,2…,14161。
隨后,使用函數CV =K-d(model,reference),利用Reference 中的特征矢量建立K-d樹,并在model 中進行查詢,在參考Reference 中,搜索出與model中的特征矢量最近 的 矢 量CV(Close Vector),也 就 是Vi,Vj滿 足 模 型(14)。例如,對于特征矩陣FM1,每對匹配塊都會存入一個相應矩陣CM1中,包含14161行和2列。同樣地,對于FM2,FM3,也產生相應矩陣CM2,CM3。
步驟2 在每個相應矩陣CM1,CM2,…,CMn中,任何一個重疊塊都是與另外一個分塊進行匹配。為了鑒定出真實的復制移動偽造分塊,本文定義了識別多數規則:如果至少有兩個對應矩陣CMi,CMj(i≠j)產生了相同的結果,則這些重疊塊被視為偽造分塊。例如,對于圖5 中的第n個分塊,3個對應矩陣CM1,CM2,CM3分別為

在CM1,CM2,CM3中,第一個分塊 “n=1”分別與塊276、332以及301對應,由于在這些矩陣中,其對應的值都不相等,故第一個分塊為真實區域;第3個分塊 “n=3”分別與塊275、275 以及275 對應,在3 個矩陣中,CM1,CM2,CM3對應的值都相等,故第3、第275個分塊被視為復制移動分塊。
利用本文設計的塊匹配算法,處理所有的對應矩陣CM1,CM2,…,CMn,將結果存入相似塊矩陣中,檢測出真實的偽造分塊。以圖6 (b)為例,利用本文設計的塊匹配算法對偽造區域進行檢測,如圖6 (c)所示。從圖6中可知,雖然利用本文匹配算法能夠檢測出偽造目標,但是由于這些塊的紋理相似度很高,使得匹配結果存在很多的圖像特征誤配現象,如圖6 (c)所示。

圖6 重疊塊匹配結果
為了消除塊匹配期間存在的特征誤配,本文引入隨機樣本一致策略來解決。隨機樣本一致策略[14]是根據一組包含異常數據的樣本數據集,通過迭代,得到數據的數學模型參數,繼而產生有效樣本數據的非確定性的算法。該策略一般由兩個步驟構成:假設與驗證。從數據集中隨機擇取出用于確定模型參數所需的最少數量的樣本點。每個點的擇取概率相同,且僅使用這些點來計算假設模型的參數;在數據集中統計滿足假設模型參數的樣本的數量,最多樣本符合的參數就被當作成最終模型的參數值[6]。滿足假設模型所需的點被視為內點 (Inliers);反之,為外點 (Outliers)。隨機樣本一致策略的核心為:將數據分割成Inliers與Outliers;只利用Inliers來進行模型的參數的計算,通過迭代假設模型參數,提高算法精度,有效去除塊匹配算法中存在的特征誤配,獲取更魯棒的匹配結果。利用隨機樣本一致策略消除特征誤配的詳細算法步驟,見文獻 [6]。
為消除圖6 (c)中誤配,利用隨機樣本一致策略來鑒定相似塊矩陣中的匹配塊之間的內點Inliers并消除誤配Outliers。這些相似塊矩陣中的數據點經過了旋轉、縮放以及平移處理。即使出現較多誤配點對,隨機樣本一致策略仍然可以精確估算模型參數。給定兩個相應的匹配塊中心坐標(x,y)T和(x′,y′)T,則旋轉、縮放以及平移的函數形式為

利用隨機樣本一致策略對其進行處理圖6 (c),結果見圖6 (d)。從圖6 (d)中可知,經過隨機樣本一致策略處理后,顯著消除了圖6 (c)中的匹配點對的誤配現象,繼而有效提高了算法的檢測精度。
本文借助文獻 [15]中的數據集進行測試。仿真環境為:采用DELL,2.5GHz 雙核CPU,500GB 硬 盤,4GB的內存,運行條件為Windows Xp。為了體現本文算法的優越性能,采用當前移動復制偽造檢測性能的算法作為對照組:文獻 [6]的基于隨機樣本一致策略技術;文獻 [16]的基于LBP 技術,分別記為A、B 算法。取Space =1,重疊塊尺寸B×B =10×10,Nbest=50。
本文測試了4 種 偽 造 形 式:縮 放S (Sx=0.3,Sy=0.3)、旋轉R(φ=86°)、高斯噪聲N (5dWB)及3種組合 (縮放+旋轉+噪聲)SRN,分別如圖7 (b)、圖8(b)、圖9 (b)以及圖10 (b)所示。利用本文算法與對照組對其進行檢測,結果如圖7~圖10 所示。從圖中可知,對于這4種偽造形式,本文算法的視覺檢測質量最好,即使在3種組合SRN 偽造形式下,仍然能夠精確檢測出篡改區域,具有更強的魯棒性能,并顯著降低了誤匹配點對數量,如圖7 (c)~圖10 (c)所示;而對照組算法的魯棒性不佳,A 算法對旋轉、噪聲具有較強的魯棒性,但是難以檢測縮放、組合偽造SRN 等處理,如圖7 (e)、圖10 (e)所示;B算法能夠較好地檢測旋轉、縮放等偽造,但是難以檢測噪聲、組合偽造SRN 等形式的篡改,且存在明顯的特征點對誤配,如圖9 (d)、圖10 (d)所示。
根據圖7的測試結果,由于A、B算法在SRN 組合偽造形式下,無法檢測出偽造區域。故為了節省實驗成本,本文只測試不同的縮放S、旋轉R 以及高斯噪聲N 等3種篡改方式下的檢測結果。本文使用召回率 (Recall)和精度 (Precise)準則[17]來量化這些算法的檢測性能
式中:TP——篡改區域被正確檢測的像素數量;FP——誤判為篡改的像素數量;FN——篡改像素漏檢的像素數量。

圖7 縮放偽造下,不同算法的檢測結果

圖8 旋轉偽造下,不同算法的檢測結果

圖9 噪聲偽造下,不同算法的檢測結果

圖10 3種組合SRN 偽造下,不同算法的檢測結果
利用3種算法測試縮放S、旋轉R、高斯噪聲N 以及3種組合 (縮放+旋轉+噪聲)SRN 下的Recall 與Precise,結果如圖11所示。從圖11中可知,對于任意角度的旋轉操作,本文算法的Recall與Precise 始終保持較高水平,其召回率Recall以及精度Precise 均維持90%以上,而A、B算法隨著旋轉角度的增大,其Recall 與Precise 都在下降,如圖11 (c)、圖11 (d)所示;隨著縮放尺度增大,3種算法的Recall與Precise 都在下降,但是本文算法的下降幅度很小,而A 算法在縮放因子不超過1.3時,也具有較高的檢測精度,但是超過1.3 時,其檢測效果較差,另外,B算法難以檢測縮放篡改,其檢測精度很低,如圖11 (a)、圖11 (b)所示;在任意高斯噪聲下,只有本文算法能夠精確檢測出偽造像素,當噪聲功率超過5dWB 時,A、B 算法的Recall與Precise 均為0,如圖11 (e)、圖11 (f)所示。原因是本文算法設計了模糊LBP 算子,利用模糊閾值提取特征,避免了硬閾值參數對算法精度的影響,且定義了識別多數規則完成塊匹配,利用隨機樣本一致策略消除特征點對誤配,本文算法充分結合了LBP算子與隨機樣本一致策略的優勢,繼而使得算法的檢測精度較高;而A 算法是利用傳統的LBP 算子,通過硬閾值參數進行特征提取,使其算法精度嚴重依賴于硬閾值的擇取,且存在較多的特征點對誤配,導致其檢測精度不佳;B 算法雖然利用了隨機樣本一致策略,但是該技術仍然需要硬閾值來提取特征,使其精度受限。
為了提高偽造檢測算法的魯棒性,有效檢測旋轉、縮放以及噪聲等形式的篡改,并使得算法精度不受閾值參數的影響,本文提出了隨機樣本一致策略耦合局部二值模式算子的圖像偽造檢測算法。基于局部二值模式,引入模糊邏輯,設計了模糊二值模式算子,增強算子的識別能力,提取圖像特征;嵌入K-d樹與字典排序法,定義識別多數規則,設計高效塊匹配算法,精確檢測偽造區域分塊;利用隨機樣本一致策略,確定幾何變換參數,并消除圖像分塊誤配現象,顯著提高算法精度。仿真結果顯示本文算法具有更高的檢測測精度以及更強的魯棒性。

圖11 不同算法的偽造檢測精度測試結果
[1]GK Birajdar,VH Mankar.Digital image forgery detection using passive techniques:A survey [J].Digital Investigation,2013,10 (3):226-245.
[2]KANG Xiaobing,WEI Shengmin.Adaptive threshold-based detection algorithm for image copy-forgery [J].Computer Science,2011,38 (3):295-299 (in Chinese). [康曉兵,魏生民.一種基于自適應閾值的圖像偽造檢測算法 [J].計算機科學,2011,38 (3):295-299.]
[3]Ansari MD,Ghrera SP,Tyagi V.pixel-based image forgery detection:A review [J].IETE Journal of Education,2014,55 (1):40-46.
[4]Hashmi MF,Hambarde AR.Copy move forgery detection using DWT and SIFT features[J].Intelligent Systems Design and Applications,2013,34 (10):188-193.
[5]Irene Amerini,Lamberto Ballan.Copy-move forgery detection and localization by means of robust clustering with J-Linkage[J].Signal Processing:Image Communication,2013,28(6):659-669.
[6]WANG Renhua,HUO Hongtao,JIANG Min.Application research of RANSAC algorithm on copy-move forgery detection[J].Journal of Computer Application,2014,31 (7):2209-2212 (in Chinese).[王任華,霍宏濤,蔣敏.RANSAC算法在同圖復制鑒定中的應用研究 [J].計算機應用研究,2014,31 (7):2209-2212.]
[7]OU Hongyu,CHEN Xi,SONG Yanhui.Detection of image duplication forgery based on local binary pattern [J].Computer Application and Software,2013,30 (9):170-173 (in Chinese).[歐紅玉,陳曦,宋燕輝.基于LBP的圖像復制篡改檢測 [J].計算機應用與軟件,2013,30 (9):170-173.]
[8]LIU Zhe,CHEN Lu,YANG Jing.An image reconstruction algorithm using patch-based locally optimal wiener filter [J].Journal of Electronic & Information Technology,2014,36(11):2556-2562 (in Chinese).[劉哲,陳路,楊靜.一種基于塊局部最優維納濾波的圖像重構算法 [J].電子與信息學報,2014,36 (11):2556-2562.]
[9]Zhou SR,Yin JP,Zhang JM.Local binary pattern (LBP)and local phase quantization(LBQ)based on Gabor filter for face representation [J]. Neurocomputing,2014,116 (20):260-264.
[10]Yerushalmy I,Hel-Or H.Digital image forgery detection based on lens and sensor aberration [J].International Journal of Computer Vision,2011,92 (1):71-77.
[11]Zimba M,Xingming S.DWT-PCA (EVD)based copy-move image forgery detection[J].International Journal of Digital Content Technology and its Applications,2011,5 (1):251-258.
[12]OU Jiajia,CAI Biye,XIONG Bing,et al.Detection of image region duplication forgery based on LBP [J].Computer Engineering,2012,38 (16):226-229 (in Chinese). [歐佳佳,蔡碧野,熊兵,等.基于LBP 的圖像區域復制篡改檢測[J].計算機工程,2012,38 (16):226-229.]
[13]Duch A,Jiménez RM,Martínez C.Selection by rank in Kdimensional binary search trees [J].Random Structures &Algorithms,2012,45 (1):14-37.
[14]Misra I,Moorthi SM,Dhar D.An automatic satellite image registration technique based on Harris corner detection and random sample consensus(RANSAC)outlier rejection model[J].Recent Advances in Informatio,2012,15 (7):68-73.
[15]Muhammad G,Hussain M,Bebis G.Passive copy move image forgery detection using undecimated dyadic wavelet transform [J].Digital Investigation,2012,9 (1):49-57.
[16]Li L,Li S,Zhu H,et al.An efficient scheme for detecting copy-move forged images by local binary patterns[J].Journal of Information Hiding and Multimedia Signal Processing,2013,4 (1):46-56.
[17]Ryu SJ,Lee MJ,Lee HK.Detection of copy-rotate-move forgery using zernike moments [J].Information Hiding,2010,12 (5):51-65.