I want to place a camera in front of a glass door. When a user approaches the door, I’d like the camera to detect the person’s face (and get some info from that person such as age group, gender etc…) . Then following a specific hand signal from that user, I want the door to open.
The HandTracker demo that comes with the unity package doesn’t seem to work at all, in that it is not picking up my hands and I cannot seem to interact with the gallery.
Now I’ve read on this forum that Hand tracking seems to be fairly unreliable with Intel cameras, is that true? could that be the cause? all of the other tutorials are working great.
I’m asking because (coming back to the beginning of this post), maybe I should select other joints, such as elbows and wrists which are perhaps more reliable for the purpose of picking up a “swipe left” gesture…
I understand that this post contains 2 separate questions: why is the Handtracker tutorial not working? and should I rely on the Hand tracker at all in the first place?
Would be helpful if you could point me in the right direction.
No idea, maybe some references in scene are lost. Maybe try to follow the tutorial from scratch.
Also no idea, we used to spawn a invisible skeleton for games that only use hands. But we’re going to try to convert this to hand tracker soon. We tried a bit and the hand data does seem verry shaky to say the least. a lot of glitching etc. Just try it out yourself.
Yes, thats what we did before this, but that requires skeletontracker to be enabled when only hands are needed. Thus unnesecary performance loss. also i meant references in the scene which might prevent the handtracker to spawn things/use objects.
The Gallery tutorial should work fine. Please check that you ticked Hand Tracker Module in Nuitrack Manager. Do you see any errors displayed in the Unity log?
As we understand, you need the “swipe” gesture from the Gesture Recognizer Module (you don’t even have to use the Hand Tracker Module to use gestures):
NuitrackManager.onNewGesture += NuitrackManager_onNewGesture;
private void NuitrackManager_onNewGesture(nuitrack.Gesture gesture)
{
if (gesture.Type == nuitrack.GestureType.GestureSwipeLeft)
{
}
if (gesture.Type == nuitrack.GestureType.GestureSwipeRight)
{
}
if (gesture.Type == nuitrack.GestureType.GestureSwipeUp)
{
}
//etc
}
Or you can use the skeleton data from the Skeleton Tracker Module to create your own gestures. You can see the example in our Nuitrack SDK Unity package: see the script GalleryControl.cs. Also don’t forget to tick the Gesture Recognizer Module in Nuitrack Manager.