[0034] 下面结合实施例对本发明内容作进一步的详细说明,但不是对本发明的限定。
[0035] 实施例:
[0036] 本例选择大小为3×3隐藏图像,如图1所示,按行遍历隐藏图像中的像素,每个像素按照由高位到低位的顺序排列,得到3×3×8位秘密信息,为{01100111、01101000、
01100110、01111110、01101110、01101101、01101001、01101010、01101000},如图2所示为6×6大小的载体图像,隐藏位数为2,将72位秘密信息按行遍历的顺序隐藏到载密像素的次
低位和最低位,得到载密图像如图3所示,载密图像添加强度为0.3的椒盐噪声后所得到的
载密图像如图4所示。
[0037] 一种基于重抽样的隐藏图像修复方法,信息载体和隐藏信息均为图像,包括如下步骤:
[0038] 1)构造伪复制数据集:检测载密图像,像素值为255或0的载密像素为被噪声破坏像素,根据隐藏时的顺序提取秘密信息,并对从破坏像素中提取的隐藏信息进行标记,提取的秘密信息为{01100111、01100000、01100111、01111110、11111110、01101100、01111000、
01101011、01001000},计算得到恢复隐藏图像像素值,如图5所示,秘密信息的标记为
{00000011、00001100、00000011、00000000、11110000、00000011、00110011、00000011、
00110000}其中1表示对应的秘密信息被破坏,0表示对应的秘密信息没有被破坏,在隐藏图像中,若像素高5位未被破坏,该像素不需进行修复,若像素高5位存在被破坏的比特位,对其进行标记,采用重抽样方法进行修复,如图6所示为提取的隐藏图像中各像素是否可信标记矩阵示意图,若对应的像素需要修复用1来表示,若对应的不需要修复用0来表示;
[0039] 将重抽样法应用于图像修复,首先要构造伪复制数据集,将pi,j的3×3邻域像素作为原始数据集,则原始数据集为{pi‑1,j‑1,pi‑1,j,pi‑1,j+1,pi,j‑1,pi,j+1,pi+1,j‑1,pi+1,j,pi+1,j+1},原始数据集中pi‑1,j‑1,pi‑1,j+1,pi+1,j‑1,pi+1,j+1与pi,j的欧氏距离为 pi‑1,j,pi,j‑1,pi,j+1,pi+1,j距离待修复点pi,j的欧式距离为1,表明pi‑1,j,pi,j‑1,pi,j+1,pi+1,j与pi,j的联系更为紧密,因此采用包含pi‑1,j,pi,j‑1,pi,j+1,pi+1,j这4个元素伪复制数据集对待修复点进行修复,如公式(1)所示:
[0040]
[0041] 将i=2,j=2时带入公式(1)得到4个元素伪复制数据集对p2,2进行修复,4个伪复制数据集为:
[0042]
[0043] 2)通过伪复制数据集计算待修复像素的估计量:设pi,j为不可信非边界像素,位于隐藏图像的第i=2行第j=2列,依据邻域可信像素,确定p2,2修复值的取值范围,即从p2,2的3×3邻域中开始寻找可信点,若可信点个数小于2,则扩大查找范围,直到满足可信点个数
要求或到达图像边界:从p2,2的3×3邻域中查找到m=5个可信像素p1,1,p1,3,p2,1,p2,3,p3,2,5个可信像素中高五位不存在被破坏位,某个像素的低三位若存在被破坏位,将被破坏位置1或置0,得到该像素的最大和最小值;某个像素的低三位若不存在被破坏位,该像素的最大和最小值为该像素的像素值,设maxi(i=1,2,…,m)表示查找的第i个可信像素最大值、mini为查找的第i个可信像素最小值,由max1=103,max2=103,max3=126,max4=111,maxm=107和min1=100,min2=100,min3=126,min4=108,minm=104,得到pi,j及邻域像素的取值范围:maxs=max(max1,max2,…,maxm)=126,mins=min(min1,min2,…,minm)=100。将pi,j被破坏的高5位置0或置1,得到若干个pi,j的可能修复值,设t1,t2,…,tz为介于maxs与mins之间的可能值,求得t1=126,t2=110,z=2,则修复值为t1,t2其中之一。
[0044] 对于伪复制数据集为{q1,q2,q3,q4,q5,q6,q7}=A1,设像素qk(k=1,2,3,4,5,6,7)的高5位中的不可信位置0或置1,低三位保持不变,伪复制数据集中其他像素值不变,得到介于maxs与mins之间的可能值集合为 其中uk为元素的个数,如公式(2)所示:
[0045]
[0046] 由公式(2),得到7个数据集为:
[0047]
[0048] 设 令:
[0049]
[0050] 其中k=1,2,3,4, 令:
[0051] lk=mean(Ok) (4)
[0052] 计算tk(k=1,2,…,z)与l1,l2,…,ls差值的平方和yk,设y1,y2,…,yz的最小值设为y,且 e=1,则得到pi,j的估计量value为
[0053] 3)隐藏图像的修复:
[0054] 依据步骤2)的方法可分别计算出A1、A2、A3、A4的估计量,分别为value1=110,value2=110,value3=110,value4=110,令:
[0055] v=round(value1, value2, value3, value4) (7)
[0056] round(·)为求均值并四舍五入取整运算,由公式(7)得到v=t2=110,为p2,2的修复值。
[0057] 同理,修复隐藏图像边界不可信像素,若相邻像素有可信像素,则用这些可像素的均值对其进行修复,若相邻像素没有可信像素,则用所有相邻像素的均值对其进行修复,最终完成对隐藏图像的恢复,具体地,p1,2应用相邻像素p1,1,p1,3,p2,1,p3,2来修复,p1,1,p1,3,p2,1,p3,2的像素均值为110,因此p1,2的修复值为110,p3,1应用相邻像素p2,1,p3,2来修复,p2,1,p3,2的像素均值为116,因此p3,1的修复值为116,p3,3应用相邻像素p2,3,p3,2来修复,p2,1,p3,2的像素均值为107,因此p3,1的修复值为107,隐藏图像修复完成,如图7所示为修复后的隐藏图像矩阵示意图。