【MVG_in_CV】从图像恢复度量性质

1,先验知识

1.1,虚圆点

在相似变换HS下,无穷远线l是不变量,而I上的理想点(x1,x2,0)T,经过HS变换后,虽然仍在l上,但是却发生了移动。
在这里插入图片描述【图】相似变换矩阵HS
但是,有两个称之为虚圆点的理想点I=(1,i,0)T、J=(1,-i,0)T,在相似变换HS下是不变量,即
I '= HS I = I
J = HS J = J

事实上,可以证明有如下结论:
在射影变换H下:虚圆点I和I为不动点 <=> H为相似变换

1.2对偶二次曲线的射影变换

1.2.1,形式:

在点变换x = Hx下,对偶二次曲线C的变换为C* = HC*HT

1.2.2,不变性

在某种变换下,二次曲线的系数矩阵如果或不变(相差一个常数),则称该二次曲线在次变换下不变

1.3,虚圆点的对偶二次曲线

1.3.1,退化的对偶二次曲线

秩2的退化的线二次曲线包含两个点x,y,其系数矩阵有如下形式:
在这里插入图片描述
二次曲线的系数矩阵是3×3的齐次对称矩阵,有5个自由度,而退化的二次曲线,系数矩阵不满秩,因此其行列式为0,进而又去掉一个自由度,一共4个自由度

1.3.2,虚圆点的对偶二次曲线形式

如前所述,虚圆点的对偶二次曲线的系数矩阵有如下形式:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

1.3.3,虚圆点的对偶二次曲线性质

在任何设射影变换下,C*有如下性质:
在这里插入图片描述

1.3.4,一个重要结论

在射影变换H下:虚圆点的对偶二次曲线C*是不变量 <=> H是相似变换
即:
C* = HC*HT = C* <=> H是相似变换

1.4,射影变换下平面上的夹角

1.4.1,欧氏变换下平面上的夹角

欧氏变换及相似变换下,平面上两直线 l=(l1,l2,l3),m=(m1,m2,m3)的夹角θ,可以由两者的法线计算,直线 l 和 m 的 法线分别与(l1,l2)和(m1,m2)平行,于是有:
在这里插入图片描述式(1.4.1_1)
但是在仿射和射影变换中,两直线的夹角不是不变量。因此仍使用上述公式的话,计算得到的夹角θ与真实场景中的不同。

1.4.2,射影变换下平面上的夹角

但是我们发现,借助虚圆点的对偶二次曲线系数矩阵C*可以定义一个统一的夹角计算公式:
在这里插入图片描述式(1.4.2_2)
由于C*对相似变换是不变量(自然对欧氏变换也是),C*在相似和欧氏变换下的形式为:
在这里插入图片描述
从而在相似和欧氏变换中,式(1.4.2_2)与式(1.4.1_1)完全相同。
可以证明式,式(1.4.2_2)在 射影变换 下是不变量,即通过式式(1.4.2_2)可以在射影变换下求解变换后的直线 l 和 m 所对应的真实场景下的两条直线的夹角θ,注意此时式中的C*,是经过射影变换后的C* = HC*HT

2,度量矫正

2.1,度量矫正的问题描述

已知:一个射影变换H可以分解为相似变换Hs,仿射变换HA,射影变换HP的组合的形式。

在这里插入图片描述
H产生的作用是这样的:
在这里插入图片描述
注:
π1中的C*为,虚圆点的对偶二次曲线
π2中的C* 为,π1中的C*经过相似变换HS后的像,由前述可知,相似变换不改变C*,即C*=HSC*HST
π3中的C*∞3 为,π2中的C*经过仿射变换HA后的像,即C*∞3=HAC*HAT
π4中的C*∞4 为,π3中的C*∞3经过射影变换Hp后的像,即C*∞4=HPC*∞3HPT
以后将要出现的情况,以此类推,不再赘述。

所谓度量矫正,就是找到某个变换将H射影变换后的射影图片π4矫正为π1经过某个相似变换HS_1后的图片π2_1(与图中的π2不一定相同)。这个HS_1是什么我们并不关心,因为我们只是想得到图像π2_1

在这里插入图片描述

2.2,从仿射变换中进行度量矫正

2.2.1,问题描述

先来看一种简单的情况,假设我们已经通过某个变换将π4矫正为了π1经过某个仿射变换后的图片π3_1。
在这里插入图片描述
上面从π0到π3_1的过程与我们的想做的事无关,并且射影变换是可以合并的,为了方便表示不妨简化为:

在这里插入图片描述
注:此时H是一个由相似和仿射组成的仿射变换
H=HAHS
在这里插入图片描述

那么我们的度量矫正工作就变成了:找到某个变换H将仿射变换后的射影图片π3_1矫正为π1经过某个相似变换HS_1后的图片π2_1(与图中的π2不一定相同)。同样,这个HS_1是什么我们并不关心。
即:
在这里插入图片描述

2.2.2,矫正方法

在前面的叙述中,我们已经知道的知识有:
在这里插入图片描述
在这里插入图片描述
C*∞3=HAC*HAT
于是,可以得到
在这里插入图片描述
如果我们能够找到π3_1中的两条直线 l=(l1,l2,l3),m=(m1,m2,m3),它们分别是π1(或者π2)中的两条互相垂直的直线 l 和 m 的像,那么由式(1.4.2_2)(重写在下面)
在这里插入图片描述式(1.4.2_2)
可以得到:
l’TC*∞3m = 0
在这里插入图片描述
其中KKT是2×2的对称矩阵,有三个独立元素,由于全局尺度因子无关紧要,因此只有2个自由度。
由上面的讨论可以看到,一组l,m可以提供一个约束,因此,找到两组,就可以求解处KKT,即得到C*∞3
对KKT进行Cholesky分解,可以就求解出K,即得到HA
此时,有两种方法求解出H
1,H=HA-1
2,对C*∞3进行SVD分解:
在这里插入图片描述
其中的U,即是HA,因此有H=HA-1

2.3,从射影变换中进行度量矫正

回到我们在2.1中对度量矫正的描述,即就是找到某个变换将H射影变换后的射影图片π4矫正为π1经过某个相似变换HS_1后的图片π2_1(与图中的π2不一定相同)。这个HS_1是什么我们并不关心,因为我们只是想得到图像π2_1

在这里插入图片描述
求解H的过程和2.2中几乎完全相同。
不同之处在于:
这里的H是射影变换:
在这里插入图片描述
因此,
C*∞4=HPHAC*(HAHPT
= HPHAC*HATHPT
在这里插入图片描述
由于C*∞4为对偶二次曲线的系数矩阵,所以其为3×3的齐次对称矩阵,,有5个自由度。

和2.2中一样,如果我们能够找到π3_1中的两条直线 l=(l1,l2,l3),m=(m1,m2,m3),它们分别是π1(或者π2)中的两条互相垂直的直线 l 和 m 的像,那么由式(1.4.2_2)可以得到:
l’TC*∞4m = 0
每对直线l和m可以提供一个约束,从而找到5组这样的直线对就可以求解出C*∞4
同样,对C*∞4进行SVD分解:
在这里插入图片描述
其中的U,即是HPHA,因此有H= U-1

3, 总结

进行度量矫正,首先要在变换后的图像中找到n组直线对<l=(l1,l2,l3)T,m=(m1,m2,m3)T>,然后求解一个m×m齐次对称矩阵C*,在对该矩阵进行SVD分解:
在这里插入图片描述
得到的U的逆就是需要的矫正变换矩阵
矫正仿射图片时,n=2,m=2
矫正射影图片时,n=5,m=3

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值