元のサンプルレートを使わずに "一致"する方法はありません。これは、データが実際には時間と大きさの両方であるためです。時間切れにした場合、サンプルがいつ発生したかを知ることができないため、発生したサンプルと異なるサンプルがあるかどうかを知ることができません(別の時間に発生した可能性があります)。
データが比較的近い場合は、サンプル周波数の相対的な差異を推定して再サンプリングすることができますが、サンプリングの精度によってはうまくいかない場合があります。
サンプルレートがほぼ一定であると想定できますか? R以上 - あなたがする探しているもの
は、関数に
int型(G(T)||^2 || F(R * tを))を最小化です。
本質的には、fの時間軸をgに一致するまでスケーリングします。同じ割合が一定でない場合、rはtの関数である。これは、minが一意ではない可能性が高いので問題を難しくします(ただし、rの最小限の有界バリエーションがあるかもしれません)。
たとえば、さまざまなrについてその式を計算し、rのある範囲の最小値を見つけることができます。式がある範囲内にない場合、それを「一致」として拒否することができます。
カルマンフィルタを使用するなど、より高度な操作を行うことで、結果をさらに絞り込むことができます。
あなたのデータがどれほど正確で、結果がどれくらい正確であるかは、本当に誰かを殺す偽陽性ですか?
あなたは同じデータであると言いますから、あなたは出発点を持っています。これは、上記の最小化問題であなたにユニークなrを与えるはずです。サンプルレートはほぼ一定であると仮定しなければならない(または最小化問題を適応させる)必要があります。
もっと良い方法は、代わりにサンプリングレート/タイムポイントを取得することですか? (その後、問題はほとんど些細になります)。
いくつかの注釈(実際の答えを出すにはあまりにも怠惰です):ベクトルの1つを他のものと同じサンプリング周波数に補間し、それらを同じ長さに切り取り、相互相関関数のピークを見つけて相対オフセット。このオフセットを元のサンプリング周波数に再スケーリングします。 –
返信いただきありがとうございます!私は質問があります、もし私がセンサーのサンプリング周波数を知らないのであれば?私はWM +とスマートフォンのコンパスを使用しており、私はサンプリング周波数の正確な尺度を見つけることができません。特定の時間内のサンプル数のために周波数が異なることがわかります。また、平均サンプリング期間分析を行うと、ネットワーク/プロセス遅延などによる誤差を考慮することはできません。元のサンプリング周波数を提供せずに、別のベクトルに「収束」できるMATLAB関数はありますか? – Imelza
は、一定の周波数で各センササンプリングしていますか? – Jonas