劉娟妮,周 詮
(西安空間無線電技術研究所空間微波技術國家重點實驗室,陜西西安 710100)
SMVQ索引分類編碼無損信息隱藏算法
劉娟妮,周 詮
(西安空間無線電技術研究所空間微波技術國家重點實驗室,陜西西安 710100)
為了增加矢量量化壓縮域信息隱藏方法的容量,提出一種基于狀態碼書排序的邊緣匹配矢量量化索引分類編碼無損信息隱藏算法.首先在進行邊緣匹配矢量量化壓縮時,利用提出的狀態碼書排序方法減小編碼后的索引值,增加可嵌入秘密信息的索引比例,然后根據索引表的分布特點將小于8的索引分為4類編碼,最后將秘密信息隱藏在這4類索引編碼后的碼流中.實驗結果表明,在圖像質量與矢量量化壓縮圖像相同的情況下,該算法的隱藏容量優于現有算法,與基于邊緣匹配矢量量化索引殘差編碼的無損信息隱藏算法和利用鄰近狀態碼書映射的無損信息隱藏算法相比,嵌入效率平均提高了45%和488%.
信息隱藏;矢量量化;邊緣匹配;狀態碼書排序;索引分類編碼
信息隱藏技術[1]是近年來國內外信息安全領域的研究熱點,它可以在不增加通信鏈路的情況下,將秘密信息隱藏在文本、圖像、視頻[2]等載體數據中,使得含密載體與原始載體的差異無法被人類視覺感知系統察覺,避免引起視覺感知偵測,為秘密信息的安全傳輸提供可靠保證[3].
信息隱藏方法可以分為3類:空間域方法、變換域方法和壓縮域方法.空間域方法直接對載體像素進行修改來嵌入秘密信息;變換域方法[4]通過修改圖像的變換域系數進行信息隱藏;壓縮域信息隱藏方法將秘密信息隱藏在壓縮碼流中,可以提高傳輸效率.基于矢量量化(Vector Quantization,VQ)的信息隱藏方法近些年受到廣泛關注[5-12].2005年,文獻[6]提出基于改進的快速相關矢量量化(Modified Fast Correlation VQ,MFCVQ)無損信息隱藏方法,用門限來判斷鄰塊和當前塊是否相近作為信息隱藏的依據,在可以隱藏的情況下只傳輸索引的相對位置,起到了壓縮索引碼流的作用,但是嵌入容量較小.2009年,文獻[7]引入聯合鄰近編碼(Joint Neighboring Coding,JNC)技術,分別計算當前塊與左鄰塊及上鄰塊的索引殘差,利用JNC對殘差編碼實現秘密信息的無損隱藏,相比前面的方法提高了容量.2010年,文獻[8]對文獻[7]的方法進行改進,提高了隱藏容量,但是編碼后的碼流也隨之明顯增加.2011年,文獻[9]進一步改進文獻[7]的隱藏方法,將鄰塊的使用數目增加為4個,同時改進了索引編碼方法,抑制了比特率的明顯增加,但嵌入效率有待提高. 2013年,文獻[10]在文獻[9]的基礎上進行改進,用邊緣匹配矢量量化(Side-Match Vector Quantization,SMVQ)代替VQ壓縮,利用SMVQ更加集中的索引分布和索引殘差編碼方法來提高隱藏方法的性能.同年,文獻[11]提出的無損信息隱藏算法利用鄰近狀態碼書映射(Adjoining State-Codebook Mapping,ASCM)方法來獲得索引表,為改善VQ壓縮域信息隱藏算法的性能提供另一種思路.
目前,VQ壓縮域信息隱藏方法[5-12]主要研究的是如何在獲得高嵌入容量的同時具有較低的比特率,對改善VQ圖像質量關注的不多,在某些對圖像質量要求不高的場合(如對地面指定位置監控),VQ仍然是一種有效的壓縮方法.基于此,筆者提出一種基于狀態碼書排序(State-Codebook Sorting,SCS)的SMVQ索引分類編碼無損信息隱藏算法,借助排序后的狀態碼書重新對圖像塊進行編碼來減小索引值,增加可嵌入秘密信息的索引比例,然后結合索引分類編碼就可以在降低碼流的同時增加嵌入容量.實驗結果表明,該方法有效地增加了圖像的隱藏容量,降低了碼流比特率,使得嵌入效率得到提升.
1.1算法原理
以基于狀態碼書排序的SMVQ索引表為載體,根據索引出現概率將可嵌入秘密信息的索引分為4類,在每類索引編碼時嵌入不同比特秘密信息.接收端根據索引類別指示符可以無損地提取秘密信息并無失真地恢復索引表,最終解碼得到載體圖像.算法流程如圖1所示,后續小節介紹算法的關鍵步驟.
1.2基于狀態碼書排序的SMVQ壓縮算法
1.2.1狀態碼書排序的提出及實現
自然圖像相鄰塊間的相關性很強,該特性在SMVQ壓縮方法中得到很好的利用,然而當圖像比較復雜時,預測結果就會變差,這說明用來編碼的狀態碼書不合適.為了解決這個問題,筆者提出SCS方法來改善SMVQ索引表的分布.如果圖像塊進行SMVQ編碼后索引值大于等于閾值T,則需要用SCS方法產生的新碼書重新編碼.

圖1 算法流程示意圖
SCS方法壓縮編碼時(第1行第1列圖像塊用VQ編碼,所用碼書稱為主碼書),首先用常規SMVQ算法進行壓縮,將得到的索引v和T進行比較.如果v小于T,則索引值輸出,否則按碼字均值對狀態碼書進行升序和降序排列,得到兩個新的狀態碼書,并且用這兩個狀態碼書重新編碼該圖像塊,得到兩個新的索引值v1和v2,再將它們和T比較.如果v1和v2中僅有一個小于T,則用該索引替換v;如果v1和v2都小于T,則用兩者中較小的一個替換v;否則,原索引v保持不變.這樣可以使更多的索引值分布在0附近.
上述SCS方法需要2 bit指示符來區分索引的4種情況.如果圖像塊進行常規SMVQ編碼的索引值小于T,則指示符設為“00”;如果圖像塊是用升序排列后的狀態碼書重新編碼,則指示符設為“01”;如果是用降序排列后的狀態碼書重新編碼,則指示符設為“10”;否則,指示符設為“11”,表示該索引值大于等于T而且用SCS方法也不能有效降低索引值.所以,前3種情況得到的索引值都小于T,只有第4種情況索引值大于等于T.
圖像解碼時(第1行第1列索引值用主碼書進行VQ解碼),首先判斷2 bit指示符,如果為“00”或“11”,則表明該索引值是用原始狀態碼書編碼得到的,應直接在該碼書中查表恢復圖像塊.如果指示符為“01”或“10”,則需要對狀態碼書進行相應的升序或降序排列得到新的狀態碼書,然后在該狀態碼書中查表恢復圖像塊.
1.2.2閾值選取
自然圖像的統計結果表明[12],常規SMVQ索引表中大多數索引取值小于8.圖2基于SCS的SMVQ索引分布結果也表明,測試圖像的大部分索引值分布在0到7之間.因此,文中將閾值T設置為8.

圖2 SCS方法的SMVQ索引分布圖
1.2.3索引改善分析
SCS方法可以增加獲得較小索引值的概率.表1的實驗數據表明了該方法減小索引值的有效性,其中M是狀態碼書大小.當M=512時,與常規SMVQ方法相比,在圖像質量相同的情況下,索引值改善比例平均為6.67%;當M=32時,圖像質量與常規SMVQ相同的情況下,索引改善更明顯,平均達到64.54%.這是因為狀態碼書越小,SCS方法得到的索引值小于T的概率越大.
1.3索引分類編碼原則
通過SCS方法獲得的索引表中大部分索引值小于8,且索引值越小,其出現的概率越大,因此根據索引出現概率進行分類編碼可以降低編碼位數,提高信息隱藏容量.標記為“11”的索引不隱藏秘密信息,直接將其轉換為二進制數進行傳輸,將標記為“00”,“01”或“10”這3類可隱藏秘密信息的索引值[0,7]按出現概率分為4類,并按表2方法進行編碼,具體如下(其中m取值3~8):

表1 圖像質量和索引改善百分比
(1)index=0時,記作第Ⅰ類,索引編碼為“00”,每個索引隱藏m bit秘密信息;
(2)index=1時,記作第Ⅱ類,索引編碼為“01”,每個索引隱藏m bit秘密信息;
(3)index=2和3時,記作第Ⅲ類,索引分別編碼為“10 0”和“10 1”,每個索引隱藏(m-1)bit秘密信息;
(4)index=4~7時,記作第Ⅳ類,索引分別編碼為“11 00”,“11 01”,“11 10”和“11 11”,每個索引隱藏(m-2)bit秘密信息;
索引分類編碼并嵌入秘密信息后的比特數為(m+2)bit,加上SCS方法本身產生的2 bit標志位就構成最終的含密碼流,共(m+4)bit.由此可知,含密碼流的結構為2位SCS索引類別指示符‖2~4位索引分類編碼結果‖m~(m-2)位秘密信息,“‖”表示連接符.
1.4秘密信息嵌入
首先,利用SCS方法對原始圖像進行SMVQ壓縮編碼,得到相應的索引表P.索引表的第1行、第1列作為種子區域,不嵌入信息,直接轉換為二進制數據傳輸.隱藏過程從第2行第2列開始,每次讀取2 bit SCS索引類別指示符,根據2bit指示符和表2的索引分類編碼原則進行信息隱藏:

表2 索引分類編碼方法
(1)若指示符為“00”,則編碼結果為:00‖索引分類編碼結果‖m位秘密信息;
(2)若指示符為“01”,則編碼結果為:01‖索引分類編碼結果‖(m-1)位秘密信息;
(3)若指示符為“10”,則編碼結果為:10‖索引分類編碼結果‖(m-2)位秘密信息;
(4)若指示符為“11”,則編碼結果為:11‖(Pi,j)2,其中Pi,j表示待編碼索引值,(Pi,j)2為對應的lb M位二進制數據.
當前索引編碼完成后,按Z字掃描順序讀取下一個索引并進行上述隱藏過程直至所有索引處理完畢.
1.5秘密信息提取
種子區域的碼流中沒有秘密信息,按lb N位截斷轉換成十進制數放入索引表的相應位置.非種子區域解碼時,首先讀取2 bit數據,即SCS索引指示符,根據2 bit指示符判斷隨后比特流中是否含有秘密信息:
(1)指示符為“00”,“01”或“10”:表明該索引編碼中含有秘密信息,接著讀取2比特數據并記為s1.
(1.1)若s1=00,則恢復的索引值index=0,讀取隨后m bit添加到秘密信息序列.
(1.2)若s1=01,則恢復的索引值index=1,讀取隨后m bit添加到秘密信息序列.
(1.3)若s1=10,則需要繼續讀取1比特數據記為s2.當s2=0時,則恢復的索引值index=2;當s2=1時,則恢復的索引值index=3.然后讀取隨后(m-1)bit添加到秘密信息序列.
(1.4)若s1=11,則需要繼續讀取2比特數據記為s3.當s3=00時,則恢復的索引值index=4;當s3=01時,則恢復的索引值index=5;當s3=10時,則恢復的索引值index=6;當s3=11時,則恢復的索引值index=7.然后讀取隨后(m-2)bit添加到秘密信息序列.
(2)指示符為“11”:表明該索引編碼中不含有秘密信息,接著讀取lb M比特數據直接轉換為十進制數放入索引表的相應位置.
重復上述步驟直至所有碼流處理完畢,即可無失真地恢復秘密信息和索引表.
實驗采用6幅512×512大小的自然圖像,如圖3所示,在碼書訓練時圖像劃分為4×4大小的圖像塊.為了保證SMVQ解壓圖像質量和VQ相同,將狀態碼書和主碼書大小設為一樣,即M=N=512.秘密信息為隨機數發生器產生的二進制隨機數.隱藏性能的評價指標主要包括嵌入容量Cp,比特率Rb和嵌入效率e.隱藏容量計算方法為

其中,ni表示屬于表2第i類索引的個數.

圖3 測試圖像
比特率Rb=c/(H×W),單位為bit/pixel(bpp),H,W分別為圖像的高度和寬度,c為編碼后的總比特數.
嵌入效率e=Cp/c,表示圖像每像素嵌入的秘密信息比特數與每像素編碼所用比特數的比值,反映了傳輸過程中每比特平均攜帶秘密信息的能力,數值越大,表示嵌入方法越有效.
2.1隱藏性能
圖4給出了m分別取6~8時文中算法的信息隱藏結果.隨著m的增加,每幅圖像的隱藏容量和比特率都在增加,這是因為文中算法隱藏的秘密信息數由圖像中每類索引占的比例和每類索引嵌入的比特數決定,當索引比例一定時,隱藏容量隨著m的增加而增加.由比特率定義可知,當嵌入容量增加時,比特率也隨之增加.另一方面,當m取值相同時,隱藏容量隨著圖像的復雜程度變化,復雜圖像的容量比簡單圖像低,例如Baboon圖像,其隱藏容量比Airplane平均低44.6%.相比而言,比特率受圖像復雜程度的影響較小.

圖4 m取值不同時,文中算法的隱藏容量和比特率
2.2算法比較
為了驗證索引分類編碼隱藏算法的有效性,按照文獻[10]的索引殘差編碼方法用筆者提出的SCS算法獲得的SMVQ索引表進行仿真,其索引殘差編碼位數m=5時性能最優,同時,用相同的主碼書仿真文獻[11]的ASCM信息隱藏算法,其中SCI表示狀態碼書索引編碼的比特數.三者對比的實驗結果如表3所示.

表3 算法性能對比
從表3的數據分析可知,文中算法的隱藏容量最高,與文獻[10]的SCS算法相比,隱藏容量增加了1.0%~7.0%,比特率降低了0.3%~2.3%,嵌入效率平均提高了4.5%.與文獻[11]的ASCM算法相比,文中算法隱藏容量大幅提高,平均增加了48.8%,然而比特率也相應增加了3%.總體來說,除了比特率稍高于ASCM算法外,文中算法的其他性能指標均優于對比算法.
筆者提出一種基于狀態碼書排序的SMVQ索引分類編碼無損信息隱藏算法,利用狀態碼書排序方法降低SMVQ索引取值,再結合索引表的分布特點,通過索引分類編碼進行信息隱藏,提高了隱藏容量.對比實驗結果表明,筆者提出的算法嵌入效率均優于基于索引殘差編碼和ASCM的無損信息隱藏算法.
[1]LU T C,TSENG C Y,WU J H.Dual Imaging-based Reversible Hiding Technique Using LSB Matching[J].Signal Processing,2015,108:77-89.
[2]LI X B,ZHOU Q.Histogram Modification Data Hiding Using Chaotic Sequence[C]//2013 International Conference on Mechatronics and Automatic Control System.Berlin:Springer Verlag,2014:875-882.
[3]朱厲洪,周詮.衛星遙感圖像的魯棒無損數據隱藏傳輸算法[J].宇航學報,2015,36(3):315-323. ZHU Lihong,ZHOU Quan.A Robust Lossless Data Hidden Transmission Method for Satellite Remote Sensing Image [J].Journal of Astronautics,2015,36(3):315-323.
[4]張弢,慕德俊,任帥,等.利用內切球解析的三維模型信息隱藏算法[J].西安電子科技大學學報,2014,41(2): 185-190. ZHANG Tao,MU Dejun,REN Shuai,et al.Information Hiding Scheme for 3D Models Based on Skeleton and Inscribed Sphere Analysis[J].Journal of Xidian University,2014,41(2):185-190.
[5]LEE J D,CHIOU Y H,GUO J M.Lossless Data Hiding for VQ Indices Based on Neighboring Correlation[J]. Information Sciences,2013,221:419-438.
[6]YANG B,LU Z M,SUN S H.Reversible Watermarking in the VQ-compressed Domain[C]//Proceedings of the Fifth IASTED International Conference on Visualization,Imaging,and Image Processing.Calgary:Acta Press,2005: 289-303.
[7]CHANG C C,KIEU T D,WU W C.A Lossless Data Embedding Technique by Joint Neighboring Coding[J].Pattern Recognition,2009,42(7):1597-1603.
[8]WANG Z H,CHANG C C,TSAI P Y.Hiding Secret Data in an Image Using Codeword Imitation[J].Journal of Information Processing Systems,2010,6(4):435-452.
[9]鄧曉曼,潘志斌,喬瑞萍,等.面向索引圖的大容量信息隱藏方法[J].中國圖象圖形學報,2011,16(9):1583-1591. DENG Xiaoman,PAN Zhibin,QIAO Ruiping,et al.High Capacity Information Embedding Scheme in VQ-compressed Image Index Map[J].Journal of Image and Graphics,2011,16(9):1583-1591.
[10]王凌飛,潘志斌,鄧曉曼,等.利用邊緣匹配矢量量化和變率編碼的高嵌入效率信息隱藏[J].中國圖象圖形學報,2013,18(4):368-375. WANG Lingfei,PAN Zhibin,DENG Xiaoman,et al.Highly Efficient Information Hiding Using SMVQ-compressed Images and Variable Length Coding[J].Journal of Image and Graphics,2013,18(4):368-375.
[11]WANG W J,HUANG C T,LIU C M,et al.Data Embedding for Vector Quantization Image Processing on the Basis of Adjoining State-codebook Mapping[J].Information Science,2013,246:69-82.
[12]CHANG C C,NGUYEN T S,LIN C C.A Novel VQ-based Reversible Data Hiding Scheme by Using Hybrid Encoding Strategies[J].Journal of Systems and Software,2013,86(2):389-402.
(編輯:王 瑞)
SMVQ-index classified coding for lossless data hiding
LIU Juanni,ZHOU Quan
(National Key Lab.of Science and Technology on Space Microwave,Xi’an Institute of Space Radio Technology,Xi’an 710100,China)
In order to increase the embedding capacity of the VQ-based data hiding scheme,a lossless data hiding method based on the state-codebook sorted SMVQ-index classified coding is proposed.First,when doing SMVQ compression,the proposed SCS method is used to reduce the indices values and increase the embeddable indices percentage.Then according to the indices’distribution characteristic,the indices less than eight are classified into four cases.Finally,the secret data are embedded into the code stream of these indices.Experimental results indicate that,with the same image quality as that of VQ,the embedding capacity of the proposed scheme is superior to some that of previous schemes.Compared with the lossless data hiding scheme based on SMVQ-index residual value coding and the ASCM method,the embedding efficiency is increased by 4.5%and 48.8%respectively.
data hiding;vector quantization;side-match;state-codebook sorting;index classified coding
TP391
A
1001-2400(2016)05-0128-05
10.3969/j.issn.1001-2400.2016.05.023
2015-07-07 網絡出版時間:2015-12-10
國家自然科學基金資助項目(61372175);國家重點實驗室基金資助項目(9140C530403130C53192)
劉娟妮(1985-),女,西安空間無線電技術研究所博士研究生,E-mail:liujuanni0@126.com.
網絡出版地址:http://www.cnki.net/kcms/detail/61.1076.TN.20151210.1529.046.html