CUDA capable graphics card (Link to place where it says which are capable)
Webcam or Machine Vision Camera
CUDA capable GPU with CUDA installed
OpenCV installed and compiled for CUDA (same version that you have installed)
Compilation Instructions
Visual Studio 2015 (others may work)
Set up Environment variables
OPEN_CV_INSTALL_DIR to install directory of opencv
Allows header path finding and prebuild event to copy dlls
Rewrite CameraController.cpp to return a BGR image with imaging device
Modify Arena.props
Modify prebuild events to camera specific DLL’s and headers
Limitations
Skin Detection
Colour gradients caused by different colour lighting from different light sources can cause failures
Fluorescent light is preferred (yellow light and sun light are not good light sources)
Requires face is in image
Multiple Users
If the different users have similarly coloured skin, they will conflict. There is hooks in the software to fix this, but they have not been implemented.
Convexity Analysis (Gesture Recognition)
Hands must be near head level
Hands must be roughly vertical
Gesture Tracking
Gestures must be held for > 500ms at a time within 3 seconds of each other