动态时间规整/规划(Dynamic Time Warping, DTW),给定两个离散的序列或时间序列,DTW能够衡量这两个序列的相似程度,或者说两个序列的距离,广泛应用于语音识别领域。
关于动态时间规整理论的详细解释:参考https://wenku.baidu.com/view/080ffe1358fafab069dc028b.html
最后要得到的归整路径是距离最短的一个归整路径:其中Dist(i,j)为初始的欧式距离的平方
# -*- coding: utf-8 -*-
"""
Created on Tue Mar 5 21:33:06 2019
@author: Melo琦
python
"""
import numpy as np
def dtw(seq1,seq2): #动态时间规整:形参为时间序列seq1,seq2
m1=len(seq1)
m2=len(seq2)
#初始化距离矩阵
distance=np.zeros(shape=(m1,m2)) #m1行,m2列的距离矩阵
for i in range(m1):
for j in range(m2):
distan