问题标签 [pykalman]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何在单个观察值上运行 pykalman Kalman 滤波器?(Python)
我可以运行pykalman 文档中给出的简单 pykalman Kalman Filter 示例:
这会正确返回状态估计(每个观察一个):
但是,如果我只提供一个观察结果,则代码将失败:
出现以下错误:
如何使用 pykalman 仅使用一次观察来更新初始状态和初始协方差?
python - 使用卡尔曼滤波器进行平滑
我正在测试卡尔曼库,但不确定如何调整平滑滤波器:跟踪正弦运动我得到状态测量,包括由于噪声测量而导致的错误。请查看跟踪图像。Track In Blue,原始曲目。在格林,赛道包括。红色的位置计算错误(使用最小二乘拟合找到最小错误),我正在测试 pykalman 过滤以平滑轨道。
当前状态
运行 kf.filter 我在没有平滑的情况下得到了非常接近的跟踪。为什么过滤器越来越接近状态?如何更改窗口时间?
F (9,9) 矩阵包括 3 个轴的位置、速度和加速度
H 是 np.eye,Q 是 np.eye(9)*4,状态 x,y,z 的方差
kalman-filter - 具有 100 个包含噪声的数据样本的卡尔曼滤波器
如果我对 100 个 x 和 y 样本进行一系列观察。这足以预测与 ax 值对应的第 101 个 y 吗?我可以使用 100 个样本的部分数据来更新一些值(考虑到存在噪声并且某些数据可能已损坏)吗?
python - 如何使用 PyKalman 获得标准差?
拥有一维测量数据,我想知道使用卡尔曼滤波器在每个点的状态标准偏差。我的程序如下:
这导致了以下奇怪的结果:
我预计最后一个数据点的方差会增加。我究竟做错了什么?
android - 用于 FALL 检测的卡尔曼滤波器传感器融合:加速度计 + 陀螺仪
我试图了解传感器融合的过程以及卡尔曼滤波。
我的目标是使用加速度计和陀螺仪检测设备的跌落。
在这篇文章等大多数论文中,它都提到了如何克服陀螺仪引起的漂移和加速度计引起的噪声。最终,传感器融合为我们提供了更好的 Roll、Pitch 和 Yaw 测量结果,而不是更好的加速度。
是否有可能通过传感器融合获得更好的“加速结果”,然后将其用于“跌倒检测”?由于只有更好的 Roll、Yaw 和 Pitch 不足以检测到 Fall。
然而,该来源建议使用卡尔曼滤波器单独平滑加速度计(Ax,Ay,Az)和陀螺仪(Gx,Gy,Gz),并使用一些分类算法(如 k-NN 算法或聚类)使用监督学习来检测跌倒。
分类部分不是我的问题,如果我应该融合传感器(3D 加速度计和 3D 陀螺仪)或单独平滑传感器,我的目标是检测跌倒。
python - OpenCV卡尔曼滤波器python
谁能给我一个示例代码或某种在 python 2.7 和 openCV 2.4.13 中实现卡尔曼滤波器的示例
我想在视频中实现它来跟踪一个人,但是我没有任何参考资料可以学习,也找不到任何 python 示例。
我知道卡尔曼滤波器作为 cv2.KalmanFilter 存在于 openCV 中,但我不知道如何使用它。任何指导将不胜感激
python - 视频中的卡尔曼滤波器
如何使用卡尔曼滤波器实时跟踪视频中人的动作?我是卡尔曼的新手,我正在试验它。我已经能够运行卡尔曼并预测视频中球的路径。
这是背景减法的代码:
这是恒速卡尔曼滤波器的代码:
我使用的视频链接:https ://www.hdm-stuttgart.de/~maucher/Python/ComputerVision/html/files/singleball.mov
现在,问题在于我将轨迹存储在一个文件中,然后我将该文件用作卡尔曼的输入。我如何扩展它以使其实时?以及如何跟踪可能有多人在场和移动的组中的一个人?
Python版本:2.7
OpenCV 版本:2.4.13
python - 如何在 Python 中使用卡尔曼滤波器获取位置数据?
[编辑]@Claudio 的回答给了我一个关于如何过滤异常值的非常好的提示。不过,我确实想开始对我的数据使用卡尔曼滤波器。因此,我更改了下面的示例数据,使其具有不那么极端的细微变化噪声(我也经常看到)。如果其他人能给我一些关于如何在我的数据上使用 PyKalman 的指导,那就太好了。[/编辑]
对于一个机器人项目,我正在尝试用相机跟踪空中的风筝。我正在用 Python 编程,并在下面粘贴了一些嘈杂的位置结果(每个项目还包含一个 datetime 对象,但为了清楚起见,我将它们省略了)。
我首先想到的是手动计算异常值,然后简单地从数据中实时删除它们。然后我阅读了卡尔曼滤波器以及它们如何专门用于平滑噪声数据。因此,经过一番搜索,我发现了PyKalman 库,它似乎非常适合。由于我有点迷失在整个卡尔曼滤波器术语中,我阅读了 wiki 和其他一些关于卡尔曼滤波器的页面。我得到了卡尔曼滤波器的一般概念,但我真的迷失了如何将它应用到我的代码中。
在PyKalman 文档中,我找到了以下示例:
我只是将观察结果替换为我自己的观察结果,如下所示:
但这并没有给我任何有意义的数据。例如,smoothed_state_means
变成如下:
比我更聪明的灵魂能给我一些正确方向的提示或例子吗?欢迎所有提示!
python - 用 pykalman 摆脱 GPS 数据跳跃
我有从智能手机应用程序获得的 GPS 数据。每当智能手机静止时,gps 点就会跳跃。我了解信号不准确,因为在建筑物之间的城市接收信号并且无论何时在内部信号丢失。
从这篇文章中,我想试一试卡尔曼滤波器。多亏了这篇文章,我能够在纬度和经度上尝试 Ramer-Douglas-Peucker 算法,并尝试使用pykalman 包来获取高程数据。我还尝试了pykalman 示例来使用过滤器。
根据这些读数,我假设输入参数错误:
下图来自 matplotlib。左上角是迭代 km.em(n_iter=2),右上角是迭代 10,左下角是迭代 50,右下角是迭代 100。每当我尝试更高时,我都会超时。在这种情况下,我的过滤器似乎没有多大作用。确实输出了相同的形状(由于比例轴,起初它可能看起来不同)。
我错过了什么吗?如何改进我的固定 gps 跳跃数据?
谢谢
kalman-filter - 如何过滤异常的温湿度传感器值
温湿度传感器不时出现80度等异常值。
如何过滤异常的温湿度传感器值?卡尔曼滤波是过滤掉异常值的解决方案吗?