- Posted: Apr 21, 2015 at 6:00AM
As you can see, Carl is a Friend of the Gallery;
Recently the Kinect Team highlighted the GesturePak.
What do you do after you’ve built a great app? You make it even better. That’s exactly what Carl Franklin, a Microsoft Most Valuable Professional (MVP), did with GesturePak. Actually, GesturePak is both a WPF app that lets you create your own gestures (movements) and store them as XML files, and a .NET API that can recognize when a user has performed one or more of your predefined gestures. It enables you to create gesture-controlled applications, which are perfect for situations where the user is not physically seated at the computer keyboard.
Franklin’s first version of GesturePak was developed with the original Kinect for Windows sensor. For GesturePak v2, he utilized the Kinect for Windows v2 sensor and its related SDK 2.0 public preview, and as he did, he rethought and greatly simplify the whole process of creating and editing gestures. To create a gesture in the original GesturePak, you had to break the movement down into a series of poses, then hold each pose and say the word “snapshot,” during which a frame of skeleton data was recorded. This process continued until you captured each pose in the gesture, which could then be tested and used in your own apps.
Another big change is the code itself. GesturePak v1 is written in VB.NET. GesturePak v2 was re-written in C#. (Speaking of coding, see the green box above for Franklin’s advice to devs who are writing WPF apps.)
Franklin was surprised by how easy it was to adapt GesturePak to Kinect for Windows v2. He acknowledges there were some changes to deal with—for instance, “Skeleton” is now “Body” and there are new JointType additions—but he expected that level of change. “Change is the price we pay for innovation, and I don't mind modifying my code in order to embrace the future,” Franklin says.
He finds the Kinect for Windows v2 sensor improved in all categories. “The fidelity is amazing. It can...
Carl Franklin offered these words of technical advice for devs who are
writing WPF apps:
- If you want to capture video, use SharpAVI
- If you want to convert the AVI to other formats, use FFmpeg
- When building an app with multiple windows/pages/user controls that use the Kinect sensor, only instantiate one instance of a sensor and reader, then bind to the different windows
- Initialize the Kinect sensor object and all readers in the Form Loaded event handler of a WPF window, not the constructor
Gesture Recording and Recognition ToolkitFor Kinect for Windows v2.0
GesturePak is both an app that records you making gestures and an SDK for WPF (.NET 4.5) that determines when user has made those gestures.
- Easily record yourself or someone else performing a complex gesture.
- GesturePak saves gestures as xml files.
- Allows you to edit and tweak your gestures.
- Options to track each of 25 joints.
- Options to track X, Y, and/or Z axis.
- Limit the required time in which to perform the gesture.
- Increase or decrease accuracy required.
GesturePak Recorder Documentation
The GesturePak Recorder app lets you record and edit gestures.
GesturePak API Documentation
The GesturePak API lets you recognize Gestures in your .NET applications..
Project Information URL: http://www.franklins.net/gesturepak2.aspx
Project Download URL: http://www.franklins.net/gesturepak2.aspx
Project Source URL: https://github.com/carlfranklin/GesturePak2V1