⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dctwatermark.m

📁 matlab语言写的细胞自动机数字水印算法
💻 M
字号:
%[watermark,datared,datadct,datared2]=dctwatermark('lenna.jpg','lennal.jpg',jpg,1024,3,0.2)
%本函数完成嵌入水印
%original为原始图像文件名
%goal为嵌入水印图像文件名
%permission为图像文件格式
%seed为随机数种子
%alpha水印强度
%do_num是进行投票选择的次数
function [watermark,datared,datadct,datared2]=dctwatermark(orignal,goal,permission,seed,do_num,alpha)
data=imread(orignal,permission);
data=double(data)/255;
datared=data(:,:,1);
[row,col]=size(datared);
datadct=dct2(datared);
%调用函数cellauto
[chaoticrand,chaoticcell,watermark]=cellauto(row,col,seed,do_num);
dataadd=datadct+alpha*watermark;
datared2=idct2(dataadd);
data(:,:,1)=datared2;
%保存
imwrite(data,goal,permission);
%imwrite(watermarkimagergb,goal,permission);
%显示结果
data=imread(goal);
subplot(121);
imshow(datared2);
title('R层图像');
subplot(122);
imshow(data);
title('加入水印后的图像');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -