推动国内学术交流 助力科研成果推广

期刊论文、出版出书、评职称学术咨询

社会认可、全国通用、升职加薪的通行证

基于频率选择扩容的JPEG图像可逆信息隐藏技术

分类:电子论文 时间:2022-04-25 热度:658

  摘 要: JPEG 图像的可逆信息隐藏技术已被广泛利用, 为了提高 JPEG 图像在可逆信息隐藏过程中的嵌入容量和嵌入效率, 文中提出了一种基于频率选择扩容的可逆信息隐藏技术。 首先对原始图像进行量化, 生成若干个离散余弦变换 (DCT) 块, 将 DCT 块根据块内是否含有 ±3 和 ±4 值的交流系数值分成两种类型, 以选择不同的嵌入位置进行嵌入,并根据频率选择策略计算块内各位置的嵌入失真, 按照嵌入失真排序后的频率选择嵌入位置并嵌入秘密信息。 实验结果表明, 文中的算法扩大了嵌入容量且减小了文件增加量。

基于频率选择扩容的JPEG图像可逆信息隐藏技术

  关键词: JPEG 图像; 可逆信息隐藏; 交流系数; 直方图平移; 频率选择

  在经过第三次工业革命之后, 科技迅猛发展,人类因此快速迈进了信息时代, 信息安全成了广大民众最担心的问题之一。 无论是企业的防伪认证,还是军事信息的加密传输, 可逆信息隐藏技术在实际生活中的应用越来越多。 作为一种特殊类型的信息隐藏方式, 可逆信息隐藏是指传输方可以将数据进行加密嵌入到图像当中并传输给接收方, 接收方从载体图像按照秘钥提取出秘密数据并恢复原始图像的算法。 因此可逆信息隐藏技术也成了学术界热衷讨论和研究的课题之一。

  在过去的二十多年时间中, 提出了许多可逆信息隐藏算法, 这些算法大体上可以分为 3 类: 基于无损压缩的可逆信息隐藏算法[1⁃2]、 基于差分扩展的可逆信息隐藏算法[3⁃4] 和基于直方图平移的可逆信息隐藏算法[5]。 为了进一步增强嵌入能力, 又有学者改进了基于直方图平移的算法, 主要分为两类:利用差分图像的直方图特征的 “差分直方图平移” 技术 (DHS)[6⁃7] 以及预测误差直方图移位技术(PEHS)[8⁃11], 早期的可逆信息隐藏算法大多数是在未压缩图像上进行的, 但是随着实际应用的需要, 现如今大多数图像是以压缩形式存储, 加上压缩图像含有较少的冗余, 要想实现可逆信息隐藏难度更大。 而在压缩图像当中 JPEG 图像因其使用的广泛性成为了目前最受欢迎的图像格式之一, 因此得到了更进一步的重视, 许多学者对此进行了研究。

  JPEG 图像的常见可逆信息隐藏算法主要包括基于量化表修改[12⁃14]、 基于 Huffman 表修改[15⁃20]和基于离散余弦变换 (DCT) 系数修改[21⁃27]。 基于量化表修改的算法由于破坏了视觉质量与文件膨胀量之间的平衡, 会造成文件增加量显著增加; 而基于 Huffman 表修改的算法虽然可以做到无损压缩, 但其嵌入容量较低, 无法满足日常生活的需求; 而基于 DCT 系数修改的算法能够做到在满足人眼无法识别的视觉误差的前提下仍能保持较低的文件膨胀和足够大的嵌入容量。 Huang 等[21] 提出了使用直方图移位技术修改 DCT 系数的算法, 将秘密信息嵌入到值为 ± 1 的交流 (AC) 系数中,0AC 系 数 和 直 流 ( DC) 系 数 保 持 不 变。 Wedaj等[22]在文献 [21] 的算法的基础上进行优化, 将量化步长作为块排序依据, 有效降低了图像失真。

  Hou 等[23]提出对每个子块计算模拟失真, 并通过模拟失真对块进行排序。 Xie 等[24]提出了一种将小AC 系数进行加倍的 JPEG 图像可逆信息隐藏算法,将可嵌入位置从 ± 1 扩展为了 ± 1 和 ± 2, 极大扩展了嵌入容量, 但是在相同嵌入荷载情况下其文件增加量并没有 减 少, 因 此 优 化 程 度 并 不 理 想。 Li等[25]将嵌入位置以每两个作为一个二维坐标, 并根据其取值的不同按照嵌入规则在二维直方图上进行修改。 Yin 等[26]综合考虑了视觉质量和文件膨胀量对嵌入秘密信息的影响, 提出一种多目标优化算法, 优先选择优化后指标较好的块进行嵌入。 He等[27]提出了一种综合考虑了视觉质量和文件增加量的负影响模型, 通过设置参数来调节更倾向于优化视觉质量还是文件增加量, 并且提出了一种频率选择策略, 与文献 [21] 的算法相比可以获得更高的视觉质量和更低的文件增加量。 但是文献 [27]的算法只适用于嵌入容量较小的块, 因此本研究提出了一种新的算法, 既兼顾了文献 [27] 的算法中提出的频率选择策略, 又能充分发挥文献 [24]算法的高嵌入容量的优势, 在保证更大嵌入容量的同时能减小文件增加量, 同时在较大嵌入荷载条件下保证良好的视觉质量。

  1 相关工作

  1. 1 JPEG 编码结构

  JPEG 编码器主要包括 3 部分: DCT、 量化器和熵编码器。 通过将二维 DCT 应用于每个不重叠的 8 × 8 块, 原始图像数据从空间域转换到频域。然后用量化表来量化获得的 DCT 系数。 量化的DCT 系数以之字形扫描顺序排列, 并使用对 DC 系数的差分脉冲编码调制和对 AC 系数的行程编码进行预压缩。 最后, 对符号字符串进行霍夫曼编码,以获得最终的压缩比特流, 最后获取 JPEG 图像。JPEG 压缩的主要步骤如图 1 所示。

  1. 2 文献 [21] 的算法

  文献 [21] 提出了一种基于 DCT 系数修改的JPEG 图像可逆信息隐藏技术, 通过直方图移位的嵌入方式将秘密信息嵌入到 DCT 块内。 对于量化后的若干个 DCT 块, 选取块内值为 ± 1 的 AC 系数值嵌入秘密信息 s, 并依据秘密信息 s 的取值来决定移位方式。

  嵌入过程中, 由于修改值为 0 的 AC 系数会对图像造成巨大的视觉失真, 因此对其不做任何修改, 且对于不为 0 的非嵌入位, 则需要向外扩展一位, 其目的是能够完整地提取出秘密信息且恢复原始图像。 令 C = {c1 ,c2 ,…,cN }, 表示 JPEG 图像量化后的 DCT 块内非零 AC 系数, 其中 N 表示非零AC 系数的个数, c = 1 或者 - 1 作为嵌入位置, 在嵌入秘密信息 s 时需要按照秘密信息 s 的值来决定是否移位。 当 s =0 时嵌入位置保持不变, 当 s =1 时则向绝对值大的位置移动一位, 而绝对值大于 1 的非嵌入位置则需要向外再移动一位。 如图 2 所示。

  图中曲线 1 表示当 AC 系数位是 ± 1, 嵌入秘密信息 0 时 AC 系数维持不变, 曲线 2 表示当 AC系数位是 ± 1 且嵌入秘密信息 1 时 AC 系数向外移动一位, 曲线 3 表示当 AC 系数位绝对值大于 1 时向外移动一位。

  2 本研究提出的算法

  2. 1 确定阈值

  同一图像在不同嵌入荷载的情况下, 其应该选用的频率位数是不同的, 为减少计算量应该设置一个阈值作为在某一嵌入荷载情况下需选用的频率位数。 将嵌入位置扩展成 ± 1 和 ± 2 值的 AC 系数之后, 由图 3 所示的嵌入规则可知, 当选择 ± 1 值的AC 系数作为嵌入位置时, 其移位为 0 或者 1, 而当嵌入位置选择为 ± 2 的 AC 系数时, 其移位为 1或者 2, 因此在嵌入时应该优先选择 ± 1 值的 AC系数。

  2. 2 改进算法的思想

  本研究综合考虑了图像的嵌入容量和嵌入失真,在保持高嵌入效率的同时获取更大的嵌入容量。 对原始图像量化后的若干个 DCT 块使用文献 [24]算法中的对于块分类的思想, 将可嵌入位置扩大获取更大的嵌入容量, 并对所有嵌入位置使用文献 [27] 提出的频率选择策略, 按嵌入失真选择合适的频率作为嵌入位置, 增大了嵌入效率。秘密信息嵌入和提取的流程如图 4 所示。

  2. 3 秘密信息的嵌入过程

  秘密信息的嵌入过程如下:

  (1) 将原始 JPEG 图像进行量化得到若干个DCT 块, 根据块内所含 0AC 系数的个数进行降序排序, 生成位置图 M1, 并根据其内部是否含有 ± 3或者 ± 4 的 AC 系数值分为 “移位块” 和 “非移位块”, 在位置图中做上标记 (如 “移位块” 标记 0, “非移位块” 标记 1);

  (2) 解码完毕后获取原始图像的尺寸和量化表项, 并根据图像尺寸和量化表项计算 DCT 块内每个频率的嵌入失真值, 按升序排列, 生成位置图 M2;

  (3) 结合给定荷载值, 按照式 (13) 计算阈值 T;

  (4) 在嵌入阶段, 对于 “移位块”, 按照文献 [21]的算法进行嵌入, 嵌入时在不大于阈值 T 的情况下按照步骤 (2) 生成的频率位置图 M2 的频率位排序顺序进行嵌入, 当某一 DCT 块内频率已达到阈值且秘密信息未嵌入完毕时, 根据位置图 M1 选择下一个 DCT 块进行嵌入, 直到达到最大嵌入容量或嵌入完毕;

  (5) 在嵌入阶段, 对于 “非移位块”, 按照文献 [24] 的算法进行嵌入, 嵌入时在不大于阈值 T的情况下按照步骤 (2) 生成的频率位置图 M2 的频率位排序顺序进行嵌入, 当某一 DCT 块内频率已达到阈值且秘密信息未嵌入完毕时, 根据位置图M1 选择下一个 DCT 块进行嵌入, 直到达到最大嵌入容量或嵌入完毕;

  (6) 嵌入完毕后, 将辅助信息 (位置图 M1、秘密信息长度、 阈值 T 等) 压缩完后嵌入到载密DCT 系数的表层中;(7) 对嵌入完毕的 DCT 块进行熵编码, 并生成嵌入秘密信息的 JPEG 图像。

  2. 4 秘密信息提取和恢复原始图像的过程

  提取秘密信息和恢复原始图像过程是嵌入秘密信息过程的逆操作, 其主要步骤如下所示:

  (1) 将载密 JPEG 图像进行量化得到若干个DCT 块;

  (2) 从 DCT 块表层中获取嵌入过程得到的辅助信息 (DCT 块排序的位置图 M1、 秘密信息长度、 阈值 T 等), 并用嵌入步骤相同的算法计算得到块内频率排序的位置图 M2;

  (3) 按照 M1 中的顺序依次选择 DCT 块进行嵌入, 且依据 M1 上的标记判断该 DCT 系数块是 “移位块” 还是 “非移位块”;

  (4) 若该 DCT 块是 “ 移位 块” , 则 按 照 文献 [21] 的算法提取秘密信息。 提取时在不大于阈值 T 的情况下按照位置图 M2 将频率作为提取位置, 当某一 DCT 块内频率已经达到阈值且秘密信息还未提取完毕时, 根据位置图 M1 选择下一个DCT 块进行提取, 直到提取完所有秘密信息;

  (5) 若该 DCT 块是 “非移位块”, 则按照文献 [24] 的算法提取秘密信息。 提取时在不大于阈值 T 的情况下按照位置图 M2 将频率作为提取位置, 当某一 DCT 块内频率已经达到阈值且秘密信息还未提取完毕时, 根据位置图 M1 选择下一个DCT 块进行提取, 直到提取完所有秘密信息;

  (6) 提取完所有的秘密信息后, 对量化的DCT 系数进行熵编码以生成恢复 JPEG 图像。

  3 实验结果与分析

  为评估本研究提出算法的嵌入效率和嵌入容量, 选用的测试图像是从 USC⁃SIPI 图像数据库中选取的 4 张常见的 512 × 512 灰度图像 ( Baboon、Lena、 Peppers、 Couple, 见图5), 设置了 4 个不同的质量因子 (QF), 在相同嵌入荷载情况下进行测试。

  对比 实 验 选 择 上 文 中 提 到 的 文 献 [ 21 ]、[24]、 [27] 的算法。 文献 [21] 的算法是最经典的, 也是初次提出基于 DCT 系数修改的算法; 文献 [27] 提出了综合考虑视觉质量和文件增加量的负影响模型, 并提出了频率选择策略, 极大地改善了图像嵌入效果; 文献 [24] 的算法提出了将嵌入位置从 ± 1 扩展为 ± 1 和 ± 2, 极大地提高了嵌入容量。

  3. 1 嵌入容量

  表 1 - 表 3 示出了本研究的算法与对比的算法在不同质量因子下的最大嵌入容量以及在最大嵌入荷载下的 PSNR 和文件增加量。 可以看出, 由于本研究提出的算法和文献 [24] 的算法扩展了嵌入位置, 获得了更大的嵌入容量, 但是由于嵌入了更多的秘密信息, 因此其 PSNR 相较于嵌入荷载较小的文献 [21] 算法和文献 [27] 算法更低, 且文件增加量较大。 由于达到最大嵌入荷载, 文献 [27]算法中提出的负影响模型和频率选择策略发挥作用也很 小, 因 此 文 献 [ 21 ] 算 法 和 文 献 [27]算法的评价指标是极其相似的。

  由表 1 可以看出, 除 Baboon 图像外扩展嵌入位置的算法能够比未扩展的算法多嵌入的秘密信息在 1000 个以上, 即使对于 Baboon 图像多嵌入的秘密信息也在 600 个以上。 对于像 Baboon 和 Couple这类复杂纹理图像, 可增多的嵌入位会随着 QF 值的增多而减少, 这是因为复杂纹理图像中频率系数更复杂, 非移位更多。 对于像 Lena 和 Peppers 这类简单纹理图像, 可增多的嵌入位会随着 QF 值的增多而增多, 例如 Lena 图像在 QF 值为 50 时可多嵌入的秘密信息在 1 200 个以上, 但是在 QF 值为 80时可多嵌入的秘密信息在 1600 个以上。

  3. 2 视觉质量

  在指定荷载且 QF 值分别为 50、 60、 70 情况下, 其 PSNR 折线图如图 6 - 图 8 所示。

  PSNR 的具体计算方式在第 2. 4 节中已经给出,表示载密图像与原始图像之间的视觉质量差别,PSNR 越大表示载密图像与原始图像之间的差别越小。 图 6 - 图 8 分别示出了 Lena、 Couple、 Peppers图像在 QF 值为 50、 60、 70 下的嵌入荷载与 PSNR的折线图。 将本研究提出的算法与文献 [24] 和文献 [21] 的算法对比可以发现, QF 为 50 和 60情况下本研究提出的算法是明显优于文献 [24]和文献 [21] 算法的; 当 QF 取到 70 时, 在 Lena图像和 Peppers 图像上, 本研究提出的算法在嵌入荷载为 8000 b 时仅高于文献 [24] 的算法, 但是随着嵌入荷载的增大, 本研究提出的算法将会优于所有对比算法。 这是因为当嵌入荷载较大时, 频率选择策略排序的优势会更大程度地体现出来。

  相关知识推荐:信息隐藏领域论文英文国内期刊

  由于文献 [27] 的算法用的负影响模型需要用到参数来调节更倾向优化 PSNR 或者文件增加量, 其中参数设置为 0. 0 时优化文件增加量, 设置为 1. 0 时优化视觉质量, 且当参数为 0. 0 或者 0. 5时其视觉质量过差, 因此这里将参数设置为 1. 0。在折线图中, 在嵌入荷载较小且纹理复杂度低时,文献 [27] 的算法可以取得最优值, 但在嵌入荷载较大时本研究提出的算法仍可以超过文献 [27]的算法。 例如 Peppers 图像在 QF 值为 70 情况下,当嵌入荷载值为8000 b 时, 本研究提出的算法的PSNR 是 4 种算法中比较低的, 仅强于文献 [24]的算法。 当嵌入荷载增大到 10 000 b 时, 本研究提出的算法已经超过了文献 [21] 的算法、 略低于文献 [27] 的算法, 此时通过频率选择策略选择优先嵌入块内嵌入失真更小的频率位对于视觉质量的优化效果超过了将嵌入位置扩展造成的视觉质量失真, 而文献 [27] 的算法所采用的负影响模型,可以充分发挥其长处并取得最佳的视觉质量。 当嵌入荷载进一步增大到12000 b 时, 本研究提出的算法会超过文献 [27] 的算法成为 PSNR 最优的算法, 此时的嵌入荷载较大但尚未达到最大嵌入容量, 图像内多数 DCT 块成为了可嵌入位置, 而频率选择策略作用于这些块并选择块内视觉失真最小的系数位作为嵌入位置, 此时可以获取更佳的视觉质量。 综合以上实验折线图可以得出结论: 当 QF较小且嵌入荷载较低时, 本研究提出的算法与文献 [21] 的算法和文献 [24] 的算法的 PSNR 接近且低于文献 [27] 的算法, 但会随着嵌入荷载的不断增大而超过文献 [21] 的算法和文献 [24] 的算法并趋向于文献 [27] 的算法, 并在达到某一较大荷载情况下超过文献 [27] 的算法; 当 QF 较大且嵌入荷载较低时, 本研究提出的算法仅高于文献 [21] 的算法, 但会随着嵌入荷载值的不断增加而逐渐接近并超过文献 [24] 的算法, 并在达到某一较大嵌入荷载时超过文献 [27] 的算法。

  3. 3 文件增加量

  在指定荷载情况下其文件增加量折线图如图 9 -图11 所示。

  文件增加量表示原始图像在嵌入秘密信息之后所带来的编码长度的增长, 而编码长度的增加会造成 JPEG 图像的文件大小增大。 在日常生活当中,文件的大小增加会造成使用的不方便, 因此对于算法设计而言, 需要尽可能缩小文件增加量。

  与 PSNR 对比折线图类似, 仍选用 Lena、 Cou⁃ ple、 Peppers 图像作为实验图像, 并设置 QF 值为50、 60、 70 分别测试在不同给定荷载值下的文件增加量分布情况。 由折线图可以很明显地观察到,无论 QF 取何值, 在任意的嵌入荷载情况下, 空心圆形实线均处于折线图的最下方, 这表明本研究所提出的算法可以取得最低的文件增加量, 图像中的折线在大多数情况 4 条折线所代表的算法按文件增加量从低往高可排序为: 本研究提出的算法、 文献 [27] 的算法、 文献 [21] 的算法、 文献 [24]的算法。 这与这 4 种算法所使用的预处理和嵌入规则也是吻合的, 文献 [24] 的算法由于扩展了嵌入位置, 会造成一定的文件扩展, 因此其文件增加量在多数情况下会高于文献 [21] 的算法; 文献 [27] 的算法使用了负影响模型, 但笔者这里选择将该模型倾向于优化 PSNR, 会造成一定的文件膨胀, 但文献 [27] 的算法同样使用了频率选择策略进行预处理, 通过调节 DCT 块内 AC 系数位的嵌入顺序提高了嵌入效率, 因此文献 [27] 算法的文件增加量在大多数情况会低于文献 [21]的算法和文献 [24] 的算法。 本研究提出的算法选择直接将频率选择策略作用于嵌入位置扩展算法, 在文献 [27] 的负影响模型选择优化 PSNR 时本研究提出的算法的文件增加量低于文献 [27]的算法, 这表明本研究提出的算法可以保证在秘密信息的嵌入过程中编码长度的修改量较少。 折线图的斜率会随着嵌入荷载的增大而增大, 这是因为当嵌入更多的秘密信息时, 载密图像的文件大小势必会进一步增大, 因此会造成更大的文件膨胀。 这也解释了折线图中文件增加量会随着指定荷载的增大而不断增大的原因。——论文作者:吕皖丽 檀胜

文章名称:基于频率选择扩容的JPEG图像可逆信息隐藏技术

文章地址:http://m.sciqk.com/p-13226.html

相关推荐:

NOW!

Take the first step of our cooperation迈出我们合作第一步

免费咨询,高端品质服务、还犹豫什么呢?


点击咨询学术顾问