0
点赞
收藏
分享

微信扫一扫

【图像隐藏】基于小波变换DWT实现数字盲水印嵌入提取含各类攻击附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

⛄ 内容介绍

数字水印技术是近年来图像保护技术研究领域的一个热点,小波变换以其良好的空频特性及与图像编码标准JPEG2000的兼容性,使得小波域水印更具鲁棒性,以及更大的嵌入容量.本文就小波水印的特点,基本算法,实验鲁棒性的结果等进行综述,实验结果表明,该方法具有较强的鲁棒性和安全性,适用于数字图像的版权保护.

⛄ 部分代码

[C S] = wavedec2(imgf,3,'haar');

wmscram = imgscram(wm,15,1);%对嵌入图像做猫变换

[wmr wmc] =size(wmscram);

LL = coef2mat(C,S,1);%重构A3低频图像

[lr lc] = size(LL);

M = lr / wmr ;

for i=1:M:lr

    for j=1:M:lc

        blk = LL(i:i+M-1,j:j+M-1);

        [u sv v]= svd(blk);

        m = round(sv(1)/q);

        d = abs(m-fix(sv(1)/q));

        wij = wmscram( (i+M-1)/M , (j+M-1)/M );

        if ( wij==0 && mod(m,2)==1 ) || (wij==1 && mod(m,2)==0)

            if d==0

                m_ast = m+1;

            end

            if d==1

                m_ast = m-1;

            end

        else

            m_ast = m;

        end

        sv_ast = m_ast * q;

        dx = sv_ast - sv(1);

        sv(1)=sv_ast;

        blk = u*sv*v';

        LL(i:i+M-1,j:j+M-1) = blk;%嵌入水印完毕

    end

end

C = coefmodify(LL,C,S);

imgg=waverec2(C,S,'haar');


end

⛄ 运行结果

【图像隐藏】基于小波变换DWT实现数字盲水印嵌入提取含各类攻击附Matlab代码_数字图像

【图像隐藏】基于小波变换DWT实现数字盲水印嵌入提取含各类攻击附Matlab代码_图像处理_02

【图像隐藏】基于小波变换DWT实现数字盲水印嵌入提取含各类攻击附Matlab代码_数字图像_03

【图像隐藏】基于小波变换DWT实现数字盲水印嵌入提取含各类攻击附Matlab代码_小波变换_04

⛄ 参考文献

[1]杨小霞. 基于小波变换的数字图像盲水印算法[J]. 兰州文理学院学报(自然科学版), 2010, 24(5):84-86.

[2]王智文, 刘美珍, 蔡启先,等. 基于小波变换的数字图像自适应盲水印算法及实现[J]. 计算机测量与控制, 2009(11):4.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料


举报

相关推荐

0 条评论