Papers
Topics
Authors
Recent
Search
2000 character limit reached

Anthropometric clothing measurements from 3D body scans

Published 2 Nov 2019 in cs.CV and cs.LG | (1911.00694v1)

Abstract: We propose a full processing pipeline to acquire anthropometric measurements from 3D measurements. The first stage of our pipeline is a commercial point cloud scanner. In the second stage, a pre-defined body model is fitted to the captured point cloud. We have generated one male and one female model from the SMPL library. The fitting process is based on non-rigid Iterative Closest Point (ICP) algorithm that minimizes overall energy of point distance and local stiffness energy terms. In the third stage, we measure multiple circumference paths on the fitted model surface and use a non-linear regressor to provide the final estimates of anthropometric measurements. We scanned 194 male and 181 female subjects and the proposed pipeline provides mean absolute errors from 2.5 mm to 16.0 mm depending on the anthropometric measurement.

Citations (36)

Summary

  • The paper introduces a pipeline using non-rigid ICP registration and non-linear regression on circumference path features from a fitted SMPL model to estimate anthropometric measurements from 3D body scans.
  • Evaluated on the 375-subject NOMO3D dataset, the pipeline achieved mean absolute errors for different measurements ranging from 2.5 mm to 16.0 mm.
  • Key findings include the superiority of multi-path regression, the strong performance of non-linear SVR, and the creation of the public NOMO3D benchmark dataset.

The paper introduces a pipeline for estimating anthropometric measurements from 3D body scans using non-rigid Iterative Closest Point (ICP) registration and non-linear regression. The approach leverages a commercial 3D scanner to capture point clouds of subjects, which are then registered to a pre-defined body model from the SMPL (Skinned Multi-Person Linear Model) library. Surface circumference paths are extracted from the fitted model, and a non-linear regressor estimates the anthropometric measurements.

The primary contributions include:

  • A complete pipeline from 3D body scans to anthropometric measurements.
  • Body model registration using non-rigid ICP to fit a pre-defined model to captured body scans.
  • Anthropometric measurement estimation from circumference-based intermediate features using non-linear regression.
  • A public benchmark dataset, namely NOMO3D, with anthropometric measurement ground truth.

The pipeline is evaluated on the NOMO3D dataset, comprising 194 male and 181 female subjects. The reported mean absolute errors range from 2.5 mm to 16.0 mm, depending on the specific anthropometric measurement. The pipeline consists of the following steps: 1) a 3D body scan is performed; 2) a body template is fitted (registered) to the 3D point cloud; 3) circumference measurements are computed on the model surface; 4) supervised regression is adopted to provide estimates of anthropometric measurements

Related Work

The paper discusses existing anthropometric measurement datasets, including UMTRI, ANSUR 88, ANSUR 2012, and CAESAR, noting the limited public availability of some. The CAESAR dataset has been used in scientific works but hasn't been widely adopted in benchmarking due to its price. The paper also addresses the challenges in achieving accurate and reproducible anthropometric measurements from 3D data, citing variations in software implementations and potential systematic errors.

3D Human Body Models

The paper explores 3D human body models like MakeHuman, SCAPE, BlendSCAPE, and SMPL, emphasizing the importance of intuitive parameterization for shape and pose, as well as realistic body shapes. The SMPL model is selected due to its overall quality.

Computerized Anthropometric Measurements

The paper reviews attempts to infer 3D body models from 2D RGB images but notes the insufficient accuracy for industrial and commercial applications. It also discusses Kinect-based 3D body scan methods using the SCAPE body model and a "stitched puppet" model for local PCA matching.

3D Body Scanning

The paper uses a commercial TC2 body scanner with Intel RealSense R200 depth sensors. Subjects are instructed to stand on a rotating platform in a specific pose, and the scanner outputs a triangulated mesh structure.

Model Registration

The SMPL body model is parameterized by {T,S,θ}\left\{\mathcal{T},\mathcal{S},\theta\right\}, where T\mathcal{T} is the initial model in a canonical shape and pose, S\mathcal{S} defines the shape deformation, and θ\theta defines the pose based on a skeleton rig with KK skeleton joints. Shape deformation is modeled using Principal Component Analysis (PCA), where any shape can be reconstructed by linearly adding $|#1{\beta}|$ principal directions to a mean shape T\mathcal{T}:

$\mathcal{T}+B(\beta) = \mathcal{T}+\sum_{n=1}^{|#1{\beta}|}\beta_n\mathcal{S}_n$.

  • T\mathcal{T} is the mean shape.
  • BB is a function that maps PCA coefficients to shape deformations.
  • β\beta is a vector of PCA coefficients.
  • βn\beta_n is the nn-th PCA coefficient.
  • Sn\mathcal{S}_n is the nn-th principal component.

The SMPL model contains N=6,890N = 6,890 vertices ($13,766$ faces) and K=23K = 23 skeleton joints and divides the shape deformation into pose-independent deformation BS(β)B_S(\beta) and pose-specific deformation BP(θ)B_P(\theta), which are summed to define the final shape.

The non-rigid ICP registration aims for "skin level registration" to address measurement noise, missing points, and model-scan mismatch. The approach uses an energy function with three terms:

E(X)=Ed(X)+αEs(X)+βEl(X)E(\mathcal{X}) = E_d(\mathcal{X}) + \alpha E_s(\mathcal{X}) + \beta E_l(\mathcal{X}).

  • E(X)E(\mathcal{X}) is the total energy to be minimized.
  • Ed(X)E_d(\mathcal{X}) is the distance term between the model and scan points.
  • Es(X)E_s(\mathcal{X}) is a local stiffness term enforcing similar transformations between neighboring vertices.
  • El(X)E_l(\mathcal{X}) is a landmark term enforcing accurate registration of predefined keypoints.
  • X\mathcal{X} are the alignment parameters.
  • α\alpha and β\beta are weighting factors.

EdE_d is the standard ICP distance term between the model and scan points

Ed(X)=viVwidist2(Tscan,Xivi)E_d(\mathcal{X}) = \sum_{v_i \in \mathcal{V}}w_i\hbox{dist}^2\left(\mathcal{T}_{scan},\mathcal{X}_iv_i\right)

  • viv_i is a vertex in the model V\mathcal{V}.
  • wiw_i is a weight indicating whether the model point has a correspondence in the scan (wi=1w_i = 1) or not (wi=0w_i = 0).
  • Tscan\mathcal{T}_{scan} is the scanned point cloud.
  • Xi\mathcal{X}_i is a linear mapping of a single model vertex viv_i to correspondence in Tscan\mathcal{T}_{scan}.

EsE_s is a local stiffness term:

Es(X)=iNj(XiXj)diag(1,1,1,γ)F2E_s(\mathcal{X}) = \sum_{i \in \mathcal{N}_j} \| (\mathcal{X}_i - \mathcal{X}_j) \hbox{diag}(1,1,1,\gamma)\|^2_{F}

  • Nj\mathcal{N}_j are neighbor vertices of the model vertex vjv_j.
  • F2\| \cdot\|^2_F is the matrix Frobenius norm.
  • γ\gamma is a weight to balance rotational and translational differences in the deformation.

ElE_l is a landmark term:

El(X)=vi,lLXivil2E_l(\mathcal{X}) = \sum_{v_i,l \in \mathcal{L}} \| \mathcal{X}_iv_i - l\|^2.

  • L\mathcal{L} are pre-defined landmarks.
  • ll are landmark positions in the model.

The cost function Eˉ(X)\bar{E}(\mathcal{X}) takes its minimum at X=(ATA1)ATB\mathcal{X} = (A^TA^{-1})A^TB, which directly determines the deformation parameters X\mathcal{X}. The algorithm uses locally affine regularization and iteratively deforms the template with decreasing stiffness values αi{α1,...,αn}\alpha^i \in \{\alpha^1, ... , \alpha^n\}, where αi>αi+1\alpha^i > \alpha^{i+1}.

Anthropometric Measurements

The pipeline estimates anthropometric measurements from the fitted model by first calculating circumference paths through the model points and then estimating the physical measurements from the path distances by non-linear regression. For each anthropometric measurement tit_i, a set of surface circumference paths are defined, and their lengths ti(1)t_i^{(1)}, \ldots, ti(C)t_i^{(C)} are used as features for regression.

A suitable regressor is used to find a mapping f()f(\cdot ) such that f(Pi):(ti(1),,ti(C))t^if(\mathcal{P}_i): (t_i^{(1)}, \ldots, t_i^{(C)}) \mapsto \hat{t}_i where t^i\hat{t}_i is the estimate of the true anthropometric clothing measurement tit_i.

The ordinary least squares (linear regression) finds a solution ω=(ω0,ω1,,ωC)T\omega = (\omega_0,\omega_1,\ldots,\omega_C)^T that minimizes the squared loss over training subjects ii:

i(tiωTti)2\sum_i \left(t_i - \omega^T t_i\right)^2.

  • tit_i is a training set the ground truth value.
  • ω\omega are the regression coefficients.
  • ti=(ti(1),,ti(C))Tt_i = (t_i^{(1)}, \ldots, t_i^{(C)})^T are the computed circumference path distances.

Linear regression with regularization (ridge regression) minimizes the squared loss with a weight penalty term λ\lambda:

i(tiωTti)2+λω\sum_i \left(t_i - \omega^T t_i\right)^2+\lambda||\omega||.

Experiments

The NOMO3D dataset was collected using a commercial scanner. The dataset consists of 194 male and 181 female scans. For each subject, a clothing expert made the actual anthropometric measurements (15 male and 19 female). All results are average performance over 5-fold cross-validation. The Mean Absolute Error (MAE) is used as the error metric.

ϵi=1jj=1jti(j)t^i(j)\epsilon_{i} = \frac{1}{|j|} \sum_{j=1}^{|j|} |t^{(j)}_{i} - \hat{t}^{(j)}_{i}|

  • ϵi\epsilon_{i} is the MAE for measurement ii.
  • jj represents the subjects.
  • ti(j)t^{(j)}_{i} is the ground truth measurement for subject jj.
  • t^i(j)\hat{t}^{(j)}_{i} is the estimated measurement for subject jj.

The most time-consuming part is the non-rigid ICP registration, taking approximately 2 minutes per scan using adapted Matlab code.

The average 5-fold errors for each anthropometric measurement, their accuracy thresholds, and success rates are presented. The best-performing measurement was neck circumference, while the worst-performing was ankle circumference, attributed to missing points in the feet regions.

Additional paths improve accuracy, with results saturating at 3 to 9 surface circumference paths. Multi-path regression is superior to single-path regression, and SVR significantly improves estimation performance. The SMPL model was directly fitted to the point clouds using the L-BFGS-B optimizer, but the results were inferior to the proposed non-rigid ICP registration. The standard linear regressors were {Linear Regression}, {Stepwise Linear Regression} and {Ridge Regression}, and more recent regression methods are {Elastic Net Linear Regression}, {Gaussian Process Regression (GPR)}, {Binary Regression Decision Tree (BRDT)}, {Non-linear SVR}. The results show that the non-linear SVR and Gaussian Process Regression also perform well, but non-linear SVR was selected due to its best overall performance.

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.