May 31, 2020 at 10:41 pm #629
Thank you again for sharing this wonderful tool. I am really excited to see what IML can bring to Unity!
I saw online that there were CUDA improved DTW algorithms. I wondered whether running wekinator would be any better on a GPU or not. I guess it highly depends on the level of parallelisation of FastDTW. Let me know what you think is better for wekinator DTW implementation!
June 1, 2020 at 8:26 am #630
Thanks for the post. Currently I doubt you would see any benefit from running Wekinator DTW on a GPU. Implementation of the FastDTW matching could indeed be parallelised, but it’s not currently done in Wekinator. One could certainly refactor the code to try to get some performance gains, but if speed is a big concern then I might recommend using an existing DTW/FastDTW library and building something from scratch that’s well tailored to the type of sensor(s)/gesture(s)/etc. that you’re using. Wekinator’s DTW implementation makes certain assumptions about gesture lengths in the training set and during runtime, and you can tweak these in the interface right now to try to improve recognition time and/or accuracy for particular types of gestures. But you could almost certainly do even better if you build in assumptions that are more appropriate to a particular problem.
By the way, if you’re using Unity, you may be interested in the new InteractML project: http://interactml.com/ We’re building a set of IML tools directly into Unity, using a visual programming paradigm. I’m really excited about it!
June 1, 2020 at 8:43 am #631
Thank you for your answer.
I will indeed have to dig in the parameters of wekinator, right now I am just making sure that the rate of my input matches is low enough so that weki does not downsample too much.
Yes, I was also very excited about IML when I started my Soundpainting gestures recognition tool in february, but unfortunately the documentation was very limited back then. I could get some bugs fixed by chatting with Carlos on the discord, but it was not at the time the ideal tool for me to prototype with! In the meantime, I have made a simple yet efficient connection between MuBu for Max and Wekinator within Max.
One suggestion though: it would be amazing to have a parrallelised version of DTW in IML!
You must be logged in to reply to this topic.