Bundle Adjustment 原理推导

参考 摄影测量学 武汉大学出版社 金为铣 2001年4月 P23J1718
光束法平差模型:
在解析摄影测量中,将外方位元素(局外点)和模型点坐标(局内点)的计算放在一个整体内进行,此时称其为光束法。光束法平差是以共线方程式作为数学模型,像点的像平面坐标观测值是未知数的非线性函数,经过线性化后按照最小二乘法原理进行计算。该计算也是在提供一个近似解的基础上,逐次迭代来达到趋近于最佳值的。

  1. 共线方程式的表达:
    设S为摄影中心,在世界坐标系下的坐标为这里写图片描述;M为空间一点,在世界坐标系下的坐标为(X,Y,Z),m是M在影像上的构象,其像平面和像空间辅助坐标分别为(x,y,-f),这里写图片描述,此时可知S、m、M三点共线。可得
    这里写图片描述
    再根据像平面坐标和像空间辅助坐标的关系有
    这里写图片描述
    由上面两式可解得共线方程式为
    这里写图片描述
    其中x0、y0、f是影像内方位元素;表示像平面中心坐标和摄像机主距。

  2. 共线方程式的线性化:
    该方程式一次项展开式为
    这里写图片描述
    式中这里写图片描述为共线方程函数近似值,这里写图片描述为外方位元素改正数,这里写图片描述为待定点的坐标改正数。
    在保证共线条件下有:
    这里写图片描述
    此时,根据上面的共线方程式以及旋转矩阵可得到
    这里写图片描述

  3. 误差方程式的建立:
    据此可得到误差方程式为
    这里写图片描述
    其中有:
    这里写图片描述
    将误差方程式改写成矩阵形式可为
    这里写图片描述
    也可简写成:
    这里写图片描述
    在该式中有:
    这里写图片描述

  4. 法方程式的建立:
    根据平差原理可知其法方程式为
    这里写图片描述
    只需列出误差方程式,权赋1;
    对于控制点,列出误差方程式,还要列出虚拟误差方程式,权赋P。
    虚拟误差方程式为
    这里写图片描述
    列出各类点的误差方程式后,按照最小二乘法原理建立法方程式,即按这里写图片描述为最小建立的法方程式为
    这里写图片描述
    也可简写成:
    这里写图片描述
    在根据上式进行展开消元可得改化法方程式为:
    这里写图片描述
    或者
    这里写图片描述
    根据上面的公式可以求解出外方位元素的改正值;下面的公式可以求解出点的坐标改正值。

  5. 结果判定:
    将改正数和规定的限差相比较,若小于限差则迭代完成,否则用未知数的新值又作为近似值继续迭代,直至满足条件。
    由此可知,开始时提供的初始值越接近最佳值,解的收敛速度就愈快;所以通常的处理方法是先进行空间后方交会,求出像片的外方位元素,将其作为光束法平差时未知数的初始值。

ORB_SLAM3是一种基于视觉SLAM的算法,其中的BA指的是Bundle Adjustment(捆绑调整),它是一种用于优化相机位姿和三维点的算法,以减小重投影误差。下面是ORB_SLAM3中BA推导过程: 1. 定义一组相机位姿和三维点的集合,其中相机位姿表示为旋转矩阵R和平移向量t,三维点表示为坐标向量X。 2. 定义重投影误差,即每个相机观察到的每个特征点在图像上的重投影点与其对应的真实位置之间的距离。假设有N个相机,M个特征点,则总共有N*M个重投影误差。 3. 将重投影误差表示为代价函数,即将重投影误差的平方和作为代价函数。代价函数的目标是最小化重投影误差,即: J = ∑i=1N ∑j=1M ||p_ij - f(R_i,X_j,t_i)||^2 其中,p_ij表示第i个相机观察到的第j个特征点在图像上的重投影点,f表示相机内矩阵,R_i和t_i表示第i个相机的旋转矩阵和平移向量,X_j表示第j个三维点的坐标向量。 4. 通过最小化代价函数来优化相机位姿和三维点的数。这可以通过非线性优化算法来实现,如高斯牛顿法或Levenberg-Marquardt算法。这些算法将代价函数的梯度和海森矩阵作为输入,并计算数的更新量,以最小化代价函数。 5. 重复执行步骤4,直到代价函数收敛,即重投影误差最小化。 6. 根据优化后的相机位姿和三维点,计算每个特征点在所有相机上的重投影点,并对它们进行平均,以得到最终的三维点位置。 总之,ORB_SLAM3中的BA是一种用于优化相机位姿和三维点的算法,它通过最小化重投影误差来实现。该算法的优化过程可以通过非线性优化算法来实现,以最小化代价函数。最终,算法将得到优化后的相机位姿和三维点,从而提高SLAM系统的精度和鲁棒性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值