zoukankan      html  css  js  c++  java
  • 贝叶斯---最大似然估计(高翔slam---第六讲 )

     1.贝叶斯---最大似然估计

    回顾一下第二讲的经典SLAM模型:

            通过传感器(例如IMU)的运动参数u来估计运动(位姿x)[定位],通过相机的照片的观测参数z来估计物体的位置(地图y)[建图],都是有噪声的。因为运动参数和照片都有噪声,所以需要进行优化。而过去卡尔曼滤波只关心当前的状态估计,而非线性优化则对所有时刻采集的数据进行状态估计,被认为优于卡尔曼滤波。由于要估计所有的采集数据,所以待估计变量就变成:x={x1,…,xN,y1,….,yM}

            所以对机器人状态的估计,就是求已知输入数据u(传感器参数)和观测数据z(图像像素)的条件下,计算状态x的条件概率分布(也就是根据u和z的数据事件好坏来估计x的优劣事件概率情况,这其中包含着关联,就好像已知一箱子里面有u和z个劣质的商品,求取出x个全是好商品的概率,同样的样本点,但是从不同角度分析可以得出不同的事件,不同的事件概率之间可以通过某些已知数据得出另些事件的概率):P(x|z, u)。当没有测量运动的传感器,只考虑观测照片z的情况下求x(这个过程也称SfM运动恢复),那么就变成P(x|z)。

           贝叶斯公式求解(贝叶斯法则的分母部分与带估计的状态x无关,所以忽略P(z)):

    2.最大似然估计---最小二乘问题

    如何求最大似然估计呢?

    回顾观测方程,我们知道z与x之间存在一个函数式:,现在要求x导致z出现的概率最大,求x。

    假设噪声项符号高斯分布,观测Z也符合高斯分布。

    为了计算使它最大化的,往往使用最小化负对数的方式,来求一个高斯分布的最大似然。

    任意的高位高斯分布,概率密度函数展开式:

    对其取负对数:

     对原分布求最大化相当于对负对数求最小化,对上式x进行最小化时,第一项与x无关,略去,只需要最小化右侧的二次型,带入SLAM的观测模型,即求:

    我们发现,该是等价于最小化噪声项(即误差)的平方范数意义下)。

    因此对于所以对于所有的运动和观测,定义数据与估计值之间的误差:

    误差的平方和:    (6.12)

    从而得到了一个总体意义下的最小二乘问题,它的最优解等于状态的最大似然估计。

    直观上讲,由于噪声的存在,当我们把估计的轨迹和地图(xk,yj)代入SLAM的运动、观测方程中时,它们并不会完美的成立。这时候怎么办呢?我们把状态的估计值进行微调,使得整体的误差下降一些,它一般会到极小值。这就是一个典型的非线性优化过程。

  • 相关阅读:
    Oracle存储过程编译卡死的解决方法
    异常来自 HRESULT:0x800A01A8
    WIP
    R12: How to add Microsoft Excel as Type to the Create Template List of Values in BI Publisher (Doc ID 1343225.1)
    XML Publisher Template Type
    打印报表以显示具有给定责任的用户-FNDSCRUR责任用户
    Credit Memo和Debit Memo在AR以及AP中的概念比较
    EBS-BG&LE&OU
    普通pc电脑安装苹果系统mac_详细教程(精)附带所有工具下载
    教程 打造OS X Mavericks原版 EFI Clover 引导安装
  • 原文地址:https://www.cnblogs.com/Jessica-jie/p/8846493.html
Copyright © 2011-2022 走看看