灰度图像隐写分析

本文是一个介绍基本灰度图像隐写分析的报告,主要是根据隐写分析实验写的~想要代码的请留言哈~

一.实验内容

简介:本次实验,共分两个实验。第一个是实现图像的连续LSB替换,即在载体图像中一块连续的区域进行LSB隐写嵌入,而采用的方法就是简单的替换——用消息比特来替换图像像素最低比特位(即LSB位)。此部分,我实现了能让用户自己选择图像进行嵌入以及能进行图像的批量嵌入这两种方式。第一个实验的另一部分是隐写分析,利用卡方检测进行隐写分析,自然图像具有某种统计特性,进行了连续LSB替换后的图像会打破这种统计特性,卡方检测就是利用了这种统计特性而产生的隐写分析方法(后面详述);第二个实验是随机LSB替换,它与连续LSB替换不同的是,它不在载体图像中一块连续的区域进行LSB隐写嵌入,而是根据某种方法生成一系列的随机数,利用这些随机数,对应到载体图像中的每个像素点进行隐写嵌入,它种方法较连续LSB替换隐写的优点是它修改的像素点是随机分布在载体图像中的,那么较前者就更难以察觉,安全性更高。在此部分,我同样实现了两种方式,即用户自己选择某一幅图像进行嵌入和批量对指定文件夹中的图像进行嵌入。不同的是,在用户可自己选择这一种方式下,我没有采用模拟,而是实际嵌入,即用户可以指定一段想隐藏的消息嵌入指定的图像中,然后可以用另一程序将其恢复出来,我这样做的原因是觉得这样会更实用一些。在第二个实验的第二部分是针对随机LSB替换的隐写分析方法——RS检测,它是基于隐写前后图像平滑度的变化来检测秘密信息的。

二.实验所用理论与方法

1.连续LSB替换

LSB替换是一种很古老的隐写术,它是将秘密消息比特位替换指定图像像素值的最低比特位来实现的。而连续LSB替换就是此种替换发现在图像中一块连续的区域。

灰度图像在计算机中是以0~255这256个数值存储的,一段01比特的消息,经连续LSB替换是如下图所示的形式:1001100101011010

79

79

78

81787779767878807577767875

图示1隐写79797881787679767878807577777974连续LSB隐写

由上图可以看出连续LSB隐写的大致过程。在此不过分赘述。

2.卡方检测

卡方检测是专门针对连续LSB替换而产生的一种隐写分析方法。连续LSB隐写的最大问题是“值对效应”,即当用消息比特改变图像像素最低比特位时,像素值之间的翻转总是这样的:2i 2i 1。而嵌入的消息,我们可以看作是随机的01比特流,而且0与1出现的概率都为1,那么,可以统计图像中不同灰度值的直方图(比如灰度值为j的像素个数为hj,2

灰度图像隐写分析相关文档

最新文档

返回顶部