STFT

Appart from creating stupid skylines, my implementation of short-time Fourier transform is useless.

This might be due to some big mistakes from my implementation (possible, I’m tired).

We have worked all day with Nicholas (one of the dancers for home) to recognize some simple movements. We tried:

  • Vector-Quantization of the FFT signal: interesting but seems very unstable (same movements producing different classes). We haven’t tried to use this as input to SVM yet.
  • SVM on the FFT signal with DC value: second best result, but slow and foggy. This setup cannot recognize very fast movements/shock because it needs enough data to compute a frequency. Movements blur on one another (frequencies “pollute” the FFT result while they are in the window).
  • SVM on raw signal: best result when doing intelligent learning (versions of a movement as different as possible, learn a “noise” class). We also tried different window lengths. 24 samples is good (fast/no pollution from last movement). 64 samples was also ok. It depends on the type of movements. When recording the training data, we could exactly position the signal to define when it will be recognized (just before a shock for example, or just after).

From these first experiments, here are some setups we should try:

  • separate VQ for each channel: our first experiment used a mixture of all 12 signals which seems to be a bad idea because the resolution was too low. We could also augment the size of the codebook.
  • VQ on raw signal: (why not?)
  • VQ and SVM: using raw signal if possible for the improved reactivity.
  • sleep more at night: this would definitely help (better brain = better ideas).

See you !