[Next][Up][Previous]
Next:Resolving OcclusionUp:Virtual Kathakali: Gesture-Driven Previous:Outline

Real Time detection of User's Arm Pose

In the initial pose, the user stands with his arms separated wide apart and the following calibration data are obtained :-

To simplify the image processing costs, the user is required to stand in front of a dark background. This permits image binarization based on a dynamic threshold, set at a point of sharp variation in the intensity histogram. Noise may yet interfere with the robust determination of arm posture, and Gaussian convolution is used to smooth out some of the noise.

The pose of the user's arms at each instant is obtained by identifying the elbow and wrist in the image. The body width is identified based on points of high intensity change in the lower parts of the image. The elbow and wrist are distinguished by different techniques depending on whether the hand is occluding the body (Section 3.1) or not. In the latter case, a fast and simple technique is to locate the extreme points in the image and test if the line joining it to the shoulder is part of the arm or not (Figure 5). Based on this and the initial calibration information, the 3D pose of the arm is estimated based on foreshortening.

Figure 3: Calibration phase. User stands with arms apart. The body width, arm length and arm width are detected. The histogram for the box B (shown below the image) is used to detect body width, and a similar analysis in the region A is used to obtain the skin shade.


 

Figure 4: Resolving Occlusion. The pixel intensity range for the user's skin colour / clothes are used to distinguish parts of the arm that may be occluding the user's body.
 




[Next][Up][Previous]
Next:Resolving OcclusionUp:Virtual Kathakali: Gesture-Driven Previous:Outline