【问题标题】:Transform plane to another coordinate system将平面变换到另一个坐标系
【发布时间】:2017-11-03 12:41:27
【问题描述】:

我有一个由旋转矩阵R 和平移T 相对于世界坐标系定义的相机坐标系。平面由法线N 和点P 在相机坐标中定义。我想在世界坐标系中找到平面的方程。目前我正在做的是:

Transform P to world system by (P + T)
Transform N to world system by R.N

然后我使用转换后的PN 找到计划方程。我有两个问题:

1)如果我们取相机中心到相机坐标系平面的垂直距离,那应该等于相机位置到世界坐标系平面的垂直距离,对吧?

2) 假设上述情况属实,我当前的转换给出了不正确的结果,例如平面 N=[1,2,1]P=[1,4,0](在相机中)和 R = (90, 0, 90) 在 XYZ 欧拉和 T =[3, 3, 9]

我做错了吗?谢谢

【问题讨论】:

    标签: rotation geometry coordinate-transformation plane


    【解决方案1】:

    一个关于行向量的纯旋转矩阵(对于列向量只需转置它)看起来像这样

     cosθ  sinθ  0
    -sinθ  cosθ  0
      0      0   1
    

    绕x轴的旋转用下面的纯旋转矩阵表示

    1    0     0
    0  cosα  sinα
    0 -sinα  cosα
    

    除非您使用可以正确评估带度数的三角函数的东西,否则角度应该以弧度为单位。

    要改变向量的基础,你连接旋转 R = RxRz (顺序很重要),然后将你的向量乘以结果V' = VR

    要翻译您的观点,您只需应用相同的旋转然后翻译P' = PR + T

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-12
      • 1970-01-01
      • 2021-03-30
      • 1970-01-01
      相关资源
      最近更新 更多