实验二LSB信息隐藏实验_第1页
实验二LSB信息隐藏实验_第2页
实验二LSB信息隐藏实验_第3页
实验二LSB信息隐藏实验_第4页
实验二LSB信息隐藏实验_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验二lsb信息隐藏实验综合评分:【实验目的】:1. 掌握matlab基木操作2. 实现lsb信息隐藏和提取【实验内容】:(请将你实验完成的项11涂“)实验完成形式:用matlab函数实现lsb信息隐藏和提取其它:(请注明)实验选择载体: 256x256灰度图像口 256x 256rgb图像口任意大小的rgb图像其他512x512灰度图像64x64灰度图像实验效果和分析:完成基本的lsb信息隐藏及提取能随机选择嵌入位进行信息隐藏及提取(考虑安全性因素)能够计算psnr,分析信息隐藏图像质量完成对秘密信息的图像载体进行攻击采用的攻击方法(请列出):jpeg压缩攻击,缩放resize攻击计算每种攻

2、击方法提取的秘密信息误码率其它:(请注明)【实验工具及平台】: windows+matlab7.0其它:(请注明)【实验涉及到的相关算法】:1. 基本lsb信息隐藏及提取算法。lsb信息隐藏算法:(1) 读入并处理载体图像和水印图像,使二者大小相等。(2)选择要替换的位平而。(3)用bitset ()函数用水印图像替换选定的某一位平面,其屮位平面1为最不重 要面,位平面8为最重要面。提取算法:利用bi塩& ()函数将所嵌入的平而提収出来即可。2. 完成随机选择嵌入位进行lsb信息隐藏及提取算法。隐藏算法:(1) 将载体图像和水印图像转换为一维的(2)产生随机数种子,产生随机序列控制信息

3、械入位(3) 由随机数控制,产生不同的步长,随机地嵌入水印(4) 将图像转化为二维图像并显示出来 提収算法:(1) 将图像转化为一维数组(2) 产生与隐藏时相同的随机数种了(3) 提取出被替换的位置的数值(4) 把图像转换为二维图像并显示出来【实验分析】:1、完成基木lsb信息隐藏及提取(1) 原图像为灰度图像lena_gray. bmp x=imread (? lens gray, bmp');f i gure, imshow(x);(2) 处理水印图像,将具调整为与载体图像相同人小y=imreadc line, bmp');figure, imshow(y);yl=rgb2

4、gray(y);y2=im2bw(yl)figure, imshow(y2);把图像y2放人8倍y3=imresize (yl, 8,' nearest,);figure, imshow(y3);(3) 整体位平面嵌入zl二bitset (x, 1, y3) ;%替换最不重要位z2二bitset (x, & y3) ;%替换最重要位figure, imshow(zl);figure, imshow(z2);下图显示的为替换最不重要位和授重要位的结果(4) 提取信息tl=bitget (zl, 1);figure, imshow(logical(tl);t2=bitget (z2

5、, 8);figure, imshow(logical(t2);2、完成随即选择嵌入位尽心lsb信息隐藏及提取%将载体图像和水印图像转换为一维xrs二reshape(x, 1, 512*512);% figure, plot (xrs);y2rs=reshape(y2, 1,64*64);% figure, plot (ylrs);%产生随机序列控制信息嵌入位,并嵌入水印randc state, 0): %生成随机数种子r=rand(l, 64*64);% figure, plot (r);i=l;for j=l:4096if r(j)>0.5i二i+64; xrs(i)=y2rs(j)

6、;elsei二i+54; xrs(i)=y2rs(j);endend%维数组还原为二维图像 x2=rcshape(xrs, 512,512);figure, imshow(x2);%提取图像randf state*, 0) ; %生成相同的随机数种子 r=rand(l,64*64);i二 1;for j=l:4096 if r(j)>0.5i二i+64;y2rs(j)= xrs(i);elsei=i+54; y2rs(j)=xrs(i);endendyy=reshape(y2rs, 64, 64); figure, imshow(yy);d2mnpsnr(m) = l(hogw%3、分别

7、计算psnr,分析信息隐藏图像质量(psnr峰值信噪比)a/ n££(7(x,y)-/w(x,y)2 尸 irow, col二size(x);sum1=0;for i=l:rowfor j=l:colsuml=suml+(zl (i, j)-x(i, j)*(zl (i, j)-x(i, j);endendsuml=double(suml);psnr_lbs=-10*log(suml/(255*255*row*col);sum2=0;for i=l:rowfor j=l:col sum2=sum2+(x2(i, j)-x(i, j)*(x2(i, j)-x(i, j);en

8、dendsum2二double(sum2);psnr2=-10*log(sum2/(255*255*row*col);结果分析:后者psnr大说明随机lsb比顺序lsb隐写安全性更好。4、分别对含冇秘密信息的图像载体进行攻击(缩放resize jpeg压缩、中值滤波 medfilt2等、剪切),计算误码率%jpeg压缩攻击imwrite(zl,' jpegattack. jpg');m=imread c jpegattack jpg');ml=bi tget (m, 1);figure, imshow(logical(ml);%计算误码率count 1=0; %设置计数

9、器,为错误的像素点数计数for =1:512*512%按照以上方法提取图像屮的水印,并且获得错课的像素点数if y3(i)=ml(i)countl=couni1+1;endenderl=countl/(512*512);erl;%缩放resize攻击 zrs=imresize(zl, 0. 5,' bicubic,) ; %将嵌入水印的图像缩放0. 5倍 zrsl=bitget (zrs,1);zrstors=imresize(zrsl, 2,' bicubic');%计算误码率count2=0; %设置计数器,为错误的像素点数计数for 1=1:512*512%按照以上方法提取图像中的水印,并口获得错误的像素点数if y3(i)"=zrstors(i)count2=count2+l;endender2=count2/(512*5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论