Print

发布时间: 2018-01-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.170338
2018 | Volume 23 | Number 1




    图像处理和编码    




  <<上一篇 




  下一篇>> 





利用像素置换的自适应可逆信息隐藏
expand article info 王继林, 孙啸, 冯小青
浙江财经大学信息管理与工程学院, 杭州 310018

摘要

目的 像素置换作为一种可逆信息隐藏方式具有良好的抗灰度直方图隐写分析能力,但嵌入容量偏小一直是其缺陷。针对这一问题,提出了一种基于像素置换的自适应可逆信息隐藏算法。方法 首先,与传统2×2像素块结构相比构造了尺寸更小的像素对结构,使得载体图像可以被更稠密地分割,为嵌入容量的提升提供了基数条件。其次,提出适用于该新像素结构的可嵌像素对(EPP)筛选条件,避免嵌入过程引起图像质量大幅下降。之后,根据EPP的灰度趋势差异对其进行自适应预编码,提高Huffman编码压缩比,进一步提升算法嵌入容量。最终,通过像素置换嵌入信息。结果 与2×2像素块结构的非自适应图像隐写算法相比,在同样保证灰度直方图稳定性的情况下该算法的PSNR提高了32%左右,嵌入容量提高了95%以上。其中自适应性对嵌入容量提升的贡献极大。结论 本文算法同时具有抗灰度直方图隐写分析能力与高嵌入容量性的可逆信息隐藏。算法构造了更高效的可嵌单位,并且针对不同载体图像的特点对其可嵌区域进行差异化编码。实验结果表明,本文算法在具有更好的不可见性的同时,嵌入容量得到大幅提升。

关键词

可逆信息隐藏; 像素置换; 自适应; 压缩编码; 可嵌像素对; 灰度直方图

Adaptive reversible image data hiding using pixel permutation
expand article info Wang Jilin, Sun Xiao, Feng Xiaoqing
College of Information, Zhejiang University of Finance & Economics, Hangzhou 310018, China
Supported by: National Natural Science Foundation of China (61202197); Planning Fund Project of Ministry of Education (12YJAZH136); Public Welfare Technology and Industry Project of Zhejiang Provincial Science Technology Department (2016C31081)

Abstract

Objective Data hiding is a well-known method used to protect secret information or provide authentication. Thus, we can embed secret data into carriers, such as images and videos. After the embedding, the carriers can still perform as they were. Data hiding has many advantages over traditional encryption methods. Encryption algorithm can be regarded as a function used to transform secret data into cipher texts, and secret data and keys are parameters. However, making cipher texts understandable remains a challenge. If cipher texts are captured by an attacker, the attacker can easily notice that the texts must be processed, although he plain texts cannot be generated immediately. This situation may cause security issues. Such issues cannot happen in data hiding because the data-hiding process does not influence carrier readability. Humans also hardly notice the difference between cover and stego carriers. As a way of reversible data hiding, pixel permutation has a good ability of anti-gray histogram steganalysis but with low payload capacity. An adaptive reversible data-hiding algorithm based on pixel permutation is accordingly proposed. Method First, a more efficient embedding unit structure than the conventional 2×2 pixel block structure is proposed. A cover image can be densely segmented, which provides a condition for improving payload capacity. For every embedded bit, the proposed triangular embedded pixel pair consists of 3 pixels. The specific shape and position of all embeddable pixel pairs (EPPs) are determined by the keys shared between sender and receiver. Second, EPPs are screened from all pixel pairs to avoid embedding secret bits in the pixel pairs that may cause a significant decline in image quality. Adaptive precoding is conducted according to the characteristic of gray trend of EPPs, such that the 0, 1 distribution in the binary sequence that represents all EPPs is as asymmetrical as possible. This adaptive precoding process effectively improves Huffman coding compression ratio to enhance payload capacity. Huffman coding is a method of compressing a sequence using the frequencies of different arrays. This method spends a minimal storage on arrays with a high frequency and adopts long code words to represent arrays that seldom occur. Finally, data are embedded into the cover image by permuting the two end pixels of the corresponding EPP bit by bit. Data extraction is the inverse process of data embedding. Receivers can obtain all correct EPPs according to the keys and two pixel pair embedding conditions, and secret data can be easily extracted by using a location map. Eight different gray-scale images are randomly selected from a standard gray-scale test image data set for the experiments. A key is created by a pseudo random number generator. For every cover image, we test the payload capacity and PSNR of a full-load stego image. The histograms of cover and stego images are shown to prove the histogram robustness of the proposed scheme. Results Experimental results demonstrate that the PSNR of the proposed scheme is improved by approximately 32% and its payload capacity is increased by more than 95% compared with those of a non-adaptive data-hiding algorithm with a 2×2 pixel block structure. The proposed scheme also keeps the robustness of gray-scale histograms before and after the data-hiding process. Notably, adaptability plays a decisive role in capacity improvement. Conclusion This study presents a reversible information-hiding algorithm with high embedding capacity and a capability of anti-gray-scale histogram steganalysis. We construct an efficient embedding unit and differentiate embeddable regions for the characteristics of different cover images. The confidentiality of all embedding units is guaranteed by a key. The experimental results show that the proposed algorithm greatly improves payload capacity by adaptive precoding process and a special triangular pixel structure. Moreover, imperceptibility is kept in a high level by using appropriate EPP-filtering criteria. The proposed scheme considers the visual and statistical invisibilities of the data-hiding process. Consequently, the scheme provides a high security level for secret information when providing large embedding capacity of cover images. For practical applications, the proposed scheme can be utilized in secret information transmission, storage, and privacy protection. Although the payload capacity of the proposed scheme has been greatly enhanced compared with that of the same type of reversible data hiding methods, it remains lower than that of the methods without providing histogram robustness. Therefore, improving capacity while keeping confidentiality in a high level is worth of further research.

Key words

reversible data hiding; pixel permutation; adaptivity; compress coding; embeddable pixel pair; grayscale histogram

0 引言

随着文本加密技术在网络安全领域的广泛应用, 其不足之处也越来越明显, 如针对文本加密的破解分析越来越多, 文本加密所需的密钥尺寸越来越大, 文本加密几乎无法保证密文也是人类可读的。因此, 为了满足信息在安全性上的更高要求, 图像信息隐藏, 又称图像隐写成为网络安全领域的新热点。文献[1]提到隐写术的目的不仅是将秘密信息以机密的方式传输给接收者, 而还需保证秘密信息在传输过程中不会引起攻击者的注意。因此, 图像信息隐藏要求载体图像在经过隐写之后仍然是人类可读的图像。

根据算法是否具有可逆性, 图像信息隐藏可被分为可逆信息隐藏与不可逆信息隐藏。可逆性指隐写图像在经过秘密信息提取后能还原成隐写前的载体图像, 这一特性使得接收者可在提取秘密信息之后将它从隐写图像中完全剔除, 避免残留信息遭受攻击, 且还使得载体图像可以无差别循环利用。不可见性与嵌入容量是衡量图像信息隐藏算法性能的两大重要指标, 前者衡量了载体图像在秘密信息嵌入前后的差别, 后者衡量了在某算法下载体图像所能容纳的密位最大量。文献[2-3]利用经典的最低有效位(LSB)算法实现了图像信息隐藏。LSB算法考虑了人眼视觉系统对像素灰度值的轻微变化不敏感, 将密位直接代入灰度值的最低有效位, 从而完成信息隐藏。图像接收者只需要提取像素灰度值的最低有效位即可完成信息提取。这一方法直接改变了载体图像的灰度直方图, 因此, Westfeld和Pfitzmann[4]提出的隐写分析方法可以轻易发现其嵌入的秘密信息。此后, Sharp[5]提出一种改进的LSB匹配算法。如果需嵌入密位与像素最低有效位一致。则不对像素做任何处理;如果两者不同, 则随机地对像素灰度值减一或加一。该算法较好地中和了LSB算法会在最低有效位上带来的统计意义上的不对称性。文献[6]继续对LSB匹配算法进行改进, 通过调整可嵌像素邻近像素灰度值的方式保持载体图像灰度直方图的特性。

此外, 基于差值扩展[7]与直方图平移[8]的图像信息隐藏也被不断提出。文献[9]同时采用了差值扩展与直方图平移进行可逆信息隐藏, 该算法通过扩大相邻像素灰度值的差值获得密位嵌入的空间, 并利用灰度直方图平移来避免出现灰度值溢出的情况。该算法的密位提取过程十分简便, 但无法避免载体图像直方图在隐写前后的改变。为了提高图像隐写算法的安全性, 将像素置换作为密位嵌入方式的隐写算法逐步出现。文献[10]采用不重叠分割方法先将载体图像分割为若干2×2像素块。从中筛选出适合密位嵌入的可嵌块。同时, 对于每个可嵌块定义了特征值, 通过交换可嵌块内的像素达到改变特征值, 嵌入密位的目的。然而, 在该算法中载体图像被分割得较为稀疏, 嵌入容量与不可见性均仍有提升空间。该算法的优点在于保持了载体图像直方图不变性, 可以有效抗击基于灰度直方图的统计隐写分析。Wang等人[11]提出一种基于秘密分享的可逆信息隐藏算法, 利用两张影子图像实现秘密信息的嵌入、提取及载体图像恢复。该算法虽然提高了秘密信息的嵌入成本, 但得到了高嵌入容量, 两张影子图像低扭曲度的良好性能。文献[12]利用信息隐藏在二值图像中嵌入数字水印, 采用匹配对内调整与匹配对间调整两种方式将3比特信息分别嵌入8种不同的三黑一白像素块、一黑三白像素块以及6种不同的两黑两白像素块中。然而, 该算法为了追求高嵌入容量过多牺牲了图像视觉质量。根据其实验可知, 该算法PSNR在15 dB左右。

可逆信息隐藏同样可以被应用在医疗隐私信息管理方面。现在, 人们在接受医疗服务时越来越重视自身的隐私保护。但是医学图像和自然图像在内容上有很大不同, 如何把帮助医生诊断病情的隐私信息嵌入医学图像的纹理区域成为首要问题。结合菱形预测和纹理区分类[13]的图像隐写可有效地通过直方图拉伸将信息嵌入图像纹理区域。不过该算法的不可见性对预测误差直方图的平移步长十分敏感。根据其实验可知, 当平移步长从1变为2时, 该算法PSNR从46 dB左右下降至40 dB左右。

为了有效提高可逆信息隐藏性能, 本文提出了一种基于像素置换的自适应可逆信息隐藏算法。该算法设计了更稠密的载体图像分割方法与相应的可嵌对筛选条件, 根据可嵌区域灰度趋势特点对可嵌对进行自适应预编码, 再利用Huffman压缩算法[14]对编码进行压缩, 最后在空余位实现可逆信息隐藏。实验选用多张标准灰度测试图对算法的嵌入容量、不可见性与直方图不变性进行测试, 并与文献[10]中的算法进行性能比较。

1 基于像素置换的自适应可逆信息隐藏

通过可嵌像素对搜索、密位嵌入和密位提取与载体复原这3部分, 对提出的算法进行详细描述。

1.1 可嵌像素对搜索

可嵌像素对(EPP)是本文算法提出的密位嵌入单元, 本节重点介绍像素对的结构与EPP筛选条件。在空间域上, 灰度载体图像可被看作是由像素灰度值按一定顺序排列组成的矩形数阵。首先, 如图 1所示将数阵分割成若干个不重叠2×3像素块。

图 1 像素块分割示意图
Fig. 1 Schematic diagram of pixel block parting

若由于载体图像尺寸问题, 小部分像素不能按此构成2×3像素块则不对该部分像素进行任何后续处理。因此, 假设载体图像像素尺寸为$M$×$N$, 其像素块个数$n$计算公式为

$n = \left\lfloor {\frac{M}{2}} \right\rfloor \times \left\lfloor {\frac{N}{3}} \right\rfloor $ (1)

然后, 将发送者与接收者事先分享好的伪随机二进制序列(密钥)的每一位按顺序分配给每个像素块。为了保证秘密信息能被完整提取且载体图像能被完全还原, 密钥长度至少需要与被嵌入像素块数一致。若像素块被分配到的密钥位为1, 则将该像素块按图 2(a)所示分割为两个类型1像素对;若像素块被分配到的密钥位为0, 则将该像素块按图 2(b)所示分割为两个类型0像素对。经过上述过程, 载体图像中的所有像素对已被密钥唯一确定并得到。

图 2 像素对分割示意图
Fig. 2 Schematic diagram of pixel pair parting
((a) pixel pair type 1; (b)pixel pair type 0)

考虑到像素置换在之后过程中的有效性以及信息隐藏的不可见性, 需要从所有像素对中筛选出全部EPP用于之后的密位嵌入过程.具体可嵌条件如下:

条件1: EPP的两个端点像素值必须不相等。

条件2: EPP内3个像素值中最大值与最小值的差必须小于阈值$T$

举例说明, 假设某像素对结构如图 3所示, 则其是可嵌的, 当且仅当式(2) (3) 同时成立。

图 3 像素对示意图
Fig. 3 Schematic diagram of pixel pair

$\left| {{a_{11}} - {a_{22}}} \right| > 0$ (2)

$\max \{ {a_{11}},{\rm{ }}{a_{21}},{\rm{ }}{a_{22}}\} - \min \{ {a_{11}},{\rm{ }}{a_{21}},{\rm{ }}{a_{22}}\} < T$ (3)

1.2 密位嵌入

1.2.1 EPP自适应预编码及压缩

首先, 将形如图 2(a)中的两种EPP从左往右分别称为1L-EPP与1R-EPP。同样, 将形如图 2(b)中的EPP分别称为0L-EPP与0R-EPP。然后, 分别统计该四型EPP在端点处的总体灰度趋势, 并据此对其进行自适应预编码。具体做法如下:

1) 假设EPP中共有$n_{1L}$个为1L-EPP, 其中端点灰度值由左上至右下呈下降趋势的1L-EPP被称为1Ld-EPP, 个数为$n_{1Ld}$, 反之呈上升趋势的被称为1Ri-EPP。

(1) 若$n_{1Ld}/n_{1L}$≥0.5, 则将所有1Ld-EPP预编码为0, 将所有1Ri-EPP预编码为1, 并把定位图p$_{1}$的第1位记为1。

(2) 若$\frac{{{n_{1Ld}}}}{{{n_{1L}}}}$ < 0.5, 将所有1Ld-EPP预编码为1, 将所有1Ri-EPP预编码为0, 并把定位图(Location map)$p_{1}$的第1位记为0。

举例说明:对于形如图 3的1L-EPP, 则其为1Ld-EPP, 当且仅当$a_{11}>a_{22}$

2) 同理1), 也按端点由左上至右下的灰度下降或上升趋势先将1R-EPP分为1Rd-EPP与1Ri-EPP两类, 并将两者中数量多的一类预编码为0, 另一类预编码为1, 将$p_{1}$的第2位记为与1Ri-EPP的预编码值相同。

3) 对于0L-EPP, 则按端点灰度值由左下至右上的下降或上升趋势将其分为0Ld-EPP与0Li-EPP两类, 并同样将两者中数量多的一类预编码为0, 另一类预编码为1, $p_{1}$的第3位记为与0Li-EPP的预编码值相同。

4) 按同样方法完成0R-EPP中0Rd-EPP与0Li-EPP两类的预编码与$p_{1}$第4位的设值。

经过上述自适应预编码过程, 所有载体还原所需的EPP灰度趋势信息被提取到一个二进制序列$p_{0}$$p_{1}$的前4位中。

对上述得到的$p_{0}$进行Huffman压缩编码[14]。Huffman压缩编码是一种无损压缩方法, 它的核心思想是将频繁出现的字符串用更短的码字代替, 用更长的码字代替不常出现的字符串, 最终达到总码字长度减小的目的。由于上一步的预编码工作已在最大程度上增加二进制序列中0的个数, 减少1的个数, 因此大大增加了Huffman压缩编码算法对该段二进制序列的压缩比。在此, 本文采用2-bit分组形式进行压缩, 具体压缩编码方法如表 1所示。

表 1 码字替代表
Table 1 Code words substitution

下载CSV
原始码字新码字
000
0111
10101
11100

值得一提的是, $p_{1}$的前4位不参与Huffman压缩编码。把经过上述Huffman压缩编码的$p_{0}$称为$p$$_{0}$

1.2.2 必要信息的整合与嵌入

本文算法将被嵌入的信息按功能分为3部分, 定位图$p_{1}$, 用于载体还原的$p$$_{0}$以及秘密信息$p_{2}$。其中, $p_{1}$是一个固定长度为16位的二进制序列, 它的前4位由预编码过程确定。其剩余位用来确定秘密信息在被嵌入信息中的位置。具体做法如下:

假设$len$(·)是序列长度计算函数, 则秘密信息的长度计算公式为

$len({p_2}) = len({p_0}) - len(p{\prime _0}) - len({p_1})$ (4)

$len$($p_{2}$)转换为12位的二进制数, 作为$p_{1}$的剩余位, 从而得到完整的$p_{1}$。最后, 如图 4所示将该3部分整合为被嵌入信息。

图 4 被嵌入信息示意图
Fig. 4 Schematic diagram of embedded data

首先, 将被嵌入信息的前4位即$p_{1}$前4位, 分别与前4个EPP对比, 并按表 2嵌入载体图像。而对于两序列除前4位之外的剩余部分, 由于它们在长度上一致, 因此将该两部分按顺序逐位对比。若两位相同, 不对该位对应的EPP做任何改变;若两位不同, 则置换对应EPP中的端点像素。经过像素置换载体图像变为含密的隐写图像。

1.3 密位提取与载体复原

密位提取与载体复原是密位嵌入的逆过程, 具体算法步骤如下:

输入:密钥$k$, 隐写图像$I_{1}$

输出:秘密信息$p_{2}$, 载体图像$I_{0}$

1) 读入$I_{1}$, 根据事先分享的密钥$k$在空间域对隐写图像进行分割, 并利用条件1和条件2筛选出所有EPP。

2) 选择前4个EPP, 利用表 2, 根据该4个EPP的类型反得出$p_{1}$的前4位。

表 2 前4位被嵌入信息嵌入方式说明
Table 2 Data embedding of the first four bits in embedded data

下载CSV
二进制位该位对应的EPP类型是否置换该EPP端点像素
0$^{**}$d-EPP
$^{**}$i-EPP

1$^{**}$d-EPP $^{**}$
i-EPP

注: “*”表示在此无需过度细分EPP类型, 只进行必要的区别处理即可完成嵌入。

(1) 若$p_{1}$的第1位为1, 则将除前4位之外的EPP中的1Ld-EPP、1Ri-EPP分别编码为0、1;

(2) 若$p_{1}$的第1位为0, 则将除前4位之外的EPP中的1Ld-EPP、1Ri-EPP分别编码为1、0;

(3) 若$p_{1}$的第2位为1, 则将除前4位之外的EPP中的1Rd-EPP、1Ri-EPP分别编码为0、1;

(4) 若$p_{1}$的第2位为0, 将剩余部分的1Rd-EPP、1Ri-EPP分别编码为1、0;

(5) 若$p_{1}$的第3位为1, 则将除前4位之外的EPP中的0Rd-EPP、0Li-EPP分别编码为0、1;

(6) 若$p_{1}$的第3位为0, 将剩余部分的0Rd-EPP、0Li-EPP分别编码为1、0;

(7) 若$p_{1}$的第4位为1, 则将除前4位之外的EPP中的0Rd-EPP、0Ri-EPP分别编码为0、1;

(8) 若$p_{1}$的第4位为0, 将剩余部分的0Rd-EPP、0Ri-EPP分别编码为1、0。由此得到完整被嵌入信息。

3) 提取被嵌入信息的第5至16位($p_{1}$后12位), 将该12位二进制数转换为十进制数, 得到秘密信息$p_{2}$的长度。

4) 根据秘密信息长度从被嵌入信息中提取秘密信息$p_{2}$

5) 提取被嵌入信息的中间$p$$_{0}$部分, 利用表 1$p$$_{0}$解压为$p_{0}$

6) 根据$p_{1}$的前4位与前4个EPP, 利用表 2再进行一次像素置换, 从而将前4个EPP还原回信息嵌入之前。

7) 将除去前4位的$p_{0}$与除去前4位的被嵌入信息按顺序逐位对比。

(1) 若两位相同, 不对该位对应的EPP做任何改变;

(2) 若两位不同, 则置换对应EPP中的端点像素。至此, $I_{1}$被完全还原为初始载体图像$I_{0}$

2 实验结果与分析

为了体现本文算法的性能优势, 在标准灰度测试图数据库中随机选取了Lena、Airplane、Boat、House、Wire、Coral、Scenic和Seabird这8幅测试图作为载体图像, 并在Matlab R2012a环境下进行性能实验。其中, 密钥与秘密信息都以伪随机二进制序列形式给出。

2.1 嵌入容量

实验随机生成了10个不同的密钥用于测试每张载体图像的平均嵌入容量, 对该8张载体图像的平均嵌入容量再求均值, 测试算法的平均嵌入容量。如图 5所示, 本文算法的嵌入容量在各阈值$T$上均优于文献[10], 且在本文提出的EPP结构与自适应性这两个改进点中, 后者对嵌入容量的提升贡献更大。然而, 本文算法的嵌入容量对阈值$T$的灵敏度高于文献[10]。考虑到不可见性, 推荐阈值$T$取值区间为[14, 16]。对比文献[10]的算法, 本文算法在嵌入容量上提升了95%以上。

图 5 嵌入容量对比图
Fig. 5 Comparison of payload capacity

2.2 不可见性

同2.1中的方法, 对本文算法的平均峰值信噪比(PSNR)进行测试。如图 6所示, 本文算法的PSNR在各阈值$T$上均优于文献[10], 且在本文提出的EPP结构与自适应性这两个改进点中, 前者对PSNR的提升贡献更大。在阈值$T$的推荐区间上, 对比文献[10]的算法, 本文算法的PSNR提升了32%左右。

图 6 PSNR对比图
Fig. 6 Comparison of PSNR

2.3 灰度直方图稳定性

实验不仅对比了载体图像与隐写图像的视觉效果, 而且对比了两者直方图是否存在差异。考虑到图像尺寸, 本文选择了4张测试图展示对比结果, 如图 7所示。可以观察到, 本文算法的隐写过程几乎没有改变载体图像的视觉效果, 载体图像灰度直方图在隐写前后始终保持稳定。因此, 即使攻击者同时拦截得隐写图像与载体图像, 其无法通过比较两者灰度直方图的方式察觉到隐写图像中秘密信息的存在。这为秘密信息的安全性提供了一定保障。

3 结论

本文设计了一种用于可逆信息隐藏的, 像素成本更低的像素对结构, 结合可嵌条件在提升嵌入容量的同时避免隐写过程给图像视觉质量造成过大影响。此外, 增加了基于灰度趋势特征的可嵌像素对自适应预编码过程, 更大程度上增加了算法嵌入容量。最后, 采用像素置换的方式嵌入密位, 使得算法具有灰度直方图稳定性。尽管如此, 本文算法与其他不具有灰度直方图稳定性的算法相比在嵌入容量上仍然处于偏低水平。因此, 如何在保持灰度直方图稳定性的同时进一步提升嵌入容量是值得继续研究的方向。

图 7 灰度直方图对比图
Fig. 7 Comparison of gray-scale histogram ((a) Lena; (b) Airplane; (c) Boat; (d) House)

参考文献

  • [1] Petitcolas F A P, Anderson R J, Kuhn M G. Information hiding——a survey[J]. Proceedings of the IEEE, 1999, 87(7): 1062–1078. [DOI:10.1109/5.771065]
  • [2] Bender W, Gruhl D, Morimoto N, et al. Techniques for data hiding[J]. IBM Systems Journal, 1996, 35(3-4): 313–336. [DOI:10.1147/sj.353.0313]
  • [3] Lie W N, Chang L C. Data hiding in images with adaptive numbers of least significant bits based on the human visual system[C]//Proceedings of the 1999 International Conference on Image Processing. Kobe, Japan:IEEE, 2002:286-290.[DOI:10.1109/ICIP.1999.821615]
  • [4] Westfeld A, Pfitzmann A. Attacks on steganographic systems[C]//Proceedings of the 3rd International Workshop. Dresden, Germany:Springer, 1999:15-24.[DOI:10.1007/10719724_5]
  • [5] Sharp T. An implementation of key-based digital signal steganography[C]//Proceedings of the 4th International Workshop on Information Hiding. Pittsburgh, PA, USA:Springer, 2001:13-26.[DOI:10.1007/3-540-45496-9_2]
  • [6] Xi L, Ping X J, Zhang T. Improved LSB matching steganographic method based on complementary embedding of adjacent intensity pixels[J]. Computer Science, 2010, 37(9): 101–104. [奚玲, 平西建, 张涛. 基于相邻灰度值对互补嵌入的LSB匹配隐写改进算法[J]. 计算机科学, 2010, 37(9): 101–104. ] [DOI:10.3969/j.issn.1002-137X.2010.09.023]
  • [7] Tian J. Reversible data embedding using a difference expansion[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2003, 13(8): 890–896. [DOI:10.1109/TCSVT.2003.815962]
  • [8] Ni Z C, Shi Y Q, Ansari N, et al. Reversible data hiding[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2006, 16(3): 354–362. [DOI:10.1109/TCSVT.2006.869964]
  • [9] Wang J J. An algorithm for reversible watermarking based on difference expansion and histogram shifting[J]. Journal of Chinese Computer Systems, 2014, 35(5): 1192–1195. [王继军. 利用差值扩展和直方图平移的可逆数字水印算法[J]. 小型微型计算机系统, 2014, 35(5): 1192–1195. ] [DOI:10.3969/j.issn.1000-1220.2014.05.051]
  • [10] Zhang X P, Wang S Z. Lossless information hiding based on pixel-value exchange[J]. Journal of Optoelectronics·Laser, 2005, 16(8): 956–960. [张新鹏, 王朔中. 基于像素交换的无损信息隐藏[J]. 光电子·激光, 2005, 16(8): 956–960. ] [DOI:10.3321/j.issn:1005-0086.2005.08.018]
  • [11] Wang Z H, Zhuang X, Chang C C, et al. Reversible data hiding based on geometric structure of pixel groups[J]. International Journal of Network Security, 2016, 18(1): 52–59.
  • [12] Wang C C, Chang Y F, Chang C C, et al. A high capacity data hiding scheme for binary images based on block patterns[J]. Journal of Systems and Software, 2014, 93: 152–162. [DOI:10.1016/j.jss.2014.02.023]
  • [13] Yang Y, Zhang W M, Liang D, et al. Reversible data hiding in medical images with enhanced contrast in texture area[J]. Digital Signal Processing, 2016, 52: 13–24. [DOI:10.1016/j.dsp.2016.02.006]
  • [14] Sharma M. Compression using Huffman coding[J]. International Journal of Computer Science and Network Security, 2010, 10(5): 133–141.