实验报告模板szm分析解析(共12页).doc
《实验报告模板szm分析解析(共12页).doc》由会员分享,可在线阅读,更多相关《实验报告模板szm分析解析(共12页).doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验一:RGB图像分层及分层加强一:实验目的:(1)了解图像的基本的类型和表示方式。(2)了解索引图像中图像矩阵与调色板的关系。(3)掌握RGB图像分层结构及分层加强的方法。二:实验内容:(1)熟悉并尝试使用Matlab的命令方式和程序方式处理数组及图像。(2)用Matlab对RGB图像分层,并将图像的指定层加强。三:实验过程:1.3.1 索引图像的操作: data,map=imread(c:lenna256.jpg,jpg);%从C盘中读取jpg图像 image(data),colormap(map);%将读取的索引图像显示出来。图1.1 索引图像1.3.2 RGB
2、颜色色谱的分层显示: RGB=reshape(ones(64,1)*reshape(jet(64),1,192),64,64,3); R=RGB(:,:,1); G=RGB(:,:,2); B=RGB(:,:,3); subplot(141),imshow(R),title(红色分量); subplot(142),imshow(G),title(绿色分量); subplot(143),imshow(B),title(蓝色分量);图1.2 RGB颜色色谱的分层显示1.3.3 RGB图像分层显示和指定层的加强:打开Matlab实验环境,在File选项中新建M-Flie。并在M-file中写入操作代
3、码:%将输入的RGB图像分层,并将图像的指定层加强%输入格式举例:【imageRGB,imageR,imageG,imageB,result】=rgbanalysis(c:lenna256.jpg,jpg,1)function imageRGB,imageR,imageG,imageB,result=rgbanalysis(image,permission,level);imageRGB=imread(image,permission);imageRGB=double(imageRGB)/255;result=imageRGB;%对图像进行分层提取imageR=imageRGB(:,:,1);
4、imageG=imageRGB(:,:,2);imageB=imageRGB(:,:,3);%显示结果subplot(321),imshow(imageRGB),title(原始图像);subplot(322),imshow(imageR),title(R层灰度图像);subplot(323),imshow(imageG),title(G层灰度图像);subplot(324),imshow(imageB),title(B层灰度图像);%对相应的层进行颜色加强if level =1 imageR=imageR+0.2;endif level=2 imageG=imageG+0.2;endif l
5、evel=3 imageB=imageB+0.2;endresult(:,:,1)=imageR;result(:,:,2)=imageG;result(:,:,3)=imageB;imwrite(result,temp.jpg,jpg);result=imread(temp.jpg,jpg);subplot(325),imshow(result),title(色彩增强的结果);在Matlab命令行中输入如下指令: imageRGB,imageR,imageG,imageB,result=rgbanalysis(c:lenna256.jpg,jpg,1);可得到实验结果图:图1.3 RGB分层
6、显示和加强图像四:试验总结:本实验是对RGB图像的分层及强化处理,而MATLAB在处理图像的时候是要将图像化为矩阵来处理,所以,在对图像处理前需要将图像转化为RGB图像矩阵,并分层提取,之后才能进行加强操作。在分层加强层时,R、G、B分别是1、2.、3对应该层。本次实验加深了我们对课本内容的理解,同时加强了我们的学习兴趣,动手对图像进行操作更是从另一方面让我们学习MATLAB知识。实验二:LSB信息隐藏和提取一:实验目的:(1) 深入理解信息隐藏的相关内容,能进行简单的信息隐写和数字水印操作。(2)掌握顺序选择像素点及随机选择像素点,将消息嵌入LSB并提取消息。(3) 掌握相关工具的使用。二:
7、实验内容:(1) 顺序选择像素点将消息嵌入LSB并提取消息。(2) 随机选择像素点将消息嵌入LSB并提取消息。(3) 分析LSB算法的抗攻击能力。三:实验详细过程:2.3.1:顺序选择像素点将消息嵌入LSB并提取消息。新建M-file编写顺序隐藏代码:%函数功能:本函数将完成在LSB上的顺序信息隐秘function ste_cover,len_total=lsbhide(input,file,output)%读入图像矩阵cover=imread(input);ste_cover=cover;ste_cover=double(ste_cover);%将文本文件转换为二进制序列f_id=fopen
8、(file,r);msg,len_total=fread(f_id,ubit1); %判断嵌入消息量是否过大m,n=size(ste_cover);if len_totalm*n error(嵌入消息量过大,请更换图像);end%p作为消息嵌入位数计数器 p=1; for f2=1:n for f1=1:m ste_cover(f1,f2)=ste_cover(f1,f2)-mod(ste_cover(f1,f2),2)+msg(p,1); if p=len_total break; end p=p+1; end if p=len_total break; end endste_cover=u
9、int8(ste_cover);imwrite(ste_cover,output);%显示实验结果 subplot(1,2,1);imshow(cover); title( 原始图像 );subplot(1,2,2);imshow(output);title(隐藏信息的图像);保存后在命令行执行: ste_cover,len_total=lsbhide(lenna512.bmp,1.txt,d.bmp);得到如下对比图像:图2.1 LSB空域信息隐藏后图像与原始图像对比2.3.2:随机选择像素点将消息嵌入LSB并提取消息:新建M-file文件写入代码:%函数功能:本函数将完成随机选择LSB的信
10、息隐秘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_totalm*n error(嵌入消息量过大,请更换图像);end%p作为消息嵌入位数计数器p=1;%调用随机间隔函
11、数选取像素点 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),col(i),2)+msg(p,1); if p=len_total break; end p=p+1;endste_cover=uint8(ste_cover);imwrite(ste_cover,output);%显示实验结果 subplot(1,2,1);imshow(cover); titl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 报告 模板 szm 分析 解析 12
限制150内