首页 / 专利库 / 软件 / 无损压缩 / 熵编码 / 一种JPEG图像信息隐藏的方法

一种JPEG图像信息隐藏的方法

阅读:8发布:2020-05-12

专利汇可以提供一种JPEG图像信息隐藏的方法专利检索,专利查询,专利分析的服务。并且本 发明 提供的一种JPEG图像信息隐藏的方法,通过获取JPEG图像中所有ZRV值对和相应的AC系数的绝对值;根据所述预设的规则和AC系数的绝对值从所述所有ZRV值对中选取有效的ZRV值对;根据所述有效的ZRV值对对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像,以AC系数的绝对值作为核心参考特征,提高了信息隐藏的 载荷 能 力 ,尤其是提高纹理平滑图像的载荷能力,而且计算简单,易实现,且具有较好的兼容性,能较好的保持信息隐藏前后JPEG图像比特流的文件大小。,下面是一种JPEG图像信息隐藏的方法专利的具体信息内容。

1.一种JPEG图像信息隐藏的方法,其特征在于,包括步骤:
S1、获取JPEG图像中所有ZRV值对和相应的AC系数的绝对值;
S2、根据所述预设的规则和AC系数的绝对值从所述所有ZRV值对中选取有效的ZRV值对;
S3、根据所述有效的ZRV值对对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像。
2.根据权利要求1所述的JPEG图像信息隐藏的方法,其特征在于,步骤S1包括:
S11、获取JPEG图像,并从所述JPEG图像的比特流中解析出所有的MCU;
S12、依次从每个MCU中解码出所有ZRV值对和相应的AC系数,通过AC系数生成AC系数的绝对值,并将第l个MCU中所有ZRV值对记为 其中, 表示
为第l个MCU的第k个ZRV值对, 表示第k个ZRV的系数, 表示系数 前连续零系数的个数,l的取值范围为[1,M],M表示所有MCU的总数量。
3.根据权利要求2所述的JPEG图像信息隐藏的方法,其特征在于,步骤S2包括:
S21、根据第l个MCU中所有ZRV值对计算 并判断N是否大于2,若是,则执行步骤S2;
S22、从第l个MCU中所有ZRV值对中选取N个ZRV值对,构成第l个MCU的临时ZRV值对序列,所述临时ZRV值对序列包括第1个ZRV值对 第Kl-N+1个ZRV值对 到第Kl-1个ZRV值对
S23、判断所述临时ZRV值对序列是否满足预设条件,若满足,则将所述临时ZRV值对序列选取为第l个MCU中有效的ZRV值对序列。
4.根据权利要求3所述的JPEG图像信息隐藏的方法,其特征在于,所述的判断所述临时ZRV值对序列是否满足预设条件具体为:
判断l1中的AC系数的绝对值 是否大于1;
判断 是否为所述临时ZRV值对序列中所有AC系数的绝对值的最大值以及所述是否是唯一的;
若 大于1且所述 是所述临时ZRV值对序列中所有AC系数的绝对值的最大值,并且是唯一的,则满足,否则,不满足。
5.根据权利要求3所述的JPEG图像信息隐藏的方法,其特征在于,步骤S3:
S31、根据所述有效的ZRV值对构建ZRV状态-秘密信息的映射关系;
S32、根据所述映射关系对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像。
6.根据权利要求5所述的JPEG图像信息隐藏的方法,其特征在于,步骤S31具体为:
根据所述第l个MCU中有效的ZRV值对序列构建ZRV状态-秘密信息的映射关系。
7.根据权利要求6所述的JPEG图像信息隐藏的方法,其特征在于,步骤S32包括:
S321:根据所述映射关系将所述第l个MCU中有效的ZRV值对序列旋转得到第l个MCU中藏入秘密信息的ZRV值对序列;
S322:根据所述第l个MCU中藏入秘密信息的ZRV值对序列对第l个MCU的临时ZRV值对序列进行替换,得到重组后的第l个MCU;
S323:对所有的MCU进行循环,得到所有MCU对应的重组后的MCU;
S324:分别对所有重组后的MCU进行熵编码,得到隐藏后的JPEG图像。

说明书全文

一种JPEG图像信息隐藏的方法

技术领域

[0001] 本发明涉及多媒体信息安全技术领域,特别涉及一种JPEG图像信息隐藏的方法。

背景技术

[0002] 在2018年,He等人在IEEE Transactions on Circuits and Systems for Video Technology提出了A Novel High-Capacity Reversible Data Hiding Scheme for Encrypted JPEG Bitstreams(一种在加密JPEG比特流上实现高藏量信息隐藏的算法)。首先,提出了一种基于置换的DC与AC分离式图像加密方法。该加密方法主要特点是能够置乱图像的同时保持了AC系数的某些特性不变。在此基础上,提出了在AC系数上隐藏信息的策略。
[0003] 根据JPEG的编码标准,首先从接收到的加密JPEG比特流中解析出所有的MCU,并解码成zero-runs/value值对形式,并记为ZRV。为了表述方便,对于第l个MCU,假设其解码出来的zero-runs/value值对ZRVl表示如下:
[0004]
[0005] 其中 表示第l个MCU中第k个zero-runs/value值对, 表示当前值对所对应的AC系数值, 表示在 之前到上一个非零系数 之间的零系数个数。K是第l个MCU中zero-runs/value值对的数量。
[0006] He等人发现,对于大部分MCU而言,ZRVl中的 通常在位置相对靠后的非零系数取得较(最)大的值。更具体一点,每个MCU中,最后一个非零AC系数的zero-runs(即 )的值大概率是这个MCU中最大的。而刚好这个特点,可以用于进行信息隐藏。因此,He等人将所有MCU分为常规MCU,奇异MCU和不可藏MCU。其中,奇异MCU和不可藏MCU不用于隐藏信息,其数量相对较少;与此同时,常规MCU和奇异MCU需要记录并保存。常规MCU是指 在最后一个ZRV中取得唯一最大值的MCU,且K大于等于N+1。(用于藏log2 N比特信息)
[0007] 对于常规MCU,根据每个MCU的K的不同,能够藏入不同位数(log2 N)的秘密信息。具体是,从当前MCU临时构建长度为N的值对序列,包括,第2个ZRV值对到第N个ZRV值对,以及最后一个ZRV值对。对该长度为N的值对序列,进行右移旋转,从而可获得N中状态,每一种状态可用于代表某一秘密信息,因此可实现log2N比特的信息隐藏能
[0008] 在秘密信息提取的阶段,同样可以从接收到的JPEG比特流中解析出每个MCU的ZRV值对;然后用同样的方法构建临时长度为N的值对序列(包括,第2个ZRV值对到第N个ZRV值对,以及最后一个ZRV值对)。由于在嵌入阶段是选择那些在最后一个ZRV值对中取得唯一最大值的MCU中隐藏信息,因此在解密时,根据这个特点推导并提取秘密信息。同时可以将当前MCU的序列恢复(反旋转)成嵌入前的状态(最后一个ZRV值对中具有最大 值)。
[0009] 上述方法仍存在以下缺点:
[0010] 缺点1:载体的载荷能力(藏量)有限,可进一步提升。He等人提出的以中 值的大小作为设计各个状态序列的核心参考特征,从而实现秘密信息隐藏。具体地,从其方法给出的实验数据中,平均约53.56%的MCU可用于隐藏信息(见表1),这很大程度上限制了其隐藏能力。特别是在纹理相对平滑的图像上,可藏的MCU明显降低。

发明内容

[0011] (一)要解决的技术问题
[0012] 为了解决现有技术的上述问题,本发明提供JPEG图像信息隐藏的方法,能够提高信息隐藏的载荷能力,尤其是提高纹理平滑图像的载荷能力。
[0013] (二)技术方案
[0014] 为了达到上述目的,本发明采用的主要技术方案包括:
[0015] 一种JPEG图像信息隐藏的方法,包括步骤:
[0016] S1、获取JPEG图像中所有ZRV值对和相应的AC系数的绝对值;
[0017] S2、根据所述预设的规则和AC系数的绝对值从所述所有ZRV值对中选取有效的ZRV值对;
[0018] S3、根据所述有效的ZRV值对对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像。
[0019] (三)有益效果
[0020] 本发明的有益效果在于:通过获取JPEG图像中所有ZRV值对和相应的AC系数的绝对值;根据所述预设的规则和AC系数的绝对值从所述所有ZRV值对中选取有效的ZRV值对;根据所述有效的ZRV值对对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像,以AC系数的绝对值作为核心参考特征,提高了信息隐藏的载荷能力,尤其是提高纹理平滑图像的载荷能力,而且计算简单,易实现,且具有较好的兼容性,能较好的保持信息隐藏前后JPEG图像比特流的文件大小。
附图说明
[0021] 图1为本发明JPEG图像信息隐藏的方法的流程图
[0022] 图2为本发明实施例的ZRV状态-秘密信息的映射关系表。

具体实施方式

[0023] 为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
[0024] 实施例一
[0025] 请参照图1至2,一种JPEG图像信息隐藏的方法,包括步骤:
[0026] S1、获取JPEG图像中所有ZRV值对和相应的AC系数的绝对值;
[0027] 步骤S1包括:
[0028] S11、获取JPEG图像,并从所述JPEG图像的比特流中解析出所有的MCU;
[0029] S12、依次从每个MCU中解码出所有ZRV值对和相应的AC系数,通过AC系数生成AC系数的绝对值,并将第l个MCU中所有ZRV值对记为 其中,表示为第l个MCU的第k个ZRV值对, 表示第k个ZRV的系数, 表示系数 前连续零系数的个数,l的取值范围为[1,M],M表示所有MCU的总数量。
[0030] S2、根据所述预设的规则和AC系数的绝对值从所述所有ZRV值对中选取有效的ZRV值对;
[0031] 步骤S2包括:
[0032] S21、根据第l个MCU中所有ZRV值对计算 并判断N是否大于2,若是,则执行步骤S2;
[0033] S22、从第l个MCU中所有ZRV值对中选取N个ZRV值对,构成第l个MCU的临时ZRV值对序列,所述临时ZRV值对序列包括第1个ZRV值对 第Kl-N+1个ZRV值对 到第Kl-1个ZRV值对
[0034] S23、判断所述临时ZRV值对序列是否满足预设条件,若满足,则将所述临时ZRV值对序列选取为第l个MCU中有效的ZRV值对序列。
[0035] 所述的判断所述临时ZRV值对序列是否满足预设条件具体为:
[0036] 判断 中的AC系数的绝对值 是否大于1;
[0037] 判断 是否为所述临时ZRV值对序列中所有AC系数的绝对值的最大值以及所述是否是唯一的;
[0038] 若 大于1且所述 是所述临时ZRV值对序列中所有AC系数的绝对值的最大值,并且是唯一的,则满足,否则,不满足。
[0039] S3、根据所述有效的ZRV值对对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像。
[0040] 步骤S3:
[0041] S31、根据所述有效的ZRV值对构建ZRV状态-秘密信息的映射关系;
[0042] 步骤S31具体为:
[0043] 根据所述第l个MCU中有效的ZRV值对序列构建ZRV状态-秘密信息的映射关系。
[0044] S32、根据所述映射关系对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像。
[0045] 步骤S32包括:
[0046] S321:根据所述映射关系将所述第l个MCU中有效的ZRV值对序列旋转得到第l个MCU中藏入秘密信息的ZRV值对序列;
[0047] S322:根据所述第l个MCU中藏入秘密信息的ZRV值对序列对第l个MCU的临时ZRV值对序列进行替换,得到重组后的第l个MCU;
[0048] S323:对所有的MCU进行循环,得到所有MCU对应的重组后的MCU;
[0049] S324:分别对所有重组后的MCU进行熵编码,得到隐藏后的JPEG图像。
[0050] 实施例二
[0051] 本实施例和实施例一的区别在于,本实施例将结合具体的应用场景,进一步说明本发明上述JPEG图像信息隐藏的方法是如何实现的:
[0052] S1、获取JPEG图像中所有ZRV值对和相应的AC系数的绝对值;
[0053] 步骤S1包括:
[0054] S11、获取JPEG图像,并从所述JPEG图像的比特流JS中解析出所有的MCU;
[0055] S12、依次从每个MCU中解码出所有ZRV值对和相应的AC系数,通过AC系数生成AC系数的绝对值,并根据JPEG标准将第l个MCU中所有ZRV值对记为其中, 表示为第l个MCU的第k个ZRV值对, 表示第k个ZRV的系数, 表示系数 前连续零系数的个数,l的取值范围为[1,M],M表示所有MCU的总数量。
[0056] 步骤S2包括:
[0057] S21、根据第l个MCU中所有ZRV值对计算 并判断N是否大于2,若是,则执行步骤S2,否则,判断当前MCU为不可隐藏MCU并对第l+1个MCU执行步骤S21;
[0058] S22、从第l个MCU中所有ZRV值对中选取N个ZRV值对,构成第l个MCU的临时ZRV值对序列,所述临时ZRV值对序列包括第1个ZRV值对 第Kl-N+1个ZRV值对 到第Kl-1个ZRV值对 S23、判断所述临时ZRV值对序列是否满足预设条件,若满足,则将所述临时ZRV值对序列选取为第l个MCU中有效的ZRV值对序列。
[0059] 所述的判断所述临时ZRV值对序列是否满足预设条件具体为:
[0060] 判断 中的AC系数的绝对值 是否大于1;
[0061] 判断 是否为所述临时ZRV值对序列中所有AC系数的绝对值的最大值以及所述是否是唯一的;
[0062] 若 大于1且所述 是所述临时ZRV值对序列中所有AC系数的绝对值的最大值,并且是唯一的,则满足,并判断当前MCU为常规MCU,否则,不满足,并判断当前MCU为异常MCU,并重新计算 跳转到步骤S21。
[0063] S3、根据所述有效的ZRV值对对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像。
[0064] 步骤S3:
[0065] S31、根据所述有效的ZRV值对构建ZRV状态-秘密信息的映射关系;
[0066] 步骤S31具体为:
[0067] 根据所述第l个MCU中有效的ZRV值对序列构建ZRV状态-秘密信息的映射关系。
[0068] S32、根据所述映射关系对所述JPEG图像进行信息隐藏,得到隐藏后的JPEG图像。
[0069] 步骤S32包括:
[0070] S321:根据所述映射关系将所述第l个MCU中有效的ZRV值对序列旋转得到第l个MCU中藏入秘密信息的ZRV值对序列;
[0071] S322:根据所述第l个MCU中藏入秘密信息的ZRV值对序列对第l个MCU的临时ZRV值对序列进行替换,得到重组后的第l个MCU;
[0072] 具体地,如图2所示,其中, 表示第k个ZRV旋转状态,其对应的秘密信息列中的数字代表对应所隐藏的秘密信息(log2 N比特)。根据所要隐藏的秘密信息,将有效的ZRV值旋转得到藏入秘密信息的ZRV值对序列,且图2中(a)为ZRV状态-秘密信息的映射关系表,(b)为ZRV状态-秘密信息的映射关系表的示例;
[0073] S323:对所有的MCU进行循环,得到所有MCU对应的重组后的MCU;
[0074] S324:分别对所有重组后的MCU进行熵编码,得到隐藏后的JPEG图像的比特流。
[0075] 表1为本发明和He等人的实验数据对比表
[0076]
[0077] 表2为He等人的方法和本发明的实验结果对比表
[0078]
[0079] 从表2可知,本发明以AC系数的绝对值作为核心参考特征,提高了信息隐藏的载荷能力,尤其是提高纹理平滑图像的载荷能力。
[0080] 表3为He等人的方法和本发明加密后载荷能力对比表
[0081]
[0082] 以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈