wavedetect2.m

来自「matlab语言写的细胞自动机数字水印算法」· M 代码 · 共 28 行

M
28
字号
%corr_coef=wavedetect2('image31.jpg','jpg','images3.jpg','jpg',1024,3,0.1)
%本函数完成DCT数字水印的检测
%test为待测图象
%permission1为图象文件格式
%original为输入原始图象
%permission2为原始图象文件格式
%do_num是进行投票选择的次数
%seed为随机数种子
%alpha水印强度
%corr_coef是检测出的相关性值
function corr_coef=wavedetect2(test,permission1,original,permission2,seed,do_num,alpha)
dataoriginal=imread(original,permission2);
datatest=imread(test,permission1);
dataoriginal=dataoriginal(:,:,1);
[m,n]=size(dataoriginal);
datatest=datatest(:,:,1);
%提取加有水印的图象的DCT系数
waterdct=dct2(datatest);
%提取原始图象的DCT系数
waterdcto=dct2(dataoriginal);
%生成两种水印
realwatermark=cellauto(m,n,seed,do_num);
realwatermark=dct2(realwatermark);
testwatermark=(waterdct-waterdcto)/alpha;
%计算相关性值
corr_coef=trace(realwatermark'*testwatermark)/(norm(realwatermark,'fro')*norm(testwatermark,'fro'));

⌨️ 快捷键说明

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