CC: To DTW...

You can choose this command after selecting two objects with cepstral coefficients (two MFCC's or LFCC's). With this command you perform dynamic time warping.

## Algorithm

First we calculate the distance matrix D of all the distances between the cepstral frames of the two objects. This matrix has n1 rows, the number of frames in the first object, and n2 columns, the number of frames in the second object.

The elements of D are the distances dij between frame i (from the first object) and frame j (from the second one). The dij are composed of three parts:

dij = w1 · d1 + w2 · d2 + w3 · d3,

where w1, w2 and w3 are user-supplied weights and

d1 = ∑Nk=1 (cik - cjk)2),
  the sum of the squared distances between the N cepstral coefficients of the two frames.
d2 = (ci0 - cj0)2
  the difference between the average 'power' of the two frames.
d3 = ∑Nk=1 (rik - rjk)2),
  in which rik is the regression coefficient of the cepstral coefficient k, calculated from the frames within a time span of T seconds, the regression window length, around the centre of frame i.

After calculation of all the frame distances dij, we find the optimal path through the distance matrix D with a Viterbi-algorithm.

### Links to this page

- DTW