`
pleasetojava
  • 浏览: 732969 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

matlab学习笔记

阅读更多
加入水印,采用lsb


%Name: Chris Shoemaker
%Course: EER-280 - Digital Watermarking
%Project: Least Significant Bit Substitution
% Watermark Embeding

clear all;

% save start time
start_time=cputime;

% read in the cover object
file_name='_lena_std_bw.bmp';
[cover_object,map]=imread(file_name);

% read in the message image
file_name='key.bmp';
[message,map1]=imread(file_name);
message1=message;

% convert to double for normalization, then back again
message=double(message);
message=fix(message./2);
message=uint8(message);

% determine size of cover object
Mc=size(cover_object,1); %Height
Nc=size(cover_object,2); %Width

% determine size of message object
Mm=size(message,1); %Height
Nm=size(message,2); %Width

% title the message object out to cover object size to generate watermark
for ii = 1:Mc
for jj = 1:Nc
watermark(ii,jj)=message(mod(ii,Mm)+1,mod(jj,Nm)+1);
end
end

% now we set the lsb of cover_object(ii,jj) to the value of watermark(ii,jj)
watermarked_image=cover_object;
for ii = 1:Mc
for jj = 1:Nc
watermarked_image(ii,jj)=bitset(watermarked_image(ii,jj),1,watermark(ii,jj));
end
end

% write the watermarked image out to a file
imwrite(watermarked_image,'lsb_watermarked.bmp','bmp');

% display processing time
elapsed_time=cputime-start_time,

% calculate the PSNR
psnr=psnr(cover_object,watermarked_image,Mc,Nc),

% display watermarked image
figure(1)
imshow(watermarked_image,[])
title('Watermarked Image')
figure(2)
imshow(cover_object,[])
title('original image')
for ii = 1:Mc
for jj = 1:Nc
watermark1(ii,jj)=message1(mod(ii,Mm)+1,mod(jj,Nm)+1);
end
end
%watermark1=watermark1*256;
%message1=message1*256;
figure(3)
imshow(watermark1,[])
title('the watermark')
figure(4)
imshow(message1,[])
title('the watermark')

分享到:
评论

相关推荐

    Matlab学习笔记

    MATLAB 学习笔记 以下笔记每个字几乎都调试过 按照自己的思维习惯加以整理 希望对读者有些帮助 (这是个m文件 不是MATLAB程序 只是m文件看着舒服 所以写成m文件了 用txt也可以打开的)

    Matlab学习笔记.docx

    Matlab 学习笔记 Matlab 是一种高性能的开发语言,广泛应用于科学计算、数据分析、机器学习等领域。本文档将从基本操作和矩阵输入入手,详细介绍 Matlab 的变量声明、变量类型、数学运算符、内置数学函数等知识点。...

    ##matlab学习笔记##.md

    matlab学习笔记

    matlab学习笔记汇总.zip

    matlab学习笔记汇总,适合初学者。 1.3Matlab界面介绍(1).docx 1.4Matlab界面介绍(2).docx 1.5Matlab帮助系统.docx 1.6Matlab的搜索顺序及搜索路径.docx 2.1Matlab的变量与常量.docx 2.2Matlab的基本数据结构(1)....

    MATLAB学习笔记.zip

    MATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记.zipMATLAB学习笔记....

    matlab 学习笔记

    本学习笔记旨在帮助初学者快速掌握Matlab的基本操作和常用命令,从而能够高效地利用这一工具进行各种计算任务。 一、Matlab界面与环境 在启动Matlab后,用户会看到工作区(workspace)、命令窗口(Command Window)...

    matlab学习笔记-Matlab笔记.doc

    MATLAB学习笔记 MATLAB是一种高级编程语言,广泛应用于科学计算、数据分析和可视化。以下是MATLAB学习笔记的重要知识点: 1. M 文件概述 MATLAB语言编写的程序称为M文件。M文件可以根据调用方式的不同分为两类:...

    matlab学习笔记(基础)

    ### MATLAB 学习笔记(基础) #### *.m 文件与 *.mat 文件 - ***.m 文件**:这类文件在 MATLAB 中用于保存脚本或函数。它们是纯文本文件,可以使用任何文本编辑器打开并编辑。当您运行一个 .m 文件时,MATLAB 会...

    信号与系统——MATLAB学习笔记

    信号与系统——MATLAB学习笔记 本资源是关于MATLAB学习笔记,主要介绍了MATLAB中数组与矩阵的乘法运算和除法运算,以及在MATLAB中绘制图形的方法。 一、数组与矩阵的乘法运算 在MATLAB中,数组与矩阵可以直接...

    Matlab 学习笔记2

    ### Matlab 学习笔记2:深入理解Matlab基础操作与高级功能 #### 一、Matlab 基础操作命令详解 Matlab是一款强大的数学计算软件,广泛应用于工程计算、算法开发、数据可视化等多个领域。掌握其基础操作是进行更深...

    matlab学习笔记和代码_her981_matlab_

    在本资源中,“matlab学习笔记和代码_her981_matlab_”是一个关于MATLAB的综合学习资料,包含了图像处理的基础知识以及相关的实践代码。MATLAB是一种强大的数学计算和编程环境,尤其适合数值分析、算法开发和数据...

    Matlab 学习笔记.docx

    .Matlab 学习笔记.docx

    Matlab 学习笔记.pdf

    .Matlab 学习笔记.pdf

    MATLAB学习笔记.docx

    这份“MATLAB学习笔记”涵盖了MATLAB的基础知识和一些高级应用,以下是对这些内容的详细阐述: 1. **MATLAB基础**: - MATLAB界面:包括命令窗口、工作空间、历史命令窗口和绘图窗口等,方便用户输入命令、查看...

    matlab学习笔记之matlab基础

    matlab学习笔记之matlab基础,数值计算与matlab语言的基础知识。

    Matlab系列--刘老憨的Matlab学习笔记.zip

    《Matlab系列--刘老憨的Matlab学习笔记》是一份深入浅出的Matlab学习资料,由知名博主“刘老憨”精心整理。Matlab,全称Matrix Laboratory,是一款强大的数学计算软件,广泛应用于科学计算、数据分析、工程计算以及...

    MATLAB学习笔记整理.pdf

    "MATLAB学习笔记整理" MATLAB 是一款功能强大且广泛应用于科学计算、数据分析、可视化等领域的软件。下面是对MATLAB的学习笔记整理,涵盖了命令、变量、函数、数组、矩阵、图像处理等方面的知识点。 命令篇: clc ...

Global site tag (gtag.js) - Google Analytics