数字水印源码,希望对大家学习有帮助. % 由高斯正态分布序列 g1 产生 36×4 的水印信 %号 w0,w0 由(0,1)组成。 clear randn('state',1106); g1=randn(36,4); for i=1:36 for j=1:4 if g1(i,j)>=0 w0(i,j)=1; else w0(i,j)=0; end; end; end; figure; imshow(w0);title('水印'); % 对水印信号 w0 进行(7,4)汉明编码,得到一 %36×7 的分组码 x0。 x0=w0; for i=1:36 s=8*x0(i,1)+4*x0(i,2)+2*x0(i,3)+x0(i,4); switch s case 0 x0(i,5)=0;x0(i,6)=0;x0(i,7)=0; case 1 x0(i,5)=0;x0(i,6)=1;x0(i,7)=1; case 2 x0(i,5)=1;x0(i,6)=1;x0(i,7)=0; case 3 x0(i,5)=1;x0(i,6)=0;x0(i,7)=1; case 4 x0(i,5)=1;x0(i,6)=1;x0(i,7)=1; case 5 x0(i,5)=1;x0(i,6)=0;x0(i,7)=0; case 6 x0(i,5)=0;x0(i,6)=0;x0(i,7)=1; case 7 x0(i,5)=0;x0(i,6)=1;x0(i,7)=0; case 8 x0(i,5)=1;x0(i,6)=0;x0(i,7)=1; case 9 x0(i,5)=1;x0(i,6)=1;x0(i,7)=0; case 10 x0(i,5)=0;x0(i,6)=1;x0(i,7)=1; case 11 x0(i,5)=0;x0(i,6)=0;x0(i,7)=0; case 12 x0(i,5)=0;x0(i,6)=1;x0(i,7)=0; case 13 x0(i,5)=0;x0(i,6)=0;x0(i,7)=1; case 14 x0(i,5)=1;x0(i,6)=0;x0(i,7)=0; case 15 x0(i,5)=1;x0(i,6)=1;x0(i,7)=1; end; end; % 对 x0 进行行向位扩展,得到一个由(-1,1)组成 %的扩展序列 y。cr 为扩展因子。 cr=256; for i=1:252 if x0(i)==1 y(i,1:cr)=1; else y(i,1:cr)=-1; end; end; y(253:256,:)=0; % 以下产生伪随机序列 p。为此先设定密钥(1114) %并产生高斯正态分布序列g2,再由g2 产生由(-1,1) %组成的伪随机序列 p。 randn('state',1114); g2=randn(256,256);< 5.17 用 MATLAB 数 字 图 像 水 印 一 、 引 言 随 着 Internet 的 普 及 , 信 息 的 安 全 保 护 问 题 日 益 突 出 。 如 何 有 效 地 防 止 数 据 的 非 法 复 制 和鉴 别 数 字 媒 体 的 知 识 产 权 , 成 为 亟 需 解 决 的 问 题 。 1993 年 Caronni 提 出 了 数 字 水 印 的 概 念 , 并应 用 于 数 字 图 像 , 此 后 , 研 究 人 员 将 数 字 水 印 的 概 念 扩 展 到 电 视 图 像 和 声 音 等 领 域 , 数 字 水 印技 术 作 为 版 权 保...