下载此文档

信息隐藏实验报告.doc


文档分类: | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
信息隐藏实验报告
学号: 0909091105
姓名: 岳聪
班级: 信安0901
指导老师: 向遥
学习时域隐藏算法LSB的Matlab实现
实验目的
1、了解信息隐藏和数字水印领域的基本原理
2、掌握LSB信息隐藏算法和W-SVD数字水印算法的MATLAB实现。
实验环境

三、实验内容
1、了解图像的数据表示
2、以任意大小的RGB图像的某一层为载体,用Matlab编程实现一种LSB信息隐藏和提取算法,要求如下:
(1)、能随机选择嵌入的位置;
(2)、嵌入位均匀分布于载体中;
(3)。
(4)、。
3、实验报告要求:
(1)、对所实现的LSB信息隐藏和提取算法进行详细描述,并绘制对应的流程图;
(2)、给出相应的实验结果;
(3)、分析说明LSB算法的优缺点。
四、算法描述

LSB算法中文译名是最低有效位,是指将秘密信息嵌入到载体图像像素值的最低有效位,也称最不显著位,因为改变这一位置对载体图像的品质影响最小。
我们先把一个载体图像变成由十进制像素值转变为二进制的数据,列出一个二进制数的矩阵,然后在这个矩阵中使用一个随机函数产生随机嵌入的位置,之后用秘密信息的二进制形式去依次替换载体嵌入位置的每个二进制数的最后一位,即修改它的最后一位为秘密信息的二进制数。最后将嵌入秘密信息的载体图像二进制形式转化为十进制的像素,从而获得含有秘密信息的图像。
在解密的时候,仍然是调用随机函数,得到嵌入的位置,将已经含有秘密信息的载体图像转化为二进制的形式,读出这些像素位置的二进制数的最后一位,组合起来,记得到嵌入的秘密。
实验结果
实验执行语句为
[ste_cover,len_total]=randlsbhide('','','',300)
其中 randlsbhide()函数定义为:
function [ste_cover,len_total]=randlsbhide(input,file,output,key)
%读入图像矩阵
cover=imread(input);
ste_cover=cover;
ste_cover=double(ste_cover);
%将文本文件转换为二进制序列
f_id=fopen(file,'r');
[msg,len_total]=fread(f_id,'ubit1');
%判断嵌入消息量是否过大
[m,n]=size(ste_cover);
if len_total>m*n
error('嵌入消息量过大,请更换图像');
end
%p作为消息嵌入位数计数器
p=1;
%调用随机间隔函数选取像素点
[row,col]=randinterval(ste_cover,len_total,key);
%在LSB隐秘消息
for i=1:len_total
ste_cover(row(i),col(i))=ste_cover(row(i),col(i))-mod(ste_cover(row(i),

信息隐藏实验报告 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人86979448
  • 文件大小828 KB
  • 时间2018-04-04