[问题] 傅立叶滤镜与隐形水印

楼主: jurian0101 (Hysterisis)   2016-12-03 16:38:57
前一阵子看到这样一则知乎问答,得知有这种利用频域转换,把水印编码
后当成 mask加上去的,抗盗图者破坏的隐形水印 (blind watermark)
http://www.zhihu.com/question/50735753
因为看起来就跟 Mathematica Cookbook 里提到的 high-pass / low-pass
filter 有 87% 像,读到这章就手痒想玩玩看。
来一个线上的傅立叶filter实做分享,以利手边没书的版友
http://mathematica.stackexchange.com/questions/110914/
不过因为这些年来,我脑子理还是没有任何讯号处理的知识,乱玩一通
之后算是失败了,主要是把这样形式的水印
Graphics[MapThread[
Text[Style[#1, 100, FontFamily -> "微软正黑体 Light"], #2*{rx, ry},
Automatic, ReIm[Exp[I RandomReal[2 Pi]]]] &,
{{"清", "心", "也", "可", "以"}, oneroots[5]}
], ImageSize -> {width, height}]
加上去之后逆傅立叶转换会得到很凄惨充满噪声的灰阶图,完全没有如
范例般不显眼。
而讨论中提到的 alpha 值的定义我也还没学到。
这个应用,我应该就...来日再战吧。
打乱 mask(水印) ,又重新复原之的方式,应该可以利用 InversePertubation
scramble= RandomSample[Range[10]];
unscramble= InversePertubation[scramble];
(Array[a,10][[scramble]])[[unscramble]]
- -
Out[]:= {a[1], a[2] ,..., a[10]}

Links booklink

Contact Us: admin [ a t ] ucptt.com