利索能及
我要发布
收藏
专利号: 2021115886621
申请人: 西安理工大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,具体按照以下步骤实施:

步骤1,计算原始图像对应的二进制位置图;

步骤2,对原始图像进行加密,得到加密像素;

步骤3,将待嵌入数据嵌入至加密像素中,得到嵌入数据的加密像素;

步骤4,将步骤3得到的嵌入数据的加密像素进行解密,得到直接解密图像;

步骤5,将步骤3嵌入的数据进行提取;

步骤6,对步骤5提取后的加密像素进行图像恢复。

2.根据权利要求1所述的基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,步骤1的具体过程为:

步骤1.1,创建一个初始的二进制位置图L,该二进制位置图L中有M×N个像素且所有像素均被设置为0;

步骤1.2,除原始图像F的第一行和第一列的像素,计算每个原始像素F(i,j)与其左侧像素F(i‑1,j)差值的绝对值、每个原始像素F(i,j)与其上侧像素F(i,j‑1)差值的绝对值,将这两个绝对值中较小的值记为预测像素值Fpred(i,j),其中(i,j)是像素坐标,2≤i≤M,2≤j≤N,如公式(1)所示:

If|F(i‑1,j)‑F(i,j)|‑|F(i,j‑1)‑F(i,j)|<0then Fpred(i,j)=F(i‑1,j),else Fpred(i,j)=F(i,j‑1).         (1)式(1)中,(i,j)是像素坐标,2≤i≤M,2≤j≤N;

步骤1.3,计算每个原始像素对应的逆值Finv(i,j),如公式(2)所示:Finv(i,j)=(F(i,j)+128)mod256  (2)步骤1.4,分别计算预测像素值与原始像素值之间差值的绝对值、预测像素值与原始像素的逆值之间差值的绝对值,如公式(3)所示:其中,Φ(i,j)表示预测像素值与原始像素值之间差值的绝对值,Φinv(i,j)表示预测像素值与原始像素的逆值之间差值的绝对值;

步骤1.5,当Φ(i,j)<Φinv(i,j)时,则当前像素不存在预测误差,二进制位置图中像素值保持0不变;当Φ(i,j)≥Φinv(i,j),当前像素存在预测误差,二进制位置图中像素值修改为1。

3.根据权利要求1所述的基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,步骤2的具体过程为:

步骤2.1,将原始图像的每个像素值分为8个二进制位,如公式(4)所示;

式(4)中,f(i,j,k)表示原始图像像素的二进制位;

步骤2.2,使用加密密钥Ke通过流密码生成伪随机序列r(i,j,k),将原始图像像素的二进制位与生成的伪随机序列进行异或运算得到加密位,如公式(5)所示;

式(5)中,fe(i,j,k)表示加密位,表示XOR计算;

步骤2.3,将加密位由二进制转换为十进制,得到加密像素,如公式(6)所示;

式(6)中,Fe(i,j)表示加密像素。

4.根据权利要求1所述的基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,步骤3中,待嵌入的数据由参数T,B,S、二进制位置图和秘密数据三部分组成。

5.根据权利要求1所述的基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,步骤3的具体过程为:

步骤3.1,设定三个参数T,B,S,使用Np个像素来存储这三个参数,之后对加密像素进行分组,每组包含有B个像素,每组中的每个像素提取T个最低有效位,表示为P(v,1),P(v,

2),…,P(v,T·B),其中v为组数[1,(Nt‑Np)/B],Nt=M×N为全体像素值;

步骤3.2,创建一个大小为(T·B‑S)×(T·B)的矩阵,表达式为:G=[IT·B‑SD]           (7)式(7)中,IT·B‑S表示一个大小为(T·B‑S)×(T·B‑S)的单位矩阵,D表示一个随机产生的大小为(T·B‑S)×S的二进制矩阵;

步骤3.3,通过矩阵乘法得到压缩后的像素组,压缩后的像素组表示为P′(v,1),P′(v,

2),…,和P′(v,T·B‑S),表达式为:每组通过压缩空出S位空间嵌入额外数据,则一共可以嵌入(Nt‑Np)·S/B位,在S位空间先嵌入参数T,B,S,之后嵌入二进制位置图,最后的剩余空间再嵌入一部分秘密数据;

步骤3.4、对照二进制位置图,将位置为0的加密像素的最高有效位替换为剩余的秘密数据,如公式(9)所示;

Few(i,j)=bk×128+(Fe(i,j)mod 128)  (9)式(9)中,bk是秘密数据的一个比特,1≤k≤M×N;Few(i,j)表示嵌入数据的加密像素。

6.根据权利要求1所述的基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,步骤4的具体过程为:

步骤4.1、将每个嵌入数据的加密像素分为8个二进制位,如公式(10)所示:式(10)中,few(i,j,k)表示嵌入数据的加密像素的二进制位;

步骤4.2、重复步骤2.2,使用加密密钥Ke生成伪随机序列r(i,j,k),伪随机序列与加密图像的加密像素的二进制位进行异或运算,得到直接解密位,如公式(11)所示:式(11)中, 表示直接解密位;

步骤4.3、将直接解密位由二进制转换为十进制,得到直接解密图像的像素,如公式(12)所示;

式(12)中, 是直接解密图像的像素;

步骤4.4、计算最高有效位被设置为0和1时的像素值 如公式(13)所示:步骤4.5、计算 与当前像素的预测像素值之间差值的绝对值、 与当前像素的预测像素值之间差值的绝对值,将这两个绝对值中较小的记为正确的像素值:

7.根据权利要求1所述的基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,步骤5的具体过程为:

步骤5.1,提取嵌入数据的加密像素Few(i,j)的Np个最低有效位,得到嵌入的三个参数,即T、B、和S,剩下的Nt‑Np个嵌入数据的加密像素分为(Nt‑Np)/B组,对于每个嵌入数据的加密像素组,从嵌入数据的加密像素的T个最低有效位中提取S位,总共可以提取(Nt‑Np)·S/B位,即提取出二进制位置图和一部分秘密数据;

步骤5.2,在二进制位置图中为0的位置,提取像素的最高有效位,如公式(16)所示,得到步骤3嵌入的数据;

bk=Few(i,j)/128    (16)式(16)中,bk是秘密数据的一个比特,1≤k≤M×N。

8.根据权利要求1所述的基于最高有效位替换和最低有效位压缩的数据隐藏方法,其特征在于,步骤6的具体过程为:

步骤6.1、构建矩阵W,其大小为S×T·B:式(17)中,D表示一个随机产生的大小为(T·B‑S)×S的二进制矩阵,IS是一个大小为S×S的单位矩阵;

步骤6.2、将Nt‑Np个提取后的加密像素分为(Nt‑Np)/B组,对于每个提取后的加密像素组,从提取后的加密像素的T个最低有效位中提取S位,然后截取前T·B‑S位,记为P′(v,1),P′(v,2),…,P′(v,T·B‑S),则压缩前的原始比特组w表示为:w=[P′(v,1)P′(v,2)…P′(v,T·B‑S)00...0]T+ε·W    (18)式(18)中,ε是一个任意的二进制矢量,大小为1×S;

步骤6.3、根据每个压缩前的原始比特组w,得到一组加密像素A,对该组加密像素A重复步骤4,则得到解密后的像素组Cw,解密后的像素组内的像素值表示为ti,j;

步骤6.4、从加密像素A重复步骤4.3时得到的加密像素A的直接解密图像的相邻像素中计算估计灰度值,如公式(19)所示;

式(19)中,B'(i,j)表示估计灰度值;

步骤6.5、对于每一组,计算解密后的像素组内的像素值与其对应的估计灰度值之间的总差值为:

R=∑|ti,j‑B'i,j|(i,j)∈Cw   (20)当R最小时,解密后的像素组内的像素值ti,j被认为是恢复后的图像的像素。