摘 要: 基于圖像紋理和陰影的信息判斷物理光學(xué)特性,根據(jù)該特性是否一致提出一種檢測圖像真實(shí)性的算法。通過建立線性規(guī)劃方程限定楔形方向和角度,并運(yùn)用共軛梯度法去判定正確的紋理信息。紋理限定的光源位置或楔形的交集都可以作為判定圖像真實(shí)性的依據(jù)。結(jié)合陰影和紋理的約束條件,使得楔形的參數(shù)更加精確。實(shí)驗(yàn)結(jié)果顯示,所建立的算法可以正確顯示光源的信息和圖像中物體的光學(xué)特性,并判斷圖像是否被篡改。
關(guān)鍵詞: 紋理;陰影;光學(xué)特性;線性規(guī)劃
0 引言
“眼見不一定為實(shí)”,照片已經(jīng)不再作為真實(shí)性的依據(jù)。在最近幾年,圖像被偽造和篡改的問題層出不窮,已經(jīng)嚴(yán)重影響了人們的正常生活和對新聞的信任。
基于光學(xué)特性的數(shù)字圖像取證技術(shù)可在不依賴任何簽名提取或嵌入信息的前提下,對圖像內(nèi)容的真實(shí)性進(jìn)行鑒別[1]。
圖像篡改通常會破壞自然圖像的光照及其產(chǎn)生的紋理和陰影的一致性,并且圖像篡改者很難把光照條件和陰影效果調(diào)整到很匹配。因此可以根據(jù)圖像中場景的光源方向、紋理和陰影的物理一致性作為對數(shù)字圖像鑒別的依據(jù)[2]。
目前,Hany Farid團(tuán)隊從單光源圖片中物體陰影的一致性來分析,建立模型檢測圖片是否被篡改過。
本文針對自然圖像,結(jié)合朗伯光照模型建立線性規(guī)劃方程分析并簡化模型,運(yùn)用紋理的信息優(yōu)化方程的參數(shù)提高算法的精確度,從而使得模型得到更廣泛的應(yīng)用。
1 模型介紹
1.1 獲取楔形
根據(jù)朗伯光照模型可以估計光源的位置,并根據(jù)漫反射在物體表面形成的光學(xué)特性,在圖像中獲得大量的楔形區(qū)域。
光源的位置位于多個楔形區(qū)域的交集部分,楔形的方向是從陰影指向?qū)?yīng)物體的部位。根據(jù)透視幾何學(xué)的原理,由于投射的光源的位置不是很精確,這里存在不確定性[3]。
對于真實(shí)的圖像,在無限遠(yuǎn)的二維平面上一定存在一個估計光源的位置去滿足所有投射陰影的線性約束方程。因此,所有約束條件的交集應(yīng)該定義一個非空的區(qū)域。
在圖1中,通過兩條實(shí)線定義一個楔形區(qū)域,并用一個曲線定義半平面。投影光源的位置應(yīng)該在這些約束條件形成的交集部分,虛線表示楔形的反方向。
1.2 約束條件
陰影的約束條件可以通過平面上的線性不等式表示,圖1中顯示的兩條線是通過平面上的法線和點(diǎn)來簡單定義的,法線方向指定平面上的一個區(qū)域,在這個區(qū)域里必然存在一個待解決的參數(shù)x,這兩個區(qū)域是楔形區(qū)域向上的部分。圖1顯示了一條通過其法線和點(diǎn)定義的線,在任何情況下,一個陰影的約束條件都可以通過一對實(shí)線(楔形區(qū)域投射陰影的約束)或者一條線(半平面附加的陰影約束)來定義。
通常情況下半平面的約束條件可以通過未知參數(shù)x的單個線性不等式來指定:
其中,是這條曲線上任意一點(diǎn)的法線,表示線上任意一點(diǎn),一個楔形區(qū)域是通過用兩個法線表示的兩個線性約束方程來確定。
從光源方向一致的場景可以得到?jīng)]有誤差的線性約束,一個可能的不等式的解存在于這個線性約束中,即可以得到一個含有最小誤差的方程的解來滿足所有因素和附屬陰影的約束方程。
當(dāng)圖像生成不一致約束條件時,希望找出哪一個約束條件是與別的有沖突的,因此沖突的約束條件提供了最根本的證據(jù)去證實(shí)一個圖像的真實(shí)性,并用來檢測哪一部分的圖像被篡改。
2 算法分析
2.1 楔形區(qū)域的參數(shù)
根據(jù)本文提到的模型,楔形區(qū)域的選擇影響因素在不同的環(huán)境和光照下都不相同,首先假設(shè)幾個特定場景參數(shù)。
?。?)楔形區(qū)域的個數(shù)。個數(shù)的選擇在可以分析的范圍內(nèi),個數(shù)越多越能判斷圖像的真假。
?。?)紋理的角度。雖然紋理是不規(guī)范的,但在理想規(guī)則物體上的紋理信息可以決定楔形角度的大小。
?。?)楔形的方向。不同的方向直接影響判斷的結(jié)果,本文通過光源的位置和紋理的信息來限定它的方向。
2.2 參數(shù)選擇
2.2.1 楔形的個數(shù)
本文所采集的圖片是在相同的環(huán)境中完成的,并在采集過程中選擇有針對性的特征點(diǎn),這些明顯的特征點(diǎn)能夠有助于得到正確有效的楔形。同時,所選的圖像清晰易于分析,在4~11個楔形的基礎(chǔ)上就能得到穩(wěn)定的正確率,對于復(fù)雜的照片則需要更多的楔形來獲得較穩(wěn)定的數(shù)值。
從之前采集的圖片庫中選擇104幅比較有代表性的圖片并用1~104編號命名。用4~11個楔形對這104幅圖像進(jìn)行處理,加上紋理信息的限制判斷圖像的真實(shí)性,對每個數(shù)目的判斷結(jié)果求出正確的概率。以楔形的數(shù)目作為橫軸,以正確率作為y軸建立趨勢圖,如圖2所示。
從圖2中可以看到,當(dāng)楔形的數(shù)目在8~9個時,正確率已經(jīng)基本穩(wěn)定在86%,因此選擇合適的楔形個數(shù)是8~9個。
2.2.2 獲取紋理信息
空間場景中的三維對象在圖像中看起來是平面的,失去了三維特性。對一幅被篡改的數(shù)字圖像進(jìn)行取證時,無法得知圖像中目標(biāo)物體在拍攝場景中的三維幾何形狀,因此無法得到目標(biāo)物體在指定點(diǎn)處的曲面法向量,如果作為判斷圖像真實(shí)性的依據(jù),必須對問題做簡化處理。
數(shù)字圖像的二維特性使得取證者看不到圖像中目標(biāo)物體的紋理所在的完整曲面,因此須做進(jìn)一步簡化。對于紋理所在的局部曲面,曲面在邊緣點(diǎn)處的法平面與xoy平面的交線即為紋理曲線在該點(diǎn)處的法線矢量。因此,圖像中目標(biāo)物體的紋理曲面部分在邊緣點(diǎn)處的三維曲面法線矢量等價于紋理曲線在相應(yīng)邊緣點(diǎn)處的二維法線矢量。
根據(jù)共軛梯度法,選擇合適的方程去模擬紋理的依據(jù)及算法。
在二維平面中,(x,y)表示坐標(biāo)(x,y)處的表面法向量,i(x,y)表示圖像在該點(diǎn)的像素值。
其中p、q為該點(diǎn)的像素值在x軸和y軸上的偏導(dǎo)。
紋理的特征:附近的像素的梯度變化是相反的。
在該像素點(diǎn)的8鄰域、16鄰域或32鄰域內(nèi)取式(3)和式(4)的符號,異號相乘為負(fù),總會存在變化梯度符號相反的像素。尋找到使得公式符號相反的像素點(diǎn)之后,需要判斷是否滿足式(5)并使得相應(yīng)的值取得最大并趨向于1,這樣的點(diǎn)則可以被判定為紋理相關(guān)的分析點(diǎn)。
按照紋理的形狀及其特征,將紋理分為規(guī)則圓弧狀紋理和不規(guī)則長條狀紋理。
長條狀紋理:用來判定光源的方向,使得光源的位置更加精確。
圓弧狀紋理:通過計算圓形的弧度(),來限制楔形夾角的大?。?img src="http://files.chinaaet.com/images/2016/02/21/6359166275177900008687008.png" title="_VC~~5~(~SRFK@TN@KA%446.png" alt="_VC~~5~(~SRFK@TN@KA%446.png"/>)。
圖片中如果存在比較規(guī)則的物體,光源在物體上形成的紋理具有明顯的弧度,可以通過這個弧度來限制楔形的夾角。
3 楔形結(jié)合紋理
在一般的圖像分析中可以發(fā)現(xiàn)這樣一個規(guī)律,楔形的方向可以根據(jù)光源的方向來確定,紋理的信息可以判定光源的方向。其流程圖如圖3所示。
下面是圖像的分析步驟:
?。?)觀察圖像中物體的形狀特點(diǎn),有針對性地選擇規(guī)范的點(diǎn)和弧線。
(2)用MATLAB畫出圖像中規(guī)范點(diǎn),描繪物體弧線上的紋理。
(3)用紋理信息并結(jié)合參考文獻(xiàn)[4]確定光源方向。
?。?)如果圖片中沒有規(guī)則的紋理,在規(guī)范點(diǎn)上只結(jié)合光源的方向來確定楔形的方向和角度。
?。?)如果存在規(guī)則的紋理,則可通過測量紋理的角度來限制楔形的夾角。
(6)用上述方法在一幅圖片中選擇8~9個這樣的楔形判斷楔形的交集。如果有明顯的交集,則這幅圖片被判為真,反之為假。
從圖片庫中選擇104幅圖像,這些圖像中帶有較為規(guī)則的物體得到規(guī)則的紋理,測量紋理的弧度值,同時測量出其對應(yīng)的理想楔形的夾角,根據(jù)數(shù)據(jù)的分布情況,可以假設(shè)和存在一定的線性約束關(guān)系。同時根據(jù)模型可以觀察到,在規(guī)則的物體上和存在明顯的約束關(guān)系。
對從圖像庫中隨機(jī)抽取的104幅圖像進(jìn)行分析得到參數(shù),用數(shù)據(jù)分析軟件SPSS得到和的相關(guān)性0.871,即為顯著性相關(guān)。用線性回歸模型和二次回歸模型去分析數(shù)據(jù)得到曲線估計如圖4所示。其中實(shí)線表示線性回歸曲線,虛線表示是二次回歸曲線。
從曲線和軟件分析可以得到?酌和?茁大致呈直線分布,線性和二次回歸的直線方程分別為:
用這兩個方程計算出?酌的取值范圍。還可以用式(8)和(9)去加以限定使得結(jié)果更準(zhǔn)確。
以圖片的左下邊界建立坐標(biāo)系,式中表示光源與x軸的夾角,表示楔形下邊界與x軸的夾角。
4 結(jié)果分析
4.1 圖例分析
圖5(a)是在有限的界面內(nèi)就能得到正確的分析結(jié)果。圖中紅色標(biāo)記的兩個交集區(qū)域沒有相交的部分,所以這幅圖片是被篡改過的。圖5(b)在有限的界面得不到分析結(jié)果,那么建立坐標(biāo)系可以求出這兩個楔形的邊界的斜率ka<kb。不管是否要延伸,這兩個邊界線都有交點(diǎn)c點(diǎn),即這兩個交集是存在的,由此判定這幅圖像是真實(shí)的。
4.2 算法比較
算法比較結(jié)果如表1所示。楔形的數(shù)量和角度已經(jīng)可以精確到具體的范圍而不是任意的數(shù)值,同時準(zhǔn)確率已經(jīng)提高到85.6%,達(dá)到比較理想的數(shù)值。
5 結(jié)論
本文提出的算法適用于單一光源照射的圖片,比如自然光?;趫D像光學(xué)特性的檢測算法已經(jīng)有了初步的研究,本文在前人研究的基礎(chǔ)上提出了改進(jìn)算法,進(jìn)一步提高了檢測圖像的正確性和適用性。為了獲得準(zhǔn)確的測試結(jié)果,本文對模型做了簡化,選擇較為明顯的感光面作為物體的紋理,主要分析明顯的點(diǎn)來確定最小的集合,并用其他的試驗(yàn)點(diǎn)來測試所選的區(qū)域是否一致。通過前面的實(shí)驗(yàn)結(jié)果顯示,本文改進(jìn)算法的精確度可以達(dá)到理性的期望值。
參考文獻(xiàn)
[1] RAFAEL C G, RICHARD E W.數(shù)字圖像處理[M].阮秋琦,阮宇智,等譯.北京:電子工業(yè)出版社,2011.
[2] 唐坤,葛華勇,房樹娟,等.基于視覺特性的JPEG圖像自適應(yīng)隱寫算法[J].微型機(jī)與應(yīng)用,2015,34(8):39-40,43.
[3] Ge Huayong, MALIK H. Exposing image forgery using inconsistent reflection vanishing point[C]. 2014 International Conference on Audio, Language and Image Processing(ICALIP), 2014(4):282-286.
[4] FARID H. Exposing digital forgeries from JPEG ghosts[J]. IEEE Transactions on Information Forensics and Security, 2009(4):154-160.