張麒麟,林清平,肖 蕾(通訊作者)
(空軍預警學院 湖北 武漢 430000)
隨著科技的快速發展,手機、平板電腦等電子設備和各種圖像編輯軟件的普及,存儲和傳輸數字圖像變得十分便捷。但隨之也帶來不少問題,其中對圖像進行不正當的加工和處理便是一大問題。被惡意篡改的圖像經過傳播,會影響人們對客觀事物的評價,甚至危害社會和國家安全。近年來由于圖像造假事件造成的一系列事件發人深省,針對數字圖像可能面臨著被隨意篡改和偽造的風險,如何保證數字圖像的真實性,對偽造圖像進行認證將是一項非常重要的課題。針對圖片篡改檢測的算法,以往主要是針對JPEG格式圖像的壓縮特性進行檢測,如DCT算法[1]和BLK算法,這些算法雖然對部分剪貼圖片能有效檢測,但極易受圖像壓縮、轉碼等處理的影響。
為此,我們提出了一個基于深度學習的圖像篡改檢測系統,由噪聲圖像生成、全圖濾鏡檢測、篡改區域檢測三個子系統構成。噪聲圖像生成是基于信噪比原理,依據圖片本身存在的噪聲,突出其中差異生成噪聲特征圖像。全圖濾鏡檢測是依據圖像像素之間的高維關聯,用CNN提取其中特征,檢測圖片可能存在的濾鏡。篡改區域檢測是依據雙流Mask-RCNN網絡構架,從RGB和噪聲兩個層面并行檢測圖片的篡改痕跡,并對篡改區域進行精確到像素級的標識。
Mask-RCNN[2]是何凱明基于以往的Faster-RCNN[3]架構提出的新的卷積網絡。Mask-RCNN與Faster-RCNN同樣采用了Two--Stage的結構,該網絡結構同時完成了兩項任務,即準確識別目標和完成高質量的語義分割。Mask-RCNN的設計思路就是在原有的Faster-RCNN基礎上進行擴展,增添一個預測分割MASK的分支對目標的位置信息進行并行預測。我們將Mask-RCNN這一優秀的特性應用到篡改區域檢測中,并針對圖像檢測的需求引入噪聲檢測機制和雙流結構,解決了以往算法檢測效果和區域劃分難以共同實現的難題,實現了像素級篡改檢測。

圖1 Mask-RCNN檢測網絡模型
如圖1,改進后Mask-RCNN 的網絡結構圖中主要有四個部分:殘差網絡卷積層、RPN(區域建議網絡推薦)、噪聲核卷積層、ROI Align(區域特征聚集)。主要流程如下:先將圖片集傳入檢測網絡,經過殘差網絡分析和噪聲卷積核處理得到圖像的feature maps(圖像特征),并利用RPN對生成的feature maps做目標區域推薦生成區域推薦,最終將其分類生成判斷結果。
待檢測圖像中物體是以不同的scale(圖片的比例)和size(圖片的大小)出現的,故數據集無法捕獲所有這些數據。因此,本層采用了ResNet50(殘差神經網絡)+FPN。這樣可以較好地提取圖片特征。FPN不是僅僅具有橫向連接,也能實現縱向連接卷積層,它們使用一個簡單的MergeLayer(把若干個層合并成一個層)來組合兩者。這樣的設計讓圖像的特征能夠被充分發掘并使不同深度的特征的影響更加均勻。
顧名思義就是區域推薦的網絡,用于幫助網絡推薦感興趣的區域,也是傳統Mask-RCNN中重要的一部分。通過固定錨點與滑窗確定特征區域對應的圖像位置,生成一個全連接特征。然后在這個特征后產生兩個分支的全連接層,用全連接層實現上一層特征到兩個分支的特征映射,幫助后續mask確定像素點位置。
主要利用截取SRM濾波中間過程[4],得到多種濾波核卷積后的圖像,突出顯示圖像噪聲方面的特征。本層接受卷積層的中間輸出,經本層處理后的圖像天然與下一級原始卷積圖像形成類似上采樣的結果,將輸出結果與相同層數的原始卷積圖像在FPN層中用進行特征融合,實現雙流架構的引入,使噪聲特征更加突出地作為圖像篡改特征的一部分。
ROI Align(區域特征聚集)層通過取消量化操作,采取雙線性內插值的方法獲得坐標數值為浮點數的像素點上的圖像數值,從而將整個特征聚集過程轉化為一個連續的操作。在Faster RCNN中,有兩次整數化的過程:region proposal的xywh通常是小數,為了計算簡便一般做整數化處理。將處理后的圖像邊界平均分割成個單元,對生成的單元的邊界整數化。
通過以上兩次整數化后的圖像中的候選框位置和初始回歸的位置存在一定的偏差,影響目標檢測或者語義分割的準確性。ROI Align方法通過取消整數化操作,保留了小數來避免出現以上問題。改進后的流程如下:
(1)對圖像中各個候選區域進行遍歷,候選區域的邊界不做整數化處理。
(3)對每個單元使用雙線性插值的方法計算四個固定坐標位置,將獲得的圖像數值進行最大池化操作。
經過以上改進的ROI Align處理可以提高模型的準確性。
本文選取精確率、召回率和評分參數作為對比部分的參考評價,其中,精確率、召回率、評分的計算如下。

測試數據集CASIA v1.0是一個著名的用于圖像篡改檢測的數據集,包含豐富的真實圖像和篡改圖像。但為避免受到CASIA v1.0數據集的限制,實驗部分采用十折交叉驗證法來對實驗效果進行客觀的評估。

表1 本文所提算法及3種對比算法的檢測結果精確率、召回率和F的平均值
通過表1可以看出,本文所提出的算法在精確率和F度量的平均值上大大優于其他三種算法,分別達到了0.76和0.72;召回率的平均值雖然略低于普通Faster-RCNN算法,但是仍然遠高于ELA算法和U-Net算法,不過有研究表明:在不犧牲準確率的前提下,很難達到很高的召回率。在大規模數據集合中這兩者是相互制約的,無法同時達到高的準確率和召回率,所以本文所提的算法在精確率、召回率和F的平均值方面是明顯優于其他三種算法的。通過檢測的實際效果也可以看出,普通Faster-RCNN算法、ELA算法和U-Net算法雖然都大致檢測出了被篡改的區域,但是精度都比較低,錯誤檢測的區域較多,反觀本文所提的算法可以很明顯地看出本文所提的算法在檢測的實際效果上仍然優于其他三種算法。總的來看本文所提的算法在各方面都優于其他三種用于實驗對比的算法。
此外,將圖像檢測算法應用于大量圖片時,運行速度是極為重要的指標,為此,我們對同一批圖片檢測的速度進行了對比,結果如表2。

表2 本文所提算法及3種對比算法的檢測運行時間
通過本文所提的算法及3種對比算法的檢測運行時間的實測結果可以明顯看出,本文所提的算法在運行時間上也有一定的改進。在保證了較好的準確率、召回率和F度量的前提下,本文所提的算法在運行時間上仍有較大的優勢,具有運行速度快的特點,適用于大批量圖片檢測。
綜上所述,我們所提出的算法的豐富特征使其在圖像篡改的檢測上有著較為優秀的效果。通過上面三個表的詳細分析可以看出,本算法在執行速度、準確率、召回率等方面都優于現有的算法。在當前的圖像篡改檢測領域,本文提出的圖像篡改檢測系統有著較為明顯的優勢。
本文設計實現了一個基于深度學習的雙流Mask-RCNN框架進行篡改圖像的檢測,詳細闡述了雙流Mask-RCNN模型的構架,通過實驗證明了其合理性和優越性。
雙流Mask-RCNN與單一深度學習方法相比,具有更好的魯棒性和更先進的性能。多通道的輸入使圖片的轉碼和壓縮不易影響篡改特征,雙流相互印證能夠更加精確地定位篡改區域和能夠檢測多種尺寸的圖片,不再受限于普通RCNN算法的圖片輸入大小限制,能夠輸出精確到像素級的篡改區域。
采取雙流Mask-RCNN能從更多角度分析圖片的修改痕跡信息,幫助用戶更好地甄別圖片真偽性。