隐写算法(DE: Diamond Encoding)

1. DE直译过来为钻石编码,以下称钻石编码。其模型公式

S_{k}(p,q)= \left \{ (a,b) | \left \| p-a \right \| + \left \| q-b \right \| \leq k \right \}

根据上面的公式可以得到钻石编码模型的图形大致如下:

2. 钻石编码编码的进制确定l=|S_{k}|=2k^{2}+2k+1,则

|S_{1}(p,q)|=5, |S_{2}(p,q)|=13

3. 钻石特征值的计算公式(DCV):f(p,q)=((2k+1)\times p + q)mod\,\, l

4. 列举,秘密信息s_{t}与钻石特征值的距离:d_{t} = (s_{t} - f(p,q)) mod \,\, l,其中d_{t}决定着选择的位置,若d_{t}=4,则秘密信息嵌入的在D1,D2,D3中对应的位置如下图红色方框所示。

于是相应的像素值的改为如下:D_{1}(p,q)\rightarrow p,q-1D_{2}(p,q)\rightarrow p+1,q-1D_{3}(p,q)\rightarrow p-3,q

其中(p,q)为两个连续的像素值,通过嵌入密码信息得到像素对为(p^{'},q^{'})

5. 秘密信息的提取还是通过钻石特征值DCV:f(p^{'},q^{'})=((2k+1)\times p^{'} + q^{'})mod\,\, l

钻石编码的Matlab代码实现源https://github.com/YMilton/steganography/blob/master/DE.m

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值