1. A computer program product, tangibly embodied in a machine readable medium, the computer program product comprising instructions that, when read by a machine, operate to cause data processing apparatus to: receive three dimensional data points describing depth characteristics of a user; define a plane that passes through a torso of the user's body based on the received three dimensional data points; determine a boundary of a hand detection region that has an orientation parallel to the plane and that is defined to be a predetermined distance in front of the plane along an axis that is defined normal to the plane; detect a position of a hand of the user's body within the hand detection region; and control an application based on the detected position of the hand.