馬偉鵬,林敏銳,吳澤宇,黃國銓
(韓山師范學院,潮州 521041)
近年來,隨著信息科技的發展,多媒體技術已經廣泛的應用在我們的生活和學習之中,改善質量。逐漸的,數字圖像已經成為了一種非常重要的信息載體,成為生活中不可分割的一部分。在如今計算成像技術的發展下,計算機軟件可以制造出與真實照片一樣讓人肉眼難辨的“PS”照片,這種信息來源的真實性受到嚴重的威脅。在現在成熟的圖像處理技術之下,對數字圖像的篡改事件比比皆是。例如2005年韓國科學家黃禹錫帶隊的干細胞研究突破造假圖片、2007年《巴黎競賽畫報》法國總統薩科齊“贅肉門”事件、2008年伊朗導彈造假事件等,讓這種“眼見為實”的傳統觀念徹底打翻,造成政治、文化、新聞和科學真實性方面很大程度上受到負面的影響。
設計該作品主要的目的是幫助人們更好地辨認圖片的真假,提高信息的可靠程度,不讓虛假信息傳播,一定程度上遏制對虛假信息對政治、文化、新聞和科學真實性的負面影響。
如今發達的圖像處理技術之下,篡改方式有很多種,但主要分為同幅圖像的復制粘貼篡改檢測和異幅圖片的拼接篡改檢測兩種方式。本文討論在同幅圖像的復制粘貼篡改檢測,本系統在復制粘貼篡改檢測中利用局部特征提取的方式進行特征提取,再利用局部的相似型進行全局匹配,找到相似度高的位置定位出來,分析情況。
在同幅圖片的復制粘貼篡改檢測研究與實現中,技術關鍵為SIFT與SURF算法,感知哈希降維和K-means聚類定位篡改區域。
SIFT算法即尺度不變特征變換(Scale-Invariant Feature Transform)算法,是由David Lowe于1999年在計算機視覺協會提出并發布[3],到了2004年得到較好的完善[4]。SIFT算法在圖像處理中非常成熟,因為尺度不變性,在人臉識別、圖像拼接、圖像檢索等領域得到很好地使用。SIFT的特征提取過程主要分四個步驟[1]:尺度空間極值點檢測、關鍵點的精確定位、關鍵點的方向確定和關鍵點的描述,如圖1所示。

圖1
雖然,SIFT的尺度不變性對圖像的篡改檢測帶來很好的效果,但是提取出來的特征向量維度高的問題,給匹配過程中歐氏距離運算帶來速度極慢的問題。所以很多學者對其不足進行優化,優化的方法大多是特征匹配和特征提取環境中進行的。文獻[5]中Herbert等人提出了SURF算法,在特征提取中利用Hessian矩陣構建尺度空間,在圖像積分過程中大大減少了其運算量;在文獻[6]Yan Ke和Rahul Sukthankar提出了PCA-SIFT算法,是在描述子環節中對SIFT特征向量進行了降維,提高算法效率。本文將會利用感知哈希對SIFT算法在特征提取環節中對特征數據信息進行壓縮,在特征匹配環節使用漢明距離比較兩個特征點的相似度,從而提高特征匹配的速率和匹配效果的質量。
感知哈希是這些年來在對媒體信息安全領域出現的新技術。它將數字媒體映射成一小段小的數字序列,可反應數字媒體的重要視覺或聽覺特征。圖像哈希是使用特定的哈希算法對原圖像進行數字序列化,該數字序列可以代表圖像的特征,相當于一個指紋,只要圖像獨一無二,數字序列也就獨一無二。在進行感知哈希的時候需要對SIFT特征轉換成一個中間矩陣,再對中間矩陣用離散余弦變換(DCT)進行圖像空間域轉換,再提取左上角的低頻部分,原理圖像壓縮一樣[2]。轉換后得到的系數矩陣,左上角大部分是圖片內容信息。DCT的二維轉換公式如下:

二維DCT定義如下:設f(x,y)定義M*N的數字圖像矩陣,則:

式中 x,u=0,1,2,…,M-1;y,v=0,1,2,…,N-1。
程序的現實過程如下:
(1)輸入數據:輸入128維的SIFT特征向量作為初始數據。
(2)構建DCT矩陣:將輸入的數據重整,重整為32×4的矩陣。
(3)計算DCT:把數據分解成頻率聚集和梯度的形狀。
(4)提取低頻系數:選取DCT系數矩陣數據中左上角呈現的低頻部分32維,其代表了圖像的內容信息。
(5)計算系數均值:在32維的數據中計算平均值。
(6)系數序列化:根據32維的數據,設置0或1的二進制(如果該數值大于DCT均值則設置為1,小于DCT均值的設置為0)。
(7)計算HASH值:將32維的二進制設置為8位的十六進制的HASH表示。
將一維的SIFT特征向量轉成二維的DCT矩陣輸出后都會擁有一個特點:隨著元素離DCT系數越來越遠,它的模就傾向于越來越小[2]。這說明將DCT處理后的數據,已經將圖像表示部分集中在DCT矩陣的左上角的系數(低頻部分,體現圖像的目標輪廓和灰度值分布特性),而矩陣的右下角部分系數幾乎不包含有用信息。
經過了SIFT特征提取和感知哈希的降維之后,需要設定一個閾值,當兩個感知哈希進行漢明距離的比較之后,但大于設定的閾值則判為相似的特征向量。但是提取的大部分的相似特征向量之后,需要把篡改區域標志出來,過程中往往存在很多異常,距離大的差錯點。這時,需要使用K-means距離,把差錯點剔除。K-means是機器學習中無監督學習中最常見的一種聚類算法,也是應用最廣泛的聚類算法。它是一種基于目標函數劃分的聚類算法,實際上基于距離劃分的,它的任務是把相似的對象分到一個簇中,在迭代運算中可以自動分類。它是幾乎可以運用與所有的對象,簇內的對象越相似,聚類效果就越好。本文中對篡改區域劃分的過程如下:
(1)找出k個相似的區域作為初始化聚類的中心,在區域內隨機選取一個坐標點。
(2)對剩余的每個坐標計算其距離(歐氏距離),把他劃分給最近的那一類。
(3)重新計算已經得到的各個聚類中心點,不停的迭代運算。
(4)重復2、3步,知道中心條件停止為止,如果達到迭代次數則聚類中心不變。
圖2為整個復制粘貼篡改檢測過程。

圖2
通過舉例子的方法進行實驗結果及分析,以下例子中篡改者對圖像進行了不同程度的篡改,系統均可以將其檢測出來。

圖3
圖3中(1)是原圖,篡改者以背景沙地當作被克隆的圖像塊,將復制到人物區域中,達到篡改目的。是已經篡改了的圖片。(3)是使用特征描述的方式檢測出相似的特征點。(4)是使用聚類處理,剔除誤差點區域,使用區域的方式定位出篡改的地方。系統均可以達到比較理想的檢測效果。

圖4
圖4中(1)是原圖,篡改者以三輛坦克的其中一輛為克隆的圖像塊,將復制到空白的區域,達到看起來變成4輛坦克為篡改目的。(2)是已經篡改的圖片。(3)是使用特征描述的方式檢測出相似的特征點。(4)是使用聚類處理,剔除差錯點區域,使用區域的方式定位出篡改區域的地方。

圖5
首先對一張原圖進行4種不同情況的克隆篡改,驗證本系統算法的魯棒性。圖5中(1)是對克隆出來的目標進行平移處理,平移到其他不相交的地方,檢測效果如圖所示。(2)是對克隆的目標進行旋轉和平移操作處理,選擇操作60度,移至其他不相交的地方,檢測效果如圖所示。(3)是將克隆的目標進行縮放和平移處理,平移至不相交的地方,檢測效果如圖所示。(4)是將克隆的目標進行選擇平移和加噪聲處理,檢測的效果如圖所示。
近年來,偽造圖像的事件日益增多,給各大網絡媒體曝光,給社會新聞和輿論帶來很多的虛假性信息等安全問題。如果一些偽造圖像繼續被濫用,這可能會造成涉及經濟、政治、軍事等領域上真實性的問題,給社會帶來巨大的危害,損失無法估量。針對目前較為流行篡改檢測方法——復制粘貼篡改,總結出較為實用且效果較好的檢測方法。開發了一個基于Web應用的平臺給予用戶和相關的政府機構使用,希望能給信息安全等問題帶來一些解決方案。本文介紹了同幅圖像的復制粘貼篡改檢測方式,和目前效果較優的特征描述子;針對目前較有的特征描述子特征維度高,檢查效率低等問題使用感知哈希的方法進行降維,針對提取出不穩定的特征點使用K-means方法進行聚類;最后檢測效率和效果都比較理想。盡管如此,本系統還是存在一些不足的,只對于合成這種篡改手段有比較好的檢測效果,對于變種、增強、計算機合成等篡改方式任然存在缺陷,但在之后將會結合深度學習方面的知識,不斷完善,創造出一個令人滿意的作品。