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

5 views (last 30 days)
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

Answers (2)

Eamonn
Eamonn on 21 Oct 2019
Sure, but matlab has DWT built in

Eamonn
Eamonn on 18 Oct 2019
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
  1 Comment
JeongHeon Kim
JeongHeon Kim on 21 Oct 2019
Thank you.
But your link with code and tutorial only has C code.
Can I get the Matlab code instead of C code?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!