图像处理之《基于多MSB预测和Huffman编码的加密图像可逆数据隐藏》论文精读

一、文章摘要

随着云存储和隐私保护的发展,可逆数据隐藏在加密图像中(RDHEI)作为一种技术越来越受到人们的关注,它可以:在图像加密领域嵌入额外的数据,确保嵌入的数据可以无差错地提取,原始图像可以无损地恢复。本文提出了一种基于多MSB(最高有效位)预测和Huffman编码的大容量RDHEI算法。首先,自适应预测每个像素的多MSB,并在原始图像中进行Huffman编码标记。然后,采用流密码法对图像进行加密。最后,利用空出的空间可以通过多MSB替换来嵌入额外的数据。实验结果表明,与现有方法相比,该方法具有更高的嵌入容量。

二、文章提出的方法

本文提出了一种基于多MSB预测和Huffman编码的大容量无差错数据提取和图像解密新方法。如图2所示,所提方法包含三个阶段:1)图像加密由内容所有者完成;2)数据嵌入由数据隐藏者完成;3)数据提取和图像解密由接收者完成。在图像加密阶段,我们首先在图像加密之前计算原始图像的标签映射,并将标签映射嵌入到加密后的图像中。在嵌入阶段,我们可以根据标签映射,通过自适应多MSB替换在每个加密像素中嵌入多比特信息。最后,对于具有数据隐藏密钥或图像加密密钥的接收者,可以分别进行数据提取或图像恢复,且提取的数据和恢复的图像均无差错。

A.标签映射生成

对于大小为m × n的原始图像I,首先计算每个像素的预测值。如图3所示,我们基于当前像素x(i, j)周围的三个像素,使用中值边缘检测器(MED)预测器[6]计算预测值px(i, j),其中1≤i≤m, 1≤j≤n, 公式如下:

接下来,我们将x(i, j)和px(i, j)的值通过公式(6)转换为8位二进制序列,表示为xk(i, j)和pxk(i, j),其中k = 1,2,...8。

然后,从MSB到LSB依次比较xk(i, j)和pxk(i, j)的每一位,直到某一位不同,当前像素的标签等于它们相同位的长度。由于转换后的二进制序列有8位,所以像素的标签有9个情况,即从0到8。假设标签值用t表示,即t = 0,1,2,...,8,根据式(7)得到的t的最大值为当前像素x(i, j)的标签。

其中x(i, j)tMSB和px(i, j)tMSB分别为x(i, j)和px(i, j)的t- MSB(像素的前t MSB)值。

由式(7)得到当前像素的标签值t,表示该像素在后续的数据隐藏过程中可以嵌入(t + 1)位。这是因为原始像素的前(t + 1)个MSB可以从它的预测值中得到。换句话说,原始像素的前t-MSB与其预测值相同,将其预测值对应位置的值求负即可得到第(t + 1)个MSB。

例如,如图4所示,假设当前像素值x等于156,其预测值px等于150。然后将x和px转换为8位二进制序列,记为xk和pxk (k = 1,2,..., 8),即xk = ' 10011100 ', pxk = ' 10010110 '。通过比较,可以得到xk和pxk的序列在第5个位置是不同的,即前四位是相同的,因此像素x的标签为' label = 4 ',即可以在该像素中嵌入5位信息。

最后,我们可以通过上述方法扫描图像中的所有像素,得到原始图像的标签映射。请注意,第一行和第一列中的像素是参考像素,没有标记。

B.图像加密

在该部分中,对原始图像的每个像素使用加密密钥Ke进行加密。首先,我们通过密钥Ke生成一个m × n的伪随机矩阵r。接下来,将当前像素x(i, j)及其对应的r(i, j)根据公式(6)转换为8位二进制序列,记为xk(i, j)和rk(i, j)。然后执行如下加密操作:

其中xke(i, j)是加密的8位二进制序列,⊕是异或(XOR)操作。最后由公式(9)计算加密后的像素xe(i, j),得到加密后的图像Ie。

C.Huffman 编码

根据Section III-A中获得的原始图像的标签映射,我们可以计算出图像中可以嵌入的数据总量。当然,标签映射需要转换成二进制序列作为辅助信息并嵌入到加密图像中,其目的是保证原始图像可以完全重建。

对于自然图像中的所有像素,有9种标签,所以我们需要用9个二进制代码来表示所有类型的标签。由于每个标签的数量不同,我们通过Huffman编码来记录标签映射,这样可以有效地压缩辅助信息量,从而增加图像的有效载荷。因此,我们预定义了9种Huffman码来表示这9种标签,分别是{00,01,100,101,1100,1101,1110,11110,11111}。我们首先对9种标签按像素数进行排序,我们使用较短的代码表示像素数较大的标签。也就是说,对于9个Huffman编码,其中' 00 '表示像素数最大的标签,' 11111 '表示像素数最小的标签。

例如,在Lena图像中,标签映射的分布和相应的Huffman编码如表I所示,其中'-1'表示参考像素。我们可以看到,Lena中标签值为5的像素数量最大,因此这些像素被标记为'00'代码。标签值为1的像素数量最少,因此这些像素被标记为'11111'代码。

Huffman编码确定后,我们可以计算标签映射的长度,表示为LM,公式如下:

D.标签映射嵌入

为了在加密图像中产生空间来嵌入额外的数据,我们需要在数据隐藏操作之前先嵌入标签映射。在加密图像Ie中,我们首先通过Huffman编码将标签映射转换为二进制序列。然后,我们以Huffman编码规则、二进制序列的长度和二进制序列作为辅助信息。请注意,Huffman编码规则是9个Huffman编码,按照它们所代表的标签按0到8的顺序排列。接下来,为了保证Huffman编码规则和标签映射在后期能够完全提取出来,我们需要将部分辅助信息存储在第一行和第一列的参考像素中。这是因为我们在提取辅助信息时需要提前知道当前像素的标签,而当前像素的标签只能从前一个像素提取的辅助信息中获得,也就是说我们不能直接从当前像素中得到它的标签值。最后,根据标签映射,将剩余辅助信息和替换后的参考像素通过多MSB替换嵌入到加密图像中,嵌入公式如下:

其中t为Ie中当前像素xe(i, j)的标签值,bs为待嵌入的辅助信息。在嵌入辅助信息和参考像素后,我们得到了最终包含标签映射的加密图像。注意,为了在后续操作中完全提取辅助信息,需要在一些粗略图像中设置多个行和列作为参考像素。

E.数据隐藏

在本小节中,在数据隐藏之前我们需要从获得的加密图像中提取Huffman编码规则和标签映射Ie'。首先,提取第一行和第一列的部分辅助信息,得到Huffman编码规则和辅助信息长度。然后根据已有的辅助信息和Huffman编码规则,获得当前像素的标签值t,提取(t + 1)位辅助信息。在获得所有辅助信息后,我们可以根据Huffman编码规则恢复标签映射。最后,根据式(11),将附加的数据嵌入到剩余像素中,剩余像素是用于将数据嵌入加密图像中的预留空间。因此,生成包含附加数据的标记加密图像Iew。注意,为了进一步增强嵌入数据的安全性,我们在嵌入过程之前使用数据隐藏密钥Kd对其进行加密。

F.数据提取和图像恢复

首先,合法的接收者可以从标记的加密图像Iew中提取Huffman编码规则和标签映射。然后,根据标签映射,以同样的方式提取参考像素和加密的附加数据。最后,将参考像素放回第一行和第一列。上面的工作可以在没有密钥的情况下完成,但是下一个过程将得到不同的结果,这取决于接收方拥有的不同的密钥。

如果接收方只有数据隐藏密钥Kd,则可以直接对提取出来的加密附加数据进行解密,获得所嵌入的信息。然而,由于没有加密密钥,原始图像无法重建。

如果接收方只有加密密钥Ke,则可以恢复原始图像而不丢失。这是因为数据隐藏密钥只对嵌入的数据进行加密,并不影响图像处理的过程。首先,根据Ke生成的伪随机矩阵r对得到的图像进行解密,并由式(8)处理。然后我们得到解密后的图像Iew,除了参考像素外,每个像素的前(t + 1)位都与原始像素不同。因为这些像素根据它们的标签值t嵌入了额外的(t + 1)比特的信息。接下来,我们从上到下,从左到右扫描图像中的像素,除了参考像素。使用MED预测器计算当前像素xew'(i, j)的预测值px(i, j),然后根据标签值t和预测值px(i, j)恢复原始像素x(i, j)。这是因为x(i, j)的t-MSB与对应的px(i, j)相同,x(i, j)的第(t + 1)个MSB可以通过对px(i, j)的第(t + 1)个MSB求负得到。注意,如果标签值等于8,则原始像素等于其预测值。重建过程表示如下:

其中,px(i, j)tMSB为由式(7)求得的px(i, j)的t- MSB值,bt+1为原像素的第(t +1)个二进制值,由下式求得:

式中,pxt+1(i, j)为由式(6)求得的px(i, j)的第(t +1)个二进制位。最后得到无误差的原始图像。

因此,只有数据隐藏密钥Kd和图像加密密钥Ke同时存在,接收方才能可逆地提取附加数据并恢复原始图像。

三、汇报PPT

1、预备知识


2、相关工作


3、提出方法


3.1、标签映射生成





3.2、图像加密


3.3、Huffman编码


3.4、标签映射嵌入 & 3.5、数据隐藏






3.6 数据提取和图像解密



4、实验结果

4.1、安全性分析

4.2、性能分析

4.3、比较


5、结论

论文地址: Reversible Data Hiding in Encrypted Images Based on Multi-MSB Prediction and Huffman Coding

开源代码: This code is the implementation of the paper "Reversible Data Hiding in Encrypted Images Based on Multi-MSB Prediction and Huffman Coding".

相关推荐
Geek 研究僧9 小时前
iPhone 17 Pro Max 的影像升级全解:从长焦、前置聊到 ProRes RAW
图像处理·ios·iphone·影像
菜鸟‍15 小时前
【论文学习】2025年图像处理顶会论文
图像处理·人工智能·学习
七芒星20232 天前
多目标识别YOLO :YOLOV3 原理
图像处理·人工智能·yolo·计算机视觉·目标跟踪·分类·聚类
2401_841495644 天前
【计算机视觉】分水岭实现医学诊断
图像处理·人工智能·python·算法·计算机视觉·分水岭算法·医学ct图像分割
格林威4 天前
常规可见光相机在工业视觉检测中的应用
图像处理·人工智能·数码相机·计算机视觉·视觉检测
扶尔魔ocy4 天前
【QT常用技术讲解】multimedia实现指定分辨率打开摄像头
图像处理·qt
格林威4 天前
工业视觉检测里的 “柔性” 是什么?
图像处理·人工智能·深度学习·yolo·计算机视觉·视觉检测
格林威5 天前
不同光谱的工业相机有哪些?能做什么?
图像处理·人工智能·深度学习·数码相机·计算机视觉·视觉检测
CiLerLinux5 天前
第三十八章 ESP32S3 SPIFFS 实验
图像处理·人工智能·单片机·嵌入式硬件
要做朋鱼燕5 天前
【OpenCV】图像处理入门:从基础到实战技巧
图像处理·人工智能·opencv