Keywords

1 Introduction

Ergonomic design of wearable products, e.g., helmet, respirator, mask, have increasingly be a focus in the area of anthropometry. There have been a lot of efforts to find out an efficient and robust digital head modeling method for this purpose. However, the previous researches are derived mainly from the computer graphics and animation areas. The researchers from those areas usually have a preference for visual fidelity and vivid image, and have no interest and also no attempts to fitting design of human wearable products. Consequently, a general method for human head modeling is highly anticipated.

There have been a lot of methods for body shape modeling in the literature, categorized into four different categories, i.e., direct model creation, template model-based scaling, image-based reconstruction, and statistics-based model synthesis [1]. The direct model creation methods include the 3D scanning methods [2] and the anatomy-based model construction methods [3]. 3D scanning methods are the most accurate of obtaining the human body shape, but the extremely high cost often prevents their wide application. Additionally, the original points cloud is not suitable for product design, and it still needs a great deal of effort for post-processing work. The anatomy-based modeling methods derive the outer skin mesh point cloud from the underlying body structures. But they require great amounts of knowledge on human anatomical structures, and they are usually used in medical imageology for pathological diagnosis, or as the pre-process for finite element analysis in biomechanics. The template model-based methods create different body shapes by deforming and scaling a pre-defined template, usually prepared by other modeling methods [4]. These methods are becoming popular in the past due to its simplicity, and this merit especially attracts attention from on-line games. However, it is still a challenge to answer how to conserve the semantic meaning of different human parts during template fitting. The image-based methods reconstruct 3D human body shape from a set of images [5], so far as to using low-cost cameras such as equipped in mobile phones. However, it is still a long way for these methods to deal with the annoying noise and the dependency on the background. Statistics-based methods are believed inspired from the work of Blanz and Vetter [6], and also other research groups extend the original method [7, 8]. These methods generate a consistent mesh structure for every scan data, and construct a homogeneous face model database from those examples. These methods are based on identical topologies and mesh connectivity of the example models, but it is difficult for them to satisfy the input constraints and thus fail to evolve into an interactive parametric body shape modeler.

Inspired by the concept of free form deformation (FFD), a powerful digital sculpture tool in Computer Aided Design (CAD), we proposed a novel modeling approach of human head from the unorganized point cloud. First, we constructed a standard head from laser scanned 3D unorganized points. Second, we applied FFD to the standard head to perform customization of head size and shape according to the user-specified head dimensions.

The remainder of this paper is organized as follows: in Sect. 1, the samples of our research were introduced. The methodology of how to construct the standard head model and conduct FFD on the model was described in Sect. 2. The results of our research are introduced in Sect. 3. In Sect. 4, our paper was summarized and gives some discussions. Our conclusion and future work were presented in Sect. 4 as well.

2 Method

2.1 Sample Data

The 100 (all males) sample data used for our research is from the latest and largest 3D human body survey of Chinese minors. This survey was conducted by Chinese National Institute of Standardization in the last decade. In this survey, about 20,000 subjects (9,666 males and 9,699 females) participated and 19 anthropometric dimensions were measured. Human Solutions Vitus 3D scanner was primarily used, except weight, stature and some other measurements were measured manually.

The population database has ages ranging from four to seventeen years old. The children were classified into five age groups: preschool (4–6 ages), junior primary school (7–10 ages), senior primary school (11–12 ages), junior high school (13–15 ages), and senior high school (16–17 ages). The criterion of age stratification is based on ISO15535: 2003 General requirements for establishing anthropometric databases. The population database includes 2,117 pre-school students, 4,263 junior primary school students, 3,930 senior primary school students, 5,527 junior high school students, and 3,527 senior high school students. The subjects were recruited from six geographical areas in China: the northeast-north China, the central and western China, the lower reach of Yangtze River, the middle reach of Yangtze River, the south-east and the south-west China. The sample size in each area was determined based on the distribution of children’s population reported by China National Bureau of Statistics.

2.2 Pre-processing

To get the standard head, we calculated the mean values of traditional dimensions, e.g., head length, head width, of the 100 head samples, and then calculated the Euclidean distance between the mean dimensions and the dimensions of the 100 samples. We chose the head whose dimension distance is the closest to the mean dimensions as standard head candidate, which still needs further pre-process.

There are holes and noise in the original scanned head, because of the light absorption and occlusions. We used Geomagic (3DSystems Inc.), a re-engineering soft package, to fill the holes, cut off the spikes, and remove the outliers of the scanned head data.

Moreover, because the original head scan data are scattered points, we re-sampled the point cloud on the head surface in order to make the surface point in a regular arrangement. We first define several feature wireframes parallel to the horizontal plane. These wireframes are important for fitting of head and face wearable products. Based on our previous research [9, 10], we used geometric characteristics and pattern recognition algorithm to automatically identify the landmarks on the head. Eleven anthropometric landmarks, i.e., left entocanthion left eye (LEL), right entocanthion left eye (REL),left entocanthion right eye (LER), right entocanthion right eye (RER), left alare (LAL), apex nasi (AN), right alare (RAL), subnasale (SU), left cheilion (LCH), right cheilion (RCH), and gnathion (GN), were identified.

These facial landmarks points are lying on the curves in the horizontal planes of the head. We call the landmarks as the facial features, and the curves as the feature wireframe. Based on the eleven facial landmarks, we defined five feature wireframe. They are, from top to bottom, eye wireframe passing through the four canthi, pronasale wireframe passing through the pronasale parallel to the horizontal plane, subnasale wireframe passing through the two subnasales, cheilion wireframe passing through the two cheilions, and gnathion wireframe passing through the gnathion parallel to the horizontal plane. We conducted interpolation and approximation of points lying on the feature wireframes to get re-sampled points arranged in a regular way, other than un-organized scatter points. To get a good trade-off between model quality and computational efficiency, we resampled the head mesh into 5901 points. In this way, we obtained a complete and has well-shaped mesh model, called standard head.

2.3 Traditional Free Form Deformation

FFD, proposed by Sederberg and Parry [11] and based on tri-variate Bernstein polynomials, is used to deform 3D models in a free-form manner. In this method, the objects to be deformed are embedded into a plastic parallelepiped. If the parallelepiped is deformed, the embedded objects are deformed along with it as well. The parallelepiped consists of one Non-uniform rational basis spline (NURBS) hyperpatch. Each hyperpatch is a 4 × 4 × 3 space, where 4/3 stands for 4/3 control points; in other words, there exist 48 control points for each hyperpatch. The hyperpatch is specified by a three-dimensional grid of 48 control points P ijk and defines a volume of space parametrized by the three parameters s, t, and u where s, t, u ∈ [0, 1]. The original FFD block before deformation consists of a rectangular lattice of control points arranged along three mutually perpendicular axes.

First we determine the positions of the vertices on the head surface in the FFD lattice space. We set up a local parametric coordinate system of the FFD block (Fig. 1),

Fig. 1.
figure 1

Local parametric coordinate system of the FFD block

Then the local coordinates of any given point Q lying in the FFD block can be defined as:

$$ Q(s,t,u) = \sum\limits_{i = 0}^{4} {\sum\limits_{j = 0}^{4} {\sum\limits_{k = 0}^{3} {P_{ijk} B_{i} } } } (s)B_{j} (t)B_{k} (u) $$
(1)

where P ijk represents a control point, and B i (s), B j (t), and B k (u) are Bernstein polynomial of degree 3,

$$ {B_{i} (s) = \frac{4!}{i!(4 - i)!}s^{i} (1 - s)^{4 - i} ,B_{j} (t) = \frac{4!}{j!(4 - j)!}t^{j} (1 - t)^{4 - j} ,B_{k} (u) = \frac{3!}{k!(3 - k)!}u^{k} (1 - u)^{3 - k}} $$
(2)

When one or a number of control points are moved, then the vertices on the head surface in the lattice block will be deformed along with the control points. The new position of each affected vertex due to the change of lattice space can be obtained by replace the P ijk by its new position, namely P ’ ijk , and calculate Eq. (1) again.

2.4 Direct Free Form Deformation

Even though traditional FFD provides the freedom to transform any 3D object into another new shape, the complex principle and tenebrous mathematical fundamental behind this method prevents its spread to non-mathematicians or non-CAD-experts. Users prefer direct manipulation of the vertices lying on the model surface other than the control points. In other word, the control point has no meaning for them because it is not intuitive. In this study, we extended the traditional FFD to Direct FFD.

Given

$$ X = BP $$
(3)

where B represents the Bernstein polynomials, P represents the control points, and X represents the original positions of the landmarks on the head face before deformation. If the landmarks are moved to new positions, namely X′, then we can calculate the new positions of the control points, namely P′ as

$$ P^{{\prime }} = B^{ - 1} X^{{\prime }} $$
(4)

where \( B^{ - 1} \) represents the generalized inverse matrix of B. Finally, we calculate the new positions of the vertices on the head surface other than the deformed landmarks X″ as

$$ X^{{{\prime \prime }}} = BP^{{\prime }} $$
(5)

3 Results

The original head scan data contain plenty of holes, spikes and outliers, as shown in Fig. 2.

Fig. 2.
figure 2

An example of original scanned head data

The head data after hole filled, spike cut-off and outlier removed, is as shown in Fig. 3.

Fig. 3.
figure 3

An example of head data after pre-processing

The eleven facial landmarks resulted from automatic identification are as shown in Fig. 4.

Fig. 4.
figure 4

Facial landmarks identification

Tips: left entocanthion left eye (LEL), right entocanthion left eye (REL), left entocanthion right eye (LER), right entocanthion right eye (RER), left alare (LAL), apex nasi (AN), right alare (RAL), subnasale (SU), left cheilion (LCH), right cheilion (RCH), and gnathion (GN)

The complete well-shaped standard head model after pre-processing is as shown in Fig. 5.

Fig. 5.
figure 5

The standard head model

The comparison of head model before and after deformation is as shown in Fig. 6. In the upper-left, there is the head model before deformation, whose head width is 156.1 mm, while in the upper-right, there shows the head model after deformation, whose head width is 145.0 mm. It can be seen the deformation is intuitive and high visual fidelity is kept for the deformed head model. The head width deformation takes the centroid of the head model as the reference point. The coordinates of the first and second points on the end of the line of head width before deformation are (−1.1, 81.6, 39.3) and (−0.7, −74.5, 41.8), respectively. In contrast, the coordinates of the first and second points on the end of the line of head width after deformation are changed to be (−1.1, 76.1, 39.4) and (−0.7, −68.9, 41.7), respectively. From what we have explained about the fundamental of Direct FFD in previous section, we can see the two end points of the line of the head length also changed their positions around the centroid of the head model. In details, the coordinates of the two points before deformation are (−99.7, −2.7, 30.2) and (100.9, 0.9, 0.2), respectively. While after deformation, they changed their positions to (−93.4, −2.6, 29.2) and (94.5, 0.7, 1.1), respectively.

Fig. 6.
figure 6

The comparison of head models (before vs. after deformation)

4 Discussion and Conclusion

Free Form Deformation has been a research focus since its birth in last eighties. Even though researchers from ergonomics also noticed this kind of method and applied it to ergonomic design [12], there is no further deeper investigation on this topic from that time. For example, in the work conducted by Mochimaru et al. [12], they put the normal foot form in a 9 × 5 × 5 lattice and manipulated the control points to deform the normal foot into different foot. By applying the same deformation of the control points, they deformed the last shape for normal foot to new last shape for different foot. However, they set up the local coordinate system in the FFD lattice based on traditional Cartesian coordinate system. This will lead to high computation load and lower degree of freedom of manipulating the control points. Another thing is their method is not intuitive, because the users should manipulate the control points of the FFD lattice, other than the points on the model surface. Usually the users have no idea of the meaning of control points, and also they cannot predict the displacement of the control points to move the points on the model surface to their anticipated new positions. In our study, we adopted FFD based on NURBS, which is more efficient and flexible. NURBS is a mathematical model commonly used in computer graphics for generating and representing models. It offers great flexibility and precision for handling modeled shapes. NURBS are commonly used in computer-aided design (CAD) and are part of numerous industry wide standards. NURBS are useful for constructing many types of organic 3D forms because of the smooth and minimal nature of the curves they use to construct surfaces. NURBS tools are also found in various 3D modeling and animation software packages. They can be efficiently handled by the computer programs and yet allow for easy interaction. It’s highly intuitive and predictable to edit NURBS models. Besides based on NURBS, we also extend the traditional FFD to direct FFD, which means the users can directly manipulated the points on the model surface to new positions wherever they would like.

There are also some limitations for our method. First, we only verified the method on the head linear dimensions, e.g., head length, head width. Whether this method still applies to head dimensions with curvature remains un-known. Second, we did not take it into account if the users would like to change many head dimensions, as an example, more than five. If this request happens, there would be conflicts between the dimension deformation requests because there exist relationships between different head dimensions. Last but not least, progressive deformation is expected, since during form deformation the users usually modify the general shape and size of the form and re-edit the detailed geometry step-by-step.