Facetracking starter kit [Released]

Hi there!

We just released a framework on the Asset Store that will let you integrate the Kinect™ Facetracking technology directly in Unity.
Using the package you will be able to:

  • track the user head position and rotation (x,y,z coordinates relative to the device);
  • track a set of 6 (facial) animation units (read more);
  • receive the rbg and depth camera streams directly from the device.

To demonstrate the technology we used the facetracking data to animate a high-poly mask of an Oni in real-time. The complete source code for the kinect™ integration is also included in the package.

Check out our demo!
Asset store link: Facetracking Starter Kit | Templates | Unity Asset Store

Wow, this looks pretty impressive. I don’t have a Kinect, yet - let alone have it set up to work with my Mac … but I certainly have bookmarked this and will buy as soon as I have a game where I could use it.

One thing I noticed with your YouTube video: It doesn’t have a link to the asset store or this forum posting. You might consider adding that so people who run into your demo video can easily navigate to the forum / asset store :wink:

Thanks for the feedback and suggestion!
I added those in the youtube video.

Looks pretty awsome! But I don’t have Kinect…
So is it possible to make a webcam/mobile cam (front and back) version? I think you can reach out to more users this way.

It is a good point, yes, and we are considering exploring this possibility.
The motivation behind using Kinect though, is that the facetracking quality is much better as it uses both the depth and skeleton tracking information.

I’m also interested in mobile support - mostly for head tracking, the face stuff is awesome but I see much more use for the head tracking.

I remember a few years back there was this face tracking tech I saw called the “FaceAPI”

http://www.seeingmachines.com/product/faceapi/

When I saw your post I thought you guys are the same guys…:slight_smile:
EDIT: Apparently, Face tracking has become popular over the past few years… there is even an open source one called “FaceTrackNoIR” :
http://facetracknoir.sourceforge.net/

So I think webcam isn’t impossible. The problem is the mobile, which is what I am most interested in - even with just rudimentary head tracking I think its good enough and hopefully more sophiscated face tracking would be avaliable later for mobile.

EDIT 2 : Looks like even on mobile it isn’t impossible - its already been done!

Really nice, following this :slight_smile:

Regarding FaceAPI, there’s at least one entry on feedback.unity3d.com:

http://feedback.unity3d.com/unity/all-categories/1/hot/active/augmented-reality-ar

IIRC, there was also another one, which was more specific (I may have created that) - but since the Feedback site went to the new system, I got disconnected from all the ideas I had voted on / created … so it’s kind of difficult to find that one (if it exists at all - I just have a rather faint memory on that).

FaceAPI was a strong contender when we were researching the technology out there.
For us, the drawback was the licensing terms (each person buying our package would need to go to FaceAPI and get a license on their own terms). Of course there is a free license but that only allows to detect the head position, in a non-commercial application, and the whole source code must be released under GPL3 (which by itself would be against the EULA Unity’s asset store is using).

All in all, owning a Kinect seemed a much more reasonable alternative (from our point of view).
We are also preparing to offer other NUI mechanims/features on the asset store which would also require a Kinect (or similar tracking technology).

OpenCV might also be a worthy candidate for those whose requirements are only to track the user’s head position.

A quick update: some users reported bugs and crashes while using the kit. We just submitted a new version that fixes those problems to the asset store. It is currently under review and should be soon available.

Hi - Nice work. Keen to try it. Am I right to assume that this uses the Microsoft Kinect for Windows SDK, so it will only run on Windows 7 or 8?

You are correct, this uses the Kinect SDK and currently works on windows 7 and 8. It has been fully tested with both the kinect xbox 360 and kinect for pc. Note though that the installation of the SDK is necessary to use the kinect for xbox, whereas the redistributables are enough for the kinect for pc.

Can u post an exe where we can test the face tracking accuracy?

The accuracy is pretty much the same the one in the kinect samples, which you can try easily at http://www.microsoft.com/en-us/kinectforwindows/.
It is their detection algorithms, although we did use a little bit of magic to animate the mask more gracefully.

like i have a webcam, now cant i check this with some realtime demo ?

Right, this package requires a Kinect device to work.

Yes, I like to see the output of the magic you have put in. If it’s only MS algorithm, I might as well use that. You have mobile, a apk?

I need to know before buying if is compatible with mac os x unity… very impressive by the way

I have kinect for xbox360, will it work with your demo. Or do you have to have kinect for windows.