【问题标题】:How to compute difference between rotation matrices?如何计算旋转矩阵之间的差异?
【发布时间】:2014-09-12 04:02:51
【问题描述】:

我有两个旋转矩阵。一个是我通过解决 PnP 问题得到的真实网络摄像头的旋转矩阵。我有一个世界坐标系,并且我知道世界空间中世界坐标中每个点的位置。

据我了解,旋转矩阵将世界坐标中的点转换为相机帧坐标(此处不考虑平移)。这意味着,R1 为您提供了世界坐标系相对于相机坐标系的方向。

我的第二个旋转矩阵是一个传感器,它也在世界坐标中。即,这个旋转矩阵为您提供了世界坐标系相对于传感器坐标系的方向。

我想找到真实网络摄像头坐标系相对于传感器坐标系的方向。

让我们命名第一个旋转矩阵 Rw1 和第二个旋转矩阵 Rw2,下标 w1 表示相对于真实网络摄像头的世界,w2 表示相对于传感器的世界(1 和 2 可以被认为分别表示真实网络摄像头和传感器) .

所以我的目标是找到R12。 (而不是 R21)

R12 = R1w * Rw2 = (Rw1)' * Rw2

我假设这个 R12 在整个过程中(在视频的后续帧中)保持不变,因为传感器和网络摄像头的位置不会相互干扰,并且它们总是一起移动。我的假设有效吗?

如果有效,那么我的最终目标是在后续帧中计算真实网络摄像头的旋转矩阵。我可以在后续帧中计算传感器的旋转矩阵,即 Rw2帧。我必须找出 Rw1,我不能使用任何 PnP 算法。我想根据当前可用的信息来计算它。

现在让我们考虑第二帧。

我知道 R12(我假设它是常数,我在第一帧计算它)和 Rw2(第二帧的传感器旋转矩阵)。我必须为第二帧找到 Rw1。

Rw1 = Rw2 * R21 = Rw2 * (R12)'

我的方法对吗?

PS: (R)' 表示 R 的转置。

【问题讨论】:

  • 如果您使用行向量乘以矩阵左侧,我认为您的公式是正确的。
  • 我不明白你在这种情况下所说的行向量是什么意思。 R 是一个 3*3 矩阵。在这种情况下,所有矩阵都是 3*3。
  • 考虑到一个旋转矩阵R和一个由1x3列向量M=[X, Y, Z]表示的3D点,你计算旋转点是M.R还是R.M'?在第一种情况下,您的公式是可以的,否则您需要转置所有内容。
  • 我将其计算为 R.M',这将产生大小为 3 的列向量
  • 实际上,转置所有内容并不足以纠正您的公式。详细解释见我的回答。

标签: computer-vision transformation rotational-matrices


【解决方案1】:

使用旋转矩阵时,您必须特别注意源坐标系和目标坐标系。

考虑两个坐标系R1和R2,可以表示将点MR1,用R1表示,变换为对应的点MR2,用表示的旋转矩阵R2,由 RR2 使得:

MR2 = RR2 * MR1

这个符号非常有用,并且有两个很好的属性:

(RR2)-1 = RR1

RR3* RR2 = RR3

现在,考虑到这一点,您应该很容易得到问题的答案。让我们针对您的特定问题使用以下符号:

R01 = R0cam : 旋转矩阵世界坐标到相机坐标第 0 帧

R02 = R0sensor :旋转矩阵世界坐标到传感器坐标第 0 帧

Rt1 = Rtcam : 旋转矩阵世界坐标到相机坐标帧 t

Rt2 = Rtsensor : 旋转矩阵世界坐标到传感器坐标帧 t

首先,您要找到将相机坐标系中的点转换为传感器坐标系中的点的旋转矩阵(即“真实网络摄像头坐标系相对于传感器坐标系的方向”)。

R012 = R0传感器 = R0sensor * R0world = R02 * (R01)-1

然后,您想在后续帧中找到网络摄像头的旋转矩阵,知道该帧的传感器旋转矩阵并假设 Rt12 = R012

Rt1 = Rtcam = Rtcam * Rtsensor = (Rtsensor)-1 * Rtsensor = (R0 12)-1 * Rt2

【讨论】:

  • 很好的答案。我发现this link 可能对 w.r.t 有帮助。原始/列向量的旋转
  • 这个答案是不是错了? R⁰12 仅适用于第 0 帧的特定旋转。它不适用于其他旋转,对吧?
  • 请记住 Rt_12 = Rt_sensor
  • 无论如何,答案的重点是在处理旋转/坐标变换时推荐超清晰的符号,您的问题进一步证明了这很重要。
  • @BConic 哦,好的,谢谢!关于符号的最后一个问题。如果我知道相机坐标系到世界的方向。那将是一个从相机旋转到世界的旋转矩阵:Rwc?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-30
相关资源
最近更新 更多