|
发布时间: 2023-03-16 |
信息隐藏 |
|
|
收稿日期: 2022-04-27; 修回日期: 2022-06-29; 预印本日期: 2022-07-05
基金项目: 国家自然科学基金项目(62261160653,62102101);阿里巴巴创新研究计划
作者简介:
王可, 女, 硕士研究生, 主要研究方向为多媒体安全和信息隐藏。E-mail: wangk237@mail2.sysu.edu.cn
吴绍武, 男, 博士研究生, 主要研究方向为多媒体安全和信息隐藏。E-mail: wushw25@mail2.sysu.edu.cn 尹晓琳, 女, 博士研究生, 主要研究方向为多媒体安全和信息隐藏。E-mail: yinxl6@mail2.sysu.edu.cn 付婧巧, 女, 硕士研究生, 主要研究方向为自然语言处理。E-mail: fujq3@mail.sysu.edu.cn 陈兵, 男, 博士, 讲师, 主要研究方向为多媒体信息安全和信息隐藏。E-mail: chenbing@gpnu.edu.cn 卢伟, 通信作者, 男, 教授, 博士生导师, 主要研究方向为多媒体信息安全、数字取证、信息隐藏、隐私保护和多媒体大数据智能。E-mail: luwei3@mail.sysu.edu.cn *通信作者: 卢伟 E-mail: luwei3@mail.sysu.edu.cn
中图法分类号: TP391
文献标识码: A
文章编号: 1006-8961(2023)03-0734-15
|
摘要
目的 JPEG(joint photographic experts group)作为一种广泛使用的图像格式,对其进行可逆信息隐藏有实际应用价值。大多数以JPEG图像为载体的可逆信息隐藏方案会导致图像质量降低和文件膨胀。由于在JPEG比特流中,并没有使用较多的变长编码(variable-length code, VLC),因此以未使用的VLC替换已使用的VLC可以实现秘密信息的无损嵌入,但这类方法的嵌入容量有限,且会导致文件膨胀。为了实现更大的嵌入容量并更好地控制文件膨胀,本文提出了新的全体VLC映射方案。方法 首先,重排序原始比特流中的行程长度/幅值大小(run/size value, RSV),获得去除编码冗余的载体;然后,引入中间VLC的概念,根据VLC频数分布,确定使文件膨胀大小相对于嵌入载荷最小的最优中间VLC映射模型;接着,通过计算模拟嵌入下的文件膨胀大小,确定构建最优中间VLC映射所需的嵌入VLC和中间VLC集合;最后,根据最优中间VLC映射关系修改定义哈夫曼表和JPEG比特流实现秘密信息的嵌入。结果 实验在USC-SIPI数据库上与基于DCT(discrete cosine transform)系数修改和基于VLC映射的方法进行对比。相较于基于限长VLC映射的方法,对不同的载体图像,本文方法的嵌入容量有5~40倍较大提升。与现有的典型可逆信息隐藏方法相比,在相同的嵌入容量下,本文方法嵌入造成的文件膨胀大小明显降低。对QF(quality factor)为90的载体图像嵌入1.8×104比特的秘密信息,本文方法造成的文件膨胀最高可降低46%。实验结果验证了RSV重排序的有效性,且提出的最优中间VLC映射可以在提供较大嵌入容量的同时保持较小的文件膨胀。结论 本文提出全体变长编码映射的JPEG可逆信息隐藏方法,通过构建最优的中间VLC映射,可以保持载体图像不失真并提供较大嵌入容量,且使文件膨胀更小。
关键词
可逆信息隐藏(RDH); 变长编码(VLC); 定义哈夫曼表(DHT); JPEG比特流; 文件膨胀; 嵌入容量
Abstract
Objective Data hiding technique based secret data can be embedded into the cover images, and the certified receiver can extract it from the marked image. However, most of data hiding methods cannot restore the cover image after data extraction. Reversible data hiding (RDH) can be as a special sort of data hiding techniques to ensure the complete recovery of the cover image and the secret data. Nowadays, JPEG is the most popular image format, which is widely used in diverse photography devices and the internet. JPEG images are commonly-used as the cover images of RDH. For the RDH schemes in joint photographic experts group (JPEG) images, the performance evaluations are focused on embedding capacity, visual quality, and file size increment of the marked image. One category of RDH in JPEG images is based on the variable-length code (VLC) mapping, which can preserve the visual quality of the marked image unchanged. Therefore, only the optimizations for embedding capacity and file size increment are required. Most previous methods based on VLC mapping prefer to improve the embedding capacity while keeping the file size unchanged. Although both the visual quality and the file size of the marked image will not be changed, the embedding capacity is rather limited. To achieve sufficient embedding capacity in terms of slight file size increment, we develop a new RDH method on the basis of general VLC mapping, which provides larger embedding capacity with smaller file size increment. Method To embed secret data, VLC mapping-based RDH methods replace the used VLCs with the unused VLCs in the bitstream. To get larger embedding capacity and smaller file size increment, we propose the mechanism of intermediate VLC mapping. First, the default defined Huffman table (DHT) is used to encode the DCT coefficients during JPEG compression. The run/size value (RSV) with higher frequency may be assigned to the VLC with longer code lengths. So before data embedding, RSV reordering is conducted first, and VLCs with shorter code lengths are allocated to RSVs with higher frequencies. After RSV reordering, coding redundancy is reduced and the VLC frequency distribution can be used to measure the performance of VLC mapping relationships. Next, we analyze the effect of intermediate VLC mapping and direct VLC mapping on the file size of the marked image. The intermediate VLC mapping will perform better than direct VLC mapping in terms of keeping the file size when the frequency of the selected intermediate VLC is less than the number of bits equal to 1 in the secret data. The optimal intermediate VLC mapping model is then proposed. To construct a map from the used VLC to the unused VLC and minimize the file size increment, the VLC with the smallest frequency is selected as the intermediate VLC for each code length. Finally, our method is employed to construct the optimal intermediate VLC mapping for the given embedding capacity and the JPEG bitstream. For secret data extraction, the certified receiver can reconstruct the VLC mapping without auxiliary information. Result The experiments are carried out on the USC-SIPI database. The embedding capacity is greatly improved by 5 to 40 for multiple cover images compared to previous VLC mapping-related RDH methods. When 1.8×104 bits of secret data are embedded in the cover JPEG images with quality factor 90, our file size increment can be reduced by up to 42%. The experiments have verified the effectiveness of RSV reordering as well. The proposed mapping can reduce the file size increment while a large embedding capacity is provided. Conclusion A new strategy is implemented to construct VLC mapping, called optimal intermediate VLC mapping. To realize RDH in JPEG bitstream, our method can keep the cover image unchanged, provide larger embedding capacity, and optimize smaller file size increment further.
Key words
reversible data hiding(RDH); variable-length code(VLC); defined Huffman table(DHT); JPEG bitstream; file size increment; embedding capacity
0 引言
信息隐藏技术利用图像的相关性,可以将秘密信息隐形地嵌入到载体数据中,获得高视觉质量的载密图像,指定接收方可以从载密图像中提取出秘密信息。大多数的信息隐藏技术在数据嵌入过程中会对载体图像造成不可逆的破坏,可逆信息隐藏(reversible data hiding,RDH)是一种特殊的信息隐藏技术,可以保证载体数据和秘密信息的完整恢复。因此RDH被认为是遥感、医学诊断和司法图像处理(Hou等,2019;欧博等,2022)等敏感场景下用于版权认证和完整性保护的有效方法。目前已有许多对无压缩图像提出的RDH方法,根据使用技术分为无损压缩(Fridrich等,2002;Celik等,2005)、差分扩展(Tian,2003;Dragoi和Coltuc,2014)和直方图平移(Ni等,2006;Yin等,2021;Zhang等,2013)。
JPEG(joint photographic experts group)是目前最流行的图像格式,广泛应用于多种摄影设备和互联网传播,也是信息隐藏的常用载体(尹晓琳等,2022;Lu等,2021),以JPEG图像为载体的RDH方法也得到了研究人员的关注。但是由于JPEG压缩需要减少高频分量以实现更好的压缩效果,上文提到的以无压缩图像为载体的RDH方法并不能直接应用于JPEG图像。目前JPEG图像的RDH方法根据使用的技术分为基于量化DCT(discrete cosine transform)系数修改的方法(Huang等,2016;Hou等,2018)、基于量化表修改的方法(Fridrich等,2002;Wang等,2013)和基于变长编码(variable-length code, VLC)映射的方法(Qian和Zhang,2012;Hu等,2013)。
基于量化DCT系数修改的方法直接在JPEG文件解码出的量化DCT系数上修改,实现秘密信息的嵌入。Xuan等人(2007)方法利用量化DCT系数的频数统计结果符合以0为中心的拉普拉斯分布的特点,将量化DCT系数分为3部分,即适合用于信息嵌入的部分、绝对值小于阈值而无需修改的部分和绝对值大于阈值需要平移为信息嵌入创造空间的部分,应用直方图平移技术实现JPEG图像的RDH。之后,在Xuan等人(2007)方法的基础上提出了一系列方法,进一步优化了系数选择策略,如Sakai等人(2008)的方法。这些方法降低了信息嵌入导致的失真,但是以JPEG图像为载体的RDH方法的评价指标除了方法可提供的嵌入容量和载密图像的视觉质量之外,还包括载密图像相较于载体图像的文件膨胀大小。Huang等人(2016)提出了新的量化DCT系数选择策略,即保持0系数不变,只扩展绝对值为1的系数用于嵌入信息,绝对值大于1的系数平移1位提供用于信息嵌入的空间,嵌入后所有量化DCT系数改变的幅值最大为1,不仅保证了视觉质量,并且避免了由于修改0系数导致的文件膨胀。Hou等人(2018)又在该方法基础上进一步优化了块和频率的选择策略,实现了更好的性能。基于量化DCT系数修改的RDH方法,在提供较大的嵌入容量的同时,造成的文件膨胀可接受并能获得视觉质量较高的载密图像,在3个评价指标下做到了较好的平衡,也因此得到了许多的关注研究。
基于量化表修改的RDH方法首先由Fridrich等人(2002)提出。在信息嵌入过程中,首先将量化表中为偶数的量化因子除以2,再将载体图像中对应位置的量化DCT系数乘以2,从而无损且可逆地提供可用于信息嵌入的冗余,然后将秘密信息嵌入到修改后的量化DCT系数的最小显著位(least significant bits,LSB)。Chen等人(2010)使用修改前后的量化表将量化DCT系数映射到更大的表上,从而实现信息嵌入,可提供更大的嵌入容量和更好的视觉质量,但导致的文件膨胀较大。JPEG标准默认的量化表提供了压缩图像在文件大小和视觉质量之间的平衡,而基于量化表修改的方法不可避免地破坏了压缩图像的平衡,因此这类方法很难同时在嵌入容量、视觉质量和文件膨胀上达到高性能,在数据嵌入后,JPEG图像的存储大小会显著增加。
基于VLC映射的方法通过修改定义哈夫曼表和JPEG比特流实现信息嵌入。Mobasseri等人(2010)发现在JPEG压缩过程中,只有小部分VLC用于编码量化DCT系数,即已使用的VLC;而定义哈夫曼表中存在大量VLC未在JPEG比特流中出现,即未使用的VLC。该方法构建了从已使用的VLC到未使用的VLC的映射,并在JPEG比特流中以未使用的VLC替换已使用的VLC实现秘密信息的嵌入,最后根据VLC映射关系修改JPEG文件头中的定义哈夫曼表实现原载体图像的可逆恢复。Qian和Zhang(2012)的方法和Hu等人(2013)的方法提出了新的构建VLC映射的方法,可以将已使用的VLC映射到多个未使用的VLC,从而提供更大的嵌入容量。基于VLC映射的方法直接在JPEG比特流上修改实现信息嵌入,不需要编码和解码过程。这类方法直接修改了VLC与量化DCT系数的对应关系,因此修改前后的JPEG比特流解码出的量化DCT系数完全一致,即基于VLC映射的方法不会导致图像视觉质量的降低。另一方面,通过限定VLC映射关系中已使用VLC和未使用VLC的编码长度,基于VLC映射的方法可以很好地控制文件膨胀,部分方法能达到文件膨胀为0甚至是负数的性能。但目前提出的大部分基于VLC映射的方法相比于基于量化DCT系数和量化表修改的方法,所能提供的嵌入容量十分有限,为了解决这一问题,还需要构建更优的VLC映射规则。
总体来说,对于JPEG图像的RDH方案,基本的评价指标为嵌入容量、视觉质量和文件膨胀大小。嵌入容量与视觉质量之间、嵌入容量与文件膨胀大小之间都存在权衡。基于量化DCT系数和基于量化表修改的方法,需要同时对3个评价指标优化,但是基于VLC映射的方法并不会造成视觉质量的降低,因此只需要优化嵌入容量和文件膨胀大小。另一方面,基于VLC映射的方法也是相对高效的信息嵌入方法,因为秘密信息直接嵌入到JPEG比特流中,不需要解压缩JPEG文件。但是以往的基于VLC映射的方法总是倾向于在不导致文件膨胀的前提下提高嵌入容量,虽然可以使载密图像的视觉质量和文件大小都与载体图像相同,但所能提供的嵌入容量过低,极大限制了这类方法的应用。而若基于VLC映射的方法能提供足够的嵌入容量,并且造成的文件膨胀是可接受的,可以更好地在大多数场景下应用。
本文提出了一种新的基于全体VLC映射的JPEG图像的RDH方法,在可接受的文件膨胀大小下,可提供较大的嵌入容量。首先,针对JPEG压缩过程中存在的编码冗余,优化了原始图像的定义哈夫曼表,根据新的编码表修改JPEG比特流后获得去除了编码冗余的载体;其次,分析了VLC映射导致的文件膨胀,进一步提出了中间VLC的概念,并论证了使用中间VLC映射相比于直接VLC映射,造成的文件膨胀更小;然后,基于JPEG比特流中VLC频数的统计特征,构建了最优中间VLC映射模型;最后,计算模拟嵌入下文件膨胀大小,确定最优的中间VLC映射。实验结果表明,本文方法相较于之前的JPEG图像的RDH方法,可以更好地平衡嵌入容量和文件膨胀。
1 JPEG变长编码
1.1 JPEG比特流结构
在JPEG压缩过程中,空域图像经过DCT变换和量化,像素值转化为量化直流(direct current, DC)系数和量化交流(alternating current, AC)系数。接下来,在熵编码阶段,首先获得量化AC和量化DC系数的中间形式。量化AC系数采用行程长度编码预压缩,被转换为行程长度/幅值大小(run size value, RSV)的中间形式,其中,行程长度为两个非零量化AC系数之间0系数的个数,幅值大小为编码下一个非零量化AC系数所需的编码长度。量化DC系数的中间形式记录了相邻量化DC系数的差值。量化AC系数的中间形式RSV经过哈夫曼编码实验VLC编码,量化DC系数的中间形式使用VLI编码。最后使用2进制编码VLC和VLI替换量化AC和DC系数的中间形式得到JPEG比特流的压缩数据段。编码和中间形式的对应关系分别存储在AC和DC系数的定义哈夫曼表(defined Huffman table, DHT)中,定义哈夫曼表以及量化表存储在JPEG文件头中,JPEG文件头和压缩数据段组成了JPEG比特流。
JPEG文件头中的DHT字段中定义了构造哈夫曼表所需要的信息,量化AC系数的DHT结构如图 1所示。根据编码长度将VLC分为16类,每个类中的VLC个数和每个VLC对应的RSV都记录在DHT中。图 1中,
1.2 变长编码映射
JPEG标准的DHT中定义了162个VLC,但JPEG比特流中只使用了小部分编码。通过修改量化AC系数的DHT,改变RSV对应的VLC,构建从已使用的VLC到未使用的VLC的映射关系,并根据该映射关系将压缩数据段中已使用的VLC替换为未使用的VLC,从而实现信息嵌入。
图 2给出了一个秘密信息嵌入到JPEG比特流上的例子。给定JPEG比特流,解码出部分的RSV和AC系数为{(1, 6), 20, (1, 6), -16}。其中,(1, 6)为行程长度为0、幅值为6的RSV,20和-16为非零量化AC系数的幅值。比特流中并未出现(4, 5)对应的VLC,因此可以构建(1, 6)→(4, 5)的映射关系用于嵌入秘密信息。为了保证信息嵌入不破坏图像质量,需要修改DHT中(4, 5)为(1, 6),使原(4, 5)对应的VLC和原(1, 6)对应的VLC解码出的RSV一致。为了嵌入1比特的秘密信息“
基于VLC映射的RDH方法不会降低图像质量,因此VLC映射的构造需要考虑如何提供更大的嵌入容量并使文件膨胀更小。
JPEG图像Baboon中不同长度类的VLC的平均使用次数和其中已使用和未使用的VLC的个数的统计结果如图 3所示。根据统计结果,VLC的平均使用次数与其编码长度为负相关;编码长度较短的VLC基本已被使用,而未使用的VLC编码长度较长。本文定义限长VLC映射,其构建映射的规则为:编码长度等于
构建全体VLC映射的规则为:不需限制VLC映射关系中已使用VLC和未使用VLC的编码长度,编码长度等于
2 本文方法
2.1 文件膨胀大小分析
依据是否在JPEG比特流的压缩数据段使用,将VLC分为已使用的VLC集合
$F=\sum\limits_{i=1}^n h_i^o \times l_i^o $ | (1) |
为了更清晰地分析造成文件膨胀的因素,先考虑单对单VLC映射的简化情况。设定秘密信息是长度为
定义
$ I_1=\left(l_{u+n}^o-l_e^o\right) \times h_s $ | (2) |
若
由于直接VLC映射无法同时满足对嵌入容量和文件膨胀的需求,考虑通过引入中间
$I_2=\left(l_c^o-l_e^o\right) h_s+\left(l_{n+u}^o-l_c^o\right) h_c^o $ | (3) |
只需满足
2.2 RSV重排序
根据标准的哈夫曼编码,频数越高的字符会被分配长度越短的编码,以使得平均编码长度最短。JPEG压缩过程中的熵编码也利用该思想进一步压缩数据,但为了节省运算开销和能够快速地重建出哈夫曼编码树,JPEG标准使用的是范式哈夫曼编码。RSV和VLC的对应信息存储在DHT中,因此可以直接编码RSV得到比特流。所以在实际情况中,频数高的RSV对应的VLC的编码长度并不一定小于频数低的RSV对应的VLC的编码长度。RSV重排序前的VLC频数如图 5(a)所示,其中,横坐标为从
在进行正式的信息嵌入之前,先对载体图像做RSV重排序,为频数更高的RSV分配编码长度更短的VLC。RSV重排序后,已被使用和未被使用的VLC集合分别为
$ \begin{cases}h_i \geqslant h_j & i<j \\ l_i \geqslant l_j & i>j\end{cases} $ | (4) |
RSV重排序操作所缩小的文件大小为
RSV重排序后再次统计从
2.3 最优中间VLC映射
在RSV重排序后得到单调下降的VLC频数分布的基础上,构建最优中间VLC映射。根据式(3),形如
首先,考虑确定最优
其次,确定最优的
至此,已初步确定
再引入新的中间
$ I_I^1=\left(l_{c 1}-l_c\right) h_c+\left(l_{n+u}-l_{c 1}\right) h_{c 1} $ | (5) |
因此,只需满足
根据上述分析,可以通过不断引入新的VLC降低中间映射膨胀。使中间映射膨胀最小而引入的所有中间VLC组成集合
$ \begin{cases}l_{c i}<l_{c j} & 0 \leqslant i<j \leqslant x \\ h_{c i}>h_{c j} & 0 \leqslant i<j \leqslant x\end{cases} $ | (6) |
新的中间映射导致文件膨胀的计算式为
$ \begin{gathered} I_{V I}^2=\left(l_{n+u}-l_{c x}\right) \times h_{c x}+\sum\limits_{i=1}^x\left[\left(l_{c i}-l_{c(i-1)}\right) \times\right. \\ \left.\left(h_{c(i-1)}-h_{c i}\right)\right] \end{gathered} $ | (7) |
引入
下面给出对载体图像和嵌入载荷构建最优中间VLC映射的方法。
若只使用一个载体VLC构建映射,能提供的嵌入容量至多为JPEG比特流中VLC的最大频数
嵌入映射和中间映射导致的文件膨胀都与
确定载体
$ \begin{aligned} & v_{e 1}^S, v_{e 2}^S, \boldsymbol{V} \boldsymbol{I}_1, \boldsymbol{V} \boldsymbol{I}_2=\arg \min (F S I) \\ \text { s. t. } & \boldsymbol{V} \boldsymbol{I}_1 \subseteq \boldsymbol{M i n}_1, \boldsymbol{V} \boldsymbol{I}_2 \subseteq \boldsymbol{M i n}_2, h_{e 1}+h_{e 1} \geqslant P \end{aligned} $ | (8) |
式中,
$ F S I=\left(l_{n+u 1}-l_{e 1}\right) h_{s 1}+\left(l_{n+u 2}-l_{e 2}\right) h_{s 2}+I_{V I_1}^2+I_{V I_2}^2 $ | (9) |
下面给出一个实例,对RSV重排序后的载体图像计算式(8)确定的载体VLC为
下面通过一个示例说明由接收到的JPEG比特流中的哈夫曼表倒推出嵌入信息时所用VLC映射的过程。
如图 8所示,有两个相同的RSV字符“11”,嵌入映射为
2.4 秘密信息的嵌入和提取过程
对JPEG比特流
1) 解析原始的JPEG比特流
2) 统计
3) 根据最优中间VLC映射关系修改
4) 先通过
5) 以
从JPEG比特流
1) 解码接收到的JPEG比特流
2) 先提取出前16位数据为嵌入秘密信息的长度,再提取出相应长度的秘密信息,并根据映射关系恢复原始的压缩数据段。
3) 使用DHT替换
3 实验结果
为了验证本文方法的性能,对嵌入容量和文件膨胀性能进行对比实验。实验从USC-SIPI(Weber,1997)数据库中获得tiff格式的测试图像,并使用MATLAB R2017a将测试图像转化为512×512×8 bit的JPEG格式的灰度载体图像,与基于VLC映射的JPEG图像的RDH方法(Hu等,2013;Qiu等,2018;Du等人,2022)和基于量化DCT系数修改的JPEG图像的RDH方法(Huang等,2016;Hou等,2018)进行对比。
3.1 基于VLC映射的方法对比
从USC-SIPI数据库中挑选Baboon,Boat、Bridge,Lena,Peppers和Splash为测试图像,以10~90的9个质量因子(quality factor, QF)对测试图像进行JPEG压缩获得载体图像。统计Hu等人(2013)方法、Qiu等人(2018)方法和本文方法对6幅载体图像所能嵌入秘密信息的最大比特数,结果如表 1所示。3种方法所能提供的嵌入容量都依赖于所选择的载体VLC的频数,因此对不同图像应用同一种方法所能提供的嵌入容量也差距较大。正如前文分析,Hu等人(2013)方法和Qiu等人(2018)方法提供的嵌入容量十分有限,这是由于需要保证VLC映射中已使用的VLC和未使用的VLC的编码长度相同,二者都只能选择频数较低的VLC作为载体VLC。本文方法能提供的嵌入容量相对于Hu等人(2013)方法和Qiu等人(2018)方法有着绝对优势,对不同载体图像,本文方法能提供的嵌入容量是Hu等人(2013)方法和Qiu等人(2018)方法的5倍以上,且差距随着质量因子QF的增长而扩大。对于QF = 90的载体图像,Hu等人(2013)方法和Qiu等人(2018)方法仅能提供数千比特的嵌入容量,而本文方法能提供数万比特的嵌入容量。值得注意的是,本文方法能提供的嵌入容量随着QF的增大有明显的上升趋势,但使用限长VLC映射的方法能提供的嵌入容量可能随着QF的增大而减小。表 1第1行为Baboon图像的测试结果。在QF = 10时,Hu等人(2013)方法和Qiu等人(2018)方法能提供
表 1
不同质量因子下嵌入容量的对比
Table 1
Comparison of embedding capacity with different quality factors
/bit | |||||||||||||||||||||||||||||
图像 | 方法 | 质量因子(QF) | |||||||||||||||||||||||||||
10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | |||||||||||||||||||||
Baboon | Hu等人(2013) | 6 576 | 3 478 | 1 758 | 1 790 | 1 268 | 1 304 | 1 353 | 757 | 681 | |||||||||||||||||||
Qiu等人(2018) | 7 169 | 3 767 | 1 970 | 2 077 | 1 482 | 1 582 | 1 634 | 1 033 | 939 | ||||||||||||||||||||
本文 | 11 661 | 19 762 | 26 279 | 30 879 | 34 687 | 38 636 | 43 548 | 51 541 | 67 540 | ||||||||||||||||||||
Boat | Hu等人(2013) | 950 | 551 | 691 | 571 | 687 | 811 | 679 | 1 000 | 1 929 | |||||||||||||||||||
Qiu等人(2018) | 1 635 | 1 185 | 1 242 | 1 020 | 1 079 | 1 139 | 962 | 1 249 | 2 172 | ||||||||||||||||||||
本文 | 7 786 | 10 871 | 13 671 | 16 465 | 18 835 | 21 304 | 24 758 | 30 127 | 42 438 | ||||||||||||||||||||
Bridge | Hu等人(2013) | 1 802 | 999 | 713 | 860 | 1 035 | 714 | 817 | 596 | 615 | |||||||||||||||||||
Qiu等人(2018) | 2 473 | 1 514 | 1 099 | 1 193 | 1 269 | 926 | 1 002 | 782 | 858 | ||||||||||||||||||||
本文 | 10 473 | 17 149 | 23 619 | 28 002 | 31 703 | 35 279 | 39 875 | 46 887 | 62 558 | ||||||||||||||||||||
Lena | Hu等人(2013) | 565 | 326 | 259 | 296 | 369 | 204 | 286 | 351 | 576 | |||||||||||||||||||
Qiu等人(2018) | 1 256 | 1 004 | 913 | 938 | 999 | 767 | 760 | 695 | 842 | ||||||||||||||||||||
本文 | 6 780 | 8 661 | 10 183 | 11 298 | 12 923 | 14 951 | 17 952 | 23 083 | 35 282 | ||||||||||||||||||||
Peppers | Hu等人(2013) | 567 | 517 | 717 | 493 | 557 | 652 | 455 | 374 | 1 562 | |||||||||||||||||||
Qiu等人(2018) | 1 263 | 989 | 1 078 | 923 | 928 | 964 | 774 | 695 | 1 775 | ||||||||||||||||||||
本文 | 6 950 | 8 667 | 9 989 | 11 136 | 12 981 | 15 098 | 18 711 | 24 636 | 38 818 | ||||||||||||||||||||
Splash | Hu等人(2013) | 497 | 597 | 1 064 | 1 345 | 1 382 | 1 547 | 1 180 | 1 147 | 710 | |||||||||||||||||||
Qiu等人(2018) | 1 193 | 1 169 | 1 257 | 1 545 | 1 655 | 1 821 | 1 474 | 1 407 | 1 037 | ||||||||||||||||||||
本文 | 5 372 | 6 428 | 7 681 | 8 855 | 10 225 | 11 789 | 14 412 | 20 512 | 33 093 | ||||||||||||||||||||
注:加粗字体表示各图像对应的最优结果。 |
全体VLC映射在能提供较大嵌入容量的同时,也会导致所得到的载密图像的存储大小的膨胀。本文通过RSV重排序和构建最优的中间VLC映射来减小文件膨胀。由于Hu等人(2013)方法和Qiu等人(2018)方法使用的是限长VLC映射,而Du等人(2022)方法和本文方法使用的是全体VLC映射,两类方法所能提供的嵌入容量差距较大,实验分别使用较小和较大的嵌入载荷进行测试,并统计所导致的文件膨胀,实验结果如表 2所示。在嵌入载荷为800 bit时,Hu等人(2013)方法和Qiu等人(2018)方法基本可以完成秘密信息的嵌入,且不会造成文件大小的改变,即文件膨胀为0。Du等人(2022)方法和本文方法都对载体图像的编码冗余做了一定处理,在嵌入载荷较小时,信息嵌入导致的文件膨胀可被编码冗余完全抵消,因此文件膨胀为负数。如QF = 20的载体图像嵌入800 bit的秘密信息的实验结果,Du等人(2022)方法和本文方法的文件膨胀为负数,相较于限长VLC映射方法存在较大优势。
表 2
本文方法与基于VLC映射的方法在不同质量因子下嵌入不同长度秘密信息时文件膨胀大小的对比
Table 2
Comparison of file size increment between previous VLC-based methods and ours with different quality factors and embedded with different lengths of secret data
图像 | 方法 | 嵌入载荷(QF = 20) | 嵌入载荷(QF = 30) | 嵌入载荷(QF = 40) | 嵌入载荷(QF = 70) | 嵌入载荷(QF = 80) | 嵌入载荷(QF = 90) | |||||||||||
800 | 4 000 | 800 | 6 000 | 800 | 8 000 | 800 | 14 000 | 800 | 16 000 | 800 | 18 000 | |||||||
Baboon | Hu等人(2013) | 0 | - | 0 | - | 0 | - | 0 | - | - | - | - | - | |||||
Qiu等人(2018) | 0 | - | 0 | - | 0 | - | - | - | 0 | - | 0 | - | ||||||
Du等人(2022) | -8 392 | -6 416 | -6 088 | -952 | -4 008 | 4 384 | -944 | 21 648 | 240 | 21 488 | -7 520 | 20 280 | ||||||
本文 | -8 456 | -6 656 | -6 296 | -184 | -4 304 | 3 728 | -208 | 16 456 | 984 | 19 416 | -7 896 | 11 672 | ||||||
Boat | Hu等人(2013) | - | - | - | - | - | - | - | - | 0 | - | 0 | - | |||||
Qiu等人(2018) | 0 | - | 0 | - | 0 | - | 0 | - | 0 | - | 0 | - | ||||||
Du等人(2022) | -5 200 | -1 608 | -2 904 | 3 512 | -1 744 | 7 704 | 208 | 20 784 | -1 456 | 23 064 | -5 056 | 27 136 | ||||||
本文 | -5 456 | -2 024 | -2 920 | 2 808 | -1 968 | 7 682 | 240 | 17 488 | -1 032 | 20 784 | -5 124 | 23 104 | ||||||
Bridge | Hu等人(2013) | 0 | - | - | - | 0 | - | 0 | - | - | - | - | - | |||||
Qiu等人(2018) | 0 | - | 0 | - | 0 | - | 0 | - | - | - | 0 | - | ||||||
Du等人(2022) | -6 136 | -4 736 | -4 608 | 1 992 | -2 584 | 5 544 | -408 | 20 480 | 512 | 20 456 | -4 440 | 18 216 | ||||||
本文 | -6 344 | -4 672 | -4 504 | 1 264 | -2 720 | 5 240 | -112 | 18 136 | 1 328 | 20 312 | -3 992 | 16 448 | ||||||
Lena | Hu等人(2013) | - | - | - | - | - | - | - | - | - | - | - | - | |||||
Qiu等人(2018) | 0 | - | 0 | - | 0 | - | - | - | - | - | 0 | - | ||||||
Du等人(2022) | -5 488 | -1 816 | -3 656 | 2 888 | -2 216 | 6 192 | 888 | 18 688 | 1 264 | 24 496 | 464 | 32 767 | ||||||
本文 | -5 592 | -1 943 | -3 816 | 2 712 | -2 336 | 7 120 | 464 | 17 568 | 1 216 | 20 808 | 1 240 | 25 472 | ||||||
Peppers | Hu等人(2013) | - | - | - | - | - | - | - | - | - | - | 0 | - | |||||
Qiu等人(2018) | 0 | - | 0 | - | 0 | - | - | - | - | - | 0 | - | ||||||
Du等人(2022) | -5 360 | -1 472 | -3 088 | 2 560 | -1 976 | 6 256 | 904 | 17 984 | 480 | 23 096 | -8 304 | 30 048 | ||||||
本文 | -5 384 | -1 376 | -3 448 | 2 320 | -2 232 | 6 234 | 248 | 16 560 | 176 | 18 496 | -8 510 | 18 136 | ||||||
Splash | Hu等人(2013) | - | - | 0 | - | 0 | - | 0 | - | 0 | - | - | - | |||||
Qiu等人(2018) | 0 | - | 0 | - | 0 | - | 0 | - | 0 | - | 0 | - | ||||||
Du等人(2022) | -7 752 | -4 816 | -7 864 | -1 376 | -7 136 | 2 936 | -3 656 | 12 568 | -3 216 | 19 904 | 576 | 24 504 | ||||||
本文 | -7 968 | -5 120 | -8 000 | -872 | -7 424 | 2 464 | -3 832 | 10 824 | -2 904 | 15 472 | 824 | 21 464 | ||||||
注:“-”表示嵌入载荷大于方法所能提供的嵌入容量,加粗字体为各图像对应的最优结果。 |
在嵌入载荷较大时,Hu等人(2013)方法和Qiu等人(2018)方法并不能完成秘密信息的嵌入。从实验结果可以看出,对于QF较小的载体图像,Du等人(2022)方法和本文方法去除编码冗余的操作对控制文件膨胀有更大影响;而对于QF较大的载体图像,编码冗余并不能再抵消信息嵌入导致的文件膨胀,Du等人(2022)方法和本文方法导致的文件膨胀也随之增大。根据实验结果,在嵌入载荷较大时,本文方法相对于Du等人(2022)方法更具优势。如对于QF = 90的6幅载体图像,嵌入
3.2 基于量化DCT系数修改的方法对比
为进一步验证本文方法的性能,与基于量化DCT系数修改的方法进行对比。首先,分析两种方法对视觉质量的影响。基于量化DCT系数修改的方法在嵌入过程中,DCT系数会被修改,势必造成视觉质量的降低,如Huang等人(2016)和Hou等人(2018)两种先进的基于量化DCT系数修改的方法得到的载密图像的峰值信噪比(peak signal to noise ratio, PSNR)会随着嵌入载荷的升高而降低。而本文方法基于VLC映射实现,不会修改DCT系数,因此不会降低载密图像的视觉质量,与载体图像计算的PSNR所得结果为正无穷。然后,对比本文方法与基于量化DCT系数修改的方法所导致的文件膨胀。对QF = 30,50,70,90的载体JPEG图像,分别使用Huang等人(2016)方法、Hou等人(2018)方法和本文方法以3种嵌入载荷进行测试,并统计文件膨胀。结果如表 3所示。可以看出,本文方法的文件膨胀总是最小的。但也有特殊的图像,如Splash图像,在QF较小时,Hou等人(2018)方法和本文方法并不能提供足够的嵌入载荷。这种情况是因为个别图像的VLC频数统计结果并不够集中,因此本文方法不能满足过大的嵌入需求,但根据实验结果,本文方法对大部分图像能提供足够的嵌入容量。
表 3
本文方法与基于量化DCT系数修改的方法在不同质量因子下嵌入不同长度秘密信息时文件膨胀大小的对比
Table 3
Comparison of file size increment between previous DCT-based methods and ours with different quality factors and embedded with different lengths of secret data
图像 | 方法 | 嵌入载荷(QF = 30) | 嵌入载荷(QF = 50) | 嵌入载荷(QF = 70) | 嵌入载荷(QF = 90) | |||||||||||
3 000 | 6 000 | 9 000 | 4 000 | 8 000 | 12 000 | 5 000 | 10 000 | 15 000 | 6 000 | 12 000 | 18 000 | |||||
Baboon | Huang等人(2016) | 4 232 | 8 393 | 12 876 | 5 616 | 11 040 | 16 920 | 7 288 | 14 704 | 22 496 | 10 160 | 20 376 | 30 776 | |||
Hou等人(2018) | 3 872 | 7 880 | 12 480 | 5 336 | 10 480 | 16 536 | 7 128 | 14 440 | 22 384 | 9 672 | 19 960 | 30 496 | ||||
本文(EFI) | 3 768 | 7 856 | 11 848 | 5 704 | 9 496 | 16 640 | 7 656 | 13 144 | 19 960 | 9 920 | 15 464 | 21 192 | ||||
本文(PFI) | -4 264 | -384 | 3 808 | 408 | 4 344 | 11 336 | 5 312 | 10 496 | 17 480 | 304 | 6 032 | 11 488 | ||||
Boat | Huang等人(2016) | 4 344 | 8 328 | 12 376 | 5 944 | 11 808 | 17 544 | 7 496 | 15 240 | 22 824 | 9 624 | 20 160 | 30 640 | |||
Hou等人(2018) | 3 872 | 7 664 | 11 968 | 5 688 | 10 600 | 16 976 | 7 328 | 14 528 | 22 216 | 8 976 | 19 896 | 30 672 | ||||
本文(EFI) | 3 168 | 7 464 | 11 360 | 4 480 | 11 784 | 14 384 | 7 144 | 15 368 | 20 352 | 11 824 | 20 240 | 30 824 | ||||
本文(PFI) | -1 504 | 2 832 | 6 880 | 2 560 | 9 600 | 12 408 | 5 616 | 13 440 | 18456 | 4 120 | 12 888 | 23 192 | ||||
Bridge | Huang等人(2016) | 4 704 | 9 072 | 13 448 | 6 360 | 12 016 | 17 720 | 8 120 | 15 704 | 23 856 | 10 520 | 21 152 | 31 584 | |||
Hou等人(2018) | 4 312 | 8 616 | 12 816 | 5 816 | 11 456 | 16 456 | 7 152 | 15 016 | 23 160 | 9 456 | 20 704 | 31 008 | ||||
本文(EFI) | 3 576 | 7 472 | 13 168 | 5 408 | 8 776 | 15 848 | 7 064 | 12 728 | 21 528 | 9 464 | 14 928 | 22 960 | ||||
本文(PFI) | -2 608 | 1 160 | 6 976 | 1 712 | 5 200 | 12 400 | 4 760 | 10 536 | 19 152 | 2 984 | 8 424 | 16 320 | ||||
Lena | Huang等人(2016) | 3 680 | 8 160 | 12 520 | 5 360 | 11 056 | 17 376 | 7 152 | 14 296 | 21 896 | 9 016 | 17 216 | 25 384 | |||
Hou等人(2018) | 3 840 | 8 040 | 12 584 | 5 480 | 10 968 | 16 984 | 7 352 | 13 896 | 21 712 | 7 728 | 16 424 | 25 272 | ||||
本文(EFI) | 3 352 | 7 736 | 12 040 | 4 840 | 10 720 | 12 872 | 6 416 | 13 536 | 19 144 | 8776 | 18 056 | 26 992 | ||||
本文(PFI) | -1 736 | 2 536 | 7 000 | 2 088 | 8 160 | 10 120 | 5 416 | 12 488 | 18 152 | 7 264 | 16 680 | 25 712 | ||||
Peppers | Huang等人(2016) | 3 680 | 8 096 | 12 624 | 5 544 | 11 192 | 17 528 | 7 592 | 14 352 | 21 608 | 8 992 | 17 576 | 26 944 | |||
Hou等人(2018) | 4 272 | 7 632 | 12 528 | 5 784 | 10 944 | 17 096 | 6 992 | 14 136 | 20 688 | 7 808 | 17 168 | 26 544 | ||||
本文(EFI) | 3 232 | 7 768 | 11 936 | 4 984 | 10 904 | 13 096 | 5 816 | 13 752 | 19 120 | 9 704 | 19 672 | 28 032 | ||||
本文(PFI) | -1 740 | 2 350 | 6 984 | 2 456 | 8 352 | 10 288 | 4 792 | 12 680 | 18 264 | 24 | 9 920 | 18 168 | ||||
Splash | Huang等人(2016) | 4 328 | 9 656 | 10 584 | 5 824 | 11 664 | 16 904 | 6 936 | 13 608 | 19 888 | 9 104 | 17 448 | 25 986 | |||
Hou等人(2018) | 3 944 | 8 432 | - | 5 880 | 11 160 | - | 7 080 | 13 064 | 19 192 | 8 272 | 16 560 | 25 160 | ||||
本文(EFI) | 4 208 | 8 376 | - | 5 880 | 10 416 | - | 6 272 | 12 056 | - | 7 344 | 18 552 | 22 552 | ||||
本文(PFI) | -4 992 | -976 | - | -2 560 | 2 096 | - | 944 | 6 576 | - | 6 064 | 17 304 | 21 504 | ||||
注:“-”表示嵌入载荷大于方法所能提供的嵌入容量,加粗字体为各图像对应的每列PFI最优值,下划线为各图像对应的每列EFI最优值。 |
本文方法的文件膨胀包括信息嵌入导致的文件膨胀和RSV重排序操作缩减的编码冗余,因此实际文件膨胀要小于信息嵌入导致的文件膨胀,这一点在3.1节的实验结果中也有体现。为了更好地与基于量化DCT系数修改的方法对比,将信息嵌入导致的文件膨胀记为EFI(embedding-file size increment),将实际文件膨胀记为PFI(pure file size increment),则有PFI必小于EFI。根据实验结果,在QF越大,嵌入载荷越大时,EFI和PFI的差距越不明显,即优化编码冗余对控制文件膨胀所能起到的作用越不明显。这一点也与理论分析吻合,在嵌入载荷较大时,EFI会明显增大,而编码冗余只与图像本身有关,并不会随着嵌入载荷的增大而变化。
表 3中以下划线标识出了PFI与Huang等人(2016)方法和Hou等人(2018)方法的文件膨胀对比结果。可以看到,即使去除了RSV重排序操作的影响,本文的信息嵌入方法导致的文件膨胀仍小于Huang等人(2016)方法和Hou等人(2018)方法。说明本文提出的最优中间VLC映射可以很好地控制由于信息嵌入导致的文件膨胀。与基于量化DCT系数修改的方法相比,不仅保有基于VLC映射方法的优势,即无损嵌入、不需编解码等,并且能很好地平衡嵌入容量和文件膨胀。
4 结论
本文提出了新的基于全体VLC映射的JPEG图像的RDH方法,称为最优中间VLC映射模型,能够提供较大嵌入容量并有效控制文件膨胀。由于现有VLC映射模型不能同时满足对嵌入容量和文件膨胀的需求,本文提出了中间VLC映射模型。相对于直接VLC映射,中间VLC映射既可以避免嵌入容量不足问题,又可以有效减小文件膨胀。同时,为了进一步减小文件膨胀,利用RSV重排序后VLC的频数分布,构建了最优中间VLC映射模型。在该模型下,直接VLC映射被分解为多个中间VLC映射,从而最小化VLC替换造成的文件膨胀。而对于给定的载体图像和嵌入载荷,可以通过模拟嵌入确定构建最优VLC映射所需的嵌入VLC和中间VLC集合。
实验结果表明,与基于量化DCT修改的方法相比,本文方法在保证无损嵌入的同时,能够提供较大的嵌入容量,并且使用最优中间VLC映射可以有效减少文件膨胀。本文方法对使用非标准的哈夫曼表的压缩图像,接收端并不能构建信息嵌入时所用的VLC映射。因此在未来的研究中,需要设计新的算法构建更通用的VLC映射模型。
参考文献
-
Celik M U, Sharma G, Tekalp A M, Saber E. 2005. Lossless generalized-LSB data embedding. IEEE Transactions on Image Processing, 14(2): 253-266 [DOI:10.1109/TIP.2004.840686]
-
Chen L S T, Lin S J, Lin J C. 2010. Reversible JPEG-based hiding method with high hiding-ratio. International Journal of Pattern Recognition and Artificial Intelligence, 24(3): 433-456 [DOI:10.1142/S0218001410007968]
-
Dragoi I C, Coltuc D. 2014. Local-prediction-based difference expansion reversible watermarking. IEEE Transactions on Image Processing, 23(4): 1779-1790 [DOI:10.1109/TIP.2014.2307482]
-
Du Y, Yin Z X, Zhang X P. 2022. High capacity lossless data hiding in JPEG bitstream based on general VLC mapping. IEEE Transactions on Dependable and Secure Computing, 19(2): 1420-1433 [DOI:10.1109/TDSC.2020.3013326]
-
Fridrich J, Goljan M, Du R. 2002. Lossless data embedding—new paradigm in digital watermarking. EURASIP Journal on Advances in Signal Processing, 2002(2): # 986842 [DOI:10.1155/S1110865702000537]
-
Hou D D, Wang H Q, Zhang W M, Yu N H. 2018. Reversible data hiding in JPEG image based on DCT frequency and block selection. Signal Processing, 148: 41-47 [DOI:10.1016/j.sigpro.2018.02.002]
-
Hou D D, Zhang W M, Liu J Y, Zhou S Y, Chen D D and Yu N H. 2019. Emerging applications of reversible data hiding//Proceedings of the 2nd International Conference on Image and Graphics Processing. Singapore, Singapore: ACM: 105-109 [DOI: 10.1145/3313950.3313952]
-
Hu Y J, Wang K, Lu Z M. 2013. An improved VLC-based lossless data hiding scheme for JPEG images. Journal of Systems and Software, 86(8): 2166-2173 [DOI:10.1016/j.jss.2013.03.102]
-
Huang F J, Qu X C, Kim H J, Huang J W. 2016. Reversible data hiding in JPEG images. IEEE Transactions on Circuits and Systems for Video Technology, 26(9): 1610-1621 [DOI:10.1109/TCSVT.2015.2473235]
-
Lu W, Zhang J H, Zhao X F, Zhang W M, Huang J W. 2021. Secure robust JPEG steganography based on AutoEncoder with adaptive BCH encoding. IEEE Transactions on Circuits and Systems for Video Technology, 31(7): 2909-2922 [DOI:10.1109/TCSVT.2020.3027843]
-
Mobasseri B G, Berger R J, Marcinak M P, NaikRaikar Y J. 2010. Data embedding in JPEG bitstream by code mapping. IEEE Transactions on Image Processing, 19(4): 958-966 [DOI:10.1109/TIP.2009.2035227]
-
Ni Z C, Shi Y Q, Ansari N, Su W. 2006. Reversible data hiding. IEEE Transactions on Circuits and Systems for Video Technology, 16(3): 354-362 [DOI:10.1109/TCSVT.2006.869964]
-
Ou B, Yin Z X, Xiang S J. 2022. Overview of reversible data hiding in plaintext image. Journal of Image and Graphics, 27(1): 111-124 (欧博, 殷赵霞, 项世军. 2022. 明文图像可逆信息隐藏综述. 中国图象图形学报, 27(1): 111-124) [DOI:10.11834/jig.210384]
-
Qian Z X, Zhang X P. 2012. Lossless data hiding in JPEG bitstream. Journal of Systems and Software, 85(2): 309-313 [DOI:10.1016/j.jss.2011.08.015]
-
Qiu Y Q, He H, Qian Z X, Li S, Zhang X P. 2018. Lossless data hiding in JPEG bitstream using alternative embedding. Journal of Visual Communication and Image Representation, 52: 86-91 [DOI:10.1016/j.jvcir.2018.02.005]
-
Sakai H, Kuribayashi M and Morii M. 2008 Adaptive reversible data hiding for JPEG images//Proceedings of 2008 International Symposium on Information Theory and Its Applications. Auckland, New Zealand: IEEE: 7-10. [DOI: 10.1109/ISITA.2008.4895529]
-
Tian J. 2003. Reversible data embedding using a difference expansion. IEEE Transactions on Circuits and Systems for Video Technology, 13(8): 890-896 [DOI:10.1109/TCSVT.2003.815962]
-
Wang K, Lu Z M, Hu Y J. 2013. A high capacity lossless data hiding scheme for JPEG images. Journal of Systems and Software, 86(7): 1965-1975 [DOI:10.1016/j.jss.2013.03.083]
-
Weber A G. 1997. The USC-SIPI image database: version 5 [EB/OL]. [2022-04-12]. http://sipi.usc.edu/database/
-
Xuan G R, Shi Y Q, Ni Z C, Chai P Q, Cui X and Tong X F. 2007. Reversible data hiding for JPEG images based on histogram pairs//Proceedings of the 4th International Conference Image Analysis and Recognition. Montreal, Canada: Springer: 715-727 [DOI: 10.1007/978-3-540-74260-9_64]
-
Yin X L, Lu W, Liu W T, Guo J M, Huang J W, Shi Y Q. 2021. Reversible data hiding in halftone images based on dynamic embedding states group. IEEE Transactions on Circuits and Systems for Video Technology, 31(7): 2631-2645 [DOI:10.1109/TCSVT.2020.3032685]
-
Yin X L, Lu W, Zhang J H, Luo X Y. 2022. Robust JPEG steganography based on lossless carrier and robust cost. Journal of Image and Graphics, 27(1): 238-251 (尹晓琳, 卢伟, 张俊鸿, 罗向阳. 2022. 无损载体和鲁棒代价结合的JPEG图像鲁棒隐写. 中国图象图形学报, 27(1): 238-251) [DOI:10.11834/jig.210406]
-
Zhang W M, Hu X C, Li X L, Yu N H. 2013. Recursive histogram modification: establishing equivalency between reversible data hiding and lossless data compression. IEEE Transactions on Image Processing, 22(7): 2775-2785 [DOI:10.1109/TIP.2013.2257814]