PIXHAWK 飞控中的EKF姿态估计的欧拉角求解



题主没有说明是原生固件还是APM版的固件,原生固件已经取消EKF姿态解算了,官方解释的原因是占RAM太大。估且就认为你问的是原生固件EKF姿态解算算法的步骤吧,简单的介绍下,看不明白,以及相关理论不清楚的查阅介绍惯性导航的书籍即可,应该没多少人需要真正研究算法的吧~

首先是建模,设状态变量,

其中w为体系角速度,wa为体系角加速度,ze为重力向量,mu为磁场向量。如果使用惯性矩阵修正当前角加速度,那么:

则机体系角速度为:

再根据机体坐标系相对地理坐标系的旋转角速度变换矩阵:

如果采用指数函数的一阶泰勒近似有:

则状态转移A矩阵为:

过程噪声矩阵为:

分别表示陀螺角速度过程噪声,角加速度过程噪声,加速度过程噪声,磁力计过程噪声。

协方差阵为:

测量噪声矩阵:

观测矩阵H为:

测量方程为:

引入测量噪声:

EKF的卡尔曼增益矩阵:

状态估计:

更新协方差矩阵:

提取状态信息:

最后得到参考系和机体系的变换矩阵:

转换成欧拉角:

EKF方法计算量大,在计算状态转换阵和基础矩阵时采用了一阶近似,这种近似误差较大,如果计算量允许,可以用2-3阶。

原生固件有关EKF解算的,嵌入式代码是matlab自动生成的,千万不要直接看C代码。。。。

时间: 2025-01-13 03:33:36

PIXHAWK 飞控中的EKF姿态估计的欧拉角求解的相关文章

人体姿态估计在网约车风控系统中的应用

网约车公司在运营过程中经常会遇到一个问题,就是如果司机不接单,却把车开出去接乘客,相当于开黑车.那么系统如何发现这种行为,其中就需要人体姿态估计. 相对于传统方法,只识别人体来数人数有一个问题,就是如果乘客之间发生遮挡,或者后排乘客没有露出面部,就会找不到乘客. 使用人体姿态估计的方法就可以在上述情况下也能清楚判断车内人数,并且为车内行为识别提供很好的数据预处理. 该方法对于接入公司平台的出租车公司有很大益处,通过该功能,出租车运营部门可以清楚地知道什么时候该车上有几个人和 正在做什么. 原文地

POSIT算法的原理--opencv 3D姿态估计

3D姿态估计-POSIT算法 POSIT算法,Pose from Orthography and Scaling with Iterations, 比例正交投影迭代变换算法: 用于估计物体的3D姿态(相对于镜头的平移和旋转量).算法正常工作的前提是物体在Z轴方向的"厚度"远小于其在Z轴方向的平均深度,比如距离镜头10米远的一张椅子. 算法流程: 假设待求的姿态,包括旋转矩阵R和平移向量T,分别为 透视投影变换为: 上式中的f是摄像机的焦距,它的具体值并不重要,重要的是f与x和y之间的比

在自遮挡下的单目图像3D姿态估计 Monocular Image 3D Human Pose Estimation under Self-Occlusion (ICCV 13)

Monocular Image 3D Human Pose Estimationunder Self-Occlusion (ICCV 13) 在自遮挡下的单目图像3D姿态估计 摘要:文中提出在单张图片中3D姿态自动重建的方法.人体关节.易产生幻觉的身体部位的存在,杂乱的背景,都将导致人体姿态判断的歧义性,这都说明这不是一个简单的问题.研究者研究了许多基于运动和阴影的方法,为了减小歧义性,并对3D姿态进行重建.我们算法的关键思想就是增加运动和方向限制.前一个是在3D模型映射到输入图像时增加的限制,

Facebook提出DensePose数据集和网络架构:可实现实时的人体姿态估计

https://baijiahao.baidu.com/s?id=1591987712899539583 选自arXiv 作者:Rza Alp Güler, Natalia Neverova, Iasonas Kokkinos 机器之心编译 参与:Panda 实现从 2D 图像到 3D 表面的对应在很多方面都有极具价值的应用前景.近日,FAIR 发布了一篇研究论文,介绍了他们通过人工方式标注的图像到表面密集对应数据集 DensePose-COCO 以及基于此训练的 DensePose-RCNN

3D目标检测&6D姿态估计之SSD-6D算法--by leona

最近的研究主要以6D检测为主,本篇介绍基于2D检测器SSD的3D检测器SSD-6D. 1)论文链接:https://arxiv.org/pdf/1711.10006.pdf   训练部分代码链接:https://github.com/wadimkehl/ssd-6d 2)介绍: 许多3D检测器都是基于视角的(view based),生成一系列离散的目标视角用于后续视频序列的特征计算.在测试过程中,从不同的离散视角对场景进行采样,然后计算特征,并与目标数据库匹配来建立训练视角和场景位置的对应.此处

姿态估计

http://www.dept.aoe.vt.edu/~cdhall/courses/aoe4140/attde.pdf Triad algorithm 有两对观测矢量s^,m^" role="presentation" style="position: relative;">s^,m^s^,m^(分别有在惯性系和body系中的值) 为了确定Rib" role="presentation" style="pos

相机姿态估计(Pose Estimation)

根据相机成像原理我们知道相机成像平面的投影点像素坐标 $p=KP$.其中K是相机内参数矩阵,P是空间点的3D坐标,p和P都是齐次坐标,该等式在齐次意义下成立(即乘任意常数都成立). 于是对于两个相机各自的坐标系,有:$$p_0=KP,p_1=K(RP+t)$$ 其中R为旋转矩阵(Rotation),t为平移向量(Translation).令$x = K^{-1}p$,去掉内参K归一化成: $$x_0=P, x_1=RP+t$$ 由这两式得:$$x_1 = Rx_0+t$$

paper 154:姿态估计(Hand Pose Estimation)相关总结

Awesome Works  !!!! Table of Contents Conference Papers 2017 ICCV 2017 CVPR 2017 Others 2016 ECCV 2016 CVPR 2016 Others 2015 ICCV 2015 CVPR 2015 Others 2014 CVPR 2014 Others & Before Journal Papers Theses Datasets Challenges Other Related Papers Eval

【计算机视觉】头部姿态估计

参考 https://blog.csdn.net/u011045727/article/details/71747603?locationNum=1&fps=1 https://github.com/lincolnhard/head-pose-estimation https://www.learnopencv.com/head-pose-estimation-using-opencv-and-dlib/ https://blog.csdn.net/taily_duan/article/deta