# Kreuzkorrelation

In der Signalanalyse wird die Kreuzkorrelationsfunktion $R_{xy}(\tau )$ zur Beschreibung der Korrelation zweier Signale $x(t)$ und $y(t)$ bei unterschiedlichen Zeitverschiebungen $\tau$ zwischen den beiden Signalen eingesetzt. Kreuz steht hierbei für den Fall $x\neq y$ der Funktion:
    $R_{xy}(t_{1},t_{2})=E[{\textbf {X}}(t_{1})\cdot {\textbf {Y}}(t_{2})],$
wobei E der Erwartungswert ist.
Handelt es sich um einen schwach stationären Prozess, so ist die Korrelationsfunktion nicht mehr von der Wahl der Zeitpunkte $t_{1}$ und $t_{2}$, sondern nur von deren Differenz $\tau =t_{2}-t_{1}$ abhängig.
Die Kreuzkorrelations-Operation ist identisch mit der komplex konjugierten Faltung ${\overline {f(-t)}}$. Insbesondere im Fachgebiet Maschinelles Lernen, wo man mit Convolutional Neural Networks arbeitet, wird aufgrund dieser Identität meistens die Kreuzkorrelation verwendet, diese aber als Faltung bezeichnet, weil sie leichter zu implementieren ist.

## Definition

Es gilt für Energiesignale:
    $R_{xy}(\tau )=(x\star y)(\tau )=(x^{*}(-t)*y(t))(\tau )=\int _{-\infty }^{\infty }x^{*}(t)\,y(t+\tau )\,\mathrm {d} t$
und für Leistungssignale:
    $R_{xy}(\tau )=(x\star y)(\tau )=(x^{*}(-t)*y(t))(\tau )=\lim _{T\to \infty }{\frac {1}{2T}}\int _{-T}^{T}x^{*}(t)\,y(t+\tau )\,\mathrm {d} t$
mit $x^{*}$ als der konjugiert komplexen Funktion von $x$, dem Operatorsymbol $\star$ als Kurzschreibweise der Kreuzkorrelation und $*$ als dem der Faltungsoperation.
Analog wird die diskrete Kreuzkorrelation, diese spielt im Bereich der diskreten Signalverarbeitung eine wesentliche Rolle, mit der Folge $[m]$ und einer Verschiebung $n$ festgelegt als:
    $R_{xy}[n]$ = $(x\star y)[n]=\sum _{m=-\infty }^{\infty }x^{*}[m]\ y[m+n]$ (Energiesignale)
    $R_{xy}[n]$ = $(x\star y)[n]=\lim _{M\to \infty }{\frac {1}{2M+1}}\sum _{m=-M}^{M}x^{*}[m]\ y[m+n]$ (Leistungssignale)
In der digitalen Signalverarbeitung wiederum ist eine endliche Mittelung mit Argumenten beginnend bei Index 0 auf Grund der Architektur von Rechnerregistern erforderlich, wovon es eine vor- und eine unvorgespannte Version gibt:
    $R_{xy}[m]:={\begin{cases}\ \;\,{\frac {1}{N-|m|}}\sum _{n=0}^{N-m-1}x[n]y[n+m]&{\text{für }}m\geq 0\\\ \;\,{\frac {1}{N-|m|}}\sum _{n=-m}^{N-1}x[n]y[n+m]&{\text{für }}m<0\end{cases}}$ (Vorspannversion)
    $R_{xy}[m]:={\begin{cases}\ \;\,{\frac {1}{N}}\sum _{n=0}^{N-m-1}x[n]y[n+m]&{\text{für }}m\geq 0\\\ \;\,{\frac {1}{N}}\sum _{n=-m}^{N-1}x[n]y[n+m]&{\text{für }}m<0\end{cases}}$ (unvorgespannte Version)
Die Kreuzkorrelation ist mit der Kreuzkovarianz eng verwandt.

## Eigenschaften

Für alle $\tau$ gilt
    $R_{xy}(\tau )=R_{yx}(-\tau )$
sowie
    $\left|R_{xy}(\tau )\right|\leq {\sqrt {R_{xx}(0)R_{yy}(0)}}\leq {\frac {1}{2}}(R_{xx}(0)+R_{yy}(0))$
und
    $\lim \limits _{\tau \to \pm \infty }R_{xy}(\tau )=0$
mit den Autokorrelationsfunktionen $R_{xx}(\tau )$ und $R_{yy}(\tau )$.
Sie zeigt z. B. Spitzen bei Zeitverschiebungen, die der Signallaufzeit vom Messort des Signals $x(t)$ zum Messort des Signals $y(t)$ entsprechen. Auch Laufzeitunterschiede von einer Signalquelle zu beiden Messorten können auf diese Weise festgestellt werden. Die Kreuzkorrelationsfunktion eignet sich daher besonders zur Ermittlung von Übertragungswegen und zur Ortung von Quellen.
Rechentechnisch wird die Kreuzkorrelationsfunktion in der Regel über die inverse Fourier-Transformation des Kreuzleistungsspektrums $S_{XY}(f)$ ermittelt:
    $R_{xy}(\tau )=\int _{-\infty }^{\infty }S_{XY}(f)\,e^{\mathrm {i} 2\pi f\tau }\,\mathrm {d} f$

### Verbindung mit der Kreuzkovarianz

Ist eines der Signale $x(t)$ oder $y(t)$ nullsymmetrisch, d. h. ihr Mittelwert über das Signal ist Null $({\bar {x}}(t)=0$ oder ${\bar {y}}(t)=0)$, ist die Kreuzkorrelation identisch mit der Kreuzkovarianz. Bekannte Vertreter der nullsymmetrischen Funktionen sind zum Beispiel die Sinus- und Kosinusfunktionen.