空域下的信息隐藏技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2015-2016学年第二学期《信息隐藏与数字水印》
个人学习记录
班级
学习内容空域下的信息隐藏技术(方法/算法)
学习
资料
[1]百度百科
空域隐藏方法介绍载体信息C:一张灰度图像。
待隐藏信息m:“吕梁学院”二值图
具体隐藏方法描述:
LSB是LeastSignificant Bit的缩写,即最低有效位。将秘密信息嵌入到载体图像像素值的最低有效位,也称最不显著位,改变这一位置对载体图像的品质影响最小。这是一种简单而实用的信息隐藏算法,大部分多媒体的文件都可以用作LSB算法的载体。
运用MATLAB得到源图像的8个位平面,其中每一个位的作用是不一样的,越高位对图像的影响越大,反之越低的位影响越小,甚至不能感知。而较高的位平面反映的图像的轮廓等主要信息,而较低的位平面反映的图像的细节信息,最低的两个位平面看上去几乎与图像没有相关性。
利用这个原理,如果我们将最低位,甚至是最低的两位替换成数字水印的数据,即载入水印,那么,此时人眼也难以察觉加入数字水印前后的图像的变化,这样就能够实现数字水印的秘密嵌入,并且实现人类视觉的不可觉察性。
LSB的嵌入方法是首先将要隐藏的信息以二进制的形式读入,再按照一定的算法选择它们要嵌入的位置。
但顺序选择图像像素LSB的嵌入算法,即将选取的像素点的最不重要位依次替换成秘密信息的这种算法较容易被攻破,现给一种非顺序嵌入的算法,算法如下:1、信息嵌入:
选取最高位平面,平面用一个4*4二维数组[][]
44
H表示
0110
1000
1101
0010
H
⎡⎤
⎢⎥
⎢⎥
=
⎢⎥
⎢⎥
⎣⎦
选取最低位平面,用一个4*4数组[][]44L 表示
0001101011110
010L ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦ 待隐藏信息M :
1100000110010101M ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦ 隐藏后信息C
主要算法步骤
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if (H[i][j]==1)
{
C[a][b]= L[i][j]异或M [a][b];
b=b+1;
if (b>3)a=a+1;
}
else
continue;
}
}
将最高位都是1所代表的位置异或运算玩后,再按顺序依次将0代表的位置进行L 和M 之间的异或运算。
列如上述H[0][0]=0,不运算;j+1,H[0][1]=1将L[0][1]同M[0][0]进行异或运算,结果存入C [0][0]中。H 中有7个1,将其都算完后,回到开始,算0。
反之就是提取算法。
学习中的
疑问
[1]运用较高位“1”的位置将嵌入顺序打乱,而较高的位平面反映的图像的轮廓等主要信息,“1”的位置会不会出现集中分布的情况?