Saturday, June 23, 2007

Gesture Shmesture

The boss has been letting me work on gesture recognition at work. I added to the self simplifying line so it accounts for when the user changes their drawing speed (just interpolate on the big gaps). This confuses the neural net less. But because my boss was greedy for more shapes I found other ways to recognise shapes heuristically.

  • Does the line cross over itself once? You've drawn a loop.
  • Does the line cross over itself twice? You've drawn a figure eight.
  • Is there low variance between angles along the line? You've drawn a straight line.
  • Is the starting point a short distance from the end point? You've drawn a circle (note that you have to force it to fail when someone draws a shape too small - otherwise just clicking the mouse is always a circle).
  • None of the above? Let's hand it over to the neural net and see if we've got some other shape here.

So okay - you can get away with some really poor drawing, but what's great about this is that you can get away with some really poor drawing! A game needs the feel that you lost because you're bad at the game, not because the programmer didn't make the effort to make gameplay comfortable. I'll link to this game if and when it comes out.

Yoga postures with how-to animations
ASCII game
Darth Vader helmet art
OLED flexible transparent display
Game and Watch remakes
LOL Code
Scrambler Drawing Machine
Old Soviet arcade games
Midfield General feat. Noel Fielding - Midfielding video
Photosynth - image clever technology
IKEA ice cube straws trick
Wooden robot toys
3D printer site
Great Firewall of China - test the availability of your site in China
Falling Sand Java
Brain and Behaviour
Hello World on wheat field

OCR with perceptrons in Java
SWX data transter method for Flash
Flash file uploader
Saving jpg or png with Flash 8 revisited
Fast random lists of number for Flash
ITP Sensor workshop reports