一種引入輔助像素的高效信息隱藏方法與流程
2023-06-18 06:53:21 3
本發明涉及一種數據傳輸的方法,特別涉及一種引入輔助像素的高效信息隱藏方法,屬於通信(如數據通信技術等)領域。
背景技術:
數據傳輸和圖像處理是目前通信領域的重要研究課題。隨著科技的發展,人們對高解析度圖像的需求越來越大,數據壓縮勢在必行。在不影響圖像正常業務的情況下,如果能在其中隱藏一些秘密數據進行傳輸,則相當於進行了一定的數據壓縮。
信息隱藏,也可稱為隱寫,可分為空域信息隱藏和變換域信息隱藏等,作為衛星隱蔽通信的新手段,可以將一些重要數據(如遙感衛星獲得的機密地物信息、衛星自身產生的數據、地面上傳的數據等)隱藏在衛星遙感數據中通過公開的衛星信道傳輸,在不增加傳輸速率的前提下達到隱蔽通信或提高傳輸效率的目的,為衛星通信提供一種安全的信息傳輸途徑。
空域隱寫方法通過修改載體像素值來隱藏秘密信息。其中,最具代表性的算法是最低有效位lsb替代法,該方法直接替換載體圖像像素的最低r位來嵌入信息,能夠得到較高的嵌入容量,但隨著容量的增加含密圖像質量下降明顯。為了提高圖像的視覺質量,有人提出基於lsb的改進方法,在保持同等嵌入量的情況下,提高了含秘圖像的質量。這類方法都是利用一個像素來隱藏多位秘密信息。另一類空域隱寫方法利用一個像素對(兩個像素)來完成信息隱藏,例如lsb匹配重訪方法(lsbmatchingrevisited,lsbmr)、基於方向調整的emd(exploitingmodificationdirection)隱藏方法以及fullyemd(femd)隱藏方法。femd方法在一個載體像素對(x,y)中可以隱藏一位n2進位(n∈n,n≥2)秘密信息,但其最大嵌入容量無法再增加。
femd隱藏方法需要在兩個像素組成的像素對中隱藏信息,能否在一個像素中隱藏同樣的信息,而且不容易破解,隱藏容量性能優於lsb隱藏方法和femd隱藏方法或者隱藏容量優於經典隱藏方法,回答是肯定的。
技術實現要素:
本發明解決的技術問題是:克服現有技術的不足,提供一種引入輔助像素的高效信息隱藏方法,不需要在一個像素對(兩個像素)中隱藏信息,在一個像素中就可以隱藏同樣多的信息,並且信息安全性好,可用於在各類數據(特別是圖像數據)載體中進行高效信息隱藏傳輸。
本發明的技術方案是:一種引入輔助像素的高效信息隱藏方法,步驟如下:
1)將隱含二進位秘密信息轉換為n2進位的秘密信息,每一秘密信息為s,s取值屬於集合{0,1,2,…n2-1},n≥2;
2)產生輔助像素值y,y為[y0,255-y0]內的正整數,其中y0=n/2取整;將載體圖像a中每個像素x與輔助像素y組成像素對(x,y),計算獲得函數值f=[(n-1)*x+n*y]modn2;
3)將f和秘密信息s進行比較,得到含密像素對(x』,y』);
4)若含密像素對(x』,y』)溢出,則調整得到新的含密像素對(x,y),然後重新嵌入秘密信息s;
5)重複執行步驟3)至步驟4),直至所有秘密信息s嵌入完畢;
6)將所有δy組成集合進行無損壓縮之後得到壓縮數據集合c0;
7)按順序產生[y0,255-y0]內正整數y=y0+1作為輔助像素y,繼續重複步驟2)至6)p次,得到壓縮數據集合c1,c2…cp,從c0,c1~cp選出數據長度最短的c,記下對應的優選輔助像素值y;其中p為整數,p=0表示不重複;
8)將所有x』組成的含密圖像a』、優選輔助像素y和壓縮數據集合c發送給接收端;
9)接收壓縮數據集合c,解壓縮得到δy集合,利用y得到輔助像素y』的集合,即y』=y+δy;
10)將含密圖像a』中的x』和含密輔助像素y』組成像素對(x』,y』);
11)對每個像素對(x』,y』),按照s=[(n-1)*x』+n*y』]modn2提取每個n2進位秘密信息;重複執行,直至n2進位秘密信息提取完畢;
12)將提取的n2進位秘密信息轉為二進位秘密信息。
n=2或4或8或16。
步驟3)的具體過程為:
3.1)將f和秘密信息s進行比較,如果f=s,則不改變像素對(x,y),否則按3.2)規則修改像素對;
3.2)搜索滿足f(x+δx,y+δy)=s的像素對(x+δx,y+δy),選擇其中修改量(δx,δy)最小的像素對作為含密像素對(x』,y』)。
步驟4)的具體過程為:調整得到新的含密像素對(x,y)的具體方法為:
本發明與現有技術相比的有益效果在於:
本發明在不增加實際像素和不改變載體數據量的情況下,提供了一種高效率的信息隱藏方法,引入了密鑰,增加了隱藏的秘密數據的安全性。
本發明與目前背景技術相比有下面幾點實質性不同及進步:
(1)該方法首先對圖像中每個像素引入輔助像素y,從而做到在每個像素中都能進行信息隱藏,克服了原來需要在兩個數據中進行信息隱藏的問題,提高了隱藏效率。
(2)該方法充分利用了輔助數據的最小修正量,基於修正值集合的無損壓縮長度進行優化,提高了輔助像素對進行隱藏的效率,取得了難以想到的隱藏效果。
(3)該方法與emd類隱藏方法相比,隱藏的同時具有密鑰y,增加了未授權的接收方破解現有秘密信息的難度,隱藏的同時具有保密的效果。
(4)該方法如果僅對圖像2個像素中的一個像素引入輔助像素y,則因為對原圖像的修改量小而提高載體圖像質量,如可以提高psnr值3db。
附圖說明
圖1(a)-圖1(f)為仿真用標準灰度圖像。
具體實施方式
在高速數據傳輸的同時,往往還同時傳輸其它低速數據或部分高速數據。除了傳輸圖像,還可能傳輸其它傳感器數據。本發明提供了一種利用信息隱藏技術進行數據傳輸的方法,具有大隱藏容量、高性能和低複雜度的特點,在太空飛行器工程中、地面信息搭載傳輸系統、各類圖像傳輸系統中具有實用價值。
實驗使用matlab2013a平臺,載體數據採用6幅512×512的標準灰度圖像,如圖1所示,秘密信息用偽隨機數發生器產生。如果需要算法具有更高的安全性,可以採用混沌序列或一些加密算法對載體進行預處理。
本發明一種引入輔助像素的高效信息隱藏方法,步驟如下:
1)把二進位秘密信息轉換為n2進位的秘密信息,每一秘密信息為s,s取值屬於集合{0,1,2,…n2-1},n≥2;n可取2,4,8,16之一
2)產生輔助像素值y,y為[y0,255-y0]內的正整數,其中y0=n/2取整;
將載體圖像a(大小為512*512,每像素8比特)中每個像素x和輔助像素y組成像素對(x,y),計算函數值f=[(n-1)*x+n*y]modn2;
3)將f和秘密信息s進行比較:
3.1)如果f=s,則不改變像素對(x,y),否則按3.2)規則修改像素對;
3.2)搜索滿足f(x+δx,y+δy)=s的像素對(x+δx,y+δy),選擇其中修改量(δx,δy)最小的像素對作為含密像素對(x』,y』);
4)若含密像素對(x』,y』)溢出,則按式(1)調整得到新的(x,y),然後重新嵌入秘密信息s;
5)重複執行步驟3)至步驟4),直至所有秘密信息s嵌入完畢;
6)將所有δy組成集合進行無損壓縮之後得到壓縮數據集合c0;
7)按順序產生[y0,255-y0]內正整數y=y0+1作為輔助像素y,繼續重複步驟2)至6)p次,得到壓縮數據集合c1,c2…cp,從c0,c1~cp選出數據長度最短的c,記下對應的優選輔助像素值y;p=0表示不重複;
本例中p=0;
8)將所有x』組成的含密圖像a』、優選輔助像素y和壓縮數據集合c發送給接收端;
9)接收壓縮數據集合c,解壓縮得到δy集合,利用y得到輔助像素y』的集合,即y』=y+δy;
10)將含密圖像a』中的x』和含密輔助像素y』組成像素對(x』,y』);
11)對每個像素對(x』,y』),按照式s=[(n-1)*x』+n*y』]modn2提取每個n2進位秘密信息;重複執行,直至n2進位秘密信息提取完畢;
12)將提取的n2進位秘密信息轉為二進位秘密信息。n2取4,16,64,256之一。
本發明性能仿真
使用峰值信噪比(peaksignaltonoiseratio,psnr),隱藏容量c及嵌入率e等指標來衡量隱藏算法的性能。對於一幅大小為h×w的8bit數字圖像,h、w為正整數;psnr定義如下:
式中,mse為原圖像與含密圖像之間的均方差,計算公式為
這裡xij,分別表示原始圖像和含秘圖像在(i,j)處的像素值。
隱藏容量、嵌入率提高百分比
t=(v2-v1)/v1*100%=(u2-u1)/u1*100%(2)
式中,v1表示對比方法的嵌入率,v2表示本發明的嵌入率;u1表示對比方法的隱藏容量,u2表示本發明的隱藏容量。
隱藏容量u:每像素(8比特)隱藏的比特數(bpp),如在z比特中隱藏q比特,則隱藏容量u=8*q/zbpp。
嵌入率v:相對隱藏容量或隱藏容量相對值v,隱藏的比特數與載體比特數的比值,如在z比特中隱藏q比特,則相對隱藏容量為v=q/z。
1)嵌入率和隱藏容量比較
femd方法中,參數n影響信息隱藏容量和嵌入率,本發明通過添加輔助像素並優化,能夠進一步提高嵌入率。
femd方法平均2個像素(每個用8比特,共16比特)中隱藏一個n2進位數,比特數為k=log2(n2);隱藏容量u1=8k/16=k/2bpp,嵌入率v1=k/16;
本發明平均1個像素(8比特)和1個輔助像素修改量d比特中隱藏一個n2進位數,比特數為k=log2(n2);隱藏容量u2=8k/(8+d)bpp,嵌入率
v2=k/(8+d),d<8;
表1給出了不同n值情況下,兩種方法隱藏容量和嵌入率對比結果,可以看出,兩種方法的隱藏容量u和嵌入率v均隨著n的增加而增加,當n取值從2增加到16時,femd方法的隱藏容量從1bpp增加到4bpp,本發明的隱藏容量從1.6bpp增加到4.9bpp;femd方法的嵌入率從1/8增加到1/2,而本發明方法的最小嵌入率從1/5增加到8/13,大於1/2。
本方法的最小隱藏容量和嵌入率相比femd提高23%-60%。這是因為對同一幅載體,輔助像素值y都相同,嵌入秘密信息後的輔助像素的編碼位數僅由其修改量決定,可以用(1+log2n)bit表示,比特數明顯小於8比特。
表1不同n值情況兩種方法的隱藏容量u和嵌入率v
註:隱藏容量u和嵌入率v計算時沒有考慮優化壓縮,考慮優化壓縮後嵌入秘密信息後的輔助像素的編碼位數僅由其修改量決定,根本不用(1+log2n)bit表示,平均比特數遠遠小於載體8比特,壓縮後總比特數可能減少數倍到100倍,甚至達到成千上萬倍,如果輔助像素y的修改量=0的話,輔助數據壓縮數據量很小,相當於d=0。隱藏容量甚至可以達到原來的2倍。
2)psnr比較
為了衡量本發明在圖像質量方面的改善程度,表2給出了不同嵌入率v情況下,本發明和femd方法分別獲得的圖像質量。整體來看,相同或較高嵌入率或隱藏容量情況下,本發明的psnr均高於femd方法,如在相同嵌入率(1/2)時,平均psnr從34.84db提高到41.97db,平均改善7.13db。
另外,即使在嵌入8/13(大於1/2)秘密信息時本發明的psnr仍然高達35.71db,表明該方法是一種高效的信息隱藏算法,而且輔助像素值作為密鑰可以保證秘密信息的安全性。
表2不同嵌入率時兩種方法psnr(db)
3)與其他同類方法進行對比
為了將本算法和其他同類方法進行對比,以lena圖像隱藏效果做比對,本發明可以實現更多不同嵌入率的信息隱藏,而且本發明的psnr均優於lsb方法,如n=2時,psnr至少增加2.0db。
圖像質量改善的原因在於,本發明通過添加輔助像素能夠大幅提高信息嵌入率,相比femd方法,在嵌入同比例秘密信息時,本發明需要使用的像素對比例降低,因而對載體的修改率減小。
總之,本發明提出了一種引入輔助像素的高效信息隱藏方法,隱藏容量與原始數據的類型無關,可以是圖像數據,也可以是其它數據,隱藏量始終固定,具有大隱藏容量和信息安全性,且易於軟硬體實現。其特點在於:該方法通過輔助像素的引入以及數據優化,實現了秘密信息和密鑰的聯合處理,接收端能完全恢復秘密信息和高質量恢復原始數據。
該方法可以在原始圖像數據的每個像素中進行信息隱藏,提高了隱藏效率,突破了目前方法在一個像素對(兩個像素)中隱藏的限制,可對任意圖像達到或超過1/2的隱藏容量,隱藏容量為1/2時恢復載體圖像psnr超過41db,性能優於典型隱藏方法如lsb和femd隱藏方法。
本發明未詳細說明部分屬本領域技術人員公知常識。