魏偉一,王立召,王婉茹,趙毅凡
(西北師范大學計算機科學與工程學院,甘肅 蘭州 730070)
隨著現(xiàn)代信息技術的迅速發(fā)展,快捷簡便的圖像處理方式使得圖像篡改變得輕而易舉,因此圖像篡改檢測具有十分重要的意義。在目前的取證技術中,主動取證技術具有更廣泛的應用,也是目前圖像取證研究的主要方向[1]。復制粘貼篡改是目前最常用的數(shù)字圖像篡改手段之一[2],其方法是將圖像的某個區(qū)域復制之后粘貼到同幅圖像的另一個區(qū)域,達到增加目標或隱藏目標的目的。目前,復制粘貼篡改檢測CMFD(Copy-Move Forgery Detection)分為基于塊的方法和基于關鍵點的方法。
基于塊的方法通常是將圖像劃分為交疊的規(guī)則塊,然后匹配圖像塊的特征,定位篡改區(qū)域[3]。文獻[4]將圖像劃分為交疊矩形塊,并在矩形塊內(nèi)提取圖像的DCT(Discrete Cosine Transform)系數(shù)作為矩形塊的特征向量進行匹配,具有較高的檢測精度。Lee等人[5,6]提出使用梯度直方圖作為圖像塊的特征描述符進行篡改檢測。Wang等人[7]將圖像劃分為圓形塊,并使用四元數(shù)指數(shù)矩的模作為特征向量進行篡改檢測,該方法對旋轉(zhuǎn)和縮放具有一定的魯棒性。秦娟等人[8]提出一種基于圓諧-傅里葉矩的篡改檢測算法,提取每個塊的圓諧-傅里葉矩作為塊的特征定位篡改區(qū)域,該算法能有效抵抗噪聲、高斯模糊和旋轉(zhuǎn)等操作,且與基于Hu矩的方法相比具有更好的檢測效果。Zhao等人[9]針對劃分交疊塊時間復雜度高的缺陷,提出基于DCT-SVD的CMFD方法,使用量化的DCT系數(shù)矩陣獲得更穩(wěn)健的圖像特征,并通過SVD降低每個塊的特征維度,有效降低了算法時間復雜度。Yang等人[10]提出一種基于多粒度超像素的CMFD算法,將超像素與特征點結(jié)合檢測偽造區(qū)域,該算法對于噪聲、JPEG壓縮和幾何形變有較高的魯棒性,且有效提高了檢測效率。綜上所述,對圖像進行區(qū)域劃分主要有劃分矩形塊、劃分圓形塊、劃分超像素幾種方法,前2種方法劃分的大量交疊塊使得后續(xù)特征提取和匹配時間復雜度較高,基于矩形塊的方法對幾何變換的魯棒性較低,而超像素劃分的方法能夠有效提高檢測效率。
Figure 1 Flowchart of algorithm
基于關鍵點的方法通常需要選擇穩(wěn)定的關鍵點,并計算關鍵點特征描述符進行匹配,定位篡改區(qū)域?;陉P鍵點的方法時間復雜度較低,且抵抗幾何變換的魯棒性較高。文獻[11]提出了一種基于加速魯棒特征SURF(Spedup Up Robust Features)算法的復制粘貼篡改檢測方法,相比基于尺度不變特征SIFT(Scale-Invariant Feature Transform)算法的檢測,檢測效率有所提高。針對傳統(tǒng)方法中效率低和精度不高的問題,獨智序等人[12]提出一種基于穩(wěn)健關鍵點的CMFD算法,將離散小波變換高斯隨機矩陣應用于SIFT特征向量,降低了特征維度。文獻[13]提出使用SIFT、不變矩和區(qū)域增長的方法,能有效地檢測偽造區(qū)域。文獻[14]提出了一種結(jié)合局部強度順序模式與SIFT特征點的復制粘貼篡改檢測算法,該算法使用g2NN匹配關鍵點,并利用新的關鍵點描述模型與基于密度網(wǎng)格的過濾策略去除冗余匹配關鍵點對,該算法在圖像經(jīng)過旋轉(zhuǎn)、縮放等處理而變形的情況,具有一定的魯棒性?;陉P鍵點的方法通常有基于SIFT、基于SURF、基于ORB(Oriented fast and Rotated Brief)以及在此基礎上的改進算法,這些算法在一定程度上能夠表現(xiàn)出良好的檢測效果,但是對于紋理復雜程度較高的圖像,難以檢測到準確的關鍵點。
近幾年來隨著人工智能的快速發(fā)展,出現(xiàn)了基于深度學習的方法。文獻[15]提出一種基于深度神經(jīng)架構BusterNet的CMFD方法,該方法具有2個分支架構,并帶有融合模塊,通過視覺相似性來定位偽造區(qū)域。但是,該算法僅僅依靠DNN(Deep Neural Networks)的結(jié)構,對于未經(jīng)訓練的篡改圖像效果不理想。文獻[16]提出了一種端到端的Dense-InceptionNet方法進行篡改檢測,該方法分為金字塔特征提取、特征相關匹配和分層后處理3個步驟,表現(xiàn)出良好的檢測性能。這些基于深度學習的圖像篡改檢測算法基本上都源于數(shù)字圖像的成像過程留下的模式噪聲,而且鑒定圖像復制-粘貼的算法相對較少。
本文針對超像素分割結(jié)果受分割數(shù)目的影響和特征點提取忽略了顏色信息的問題,提出一種新穎的超像素自適應劃分和超像素形狀編碼方法,并在顏色不變量模型中得到穩(wěn)定的特征點,增強了超像素描述的魯棒性,實現(xiàn)了有效抵抗幾何不變性的圖像復制粘貼篡改檢測。
基于超像素形狀特征的CMFD算法過程如圖1所示。首先分割超像素,提取穩(wěn)定的特征點;其次,根據(jù)超像素不同方向邊界像素到中心像素的距離差異構建新的形狀編碼方案提取超像素形狀特征,將超像素形狀特征編碼與特征點融合并匹配;最后對匹配的超像素二次分割與匹配,經(jīng)過后處理獲得最終的檢測區(qū)域。
超像素是顏色、紋理相似度較高的像素組成的小區(qū)域。常見的超像素分割方法有簡單線性迭代聚類SLIC(Simple Linear Iterative Clustering)和熵率超像素分割ERS(Entropy Rate Superpixel)。Liu等人[17]于2001年提出熵率超像素分割ERS,該方法將圖像映射成無向圖,將圖像的分割轉(zhuǎn)換為對圖的分割。ERS既完整地保留了圖像邊界信息,也有效提高了檢測效率。如圖2所示,SLIC分割的超像素塊大小較均勻,而ERS對邊界的處理效果較好,由于超像素形狀特征編碼依賴于超像素塊的邊界信息,因此ERS更適合本文所提出的復制粘貼篡改檢測算法。
Figure 2 Comparison of SLIC segmentation images and ERS segmentation images
Figure 3 Adaptive superpixel segmentation images
目前,大多數(shù)超像素分割算法對于超像素分割的數(shù)目都需要預先設定一個固定值,若劃分的數(shù)目太小,會降低檢測精度,若劃分數(shù)目過大,會增加時間復雜度。由于圖像的小波對比度同時考慮了圖像內(nèi)的低頻分量和高頻分量,能較好地反映圖像內(nèi)各個對象視覺上的差異[18],因此本文通過研究小波對比度與圖像紋理復雜程度的關系,對超像素劃分數(shù)目進行自適應確定。首先對圖像進行4級小波變換,然后提取變換后的低頻分量和高頻分量并計算圖像小波對角對比度P,如式(1)所示:
(1)
(2)
近年來,許多研究者提出了很多圖像特征點檢測算法應用于圖像視覺領域,例如Harris角點檢測[19]、SIFT[20]、抗錯性尺度不變特征SIFER(Scale-Invariant Feature detector with Error Resilience)[21]和SURF[22]等。但是,這些算法大多忽視了圖像的顏色信息,難以有效檢測穩(wěn)定的特征點。因此,本文采用基于顏色不變量的SURF算法提取魯棒的特征點[23]。SURF算法和基于顏色不變量的SURF算法檢測結(jié)果分別如圖4和圖5所示。
Figure 4 Detection results of SURF algorithm
Figure 5 Detection results of SURF algorithm based on color invariant
基于顏色不變量的SURF算法主要步驟如下所示:
(1)計算圖像顏色不變量矩陣:在顏色不變量模型[24]中,通過以下方式對光反射率進行建模:
(3)
其中,x表示圖像位置,λ表示波長,E′=e(λ,x)表示光譜強度,ρf(x)表示位置x處的反射系數(shù),R∞(λ,x)表示物體的反射率,繼而可由式(4)求得顏色不變量H。
f(R∞(λ,x))
(4)
根據(jù)高斯色彩模型,E、Eλ、Eλλ與彩色圖像R、G、B3個分量有近似的關系,如式(5)所示:
(5)
由此可得到RGB圖像的顏色不變量H,顏色不變量圖如圖6和圖7所示。
Figure 6 Original image
Figure 7 Color invariant image
(2)使用顏色不變量計算Hessian矩陣。
(3)使用新的Hessian矩陣提取穩(wěn)定的特征點并計算新的64維特征描述符:
(6)
其中,(x,y)為特征點坐標;n為特征向量的維數(shù),n=64。
本文所提算法使用一種新穎的形狀特征編碼方式提取超像素形狀特征應用于CMFD,以提高檢測效率和精度,增強幾何變換的魯棒性。
2.3.1 超像素形狀特征
文獻[25]將每個超像素均勻量化為16個區(qū)域,每個方向間隔為22.5°,將中心像素和每個方向間隔的所有邊界像素的距離之和定義為定向中心邊界距離OCBD(Orientated Center-Boundary Distance)特征向量中的一維,OCBD特征向量的第i維由式(7)計算得到:
(7)
2.3.2 超像素形狀編碼
文獻[25]只是將方向間隔內(nèi)邊界像素和中心像素的距離簡單求和獲得16維OCBD特征向量,對于旋轉(zhuǎn)或縮放等幾何變換不具有魯棒性,計算量較大。因此,本文提出了有效抵抗幾何變換的超像素形狀編碼方式,即以超像素的質(zhì)心為中心像素,利用超像素16個方向的邊界像素到中心像素的距離與這些距離的均值的大小關系進行編碼,并使其超像素的形狀編碼方式具有旋轉(zhuǎn)不變性,這種編碼方式的計算量大大減少,如圖8所示。
Figure 8 Graphical display of superpixel segmentation,center pixels,boundary pixels,and their average distances
具體的編碼過程如下所示:
(1)超像素均勻量化為16個方向,間隔為22.5°。
(2)計算第i個方向間隔內(nèi)邊界像素到中心像素的距離均值,作為該方向邊界像素到中心像素的距離ri,如式(8)所示:
(8)
(3)計算16個方向邊界像素到中心像素距離的平均值r,將每個方向邊界像素到中心像素的距離ri與r比較,若ri>r,則該方向邊界像素到中心像素的距離編碼為1,否則,記為0。第i個方向的形狀特征值為一個0和1組成的編碼值,如式(9)所示:
(9)
(4)為了進一步提高形狀編碼的旋轉(zhuǎn)不變性,以16個邊界像素的不同位置為起點,順時針旋轉(zhuǎn)編碼得到二進制數(shù),然后轉(zhuǎn)換為十進制整數(shù),得到16個十進制形狀編碼,取最小值作為該超像素的形狀特征,如式(10)所示:
(10)
當超像素包含的像素數(shù)目過少時,會因為微小的像素級差異導致檢測結(jié)果不準確。但是,利用基于熵率的超像素自適應劃分后,一般劃分的區(qū)域較大,因此個別區(qū)域較小的超像素對最終的檢測結(jié)果影響甚微。
在提取圖像SURF特征點和超像素形狀編碼之后,將SURF特征點與超像素形狀編碼融合,提高CMFD算法的精度;然后使用精確歐氏局部敏感哈希E2LSH(Exact Euclidean Locality Sensitive Hashing)[10]進行特征點匹配,由此可得每2個超像素之間匹配特征點的個數(shù);通過2個超像素之間特征點匹配的數(shù)目可以粗略估計可疑篡改區(qū)域。
2.4.1 特征融合
將超像素內(nèi)所有SURF特征點描述符與超像素形狀編碼融合,得到新的64維SURF特征點描述符,如式(11)所示:
(11)
2.4.2 超像素特征匹配
(1)用E2LSH進行特征點相似性度量:由于空間中距離相近的2個點原本就有較高的相似性,因此要求匹配的2個關鍵點的距離滿足以下條件:
‖(x1,y1)-(x2,y2)‖>T_N
(12)
其中T_N為距離閾值。
(2)在完成了特征點匹配之后,可以求得任意2個超像素中特征點匹配的數(shù)目。將所有超像素之間匹配特征點的數(shù)目進行排序,得到一個升序的數(shù)目集,然后對數(shù)目集求一階導數(shù)和二階導數(shù),超像素匹配閾值T1可由式(13)得到:
(13)
在得到可疑篡改區(qū)域后,要精確定位篡改區(qū)域。將超像素進行更小尺寸的超像素分割,方法與初次分割超像素類似。對超像素的初次匹配可得可疑超像素中匹配的特征點對,用二次劃分的超像素代替匹配的特征點,將得到匹配的更小的超像素對。具體過程如下所示:
(1)定位匹配的超像素中的關鍵點對,P={(p1,q1),(p2,q2),…,(pi,qi),…,(pk,qk)},其中,(pi,qi)表示匹配的特征點對,k表示匹配的特征點總數(shù)。
(2)將超像素繼續(xù)分割為更小的超像素,方法與之前類似,用分割后的更小的超像素代替之前匹配的關鍵點對,最終得到匹配的更小的超像素對:
S={(sp1,sq1),(sp2,sq2),…,
(spi,sqi),…,(sps*,sqs*)}
(14)
其中,(spi,sqi)表示匹配的超像素對,i=1,2,…,s*,s*表示匹配的超像素對的總數(shù)。
由于在篡改檢測時會丟失篡改區(qū)域的超像素,這會降低CMFD的精度和召回率。篡改區(qū)域通常是一個連續(xù)較大的區(qū)域,通過提取可疑偽造區(qū)域超像素及其相鄰像素的局部特征,將具有相似局部特征的相鄰超像素合并為一個區(qū)域,可提高CMFD的檢測精度,具體方法如下所示:
(1)對于每一個超像素對及其8個鄰域的超像素,計算其顏色均值。
(2)當鄰域超像素的平均顏色值與當前超像素的平均顏色值滿足式(15),則將其合并到當前超像素:
(15)
其中,G(·)為超像素的顏色均值,θ表示鄰域超像素的方向,T_G是顏色均值相似度的閾值。
(3)最后經(jīng)過形態(tài)學操作填充并平滑邊界,得到完整的CMFD結(jié)果。
本節(jié)通過實驗驗證所提算法的性能,運行環(huán)境為Intel(R)Core(TM)i7-8550U處理器,內(nèi)存 8 GB,軟件為Matlab R2016b。
本文使用3個公共數(shù)據(jù)集進行實驗。第1個是Christlein等人[26]提出的數(shù)據(jù)集,簡稱FAU。FAU包括48幅原始圖像和87幅篡改圖像,這87幅篡改圖像就是復制同一幅圖像中的區(qū)域粘貼到原圖中的圖像。原圖的平均尺寸約為3000×2300,復制每個圖像約10%的區(qū)域?qū)D像進行復制粘貼篡改。第2個數(shù)據(jù)集是Cozzolino等人[27]提出的,稱為GRIP。此數(shù)據(jù)集包含80幅原始圖像和80幅復制粘貼篡改圖像。圖像的尺寸均為768×1024,其復制區(qū)域約為圖像的1%。第3個數(shù)據(jù)集是CoMoFoD數(shù)據(jù)集[28],包含200幅基礎圖像和4 800幅不同類型攻擊的篡改圖像,平均圖像尺寸為512×512。
除了在普通情況下測試本文算法,本節(jié)還在圖像受到各種攻擊時進行測試。在受到攻擊的情況下,由原始圖像生成篡改圖像時,會通過各種手段處理復制粘貼區(qū)域,例如JPEG壓縮、高斯白噪聲和幾何形變(例如縮放和旋轉(zhuǎn))。
為了綜合評價所提算法的性能,在圖像級別定義了評價指標F值,如式(16)所示:
(16)
其中,Tp表示檢測到的篡改圖像數(shù)目,Tn表示未被檢測到的篡改圖像數(shù)目,Tw表示檢測錯誤的篡改圖像數(shù)目。在像素級別,類似地,Tp表示圖像中篡改的像素數(shù)目,Tn表示圖像中未被檢測到的像素數(shù)目,Tw表示圖像中檢測錯誤的像素數(shù)目。
從實驗的角度來講,參數(shù)的選擇對于最后的結(jié)果有至關重要的影響。需要設置的參數(shù)有關鍵點空間距離T_D、顏色均值相似度T_G,分別由實驗確定。從數(shù)據(jù)集FAU和GRIP中隨機選取40幅圖像,使用幾何變換等處理操作得到200幅篡改圖像,對200幅篡改圖像使用不同的參數(shù)實驗,通過實驗結(jié)果評價不同參數(shù)值對實驗結(jié)果的影響。
(1)在特征點匹配時,搜索到的特征點對中,2個空間距離相近的特征點也可能被搜索到,因此本文對特征點對的空間距離使用閾值T_D進行約束,而選取的T_D過小或過大都會影響算法的性能。本文使用不同的距離閾值T_D測試算法性能,結(jié)果如圖9所示。通過實驗得出T_D設置為0.5時,算法性能最優(yōu)。
Figure 9 Spatial distance threshold selection
(2)為減少錯誤匹配,在后處理的操作中,本文引入了顏色均值特征,在比較當前超像素與鄰域超像素的顏色均值相似度時,使用T_G作為特征相似度閾值。本文通過實驗測試不同的T_G對實驗結(jié)果的影響,如圖10所示。通過實驗得出,T_G=13時算法有更好的表現(xiàn)。
Figure 10 Color similarity threshold selection
Figure 11 Comparison of algorithms
將本文所提算法與文獻[10,26]算法在FAU和GRIP數(shù)據(jù)集上進行實驗,部分實驗結(jié)果如圖11所示。
對FAU和GRIP數(shù)據(jù)集中的圖像進行旋轉(zhuǎn)、高斯白噪聲和JPEG壓縮處理,使用不同的算法進行測試,部分結(jié)果如圖12~圖14所示,在理想情況下,各種算法的F值和運行時間比較如表1所示。
Figure 12 Result of rotatig angle test
Figure 13 Result of increasing the Gaussian white noise test
Figure 14 Result of JPEG compression test
Table 1 Comparison of F-measure and CPU running time among the proposed algorithm and other algorithms
通過2個數(shù)據(jù)集上的測試結(jié)果可以看出,本文所提算法能夠較快、精確地檢測出偽造區(qū)域,同時在對抗JPEG壓縮、高斯白噪聲和幾何形變等方面均表現(xiàn)出了良好的性能,且有效降低了算法的時間復雜度。
現(xiàn)有的最新算法在GRIP數(shù)據(jù)集和FAU數(shù)據(jù)集上檢測效果較好,但在CoMoFoD數(shù)據(jù)集上檢測效果不夠理想,為了驗證本文算法的有效性,在CoMoFoD數(shù)據(jù)集上進行測試,部分結(jié)果如圖15所示。依據(jù)此數(shù)據(jù)集的高斯白噪聲和JPEG標準,將本文所提算法與文獻[10,26]算法在CoMoFoD數(shù)據(jù)集上進行對比測試,測試結(jié)果分別如圖16和圖17所示。從圖17中可以看出,雖然在CoMoFoD數(shù)據(jù)集上表現(xiàn)不佳,但是相比較文獻[10,26]的算法,本文所提算法在JPEG壓縮和高斯白噪聲的攻擊下更具優(yōu)勢。
Figure 15 Result on CoMoFoD dataset
Figure 16 Result of increasing the Gaussian white noise test on CoMOFoD
Figure 17 Result of JPEG compression test on CoMOFoD
針對傳統(tǒng)CMFD算法時間復雜度高以及幾何不變性脆弱的問題,本文提出了一種基于超像素形狀特征的圖像復制粘貼篡改檢測算法,該算法采用一種新型的超像素形狀特征編碼方法并結(jié)合特征點進行篡改檢測。在不同數(shù)據(jù)集上的多種實驗表明,所提算法在精度和時間復雜度上都表現(xiàn)出了良好的性能。在對篡改圖像進行諸如JPEG壓縮、高斯白噪聲和幾何形變等處理的情況下,所提算法也具有較強的魯棒性。但是,對于過于復雜的組合篡改攻擊,該算法性能有所降低,因此未來的工作將針對組合篡改攻擊研究更加有效的方法。