石致勤
搞 要:針對圖片編碼過程與JPEG圖像的信息隱藏的各種方法作了介紹,通過對比,得出基于人類視覺系統(tǒng)的J-PEG圖像的信息隱藏方法更具有一定的優(yōu)點,這種方法以人類視覺系統(tǒng)的模型面產(chǎn)生的量化表作為根本,直接修改JPEG圖像交換格式所包含的量化表的系數(shù),在一定的人類視覺系統(tǒng)模型生成的量化表系數(shù)范圍之內(nèi),把信息隱藏起來。這種方法可以單獨使用,也可以與其他算法相結(jié)合使用以達到更好的效果。由于該文所研究的算法沒有修改圖像內(nèi)容,所以蔽性較好、提出方便,不影響圖片質(zhì)量。
關(guān)鍵詞:圖片 信息隱藏 量化表
中圖分類號:TP391 文獻標識碼:A 文章編號:1674-098X(2013)03(a)-00-02
隨著社會的進步,信息技術(shù)也不飛速發(fā)展,在圖片技術(shù)領(lǐng)域內(nèi),人們對于圖片的處理技術(shù)也有了很高的發(fā)展。圖片中的信息隱藏技術(shù)也是一項非常常用的技術(shù)。那么,圖像的信息隱藏正是運用了人類感覺器官的不敏感性,根據(jù)多媒體數(shù)字信號處理的要求,把本身存在的多余的信息隱藏起來,放入主信號中,這樣就會保持了圖片的更高的利用價值,這樣,里面的信息就不會被外露,也不會察覺或注意到,當然,圖片信息的利用價值不會改變。該文主要是以JPEG格式的圖片為研究對象進行說明,因為這種格式在圖片中最為常用,用JPEG圖像作為載體進行信息隱藏具有更大的隱蔽性,不會被發(fā)現(xiàn),應(yīng)用價值也會更高。目前,以JPEG圖像為載體信息隱藏方法已經(jīng)發(fā)展到多種,結(jié)論得出,運用我些發(fā)明的算法進行信息隱藏,一般選擇在圖像多個分塊的DCT域中,一般為大小為8×8,因此,這種圖片的信息隱藏與提取都是較為復(fù)雜的。該文的研究是提出了把信息放入位置不同的圖片的方法。把所以隱藏的信息嵌入JPEG圖像的量化表中,這種方法運用起來更有科學(xué)性,由HVS模型生成的量化表進行有效的控制。這種隱藏技術(shù)得到了認可,主要是因為把信息隱藏入之后,其像素基本沒有失真,另外,進行提取信息也不需要進行復(fù)雜的圖像解碼,從而達到快速而簡單的效果。
1 基礎(chǔ)知識
該文所研究的JPEG是靜止壓縮圖像的標準,是由ISO/IEC聯(lián)合圖像專家組所特別指定的。這種圖像適合用于連續(xù)色調(diào),其中包括灰度和彩色兩種。
1.1 JPEG的三種要素有哪些
包括三種基本要素,這是特指JPEG標準:第一種要素是編碼器,它是編碼處理的實體。輸入與輸出有很大的區(qū)別,把數(shù)字原始圖像與不同的的定義兩種同時輸入,就會根據(jù)一定的指定命令輸出所需要的壓縮圖像數(shù)據(jù)。第二種要素是解碼器如上所說,編碼器是編碼處理的實體,當然,解碼器則是是解碼處理的實體了。把上一個得出的壓縮圖像數(shù)據(jù)再次輸入,同時輸入一些不同定義的表格,則再次輸出重新組合的指定圖像數(shù)據(jù)。第三種要素是交換格式,在A、B兩個環(huán)境下,或者多個環(huán)境下,通過交換再產(chǎn)生的數(shù)據(jù),交換模式是壓縮圖像數(shù)據(jù)的表示,在編碼中所使用的所有表格也都表示出來。
1.2 JPEG的編碼解讀
JPEG格式的編碼包括三個重要的過程。
第一,色域轉(zhuǎn)換。YCrCb顏色模型是JPEG格式圖像所經(jīng)常使用。具有一定的固定公式,從RGB到Y(jié)CrCb之間的轉(zhuǎn)換公式作如下表達。
Y=0.299×R+0.587×G+0.114×B
Cb=m.1687×R-0.3313×G +0.5×B+128
Cr=0.5×R-0.4187×G-0.0813×B+128
第二,DCT變換。這種變換就是指離散余弦變換,整個圖像依次從上到下,從左到右分為64塊,8×8的一個正方形,構(gòu)成圖像塊,對每個塊都要進行離散余弦變換即DCT變換。在編碼時JPEG用的是Forward DCT(FDCT),而在解碼時所用的則是Inverse DCT(IDCT),兩者
不同。
第三,量化。從第一步所說的離散余弦變換的8×8個空間頻率振幅值,再對這一空間進行分層量化操作。在數(shù)據(jù)中分別除以量化表里對應(yīng)的值,出現(xiàn)小數(shù)時四舍五入。量化表的取得有兩種方法,一種是自己定義的,另一種是用JPEG標準文件中推薦的缺省量化表。比如說分別用于亮度與色度的缺省量化表,就是標準文件文件中所推薦。
離散余弦系數(shù)的量化是對壓縮比中最重要的部分,也是對于壓縮比與關(guān)系到圖像質(zhì)量的最主要部分。在排序與編碼時,把上面所量化后的離散余弦系數(shù)再按照Zig-zag排序的方法進行再一次編排,將把8×8的這樣的一個正方形陣形變成l×64的矢量,空間發(fā)和一了變化,再對離散余弦系數(shù)再次編碼。
2 以往QTM算法及不足
我們知道,Jpeg-Jsteg的方法隱藏方法中,其中所隱藏的信息容量非常小,是一個很大的弱點,而有科學(xué)家對此時行了再次研究,對這種方法進行改進,得出另一種算法,也就是QTM算法,全名是quantization tablemodification算法,這樣就大大提高了信息隱藏的數(shù)量。QTM方法為什么會大大提高信息的融與量呢,原來,它是把JPEG缺省量化表作了修改,便于輸入更多的信息。在修改之后,在表中的中頻位置上其系數(shù)全部變?yōu)閘,并在修改后的8×8的離散余弦系數(shù)中時面塊的中頻區(qū)域離散余弦系數(shù)的每個中最后面兩位也轉(zhuǎn)入了所隱藏的信息,這樣,容量就會變
大了。
3 該文算法
通過上面我們已經(jīng)知道了QTM算法是對JPEG量化表進行科學(xué)地修改,這樣可以讓量化后的離散余弦系數(shù)更多的輸入信息。但是,這種算法也有一定的缺點,比如,經(jīng)過修改后的量化表中頻系數(shù)都變成了1,這一位置很容易被所謂的黑客不費吹灰之力就可以功破,沒有安全性可言。
當然,由于用了修改后的量化表之后使圖的像的壓縮率再次變小,而且這種算法是JPEG缺省的最化表,致使圖像質(zhì)量受到損壞,質(zhì)量變差了,影響效果也會變差??墒窃撐牡乃惴▍s沒有這樣的缺點,用的是直接通過修改量化表,把把隱藏在量化表中直接隱藏,效果較好。
3.1 在人類視覺系統(tǒng)的基礎(chǔ)建立的量化表的運用
在上文中提到了JPEG標準規(guī)定缺省的量化表,我們對其有了一定的了解。這兩個量化表它是運用了亮度與色差的信號。這兩個量化表在一般應(yīng)用中有著較好的效果。上面提到的Jpeg-Jsteg算法和QTM算法都是在這個基礎(chǔ)上的。
但是這兩個缺省量化表具有一定的缺點,那就是它只是局限于720×576的辨率,最適合的觀察距離為屏幕高的6倍,除了這個距離效果不好,而且只是想到了肉眼窄間頻率敏感特性,但是對于肉眼視覺系統(tǒng)的掩蔽效應(yīng)沒有考慮充分。
所以,這兩種算法隱藏信息后卻讓圖像質(zhì)量大打折扣。所以該文所說的算法充分考慮了人的視覺系統(tǒng),運用人類視覺模型構(gòu)造的量化表來把信息進行隱藏,起到了很好的效果。
人類視覺系統(tǒng)是非常復(fù)雜的,既有生理方面的,也有神經(jīng)方面的,因此,視覺在人體中占有生要的位置,但是人們對眼的活動機理還是沒有完全研究透徹,也沒有完全沒事悉。但是人們對眼的研究還在進行中,并總結(jié)和建立了很可行的基本的視覺模型,這是一個巨大的進步。
3.2 該文研究的信息隱藏算法介紹
3.2.1 嵌入容量的大小要根據(jù)HVS生成的量化表來進行進一步確定
圖像中隱藏信息這后,還要保證圖像的質(zhì)量,要做到這一點,就要做到隱藏信息后量化表的每一位的值全部要小于由HVS生成的量化表中所一一對應(yīng)位置的
值數(shù)。
我們事行得出人類視覺系統(tǒng)的量化表,再把本表中能夠承受的容量分在兩個區(qū)中,比如說,本系數(shù)最小值為36,那么,4位二進制數(shù)可以承受,嵌入它,其余的與QTM算法所得的量化表中系數(shù)的最小值為16,能承受3位二進制數(shù),嵌入之。由此,圖像的質(zhì)量得到了保證,還擴大了信息的
容量。
3.2.2 生成所隱藏信息的方法
隱藏信息之后,需要調(diào)出時應(yīng)該如何來操作呢,這就要把隱藏的信息首先要轉(zhuǎn)換成一個一維二進制比特的序列。為了讓其更為安全,可以把比特序列打亂,需要一個密鑰Key,產(chǎn)生偽隨機位置序列,這樣,就不容易被被解。再把原來的序列用偽隨機序列為引為索引,把打亂的序列進行重新排列,再嵌入信息序列。
3.2.3 如何把信息嵌入圖片
我們在前面已經(jīng)了解了生成所隱藏信息的方法,根據(jù)上面的知識點,我們可以做到,把隱藏4位二進制數(shù)的15組中的2組放入圖片中,把這個長度的信息隱藏
起來。
先將二進制序列置亂,然后把它按順序分成組,共分成13組,前52比特以4比特為一組,后面的147比特分成49組,每組是3比特。再把每組二進制的數(shù)變?yōu)槭M制的數(shù),這就有了待嵌入序列T。把所要隱藏信息長度值再變?yōu)?位二進制的數(shù),再把高4位和低4位都變成十進制數(shù) T1和T2。這時候就是三個數(shù)T1、T2和T,再按這個順利生成一個由64個十進制數(shù)組成的序列Tw。這樣,這種算法下,199比特信息隱藏不成問題,如果要少于199比特,在后面加一個0就可以了。
該文所研究的嵌入,在本質(zhì)上是把信息的量化表生成過程給隱藏了,把原先的8×8陣形設(shè)定為l,再把這樣一個陣形用Z字形進行排序,從而成為一個1×64的序列I0。再把I0序列倒過來,形成一個新的序列Il。再在基礎(chǔ)上形成一個嵌入隱藏信息的序列I',是用加性嵌入的方法開成的,所以,得出一個公式l'=I1+2*Tw。
3.3 如何提取所需要的信息
對于那種量化表是JPEG圖像交換格式中的信息提取就很簡單,不需要對PEG圖片進行解碼,就能很容易的得到JPEG圖片中的所要的量化表。首先讀入圖像,在碼字FFDB后就是本圖像的量化表。當我們第一步提取了圖像的量化表之后。
接下來再從最末兩位得到嵌入信息的長度信息,我們用L來表示,把把其他的系數(shù)-1,得到的差÷2,這樣就有了嵌入信息的十進制表示,再變成二進制。
取L位后,再根據(jù)密碼經(jīng)過反置亂得到最先的比特序列,最后一步,把這個一維二進制比特序列變?yōu)樽畛醯木哂性瓉硪饬x的信息就算是成功提取了。
4 實驗分析與結(jié)果
我們經(jīng)過上面的討論,解決了問題,但是得到的結(jié)果有效性如何呢,這需要我們來檢測一下,為此,我們做了大量的實驗。我們選擇了四張常用的灰度圖圖片,分辨率為256×256我們?yōu)樗麄兎謩e命名為Lena、Baboon、Boat、Girl,在這四張圖片中,我們分別放進199 bit,128 bit,64 bit和32 bit與原始圖像比較的峰值信噪比(PNSR)的值。
我們可以看出,在放進199 bit后名叫Lena的圖像沒有顯著的變化,這是我們用肉眼所觀察的,如果值都高于85 db,那么,圖片的不可察覺性就很明顯了。
通過該文算法,與QTM算法進行比較后,我們可以看出,所隱藏信息后圖像大小和圖像質(zhì)量都有了很大的提高,表現(xiàn)在壓縮比高,圖片的質(zhì)量也大大提高。
下面我們再對算法魯棒性測試,無論什么樣的攻擊軟件都不能能把JPEG交換格式的量化表做了篡改,所以,即使對圖像進行了改動,里面的信息是不會被修改的,很安全。
當然,該文的算法還有一個更大的好處,這個好處莫過于是把圖像里面的信息很方便、及時、簡單的提取出來,直接可以把JPEG交換格式的量化表取出就來就達到了取得信息的目的了,而普通的算法就沒有這樣的優(yōu)點,還要進行很多的分塊、DCT變換等。不需要轉(zhuǎn)換就會省去很多時間與技術(shù),所以提出信息就方便得多。
5 結(jié)語
我們以JPEG為例向大家介紹了一種圖片信息隱藏的算法,這種算法較以往的算法更為簡單,它是根據(jù)人類視覺系統(tǒng)的JPEG圖像的信息隱藏算法,更具有人
性化。
這種算法隱藏的圖像更比普通算法有著很大的優(yōu)點:
第一是,把信息嵌入到了JPEG交換格式的量化表中,更具有隱秘性;
第二是由于根據(jù)人類視覺系統(tǒng)設(shè)計的,信息嵌入后,具有不可觀察性,所以圖片的質(zhì)量不受影響。
但是也有缺點,就是所嵌入的信息不多,如果與普通算法相結(jié)合會有更多的
優(yōu)點。
參考文獻
[1] 姚曉枝.基于兩種不同載體的信息隱藏方法的研究[D].上海:復(fù)旦大學(xué),2008.
[2] 劉化波.一種基于JPEG和HVS的水印方法[D].大連海事大學(xué),2004.
[3] Wang Chingyang,Lee Shiuhming,Chang Longwen.Design visual system.2001.
[4] 邱應(yīng)強,程義民,謝春輝,等.一種基于JPEG壓縮圖像的信息隱藏方法[J].電路與系統(tǒng)學(xué)報,2008,13(5).
[5] 劉光杰,戴躍偉,孫金生,等.用于JPEG圖像的高容量信息隱藏算法[J].信息與控制,2007,36(1).
[6] 楊貴彬.JPEG圖像信息隱藏檢測方法的研究[D].北京工業(yè)大學(xué),2009.
[7] 徐志杰,蔡曉霞,陳紅.基于LSSVM的JPEG圖像信息隱藏盲檢測算法[J].火力與指揮控制,2010,35(8).
[8] 張新鵬,王朔中.JPEG圖像中的安全密寫方案[J].電子與信息學(xué)報,2005,27(11).