張 震,蘇白娜,喻 宙
(鄭州大學電氣工程學院,河南鄭州450001)
區(qū)域拷貝篡改是圖像篡改的常用手段之一,因此,對于該篡改的檢測已成為圖像真實性取證的研究熱點[1].筆者研究的對象即為區(qū)域拷貝篡改,其檢測方法主要是依賴于圖像子塊的特征.文獻[2]研究了這種篡改方法并利用塊特征向量的字典排序提取篡改區(qū)域;文獻[3-4]利用PCA變換減少塊特征向量的維數(shù)以減少計算量,但是,圖像子塊在幾何變換下不具有不變性.因此,對于有幾何變換的拷貝篡改手段,以上算法失效.
基于David G.Lowe提出的SIFT(Scale Invariant Feature Transform)特征點對于圖像的尺度和旋轉保持不變性[5],以及對于光照和3D視角的變化也能保持一定的穩(wěn)定性,筆者結合LPP(Locality Preserving Projection)降維方法,為 SIFT特征點生成低維且有效的特征描述子.通過對描述子進行匹配,進而提出一種新的檢測算法,即基于LPP-SIFT(Locality Preserving Projection-Scale Invariant Feature Transform)的檢測算法.實驗表明,該算法能夠有效地檢測出拷貝篡改圖像,定位出拷貝源與篡改區(qū)域,且算法對于篡改區(qū)域的旋轉、縮放具有不變性,對于噪聲添加、JPEG壓縮等操作具有較好的魯棒性.
區(qū)域拷貝粘貼篡改是數(shù)字圖像篡改的一個常用手段,它是為了覆蓋圖像中的部分內容而拷貝同幅圖像中的某一區(qū)域并粘貼到另一不重疊的區(qū)域.這類篡改手段之所以應用廣泛,是因為在同一幅圖像中進行拷貝粘貼操作并不會導致圖像的亮度、色彩等發(fā)生明顯的變化,一般視覺上是無法察覺到的.
由于大多數(shù)檢測算法對于區(qū)域塊的旋轉和縮放沒有魯棒性,所以一般參考文獻中研究的模型只包含區(qū)域塊的位移.而筆者研究的模型不僅包含了區(qū)域間的位移,還包含篡改區(qū)域的尺度變換以及旋轉.
圖像的特征點是其局部特征,在自然圖像中不會存在相同的特征點[2].因此,如果我們在一幅圖像中檢測到了大量互相匹配的特征點,可以判定該圖像不是自然圖像,而是通過區(qū)域拷貝篡改得到的偽造圖像.根據(jù)匹配點對所聚集的區(qū)域,可以定位出拷貝源與篡改區(qū)域.
筆者采用SIFT算法提取圖像特征點.SIFT的全稱是尺度不變特征變換,該變換可以將圖像信息用相應的局部特征量來表示,旨在描述圖像的局部特征,且對圖像縮放、旋轉甚至仿射變換都保持不變性.
SIFT算法包含四個步驟:尺度空間極值的檢測、特征點位置的確定、特征點方向信息的確定、特征點描述子的生成[5].在筆者提出的算法中,只用SIFT的前三個步驟來提取圖像中的特征點,然后采用LPP降維算法為SIFT特征點生成低維的特征描述子.
雖然SIFT算法魯棒性強,但由于描述器的維數(shù)太大,導致了匹配速度慢.因此,筆者采用LPP降維算法為特征點生成低維有效的特征描述器.
LPP算法相對于其他降維算法能夠更好地保持數(shù)據(jù)集間的關系,以PCA(Principal Components Analysis)算法[6]與LPP對比為例,圖1給出了兩者降維效果的對比(以5維的數(shù)據(jù)樣本集映射到2維空間為例).
圖1 PCA和LPP對高維數(shù)據(jù)的映射效果對比Fig.1 Comparison result of PCA and LPP to map high-dimensional data
LPP是拉普拉斯特征映射算法的一種線性近似,該算法主要是通過求解變換矩陣對原始特征向量進行映射[7],映射公式為:
式中:fi為原始的特征向量;f'i為降維后的特征向量.
本文算法中共選擇了12幅圖像來生成變換矩陣.首先,利用SIFT算法前三步生成了4 000個特征點;其次,在特征點周圍提取37×37區(qū)域,計算每個像素的水平和垂直的梯度方向,生成一個高維向量,把它作為特征矩陣的一列;最后采用LPP算法求出變換矩陣.
對于待檢測圖像,同樣利用SIFT算法前三步生成特征點.以特征點為中心,選取37×37的區(qū)域,計算每個像素的水平和垂直的梯度方向,于是每個特征點生成一個2×35×35=2 450維的梯度向量,用fi表示.依據(jù)上述求出的變換矩陣A及公式(1)把梯度向量映射到低維的流形中,映射后的向量f'i作為特征點的描述器,本文實驗中映射后向量維數(shù)為20.
最常見的特征點匹配方法是依據(jù)特征點描述子間的歐氏距離,但在Matlab中,計算向量間的點乘(內積)要比計算它們的歐式距離更有效.因此,本文實驗中把向量角度比率的大小作為特征點匹配的判別準則,對滿足最近鄰域點和次近鄰域點的向量角度比率小于設定值R的特征點進行匹配,得到匹配對.實驗中可以改變參數(shù)R的大小以獲取最佳匹配結果.
利用LPP-SIFT描述子找出匹配對需要兩個特征向量集,所以對于一幅待檢測圖像,需要對生成的特征向量集進行劃分,然后進行匹配運算,具體的步驟如下:
(1)設特征向量集包含M個特征點,如果M=1,則停止匹配;否則,在特征向量集中隨機選取M/2個特征向量,定義為子集S1,余下的M/2個定義為子集S2;
(2)對S1和S2按照上述匹配準則進行匹配,對匹配的特征點對做出記號(本文中是用直線將其連接);
(3)對特征向量子集S1,遞歸執(zhí)行上兩步;對特征向量子集S2,也遞歸執(zhí)行上兩步;
(4)根據(jù)上述匹配,得到所有的匹配點對.
本文實驗中,對于待檢測圖像中存在的匹配點對,用直線段將其標記出來.因此,如果標記的線段明顯集中于某兩個區(qū)域之間,則可以判定該圖像被拷貝粘貼篡改過,匹配點對集中的兩個區(qū)域,即為拷貝粘貼區(qū)域.
本文所有實驗都是在Matlab2008中實現(xiàn)的,實驗所選的圖像部分是來自于網(wǎng)絡,另一部分是由作者自己拍攝的.本文算法對拷貝粘貼篡改圖像的檢測結果如下:
(1)對經歷了尺度縮放的篡改圖像進行檢測.本組實驗圖2、圖3中篡改圖像的拷貝篡改區(qū)域分別經歷了放大、縮小操作.
采用本文算法對圖2中拷貝區(qū)域經歷了放大的篡改圖像進行檢測時,實驗發(fā)現(xiàn)參數(shù)R的最佳取值為0.65,正確匹配點對的數(shù)目是29,檢測結果如圖4(a)所示,此時的匹配點對數(shù)目比之前都大,且不存在誤判點.表1給出了不同R值對圖2(b)進行檢測時的匹配點對數(shù)目的變化情況.對圖3中拷貝區(qū)域經歷了縮小的篡改圖像進行檢測時,R的最佳取值為0.4,此時匹配點對的數(shù)目是16,檢測結果如圖4(b)所示.表2給出了不同R值對圖3(b)進行檢測時,匹配點對數(shù)目的變化情況.實驗表明,本文算法能夠有效地檢測定位拷貝區(qū)域經歷了尺度縮放的篡改圖像.
表1 R值變化時尺度放大圖像的檢測結果Tab.1 Detection results with different R
(2)對經歷了旋轉、JPEG壓縮的篡改圖像進行檢測.本組實驗的原圖像是由作者自己拍攝的自然圖像,篡改圖像中的拷貝篡改區(qū)域經歷了旋轉操作,且圖像經歷了壓縮因子Q=30的JPEG壓縮操作,采用本文算法對篡改圖像的檢測結果如下:
采用本文算法對圖5(b)進行檢測時,參數(shù)R的最佳取值為0.7,此時匹配點對的數(shù)目是12,檢測結果如圖6所示.表3給出了不同R值對圖5(b)進行檢測時,匹配點對數(shù)目的變化情況.實驗表明,本文算法對于旋轉和JPEG壓縮具有很好的魯棒性.
表2 R值變化時尺度縮小圖像的檢測結果Tab.2 Detection results with different R
表3 R值變化時旋轉壓縮后圖像的檢測結果Tab.3 Detection results with different R
(3)對經歷了旋轉、JPEG壓縮、加噪的篡改圖像進行檢測.本組實驗的目的是驗證本文所提出的算法對于噪聲是否具有魯棒性.為了對比效果,本組實驗依然選用第二組實驗中的圖像,即對圖5(b)所示的篡改圖像添加了PSNR(Peak Signal to Noise Ratio)=30 dB的高斯白噪聲,然后檢驗本文算法的檢測效果.
經實驗檢測,發(fā)現(xiàn)本組實驗中參數(shù)R的最佳取值依然為0.7,此時匹配點對的數(shù)目是12,沒有誤判匹配對.表4給出了對加噪圖像進行檢測時,不同R值的特征點匹配情況.
表4 R值變化時對加噪圖像的檢測結果Tab.4 Noised image detection results with different R
將本組實驗的檢測結果與第二組中的檢測結果進行對比,可以看出,本文算法對于加噪后的篡改圖像依然有效,而且檢測效果與第二組的檢測效果相差很小.從實驗結果可以看出,本組中參數(shù)R的最佳取值與第二組相同,即R=0.7,此時匹配點對的數(shù)目也是12.通過表4與表3的對比可以證明:本文算法對于噪聲具有較好的魯棒性.
筆者提出的基于LPP-SIFT的拷貝篡改檢測方法,能夠有效地檢測出同幅圖像間的拷貝篡改區(qū)域.相對于SIFT的128維特征描述子,本算法的描述子只有20維,維數(shù)有了大幅度的減少,因而在很大程度上減少了特征點匹配時的運算量,提高了檢測速度.筆者提出的區(qū)域拷貝篡改圖像檢測方法,不僅能夠有效地檢測拷貝篡改圖像,還能準確地匹配出拷貝源和篡改區(qū)域.實驗證明,該算法對于尺度縮放、旋轉、縮放、噪聲添加以及JPEG壓縮操作具有很好的魯棒性.
[1] 吳瓊.面向真實性檢測的數(shù)字圖像盲取證方法研究[D].長沙:國防科學技術大學信息系統(tǒng)與管理學院,2008.
[2] FRIDRICH J,SOUKAL D,LUKAS J.Detection of copy-move forgery in digital images[C]//Proceedings of Digital Forensic Research Workshop.Cleveland:IEEE Computer Society,2003:5-8.
[3] POPESCU A C,F(xiàn)ARID H.Exposing Digital Forgeries by Detecting Duplicated Image Regions[D].Hanover:Department of Computer Science,Dartmouth College,2004.
[4] JU Sheng-gen,ZHOU Ji-liu,HE Kun.An authentication method for copy areas of images[C]//Proceedings of the 4th International Conference on Image and Graphics.Chengdu:IEEE press,2007:303-306.
[5] LOWE D G.Distinctive image features from scale-invariant key points[J].International Journal of Computer Vision,2004,60(2):91-110.
[6] YE K,SUKTHANKAR R.PCA-SIFT:a more distinctive representation for local image descriptors[C]//Proceedings of the 18th International Conference on Pattern Recognition.Washington:IEEE press,2004:506-513.
[7] HE Xiao-fei,NIYOGI P.Locality Preserving Projections[DB/OL].http://wenku.baidu.com/view/d6c 659bd960590c69ec376e9.html.2011-03-11.