3D Hand Pose Tracking and Estimation Using Stereo Matching

10/23/2016 ∙ by Jiawei Zhang, et al. ∙ City University of Hong Kong 0

3D hand pose tracking/estimation will be very important in the next generation of human-computer interaction. Most of the currently available algorithms rely on low-cost active depth sensors. However, these sensors can be easily interfered by other active sources and require relatively high power consumption. As a result, they are currently not suitable for outdoor environments and mobile devices. This paper aims at tracking/estimating hand poses using passive stereo which avoids these limitations. A benchmark with 18,000 stereo image pairs and 18,000 depth images captured from different scenarios and the ground-truth 3D positions of palm and finger joints (obtained from the manual label) is thus proposed. This paper demonstrates that the performance of the state-of-the art tracking/estimation algorithms can be maintained with most stereo matching algorithms on the proposed benchmark, as long as the hand segmentation is correct. As a result, a novel stereo-based hand segmentation algorithm specially designed for hand tracking/estimation is proposed. The quantitative evaluation demonstrates that the proposed algorithm is suitable for the state-of-the-art hand pose tracking/estimation algorithms and the tracking quality is comparable to the use of active depth sensors under different challenging scenarios.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 2

page 3

page 4

page 6

page 9

page 10

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Vision-based hand pose tracking and estimation will be essential for the next generation of human-computer interaction (HCI) systems. It is a very challenging problem and has many difficulties including high-dimensional articulated structure, severe self-occlusion and chromatically uniform appearance. Many approaches have been proposed recently [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]. Most of them rely on low-cost active depth sensors to solve the self-occlusion and cluttered background problems. Nevertheless, these sensors have limitations. They can be interfered by other active sources such as the sun and another depth sensor. An active sensor takes measurements by emitting its own source of energy and measuring the environment’s response. The power consumption is thus relatively high and not suitable for mobile devices. On the other hand, passive stereo does not have these limitations. However, its computational cost could be high and the depth estimates are known to be noisy and unstable especially when the scene is lacks of texture. Indeed, most of the indoor scenes contain large textureless regions. These difficulties exclude passive stereo from being adopted in 3D hand pose tracking/estimation.

All available hand pose tracking/estimation data sets [1, 9, 10, 13, 18, 20] are captured with active depth sensors. To evaluate the performance of passive stereo for hand pose tracking and estimation, a new benchmark is proposed in this paper. The data set is simultaneously captured by a Point Grey Bumblebee2 stereo camera and an Intel Real Sense F200 active depth camera. We manually label positions of finger joints and center of palm in depth images. Our benchmark contains six different backgrounds with respect to different difficulties (including texture/textureless, dynamic/static, near/far, highlight/no-highlight, etc.) for hand segmentation or disparity estimation. It is difficult to track hand poses with self-occlusions or global rotations of the hand, and thus we also capture two sequences for every background with respect to two different levels of tracking difficulties. As a result, the proposed benchmark has a total of 12 different sequences and every sequence contains 1,500 stereo pairs from Point Grey Bumblebee2 and 1,500 depth images from Intel F200 depth camera. Each sequence is much longer than existing data sets in order to evaluate the long-term tracking performance.

This paper integrates passive stereo with two state-of-the-art hand pose tracking algorithms [7, 9] for quantitative evaluation. Hand pose tracking is known to be slow. It is a significant advance when Qian et al.[9] demonstrates real-time tracking performance on CPU. [7, 9] are both model-based tracking algorithms which search for the optimal parameters that minimize the discrepancy between hypothesized hand model and observed depth image. [7]

uses a stochastic and evolutionary algorithm named Particle Swarm Optimization (

PSO) [21] to seek the estimation from the high dimensional and non-differentiable discrepancy function. However, PSO converges slowly. On the other hand, articulated Iterative Closest Point (ICP) [22] converges fast but could easily get stuck in the poor local minimal. [9] introduces ICPPSO which takes advantage of the complementary nature of ICP and PSO.

This paper also tests passive stereo for discriminative hand pose estimation. Motivated by the human pose estimation method [23]

, random forest based hand poses estimation and hand parts labelling methods are emerging

[13, 14, 15, 16, 17, 3, 4, 18]. Sun et al.’s Cascaded Hand Pose Regression algorithm (CHPR) [18] is adopted in this paper. CHPR achieves the state-of-the-art estimation accuracy while running at amazing 300fps on a single core CPU. It uses pose indexed features [24] to acquire better geometric invariance and utilizes the articulated structure of hand to hierarchically regress the joint positions of hand to make the algorithm more efficient and robust.

Before hand pose tracking/estimation, the hand region should be segmented. An active depth sensor can provide accurate depth information which simplifies the hand segmentation problem. This is not true in stereo matching and turns out to be the major problem in stereo-based hand tracking/estimation.

Skin color information is very useful in hand segmentation. [25] uses local appearance features to segment hands from ego-centric videos. Real-time performance is very important in hand tracking. As a result, the efficient color-based skin detection algorithms [26, 27, 28, 29]

are preferred. The existing methods train classifiers from a large amount of skin images. For example,

[27]

treats skin color as a Gaussian Mixture Model (GMM) and trains a generic model from the abundance images in World Wide Web. However, the performance is still unsatisfied under unconstrained environments (e.g., different lighting conditions and backgrounds). To adapt to different environments, an online training sequence with waving hand for automatic foreground/background segmentation is captured before hand pose tracking/estimation for every scenario in this paper. The adaptive GMM

[30, 31]

is then used to perform foreground/background segmentation. The skin and non-skin histogram models can then be computed and the skin color probability is used to segment hand from background.

Stereo matching has been studied for decades and a lot of algorithms have been developed. It uses a pair of images to identify the real distance of every pixel through estimating the projection difference on two cameras. [32] separates stereo matching algorithms into two categories: local and global algorithms. Local stereo uses filters for matching cost denoising while global stereo explicitly assumes smoothness in the disparity map and minimizes a global cost function. With the assumption of perfect hand segmentation (obtained from manual segmentation), this paper quantitatively evaluates the performance of the state-of-the-art hand pose tracking algorithms using different stereo matching algorithms. Experiments on different local [33, 34, 35, 36, 37, 38] and global [39, 40] stereo matching methods with different matching costs [41, 42, 43] are conducted. Our experimental results show that the performances of most of the stereo matching methods are comparable to the active depth sensors when the correct hand segmentation is available.

However, the traditional passive stereo is much more unstable and noisy than the active sensors in practice. A new stereo algorithm is then proposed for hand tracking. The skin color probability from the online-trained skin color model is used as the guidance of the guided image filter [36] for matching cost aggregation to increase the robustness around textureless regions. On the other hand, some background regions may have a similar color to skin and thus have high skin probability. Thus a robust hand segmentation method is proposed by using confidence-guided combination of color based hand detection and depth from stereo matching. The experiment results show that the proposed stereo algorithm significantly improves the hand tracking performance. However, it is specially designed for 3D hand pose tracking and may be not suitable for other 3D applications.

The major technical contribution of this paper resides in the proposed stereo-based hand segmentation method Sec. IV-B. It is indeed a bit similar to traditional sensor fusion works like [44, 45]: an efficient and effective information fusion method but specially designed for 3D hand tracking. Unlike traditional sensor fusion aiming at maintaining the accuracy from all sensors, the proposed method explores how to extract a good hand segmentation by combining the skin color model with passive stereo. This is quite different from the previous works.

The contributions of this paper are summarized as follows:

  1. a hand pose benchmark with 18,000 stereo image pairs and 18,000 depth images with the ground-truth 3D positions of palm and finger joints;

  2. an evidence that commercial passive stereo cameras’ performance is comparable to active depth cameras when used for hand pose tracking and estimation;

  3. an evidence that the state-of-the-art hand tracking and estimation methods [7, 9, 18] are robust to passive stereo; and

  4. a robust stereo-based hand segmentation method specially designed for 3D hand pose tracking and estimation.

Ii Stereo-based hand tracking benchmark

B1 B2 B3 B4 B5 B6
static/dynamic static static static dynamic dynamic dynamic
far/near near far near far far far
note
rich in
texture
contain
highlight
TABLE I: Background characteristics in the proposed benchmark.
(a) B1 (b) B2 (c) B3
(d) B4 (e) B5 (f) B6
Fig. 1: Six different backgrounds are adopted in the proposed benchmark.

(a)Counting

(b)Random

Fig. 2: Two different types of hand poses are adopted in the proposed benchmark: (a) counting/simple and (b) random/difficult poses.

As shown in Fig.1, the proposed benchmark contains sequences with 6 different backgrounds to evaluate stereo-based hand pose tracking/estimation difficulties in real-world scenarios.

The characteristics of the adopted backgrounds are summarized in Table.I. Most of the indoor backgrounds are textureless which significantly increase the difficulty for passive stereo. Potential highlight and shadow are also quite challenging for both stereo matching and skin color modeling. In addition to static backgrounds, we also capture six sequences with dynamic backgrounds including PowerPoint presentation (B4), video playing (B5) and people walking (B6). If the background is close to the foreground (hand), the depth difference between them is relatively small and thus contributes difficulties for stereo-based hand segmentation. To adapt to different environments, a training sequence is captured for every background and used for online skin color model training.

Since self-occlusion and global rotation are two major challenges in 3D hand pose tracking, we capture two sequences for every background with two different poses as shown in Fig.2. The first sequence captures simple counting poses with slowly moving fingers as can be seen from Fig.2 (a). The other sequence is supposed to be much more difficult for hand pose tracking. The hand/fingers move randomly with severe self-occlusions and global rotations as shown in Fig.2 (b). It is also difficult for a real-time stereo matching algorithm to obtain highly-accurate disparity estimates around slanted fingers and palm in this sequence. Counting and random poses are designed to be similar for all the six different backgrounds to ensure a fair comparison.

For quantitative comparison, the stereo and depth images are captured from a Point Grey Bumblebee2 stereo camera and an Intel Real Sense F200 active depth camera simultaneously. Camera calibration[46] is performed in advance to obtain the intrinsic and extrinsic parameters of the cameras. The ground-truth positions of finger joints and palm centers are obtained from manual labeling. Each sequence contains 1,500 frames. It is longer than the other 3D hand pose tracking/estimation data sets and our benchmark has a total of 12 sequences.

(a) (b) ICPPSO [9] (c)PSO [7]
Different matching costs Different cost aggregations & disparity optimizations
Fig. 3: Percentage of all joints that have a maximum error less than x mm (where x starts from 20) for different stereo matching algorithms with manually labeled hand mask. (a) is the percentages with respect to different types of matching cost. The best cost aggregation or disparity optimization methods are adopted for all the sequences in this experiment. Note that Census transform[43] (which corresponds to the green curves) outperforms the others on average. (b) and (c) are the percentages with respect to different cost aggregation and disparity optimization methods when Census transform is adopted for matching cost computation. (b) is obtained from ICPPSO [9] and (c) is from PSO [7] algorithms. The dark curves in (a)-(c) represent the percentages obtained with an active depth camera (F200). As can be seen from (b)-(c), the performance of active depth camera is close to most cost aggregation or disparity optimization methods.

Iii Tracking with manual hand segmentation

This section demonstrates that the performance of the state-of-the-art hand pose tracking algorithms can be maintained with most stereo matching algorithms on the proposed benchmark, as long as the hand segmentation is correct.

[32] divides stereo matching into four steps: matching cost computation, cost aggregation, disparity optimization and disparity refinement. In this section, four different matching costs including color difference [41], Census transform [43], a linear combination of color difference and image gradient difference, a linear combination of color difference and Census transform are tested. Local stereo is focused on cost aggregation for matching cost denoising. Six local stereo methods with respect to six filters including box filter, recursive filter [33], Gaussian filter, tree filter [38], bilateral filter [35] and guided image filter [36] are tested. Global stereo is focused on disparity optimization. Two global stereo methods including Belief Propagation (BP) [39] and Dynamic Programming (DP) [40] are also tested. By combining different matching costs with cost aggregation or disparity optimization, we evaluate a total of 32 different stereo methods. The parameters of each method are trained on the Middlebury Stereo data set [47].

Both PSO [7] and ICPPSO [9] hand pose tracking algorithms are stochastic algorithms, and thus every sequence is tested five times to reduce randomness. An initial hand segment (in the color image) is obtained automatically from active depth sensor followed by manual refinement. The manual refinement is completed by a group of students and it takes over one week. As a result, correct hand segmentation is guaranteed in this experiment.

Same as the other 3D hand pose tracking methods, the percentages of all estimated joints (including palm center, 15 finger joints and 5 finger tips) that have a max-error less than a threshold are used to evaluate the tracking performance. Error thresholds from 20mm to 50mm222According to [1], max-error of 20mm is close to human accuracy for nearby hands and 50mm is a roughly correct pose. are adopted in all the conducted experiments in this paper and the percentages of all estimated joints are presented in Fig.3.

As can be seen from Fig.3(a), the use of color difference as the matching cost has the lowest performance mainly because it is not robust to the inconsistent responses from two different sensors. Meanwhile, Census transform [43] is invariant to illumination changes and outperforms the other types of matching cost on average on the proposed real-world benchmark. Fig.3(b)-(c) show that most cost aggregation and disparity optimization methods have similar performance. Note that manually-segmented hand masks are used in all these experiments. Fig.3(b)-(c) show that dark curves are very close to the others which indeed demonstrates that the hand region reconstruction accuracy of most stereo algorithms is comparable to the adopted active depth camera, as long as the hand is segmented correctly.

Fig.3(b)-(c) also show that ICPPSO has a higher performance than PSO. This is because PSO converges slower than ICPPSO. However, ICP is not robust to depth noises and thus ICPPSO has a lower performance when DP is adopted as the disparity optimization method (blue dashed curves).

This section concludes that when used for 3D hand tracking, the performance of passive stereo is comparable to that of active depth sensor (dark curves in Fig.3), as long as the hand can be segmented correctly.

Iv Stereo-based hand pose tracking and estimation

Fig. 4: Framework of the proposed stereo based 3D hand pose tracking/estimation method.

This section presents the details on the proposed stereo based hand pose tracking/estimation method. The framework is summarized in Fig.4. To adapt to different environments, a training sequence is captured for online training of an adaptive skin color model before hand pose tracking/estimation. During hand pose tracking/estimation, the depth is estimated from a passive stereo. However, traditional stereo matching algorithms are unstable and thus the depth estimates are noisy. A novel constrained stereo matching algorithm specially designed for hand pose tracking/estimation is thus proposed in Sec. IV-B. The hand region can then be segmented according to the depth estimates and trained skin color model.

Iv-a Training based hand modeling

As discussed above, hand segmentation should be performed before 3D hand pose tracking/estimation. Unlike the hand segmentation methods adopted with active depth cameras, it is hard to obtain accurate depth from passive stereo. Hand segmentation from color is difficult. Some of the background colors could be similar to skin. In addition, skin color may also vary under different lighting conditions. It is impossible to construct a generic color model which is suitable for all scenarios.

To address these problems, an online training based skin color detector is proposed. A training sequence is captured just before hand pose tracking/estimation. Real-time background modeling methods like adaptive GMM [30, 31] is adopted to segment foreground object (which we assume to be the hand) from the background. The hand should keep waving (for a few seconds) in the training sequence otherwise it cannot be detected as the foreground. This additional training step is reasonable in practice comparing to the other 3D hand tracking methods. For instance, [7] also requires users to manually fit an initial pose before tracking.

After foreground segmentation, the foreground objects are assumed to be the hand which have a specific skin color. The color histogram for the hands and the histogram for all the images in the training video sequence are computed. This paper adopts the likelihood ratio approach presented in [27] and uses a threshold for skin color detection. Specifically, the following skin color probability

(1)

is used to obtain an initial hand segmentation from the color images where represents a color candidate.

Fig.5 (b)-(c) compares the skin color probability from [27] and the training method proposed in this section. Different from the proposed method, the generic skin color model in [27] is trained by plenty of images from World Wide Web. Fig.5 (b)-(c) show that the proposed model can better separate skin region from the other objects while [27] is more ambiguous especially for red backgrounds. It is simply because the generic skin color model in [27] is trained from a large amount of images, and thus it treats more objects/colors as skin (e.g., B1, B2, B3 and B6 in Fig.5 (b)). However, skin colors normally only dominate a small region in the color space for a specific scenario. The generic skin color model [27] provides unsatisfied skin detection result in dark environments like B4. It is likely because this type of lighting condition never or seldom appears in its training data set. As a result, generic skin color model assigns very low skin probability to shadows (on the hand). But shadows indeed frequently appear especially for slanted/close hands (e.g., B1 and B3 in Fig.5 (b)). The proposed hand detector is more robust than [27] mainly because a specific skin color model is trained for every individual scenario. B5 in Fig.5 (b) shows that the hand probability from the proposed method is relatively high in the background. It is because to ensure real-time performance, adaptive GMM background modeling is adopted, and thus the foreground segmentation quality is not very high especially when the background objects have fast motions like B5. However, this problem could be solved with the depth information as shown in Fig.5 (e)(g)(h). The details will be presented in the following subsections.

B1

B2

B3

B4

B5

B6

(a)color (b)[27] (c)proposed (d)traditional (e)proposed (f)Meshstereo (g)Eq.(4): (h)segmented
stereo stereo [48] disparity
Fig. 5: Intermediate results of the proposed hand tracking/estimation framework. (a) presents the reference color image. (b)-(c) are the skin probability maps obtained from the generic GMM skin color model[27] and the proposed skin color model, respectively. (d) is the disparity maps obtained from a traditional local stereo method with Census transform as the matching cost and guided image filter for cost aggregation. (e) is the disparity maps obtained from the stereo matching algorithm proposed in Sec. IV-B. (f) is the disparity maps obtained from Meshstereo[48] which is very slow but the top stereo matching method on Middlebury benchmark (without training). The source code (with the default parameters) published by the authors are used. (g) is the hand probability obtained from the hand segmentation method proposed in Sec. IV-C. (h) is the segmented hand regions with the estimated disparities.

Iv-B Constrained stereo matching

A traditional stereo matching algorithm does not make any specific assumption on the scene to be captured. It performs well on textured/synthetic scenes as shown in the first row in Fig.5 (d). However, its performance may drop dramatically in a real-world indoor environment where most of the objects contain large textureless regions as can be seen from the last two rows in Fig.5 (d).

However, a traditional stereo matching algorithm is not required in this paper. As has been demonstrated in Sec.III, most of the existing stereo algorithms perform well when the hand segmentation is correct. This means that the objective stereo algorithm only needs to maintain (i) the depth accuracy of the hand and (ii) a clear depth difference between the hand and the background objects. Unlike the traditional stereo algorithm, the objective stereo algorithm does not require high depth accuracy on these objects as long as the estimated depth is sufficiently far away from the hand. This is similar to the use of short-range active depth sensors. They cannot measure background objects if they are out of the range but they still perform well because these background objects can be directly ignored.

An integrated stereo matching is proposed in this section. It is specially designed for 3D hand tracking with the assumption that the hand skin is visible. The occluded pixels are detected using the left-right consistency check and the unstable pixels (due to lack of texture, specularity, etc.) are detected based on matching cost confidence [49]. Matching cost confidence is used to measure how distinct the best peak is. Let denotes the original matching cost at pixel , and and denote the matching cost for the best and second best disparity/depth values, respectively. The cost confidence is defined as . If it is under 0.04, pixel is declared unstable.

Let denote a depth/disparity candidate, a new matching cost at pixel that excludes the contribution of occlusions is computed as follows:

(2)

Instead of the reference color image, the skin probability estimated from the model proposed in Sec. IV-A is used as the guidance image for cost aggregation on the new matching cost and let denote the aggregated cost at . As shown in Fig.5(c), most of the non-skin regions are very dark and thus the guidance image filter kernel is very large around those regions. As a result, the corresponding aggregated cost values are quite stable inside these regions. Let denote the depth obtained from (using the traditional winner-take-all strategy). is normally over-smoothed around non-skin regions due to the adoption of the large filter kernel. However, as analyzed at the beginning of this subsection, the depth accuracy requirement is low on non-skin regions.

Additionally, is the intermediate depth estimation but not the final result. It is only used to adjust the original matching cost:

(3)

is the original matching cost, and are two constants determining the contribution of the intermediate depth for occluded and other unstable pixels respectively.

The new matching cost is filtered using guided image filter [36] with the reference color as the guidance to compute the final depth/disparity map in Fig.5(e). Note that most of the noisy depth estimated in Fig.5(d) are removed from Fig.5(e) although the background depth is slightly over-smooth. However, the depth accuracy on the hand region is well-preserved because the filter kernel is relatively small when cost aggregation is performed on and the pixels inside the hand region are mostly stable pixels. But it should be noted that the stereo matching proposed in this section is specially designed for 3D hand pose tracking and may be not suitable for other 3D applications.

Although the state-of-the-art stereo methods like Meshstereo may also produce “clean” backgrounds as can be seen from Fig.5 (f), it is very slow and the performance around the hand region is obviously lower than the proposed method.

Iv-C Hand segmentation

In this paper, a pixel is inside the hand region if its skin color probability (obtained from Eq.1) is high and its depth is close to the hand depth in the previous frame. Under this assumption, a hand probability for each pixel can be defined as

(4)

where

is a Gaussian distribution. The mean

is the average hand depth in the previous frame and the standard deviation

is fixed to 150mm in all the conducted experiments. Finally, a pixel is assumed to be inside the hand region if .

Some hand segmentation results with disparities are presented in Fig.5(h). When the background is highly-textured (e.g., B1), the disparity from traditional stereo is sufficiently accurate. However, applying traditional stereo on B6 results in many disparity noises in the background due to the lack of texture. The constrained stereo matching algorithm proposed in Sec. IV-B can obtain globally-smooth (although may not be very accurate) disparity estimates in the background region and thus is very useful in hand segmentation. For some specific backgrounds like B5, although trained skin color model is not good enough (mainly due to incorrect foreground/background segmentation during training), accurate hand segmentation could still be obtained with the help of the disparity estimates from the proposed stereo matching algorithm.

V Experiments

(a)Tracking: PSO[7] (b)Tracking: ICPPSO[9] (c)Estimation: CHPR[18]
Fig. 6: Average percentage of all joints that have an maximum error less than x mm (where x starts from 20) under six different backgrounds. The first row presents the tracking/estimation results on simple counting poses while the second row presents difficult random poses. (a)-(c) are the results obtained from two tracking and one estimation algorithms. The red curves are obtained from Intel F200 which is an active depth camera. Note that the performance is the highest on average. The green and blue curves are obtained from the stereo matching and hand segmentation method proposed in Sec. IV and the traditional local stereo method with manual hand segmentation results. Note that the green and blue curves are very close to each other and are comparable to the red curves (which represent the performance of an active depth sensor). The brown curves are obtained from proposed stereo matching method with generic skin color model [27]. Brown curves do not consider B4 and B6 since the generic skin color model completely fails on these video sequences. The pink curves are from Meshstereo [48] with proposed color model. B2 is not considered in Meshstereo as the quality of the estimated hand disparities is too low for the adopted hand tracking/estimation algorithms. See text for details. Evaluation on individual background is presented in the Fig.7.
Fig. 7: Percentage of all joints that have an maximum error less than x mm under different scenarios by PSO [7], ICPPSO [9] and CHPR [18]. The red curves are obtained from Intel F200 which is an active depth camera. The green and blue curves are obtained from the stereo matching with hand segmentation method proposed in Sec. IV and the traditional local stereo method with manual hand segmentation. The dark curves are obtained from the traditional local stereo with the proposed hand segmentation. The brown curves are obtained from proposed stereo matching method with generic skin color model [27]. Brown curves are not plotted for B4 and B6 since the generic skin color model completely fails on these video sequences. The pink curves are from Meshstereo [48] with proposed color model. Meshstereo was ignored in B2 as the quality of the estimated hand disparities is too low for the adopted hand tracking/estimation algorithms.

(a)Color

(b)Hand

disparities

(c)[7]

PSO

(d)[9]

ICPPSO

(e)[18]

CHPR

B1 B2 B3 B4 B5 B6
Fig. 8: (c)-(e) present hand pose models estimated from the proposed method with different tracking/estimation algorithms[7, 9, 18], respectively. Note that they are visually consistent with the segmented hands in (b) and the color images in (a) under different backgrounds.

This section presents quantitative and visual comparison on hand pose tracking and estimation using both active depth camera and the proposed passive stereo system. It demonstrates that passive stereo can achieve tracking/estimation performance comparable to the active depth camera on challenging real-world scenarios.

The stereo matching algorithm proposed in Sec. IV-B is indeed a local stereo method that uses Census transform for matching cost computation and the guided image filter for cost aggregation. As a result, it is also compared with the traditional local stereo algorithm that adopts the same matching cost and cost aggregation method. Besides 3D hand tracking, this paper also tests passive stereo for the state-of-the-art discriminative hand pose estimation[18]. The regression model is trained from the sequences in five of the backgrounds and tests in the remaining one.

The percentages of all joints that have a maximum error less than a threshold are computed for every sequence in Fig.7 in which columns are for different backgrounds and rows are for different poses and tracking/estimation methods [7, 9, 18]. In order to easier compare different stereo matching methods and hand segmentations, the average percentages over different backgrounds are plotted in Fig.6. The two rows in Fig.6 present the performance on simple counting and difficult random hand poses, respectively.

The red, green and blue curves in Fig.6 are obtained from Intel F200 active depth camera, the proposed stereo with the proposed hand segmentation method, and the traditional local stereo method with manual hand segmentation, respectively. As can be seen from every subfigure of Fig.6, these three curves are very close to each other and the red curves (which correspond to the active depth camera) is the highest on average. This demonstrates that passive stereo is also suitable for 3D hand pose tracking and estimation as its performance is indeed comparable to the active depth cameras. The blue curves in Fig.6 (c) can be even lower than the green curves because the hand disparities estimated from the proposed stereo matching method are normally better than the traditional stereo method although the manual hand segmentation is more robust than the proposed hand segmentation method.

The dark curves are obtained from the traditional local stereo method with the proposed hand segmentation method. According to Fig.6, it is normally much lower than the proposed stereo method (green curves) since it cannot provide accurate hand mask which leads to less accurate hand pose tracking/estimation. This quantitatively demonstrates that the proposed stereo method has a much higher performance than the traditional stereo methods when used for 3D hand pose tracking/estimation. Besides tracking accuracy, PSO converges slowly especially in random pose sequences which contain large global rotations. These are two major reasons that PSO fails to track hand poses in random pose sequences with traditional stereo. From Fig.7, ICPPSO cannot track hand poses in B3, B4 and B5 for both counting and random poses with traditional stereo since skin color model is not as accurate as the rest sequences (see Fig.5

(c)) and ICP is not robust to inaccurate hand depth. CHPR cannot perform well with traditional stereo since the features extracted from inaccurate hand depth (getting from hand disparity) are also inaccurate.

The brown curves are obtained from the proposed stereo method with generic skin color model[27] for hand detection in both Fig.6 (average percentage) and Fig.7 (individual percentage). They exclude the video sequences captured with B4 and B6 backgrounds as the generic skin color model is completely fail on these video sequences and cannot detect the hand region. Brown curves are relatively lower than the green curves and it demonstrates the effectiveness of the proposed hand segmentation method. With generic skin color model, PSO has poor performance in random pose sequences. The reason is similar to PSO in traditional stereo matching with proposed hand segmentation. ICPPSO can work well for counting pose except for B3 with specularity regions in background (third row of Fig.5 (b)). The generic color model treats specularity as skin and stereo matching cannot estimate correct disparity in specularity regions. The disparities in specularity regions influence ICP which is the reason ICPPSO has poor performance for B3 counting pose. In the random pose, ICPPSO cannot work well for B1 since the shadow is too dark in hand when it faces downward and generic color model doesn’t treat it as a hand. Also, ICP is not robust in this scenario. CHPR has comparable estimation performance with proposed stereo only in B5 since generic color model works well in B5 (fifth row of Fig.5 (b)) and the hand disparity is noisy in the rest backgrounds.

Meshstereo [48], which is the state-of-the-art stereo algorithm on Middlebury benchmark, is also numerically compared with the proposed stereo for hand pose tracking/estimation in Fig.6 and Fig.7. Background B2 is ignored because Meshstereo gives very bad disparity estimates around the hand region with author published source code and default parameters. The adopted hand tracking/estimation algorithms do not work in this case. For the other backgrounds, the tracking/estimation performance (presented as the pink curves) is much worse than the proposed stereo. Apparently, Meshstereo is not suitable for 3D hand pose tracking/estimation.

The hand pose models estimated from different 3D hand pose tracking/estimation methods are visualized in Fig.8(c)-(e). They visually agree with the segmented hand disparity maps in Fig.8(b) under different backgrounds in Fig.8(a).

From the experiments conducted in this section, we can conclude that when used for 3D hand tracking,

  • the performance of passive stereo is low without correct hand segmentation;

  • the performance of the proposed stereo matching method is close to active depth cameras.

Vi Conclusions

In this paper, a benchmark for evaluating hand pose tracking/estimation algorithms on passive stereo is developed. Unlike existing benchmarks, it contains both stereo images from a binocular stereo camera and depth images captured from an active depth camera. It has a total of 12 video sequences. Each sequence has 1,500 frames and thus can be used for long-term tracking evaluation. A novel stereo-based hand segmentation algorithm specially designed for hand tracking/estimation is proposed and the performance is demonstrated to be comparable to the active depth cameras under different challenging indoor scenarios. We also captured several sequences for outdoor hand pose tracking/estimation. It is difficult to obtain the ground truth labeling (because active depth sensor cannot work well under outdoor environment), and thus we do not show the quantitative performance of outdoor scenario in this paper. We will investigate into this labeling problem in the near future.

The accuracy of passive stereo could drop dramatically under bad lighting environments. In this case, stereo matching noise is consequentially higher which results in lower-quality disparity estimates. Such a failure case is presented in Fig.9. No single global exposure can preserve both the colors of the outdoor scene and the details of the indoor object in Fig.9(a)-(b). The foreground indoor objects (including the hand and the arm) are too dark and thus lack of textures. Passive stereo is known to be vulnerable to this problem due to high-level matching noise. The disparity map estimated from the proposed method is shown in Fig.9 (c)-(d). Note that the depth details/contrast in (d) are missing. We have not yet found a good solution except for installing LED lights on the camera.

(a) Color (b) Close-up of (a)
(c) Proposed stereo (d) Close-up of (c)
Fig. 9: A failure case due to bad lighting condition.

References

  • [1] J. S. Supancic III, G. Rogez, Y. Yang, J. Shotton, and D. Ramanan, “Depth-based hand pose estimation: methods, data, and challenges,” ICCV, 2015.
  • [2] M. Oberweger, P. Wohlhart, and V. Lepetit, “Training a feedback loop for hand pose estimation,” in

    Proceedings of the IEEE International Conference on Computer Vision

    , 2015, pp. 3316–3324.
  • [3] D. Tang, J. Taylor, P. Kohli, C. Keskin, T.-K. Kim, and J. Shotton, “Opening the black box: Hierarchical sampling optimization for estimating human hand pose,” in Proceedings of the IEEE International Conference on Computer Vision, 2015, pp. 3325–3333.
  • [4] P. Li, H. Ling, X. Li, and C. Liao, “3d hand pose estimation using randomized decision forest with segmentation index points,” in Proceedings of the IEEE International Conference on Computer Vision, 2015, pp. 819–827.
  • [5] T. Sharp, C. Keskin, D. Robertson, J. Taylor, J. Shotton, D. Kim, C. Rhemann, I. Leichter, A. Vinnikov, Y. Wei et al., “Accurate, robust, and flexible real-time hand tracking,” in Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems.   ACM, 2015, pp. 3633–3642.
  • [6] I. Oikonomidis, N. Kyriazis, and A. A. Argyros, “Markerless and efficient 26-dof hand pose recovery,” in Computer Vision–ACCV 2010.   Springer, 2011, pp. 744–757.
  • [7] I. Oikonomidis, N. Kyriazis, and A. A. Argyros, “Efficient model-based 3d tracking of hand articulations using kinect.” in BMVC, vol. 1, no. 2, 2011, p. 3.
  • [8] I. Oikonomidis, M. Lourakis, A. Argyros et al., “Evolutionary quasi-random search for hand articulations tracking,” in

    Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on

    .   IEEE, 2014, pp. 3422–3429.
  • [9] C. Qian, X. Sun, Y. Wei, X. Tang, and J. Sun, “Realtime and robust hand tracking from depth,” in Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on.   IEEE, 2014, pp. 1106–1113.
  • [10] S. Sridhar, A. Oulasvirta, and C. Theobalt, “Interactive markerless articulated hand motion tracking using rgb and depth data,” in Computer Vision (ICCV), 2013 IEEE International Conference on.   IEEE, 2013, pp. 2456–2463.
  • [11] S. Sridhar, H. Rhodin, H.-P. Seidel, A. Oulasvirta, and C. Theobalt, “Real-time hand tracking using a sum of anisotropic gaussians model,” in 3D Vision (3DV), 2014 2nd International Conference on, vol. 1.   IEEE, 2014, pp. 319–326.
  • [12] S. Sridhar, F. Mueller, A. Oulasvirta, and C. Theobalt, “Fast and robust hand tracking using detection-guided optimization,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015, pp. 3213–3221.
  • [13] D. Tang, T.-H. Yu, and T.-K. Kim, “Real-time articulated hand pose estimation using semi-supervised transductive regression forests,” in Computer Vision (ICCV), 2013 IEEE International Conference on.   IEEE, 2013, pp. 3224–3231.
  • [14] C. Xu and L. Cheng, “Efficient hand pose estimation from a single depth image,” in Computer Vision (ICCV), 2013 IEEE International Conference on.   IEEE, 2013, pp. 3456–3462.
  • [15] D. Tang, H. J. Chang, A. Tejani, and T.-K. Kim, “Latent regression forest: Structured estimation of 3d articulated hand posture,” in Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on.   IEEE, 2014, pp. 3786–3793.
  • [16] F. Kirac, Y. E. Kara, and L. Akarun, “Hierarchically constrained 3d hand pose estimation using regression forests from single frame depth data,” Pattern Recognition Letters, vol. 50, pp. 91–100, 2014.
  • [17] H. Liang, J. Yuan, and D. Thalmann, “Parsing the hand in depth images,” Multimedia, IEEE Transactions on, vol. 16, no. 5, pp. 1241–1253, 2014.
  • [18] X. Sun, Y. Wei, S. Liang, X. Tang, and J. Sun, “Cascaded hand pose regression,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015, pp. 824–832.
  • [19] B. Stenger, A. Thayananthan, P. H. Torr, and R. Cipolla, “Model-based hand tracking using a hierarchical bayesian filter,” Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 28, no. 9, pp. 1372–1384, 2006.
  • [20] J. Tompson, M. Stein, Y. Lecun, and K. Perlin, “Real-time continuous pose recovery of human hands using convolutional networks,” ACM Transactions on Graphics (TOG), vol. 33, no. 5, p. 169, 2014.
  • [21] J. Kennedy, “Particle swarm optimization,” in

    Encyclopedia of Machine Learning

    .   Springer, 2010, pp. 760–766.
  • [22] S. Pellegrini, K. Schindler, and D. Nardi, “A generalisation of the icp algorithm for articulated bodies.” in BMVC, vol. 3.   Citeseer, 2008, p. 4.
  • [23] J. Shotton, T. Sharp, A. Kipman, A. Fitzgibbon, M. Finocchio, A. Blake, M. Cook, and R. Moore, “Real-time human pose recognition in parts from single depth images,” Communications of the ACM, vol. 56, no. 1, pp. 116–124, 2013.
  • [24] P. Dollár, P. Welinder, and P. Perona, “Cascaded pose regression,” in Computer Vision and Pattern Recognition (CVPR), 2010 IEEE Conference on.   IEEE, 2010, pp. 1078–1085.
  • [25] C. Li and K. M. Kitani, “Pixel-level hand detection in ego-centric videos,” in Computer Vision and Pattern Recognition (CVPR), 2013 IEEE Conference on.   IEEE, 2013, pp. 3570–3577.
  • [26] J.-C. Terrillon, M. N. Shirazi, H. Fukamachi, and S. Akamatsu, “Comparative performance of different skin chrominance models and chrominance spaces for the automatic detection of human faces in color images,” in Automatic Face and Gesture Recognition, 2000. Proceedings. Fourth IEEE International Conference on.   IEEE, 2000, pp. 54–61.
  • [27] M. J. Jones and J. M. Rehg, “Statistical color models with application to skin detection,” International Journal of Computer Vision, vol. 46, no. 1, pp. 81–96, 2002.
  • [28] V. Vezhnevets, V. Sazonov, and A. Andreeva, “A survey on pixel-based skin color detection techniques,” in Proc. Graphicon, vol. 3.   Moscow, Russia, 2003, pp. 85–92.
  • [29] P. Kakumanu, S. Makrogiannis, and N. Bourbakis, “A survey of skin-color modeling and detection methods,” Pattern recognition, vol. 40, no. 3, pp. 1106–1122, 2007.
  • [30] C. Stauffer and W. E. L. Grimson, “Adaptive background mixture models for real-time tracking,” in Computer Vision and Pattern Recognition, 1999. IEEE Computer Society Conference on., vol. 2.   IEEE, 1999.
  • [31] Z. Zivkovic, “Improved adaptive gaussian mixture model for background subtraction,” in Pattern Recognition, 2004. ICPR 2004. Proceedings of the 17th International Conference on, vol. 2.   IEEE, 2004, pp. 28–31.
  • [32] D. Scharstein and R. Szeliski, “A taxonomy and evaluation of dense two-frame stereo correspondence algorithms,” International journal of computer vision, vol. 47, no. 1-3, pp. 7–42, 2002.
  • [33] R. Deriche, “Recursively implementating the Gaussian and its derivatives,” INRIA, Research Report RR-1893, 1993. [Online]. Available: https://hal.inria.fr/inria-00074778
  • [34] K.-J. Yoon and I. S. Kweon, “Adaptive support-weight approach for correspondence search,” IEEE Transactions on Pattern Analysis & Machine Intelligence, no. 4, pp. 650–656, 2006.
  • [35] C. Tomasi and R. Manduchi, “Bilateral filtering for gray and color images,” in Computer Vision, 1998. Sixth International Conference on.   IEEE, 1998, pp. 839–846.
  • [36] K. He, J. Sun, and X. Tang, “Guided image filtering,” Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 35, no. 6, pp. 1397–1409, 2013.
  • [37] Q. Yang, “Recursive approximation of the bilateral filter.” IEEE transactions on image processing: a publication of the IEEE Signal Processing Society, vol. 24, no. 6, pp. 1919–1927, 2015.
  • [38] Q. Yang, “A non-local cost aggregation method for stereo matching,” in Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on.   IEEE, 2012, pp. 1402–1409.
  • [39] J. Sun, N.-N. Zheng, and H.-Y. Shum, “Stereo matching using belief propagation,” Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 25, no. 7, pp. 787–800, 2003.
  • [40] A. F. Bobick and S. S. Intille, “Large occlusion stereo,” International Journal of Computer Vision, vol. 33, no. 3, pp. 181–200, 1999.
  • [41] T. Kanade, H. Kano, S. Kimura, A. Yoshida, and K. Oda, “Development of a video-rate stereo machine,” in Intelligent Robots and Systems 95.’Human Robot Interaction and Cooperative Robots’, Proceedings. 1995 IEEE/RSJ International Conference on, vol. 3.   IEEE, 1995, pp. 95–100.
  • [42] D. Scharstein, “Matching images by comparing their gradient fields,” in Pattern Recognition, 1994. Vol. 1-Conference A: Computer Vision & Image Processing., Proceedings of the 12th IAPR International Conference on, vol. 1.   IEEE, 1994, pp. 572–575.
  • [43] R. Zabih and J. Woodfill, “Non-parametric local transforms for computing visual correspondence,” in Computer Vision ECCV’94.   Springer, 1994, pp. 151–158.
  • [44]

    Q. Yang, R. Yang, J. Davis, and D. Nistér, “Spatial-depth super resolution for range images,” in

    Computer Vision and Pattern Recognition, 2007. CVPR’07. IEEE Conference on.   IEEE, 2007, pp. 1–8.
  • [45] J. Zhu, L. Wang, R. Yang, and J. Davis, “Fusion of time-of-flight depth and stereo for high accuracy depth maps,” in Computer Vision and Pattern Recognition, 2008. CVPR 2008. IEEE Conference on.   IEEE, 2008, pp. 1–8.
  • [46] J.-Y. Bouguet, “Camera calibration toolbox for matlab,” 2004.
  • [47] D. Scharstein, R. Szeliski, C. Pal, and H. Hirschmüller, “Middlebury stereo datasets,” 2006.
  • [48]

    C. Zhang, Z. Li, Y. Cheng, R. Cai, H. Chao, and Y. Rui, “Meshstereo: A global stereo model with mesh alignment regularization for view interpolation,” in

    Proceedings of the IEEE International Conference on Computer Vision, 2015, pp. 2057–2065.
  • [49] G. Egnal, M. Mintz, and R. P. Wildes, “A stereo confidence metric using single view imagery with comparison to five alternative approaches,” Image and vision computing, vol. 22, no. 12, pp. 943–957, 2004.