矩阵图像施密特正交化(Schmidt orthogonalization)

最近在研究多个水印图像的嵌入,和大家分享学到的一个小知识点。

正交化

大家不要想的太复杂,其实就是我们初中学的两个向量内积为0,更通俗一点,就是两个向量垂直。

单位化

使得矩阵成为单位矩阵。个人认为这一步在图像处理中可以达到数据降维,减少计算复杂度的作用。

基向量

用来构成向量平面,以二维向量平面为例,可以形成一个二维坐标系。

施密特正交化

为啥要学这个?

以频域水印嵌入为例,我们在嵌入水印的时候可以通过直接修改频域系数来达到。

BUT!这种直接嵌入的方法很EASY,换言之,鲁棒性很差!很难抵抗攻击,所以提出基于块间相关性嵌入水印,这个有相关论文(2014的那篇最有代表性,其次是2016的那篇),感兴趣可以去阅读一下!

这种基于块间相关性进行水印嵌入的方法,简单来说就是计算两个相邻块之间的差值,使其在一定的差值域中,在提取的过程中,通过再次计算差值,判断差值所在区域段,直接提取出水印。

这种方法最大的好处是当带水印的图像遭受到攻击时,相邻块之间的变化不会有很大差异(简单理解,可以把两个块想象为两辆小汽车,二者都在行驶,但是由于速度几乎一样,所以可以说二者保持相对静止,车距就没有改变!回到图像块上,行驶就是受到的攻击,车距就是差值!)

那么大家会注意到,这种方法的问题在于,如果要嵌入两个及以上的水印,势必前一个水印的修改值会影响后一个,所以我们需要做的就是让这些水印的嵌入互不干扰!

(图像是一个二维矩阵,我们可以设定一个直角坐标系,原点分别指向矩阵中的每一个元素,这样就形成了很多向量。当然,这些矩阵我们要怎么比较大小呢?所以就需要将他们放在同一个向量上进行比较!简单选择!x轴就可以!而每个向量在x轴的大小就是他们在x轴上的投影!方向都是一样的,不用纠结!)帮助大家理解,下面回到施密特!

看一个简单的例子:

其中,step1是完成正交化,step2是完成单位化。

目的在于求出b1,b2,这两个向量在向量平面中是两两垂直的,也就是内积为0,互不影响。

ps: b1=a1:因为要使得a1和a2相互垂直,所以需要固定其中一个向量,就是这里的a1,然后找a2在a1上的投影。

ok, if you understand this, let me give you something harder!

刚才是两个向量,那三个向量该如何理解呢?

其实很简单,刚才是a2需要和a1垂直,那么加一个a3,就是要a3和前面的两个向量分别垂直,就可以,formula如下:

 is that easy?!!

我们脑海中保持一个概念,就是通过计算,得到新的一组两两相交的向量。

欢迎大家讨论!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值