一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法
【專利摘要】一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法,將信息嵌入的附加信息存儲在數(shù)據(jù)流頭部中,通過對數(shù)據(jù)流的載荷進行運算,產(chǎn)生可以用來嵌入信息的冗余位,從而實現(xiàn)了在普通格式數(shù)據(jù)流中嵌入信息,并且能夠無失真恢復(fù)數(shù)據(jù)流及嵌入信息。本發(fā)明首先計算數(shù)據(jù)流中最大值與最小值之間的差值,并比較差值與2n(0<n<8)之間的大??;然后計算各種情況下可嵌入信息量,選擇一種可嵌入信息量最大的情況并進行信息嵌入。當(dāng)接收端收到數(shù)據(jù)后,提取出格式數(shù)據(jù)流中的嵌入信息并恢復(fù)出原始數(shù)據(jù)。本發(fā)明可用于在無特殊特征的格式數(shù)據(jù)流中無損嵌入信息,在不增加信道資源的情況下,提高系統(tǒng)的傳輸容量。
【專利說明】一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種在格式數(shù)據(jù)流中無損信息嵌入方法,屬于數(shù)據(jù)通信傳輸【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]常見的無損信息嵌入方法都是針對具有一定特征的數(shù)據(jù)流進行的,如圖像、音頻及文本等,對于這類數(shù)據(jù)流進行隱藏時需要利用各數(shù)據(jù)流之間的相關(guān)性來嵌入信息。目前,并沒有一種信息隱藏方法可以在無特殊特征的普通數(shù)據(jù)流中無損嵌入信息。本發(fā)明提出了一種在格式數(shù)據(jù)流中無損信息嵌入方法,該方法可在各種不同的數(shù)據(jù)流中嵌入信息,能夠無失真恢復(fù)數(shù)據(jù)流及嵌入信息,在不增加信道資源的情況下,提高系統(tǒng)的傳輸容量。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的技術(shù)解決問題是:克服現(xiàn)有技術(shù)的不足,提供了一種在格式數(shù)據(jù)流中無損信息嵌入方法,在不增加信道資源的情況下,提高系統(tǒng)的傳輸容量。
[0004]本發(fā)明的技術(shù)解決方案是:
[0005]一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法,
[0006]嵌入方法步驟如下:
[0007](I)對數(shù)據(jù)流中的載荷數(shù)據(jù)按字節(jié)值8位進行處理,形成十進制數(shù),計算所有十進制數(shù)中最大值Kmax與最小值Kmin之間的差值D ;
[0008](2)將差值D與所有M分別進行比較,其中M = 2n,0〈n〈8 ;
[0009]如果差值D小于Μ,轉(zhuǎn)入步驟(3);
[0010]如果差值D大于等于Μ,轉(zhuǎn)入步驟(4);
[0011](3)將所有數(shù)據(jù)流中的十進制數(shù)均減去最小值Kmin,使數(shù)據(jù)流數(shù)值范圍變?yōu)镺?(M-1)之間,在新的數(shù)據(jù)中,利用字節(jié)的高(8-η)位嵌入信息,同時將最小值Kmin及信息嵌入方式作為附加信息存儲在數(shù)據(jù)流的頭部中;轉(zhuǎn)入步驟(5);
[0012](4)選擇數(shù)據(jù)X嵌入信息,X需同時滿足如下條件:
[0013]在數(shù)據(jù)流所有十進制數(shù)值中,沒有其他十進制數(shù)值對應(yīng)的二進制數(shù)的低η位與X對應(yīng)的二進制數(shù)的低η位相同;
[0014]在數(shù)據(jù)流中所有滿足上述條件的數(shù)值中,X出現(xiàn)的次數(shù)最多;
[0015]選擇到滿足條件的X值后,轉(zhuǎn)入步驟(5);
[0016]若沒有找到滿足要求的X值,選擇直接在數(shù)據(jù)流頭部中嵌入信息,轉(zhuǎn)入步驟(5);
[0017](5)計算各種情況下可嵌入信息的數(shù)量,選擇可嵌入的信息位數(shù)最多的一種方式進行信息嵌入;
[0018](6)按照不同的情況進行信息嵌入;
[0019]所述恢復(fù)方法具體為:
[0020]根據(jù)數(shù)據(jù)流頭部的附加信息,判斷信息的嵌入方式,并根據(jù)不同的嵌入方式進行信息恢復(fù)計算:
[0021]如果選擇的嵌入方式屬于下列這種情況,即最大值Kmax與最小值Kmin之間的差值D小于M,其中M = 2n,0〈n〈8,那么恢復(fù)方法如下:
[0022]a)提取數(shù)據(jù)流中高(8-η)位信息恢復(fù)為嵌入信息;
[0023]b)將數(shù)據(jù)流中高(8-η)位置0,低η位不變,形成數(shù)據(jù)K’,原始信息K = K’ +Kfflin ;
[0024]c)至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù);
[0025]如果選擇的嵌入方式屬于下列情況,即最大值Kmax與最小值Kmin之間的差值D大于等于M,其中M = 2n,0〈n〈8,那么具體信息恢復(fù)方法如下:
[0026]a)選擇數(shù)據(jù)流中所有與X數(shù)據(jù)低η位相同的數(shù)據(jù);
[0027]b)提取上述數(shù)據(jù)的高(8-η)位信息,恢復(fù)為嵌入信息;
[0028]c)用X替代上述數(shù)據(jù),作為原始數(shù)據(jù);
[0029]d)至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù);
[0030]如果信息直接嵌入在數(shù)據(jù)流頭部中,則從頭部提取出嵌入信息,原始數(shù)據(jù)不變;至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù)。
[0031]所述步驟(5)計算各種情況下可嵌入信息的數(shù)量具體為:
[0032](I)當(dāng)M = 128, η = 7時,分為兩種情況:
[0033]差值D小于M時,可嵌入信息量是NX I ;Ν為數(shù)據(jù)流中載荷包括的字節(jié)數(shù);
[0034]差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX I ;
[0035](2)當(dāng)M = 64, η = 6時,分為兩種情況:
[0036]差值D小于M時,可嵌入信息量是NX 2 ;
[0037]差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX2 ;
[0038](3)當(dāng)M = 32, η = 5時,分為兩種情況:
[0039]差值D小于M時,可嵌入f目息量是NX 3 ;
[0040]差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX3 ;
[0041](4)當(dāng)M = 16, η = 4時,分為兩種情況:
[0042]差值D小于M時,可嵌入f目息量是NX 4 ;
[0043]差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX4 ;
[0044](5)當(dāng)M = 8,n = 3時,分為兩種情況:
[0045]差值D小于M時,可嵌入信息量是NX 5 ;
[0046]差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX5 ;
[0047](6)當(dāng)M = 4, η = 2時,分為兩種情況:
[0048]差值D小于M時,可嵌入信息量是NX 6 ;
[0049]差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX6 ;
[0050](7)當(dāng)M = 2, η = I時,分為兩種情況:
[0051]差值D小于M時,可嵌入信息量是NX 7 ;
[0052]差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX7 ;
[0053](8)當(dāng)差值大于等于M時,若沒有找到滿足要求的X值,則可嵌入信息量為9 ;
[0054]比較上述幾種方式下可嵌入的信息位數(shù),選擇可嵌入的信息位數(shù)最多的一種方式進行信息嵌入。
[0055]所述步驟¢)按照不同的情況進行信息嵌入具體為:
[0056](I)如果整個數(shù)據(jù)流中最大值Kmax與最小值Kmin之間的差值D小于M,其中M = 2n,0〈n〈8,那么具體嵌入方法如下:
[0057]首先,將數(shù)據(jù)流中數(shù)據(jù)變?yōu)镵’,其中K’ = K-Kmin, K’彡O且K’〈M,K為原數(shù)據(jù);
[0058]其次,利用字節(jié)的高(8-η)位嵌入信息,低η位存儲數(shù)據(jù)K’ ;
[0059]最后,將嵌入方式及Kmin作為附加信息存儲在數(shù)據(jù)流的頭部;
[0060](2)如果整個數(shù)據(jù)流中最大值Kmax與最小值Kmin之間的差值D大于等于Μ,其中M=2η,0〈η〈8,那么具體的嵌入方法如下:
[0061]首先,選擇數(shù)據(jù)X嵌入信息,X需同時滿足如下條件:
[0062]在數(shù)據(jù)流所有數(shù)值中,沒有其他數(shù)值對應(yīng)的二進制數(shù)的低η位與X對應(yīng)的二進制數(shù)的低η位相同;
[0063]在數(shù)據(jù)流中所有滿足上述條件的數(shù)值中,X出現(xiàn)的次數(shù)最多;
[0064]其次,利用數(shù)據(jù)X對應(yīng)的二進制數(shù)的高(8-η)位嵌入信息,低η位存儲數(shù)據(jù)X對應(yīng)的二進制數(shù)的原低η位;
[0065]最后,將嵌入方式及X值作為附加信息存儲在數(shù)據(jù)流的頭部中;
[0066]如果沒有找到滿足上述要求的X值,則直接將信息嵌入到數(shù)據(jù)流的頭部中。
[0067]所述附加信息包括嵌入標識、嵌入方式及最小值Kmin或所選擇的X值,共13位;
[0068]附加信息格式的分配具體如下:
[0069]嵌入標識位包括I位,若為I表不進行信息嵌入;若為O表不未進行信息嵌入;
[0070]嵌入方式包括4位,前三位為000時表示直接在頭部的嵌入方式和位置信息中進行隱藏;前三位不為O時,前三位表示η值,其中,
[0071]001:表示η為 I;
[0072]010:表示 η 為 2;
[0073]011:表示 η 為 3;
[0074]100:表示 η 為 4 ;
[0075]101:表示 η 為 5;
[0076]110:表示 η 為 6;
[0077]111:表示 η 為 7;
[0078]上述情況下嵌入方式的最后一位表示具體嵌入方式:
[0079]O:表示最大值Kniax與最小值Kniin之間的差值小于M ;
[0080]1:表示最大值Kniax與最小值Kniin之間的差值大于等于M ;
[0081]當(dāng)具體嵌入方式為O時,8位嵌入位置信息表示的是最小值Kmin ;當(dāng)具體嵌入方式為I時,8位位置信息表示的是所選擇的X值。
[0082]本發(fā)明與現(xiàn)有技術(shù)相比的有益效果是:
[0083](I)本發(fā)明信息嵌入方法可應(yīng)用于各種不同的數(shù)據(jù)流中,傳統(tǒng)無損信息嵌入方法都是在圖像中具有相關(guān)性特征的數(shù)據(jù)流中進行信息隱藏,而本發(fā)明提出的方法可用于數(shù)據(jù)傳輸中任意類型的數(shù)據(jù)流中,在不增加信道資源的情況下,提高系統(tǒng)的傳輸容量。
[0084](2)本發(fā)明通過計算在數(shù)據(jù)流中產(chǎn)生了可嵌入信息的冗余位,能夠?qū)崿F(xiàn)無損信息嵌入,提高了嵌入信息量。
【專利附圖】
【附圖說明】
[0085]圖1為本發(fā)明方法流程圖;
[0086]圖2為本發(fā)明嵌入信息量計算方法示意圖;
[0087]圖3為本發(fā)明信息嵌入方法示意圖;
[0088]圖4為本發(fā)明信息恢復(fù)方法示意圖。
【具體實施方式】
[0089]常見的無損信息嵌入方法都是針對具有一定特征的數(shù)據(jù)流進行的,利用數(shù)據(jù)流之間的關(guān)系通過預(yù)測與插值的方法來實現(xiàn)信息隱藏。本發(fā)明提出了一種在格式數(shù)據(jù)流中無損嵌入信息的方法,該方法可在各種不同的數(shù)據(jù)流中嵌入信息,能夠無失真恢復(fù)數(shù)據(jù)流及嵌入信息,在不增加信道資源的情況下,提高系統(tǒng)的傳輸容量。
[0090]通信網(wǎng)絡(luò)進行數(shù)據(jù)傳輸時,通常都會以一定格式的幀或信元、數(shù)據(jù)報的形式來傳輸,各種不同格式的數(shù)據(jù)都包括頭部信息和載荷信息。本發(fā)明將信息嵌入的附加信息存儲在數(shù)據(jù)流頭部中,通過對數(shù)據(jù)流的載荷進行運算,產(chǎn)生可以用來嵌入信息的冗余位,從而實現(xiàn)了在普通格式數(shù)據(jù)流中嵌入信息,并且能夠無失真恢復(fù)數(shù)據(jù)流及嵌入信息。
[0091]本發(fā)明進行無損信息嵌入的思想是利用載荷數(shù)據(jù)之間的特征產(chǎn)生冗余位,利用冗余位嵌入信息。
[0092]附圖1為無損信息嵌入總體方案,主要步驟為:
[0093](I)對數(shù)據(jù)流中的載荷數(shù)據(jù)按字節(jié)值(8位)進行處理,形成十進制數(shù),計算整個數(shù)據(jù)流中所有數(shù)據(jù)最大值Kmax與最小值Kmin之間的差值;
[0094](2)將差值分別與M (其中M = 2n,0〈n〈8)進行比較:
[0095]如果差值小于M,轉(zhuǎn)入步驟(3);
[0096]如果差值大于等于M,轉(zhuǎn)入步驟(4);
[0097](3)若差值小于M(其中M= 2n,0〈n〈8),將所有數(shù)據(jù)流中的十進制數(shù)據(jù)減去最小值Kmin,使數(shù)據(jù)流數(shù)值范圍變?yōu)镺-(M-1)之間,在新的數(shù)據(jù)中,可利用字節(jié)的高(8-η)位嵌入信息,同時將最小值及信息嵌入方式作為附加信息存儲在數(shù)據(jù)流的頭部中;轉(zhuǎn)入步驟(5);
[0098](4)若差值大于M(其中M= 2η,0〈η〈8),可選擇數(shù)據(jù)X嵌入信息,X需同時滿足如下條件:
[0099]在數(shù)據(jù)流所有數(shù)值中,沒有其他數(shù)值低η位與X相同;
[0100]在數(shù)據(jù)流中所有滿足上述條件的數(shù)值中,X出現(xiàn)的次數(shù)最多。
[0101]選擇到滿足條件的X值后,轉(zhuǎn)入步驟(5);
[0102]若沒有找到滿足要求的X值,選擇直接在數(shù)據(jù)流頭部中嵌入信息,轉(zhuǎn)入步驟(5);
[0103](5)計算各種情況下可嵌入信息的數(shù)量,并選擇一種嵌入數(shù)目最多的情況。
[0104]如圖2所示,假設(shè)數(shù)據(jù)流中載荷包括N個字節(jié),本發(fā)明將載荷數(shù)據(jù)中最大值Kmax與最小值Kmin之間的差值與M(其中M = 2n,0〈n〈8)進行比較,其中包括以下幾種情況:
[0105](5.1)當(dāng)M = 128 (η = 7)時,分為兩種情況:
[0106]差值小于M時,可嵌入信息量是NX I ;
[0107]差值大于等于M時,若所選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YXl ;
[0108](5.2)當(dāng)M = 64 (η = 6)時,分為兩種情況:
[0109]差值小于M時,可嵌入f目息量是NX 2 ;
[0110]差值大于等于M時,若所選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX2 ;
[0111](5.3)當(dāng)M = 32 (η = 5)時,分為兩種情況:
[0112]差值小于M時,可嵌入/[目息量是NX 3 ;
[0113]差值大于等于M時,若所選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX 3 ;
[0114](5.4)當(dāng)M = 16 (η = 4)時,分為兩種情況:
[0115]差值小于M時,可嵌入信息量是NX 4 ;
[0116]差值大于等于M時,若所選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX 4 ;
[0117](5.5)當(dāng)M = 8(η = 3)時,分為兩種情況:
[0118]差值小于M時,可嵌入信息量是NX 5 ;
[0119]差值大于等于M時,若所選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX 5 ;
[0120](5.6)當(dāng)M = 4(η = 2)時,分為兩種情況:
[0121]差值小于M時,可嵌入信息量是NX 6 ;
[0122]差值大于等于M時,若所選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX6 ;
[0123](5.7)當(dāng)M = 2 (η = I)時,分為兩種情況:
[0124]差值小于M時,可嵌入信息量是NX 7 ;
[0125]差值大于等于M時,若所選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YX 7 ;
[0126](5.8)當(dāng)差值大于等于M時,若沒有找到滿足要求的X值,則可嵌入信息量為9 ;
[0127]比較上述幾種方式下可嵌入的信息位數(shù),選擇數(shù)量最多的一種方式進行信息嵌入。
[0128](6)按照不同的情況進行信息嵌入,如圖3所示。
[0129](6.1)如果整個數(shù)據(jù)流中所有數(shù)據(jù)最大值Kmax與最小值Kmin之間的差值小于M (其中M = 2η,0〈η〈8),那么具體嵌入方法如下:
[0130]首先,將數(shù)據(jù)流中數(shù)據(jù)變?yōu)镵’,其中K’ =K-Kmin, K’彡O且Κ’〈Μ;
[0131]其次,利用字節(jié)的高(8-η)位嵌入信息,低η位存儲數(shù)據(jù)K’ ;
[0132]最后,將嵌入方式及Kmin作為附加信息存儲在數(shù)據(jù)流的頭部。
[0133](6.2)如果整個數(shù)據(jù)流中所有數(shù)據(jù)最大值Kmax與最小值Kmin之間的差值大于等于M(其中M= 2η,0〈η〈8),那么具體的嵌入方法如下:
[0134]首先,選擇數(shù)據(jù)X嵌入信息,X需同時滿足如下條件:
[0135]在數(shù)據(jù)流所有數(shù)值中,沒有其他數(shù)值低η位與X相同;
[0136]在數(shù)據(jù)流中所有滿足上述條件的數(shù)值中,X出現(xiàn)的次數(shù)最多。
[0137]其次,利用數(shù)據(jù)X的高(8-η)位嵌入信息,低η位存儲數(shù)據(jù)X的原低η位;
[0138]最后,將嵌入方式及X值作為附加信息存儲在數(shù)據(jù)流的頭部中。
[0139]如果沒有找到滿足上述要求的X值,則直接將信息嵌入到數(shù)據(jù)流的頭部中。
[0140]信息恢復(fù)方法:
[0141]信息恢復(fù)方法與信息嵌入方法相反,如附圖4所示。
[0142]首先,根據(jù)數(shù)據(jù)流頭部的附加信息,判斷信息的嵌入方式,并根據(jù)不同的嵌入方式進行信息恢復(fù)計算。
[0143](I)如果選擇的嵌入方式屬于下列這種情況,即最大值Kmax與最小值Kmin之間的差值小于Μ,那么恢復(fù)方法如下:
[0144]a)提取數(shù)據(jù)流中高(8-η)位信息恢復(fù)為嵌入信息;
[0145]b)將數(shù)據(jù)流中高(8-η)位置0,低η位不變,形成數(shù)據(jù)K’,原始信息K = K’ +Kfflin ;
[0146]至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù)。
[0147](2)如果選擇的嵌入方式屬于下列情況,即最大值Kmax與最小值Kmin之間的差值大于等于Μ(其中M = 2η,0〈η〈8),那么具體信息恢復(fù)方法如下:
[0148]a)選擇數(shù)據(jù)流中所有與X數(shù)據(jù)低η位相同的數(shù)據(jù);
[0149]b)提取上述數(shù)據(jù)的高(8-η)位信息,恢復(fù)為嵌入信息;
[0150]c)用X替代上述數(shù)據(jù),作為原始數(shù)據(jù);
[0151]至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù)。
[0152](3)如果信息直接嵌入在數(shù)據(jù)流頭部中,則從頭部提取出嵌入信息,原始數(shù)據(jù)不變。
[0153]至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù)。
[0154]本發(fā)明中的附加信息可存儲在格式數(shù)據(jù)流的頭部中。附加信息包括嵌入標識、嵌入方式及最小值Kmin或所選擇的X值,共13位。
[0155]
^嵌入嵌入方式(4 嵌入位置(8位)
標識(I 位)
位)
[0156]附加信息格式的分配具體如下:
[0157]嵌入標識位包括I位,若為I表不進行信息嵌入;若為O表不未進行信息嵌入;
[0158]嵌入方式包括4位,當(dāng)前三位為000時表示直接在頭部的嵌入方式和位置信息中進行隱藏;當(dāng)前三位不為O時,前三位表示η值,其中,
[0159]001:表示 η 為 I ;
[0160]010:表示 η 為 2;
[0161]011:表示 η 為 3 ;
[0162]100:表示 η 為 4;
[0163]101:表不 η 為 5 ;
[0164]110:表不 η 為 6 ;
[0165]111:表示 η 為 7;
[0166]上述情況下嵌入方式的最后一位表不具體嵌入方式:
[0167]O:表示最大值Kniax與最小值Kniin之間的差值小于M ;
[0168]1:表示最大值Kniax與最小值Kniin之間的差值大于等于M ;
[0169]當(dāng)具體嵌入方式為O時,8位嵌入位置信息表示的是最小值Kmin ;當(dāng)具體嵌入方式為I時,8位位置信息表示的是所選擇的X值。
[0170]實施例:
[0171]這里以星上ATM信元為例詳細說明在格式數(shù)據(jù)流中無損信息嵌入的【具體實施方式】。下表所示為星上ATM信元格式,該信元共53字節(jié),包括5字節(jié)的頭部和48字節(jié)載荷,其中頭部包括13位信息嵌入的附加信息。除了 13位信息嵌入附加信息,ATM信元頭部內(nèi)其他的都是通信協(xié)議標準里的格式。
[0172]
【權(quán)利要求】
1.一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法,其特征在于: 嵌入方法步驟如下: (1)對數(shù)據(jù)流中的載荷數(shù)據(jù)按字節(jié)值8位進行處理,形成十進制數(shù),計算所有十進制數(shù)中最大值Kmax與最小值Kmin之間的差值D ; (2)將差值D與所有M分別進行比較,其中M= 2n,0〈n〈8 ; 如果差值D小于Μ,轉(zhuǎn)入步驟(3); 如果差值D大于等于Μ,轉(zhuǎn)入步驟(4); (3)將所有數(shù)據(jù)流中的十進制數(shù)均減去最小值Kmin,使數(shù)據(jù)流數(shù)值范圍變?yōu)镺?(M-1)之間,在新的數(shù)據(jù)中,利用字節(jié)的高(8-η)位嵌入信息,同時將最小值Kmin及信息嵌入方式作為附加信息存儲在數(shù)據(jù)流的頭部中;轉(zhuǎn)入步驟(5); (4)選擇數(shù)據(jù)X嵌入信息,X需同時滿足如下條件: 在數(shù)據(jù)流所有十進制數(shù)值中,沒有其他十進制數(shù)值對應(yīng)的二進制數(shù)的低η位與X對應(yīng)的二進制數(shù)的低η位相同; 在數(shù)據(jù)流中所有滿足上述條件的數(shù)值中,X出現(xiàn)的次數(shù)最多; 選擇到滿足條件的X值后,轉(zhuǎn)入步驟(5); 若沒有找到滿足要求的X值,選擇直接在數(shù)據(jù)流頭部中嵌入信息,轉(zhuǎn)入步驟(5); (5)計算各種情況下可嵌入信息的數(shù)量,選擇可嵌入的信息位數(shù)最多的一種方式進行信息嵌入; (6)按照不同的情況進行信息嵌入; 所述恢復(fù)方法具體為: 根據(jù)數(shù)據(jù)流頭部的附加信息,判斷信息的嵌入方式,并根據(jù)不同的嵌入方式進行信息恢復(fù)計算: 如果選擇的嵌入方式屬于下列這種情況,即最大值Kmax與最小值Kmin之間的差值D小于Μ,其中M = 2η,0〈η〈8,那么恢復(fù)方法如下: a)提取數(shù)據(jù)流中高(8-η)位信息恢復(fù)為嵌入信息; b)將數(shù)據(jù)流中高(8-η)位置O,低η位不變,形成數(shù)據(jù)K’,原始信息K= K’ +Kfflin ; c)至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù); 如果選擇的嵌入方式屬于下列情況,即最大值Kmax與最小值Kmin之間的差值D大于等于M,其中M = 2n,0〈n〈8,那么具體信息恢復(fù)方法如下: a)選擇數(shù)據(jù)流中所有與X數(shù)據(jù)低η位相同的數(shù)據(jù); b)提取上述數(shù)據(jù)的高(8-η)位信息,恢復(fù)為嵌入信息; c)用X替代上述數(shù)據(jù),作為原始數(shù)據(jù); d)至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù); 如果信息直接嵌入在數(shù)據(jù)流頭部中,則從頭部提取出嵌入信息,原始數(shù)據(jù)不變;至此,完成嵌入信息的提取及原始數(shù)據(jù)的恢復(fù)。
2.根據(jù)權(quán)利要求1所述的一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法,其特征在于:所述步驟(5)計算各種情況下可嵌入信息的數(shù)量具體為: (I)當(dāng)M = 128, η = 7時,分為兩種情況: 差值D小于M時,可嵌入信息量是NX I ;Ν為數(shù)據(jù)流中載荷包括的字節(jié)數(shù); 差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為YXl ; (2)當(dāng)M= 64, η = 6時,分為兩種情況: 差值D小于M時,可嵌入彳目息量是NX 2 ; 差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為ΥΧ2 ; (3)當(dāng)M= 32, η = 5時,分為兩種情況: 差值D小于M時,可嵌入彳目息量是NX 3 ; 差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為ΥΧ3 ; (4)當(dāng)M= 16, η = 4時,分為兩種情況: 差值D小于M時,可嵌入彳目息量是NX 4 ; 差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為ΥΧ4; (5)當(dāng)Μ= 8,η = 3時,分為兩種情況: 差值D小于M時,可嵌入信息量是NX 5 ; 差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為ΥΧ5 ; (6)當(dāng)M= 4, η = 2時,分為兩種情況: 差值D小于M時,可嵌入信息量是NX 6 ; 差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為ΥΧ6 ; (7)當(dāng)M= 2, η = I時,分為兩種情況: 差值D小于M時,可嵌入彳目息量是NX 7 ; 差值D大于等于M時,若選擇數(shù)據(jù)X嵌入信息且X在載荷中出現(xiàn)了 Y次,則可嵌入信息量為ΥΧ7 ; (8)當(dāng)差值大于等于M時,若沒有找到滿足要求的X值,則可嵌入信息量為9; 比較上述幾種方式下可嵌入的信息位數(shù),選擇可嵌入的信息位數(shù)最多的一種方式進行信息嵌入。
3.根據(jù)權(quán)利要求1所述的一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法,其特征在于:所述步驟(6)按照不同的情況進行信息嵌入具體為: (1)如果整個數(shù)據(jù)流中最大值Kmax與最小值Kmin之間的差值D小于Μ,其中M= 2η,0〈η〈8,那么具體嵌入方法如下: 首先,將數(shù)據(jù)流中數(shù)據(jù)變?yōu)镵’,其中K’ = K-Kmin, K’ > O且K’〈Μ,K為原數(shù)據(jù); 其次,利用字節(jié)的高(8-η)位嵌入信息,低η位存儲數(shù)據(jù)K’ ; 最后,將嵌入方式及Kmin作為附加信息存儲在數(shù)據(jù)流的頭部; (2)如果整個數(shù)據(jù)流中最大值Kmax與最小值Kmin之間的差值D大于等于Μ,其中M= 2η,0〈η〈8,那么具體的嵌入方法如下: 首先,選擇數(shù)據(jù)X嵌入信息,X需同時滿足如下條件: 在數(shù)據(jù)流所有數(shù)值中,沒有其他數(shù)值對應(yīng)的二進制數(shù)的低η位與X對應(yīng)的二進制數(shù)的低η位相同; 在數(shù)據(jù)流中所有滿足上述條件的數(shù)值中,X出現(xiàn)的次數(shù)最多; 其次,利用數(shù)據(jù)X對應(yīng)的二進制數(shù)的高(8-η)位嵌入信息,低η位存儲數(shù)據(jù)X對應(yīng)的二進制數(shù)的原低η位; 最后,將嵌入方式及X值作為附加信息存儲在數(shù)據(jù)流的頭部中; 如果沒有找到滿足上述要求的X值,則直接將信息嵌入到數(shù)據(jù)流的頭部中。
4.根據(jù)權(quán)利要求1?3所述的一種在格式數(shù)據(jù)流中無損信息嵌入與恢復(fù)方法,其特征在于:所述附加信息包括嵌入標識、嵌入方式及最小值Kmin或所選擇的X值,共13位; 附加信息格式的分配具體如下: 嵌入標識位包括I位,若為I表示進行信息嵌入;若為O表示未進行信息嵌入; 嵌入方式包括4位,前三位為OOO時表示直接在頭部的嵌入方式和位置信息中進行隱藏;前三位不為O時,前三位表示η值,其中, 001:表示η為I ; 010:表示η為2 ; 011:表示η為3 ; 100:表示η為4 ; 101:表示η為5 ; 110:表示η為6 ; 111:表示η為7 ; 上述情況下嵌入方式的最后一位表示具體嵌入方式: 0:表示最大值Kniax與最小值Kniin之間的差值小于M ; 1:表示最大值Kniax與最小值Kniin之間的差值大于等于M ; 當(dāng)具體嵌入方式為O時,8位嵌入位置信息表示的是最小值Kmin ;當(dāng)具體嵌入方式為I時,8位位置信息表示的是所選擇的X值。
【文檔編號】H04L12/951GK104202294SQ201410353713
【公開日】2014年12月10日 申請日期:2014年7月23日 優(yōu)先權(quán)日:2014年7月23日
【發(fā)明者】張怡, 周詮, 黎軍, 呼延烺, 李靜玲, 崔濤, 梁薇, 魏佳圓 申請人:西安空間無線電技術(shù)研究所