劉 婷,梁文龍
(湖南信息職業(yè)技術(shù)學院,湖南 長沙 410200)
隨著科技的不斷進步與多媒體技術(shù)的快速發(fā)展,人類社會已經(jīng)步入高速發(fā)展的時代。多媒體技術(shù)的快速發(fā)展在很大程度上改變了人們的生活方式,眾多的多媒體資源豐富著人們的生活。對于數(shù)字圖像的研究也越來越多,大家對圖像的質(zhì)量的要求也越來越高。但在介紹圖像壓縮編碼之前,首先考慮壓縮的原因。因為圖像信息量驚人,舉例來說:一張A4大小的照片用中分辨率掃描儀進行真彩色掃描,可以得到數(shù)據(jù)量為30兆左右,一般比較大。如今,在互聯(lián)網(wǎng)上,基于字符界面的傳統(tǒng)應用逐漸可以被瀏覽圖像信息的互聯(lián)網(wǎng)所取代?;ヂ?lián)網(wǎng)雖然方便,但也帶來了一些問題:圖像信息數(shù)據(jù)量過大,本就緊張的網(wǎng)絡帶寬變得更加不堪重負。因此,大量的圖像信息會對內(nèi)存的存儲容量、通信干線通道的帶寬和計算機的處理速度造成很大的壓力[1-2]。而且,僅僅通過增加內(nèi)存容量、提高通道帶寬和計算機處理速度是無法解決這類問題的。這時候需要考慮使用圖像壓縮了。壓縮的理論基礎(chǔ)是信息論。從信息論的角度來看,壓縮就是去除圖像信息中的冗余,從而保留不確定的信息,去除確定的信息,即用更接近信息本質(zhì)的描述代替對圖像的描述。原始冗余圖像信息,圖像壓縮通常是通過改變圖像的表示來實現(xiàn)的,所以壓縮和編碼是密不可分的[3-4]。
在圖像壓縮中,至少有兩個篡改研究的理由對檢測二次壓縮的注意,一是二次壓縮常常造成圖片篡改,例如圖片中的一小塊圖片被復制到一個目標圖片中產(chǎn)生一個新的組合圖片,如果原始圖以及目標圖是JPEG圖片,分割的圖片應該要進行圖片壓縮處理,因此追蹤二次壓縮的途徑;二是一些JPEG隱寫的片段可能產(chǎn)生二次壓縮圖片[5-6]。可以將每個區(qū)塊進一步分割,稱為像素或像點,像素是構(gòu)成圖像的最小單位。對于數(shù)字圖像來說,每一個像素作為一個取樣點,有一個對應的取樣數(shù)值。這樣可以看出,圖像分割越細,像素數(shù)越多,取樣點越多,圖像清晰度越高;反之,像素數(shù)越少,圖像清晰度越低。實際上,對圖像壓縮處理,就是對圖像區(qū)塊的數(shù)據(jù)、像素的數(shù)據(jù)進行壓縮處理[7-8]。
在本論文中,研究了一種使用相同量化表壓縮檢測雙壓縮的方法;由于在JPEG壓縮與解壓縮過程中,會產(chǎn)生量化誤差,截斷誤差以及取整誤差,一些JPEG的DCT系數(shù)將可能會被修改,得到的二次壓縮圖片可能與單次壓縮圖片的系數(shù)有些不同。而且,當JPEG圖片一次又一次的重壓縮,兩次壓縮階段中的不同DCT系數(shù)的數(shù)量會單調(diào)性的減少;測試方法是基于采取一個隨機策略,隨機對一個壓縮測試圖片的DCT系數(shù)進行任意的加1或減1,通過使用這種策略,一個適當?shù)谋嚷蕬敃话l(fā)現(xiàn)。對于不同的圖片,這種普遍的適當比率將會產(chǎn)生一個動態(tài)的值域,可以用來區(qū)分一次壓縮還是二次壓縮,而且如果選擇了一個適當?shù)谋嚷剩瑢τ跈z測三次壓縮或四次壓縮也是有效的。
在本文開始部分分析了在使用相同量化表壓縮時的一些特征。
(1)相同量化表壓縮,Dn>Dn+1,呈現(xiàn)下降趨勢;其中Dn是圖片A與從A壓縮成B的圖片中對應位置的DCT系數(shù)的數(shù)量統(tǒng)計。
(2)如不同量化表C1相對會大(實驗中相同量化表C1為 0.036 8,其中使用的質(zhì)量因子為90,不同量化表C1為0.247 6,其中一次壓縮使用的質(zhì)量因子為90,再次壓縮使用的因子為75;其中C1=Dn/Sn;Sn為原始圖片中非零DCT系數(shù)的值的統(tǒng)計。
(1) 在進行解壓縮圖片J到空間域,然后用相同的量化矩陣壓縮成J′,D為J與J′中不同JPEG系數(shù)的數(shù)量統(tǒng)計。
統(tǒng)計的MATLAB算法如下:
function DnNumber=Dn(J1,J2)
DnNumber=0;
[m,n]=size(J1);
for i=1:m
for j=1:n
if J1(i,j)~=J2(i,j)
DnNumber=DnNumber+1;
end
end
end
(2)隨機選取J′的DCT系數(shù)的修改比例,針對每個隨機選擇的系數(shù)任意的增加或減少1,然后熵編碼修改的JPEG系數(shù)生成圖片Jm′
把修改比例稱為mpnc,(每個非零JPEG系數(shù)的修改系數(shù)的個數(shù));如mpnc為0.02,圖片總的像素點為10 000,則修改的像素為10 000×0.02=200個點會隨機加1或減1。
(3)解壓縮Jm′為空間域,用相同的量化表壓縮,我們得到JPEG圖片Jm′′,Dm為Jm′與Jm″中不同DCT系數(shù)對應位置的統(tǒng)計。
(4)重復第2—3步驟K次,注意在每次J’的JPEG系數(shù)被隨機的隨機選擇修改,但是應當修改的JPEG系數(shù)比例仍然是相同的。
本文中mpnc修改比例的選擇主要通過實驗來得到的,從0開始,步長為0.01,一直到0.12的值,求出此范圍中AR的值,可以得出AR最高一般出現(xiàn)在mpnc為0.018的時候最高。找到一個適當?shù)男薷谋壤蛊鋯未螇嚎s時Dm的平均值會小于D,二次壓縮時不小于D。
通過相關(guān)實驗,主要是根據(jù)實際圖片進行壓縮來進行測試,當Dm大于等于D時,判斷為二次壓縮圖片,當Dm小于D時,判斷為一次壓縮圖片。
測試數(shù)據(jù)以及測試場景:
(1)測試數(shù)據(jù)為447張ucid的圖;
(2)橫坐標為相同量化表壓縮冊數(shù);
(3)縱坐標為不同次數(shù)壓縮之間對應位置DCT系數(shù)的不同值的統(tǒng)計數(shù)目的平均值;質(zhì)量因子為70∶5∶90進行對應的選取。
檢測使用相同量化矩陣的二次壓縮,本文設(shè)計了一種基于觀察的方法,在重壓縮過程中使用相同的量化矩陣進行多次壓縮操作,連續(xù)兩次壓縮版本之間的DCT系數(shù)不同數(shù)量呈單調(diào)遞減狀態(tài);通過實驗可以得出本文檢測的方法可能不是統(tǒng)計效應;本文的檢測無法提示二次壓縮的圖片是否被篡改。
預估JPEG壓縮歷史在圖像過程、圖像篡改的應用已經(jīng)越來越受到關(guān)注。在本文中,主要采用了直方圖因子的統(tǒng)計特性來估計JPEG圖像壓縮歷史。在統(tǒng)計場景中,對于沒壓縮的圖片,隨著直方圖bin索引的增加,直方圖因子統(tǒng)計的值反而減少。然而,它限制了一個本地的最大值,從而使它不在增加;基于這特性,也可以估計每次壓縮的量化步長。
該方法主要是通過對直方圖因子的處理來估計量化步長。直方圖因子估計JPEG壓縮情況,其步驟如下:
(1)原圖的序列an,經(jīng)過步長為q量化后的序列為bn,bn= [an/q] ×q;
(2)定義求模的公式F(v) = {u|u∈ N, mod(v,u)=0}
(1)
其中g(shù)(x,F(bn))=1 (當x屬于F(bn)集合時,其他為0);
步長的估計:
(2)
在進行本實驗時,所需實驗條件:使用圖片大小為512×512/256×256;圖片使用灰度圖、彩色圖;設(shè)定質(zhì)量因子設(shè)為80/90/100。
當?shù)玫降闹狈綀D為遞減且前后柱子的相差趨近為0,那么圖片未被壓縮過;如果得到的直方圖從q等于某個值開始,開始比較紊亂的變化,那說明圖片已被壓縮過,且q為h(f(x))==1時的最大值處;圖中的q為4時,達到最大值。
隨著數(shù)字應用的快速發(fā)展,信息傳播迅速增長,圖像傳播的數(shù)量不容低估。隨著不同類型數(shù)碼相機和各種圖像編輯軟件的不斷出現(xiàn),數(shù)字圖像的應用非常廣泛,且作為信息的載體,它被廣泛應用于各個領(lǐng)域。經(jīng)過對JPEG圖像壓縮理論及相關(guān)算法的學習,可以對圖片處理有了很深的理解,從壓縮操作讀取圖片像素→DCT操作→量化處理到解壓縮操作反量化→反IDCT的操作的理解。本文主要提出了一種方法能檢測使用相同量化表壓縮的二次圖片,其中算法主要是基于用相同量化表經(jīng)過一次又一次的壓縮的過程以及不同JPEG系數(shù)的數(shù)量,并在一定程度上恢復圖像在壓縮過程中丟失的細節(jié)信息,通過實驗表明,本文提出的方法是一種有效的JPEG圖像檢測二次壓縮的方法。