@卡尔曼滤波 跑通调参

可以先像一开始接触PID那样,先把整个系统跑通,感受一下它是咋用的。后面再回过头来研究原理。

 

学习OpenCV2——卡尔曼滤波(KalmanFilter)详解

 

四旋翼姿态解算--互补滤波和拓展卡尔曼

上述的EKF本质上就是对加速度计、陀螺仪、磁力计的数据进行滤波。经过滤波的加速度和磁力计数据可以得到旋转矩阵,也就估计出了无人机的姿态。

Q和R选取不同参数,会有不同效果。

理解Kalman滤波的使用   里面这个误差矩阵H没搞懂是代表啥 

关于卡尔曼滤波本质解释和公式推到         文章说法是,定义误差 e_t = x_t - x&_t ,P_t为此误差的协方差矩阵,目的是使这个误差协方差矩阵最小化,把(3)代过去,于是折腾来折腾去,再求个导数为0,解得K

这篇文章的语言是很有意思啊哈哈哈,好好看看能解答不少概念不清楚的地方。

首先,我们先要引入一个离散控制过程的系统。该系统可用一个线性随机微分方程(Linear Stochastic Difference equation)来描述:

X(k)=A X(k-1)+B U(k)+W(k)

再加上系统的测量值:

Z(k)=H X(k)+V(k)

上两式子中,X(k)是k时刻的系统状态,U(k)是k时刻对系统的控制量。A和B是系统参数,对于多模型系统,他们为矩阵。Z(k)是k时刻的测量值,H是测量系统的参数,对于多测量系统,H为矩阵。W(k)和V(k)分别表示过程和测量的噪声。他们被假设成高斯白噪声(White Gaussian Noise),他们的covariance 分别是Q,R(这里我们假设他们不随系统状态变化而变化)。

 

卡尔曼告诉我们一个灰常牛B的事情,一个相对准 确的系统值具有如下结构:

x&_t = x&-_t + K( z_t - H*x_(t-1) );  (3)

提 一下,这里" & "表示估计值," - "表示是用前面式子算出来的估计值,不带" - "表示是最后的估计值。

哦,对了,另外注意一点,从此以后,我们就都在估计上做文章了,你只要记得,咱永远看不到真实值就行了,于是我们的式子里不是带"&"就是带"-"。

结合  Kalman滤波器初步自行理解  中说的   典型的公式中,前两个是时间更新方程,后三个是状态更新方程(公式中( − 代表先验,ˆ代表估计) 大概知道  " - "表示是用前面式子算出来的估计值,也就是先验?

定义误差 e_t = x_t - x&_t ,P_t为此误差的协方差矩阵,目的是使这个误差协方差矩阵最小化。

而Q表示的是状态方程模型和实际模型之间的误差,包括模型失配和外界扰动等误差。

【工程师学算法】工程常用算法(二)—— 卡尔曼滤波(Kalman Filter)              这一篇也非常知得一看,很多概念都解释清楚了

Q代表本次估计产生的不确定性(比如无法预测的外部扰动以及模型自身的不确定性

结尾提到的DR_CAN的B站视频,再看一遍感觉收获颇多 

 

你可能感兴趣的:(定位导航,OpenCV,数学与控制)