问题描述
我正在尝试使用 pykalman 对数据应用 KalmanFilter
。当我自己为 KalmanFilter 编写代码时,它运行良好,但我想使用 pykalman
库。
代码如下:
初始化代码:
self.Ve=1e-3
self.delta=1e-4
self.Vw=self.delta/(1-self.delta)*np.eye(2)
self.means=np.zeros((1,2))
self.cov=np.zeros((2,2))
self.kf = pykalman.KalmanFilter(
n_dim_obs=1,n_dim_state=2,transition_covariance=self.Vw,observation_matrices = np.matrix([0,1]),observation_covariance=self.Ve,initial_state_mean=self.means,initial_state_covariance=self.cov,)
更新这些值的代码:
self.means,self.cov=self.kf.filter_update(filtered_state_mean=self.means,filtered_state_covariance=self.cov,observation_matrix=self.x,observation=self.y[0])
我得到的结果如下: 矩阵形状的初始值:
observation - predicted_obs_mean.shape (1,1)
R.shape (2,2)
Kalman Gain.shape (2,1)
observation_matrix.shape (1,2)
filtered_state_mean.shape (2,1)
filtered_state_cov.shape (2,2)
predicted_observation_covariance.shape (1,1)
Predicted Observation Mean.shape (1,1)
状态更新后的值:
observation - predicted_obs_mean.shape (1,2)
R.shape (2,2)
filtered_state_cov.shape (2,2)
状态平均值正在改变其形状。我不明白为什么。任何帮助将不胜感激。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)