Matrix 如何从奇异值分解中求旋转矩阵?

Matrix 如何从奇异值分解中求旋转矩阵?,matrix,computer-vision,linear-algebra,svd,Matrix,Computer Vision,Linear Algebra,Svd,我用奇异值分解法来求两组点之间的旋转矩阵,有些理论说R=Transpose(U)*V,但我不懂这个数学理论。比如U和V代表什么,以及当U和V相乘时如何得到旋转矩阵 由于您的问题是理论性的,并且没有涉及任何课程或特定问题,因此您最好将您的问题写下来 然而,为了给你一个大致的想法(你一定要用确凿的事实来强化): 奇异值分解(svd)背后的线性代数本质上描述了(在最简单的情况下)向量与矩阵相乘时的情况 在小范围内,如果将一个向量(v)乘以一个矩阵(R),则得到第二个向量(u)。除非矩阵‘R’是幺正的,

我用奇异值分解法来求两组点之间的旋转矩阵,有些理论说R=Transpose(U)*V,但我不懂这个数学理论。比如U和V代表什么,以及当U和V相乘时如何得到旋转矩阵

由于您的问题是理论性的,并且没有涉及任何课程或特定问题,因此您最好将您的问题写下来

然而,为了给你一个大致的想法(你一定要用确凿的事实来强化): 奇异值分解(svd)背后的线性代数本质上描述了(在最简单的情况下)向量与矩阵相乘时的情况

在小范围内,如果将一个向量(v)乘以一个矩阵(R),则得到第二个向量(u)。除非矩阵‘R’是幺正的,否则得到的新向量将与第一个向量具有不同的方向和大小。 换句话说,向量“v”上矩阵“R”的乘积将产生向量“v”的旋转拉伸(或压缩),这将转换为向量“u”

如果你让向量“u”是幺正的,然后用一个新的变量(σ)乘以它,保持它原来的大小,你基本上是这样做的:R·v=u·σ

在更大的尺度上,当v和u不再是向量而是大矩阵时,公式是:R·v=u·∑

使“u”变为酉是有用的原因是酉矩阵有一个很酷的性质:转置等于它们的逆

因此,可以将公式重新排列为:R=U·∑·V(转置)

因此,您可以使用此公式获得“旋转矩阵”,其中U和V(t)是保持向量方向的正交矩阵,并且∑ 保持所述向量方向的大小(或奇异值)


关于更详细的解释,我建议您听这堂课:

我投票结束这个问题,因为它属于信号处理或MathOverflow