信号解析の観点からの畳み込みと相互相関の違い
On 2月 12, 2021 by admin畳み込みと相互相関の違いを理解しようとしています。理解したこのの回答を読みました。下の写真もわかりました。
しかし、信号処理(私がほとんど知らない分野..)に関しては、2つの信号(または信号とフィルター?)が与えられた場合、いつ畳み込みを使用し、いつ使用しますか?相互相関を使用することを好む、つまり、実際の分析では畳み込みを好む場合と、相互相関を好む場合です。
これらの2つの用語は多くの用途があるようです。つまり、それは何ですか。使用しますか?
*相互相関ここでは、f*g
回答
iv class = “ではなくg*f
と読み替えてください。回答 “>
信号処理では、2つの問題が一般的です。
-
入力が$ x(t)$の場合、このフィルターの出力は何ですか。答えは$ x(t)\ ast h(t)$で与えられます。ここで、$ h(t)$はフィルターの「インパルス応答」と呼ばれる信号であり、$ \ ast $は畳み込み演算です。
-
ノイズの多い信号$ y(t)$がある場合、信号$ x(t)$はどういうわけか$ y(t)$に存在しますか?言い換えると、$ y(t)$は$ x(t)+ n(t)$の形式ですか?ここで、$ n(t)$はノイズですか?答えは、$ y(t)$と$ x(t)$の相関関係によって見つけることができます。与えられた時間遅延$ \ tau $に対して相関が大きい場合、答えはイエスであると確信できるかもしれません。
関係する信号が対称、畳み込み、相互相関は同じ操作になります。このケースは、DSPの一部の領域でも非常に一般的です。
コメント
- 了解しました。明確で明るい答えをありがとうございました!
- インパルス応答の説明で私が気に入っているのは、畳み込みが"逆になっている理由が本当に直感的にわかることです"。離散的には、現在の出力は、現在の入力x時間0でのインパルス応答+前の入力インパルス応答からの残差出力(入力a n-1 *インパルス1+入力n-2 *インパルス2など)です。
- @ Jean-FredericPLANTEはい、その'それを説明する良い方法です。
- @ Jean-FredericPLANTEコメントによるこの回答は、より賢明なものになります。
回答
2つの用語畳み込みと相互相関は、DSPでも非常によく似た方法で実装されます。
どちらを使用するかはアプリケーションによって異なります。
線形で時間不変のフィルタリング操作を実行している場合は、信号をシステムのインパルスと畳み込みします。応答。
2つの信号間の「類似性を測定」している場合は、それらを相互相関します。
試してみると、2つの用語が一緒になります。生産する 整合フィルター 。
ここでは、特定の信号$ s [n] $に既知の「パルス」(信号)$ p [n] $が含まれているかどうかを判断しようとしています。これを行う1つの方法は、指定された信号$ s $を既知のパルスの時間反転$ p $で畳み込むことです。現在、畳み込みを使用して、指定された信号と既知のパルスの相互相関を実行しています。
サイドノート
「相互相関」という用語は(一部の場合)DSPの分野で誤用されています。
統計学者にとって、相関は2つの変数がどれだけ近く、$ -1 $から$ + 1 $の間であるかを測定する値です。
相互相関に関するWikipediaエントリからわかるように、DSPバージョンが使用され、次のように記述されています。
相互相関は、一方の系列と他方の系列の遅れの関数としての2つの系列の類似性の尺度です。
DSP定義の問題:$$ \ sum _ {\ forall m} x [n] y [n + m] $$は、この「類似性」の尺度が各信号のエネルギーに依存することです。
コメント
- これは私にとって非常に役に立ちます。ありがとうございます!
回答
@MathBgu上記の回答をすべて読みましたが、すべて非常に有益な1つのことです。畳み込みの式を次のように検討して、理解を深めたいと思います。
$$ f(x)* g(x)= \ int \ limits_ {-\ infty} ^ {\ infty} f(\ tau)g(x- \ tau)\、d \ tau $$
相互相関の場合
$$(f \ star g)(t)\ stackrel {\ text {def}} {=} \ int \ limits _ {-\ infty} ^ {\ infty} f ^ *(\ tau)g(t + \ tau)\、d \ tau、$$
方程式的には、畳み込みでは、実行する前に唯一の違いがあることがわかります。スライディングドット積は、y軸iを横切って信号を反転します。e $(t)$ を
畳み込みを使用して、2つのブロック/信号があり、それらが時間領域で(直列に)直接隣接しているシステムの出力/結果を取得します。
コメント
- 追加の明確化ポイントについて言及していただきありがとうございます!
- f *の*は複素共役を意味しますか? y軸を横切る"の代わりに"、"時間を逆にすることを検討してください"、フリップは垂直方向の何かが起こっているように感じるため、特に。 y軸について言及する場合。
回答
信号処理では、畳み込みが実行されて出力が取得されます。 LTIシステムの。相関(自動または相互相関)は通常、後で他の計算を行うために使用するために計算されます
相関、共分散、および相関係数を混同しないように注意する必要があります。相関は必ずしも-1と1の間である必要はありません。相関係数( https://en.wikipedia.org/wiki/Pearson_product-moment_correlation_coefficient )は-の間です。 1と1は、2つの確率変数の分散によってスケーリングされるためです。覚えておく必要があるのは、2つの確率変数の関連性を分析するために統計信号処理で実行される実際の操作は、相関ではなく「共分散」であるということです。ただし、信号がセンサーによってキャプチャされ、電圧に変換され、ADCでデジタル化されるほとんどのアプリケーションでは、信号は平均ゼロであると想定できます。したがって、相関は共分散に等しくなります。
コメント
- そのリンクを見ていきます。ありがとうございます!
回答
畳み込みと相関の意味には微妙な点がたくさんあります。どちらも、線形代数の内積と射影のより広い概念に属します。つまり、あるベクトルを別のベクトルに射影して、後者の方向にどれだけ「強い」かを判断します。
このアイデアはニューラルネットワークの分野にも拡張され、データサンプルを行列の各行に投影して、その行にどの程度「適合する」かを判断します。各行は、特定のクラスのオブジェクトを表します。たとえば、各行は、手書き認識のためにアルファベットの文字を分類できます。各行をニューロンと呼ぶのが一般的ですが、整合フィルターと呼ぶこともできます。
本質的に、2つのものがどれほど類似しているかを測定するか、特定の特徴を見つけようとします。何かで、例えば信号または画像。たとえば、信号をバンドパスフィルターで畳み込む場合、「その帯域に含まれるコンテンツを調べようとします。信号をDFTなどの正弦波と相関させる場合、」の強度を探します。信号内の正弦波の周波数。後者の場合、相関はスライドしませんが、2つのことを「相関」していることに注意してください。内部積を使用して信号を正弦波に投影しています。
では、違いは何ですか?畳み込みでは、信号がフィルターに対して後方にあることを考慮してください。時間とともに変化する信号では、データが相関しているという効果があります。フィルターに入る順序。しばらくの間、相関を単純に内積として定義します。つまり、あるものを別の物に投影します。したがって、最初に、信号の最初の部分をフィルターの最初の部分と相関させます。信号がフィルターを通過し続けると、相関はより完全になります。信号の各要素は、フィルタの要素は、その時点で「接触」しています。
つまり、畳み込みでは、ある意味で相関関係がありますが、信号がシステムと相互作用するときに変化が発生する順序を維持しようとしています。ただし、フィルターが対称である場合は、実際には問題ではありません。畳み込みと相関は同じ結果になります。
相関を使用すると、2つの信号を比較するだけで、試行しません。イベントの順序を保持します。それらを比較するために、同じ方向を向いている、つまり整列している必要があります。ある信号を他の信号の上にスライドさせて、「互いに位相がずれている」場合や、大きな信号で小さな信号を探している場合に、各時間ウィンドウでそれらの類似性をテストできるようにします。
画像処理では、状況が少し異なります。時間は気にしません。ただし、畳み込みにはまだいくつかの有用な数学的特性があります。ただし、より大きな画像の一部をに一致させようとしている場合は、小さいもの(つまり、整合フィルタリング)の場合、機能が整列しないため、反転する必要はありません。もちろん、フィルターが対称でない限り。画像処理では、特にニューラルネットでは、相関と畳み込みが同じ意味で使用されることがあります。明らかに、画像が2次元データの抽象的な表現である場合、時間は依然として関連しています。ここで、1つの次元は時間です。スペクトログラム。
要約すると、相関と畳み込みはどちらも内積をスライドさせ、空間や時間によって変化するときに、あるものを別のものに投影するために使用されます。畳み込みは、順序が重要な場合に使用され、通常はデータを変換するために使用されます。相関は通常、大きなものの中から小さなものを見つけるために、つまり一致するために使用されます。 2つの「もの」の少なくとも1つが対称である場合、どちらを使用してもかまいません。
回答
信号処理はさておき、たたみ込みと相関で何が起こっているのかを理解しようとすると、どちらも非常によく似た操作です。唯一の違いはたたみ込みで、積の累積を実行する前に変数の1つが反転(反転)されます。上記のどこでも signal という単語を使用していないことを確認してください。実行された操作に関してのみ話します。
ここで、信号処理について説明します。
畳み込み演算を使用して、入力対称( x )およびシステムのインパルス応答( h )。LTIシステムの出力を取得するために畳み込み演算のみが使用される理由を理解する、大きな派生があります。ここで派生を見つけてください。
http://www.rctn.org/bruno/npb163/lti-conv/lti-convolution.html
相関演算を使用して類似性を見つけます2つの信号xとyの間。相関の値が大きいほど、2つの信号間の類似性が高くなります。
ここで違いを理解してください。
-
畳み込み->信号とシステム(フィルター)の間
-
相関-> 2つの信号間
したがって、信号分析の観点からは、畳み込み演算は使用されません。 。信号分析の観点からは、相関のみが使用されます。一方、畳み込みはシステム分析の観点から使用されます。
畳み込みと相関の操作を理解する最良の方法は、質問の図に示されているように、2つの連続変数間で2つの畳み込みと相関が行われたときに何が起こるかを理解することです。
コメントを残す