Korelace (zpracování signálu)

Korelace, resp. vzájemná korelace (cross-correlation), je důležitým operátorem v oblasti zpracování signálu. Určuje podobnost tvaru signálů. V lineární algebře odpovídá skalárním součinům.

Pro spojité signály je definována následovně.

( f g ) ( t ) = R f g ( t ) = f ( τ ) g ( t + τ ) d τ = f ( τ t ) g ( τ ) d τ {\displaystyle {\begin{aligned}(f\star g)(t)=R_{fg}(t)&=\int f^{*}(\tau )\,g(t+\tau )\,\mathrm {d} \tau \\&=\int f^{*}(\tau -t)\,g(\tau )\,\mathrm {d} \tau \end{aligned}}}

Symbol {\displaystyle ^{*}} značí komplexní sdružení.

A analogicky je definována pro diskrétní signály.

( f g ) [ n ] = R f g [ n ] = m f [ m ] g [ n + m ] = m f [ m n ] g [ m ] {\displaystyle {\begin{aligned}(f\star g)[n]=R_{fg}[n]&=\sum _{m}f^{*}[m]\,g[n+m]\\&=\sum _{m}f^{*}[m-n]\,g[m]\end{aligned}}}

Lze si všimnout podobnosti s konvolucí. Jeden operátor lze vhodně nahradit druhým.

Jako autokorelace se rozumí korelace R f f = ( f f ) {\displaystyle R_{ff}=(f\star f)} . Lze tak určit tzv. soběpodobnost signálu, tedy zda se např. signál v určitých periodách neopakuje.

Vlastnosti

R f g ( t ) = R g f ( t ) {\displaystyle R_{fg}(t)=R_{gf}^{*}(-t)}

Ukázka výpočtu

Následuje ukázka výpočtu pro diskrétní signály f {\displaystyle f} a g {\displaystyle g} .

f = [2, 4, 5]
g = [3, 2, 7]

Pro t = 1 {\displaystyle t=-1} :

      2   4   5
*                3   2   7
----------------------------
                 0   0   0   = 0

Pro t = 0 {\displaystyle t=0} :

  2   4   5
*         3   2   7
-------------------
         15 + 0 + 0   = 15 

Pro t = 2 {\displaystyle t=2} :

  2   4   5
*     3   2   7
-------------------
     12 +10 + 0    = 22

Související články