脆弱水印中 LH 子带提取水印函数代码

该函数用于从脆弱水印中提取 LH 子带的水印信息。

function rw = wm_extr_type1(loca)
[mm,nn] = size(loca);
index = 1;
%取出2*2的块
for k = 1:2:mm-1
    for kk = 1:2:nn-1
        tem = loca(k:k+1,kk:kk+1);
        a11 = tem(1,1);
        a12 = tem(1,2);
        a21 = tem(2,1);
        a22 = tem(2,2);
        %-------a11+a21 >= a12+a22则水印为0,否则为1-------
        if a11 + a21 >= a12 + a22
            rw(index) = 0;
        else
            rw(index) = 1;
        end
        index = index + 1;
    end    
end
end

函数参数:

  • loca: 包含 LH 子带信息的矩阵

函数返回值:

  • rw: 提取的水印信息,以向量形式表示

代码说明:

  • 该函数首先获取输入矩阵 loca 的大小,并初始化一个索引变量 index。
  • 然后使用双重循环遍历 loca 矩阵,每次提取 2x2 的块。
  • 对每个 2x2 块,提取四个元素 a11, a12, a21, a22。
  • 根据条件 a11 + a21 >= a12 + a22 确定水印位为 0 或 1,并将其存储在 rw 向量中。
  • 循环结束后,rw 向量即包含提取的水印信息。

注意:

  • 该代码仅供参考,实际应用中可能需要根据具体情况进行调整。
  • 为了更好的理解代码,建议参考相关的脆弱水印算法文献。

原文地址: https://www.cveoy.top/t/topic/jpxs 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录