一种抗压缩的大容量信息隐藏及提取方法

文档序号:10572674阅读:261来源:国知局
一种抗压缩的大容量信息隐藏及提取方法
【专利摘要】本发明提出了一种抗压缩的大容量信息隐藏及提取方法,能够在数据如图像数据中实现大容量的信息隐藏,同时具有抗压缩性能。其特点在于:该方法通过对载体数据预先处理以及对秘密信息进行载体编码,把秘密信息隐藏在数据中进行传输,不改变载体高位信息比特,即使经过一定的有损压缩,接收端也能高质量恢复秘密信息和载体数据。本发明是为了满足用户信息隐藏容量大、鲁棒性、硬件实现复杂度低、兼顾图像和非图像数据的要求而提出的,使得隐藏方法具有1/8或1bpp的隐藏容量,而且具有抗压缩性能,突破了传统的大容量隐藏方法没有鲁棒性的局限,也突破了传统的变换域方法实现复杂度高的局限。
【专利说明】
一种抗压缩的大容量信息隐藏及提取方法
技术领域
[0001] 本发明涉及一种数据通信的方法,特别涉及一种抗压缩的大容量信息隐藏及提取 方法,属于通信(如数据通信技术等)领域。
【背景技术】
[0002] 信息隐藏,也称数据隐藏是信息安全的一个重要分支,其利用人类的视觉冗余将 秘密信息嵌入到载体中,从而达到安全传输秘密信息的目的。
[0003] 信息隐藏分为无损信息隐藏或者有损信息隐藏,有损信息隐藏如LSB、DCT信息隐 藏方法,经过信息隐藏后载体数据有一定损失,信息无损失或有一定损失。无损信息隐藏方 法如基于直方图的信息隐藏方法、差值扩展信息隐藏方法等,经过信息隐藏后载体数据无 损失,信息也无损失。信息隐藏方法有的能抗噪声、抗压缩等处理,该类方法为鲁棒信息隐 藏方法;有的不能抗噪声也不能抗压缩等处理,该类方法为非鲁棒信息隐藏方法。通过信息 隐藏技术可以做到在不改变载体(如图像)大小、不影响载体(如图像等)使用的情况下,在 载体(如图像等)中嵌入秘密信息进行隐藏传输,接收端能够正确提取秘密信息,按要求恢 复载体数据。如果在传输过程中遇到噪声或经过一定的有损压缩后也能恢复秘密信息,同 时图像质量满足要求,那么采用的方法就是鲁棒信息隐藏方法。
[0004] 对图像信息隐藏来说,过去,一般情况下,相对容量高于1/128就可以称为"大容 量",目前,相对容量高于或达到1/64,如1/8,1/16,1/32,1/64就可以称为"大容量",一般文 献中,采用频域或空域信息隐藏方法,如方法具有鲁棒性(抗压缩),则隐藏容量一般为1/64 或1/128,介于几十分之一到几百分之一。也有一些信息隐藏方法隐藏容量相对较高。总之, 目前抗压缩的信息隐藏方法的要么隐藏容量达不到1/8,要么缺乏载体的普适性。有损信息 隐藏方法如LSB信息隐藏方法,容量达到1/8,但无法抗压缩,也就是说含密数据经过有损压 缩后误码率太高,没有鲁棒性。其它许多有损信息隐藏方法如DCT信息隐藏方法,容量根本 达不到1/8,或者小容量(1/512-1/64)能抗压缩,或者大容量不抗压缩

【发明内容】

[0005] 本发明的技术解决问题是:克服现有技术不足,提出一种抗压缩的大容量信息隐 藏及提取方法,是为了满足用户"信息隐藏容量大、硬件实现复杂度低、能适应图像和非图 像数据"的要求而提出的,使得隐藏方法具有1/8的相对隐藏容量,而且具有鲁棒性,图像质 量优良。本发明提出的大容量抗压缩信息隐藏方法,具有大容量,没有任何附加信息,能抗 一定倍数的有损压缩(最典型的为JPEG2000压缩方法),也具有相应抗噪声能力。
[0006] 本发明的技术解决方案是:一种抗压缩的大容量信息隐藏及提取方法,包括数据 预处理阶段、信息隐藏嵌入阶段、信息隐藏提取阶段、信息载体数据的恢复阶段:
[0007] 所述数据预处理阶段步骤如下:
[0008] (1)载体数据流为Bl,B2,···&!,秘密信息流为SI,S2,…Sn,每个载体数据Bi的值为 0-255之间的某个值,用8个二进制比特表示,i = 1,2,3,…,η,按位从高到低位排列为b8 b7 b6 b5 b4 b3 b2 bl,秘密信息为0或l,n为自然数,定义集合1为{000,001,010,011},集合2 为{100,101,110,111};
[0009] 提取并统计载体数据流B1,B2,…Bn中每个载体数据的后三位b3b2bl,如果后三位 匕3匕2 131属于集合18卩{000,001,010,011},则计数器1(1从0开始加1;如果后三位&3&2 131 属于集合2即{100,101,110,111},则计数器K2从0开始加1;
[0010] 统计完载体数据流B1,B2,…Bn后,如果K1大于等于K2,则从集合1中取一种元素作 为xyz,从集合2中取一种元素作为uvw;如果K1小于K2,贝lj从集合2中取一种元素作为xyz,从 集合1中取一种元素作为uvw;
[0011] 所述信息隐藏嵌入阶段步骤如下:
[0012] (2)如果秘密信息流中的Si等于与其对应的Bi中的b4,那么
[0013] 如果K1多K2,则将该Bi中的b3 b2 bl置为xyz;
[0014] 如果K1〈K2,则将该Bi中的b3 b2 bl置为uvw;
[0015] 如果秘密信息流中的Si不等于与其对应的Bi中的b4,那么
[0016] 如果K1彡K2,则将该Bi中的b3 b2 bl置为uvw;
[0017] 如果K1〈K2,则将该Bi中的b3 b2 bl置为xyz;
[0018] 形成含密数据流为Cl,C2,···〇!,每个含密数据为Ci,i = 1,2,3,…,η,实现了信息 隐藏;
[0019] 所述信息提取阶段步骤如下:
[0020] (3)假设含密数据流C1,C2,…Cn经过传输或噪声影响之后,变为带有噪声影响的 含密数据流D1,D2,…Dn,Di为带有噪声影响的含密数据流中的数据,i = 1,2,3,…,η;每个 Di的值为0-255之间的某个值,用8个二进制比特表示,i = 1,2,3,…,η,按位从高到低位排 列为d8 d7 d6 d5 d4 d3 d2 dl
[0021] 提取含密数据Di的后四位d4 d3 d2 dl;
[0022] 统计含密数据流每个Di的后三位d3 d2 dl,如果Di的后三位d3 d2 dl属于集合1 即{000,001,010,011},则计数器1(3的值加+1;如果0丨的后三位(13(12(11属于集合28卩{100, 101,110,111},则计数器K4的值加1;
[0023] 完成所有Di统计后,当Κ3彡Κ4时,如果Di后三位d3 d2 dl属于集合I即{000,001, 010,011},则提取Di中的d4为对应的秘密信息Si;如果Di后三位d3 d2 dl属于集合2即 {100,101,110,111},则提取Di中的d4取反为对应的秘密信息Si ;
[0024] 当K3〈K4时,如果Di后三位d3 d2 dl属于集合2即{100,101,110,111},则提取01中 的d4取反为对应的秘密信息Si ;如果Di后三位d3 d2 dl属于集合1即{000,001,010,011}, 则提取Di中的d4为对应的秘密信息Si ;
[0025] 所述信息载体数据的恢复阶段步骤如下:
[0026] (4)当K3彡K4时,如果Di的后三位d3 d2 dl属于集合1即{000,001,010,011},则该 Di的d3 d2 dl置为xyz;如果后三位d3 d2 dl属于集合2即{100,101,110,111},则该0丨的(13 d2 dl詈为uvw:
[0027] 当K3〈K4,如果Di的后三位d3 d2 dl属于集合2即{100,101,110,111},则该0丨的(13 (12(11置为172;如果0丨的后三位(13(12(11属于集合18卩{000,001,010,011},则该0丨的(13(12 dl置为uvw,实现载体数据流的恢复。
[0028] 所述步骤1中xyz和uvw的典型值如下:
[0029] 典型值:xyz 为 001,uvw 为 110〇
[0030] 本发明与现有技术相比的有益效果在于:
[0031] (1)本发明利用信息隐藏技术在数据中嵌入秘密信息进行传输,接收端可以从载 体数据中提取秘密信息,并高质量恢复原始载体数据。在不增加信息传输速率的情况下,能 在其中隐藏八分之一的大数据量(对应文献中说法,嵌入容量为lbpp(比特/像素),且具有 一定的抗压缩抗噪声能力。
[0032] (2)目前大容量的鲁棒信息隐藏算法大都是基于统计量的鲁棒信息隐藏方法,这 类方法的隐藏容量一般为1 %左右,有的方法可以达到0.8% (0.0625bpp),但远远低于本发 明的隐藏容量1/8 = 12.5% ;或者容量达到1/8,但抗压缩能力或恢复载体质量不高;
[0033] (3)目前的大容量的无损隐藏算法隐藏容量一般低于1/16,极个别图像隐藏容量 可以接近1/8,但本发明对任意图像载体隐藏容量都可达1/8;
[0034] (4)目前的无损隐藏算法大都无鲁棒性可言,任何攻击或干扰都会使得秘密信息 无法正确提取,但本发明的方法具有一定的鲁棒性,在一定噪声和有损压缩情况下,信息可 以无损恢复;
[0035] (5)目前的大容量的隐藏算法主要针对自然图像载体,不适合随机图像载体;但本 发明的方法可以适合图像数据载体,也适合非图像数据(如SAR数据)载体;
[0036] (6)本发明可根据图像PSNR要求,灵活调整隐藏容量,实际容量可以为1/8 = 2/16, 1/16,1/32或1/8到1/N之间的任意数据,N>8。若有意识降低隐藏容量,则相应的恢复载体图 像PSNR也相应提高3dB以上,PSNR全面达到40dB以上。
[0037] (7)本发明技术方案独特,实现方式简单,总实现复杂度低于目前的空域、变换域 信息隐藏方法,实用性大大提高。
【附图说明】
[0038]图1的(a)为本发明信息隐藏方法原理图;(b)为本发明提取隐藏信息的方法原理 图;
[0039] 图2的(&)、(13)、(〇)、((1)分别为本发明的仿真用载体图像1、2、3、4四幅图。
【具体实施方式】
[0040] 本发明的基本思路为:提出了一种抗压缩的大容量信息隐藏及提取方法,可以在 数据如图像数据中实现大容量的信息隐藏,同时具有抗压缩性能。其特点在于:该方法通过 对载体数据预先处理以及对秘密信息进行载体编码,把秘密信息隐藏在数据中进行传输, 不改变载体高位信息比特,即使经过一定的有损压缩,接收端也能高质量恢复秘密信息和 载体数据。本发明是为了满足用户信息隐藏容量大、鲁棒性、硬件实现复杂度低、兼顾图像 和非图像数据的要求而提出的,使得隐藏方法具有1/8或lbpp的隐藏容量,而且具有抗压缩 性能,突破了传统的大容量隐藏方法没有鲁棒性的局限,也突破了传统的变换域方法实现 复杂度高的局限。
[0041] 下面结合附图和具体实施例对本发明进行详细说明。
[0042] 本发明一种抗压缩的大容量信息隐藏及提取方法,包括数据预处理阶段、信息隐 藏嵌入阶段(如图1的(a)所示)、信息隐藏提取阶段、信息载体数据的恢复阶段;(如图1的 (b)所示)
[0043]所述数据预处理阶段步骤如下:
[0044] (1)载体数据流为Bl,B2,···Βη,秘密信息流为SI,S2,…Sn,每个载体数据Bi的值为 0-255之间的某个值,用8个二进制比特表示,i = 1,2,3,…,η,按位从高到低位排列为b8 b7 b6 b5 b4 b3 b2 bl,秘密信息为0或l,n为自然数,定义集合1为{000,001,010,011},集合2 为{100,101,110,111} ;
[0045] 提取并统计载体数据流B1,B2,…Bn中每个载体数据的后三位b3b2bl,如果后三位 匕3匕2 131属于集合18卩{000,001,010,011},则计数器1(1从0开始加1;如果后三位&3&2 131 属于集合2即{100,101,110,111},则计数器K2从0开始加1;
[0046]统计完载体数据流B1,B2,…Bn后,如果K1大于等于K2,则从集合1中取一种元素作 为xyz,从集合2中取一种元素作为uvw;如果K1小于K2,贝lj从集合2中取一种元素作为xyz,从 集合1中取一种元素作为uvw;
[0047]所述信息隐藏嵌入阶段步骤如下:
[0048] (2)如果秘密信息流中的Si等于与其对应的Bi中的b4,那么 [0049] 如果K1彡K2,则将该Bi中的b3 b2 bl置为xyz;
[0050] 如果K1〈K2,则将该Bi中的b3 b2 bl置为uvw;
[00511如果秘密信息流中的Si不等于与其对应的Bi中的b4,那么 [0052] 如果K1彡K2,则将该Bi中的b3 b2 bl置为uvw;
[0053] 如果K1〈K2,则将该Bi中的b3 b2 bl置为xyz;
[0054] 形成含密数据流为Cl,C2,···〇!,每个含密数据为Ci,i = 1,2,3,…,η,实现了信息 隐藏;
[0055]所述信息提取阶段步骤如下:
[0056] (3)假设含密数据流C1,C2,…Cn经过传输或噪声影响之后,变为带有噪声影响的 含密数据流D1,D2,···〇!!,Di为带有噪声影响的含密数据流中的数据,i = 1,2,3,…,η;
[0057] 提取含密数据Di的后四位d4 d3 d2 dl;
[0058] 统计含密数据流每个Di的后三位d3 d2 dl,如果Di的后三位d3 d2 dl属于集合1 即{000,001,010,011},则计数器1(3的值加+1;如果0丨的后三位(13(12(11属于集合28卩{100, 101,110,111},则计数器K4的值加1;
[0059] 完成所有Di统计后,当K3彡K4时,如果Di后三位d3 d2 dl属于集合1即{000,001, 010,011},则提取Di中的d4为对应的秘密信息Si;如果Di后三位d3 d2 dl属于集合2即 {100,101,110,111},则提取Di中的d4取反为对应的秘密信息Si ;
[0060] 当K3〈K4时,如果Di后三位d3 d2 dl属于集合2即{100,101,110,111},则提取01中 的d4取反为对应的秘密信息Si ;如果Di后三位d3 d2 dl属于集合1即{000,001,010,011}, 则提取Di中的d4为对应的秘密信息Si ;
[0061 ]所述信息载体数据的恢复阶段步骤如下:
[0062] (4)当K3彡K4时,如果Di的后三位d3 d2 dl属于集合1即{000,001,010,011},则该 Di的d3 d2 dl置为xyz;如果后三位d3 d2 dl属于集合2即{100,101,110,111},则该0丨的(13 d2 dl詈为uvw:
[0063] 当K3〈K4,如果Di的后三位d3 d2 dl属于集合2即{100,101,110,111},则该0丨的(13 (12(11置为172;如果0丨的后三位(13(12(11属于集合18卩{000,001,010,011},则该0丨的(13(12 dl置为uvw,实现载体数据流的恢复。
[0064]载体数据流为8132,一&1,在实际中优选来源于二维图像数据流、一维的采样数 据流,或优选来源于一维非图像数据流。
[0065] 所述步骤(1)中xyz和uvw的典型值如下:
[0066] 典型值:xyz 为 001,uvw 为 110〇
[0067] xyz本来属于集合1即{000,001,010,011}中某一个元素,uvw本来属于集合2即 {100,101,110,111}中某一个元素,在几幅典型图像仿真实验中发现典型值xyz为001,uvw 为110时,信息载体恢复的图像质量较高,PSNR值较大。
[0068] 信息隐藏技术已经应用于地面信息网络,也已经用于航天器及各类卫星数传系统 技术设计论证中,在今后必将得到更广泛应用。
[0069] 本发明提供了一种抗压缩的大容量信息隐藏及提取方法,具有非常大的隐藏容 量,可达1/8,同时该方法具有复杂度低、实现资源占用少等实用性的特点,从而在地面系统 以及航天器工程中都具有实用价值。
[0070] 为了验证本发明所提出的算法的性能,仿真实验中首先采用了UGR标准测试图像 库中4幅大小为512X512的8比特灰度图像数据,采用本发明进行信息隐藏试验。首先将0、1 分布等概的随机序列数据作为秘密信息嵌入的图像载体中,再将含密数据进行JPEG2000数 据压缩,以提取出的秘密信息和嵌入时秘密信息的误比特率来衡量本方法的抗压缩性能。
[0071] 仿真实验中xyz取典型值001,uvw取典型值110,隐藏容量1/8,1/16,1/32,使用 JEPG2000以R = 2、3、4倍压缩率对含密数据进行压缩,4副测试图像如图2(a)(b)(c)(d)所 示,图2 (a)为文件名为Lena. bmp的bmp格式文件,图2(b)为文件名Boats, bmp的bmp格式文 件,图2(c)为文件名Peppers .bmp的bmp格式文件,图2的⑷为文件名Airplane .bmp的bmp格 式文件,本发明方法仿真结果如表1、2、3所示。
[0072] 表1本发明的抗压缩性能(嵌入容量为1/8)
[0073]
[0074]表2本发明的抗压缩性能(嵌入容量为1/16)
[0075]
[0076]表3本发明的抗压缩性能(嵌入容量为1/32)
[0077]
[0078] 经过仿真发现,对于所用的数字图像,不压缩情况下,在嵌入容量为1/8时,信息能 无损提取,恢复的载体图像PSNR为40dB左右。
[0079]仿真结果说明本发明方法具有较大的容量。我们经过仿真,结论如下:在JEPG2000 压缩情况下,对于所用的数字图像,在嵌入容量为1/8时,含密图像的PSNR为38dB左右,在嵌 入容量为1/32时含密图像的PSNR为44dB左右。
[0080] 仿真结果还可以看出,本发明方法在经过2倍JEPG2000数据压缩时,在没有添加纠 错码的情况下,提出的秘密信息误比特率要么误码率为〇,要么至少在l〇e-4级别。
[0081] 本发明提出的方法可以通过降低嵌入量进一步提高抗压缩性能,在嵌入量为1/32 时,2倍JEPG压缩条件下提出的秘密信息没有产生任何错误,在3倍压缩情况下误码率性能 为接近l〇e-3级别,在4倍压缩情况下误码率性能接近10e-2级别,在实际中事先对秘密数据 经过纠错编码,牺牲一定的隐藏容量就可以达到低误码或无误码,纠错码可以所用RS码、 LDPC码或任何具有纠错能力的码。
[0082] 本发明提出的一种抗压缩的大容量信息隐藏及提取方法,在涉及图像传输的场合 都可以应用。
[0083]本发明说明书中未作详细描述的内容属于本领域技术人员的公知技术。
【主权项】
1. 一种抗压缩的大容量信息隐藏及提取方法,其特征在于包括数据预处理阶段、信息 隐藏嵌入阶段、信息隐藏提取阶段、信息载体数据的恢复阶段: 所述数据预处理阶段步骤如下: (1) 载体数据流为BI,B2,…Bn,秘密信息流为SI,S2,…Sn,每个载体数据Bi的值为O-255之间的某个值,用8个二进制比特表示,i = 1,2,3,…,n,按位从高到低位排列为 匕8匕766656仙362131,秘密信息为0或1,11为自然数,定义集合1为{000,001,010,011},集合2 为{100,101,110,111} ; 提取并统计载体数据流BI,B2,…Bn中每个载体数据的后三位b3b2bl,如果后三位 b3b2bl属于集合I即{000,001,010,011},则计数器1(1从0开始加1;如果后三位&3&2131属于 集合2即{100,101,110,111},则计数器K2从0开始加1; 统计完载体数据流BI,B2,…Bn后,如果Kl大于等于K2,则从集合1中取一种元素作为 xyz,从集合2中取一种元素作为uvw;如果Kl小于K2,则从集合2中取一种元素作为xyz,从集 合1中取一种元素作为uvw; 所述信息隐藏嵌入阶段步骤如下: (2) 如果秘密信息流中的Si等于与其对应的Bi中的b4,那么 如果Kl彡K2,则将该Bi中的b3b2bl置为xyz; 如果K1〈K2,则将该Bi中的b3b2bl置为uw; 如果秘密信息流中的Si不等于与其对应的Bi中的b4,那么 如果Kl彡K2,则将该Bi中的b3b2bl置为uw; 如果K1〈K2,则将该Bi中的b3b2bl置为xyz; 形成含密数据流为Cl,C2,…Cn,每个含密数据为Ci,? = 1,2,3,···,η,实现了信息隐藏; 所述信息提取阶段步骤如下: (3) 假设含密数据流Cl,C2,…Cn经过传输或噪声影响之后,变为带有噪声影响的含密 数据流Dl,D2,'"Dn,Di为带有噪声影响的含密数据流中的数据,i = 1,2,3,…,η;每个Di的 值为0-255之间的某个值,用8个二进制比特表示,i = 1,2,3,…,η,按位从高到低位排列为 d8d7d6d5d4d3d2dl. 提取含密数据Di的后四位d4d3d2dl; 统计含密数据流每个Di的后三位d3d2dl,如果Di的后三位d3d2dl属于集合I即{000, 001,010,011},则计数器K3的值加+1;如果Di的后三位d3d2dl属于集合2即{100,101,110, 111},则计数器K4的值加1; 完成所有Di统计后,当K3彡K4时,如果Di后三位d3d2dl属于集合I即{000,001,010, 011},则提取Di中的d4为对应的秘密信息Si;如果Di后三位d3d2dl属于集合2即{100,101, 110,111 },则提取Di中的d4取反为对应的秘密信息Si ; 当K3〈K4时,如果Di后三位d3d2dl属于集合2即{100,101,110,111},则提取Di中的d4取 反为对应的秘密信息Si ;如果Di后三位d3d2dl属于集合I即{000,001,010,011},则提取Di 中的d4为对应的秘密信息Si ; 所述信息载体数据的恢复阶段步骤如下: (4) 当K3彡K4时,如果Di的后三位d3d2dl属于集合I即{000,001,010,011},则该Di的 d3d2dl置为xyz;如果后三位d3d2dl属于集合2即{100,101,110,111},则该Di的d3d2dl置为 UVW; 当K3〈K4,如果Di的后三位d3d2dl属于集合2即{100,101,110,111},则该Di的d3d2dl置 为xyz ;如果Di的后三位d3d2dl属于集合I即{000,001,010,011},则该Di的d3d2dl置为uvw, 实现载体数据流的恢复。2.根据权利要求1所述的一种抗压缩的大容量信息隐藏及提取方法,其特征在于所述 步骤1中xyz和uvw的典型值如下: 典型值:xyz为001,uvw为110 〇
【文档编号】H04N19/467GK105933320SQ201610369064
【公开日】2016年9月7日
【申请日】2016年5月26日
【发明人】周诠, 王鹏, 呼延烺, 魏佳圆, 刘娟妮
【申请人】西安空间无线电技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1