# xcorr

## 语法

``r = xcorr(x,y)``
``r = xcorr(x)``
``r = xcorr(___,maxlag)``
``r = xcorr(___,scaleopt)``
``````[r,lags] = xcorr(___)``````

## 说明

``r = xcorr(x,y)` 返回两个离散时间序列的互相关。互相关测量向量 `x` 和移位（滞后）副本向量 `y` 的之间的相似性，形式为滞后的函数。如果 `x` 和 `y` 的长度不同，函数会在较短向量的末尾添加零，使其长度与另一个向量相同。`

``r = xcorr(x)` 返回 `x` 的自相关序列。如果 `x` 是矩阵，则 `r` 也是矩阵，其中包含 `x` 的所有列组合的自相关和互相关序列。`

``r = xcorr(___,maxlag)` 将上述任一语法中的滞后范围限制为从 `-maxlag` 到 `maxlag`。`

``r = xcorr(___,scaleopt)` 还为互相关或自相关指定归一化选项。除 `'none'`（默认值）以外的任何选项都要求 `x` 和 `y` 具有相同的长度。`

``````[r,lags] = xcorr(___)``` 还返回用于计算相关性的滞后。```

## 示例

```n = 0:15; x = 0.84.^n; y = circshift(x,5); [c,lags] = xcorr(x,y); stem(lags,c)``` ```n = 0:15; x = 0.84.^n; [c,lags] = xcorr(x); stem(lags,c)``` ```n = 0:15; x = 0.84.^n; y = circshift(x,5); [c,lags] = xcorr(x,y,10,'normalized'); stem(lags,c)``` ## 输入参数

• `'none'` - 原始、未缩放的互相关。当 `x``y` 长度不同时，`'none'` 是唯一有效的选项。

• `'biased'` - 互相关的有偏估计：

`${\stackrel{^}{R}}_{xy,\text{biased}}\left(m\right)=\frac{1}{N}{\stackrel{^}{R}}_{xy}\left(m\right).$`
• `'unbiased'` - 互相关的无偏估计：

`${\stackrel{^}{R}}_{xy,\text{unbiased}}\left(m\right)=\frac{1}{N-|m|}{\stackrel{^}{R}}_{xy}\left(m\right).$`
• `'normalized'``'coeff'` - 对序列进行归一化，使零滞后时的自相关等于 1：

`${\stackrel{^}{R}}_{xy,\text{coeff}}\left(m\right)=\frac{1}{\sqrt{{\stackrel{^}{R}}_{xx}\left(0\right){\stackrel{^}{R}}_{yy}\left(0\right)}}{\stackrel{^}{R}}_{xy}\left(m\right).$`

## 输出参数

`$\text{R}=\left(\begin{array}{lllllllll}{R}_{{x}_{1}{x}_{1}}\hfill & {R}_{{x}_{1}{x}_{2}}\hfill & {R}_{{x}_{1}{x}_{3}}\hfill & {R}_{{x}_{2}{x}_{1}}\hfill & {R}_{{x}_{2}{x}_{2}}\hfill & {R}_{{x}_{2}{x}_{3}}\hfill & {R}_{{x}_{3}{x}_{1}}\hfill & {R}_{{x}_{3}{x}_{2}}\hfill & {R}_{{x}_{3}{x}_{3}}\hfill \end{array}\right).$`

## 详细信息

### 互相关和自相关

`xcorr` 的结果可以解释为两个随机序列之间的相关性估计，也可以解释为两个确定性信号之间的确定相关性。

`${R}_{xy}\left(m\right)=E\left\{{x}_{n+m}{y}_{n}^{*}\right\}=E\left\{{x}_{n}{y}_{n-m}^{*}\right\},$`

`${\stackrel{^}{R}}_{xy}\left(m\right)=\left\{\begin{array}{ll}\sum _{n=0}^{N-m-1}{x}_{n+m}{y}_{n}^{\ast },\hfill & m\ge 0,\hfill \\ {\stackrel{^}{R}}_{yx}^{*}\left(-m\right),\hfill & m<0.\hfill \end{array}$`

`$\text{c}\left(\text{m}\right)={\stackrel{^}{R}}_{xy}\left(m-N\right),\text{ }\text{ }m=1,\text{\hspace{0.17em}}2,\dots ,2N-1.$`

 Buck, John R., Michael M. Daniel, and Andrew C. Singer. Computer Explorations in Signals and Systems Using MATLAB®. 2nd Edition. Upper Saddle River, NJ: Prentice Hall, 2002.

 Stoica, Petre, and Randolph Moses. Spectral Analysis of Signals. Upper Saddle River, NJ: Prentice Hall, 2005.