Saturday, June 11, 2011

Getting Kinected

Yes, the pun...is horrid.

So today I finally decided to hook my Kinect up to my computer.

It's pretty cool.

I can get a rough depth map of the room, 640x480 webcam imagery, cool-looking near-IR imagery, and sound using it. I can also manually tilt it up and down and blink the LED.

How? I thought you'd ask.

LibFreenect is what I used. I'm running Ubuntu 11.04. While this article provides a fairly good tutorial, it is a bit outdated. I followed his instructions roughly. His dependency list is fairly good, but I had to build and break it a couple times to find out which other packages I needed. Note that if it breaks on libxyz, you'll need libxyz-dev.

First, I cloned libfreenect's git repository. Entering that directory, one finds a nice cmake-based system that I don't understand at all.

Simply:
mkdir build
cd build
cmake ..
make
As per the instructions linked above.

Now this is where his instructions are outdated:
cd bin
sudo ./glview
Tadaa! You should now be viewing the depth map and webcam input in a nice big little window. :)

Notice that after the program finishes initialization, it dumps usage information.
w = look up
s = center view
x = look down
f = change view modes (near-IR and two(?) webcam modes
LED controls:
0 = off
1 = green
2 = red
3 = amber
4,5(?) = green, steady blink
6 = red-amber alternating

I has toy. Is happy. Now, to get AJ's pet project working with it...'cuz a Gumstix Tobi with a Fire CoM would totally run it. :D

3 comments:

  1. I love how the one time i decided to read your blog, I found I have absolutely no chance of understanding anything more in depth than "I has toy. Is happy."

    ReplyDelete
  2. If it makes you feel any better, I think MOST of us had no chance on this one. THough it does make me want to buy and hack a kinect so I would have a chance. I'm just trying to figure out why I would need such a thing.

    Any suggestions? How could a sociologist/anthropologist benefit from a hacked kinect? Actually, wait a minute...

    ReplyDelete
  3. Data capture and analysis on body language?

    ReplyDelete