实验四--基于DCT域的信息隐藏算法(共6页).doc
《实验四--基于DCT域的信息隐藏算法(共6页).doc》由会员分享,可在线阅读,更多相关《实验四--基于DCT域的信息隐藏算法(共6页).doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验四 基于DCT域的信息隐藏算法一、 实验目的该实验为验证性实验。目的是通过实验使学生掌握经典信息隐藏算法,在Matlab环境下,编写基于图像DCT域的信息隐藏算法程序。用Matlab函数实现DCT域的信息隐藏及提取,并进行分析。二、 实验要求1、实验前要做好充分准备,包括:复习实验所涉及的知识点,掌握Matlab编程语言和调试环境。2、实验时注意记录实验过程中产生的数据、出现的问题及解决问题的方法。3、理论联系实际,认真分析实验结果,回答思考题。4、实验后完成实验报告(含相关截图,并附打印的程序清单)。三、 实验环境计算机(安装Visual C+ 6.0和Matl
2、ab 6.5以上版本)四、 实验原理隐秘算法核心是将我们选取的像素点的最不重要位依次替换成秘密信息,以达到信息隐秘的目的。在DCT域隐藏的信息处于图像的显著区域,比在时域嵌入信息更具有鲁棒性。五、 实验内容与步骤(1) 完善程序实现在DCT域对隐秘消息的嵌入。%文件名:hidedctadv.m%函数功能:本函数用于DCT域的信息隐藏%输入格式举例:count,msg,data=hidedctadv(lenna.jpg,1.jpg,1.txt,1982,1);%参数说明:%image为载体图象%imagegoal为藏有秘密信息的载体,即隐秘载体%msg为待隐藏的信息%key为密钥,用来控制随机选
3、块%alpha为控制量,用来保证编码的正确性%count为待隐藏信息的长度%result为隐藏结果function count,msg,result=hidedctadv(image,imagegoal,msg,key,alpha)%按位读取秘密信息frr=fopen(1.txt,r);msg,count=fread(frr,ubit1);fclose(frr);data0=imread(lena.jpg);%将图象矩阵转为double型data0=double(data0)/255;%取图象的一层做隐藏data=data0(:,:,1);%对图象分块T=dctmtx(8);%对分块图象做DC
4、T变换DCTrgb=blkproc(data,8 8,P1*x*P2,T,T);DCTrgb0=DCTrgb;%产生随机的块选择,确定图像块的首地址row,col=size(DCTrgb);row=floor(row/8);col=floor(col/8);a=zeros(row col);k1,k2=randinterval(a,count,2001);for i=1:count k1(1,i)=(k1(1,i)-1)*8+1; k2(1,i)=(k2(1,i)-1)*8+1;end%信息嵌入temp=0;for i=1:count if msg(i,1)=0 if DCTrgb(k1(i)
5、+4,k2(i)+1)DCTrgb(k1(i)+3,k2(i)+2) temp=DCTrgb(k1(i)+4,k2(i)+1); DCTrgb(k1(i)+4,k2(i)+1)=DCTrgb(k1(i)+3,k2(i)+2); DCTrgb(k1(i)+3,k2(i)+2)=temp; end else if DCTrgb(k1(i)+4,k2(i)+1)DCTrgb(k1(i)+3,k2(i)+2) DCTrgb(k1(i)+3,k2(i)+2)=DCTrgb(k1(i)+3,k2(i)+2)-10;%将原本小的系数调整得更小 else DCTrgb(k1(i)+4,k2(i)+1)=DCT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 基于 DCT 信息 隐藏 算法
限制150内