袁 哲,孫延君,陳 亮
(1.吉林大學(xué) 機械與航空航天工程學(xué)院,長春 130022;2.空軍航空大學(xué) 計算機教研室,長春 130022)
計算機圖像處理軟件能繪制出各種不同場景的數(shù)字圖像,人們通過肉眼根本無法辨別出這些圖像和真實圖像的區(qū)別[1-6],因此,如何保證圖像的真實性,如何鑒別圖像的真?zhèn)?已成為當(dāng)前該領(lǐng)域的研究熱點[7-8].Farid等[9]提出了圖像的高階統(tǒng)計特性模型、鄰近像素線性組合概率、離散余弦變換(DCT)系數(shù)直方圖的類采樣效應(yīng)量化等方法,在計算機生成圖像與真實圖像進(jìn)行鑒別檢測中取得了較好的效果;文獻(xiàn)[10]主要通過圖像的幾何特性鑒別計算機生成圖像和真實圖像;姚丹紅等[11]提出了基礎(chǔ)分形維數(shù)的計算機生成圖像鑒別算法.在機械類實驗中,為了解液力元件(包括液力變矩器、液力偶合器和液力緩速器)內(nèi)部液體的流動狀態(tài)和流動規(guī)律,采用粒子圖像測速(PIV)技術(shù).PIV實驗中,需要采用CCD(電荷耦合器件)相機去拍攝視頻和圖片,并對圖片進(jìn)行識別和分析[12-14].本文基于計算機生成圖像和真實圖像之間的差異,通過計算圖像的提取特征值,采取分類的方法識別計算機生成圖像和真實圖像.實驗結(jié)果表明,本文提出的方法可切實有效地識別計算機生成圖像與真實圖像.
圖1 數(shù)字圖像成像過程Fig.1 Imaging process of digital images
數(shù)字圖像的成像原理是光源光線通過數(shù)碼相機的CCD傳感器,捕捉和獲取R,G,B三個通道的像素值實現(xiàn)的,如圖1所示.在此期間,數(shù)碼相機會利用CFA(彩色濾波陣列)插值的方法形成圖像.數(shù)碼相機在進(jìn)行處理工作時,由于受諸多因素(如真實場景復(fù)雜程度、硬件及數(shù)碼相機插值過程)的影響,導(dǎo)致在此過程中真實圖像會產(chǎn)生一定的噪聲.
圖2 計算機生成圖像過程Fig.2 Process of computer-generated images
計算機生成圖像可通過各種途徑及各類不同的圖像編輯軟件獲得,并可對圖像再進(jìn)行一系列的人為操作,如對圖像潤飾、銳化、平滑,也可以對圖像重新采取插值等方式模擬相機成像流程生成新圖像,如圖2所示.所以計算機生成圖像和真實圖像在紋理上存在差異.目前圖像編輯軟件功能日益強大,通過肉眼已經(jīng)很難識別計算機生成圖像,如圖3所示.因此,只能通過采用適當(dāng)?shù)淖R別算法判斷圖像的真?zhèn)涡?本文算法基于計算機生成圖像和真實圖像紋理的差異,利用局部二值模式特征進(jìn)行鑒別.
圖3 計算機生成圖像與真實圖像對比Fig.3 Comparision between computer-generated images and real images
局部二值模式特征也稱為LBP(local binary pattern)特征,是描述圖像局部紋理特征的算子.LBP特征的算法是在3×3范圍內(nèi),周圍8個像素點值比中間點像素值小的記為0,大于或等于中間點像素值的記為1,然后按順時針方向得到二進(jìn)制串,如圖4所示.由圖4可見,中間點的像素值用二進(jìn)制序列10001111代替.其中,LBP的順序并無硬性要求,只是一個量化公式,在計算中需保持相同順序.本文在原有LBP算法的基礎(chǔ)上進(jìn)行改進(jìn),改進(jìn)后的算法為:在3×3的范圍內(nèi),周圍8個像素點比中間點像素大的記為1,小的記為-1,相等的記為0,如圖5所示.
圖4 局部二值模式原理Fig.4 Principle of local binary pattern
圖5 改進(jìn)后的局部二值模式原理Fig.5 Principle of improved local binary pattern
由圖5可見,在改進(jìn)后算法中,算法將大于中心閾值的點和等于中心閾值的點組合成一個字符串,同時將小于中心閾值的點和等于中心閾值的點組合成一個字符串,這樣中間點的像素值可用2個二進(jìn)制字符串表示,分別按照順時針排列的10111和1110.這樣改進(jìn)的優(yōu)點是可以突出圖像的邊緣信息,而邊緣信息是計算機生成圖像和真實圖像的重要區(qū)別,同時可將特征值集中在某一范圍內(nèi),從而提高鑒別率.
對于一幅尺寸為M×N的圖片,利用局部二值模式的改進(jìn)算法將其轉(zhuǎn)換成特征圖像,如圖6所示.其中: (A)是原圖;(B)中像素值是由大于等于中心像素值轉(zhuǎn)換的點組成;(C)中像素值是小于等于中心像素值轉(zhuǎn)換的點組成,其轉(zhuǎn)換方法是將灰度圖像中每個像素值用局部二值模式值代替,然后提取每幅特征圖像的128統(tǒng)計直方圖特征作為特征向量.
圖6 改進(jìn)局部二值模式實例Fig.6 Example of improved local binary pattern
為進(jìn)一步分析圖像間的差異,本文先提取圖像梯度特征,利用邊緣檢測得到邊緣圖像,然后利用邊緣檢測結(jié)果求取梯度方向.首先求梯度方向的比值,然后使用反正切函數(shù)進(jìn)行映射,分別將映射后的比值和梯度幅值作為特征值,計算公式為
(1)
(2)
其中:d1和d2分別為水平和垂直兩個方向的差值,從而可得到梯度特征.
下面利用改進(jìn)的LBP特征和梯度特征的算法進(jìn)行計算機生成圖像和真實圖像的檢測.將所有待檢測圖像分為訓(xùn)練和測試兩部分.首先對樣本圖像進(jìn)行特征提取,得到其特征信息;然后利用支持向量機(SVM)分類器對樣本進(jìn)行訓(xùn)練;最后對測試圖像利用SVM分類器進(jìn)行測試.算法流程如圖7所示.
圖7 算法流程Fig.7 Flow chart of algorithm
步驟1) 將彩色圖像轉(zhuǎn)化成灰度圖像;
步驟2) 對灰度圖像進(jìn)行改進(jìn)的LBP特征和梯度特征提取;
步驟3) 利用SVM分類器對特征值進(jìn)行分類.
用于實驗的硬件環(huán)境為AMD Athlon(tm) 7750 2.7 GHz CPU,1 GB內(nèi)存,采用的編程環(huán)境為Microsoft Visual 2010,選用C語言作為編程語言,SVM作為分類器.圖像庫采用美國哥倫比亞大學(xué)數(shù)字圖像庫,其中自然圖像800幅,計算機生成圖片800幅.實驗隨機選取400幅訓(xùn)練樣本圖像和200幅測試樣本圖像.確保訓(xùn)練圖像和測試圖像的比例為2∶1,實驗結(jié)果列于表1.
表1 實驗結(jié)果對比
本文算法的特征主要針對圖像的紋理信息,由表1可見: 本文算法的識別率符合實際情況,對于真實圖像,算法對于紋理信息較多圖像的識別率較高;而相對于圖像中紋理信息較少的圖像,本文算法在識別率上還有待提高.同時由于真實圖像在成像過程中受相機CCD感光和CFA插值等因素影響,特別是某些真實圖像在拍攝時,相機與場景存在較劇烈的運動,導(dǎo)致拍攝的真實圖像較模糊,本文算法在識別這些圖像時會受一些影響.但實驗結(jié)果表明,本文算法對計算機生成圖像和真實圖像具有較好的識別率.
綜上所述,本文提出了一種鑒別計算機生成圖像和真實圖像的有效方法,由于計算機生成圖像和真實圖像二者的成像過程不同,所以二者在紋理上有較大差異,而圖像梯度和LBP特征在描述圖像紋理復(fù)雜性方面具有優(yōu)勢,因此本文基于計算機生成圖像與真實圖像的紋理進(jìn)行特征值的提取,先得到圖像的特征信息,然后利用SVM分類器進(jìn)行分類.實驗結(jié)果表明,本文提出的算法可切實有效地鑒別出計算機生成圖像與真實圖像,在實際應(yīng)用中前景廣闊.