- 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,θ}, where T is the initial model in a canonical shape and pose, S defines the shape deformation, and θ defines the pose based on a skeleton rig with K 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}+B(\beta) = \mathcal{T}+\sum_{n=1}^{|#1{\beta}|}\beta_n\mathcal{S}_n$.
- T is the mean shape.
- B is a function that maps PCA coefficients to shape deformations.
- β is a vector of PCA coefficients.
- βn is the n-th PCA coefficient.
- Sn is the n-th principal component.
The SMPL model contains N=6,890 vertices ($13,766$ faces) and K=23 skeleton joints and divides the shape deformation into pose-independent deformation BS(β) and pose-specific deformation BP(θ), 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(X) is the total energy to be minimized.
- Ed(X) is the distance term between the model and scan points.
- Es(X) is a local stiffness term enforcing similar transformations between neighboring vertices.
- El(X) is a landmark term enforcing accurate registration of predefined keypoints.
- X are the alignment parameters.
- α and β are weighting factors.
Ed is the standard ICP distance term between the model and scan points
Ed(X)=vi∈V∑widist2(Tscan,Xivi)
- vi is a vertex in the model V.
- wi is a weight indicating whether the model point has a correspondence in the scan (wi=1) or not (wi=0).
- Tscan is the scanned point cloud.
- Xi is a linear mapping of a single model vertex vi to correspondence in Tscan.
Es is a local stiffness term:
Es(X)=i∈Nj∑∥(Xi−Xj)diag(1,1,1,γ)∥F2
- Nj are neighbor vertices of the model vertex vj.
- ∥⋅∥F2 is the matrix Frobenius norm.
- γ is a weight to balance rotational and translational differences in the deformation.
El is a landmark term:
El(X)=vi,l∈L∑∥Xivi−l∥2.
- L are pre-defined landmarks.
- l are landmark positions in the model.
The cost function Eˉ(X) takes its minimum at X=(ATA−1)ATB, which directly determines the deformation parameters X. The algorithm uses locally affine regularization and iteratively deforms the template with decreasing stiffness values αi∈{α1,...,αn}, where αi>α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 ti, a set of surface circumference paths are defined, and their lengths ti(1), \ldots, ti(C) are used as features for regression.
A suitable regressor is used to find a mapping f(⋅) such that f(Pi):(ti(1),…,ti(C))↦t^i where t^i is the estimate of the true anthropometric clothing measurement ti.
The ordinary least squares (linear regression) finds a solution ω=(ω0,ω1,…,ωC)T that minimizes the squared loss over training subjects i:
∑i(ti−ωTti)2.
- ti is a training set the ground truth value.
- ω are the regression coefficients.
- ti=(ti(1),…,ti(C))T are the computed circumference path distances.
Linear regression with regularization (ridge regression) minimizes the squared loss with a weight penalty term λ:
i∑(ti−ωTti)2+λ∣∣ω∣∣.
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=∣j∣1j=1∑∣j∣∣ti(j)−t^i(j)∣
- ϵi is the MAE for measurement i.
- j represents the subjects.
- ti(j) is the ground truth measurement for subject j.
- t^i(j) is the estimated measurement for subject j.
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.