We got a Microsoft Kinect 360 camera through Craigslist back in April. The main reason we got it was because the cool Kinect-based hacks, which had been Linux and Windows only, have (finally!) been ported to OS X. Kinect is at the forefront of one of the more exciting user-interface directions which has come along in a while.
What can be done with the Kinect? How about manipulating things in three dimensions? A great example is demonstrated by Memo Akten by his 3D drawing and manipulation hack. It is not a stretch to see that “drawing” in 3D is no different than sculpting, especially when one can rotate the virtual image so seamlessly.
The natural user interface (NUI) community has been very active in exploring the capabilities of the Kinect and making it do things. As a result, some very promising hacks/demos have surfaced. Most of the hacks are written by programmers for programmers, but some of them have been bundled in such a way that even non-programmers can install them and give them a try. We thought it would be helpful to summarize what we have discovered for readers interested in this topic.
In order to run any of the OS X-based Kinect hacks, besides the Kinect camera, you need the following :
- Kinect USB adapter/AC power supply (we got ours on eBay)
- An Intel-based Mac – 32 bit (will work for some), 64 bit (preferred)
- XCode – free download from Apple
While the connector at the end of the Kinect camera may look like an USB connector, it is not. No matter how you turn it, the connector will not fit in to the Mac’s USB port; you will need the adapter. Besides connecting the Kinect to the Mac, the adapter will also have an AC-DC converter for powering the camera.
Once the hardware pieces have been sorted out, the next step is to get the software modules to run. For readers new to software development, getting “demo code” to work (ie: compile and run) can be anything but fun. Often, it is a frustrating, if not hair-pulling, experience. The steps (download, compile, run) are not difficult, but often things don’t work for a variety of reasons (version incompatibilities, code updates, solar flare, moon being in the seventh house…). The difficulty novices often have is not knowing how to go about finding and fixing the root cause. For those who are game, there are a lot of instructions/how-to’s available on the Web, but they often do not get down to the level of detail necessary to actually solve a specific problem. There is no foolproof way to address the issue, but we hope to make it less frustrating by showing how we went about solving the specific problems we encountered. It will/should give some hints to others when they encounter something similar.
The simplest demo to get running is CocoaKinect. This is a self-contained OS X app that will run on any 64-bit Mac (Intel Core2 Duo or later processor). Just download a copy here, connect up the camera to Mac, and fire up the software. The app will let you play with a whole bunch of different parameters.
Of course, if you are anything like us, getting CocoaKinect up and running will only make you even more eager to fire up other OS X demos (ofxKinect, KinectJesture) to see what they are about. These other demos were a bit more difficult to get running, but we did manage to get them to work after a lot of head-scratching. We will go into more detail in another write-up as to exactly what we did to get things to compile properly, but suffice to say that THAT was not the fun part 🙂
The Kinect technology from Microsoft has added a lot of excitement to the subject of user-interface development. We are quite heartened to see so much work so freely shared by the community. Those interested in learning more about the fundamentals of human-computer interfaces (HCI), NUI, and multi-touch technologies should download this free book published by the NUI Group. It is a great way to get up to speed on this fascinating field of research.