タグ付けされた質問 「kalman-filters」

カルマンフィルターは、時間の経過とともに観測されるノイズの多い測定値を使用して、測定値とそれに関連する計算値の真の値に近い傾向がある値を生成する数学的な方法です。

4
カルマンゲインを直感的に理解する方法は?
カルマンフィルタアルゴリズムは次のように動作します および初期化します。x^0|0x^0|0 \hat{\textbf{x}}_{0|0}P0|0P0|0\textbf{P}_{0|0} 各反復でk=1,…,nk=1,…,nk=1,\dots,n 予測する 予測(事前)状態推定 予測(事前に)共分散を推定アップデートx^k|k−1=Fkx^k−1|k−1+Bkukx^k|k−1=Fkx^k−1|k−1+Bkuk \hat{\textbf{x}}_{k|k-1} = \textbf{F}_{k}\hat{\textbf{x}}_{k-1|k-1} + \textbf{B}_{k} \textbf{u}_{k} Pk|k−1=FkPk−1|k−1FTk+QkPk|k−1=FkPk−1|k−1FkT+Qk \textbf{P}_{k|k-1} = \textbf{F}_{k} \textbf{P}_{k-1|k-1} \textbf{F}_{k}^{\text{T}} + \textbf{Q}_{k} イノベーションまたは測定残差 イノベーション(または残差)共分散 最適 カルマンゲイン (事後)状態推定値を更新 更新(事後)共分散の推定 y~k=zk−Hkx^k|k−1y~k=zk−Hkx^k|k−1 \tilde{\textbf{y}}_k = \textbf{z}_k - \textbf{H}_k\hat{\textbf{x}}_{k|k-1}Sk=HkPk|k−1HTk+RkSk=HkPk|k−1HkT+Rk\textbf{S}_k = \textbf{H}_k \textbf{P}_{k|k-1} \textbf{H}_k^\text{T} + \textbf{R}_k X K | K = X K | K - 1 …

1
位置と速度のカルマンフィルター:速度推定の導入
昨日私のクエリにコメント/回答を投稿してくれたすべての人に感謝します(位置、速度、加速度のカルマンフィルターの実装)。私は、(a)の両方で推奨されていたものを見て、特にしてきた1次元位置と速度にWikipediaの例をしても同じようなことを考えて、別のウェブサイト。 アップデート2013年4月26日:ここでの元の質問には、1次元の位置と速度に関するウィキペディアの例を正しく理解していなかったという事実に関連するいくつかのエラーが含まれていました。何が起こっているのかについての理解が深まったので、質問を書き直し、より厳密に焦点を合わせました。 上記の導入部の段落で参照する例は両方とも、測定されるのは位置のみであると想定しています。ただし、どちらの例にも速度の計算がありません。たとえば、Wikipediaの例では、行列をとして指定します。これは、位置のみが入力されることを意味します。ウィキペディアの例に焦点を当て、状態ベクトルカルマンフィルタのは、位置含まと速度、すなわちH H = [ 1 0 ] X K X K ˙ X K(xk− xk − 1)/ dt(xk−xk−1)/dt(x_k-x_{k-1})/dtHH{\bf H}H =[10] H=[1 0]{\bf H} = [1\ \ \ 0]バツkxk{\bf x}_kバツkxkx_kバツ˙kx˙k\dot{x}_{k} バツk= (xkバツ˙k)xk=(xkx˙k) \begin{align*} \mathbf{x}_{k} & =\left(\begin{array}[c]{c}x_{k}\\ \dot{x}_{k}\end{array} \right) \end{align*} 時間での位置の測定値がます。次に、時間での位置と速度がおよびであり、が時間間隔からに適用される一定の加速度である場合、測定からはの値を推定することができます式を用いてX K K - 1 X K - 1 ˙ …

3
カルマンフィルターの入力は常に信号とその微分値である必要がありますか?
このような入力データで使用されるカルマンフィルターは常に表示されます。たとえば、入力は通常、位置と対応する速度です。 (x 、dバツdt)(x,dxdt) (x, \dfrac{dx}{dt}) 私の場合、サンプル時間ごとに2Dの位置と角度しかありません。 P私(x私、y私)そして(α1、α2、α3)Pi(xi,yi)and(α1,α2,α3) P_i(x_i, y_i) \qquad \text{and} \qquad (\alpha_1, \alpha_2, \alpha_3) カルマンフレームワークに適合できるように、各ポイントおよび各角度の速度を計算する必要がありますか?

1
実際のカルマンフィルター
カルマンフィルターの説明を読みましたが、実際にどのように組み合わされるかについては明確ではありません。線形状態遷移が必要であり、同じ理由で異常検出や状態遷移の特定に役立たないため(線形状態遷移が必要)、主に機械システムまたは電気システムをターゲットにしているようです。実際には、カルマンフィルターを使用するために事前に既知であると予想されるコンポーネントをどのように見つけるのが一般的ですか。コンポーネントをリストしましたが、事前に知っておくべきことの理解が間違っている場合は修正してください。 これらを「事前に」知る必要はないと思います。 プロセスノイズww\mathbf w 観測ノイズvv\mathbf v 実際の状態(これは、カルマンフィルターが推定しようとするものです)xx\mathbf x カルマンフィルターを使用するには、これらを「事前に」知る必要があると思います。 に適用する線形状態遷移モデル(これを事前に知る必要があるため、状態は既知の法則に準拠する必要があります。つまり、カルマンフィルターは、ある状態から別の状態への遷移がよく理解され、わずかなノイズまで決定論的-異常を発見したり、ランダムな状態変化を見つけるツールではありません)xx\mathbf x 制御ベクトルuu\mathbf u 制御ベクトル適用される入力モデルを制御します(これを事前に知る必要があるため、カルマンフィルターを使用するには、制御値がモデルにどのように影響するかを最大である程度のガウスノイズまで事前に知る必要があります。効果は線形である必要があります)uu\mathbf u プロセスノイズの共分散(ウィキペディアの記事では時間に依存しているように見えます。つまり、時間kに依存します)-事前に、また時間をかけてこれを知る必要があるように見えますが、実際には一定であると見なされます?QQ\mathbf Qkkk (線形)観測モデルHH\mathbf H 共分散(ウィキペディアの記事でも時間に依存しているようです)-Qと同様の問題RR\mathbf RQQ\mathbf Q PSそして、はい、これらの多くは時間に依存していることを知っています。すべての添え字が散らかっただけです。必要に応じて、各変数名の右下の小文字を自由に想像してください。kkk

4
カルマンフィルターによる追跡の直感的な説明
カルマンフィルターを使用した(視覚的な)追跡の直感的な説明をいただければ幸いです。私が知っていること: 予測ステップ: 動的システム状態:時刻ターゲットの場所xt\mathbf x_ttt 測定:時間インデックス画像(??)zt\mathbf z_ttt 画像/測定に基づいて状態を予測したいですか?(動的方程式を使用)それは正しいですか?1→(t−1)1\rightarrow(t-1)xt\mathbf x_t 修正手順をこれらの用語(画像、ターゲットの場所)に解釈するにはどうすればよいですか?

2
キャプチャデバイスのオイラー角が与えられた場合、カルマンフィルターは投影点の位置をフィルター処理するのに適していますか?
私のシステムは次のとおりです。モバイルデバイスのカメラを使用してオブジェクトを追跡します。この追跡から、画面に投影する4つの3Dポイントを取得し、4つの2Dポイントを取得します。これらの8つの値は、検出のためにややノイズが多いので、動きをより滑らかでより現実的にするためにそれらをフィルタリングしたいと思います。2番目の測定として、3つのオイラー角(つまり、デバイスの姿勢)を提供するデバイスのジャイロスコープ出力を使用します。これらは、2D位置(約20 Hz)よりも正確で、高い周波数(最大100 Hz)で動作します。 私の最初の試みは単純なローパスフィルターを使用することでしたが、遅れが重要だったので、カルマンフィルターを使用して、少しの遅延で位置を滑らかにできるようになりました。前の質問で見たように、カルマンフィルターの重要なポイントの1つは、測定値と内部状態変数の関係です。ここでの測定値は、8つの2Dポイント座標と3つのオイラー角の両方ですが、内部状態変数として何を使用すべきか、オイラー角を2Dポイントにどのように接続するかについてはわかりません。したがって、主要な質問は、カルマンフィルターがこの問題に適しているのでしょうか。はいの場合、どのように?

1
定常カルマンフィルター予測子の導出方法
カルマンフィルターに関する章で、私のDSPの本は、一見すると一見、一見、システムの定常カルマンフィルターであると述べています。 { x (t + 1 )y(t )= A x (t )+ w (t )= Cx (t )+ v (t ){x(t+1)=Ax(t)+w(t)y(t)=Cx(t)+v(t)\begin{cases} x(t+1) &= Ax(t) + w(t) \\ y(t) &= Cx(t) + v(t) \end{cases} 予測子があります バツ^(t + 1 | t )= (A − A K¯C)x^(t | t − 1 )+ A …

1
カルマンフィルター-「派生」測定を処理する最適な方法
すなわち、状態変数として位置(p)と速度(v)があり、pの低周波測定を行うと、これは間接的にvに関する情報も提供します(pの微分なので)。そのような関係を処理する最良の方法は何ですか? A)更新手順では、pを測定したとだけ言って、vを修正するためにフィルタリングプロセスと累積状態共分散行列(P)に依存する必要がありますか? B)pの測定の更新ステップの後または前に、測定されたpと(比較的大きい)デルタ時間を使用してvの高分散予測を行う「余分な」予測ステップを作成する必要がありますか? C)更新/測定のステップで、pと vの両方を測定し、それらの相互依存性に関する情報を測定共分散行列(R)に何らかの方法でエンコードしたと言う必要がありますか? もう少し背景を説明するために、問題に遭遇した特定の状況を以下に示します。 私は物体の位置(p)を推定したいシステムで作業しており、加速度(a)を頻繁に測定し、pの頻度の低いノイズ測定を行っています。 私は現在、拡張カルマンフィルターでこれを行うコードベースで作業しています。このコードベースでは、状態変数pおよびvとして保持されます。加速度測定のたびに「予測」ステップを実行し、測定されたaとデルタ時間を使用して、新しいpとvを統合および予測します。次に、(まれな)p測定ごとに「更新」/「測定」ステップを実行します。 問題はこれです-私は時々aの高エラー測定値を取得し、それは非常に誤ったvをもたらします。明らかに、aのさらなる測定はこれを決して修正しませんが、pの測定はこれを取り除くべきです。そして、実際、これは起こるように見えます...しかし、非常にゆっくりです。 このシステムでpがvに影響する唯一の方法は、共分散行列P(つまり、上からの方法A)を介することだけであるため、これは部分的にはあると考えていました。pとvの間のこの関係に関する知識をモデルに組み込んで、pの測定がvをより速く修正するためのより良い方法があるかどうか疑問に思っていました。 ありがとう!

3
EKFを使用する場合とカルマンフィルターを使用する場合
カルマンフィルターを1週間学習しています。EKF(拡張カルマンフィルター)が私の場合により適している可能性があることを発見しました。 バリオメーター(飛行機とパラシュートに垂直位置と速度を伝えるデバイス)にKF / EKFを適用しているとは考えられません。私の場合、いくつかのサンプルデータを生成しました。最初の数秒で、彼(たとえば、パラシュート)は下降(速度は正)し、その後上昇(速度は負)です。 私が知る限り、このシステムは線形です。KFまたはEKFを使用する必要がありますか?

7
カルマンフィルターを学ぶための良い本または参考書
この投稿を改善してみませんか?この質問に対する詳細な回答を提供します。これには、引用と、回答が正しい理由の説明が含まれます。詳細が不十分な回答は編集または削除される場合があります。 カルマンフィルターはまったく新しいものです。条件付き確率と線形代数に関するいくつかの基本的なコースを受講しました。誰かがカルマンフィルターの操作を理解するのに役立つ、良い本やWeb上のリソースを提案できますか? ほとんどのウェブサイトは公式とその意味から直接始まりますが、私はその導出、または詳細な導出ではないとしても、少なくとも各操作とパラメーターの物理的な重要性に関心があります。

2
与えられた位置測定、速度と加速度を推定する方法
これは単純だと思いましたが、私の素朴なアプローチは非常にうるさい結果をもたらしました。私はこのサンプルの時間と位置をt_angle.txtという名前のファイルに入れています。 0.768 -166.099892 0.837 -165.994148 0.898 -165.670052 0.958 -165.138245 1.025 -164.381218 1.084 -163.405838 1.144 -162.232704 1.213 -160.824051 1.268 -159.224854 1.337 -157.383270 1.398 -155.357666 1.458 -153.082809 1.524 -150.589943 1.584 -147.923012 1.644 -144.996872 1.713 -141.904221 1.768 -138.544807 1.837 -135.025749 1.896 -131.233063 1.957 -127.222366 2.024 -123.062325 2.084 -118.618355 2.144 -114.031906 2.212 -109.155006 2.271 …

1
カルマンフィルター-ノイズ共分散行列の理解
カルマンフィルターフレームワークにおけるノイズ共分散行列の重要性は何ですか? 私が言及しているのは: プロセスノイズ共分散行列Q、および 測定ノイズ共分散行列R いつでもステップt。 これらの行列をどのように解釈しますか?彼らは何を表していますか?彼らは、ある観測のノイズが状態ベクトルの別の観測のノイズに対してどのように変化するかについて話しますか?

5
カルマンフィルター-実装、パラメーター、チューニング
まず、カルマンフィルターを作成するのはこれが初めてです。 私は以前、次の質問を投稿しました。この投稿の背景を説明しているStackOverflowで、ノイズと速度値からの変動を除外します。これは私がフィルタリングしようとしている値の典型的なサンプルです。ここでは、必ずしも減少する必要はありません。しかし、変化率は通常、このようなものです X ------- Y 16 --- 233.75 24 --- 234.01 26 --- 234.33 32 --- 234.12 36 --- 233.85 39 --- 233.42 47 --- 233.69 52 --- 233.68 55 --- 233.76 60 --- 232.97 66 --- 233.31 72 --- 233.99 このチュートリアルに従って、カルマンフィルターを実装しました:カルマンフィルター(ダミー用)。 私の実装は次のようになります(疑似コード)。 //Standard deviation is 0.05. Used in calculation …

1
位置、速度、加速度のカルマンフィルターの実装
私は過去にカルマンフィルターをさまざまな目的で使用しましたが、スマートフォンアプリの位置追跡のコンテキストで位置、速度、加速度を追跡するために使用することに興味があります。これは単純な線形カルマンフィルターのテキストブックの例であるべきだと思いますが、これについて説明しているオンラインリンクを見つけることができません。私はこれを行うさまざまな方法を考えることができますが、ゼロから調査するのではなく、おそらくここの誰かが私を正しい方向に向けることができます。誰かがこのシステムをセットアップする最良の方法を知っていますか?たとえば、最近の位置観測の履歴を考えると、カルマンフィルター状態空間の次の点を予測する最良の方法は何ですか?状態空間に加速を含めることの利点と欠点は何ですか?すべての測定が位置である場合、速度と加速度が状態空間にあると、システムが不安定になる可能性がありますか?など...または、カルマンフィルターのこのアプリケーションの優れたリファレンスを知っている人はいますか?ありがとう

2
ガウスノイズ下でのカルマン推定の統計的特性
独立したガウス状態と出力ノイズ、および初期状態の完全な推定を含む線形状態空間モデルの場合、カルマン推定には次のプロパティがありますか? どこPのK | K = V R (X K | K - X kは)、 または V R (X K | K)、 または V R (X K)?E(x^k|k−xk)=0E(x^k|k−xk)=0 E(\hat{x}_{k|k} - x_k) = 0 Pk|k=Var(x^k|k−xk), or Var(x^k|k), or Var(xk)?Pk|k=Var(x^k|k−xk), or Var(x^k|k), or Var(xk)? P_{k|k} = Var(\hat{x}_{k|k} - x_k),\text{ or }Var(\hat{x}_{k|k}),\text{ or }Var(x_k) ? …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.