问题
I would like to be able to keep track of people that enter and exit a premises. Basically when the user approaches the Kinect, it will store his/her facial and skeletal data. Then upon leaving, that data will be removed. For now I am only wondering if this is possible or not with the Microsoft SDK. I have seen videos/demos of the Kinect being able to track people but my goal is to identify them uniquely. Any information will be greatly appreciated.
回答1:
Yes you can save skeleton and face data.... but for what you are doing, it sounds like you only want to save that for the session. Since as soon as they leave, the data will be removed, you can use a Skeleton Tracking ID... or a Indexes
SkeletonFrame sf = e.SkeletonFrame;
//check which skeletons in array are active and
// use that array indexes for player index
SkeletonData player1 = sf.Skeletons[playerIndex1];
SkeletonData player2 = sf.Skeletons[playerIndex2];
You can look to my answer on Kinect user Detection for more information.
回答2:
You may well be able to store skeletal data, but as far as I'm aware the Kinect doesn't have the resolution required for facial recognition (especially if you're going to have it sat in the corner of the room).
There are commercial solutions for 3D face recognition - Cybula, however these solutions typically cost thousands.
I wouldn't know how accurate skeletal data would be - if all your users are the same hight then you might have a few issues. You'd have to work out the tolerance of measurement, and make sure none of your users are within this (which if this is for the general public, might be an issue).
来源:https://stackoverflow.com/questions/11210461/is-it-possible-to-save-a-users-skeleton-and-facial-data-for-recognition-purpose