Расстояние между сигналами с помощью динамической трансформации временной шкалы
растягивает два вектора, dist = dtw(x,y)x и y, на общий набор мгновений, таких что dist, сумма евклидовых расстояний между соответствующими точками, наименьшая. Чтобы растянуть входы, dtw повторяет каждый элемент x и y столько раз, сколько нужно. Если x и y матрицы, тогда dist растягивает их, повторяя их столбцы. В этом случае x и y должно иметь одинаковое число строк.
[ возвращает общий набор мгновений или путь деформации, такой что dist,ix,iy]
= dtw(x,y)x(ix) и y(iy) иметь наименьшее возможное dist между ними.
Векторы ix и iy имеют одинаковую длину. Каждый содержит монотонно увеличивающуюся последовательность, в которой индексы к элементам соответствующего сигнала, x или y, повторяются необходимое количество раз.
Когда x и y матрицы, ix и iy таковы, что x(:,ix) и y(:,iy) минимально разделены.
dtw(___) без выходных аргументов строит графики исходного и выровненного сигналов.
Если сигналы являются векторами действительных чисел, функция отображает два исходных сигнала на подграфике и выровненные сигналы на подграфике ниже первого.
Если сигналы являются комплексными векторами, функция отображает исходные и выровненные сигналы на трехмерных графиках.
Если сигналы являются вещественными матрицами, функция использует imagesc отображение исходных и выровненных сигналов.
Если сигналы являются сложными матрицами, функция строит свои действительные и мнимые части в верхней и нижней половине каждого изображения.
[1] Paliwal, K. K., Anant Agarwal, and Sarvajit S. Sinha. A Modification over Sakoe and Chiba's Dynamic Time Warping Algorithm for Isolated Word Recognition (неопр.) (недоступная ссылка). Обработка сигналов. Том 4, 1982, стр. 329-333.
[2] Сакое, Хироаки и Сейби Тиба. «Оптимизация алгоритма динамического программирования для распознавания разговорного слова». IEEE® Транзакции по акустике, речи и обработке сигналов. Том ASSP-26, № 1, 1978, с. 43-49.
alignsignals | edr | finddelay | findsignal | xcorr