主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

xcorr

説明

r= xcorr (xyは2つの離散時間列の相互相関を返します。相互相関は,ベクトルxと,ベクトルyのシフトされた(ラグのある)コピーとの間の類似度を,そのラグの関数として測定します。xyの長さが異なる場合,関数は短い方のベクトルの末尾にゼロを付加して,もう一方のベクトルと同じ長さにします。

r= xcorr (xは,xの自己相関列を返します。xが行列の場合,rは,その列にxの列のすべての組み合わせに対する自己相関列と相互相関列を含む行列です。

r = xcorr (___maxlagは,前述の構文のいずれかに関して,ラグの範囲を-maxlagからmaxlagまでに制限します。

r = xcorr (___scaleoptは,相互相関または自己相関の正規化オプションも指定します。“没有”(既定)以外のオプションでは,xyの長さを同じにする必要があります。

r滞后) = xcorr (___は,相関の計算対象となるラグも返します。

すべて折りたたむ

ベクトルxと,右に5要素分シフトさせたxに等しいベクトルyを作成します。xyの推定される相互相関を計算してプロットします。xyの要素が厳密に(5)に一致するときに,ラグ値で最大スパイクが発生します。

n = 0:15;x = 0.84。^ n;y = circshift (x, 5);[c,滞后]= xcorr (x, y);茎(滞后,c)

图中包含一个坐标轴。轴包含类型为stem的对象。

ベクトルxの推定される自己相関を計算してプロットします。xが厳密にそれ自体に一致するときに,ゼロラグで最大スパイクが発生します。

n = 0:15;x = 0.84。^ n;[c,滞后]= xcorr (x);茎(滞后,c)

图中包含一个坐标轴。轴包含类型为stem的对象。

単位元でピークとなるベクトルxyの正規化された相互相関を計算してプロットし,最大ラグ10を指定します。

n = 0:15;x = 0.84。^ n;y = circshift (x, 5);[c,滞后]= xcorr (x, y, 10日“归一化”);茎(滞后,c)

图中包含一个坐标轴。轴包含类型为stem的对象。

入力引数

すべて折りたたむ

入力配列。ベクトル、行列または多次元配列として指定します。xが多次元配列である場合,xcorrはすべての次元にわたって列方向に処理し,自己相関と相互相関をそれぞれ行列の列として返します。

データ型:|
複素数のサポート:あり

入力配列。ベクトルとして指定します。

データ型:|
複素数のサポート:あり

最大ラグ。整数値スカラーとして指定します。maxlagを指定した場合,返される相互相関列の範囲は-maxlagからmaxlagまでです。maxlagを指定しない場合,ラグの範囲は2 n - 1です。ここで,Nはxyの長さのうちの大きい方になります。

データ型:|

正規化オプション。以下のいずれかとして指定します。

  • “没有”——スケーリングされていない生データの相互相関。xyの長さが異なる場合,“没有”は唯一有効なオプションです。

  • “有偏见的”——バイアスされた相互相関の推定。

    R x y 有偏见的 1 N R x y

  • “公正”——バイアスされていない相互相関の推定。

    R x y 无偏见的 1 N | | R x y

  • “归一化”または多项式系数的——ゼロラグでの自己相関が1になるようにシーケンスを正規化。

    R x y 多项式系数 1 R x x 0 R y y 0 R x y

出力引数

すべて折りたたむ

相互相関または自己相関。ベクトルまたは行列として返されます。

xM×Nの行列である場合,xcorr (x)xの列の自己相関および相互相関をもつ(2m - 1) × n2の行列を返します。maxlagを指定した場合,rのサイズは(2×maxlag+ 1)×N2になります。

たとえば,年代が3列,つまり, 年代 x 1 x 2 x 3. である場合,R = xcorr (S)の結果は次のように構成されます。

R R x 1 x 1 R x 1 x 2 R x 1 x 3. R x 2 x 1 R x 2 x 2 R x 2 x 3. R x 3. x 1 R x 3. x 2 R x 3. x 3.

ラグのインデックス。ベクトルとして返されます。

詳細

すべて折りたたむ

相互相関と自己相関

xcorrの結果は2つの乱数列間の相関の推定,あるいは確定的な2つの信号間の確定的な相関として解釈することができます。

共に定常的な2つのランダム過程xnとynの真の相互相関列は,次で求められます。

R x y E x n + y n E x n y n

ここで,−∞< n <∞です。アスタリスクは複素共役を表し,Eは期待値演算子です。実際には,無限長のランダム過程の1つで,実現のある有限部分しか使用できないため,xcorrはシーケンスのみを推定します。

既定では,xcorrでは正規化を行わずに生データの相関が計算されます。

R x y n 0 N 1 x n + y n 0 R y x < 0.

出力ベクトルcの要素は次で与えられます。

c R x y N 1 2 ... 2 N 1.

一般的には,正確な推定を行うために相関関数には正規化が必要です。入力引数scaleoptを使用して,相関の正規化を制御できます。

参照

巴克、约翰·R·巴克、迈克尔·m·丹尼尔和安德鲁·c·辛格。使用MATLAB的信号与系统计算机探索®.第二版。上鞍河,NJ: Prentice Hall, 2002。

斯托伊卡,彼得和伦道夫·摩西。信号的频谱分析。上鞍河,NJ: Prentice Hall, 2005。

拡張機能