I want to know Distance of KNN Search Using DTW(dynamic time warping)

5 次查看(过去 30 天)
HI
as you see tilte, I want to get Distance form knnsearch using dtw function
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
X = [Gyrx(:,1:9)';zeros(300,601)]; % data X = [309X601]
Y = Gyrx(:,10)'; % data Y = [1X601]
tic
[~, Dist] = knnsearch(X,Y,'Distance',@distfun_dtw);
toc
function Dis = distfun_dtw(Y,X)
Dis = [];
for i =1:length(X(:,1))
D=dtw(X(i,:),Y);
Dis = [D2;D];
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
This is my code. I want to know minmum distance between Xdata and Ydata using dtw, Not euclidean distance
And also I hope this code should be fast because I try to apply knnsearch in real time classification
Please answer the question.
Thank you

回答(2 个)

Eamonn
Eamonn 2019-10-21
Sure, but matlab has DWT built in

Eamonn
Eamonn 2019-10-18
Hello., Use the UCR suite, it is at least 10,000 times faster than real time (for say 100Hz data)
Also, read this tutorial. https://www.cs.unm.edu/~mueen/DTW.pdf

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by