Friday, September 30, 2011

Experimenting with Kinect for education

We've had a Kinect at the Center for the last few weeks. Sadly, we've not been able to spend that much time with it (and is also not on the top of our priorities), but clearly see there are a lot of possibilities.

To me it seems that, in regards to educational purposes, Kinect will help out by engaging learners; forcing them to move just fires up some of those lazy neurons. By itself, this clearly brings an advantage to whatever app you hook it up to.

Imagine playing a math game with mouse clicks, vs. a Kinect-based game where you wave your arms, turn, crouch or jump to acheive goals. I think the latter might make reaching learning goals easier than the former. Of course, research has to be done =)

That aside, just getting the thing to work hasn't been that hard; basically there are several libraries out there that form the basic drivers on which developers can build on. The libraries seem pretty stable and work fine, but there aren't too many downloadable examples (or we're having a hard time finding them).

In future posts I plan to offer some updates documenting some of the stuff we've found. Some topics might be:
  • low-level SDKs or libraries that talk to Kinect
  • development stacks (from drivers to graphics/game framework) for Windows, Mac and/or Linux
  • ideas of real-world educational applications to build with Kinect (or showcasing existing ones)
For now, we've covered some of the basics:
  • Windows: installed the available OpenNI + NITE + SensorKinect binaries. On top of that, FAAST. This allowed us to emulate key presses through Kinect gestures. Thus, we can now have Kinect Tetris, Kinect Doom, etc. Interactive but not that innovative =)
  • Linux (Ubuntu): this was a tad harder. Some bits are available as downloadable binaries (and only then for Ubuntu 10.10), but most other require getting a bunch of libraries and then compiling. Not horrific, but not quite straightforward either.  End result: we're a step behind the work on Windows: just the skeleton tracking on some of the sample demos, no app control yet.
  • Mac: coming soon.
Why are we doing this?
I have to say this whole experience is interesting: I have almost zero experience developing native applications on any platform, which is our target audience exactly--students and teachers who want to build things, but need a kickstart (which we would like to provide).

Our goal isn't clearly defined at the moment, but we are confident this (like other technologies we work with) is a tool that will improve learning, or enable different ways of doing so. That might be an obvious statement to make, but part of our job is to actually test and prove it to be so.

And, I'd be lying if I didn't say I'm also having fun. Gladly, that's a part of my job too.


Javier Giese said...

Thanks Alex for this article. It would be great if you can provide some urls with similar innitiatives with Kinect. Something like Take a look at their showcase to see some videos where kinects is being used. I liked this particular one: UltraSeven (good memories from infancy).

Keep up the good work!

Jano said...

Thanks for the words and link; I'll be on the lookout for more sites or blogs focused on Kinect and education.

We also tried UltraSeven and had a bit of fun with it =)