本發(fā)明屬于信息隱藏領域,具體涉及一種基于碼分復用的免定位圖可逆信息隱藏方法。
背景技術:
采用信息隱藏技術實現(xiàn)秘密信息的傳遞是現(xiàn)代隱蔽通信技術的重點研究方向之一。在軍事衛(wèi)星圖像、醫(yī)療圖像、遙感圖像、電子發(fā)票、法律證據(jù)照片等應用領域中,原始圖像的微小改變都可能產生巨大的負面效應,因信息隱藏造成原始圖像的任何永久性失真都是不被允許的。在原始圖像沒有明顯質量下降的情況下嵌入秘密信息,并且當秘密信息提取后,原始圖像能夠無損復原就顯得十分必要??赡嫘畔㈦[藏技術是指發(fā)送方利用載體圖像的信息冗余嵌入秘密信息,圖像的接收方通過特定的提取算法不僅能夠正確提取隱藏的信息,而且能夠無損的恢復原始圖像。因而,采用可逆信息隱藏技術實現(xiàn)可逆信息隱藏并對敏感圖像進行保護具有重要的應用價值和迫切需求。在保持載體圖像具有較高的視覺質量的前提下盡可能提升信息嵌入的容量,是可逆信息隱藏技術研究的主要問題。
在基于碼分復用技術的可逆信息嵌入過程中,有些載體向量無法可逆的嵌入信息,因此對于這些無法可逆嵌入信息的載體向量就不能實現(xiàn)嵌入信息的正確提取以及恢復原始圖像。因而,需要對不滿足信息嵌入條件的載體向量進行標注并形成定位圖,在進行信息提取時,根據(jù)定位圖確定信息隱藏的位置。定位圖作為附加信息需要和秘密數(shù)據(jù)一起嵌入到載體圖像中,定位圖的存在很大程度上降低了載體圖像的實際信息隱藏能力,而且,每次信息嵌入前,需要首先預估定位圖的大小才能確定一次嵌入信息內容的多少,也影響了信息嵌入的效率;在信息提取過程中也需要先提取定位圖,確定信息隱藏的位置,才能實現(xiàn)嵌入信息的正確讀取和原始圖像的無損恢復?;诙ㄎ粓D標注的可逆信息隱藏算法不但增加了信息隱藏的運算開銷,同時也難以實現(xiàn)嵌入信息的實時提取。如果能通過判別算法,在信息提取時即使不通過定位圖也能確定秘密信息隱藏的位置,將會在很大程度上提升載體圖像的實際信息嵌入能力(有效載荷),因而,研究一種免定位圖的可逆信息隱藏算法具有迫切的應用需求和實際意義。
技術實現(xiàn)要素:
針對現(xiàn)有技術中存在的不足,本發(fā)明提出了一種基于碼分復用的免定位圖可逆信息隱藏方法,通過在不滿足嵌入條件的載體向量中嵌入隨機數(shù)據(jù),使得信息接收方能夠通過計算載密向量與嵌入向量的內積,來檢驗目標向量是否嵌入了有效的秘密信息。
本發(fā)明采用下面的技術方案:
一種基于碼分復用的免定位圖可逆信息隱藏方法,包括:
在信息發(fā)送方:按設定順序選擇原始圖像中的像素構成多個載體向量,所述載體向量包括可逆嵌入載體向量和非可逆嵌入載體向量;采用嵌入向量搭載嵌入信息輸入至可逆嵌入載體向量中,采用嵌入向量搭載隨機數(shù)據(jù)輸入至非可逆嵌入載體向量中,生成載密向量和載密圖像;所述嵌入向量為采用基于碼分復用原理生成的相互正交的一組0均值向量;
在信息接收方:獲取載密向量和載密圖像,采用所述嵌入向量解析所述載密向量,提取所述嵌入信息,丟棄所述隨機數(shù)據(jù),恢復載體向量和原始圖像。
進一步的,所述載體向量與嵌入向量的長度相同。
進一步的,所述嵌入向量為相互正交的一組0均值向量。
所述嵌入向量為:sσ∈{-1,1},
進一步的,對所述嵌入信息依次進行二進制轉化和二進制編碼。
進一步的,所述二進行編碼過程為:當二進制數(shù)為1是,用數(shù)字1代替,當二進制數(shù)為0時,用數(shù)字-1代替。
所述嵌入信息為:
其中,ω代表原始的二進制數(shù),b是轉換后的數(shù)據(jù)
進一步的,所述生成載密向量和載密圖像的方法為:將嵌入信息與嵌入向量以設定的嵌入強度系數(shù)輸入至可逆嵌入載體向量中,得到可逆載密向量;將隨機數(shù)據(jù)與嵌入向量以同樣的嵌入強系數(shù)度輸入至非可逆嵌入載體向量中,得到非可逆載密向量;將所述可逆載密向量與非可逆載密向量按照所述設定順序重新排列,構成載密圖像。
在信息嵌入時,嵌入信息按照下式所示的方式嵌入到圖像中:
其中,α為嵌入強度系數(shù),b為嵌入信息,
進一步的,所述可逆嵌入載體向量為:當嵌入向量的模與嵌入強度系數(shù)的乘積大于載體向量與嵌入向量內積之模時,該載體向量為可逆嵌入載體向量,反之為非可逆嵌入載體向量。
進一步的,本發(fā)明對非可逆嵌入載體向量進行分類,當載體向量與嵌入向量的內積為負數(shù),且嵌入向量的模與嵌入強度系數(shù)的乘積之負數(shù)大于或等于載體向量與嵌入向量的內積時,所述隨機數(shù)據(jù)為-1;當載體向量與嵌入向量內積為正數(shù),且嵌入向量的模與嵌入強度系數(shù)的乘積小于或等于載體向量與嵌入向量的內積時,所述隨機隨機數(shù)為1。
進一步的,通過計算載密向量與嵌入向量的內積解析所述載密向量,具體方法為:當嵌入向量的模與兩倍嵌入強度系數(shù)的乘積小于等于載密向量與嵌入向量內積之模時,識別該嵌入向量搭載的是隨機數(shù)據(jù),并丟棄隨機數(shù)據(jù);當嵌入向量的模與兩倍嵌入強度系數(shù)的乘積大于載密向量與嵌入向量內積之模時,識別該嵌入向量搭載的是嵌入信息,并提取該嵌入信息。
按照信息嵌入時的順序選擇像素構成載密向量
進一步的,本發(fā)明通過sign()函數(shù)提取所述嵌入信息。
當
當嵌入數(shù)據(jù)被正確提取后,原始載體向量可以按照下式進行無損恢復:
進一步的,所述載體向量采用鄰近像素構成,所述鄰近像素隸屬于設定范圍內。
本發(fā)明的有益效果:
本發(fā)明通過在不滿足嵌入條件的載體向量中嵌入隨機數(shù)據(jù),使得信息接收方能夠通過計算載密向量與嵌入向量的內積,來檢驗目標向量是否嵌入了有效的秘密信息。相比于采用定位圖算法記錄秘密信息嵌入位置的做法,本發(fā)明可以有效降低附加信息的占比,提升載密圖像的有效信息嵌入容量,并降低信息可逆嵌入的運算復雜度。在信息提取過程中,通過計算載密向量與嵌入向量的內積即可判斷目標向量是否嵌入了有效的秘密信息,與采用定位圖算法標記嵌入信息區(qū)域的方法相比,本算法不需要執(zhí)行定位圖壓縮,嵌入容量估計等操作,因而在提升信息隱藏容量的情況下,可以有效提升算法的執(zhí)行效率。
附圖說明
圖1為本發(fā)明方法流程圖;
圖2為本發(fā)明基于圖像barbara可逆信息嵌入容量與圖像質量變化曲線
圖3為現(xiàn)有的原始載體圖像barbara(512*512)。
具體實施方式:
下面結合附圖與實施例對本發(fā)明作進一步說明:
應該指出,以下詳細說明都是例示性的,旨在對本申請?zhí)峁┻M一步的說明。除非另有指明,本文使用的所有技術和科學術語具有與本申請所屬技術領域的普通技術人員通常理解的相同含義。
需要注意的是,這里所使用的術語僅是為了描述具體實施方式,而非意圖限制根據(jù)本申請的示例性實施方式。如在這里所使用的,除非上下文另外明確指出,否則單數(shù)形式也意圖包括復數(shù)形式,此外,還應當理解的是,當在本說明書中使用術語“包含”和/或“包括”時,其指明存在特征、步驟、操作、器件、組件和/或它們的組合。
本發(fā)明一種典型的實施例如圖1所示,一種基于碼分復用的免定位圖可逆信息隱藏方法包括:
在信息發(fā)送方:按設定順序選擇原始圖像中的像素構成多個載體向量,所述載體向量包括可逆嵌入載體向量和非可逆嵌入載體向量;采用嵌入向量搭載嵌入信息輸入至可逆嵌入載體向量中,采用嵌入向量搭載隨機數(shù)據(jù)輸入至非可逆嵌入載體向量中,生成載密向量和載密圖像;所述嵌入向量為采用基于碼分復用原理生成的相互正交的一組0均值向量;
在信息接收方:獲取載密向量和載密圖像,采用所述嵌入向量解析所述載密向量,提取所述嵌入信息,丟棄所述隨機數(shù)據(jù),恢復載體向量和原始圖像。
首先,本實施例介紹嵌入向量的來源,根據(jù)hadamard矩陣的特點(哈達瑪(hadamard)矩陣是由+1和-1元素構成的且滿足
任意兩個不同向量的內積為:
將嵌入信息轉換成為二進制流,對二進制流進行重新編碼,當二進制數(shù)為1是,用數(shù)字1代替,當二進制數(shù)為0時,用數(shù)字-1代替。
其中,ω代表原始的二進制數(shù),b是轉換后的數(shù)據(jù)。設i是尺寸為n×n的原始圖像,按照一定的順序選擇原始圖像中的像素構成載體向量,vj=[p1,p2,……,pl](j∈{1,2,...,n×n/l}),保持載體向量的長度“l(fā)”和嵌入向量si一致。在信息嵌入時,數(shù)據(jù)按照下式所示的方式嵌入到圖像中:
其中,α為嵌入強度,b為嵌入信息。
在載密圖像的接收方,嵌入信息按照以下方式提?。?/p>
設
由于不同的嵌入向量互相正交,所以,當采用向量si提取信息時,式(5)可簡化為:
式(6)表明不同的嵌入向量之間是互相獨立的,由于各嵌入向量的相互正交性,前后多次嵌入的信息互不影響。同時,在式(6)中,be∈{-1,1},α是正整數(shù),
由式(7)可知,當嵌入向量的模與嵌入強度系數(shù)的乘積大于載體向量與嵌入向量的內積時,嵌入數(shù)據(jù)可以被正確提。具體的:當
當嵌入數(shù)據(jù)被正確提取后,原始載體向量可以按照下式進行無損恢復:
由于嵌入向量si是0均值向量,載體向量vj是由鄰近像素構成,二者的內積等價于計算載體向量中兩相鄰元素間的差值并求和,因此,當構成載體向量的元素緊密相關時,內積的值非常小。根據(jù)自然圖像中相鄰像素的密切相關性,選擇鄰近相似像素構成載體向量可以嵌入更多的信息,提升圖像信息嵌入的能力。
在信息嵌入的過程中,由公式(7)可知,當
本實施例將載體向量分為可逆嵌入載體向量和非可逆嵌入載體向量;采用嵌入向量搭載嵌入信息輸入至可逆嵌入載體向量中,采用嵌入向量搭載隨機數(shù)據(jù)輸入至非可逆嵌入載體向量中,在接收端根據(jù)運算結果區(qū)分目標載體向量是否嵌入了有效秘密信息。具體的:
當<vj,si>≥α|<si,si>|時,我們隨機的嵌入數(shù)據(jù)bi=1,嵌入信息后的載體向量變?yōu)椋?/p>
嵌入信息后的載密向量滿足:
當<vj,si>≤-α|<si,si>|時,我們隨機的嵌入數(shù)據(jù)bi=-1,嵌入信息后的載體向量變?yōu)椋?/p>
嵌入信息后的載密向量滿足:
根據(jù)以上分析,接收方在取得載密向量后,可以根據(jù)載密向量與嵌入向量的內積確定目標向量是否嵌入了有效的信息。當|<vj,si>|<2α|<si,si>|時,接收方可以判定目標向量中嵌入了一位有效的秘密信息;當
本實施例不需要添加任何附加信息標記嵌入和未嵌信息的向量,因而也就不需要使用定位圖區(qū)分載密向量是否嵌入了有效的秘密信息,從而增加了載體圖像的實際信息隱藏量,并可降低信息隱藏的運算量,提高信息嵌入的效率。
為進一步說明本實施例的執(zhí)行過程,我們采用以下具體應用來驗證本實施例的有效性。將每兩個相鄰像素構成的像素對作為載體向量vj,假設要嵌入的秘密信息為wo=(1,0),根據(jù)公式(3),將待嵌信息調整為wc=(1,-1),嵌入向量s1=(1,-1),嵌入強度系數(shù)α=1。信息嵌入過程如下:對于第一組載體向量v1=(98,96),由于v1·s1t=(98,96)·(1,-1)t=2,
詳細的信息嵌入、提取與原始向量恢復過程如表格1所示:
表1.基于免定位圖算法的可逆信息嵌入與提取過程
本實施例通過在不滿足嵌入條件的載體向量中嵌入隨機數(shù)據(jù),使得信息接收方能夠通過計算載密向量與嵌入向量的內積,來檢驗目標向量是否嵌入了有效的秘密信息。相比于采用定位圖算法記錄秘密信息嵌入位置的做法,本發(fā)明可以有效降低附加信息的占比,提升載密圖像的有效信息嵌入容量,并降低信息可逆嵌入的運算復雜度。在信息提取過程中,通過計算載密向量與嵌入向量的內積即可判斷目標向量是否嵌入了有效的秘密信息,與采用定位圖算法標記嵌入信息區(qū)域的方法相比,本實施例不需要執(zhí)行定位圖壓縮,嵌入容量估計等操作,因而在提升信息隱藏容量的情況下,可以有效提升執(zhí)行效率。
基于免定位圖的可逆信息嵌入結果如圖2和圖3所示(以圖像barbara為例)
以上所述僅為本申請的優(yōu)選實施例而已,并不用于限制本申請,對于本領域的技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本申請的保護范圍之內。