admin管理员组文章数量:1613391
奇异值分解(Singular Value Decomposition,简称SVD)是一种在数学、信号处理和统计学中广泛使用的矩阵分解技术。它可以将任何一个实数或复数矩阵分解为三个特定的矩阵的乘积,这三个矩阵分别是:
-
左奇异向量矩阵(U):这是一个单位正交矩阵,它的列向量称为左奇异向量。
-
奇异值矩阵(Σ,Sigma):这是一个对角矩阵,其对角线上的元素是非负的实数,称为奇异值。这些奇异值通常按降序排列。奇异值的数量等于原矩阵的行数和列数中的较小者。
-
右奇异向量矩阵V:这同样是一个单位正交矩阵,它的列向量称为右奇异向量。注意这里的V表示V矩阵的共轭转置。
可以用下面的公式表示
使用奇异值分解(SVD)求解单应性矩阵(Homography)和基础矩阵(Fundamental Matrix)是计算机视觉中的常见任务,特别是在图像配准、立体视觉和运动估计等领域。下面是这两种矩阵的求解过程:
求解单应性矩阵(Homography)
单应性矩阵描述了两个视图中平面上点之间的映射关系。给定一组对应点,可以通过解线性方程组来估计单应性矩阵。
-
建立方程组:对于每一对对应点,可以建立两个线性方程。如果有N对点(N至少为4),则可以构建一个2N×9的矩阵A。
-
应用SVD:对矩阵A进行SVD分解。
-
求解单应性矩阵:单应性矩阵H可以从SVD的结果中提取。具体来说,H是与最小奇异值对应的右奇异向量(V矩阵的最后一列),并将其重塑为3×3矩阵。
-
为什么H的解是与最小奇异值对应的右奇异向量(V矩阵的最后一列):
在使用奇异值分解(SVD)求解单应性矩阵(Homography)时,选择与最小奇异值对应的右奇异向量(即V矩阵的最后一列)作为解的原因与线性方程组的性质和SVD的数学特性有关。
为什么选择最小奇异值对应的向量
最小二乘解:
在超定方程组中,我们通常寻找最小二乘解,即使方程组没有精确解,也可以找到误差最小的解。在SVD的上下文中,与最小奇异值对应的右奇异向量提供了这种最小二乘解。
综上所述,选择与最小奇异值对应的右奇异向量作为单应性矩阵的解,是因为它提供了一个在最小二乘意义上的稳定解,同时考虑到了数据的不确定性和噪声。这种方法在实际应用中通常能得到较好的结果。
最小奇异值的意义:在SVD中,最小奇异值对应于A的最“弱”或最不稳定的方向。当我们寻找解H时,我们希望H在这个最不稳定的方向上有最小的分量,因为这意味着解对输入数据的微小变化不敏感,从而提高了解的稳定性和鲁棒性。
零空间和秩亏缺陷:在理想情况下,如果A的秩比其列数小,那么与最小奇异值对应的向量实际上位于A的零空间中。这意味着这个向量是方程 AH=0 的一个非平凡解。
线性方程组的性质
当我们用SVD来求解单应性矩阵H时,我们实际上是在解一个线性方程组 ��=0AH=0,其中A是根据对应点对建立的矩阵,H是我们要求解的单应性矩阵。这个方程组通常是超定的(即方程的数量多于未知数),并且在理想情况下没有精确的非零解(因为这意味着所有方程都完美满足,这在现实中几乎不可能)。
SVD的数学特性
SVD将矩阵A分解为三个矩阵的乘积:A=UΣV。在这里:U 和 V 是正交矩阵。Σ 是对角矩阵,其对角线上的元素是奇异值,按降序排列。
求解基础矩阵(Fundamental Matrix)
基础矩阵描述了两个摄像机视图中点的对应关系,是立体视觉和运动估计中的关键概念。
-
建立方程组:对于每一对对应点,可以建立一个线性方程。如果有N对点(N至少为8),则可以构建一个N×9的矩阵A。
-
应用SVD:对矩阵A进行SVD分解。
-
求解基础矩阵:基础矩阵F可以从SVD的结果中提取。与单应性矩阵类似,F是与最小奇异值对应的右奇异向量(V矩阵的最后一列),并将其重塑为3×3矩阵。
-
强制秩为2:由于基础矩阵的秩必须是2,因此需要对F进行调整。这可以通过再次对F进行SVD分解,然后将最小的奇异值设置为0来实现,最后重构F。
在实际应用中,通常还会涉及到额外的步骤,如使用RANSAC算法来处理异常值,以及对点坐标进行归一化以提高数值稳定性。这些步骤有助于提高求解过程的鲁棒性和准确性。
本文标签: 矩阵奇异分解SVDfundamental
版权声明:本文标题:SVD奇异值分解,求解Homography,Fundamental矩阵 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1728642731a1167324.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论