WiiLi Wiki frontpage Include your post in the News Get links Hoteles Quito
WiiLi.org Forum Index WiiLi.org
a new revolution
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Gesture Recognition anyone?
Goto page Previous  1, 2, 3
 
Post new topic   Reply to topic    WiiLi.org Forum Index -> Wii Remote and Nunchuck
View previous topic :: View next topic  
Author Message
wic



Joined: 26 Mar 2007
Posts: 57
Location: Sweden

Digg It
PostPosted: Thu Apr 26, 2007 8:27 am    Post subject:

TiagoTiago wrote:
wic wrote:
...
I really think some kind of pre-processing of the acceleration data would help things, but I dont know what what could be.
...


just plain smoothing out isn't doing it?


I haven't tried any preprocessing at all. I'll give it a shot later today.
Back to top
View user's profile Send private message
wic



Joined: 26 Mar 2007
Posts: 57
Location: Sweden

Digg It
PostPosted: Thu Apr 26, 2007 9:02 am    Post subject:

mik wrote:
Nice! So how to you decide which data you take? To you always take the last 200 inputs as a input sequence? So for each t you process all t, t-1,...,t-199 values? Or to you start your gestures by pressing a button?


In my case a gesture is considered a guesture if the button is held down for a minimum amount of time. Note that I am only interesting in proving that a nn could be used for this. Detecting the beginning/end of a gesture is a problem of its own. At the moment I'm just padding the end of each gesture with zeros up to 200 points and hoping for the best. This could mean that the nn overclassifies the gesture from the length of it. The reason for using fixed 200 input is simply that the input layer (number of input neurons) must be fixed for all gestures in the network and 2 secs seemed like a sane limit, at least I dont see any gesture being longer than that.

I think most games uses buttons for detecting gestures (putting, bowling for instance). Compare this to Zelda:TP where you dont press any buttons and its more a matter of shaking and thrusting which is probably easier to detect.

mik wrote:
With that fixed kind of window, it might be an approach to always use the full 200 values by interpolating the values up when the gesture is to short, or down, if the gesture is to long.


You raise a good point here that would be interesting to try. Just so I understand what you are suggesting: I should try to fit each gesture to 200 points even though it may be shorter or (not very likely) longer. Fitting can be implemented in several ways, where linear or cubic interpolation springs to mind. Any thoughts?

mik wrote:
I programmed some java stuff, that tries to find out if currently a gesture is performed or if it is just minimal jitter


How did you fare and what was you approach?

mik wrote:
in which language are you coding? And are you using a specific machine learning toolkit.


I'm using C/C++ in conjuction with the FANN library. Check it out, it has bindings for lots of languages.
Back to top
View user's profile Send private message
mik



Joined: 10 Jan 2007
Posts: 26

Digg It
PostPosted: Mon Apr 30, 2007 8:31 am    Post subject:

wic wrote:
You raise a good point here that would be interesting to try. Just so I understand what you are suggesting: I should try to fit each gesture to 200 points even though it may be shorter or (not very likely) longer. Fitting can be implemented in several ways, where linear or cubic interpolation springs to mind. Any thoughts?


Sorry, i don't have something specific in mind, but basically i would say that linear interpolation should already show an improvement. More fancy algorithms for normalising the speed will only refine the result, i guess.

wic wrote:

mik wrote:
I programmed some java stuff, that tries to find out if currently a gesture is performed or if it is just minimal jitter


How did you fare and what was you approach?


This was pretty much trial and error: Smoothing the data, finding threshold levels and threshold times that will work when i am performing gestures, etc. Not very scientific i guess.

Basically i started recording when the smoothed acceleration of one axis exceeds a specific threshold. When it falls below the threshold i start a timer. If the acceleration stays below the threshold for a specific time, i stop the recording. If it exeeds the threshold again before time is up, i reset the timer, and continue the recording.

Also this doesn't allow for very slow gestures, it detects faster (i would say normal) gestures quite good. Also there are sometimes false positives, that have to been filtered out by the recognition.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    WiiLi.org Forum Index -> Wii Remote and Nunchuck All times are GMT
Goto page Previous  1, 2, 3
Page 3 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group