孟 旭,孟 坤
(北京信息科技大學 計算機學院,北京 100101)
隨著手機、平板電腦、數碼相機等便攜式設備的普及,人們每天都能產出大量的圖像。這些圖像為人們的生活帶來了便利,同時也存在著一定的安全隱患。人們可以方便地對圖像進行修改,這導致不真實的圖像的數量大大增加。這些不真實的圖像給新聞、司法等領域帶來了極大的挑戰。因此,為了保證圖像的真實性和原始性,對圖像進行來源識別是十分重要的。
圖像來源識別是一種從圖像本身識別圖像來源的技術,可以通過提取圖像本身特有的特征信息進行圖像來源的識別。現有的圖像來源識別方法有很多,基于傳感器模式噪聲(sensor pattern noise,SPN)的方法是其中之一。在此方法中,人們通過提取圖像的噪聲殘差來估計相機的SPN,然后通過計算測試圖像與相機的SPN的相似度來確定圖像的來源。但是這種方法容易受到圖像中其他模式噪聲的影響,不夠純凈的噪聲信息容易影響圖像來源識別的準確性。近幾年隨著神經網絡的廣泛應用,人們開始將神經網絡用于圖像來源識別中,通過神經網絡學習圖像的特征,以達到圖像來源識別的目的。
該文針對圖像來源識別的工作進行了一系列實驗,探索了神經網絡在不同的實驗場景下的應用,分析在兩種不同的應用模式下神經網絡的分類效果。第一種應用場景是針對來自多個成像設備的圖片進行分類,分析這些圖片分別來自哪個成像設備。第二種應用場景是對某一張圖像進行來源的判斷,判斷該圖片是否來自于某個成像設備。使用兩個不同的數據集分別進行實驗,第一個數據集是筆者自己拍攝的,該數據集包括來自4個品牌的10種不同的設備拍攝的1 069張圖像。第二個是vision數據集,共有來自11個品牌的35種不同設備拍攝的4 167張平滑的圖像。分別對這兩個數據集中的數據進行了不同的預處理,獲得了原始圖像、噪聲圖像、分塊原始圖像和分塊噪聲圖像四種不同類型的數據集。將獲得的數據集分別作為神經網絡的輸入進行訓練,探索不同的圖像數據分類的效果。
傳感器模式噪聲是圖像成像過程中生成的相機特有的噪聲信息,可以根據圖像的這部分噪聲信息進行圖像來源的識別。近幾年人們提出了很多噪聲信息的圖像來源識別方法。例如,張明旺等人對圖像噪聲提取方法進行了總結。Gupta等人基于光響應不均勻性(photo response non-uniformity,PRNU)噪聲是非常弱的噪聲信號,分別在圖像的高頻和低頻分量中應用PRNU提取方法提取PRNU。該方法能夠提高大多數PRNU提取方法的效率,并且獲得了Mihcak濾波器的最佳結果。Zeng等人提出了一種基于雙樹復數小波變換(dual-tree complex wavelet transform,DTCWT)的方法從給定圖像中提取SPN,從而在強邊緣周圍的區域中實現了更好的性能。Zhao等人提出了一種使用權重函數的特征維數降低算法,該算法將不重要的像素方向的參考圖案排除在外,保留了更重要的特征。Roy等人基于離散余弦變換殘差特征的提取以及隨后的基于AdaBoost的基于隨機森林的集成分類,提出了一種相機源識別方法。通過結合主成分分析的降維方法,提高了分類精度。
神經網絡已被廣泛應用于圖像分析,并證明了其明顯的優勢,近幾年越來越多的人將神經網絡用于圖像來源的識別中。Mandelli等人提出了一種基于2通道的卷積神經網絡(convolutional neural network,CNN),該CNN學習了一種在色標級比較相機指紋和圖像噪聲的方法。所提出的解決方案比常規方法要快得多,并且可以確保較高的準確性。Kang等人提出的方法利用邊緣分量干擾學習深度特征,對要輸入深度網絡的圖像進行預處理,以提高攝像機模型識別精度。Tuama等人提出了一種可以自動并同時提取特征的方法,在學習過程中學習分類。之后Rafi等人提出了RemNet,該網絡由兩個主要的構建塊組成:數據驅動的預處理塊和分類塊。Wang等人修改了類似于AlexNet的卷積神經網絡結構,并為其配備了簡單的局部二進制模式預處理操作。Huang等人提出將感興趣的圖像裁剪成較小的圖像塊,并采用局部到全局策略,根據圖像塊的多數表決權,就源攝像機做出最終決定。
從上述技術來看,基于SPN的方法已經廣泛應用于圖像來源識別領域,但是該方法對于圖像噪聲信息的提取的純度要求較高,不純凈的噪聲信息會影響圖像來源識別的準確性。近幾年人們越來越多地將神經網絡用于圖像來源識別領域,通過神經網絡學習圖像的特征來進行圖像來源識別。
該文使用神經網絡進行圖像來源識別的實驗,將不同的實驗數據作為輸入,探究神經網絡的分類效果。在兩個數據集(筆者建立的數據集和vision數據集)上進行了實驗,對兩個數據集中的數據進行不同的預處理,獲得了原始圖像、噪聲圖像、分塊原始圖像和分塊噪聲圖像四種不同類型的數據。實驗設置兩種不同的應用模式:針對來自多個成像設備的圖片進行分類和判斷某張圖片是否來自于某個特定的成像設備。使用預處理后的數據在兩種不同的應用模式下進行實驗,對比分析方法與實驗設置如表1所示。

表1 對比分析方法與實驗設置
該文對AlexNet卷積神經網絡進行了修改,以適應模型的需求。提出的網絡結構如表2所示,由三個卷積層、一個最大池化層和兩個全連接層組成。

表2 神經網絡結構
神經網絡結構具體如下:輸入圖像是大小為255*255的圖像塊。第一個卷積層(COV1)使用64個大小為5*5的卷積核處理輸入的圖像塊;第二個卷積層(COV2)將第一層的輸出作為輸入,使用大小為5*5的卷積核進行卷積;第三個卷積層(COV3)應用32個大小為3*3的卷積核進行卷積。線性整流函數(ReLU)是非線性激活函數,應用于每個卷積層的輸出。第三個卷積層之后是大小為3*3的最大池化層。完全連接層(FC1)和(FC2)分別具有256和4 096個神經元。ReLU激活函數應用于完全連接層的輸出。在最大池化層和兩個完全連接層上分別應用0.2和0.5的丟失率,以防止出現過擬合問題。最后一個完全連接層的輸出被饋送到softmax函數。
相機成像過程中會生成各種各樣的噪聲,這些噪聲中會包含可以標識成像設備的信息,因此提取圖像的噪聲信息作為神經網絡的輸入進行訓練。圖像噪聲的提取方法是使用去噪濾波器對原始圖像進行降噪,然后由原始圖像減去降噪后的圖像就可以獲得噪聲圖像了,如式(1)所示:
R
=I
-F
(I
)(1)
其中,I
是原始圖像,F
(?)是降噪的過程,該文采用如下5*5的高斯核進行圖像噪聲的計算。
提取圖像塊有兩個作用:第一是擴充數據集;第二是提取更具代表性的圖像塊進行實驗。由于完整的圖像中包含各種各樣的圖像信息,其中有很多信息不能作為圖像來源識別的特征,因此提取部分的圖像塊進行實驗,從而減少其他信息對于圖像來源識別的干擾。
該文主要提取圖片邊緣和中心區域的信息,即提取了圖片的四個角、各邊中心以及圖像中心9個區域的圖像塊。提取的圖像塊如圖1所示。

圖1 圖像塊提取
該文使用上述數據預處理獲得的四類數據集分別進行了基于兩種應用模式的實驗。首先進行了簡單的基于SPN的實驗作為基準,然后基于兩種不同的應用模式進行了基于神經網絡的實驗,最后探索分析了不同實驗數據對于圖像來源識別的分類效果。
實驗中使用了兩個不同的數據集。第一個是筆者建立的數據集,該數據集共有來自4個品牌的10種不同的設備拍攝的1 069張圖像。第二個是由vision數據集提供的,來自11個品牌的35種不同設備拍攝的4 167張平滑圖像。數據集的具體情況如表3和表4所示。

表3 自己建立的數據集

表4 vision數據集
該文分別使用上述數據集進行了三類實驗:基于SPN的實驗、使用神經網絡實現圖像來源的分類和使用神經網絡實現圖像來源的判斷。
3.2.1 基于SPN的實驗
基于SPN的實驗是通過估計相機的SPN信息,計算圖像噪聲殘差與相機SPN的相似性,進而識別圖像的來源。該文使用2.2中的噪聲提取方法獲得圖像的噪聲殘差,使用來自同一相機的70%的圖像,采用均值計算的方法進行相機SPN的估計,然后使用剩余的30%的圖像來驗證識別的準確性。同時對兩個數據集的數據進行了不同的預處理,獲得了三類不同的數據集:第一是完整的圖像;第二是使用2.3中提出的方法提取部分圖像塊;第三是使用文獻[17-18]中提出的圖像塊提取方法計算權重對圖像塊進行加權。實驗結果如圖2所示。

圖2 基于SPN的實驗結果對比
通過以上實驗可以看出,僅僅使用簡單的噪聲提取方法估計相機的SPN對于圖像來源識別的效果不太理想,這是因為圖像的噪聲信息包含很多除SPN以外的其他模式噪聲,這些噪聲會干擾圖像來源識別的準確率。其中使用部分圖像塊加權提取噪聲信息和使用平滑的圖像進行實驗,實驗結果準確率獲得了一定的提升。因此,筆者認為選擇具有代表性的部分圖像塊和使用平滑的圖像(例如,天空圖像)能夠提取更加純凈的噪聲信息,在一定程度上能夠減少其他噪聲的干擾,更有利于圖像來源的識別。
3.2.2 使用神經網絡實現圖像來源的分類
使用神經網絡實現圖像來源分類的實驗是使用2.1節中提出的神經網絡來學習圖像的特征信息,然后進行圖像來源識別的。在此實驗中,將圖像切分為255*255的圖像塊(將邊緣大小不夠255*255的圖像塊刪去),輸入神經網絡學習圖像的特征。其中訓練集占全部圖像數量的70%,測試集占30%。分別使用經過不同預處理的數據集進行實驗,探索神經網絡在圖像來源分類中的應用。
基于完整圖像的實驗。在這個實驗中,從圖像的左上角開始將圖像分為多個255*255的圖像塊(將邊緣大小不夠255*255的圖像塊刪去)。因此,筆者建立的數據集共有29 967個圖像塊,vision數據集共有361 932個圖像塊。使用這些圖像塊進行兩部分實驗:第一部分將獲得的圖像塊直接輸入神經網絡進行訓練;第二部分使用2.2中提出的方法提取圖像的噪聲,然后輸入神經網絡進行訓練。實驗結果表明,使用噪聲圖像進行實驗,結果準確率比原始圖像提升了10%。
基于部分圖像塊的實驗。在這個實驗中,使用2.3中的方法提取大小為255*255的圖像塊。因此,筆者建立的數據集共有9 612個圖像塊,vision數據集共有37 503個圖像塊。使用這些圖像塊分別進行兩部分實驗:第一部分將圖像塊直接輸入到神經網絡進行訓練;第二部分使用2.2中提出的方法提取圖像塊的噪聲,然后輸入神經網絡進行學習。實驗結果表明,對于筆者建立的數據集,由于數據集的數據量相對較少,實驗的結果有所下降。對于vision數據集,使用部分圖像的實驗的準確率比使用整個圖像實驗的準確率提升了1%~4%,同時,使用部分圖像進行實驗,耗費的時間更短。
使用神經網絡實現圖像來源分類的實驗結果如圖3所示。通過以上實驗可以看出,使用部分圖像塊學習圖像的特征信息,準確率提升了26%,使用濾波后的圖像進行實驗,準確率提升了35%。因此,筆者認為選擇有代表性的圖像信息進行實驗比使用完整圖像信息進行實驗更有利于圖像特征信息的提取。

圖3 使用神經網絡實現圖像來源分類的 實驗結果對比
3.2.3 使用神經網絡進行圖像來源的判斷
使用神經網絡實現圖像來源判斷的實驗是判斷一個圖像是否來自于某個特定的相機。在此實驗中,使用神經網絡訓練圖像的特征,然后將待測圖像與標記好的圖像進行比較,判斷測試圖像是否來自該相機。分別使用經過不同預處理的數據集進行實驗,探索神經網絡在圖像來源判斷中的應用。使用與3.2.2節中相同的數據集進行四個實驗:整圖、噪聲圖、圖像塊和噪聲圖像塊。將圖片輸入神經網絡進行訓練獲得來自同一相機的圖像特征,提取測試特征的信息進行對比,判斷該測試圖像是否來自特定相機。實驗結果如圖4所示。

圖4 使用神經網絡實現圖像來源判斷的 實驗結果對比
通過以上實驗可以看出,使用部分圖像塊學習圖像的特征信息進行圖像來源判斷的準確率相對較低。筆者認為原因是提取的圖像塊包含的圖像信息較少,不利于圖像特征的學習。使用濾波后的圖像進行實驗,準確率達到了95%。因此,選擇更具代表性的圖像信息進行實驗比使用完整的圖像信息進行實驗更有利于圖像來源的判斷。
該文探索了神經網絡在圖像來源分類和圖像來源判斷兩個場景下的應用,分別在多個不同類型的數據集上進行了多次實驗,通過對實驗結果的分析,發現選擇有代表性的圖像信息和使用平滑的圖像更加有利于圖像來源的識別。在未來的工作中,將探索更好的圖像處理方法,選擇更具代表性的圖像區域并提取更加純凈的圖像特征信息,以進一步提高圖像來源識別的準確性。