首页 文章

动作结构:实现三角测量

提问于
浏览
2

Use-case:


给定已知(模拟)的3D场景,并且:

对应的2D点V,V'的2个矢量,其中V'表示3D点的投影,包括相对变换(使用5点算法提取) .

  • 相机内在矩阵'K'

  • 相对相机旋转矩阵'R'

  • 相对摄像机翻译't'(最高比例)

计算三角形3D点位置(达到一定比例)实施:

  • 对于每个摄像机,使用提取从摄像机和3D点投射出的光线
    [RayV] = [Vx,Vy,0] * K.inv()
    [RayV'] = [V'x,V'y,0] * K.inv()

  • 将相对旋转添加到[RayV'](影响光线方向)
    [RayV'] = [RayV'] * [R]

  • 形成两条光线的3D线方程
    L = [0,0,0] [RayV](第一条光线与原点0,0,0相交)
    L'= [t] [RayV'](添加相对摄像机翻译)

  • 根据以下内容在空间中找到最小化两条光线之间距离的点:https://www.youtube.com/watch?v=HC5YikQxwZA

The Problem:


衍生的相机光线在Z坐标中偏离很多,而X,Y偏差最小,所得到的三角形点与其生成的场景不对应 .

What am I doing wrong here? Is the above Math correct? Is the Ray computation and Ray formula derivation correct?

1 回答

  • 1

    要从2D点创建齐次坐标,必须将光线计算中的0替换为1 .

相关问题