Abstract

We present a dual adaptive garment slice adjustment technique for automatic resizing of apparel products with variant body shapes, and this technique can quickly generate clothed characters. Our first contribution is to propose a novel fit evaluation method. When a 2D garment pattern and a 3D draped garment have the same triangle topology connection, we calculate the shape variable of each triangle and output heat map simultaneously. For sewing a pattern to a newly targeted human body, we propose a fully automatic adjustment method that conforms to the body structure and is composed of two stages. In the coarse auto adjustment (CAA) stage, we propose a method of controlling the size of a garment by the length of a bounding box in five parts of the human body. Then, the garment pattern is automatically adjusted using the measured dimension, by stretching or shrinking. In the fine auto adjustment (FAA) stage, boundary vertices control the shape in the adjustment process. For better matching with the body, the vertices of the garment pattern boundary are relocated with the calculated moving distance and moving direction. As demonstrated in the results, our method enables fully automatic adjustment, preserving the original pattern style of garments between characters with vastly body shapes. Compared with the state-of-art 2D editing method, our proposed approach leads to time saving, and it achieves realistic garment effect compared to auto fitting methods.

1. Introduction

Clothed virtual characters having varied sizes and shapes are necessary for gaming, film, and online fashion applications. The generation of these clothed characters is one of the most tedious and difficult tasks for computer artists. An essential solution is to automatically resize a designed product worn by a model to fit the variant body shapes of individual customers. The conventional garment design method is the 2D pattern grading [1, 2]. The pattern grader transforms the pattern from the base size to other existing sizes, but could not satisfy the requirements of all the disproportionate virtual characters. The interactive garment modeling method [3, 4], which iterates adjusting patterns and parameters, could achieve the desired effect for disproportionate characters, while it heavily relies on the experience of designers and is time-consuming.

Recently, a great number of researchers focused on auto adjustment that automatically adapts to new bodies. Unfortunately, these auto adjustment methods either fail to preserve the original design [5] or make sever penetrations for vastly different body shapes and proportions [6]. In this study, we focus on automatic adjustment design, which could quickly produce realistic garments that fit the proportions of a new wearer while retaining the original design as much as possible. And the contribution of this study can be summarized as follows: (1) we propose a fitting evaluation method to calculate the shape variable or stretch that evaluates the fitting quality of a garment dressed on a target body and outputs the heat map simultaneously; (2) we propose a dual adaptive garment slice auto adjustment method that is fully automatic and can preserve the style of garment between characters with vastly different body shapes. First, we take the measurement size of the virtual human body and automatically adjust the size of the garment. Then, we use the rules of pattern boundary to achieve a better fit for the virtual garment after FAA.

The structure of this paper is as follows: Section 2 reviews the related work, including fit evaluation, garment fitting method, and garment pattern design. In Section 3, the entire auto adjustment process is described in detail and a list of symbols is defined. Section 4 introduces the fit evaluation method before adjusting the garment pattern. CAA and FAA are also introduced, including plane intersection with human model and generation of bounding box in CAA and boundary triangle marking and boundary node relocation in FAA. In Section 5, we introduce our virtual dressing system at first. Then, our garment auto adjustment method is applied on different pattern designs among characters with vastly different body shapes. Auto adjustment method is further compared with manual adjustment method and auto fitting method, respectively. Conclusion and future work are discussed in Section 6.

Our work is built on previous efforts including fit evaluation, garment fitting method, and garment pattern design.

2.1. Fit Evaluation

As is well-known, virtual try-on applications are strongly dependent on mathematical models and cannot give a fully accurate evaluation of garment fit [7, 8]. Based on these, estimating the garment fit without an actual try-on is still an issue for researchers.

Liu et al. [9] proposed a machine learning-based model to evaluate garment fit. The inputs of the proposed model are digital clothing pressures, and the output is the predicted result of garment fit. However, 72 samples are not enough to train the proposed model, and two fit levels are too simplified. Ease allowance is another crucial parameter for comfort. Thomassey and Bruniaux [10] provided a template of ease allowance in a 3D environment. First, the distance of the garment from the body is investigated. Then, these distances are used to evaluate four discrete values required to design the garment in 3D. By contrast, our method can easily determine whether the fit is comfortable without a template, and the nature of fabric material is also taken into account.

2.2. Garment Fitting Method

Designing an elegant 3D virtual garment model is labor-intensive and is not an easy task for nonprofessionals [11, 12]. It requires the expertise of an experienced pattern maker to design, and the results are specific to a particular body model. For improving the efficiency of pattern maker, various types of fitting methods that automatically adapt to new bodies have emerged.

Li et al. [5] proposed a fitting method that was accomplished by deforming the garment mesh to match the shapes of the human models. Huang and Yang [6] proposed and designed a method to automatically align virtual humans with 3D garment models. However, 3D garment and posture of virtual humans both need to be altered in the process of alignment. Peng et al. [13] provided a parameterized model of the human body with known shape and pose parameters and described an algorithm that allows customizing any garment such that it can be used to cloth any body shape. Unnatural wrinkle patterns may be generated when they are composed during synthesis. Recently, Zhang et al. [14] proposed a topology-independent fitting method, which adopted proxy mesh to fit a 3D garment on another human model. However, it often fails to preserve the original design and requires manual editing to recover the garment’s original style.

Machine learning methods for product design and modeling could be learned in this study. In [15], principal component analysis and cross-parameterization method was applied to human face model with a small set of measureable parameters. And the generated face model facilitates personalized design of the eyeglasses frame. In [16], a parametric design of human body modeling with deep neural network and linear regression method is proposed, which could be utilized for generative design, such as virtual try-on system.

2.3. Garment Pattern Design

The easiest way to transfer a garment from one character to another is to apply a physical simulation to place the garment on new characters [17, 18]. The results look like a person wearing someone else’s garment in the wrong size.

There are two solutions to solve this problem. The traditional method is interactive garment modeling, which involves manual adjustment. The interactivity helps resolve contacts and intersections in an interactive modeling environment but leaves the design task up to the user. For example, Umetani et al. [19] provided an interface that enables users to immediately customize the parsed patterns via manipulation and editing, while users had to manually specify the seed position. To conveniently reuse existing designs as a starting point for creating new garments, Bartle et al. [20] proposed a new framework that allows designers to directly apply the changes they envision in 3D space.

Until recently, several researchers focused on auto adjustment. Meng et al. [21] provided a flexible shape control technique, which uses feature curves to control the shape of the garment for the automatic resizing of apparel products. Brouet et al. [22] adopted the constrained optimization method, which satisfied certain predefined criteria, to formulate garment transfer. Wang [23] achieved a system that customizes sewing patterns for a few targets, by using a series of generic cost functions that formulate pattern adjustment into a parameter optimization problem.

We propose a model which automatically reshapes the garment to fit the body using the body structure and the garment pattern boundary rules. It will not only improve the realism of the virtual try-on system in the entertainment industry but also enables mass production of made-to-measure garments.

3. Methodology

3.1. Process of the Auto Adjustment Method

Our garment auto adjustment method operates directly on 3D garments and finds a satisfactory balance based on fit criteria. The specific process of our system is shown in Figure 1. The input for our method is a character model , possibly with a base garment pattern , which is represented by manifold triangular meshes. We assume that the input character model is standing still. The dual adaptive auto adjustment method would generate a target garment pattern , which preserves the shape of the base garment pattern.

We complete the auto adjustment process in three steps. The first step is the fit evaluation method that measures the garment pattern with a real-time heat map, the second step is the coarse auto adjustment method that generates a transition garment pattern , and the last step is the fine auto adjustment method that produces a target garment pattern to satisfy character model . In the process of coarse auto adjustment, in order to auto adjust base garment pattern to adapt the character model , we propose a method of controlling the size of the garment by the length of a bounding box in five parts of the human body. For generating these bounding boxes, we first define the seven key section planes of the character model, then generate the contour line with section planes, achieving five bounding boxes at last. This method is adapted for all standing character models. In the process of fine auto adjustment, for constructing the transitional garment pattern to satisfy the character model, the changes of the boundary line segments and are compared based on the rule of pattern boundary, and then fine adjustment is performed on . We mark the boundary triangle of and at first, and then calculate the length of each boundary segment of and . Finally, we reposition the boundary node of with the moving direction and distance.

3.2. Symbol Definition

A list of symbols used in auto adjustment system is presented in Table 1.

The planar pattern , human model , and heat map are triangulated meshes. These triangulated meshes are composed using the vertex collection and triangle topology connection information , according to the key plan of human model to fetch the bounding box , which is generated by contour lines . The boundaries of the garment pattern are composed of boundary line segments , while boundary line segments are composed of boundary triangles .

4. Auto Adjustment Method

4.1. Fit Evaluation

In the phase of fit evaluation, mathematical models cannot give a fully accurate garment fit evaluation. We adopted the simulated stretch and strain which could give designers information about the fit for fit improvement. A kind of obvious metrics for fit is the ones measured by the deformation between the dense meshes of 2D garment pattern and 3D draped garment. In the fit evaluation process, the shape variable or L2-stretch could be used to evaluate the fitting quality of a garment while outputting the associated heat map. The metric based on shape variable or -stretch on these dense meshes are presented below.

4.1.1. Shape Variable

The principle of this algorithm is that the 2D garment pieces before sewing and the 3D dressed garment after sewing are composed of a 2D triangle mesh and a 3D triangle mesh, respectively. The input is the 2D garment patch and the 3D garment model , where is the set of vertices of the garment patch, . is the topology connection information of the garment pattern and is a triangle of garment pattern, , , and are three vertices of triangle . In a similar way, is the set of vertices of garment model, . is the topology connection information of the garment model, and is a triangle of garment model. The shape variables of each triangle in the garment surface are compared before sewing and after sewing. The variables are calculated as follows:where represents the perimeter of triangle . As for equation (1b), represents the shape variable for different fabric, represents the number of fabric types, and is the elastic coefficient of the fabric. The output is heat map , while the vertex set information and topology connection information of the heat map are the same as those of the 3D garment model . The effects of output heat map , , and are shown in Figure 1. It can be seen that heat map , after the CAA, is smoother than the heat map , while the heat map , after the FAA, is smoother than the heat map .

4.1.2. -Stretch

Another widely used method for measuring the distortion of surface is the -stretch introduced by Sander et al. For a triangle and its corresponding shape defined by the mapping as , the -stretch is defined by computing the Eigen values of Jacobian formed by partial derivatives of a unique affine mapping between and . To ease the computation, for with three vertices in , we define a local planar frame on to obtain the planar coordinates of its three vertices as (). Then, the norm defined on the triangle based on the cross parametrization iswith

defines the area of a triangle. We could use the shape variable or -Stretch as the fitting evaluation guideline.

4.2. Coarse Auto Adjustment

The garment template provided in this paper is suitable for a specific human body model without satisfying the input character model . We need to get the size of the bounding box fetched by the body part of the human model, to adjust the size of garment template . We divided the body of human model into five parts, including upper body, left thigh, left calf, right thigh, and right calf. The calculation of bounding box with fetched body parts for human model and the adjustment of are completely automated without any interactive operation.

4.2.1. Plane Intersect with Human Model

The plane intersecting with the human model will generate multiple contour lines, and the contour line generation algorithm is divided into the following steps: (1) Intersecting the plane and the triangular face of the character model to obtain unordered points . (2) Grouping the points, and generating the intersection sets . (3) Take a corresponding contour line for each plane.

The input of the human contour line generation algorithm is a plane and a 3D character model , where is the unit normal vector of the plane and is the distance from the origin to the plane. The intersection set , which consists of the planes intersecting with the character model. Among them, is a set of points sorted counterclockwise. As shown in left part of Figure 2, the plane intersects with the plane. As shown in right part of Figure 2, and are ordered intersections.

Given a plane and a triangle , we perform a plane test on to determine whether it is on the same side of plane . If it is, plane will not intersect with . Otherwise, the three sides that make up will be intersected with the plane, and the intersection point will be recorded. The intersection rules are as follows:

Among them, and are distances between the two endpoints of the line segment to the plane. If and of line segment are greater than 0 or less than 0, there are no intersections. Otherwise, there is an intersection and the calculation of intersection is based on equations (3a)–(3c).

4.2.2. Generation of Bounding Box

The size of garment fabric is related to the volume of body parts. Based on this point of view, we first propose the use of bounding boxes to obtain the size of various body parts. In this study, seven key section planes are selected to obtain the human body bounding box . is one of the them, as shown in the right part of Figure 3. The key section planes determined by the human body characteristics are shown in the left part of Figure 3. , , , , , , and , corresponding to the underarm, abdomen, buttocks, ankles, under knees, after knees, and ankles of the human body, respectively. To effectively detect the characteristics of the human body, the human body stands vertically and the hands are slanted downwards 45°.

The specific method for calculating the bounding box is as follows. First, the required contour lines for key section planes are obtained based on Section 4.2.1. Then, the required contour line composed of is generated between , , and upper body. While is generated between , , and left leg, is generated between , , and right leg, is generated between , , and left leg and is generated between , , and right leg. The blue wire frame in Figure 4 shows the specific information about the bounding box .

Three section planes , , and of the upper body define three contour lines , , and . The bounding box can be determined by the coordinates of the point on the contour line. Among them, is defined by the point on contour line . In addition, the bounding boxes of other parts of the human model can be calculated using the same method, based on key section planes of the human body.

4.3. Fine Auto Adjustment

The garment pattern is generally fit for the character model, but it can be seen from the corresponding heat map that the boundary of is unsuitable for the character model. And FAA operations are best solution for fine-tuning in the second stage.

However, if the adjustment parametrization includes all of the vertices, the pattern interior would contain self-intersection caused by overfitting. For better controlling the shape of , we define the vertex on boundary as for controlling and the vertex on the internal position as for passive control. Our simulation, based on physical system, stretch, and strain on the boundary, is the best way to fit accurately [24]. For these reasons, we propose fine-tuning to adjust the sewing pattern by its boundary vertices based on boundary pattern rule. The steps for FAA adjustment are as follows: (1) mark boundary triangle on pattern and garment , (2) calculate the length of each boundary in and , and (3) reposition the vertices of the garment polygon boundary of based on the calculated moving distance and moving direction.

4.3.1. Mark Boundary Triangle

Define the boundary of as , where . is a boundary line segment, and is a boundary triangle. Boundary triangles are the composition of boundary line segment, we should mark the boundary triangles before calculating the length of each boundary segment . The principle of judging a boundary triangle is that its boundary edge has no common side with other triangles. If each edge of a triangle has a common side, it is an inner triangle; otherwise, it is a boundary triangle. We know that , where is the node information and is the topology connection information of . The method of generating the boundary of is as follows: (1) traverse each triangle in and filter out the boundary triangle and mark it; (2) classify the marked boundary triangle into the corresponding boundary segment . Repeat steps (1) and (2) until all triangles in are traversed. Then, the boundary corresponding to is generated. The boundary of is also achieved using this method. The left part of Figure 5 is a graphic of with boundary triangles marked, while the right part of Figure 5 is a graphic of with boundary triangles marked.

4.3.2. Boundary Node Location

We could calculate the boundary segment length of and using marked boundary triangles. The moving direction and distance are two prerequisites for repositioning boundary node to fine-tune .

The boundary of is , where , which is calculated by the method described in Section 4.3.1. Then, each line segment on the boundary of needs to be fine-tuned, and the formula for calculating the fine adjustment length is as follows:

To maintain the symmetry of the garment style, the line segment is bidirectional during moving adjustment. The moving distance is .

The curvature of determines its moving adjustment direction and should be obtained first. The calculation method is to measure the slopes of the boundary edges of any two boundary triangles in . If they are equal, is a straight line. Otherwise, it is a curve.(1)If is a straight line, as shown in the right part of Figure 6.(1) Define endpoint coordinates of segment . (2) In the illustration, the moving direction of point is , while the moving direction of point is .(2)If is curve, as shown in the left part of Figure 6.(1) Determine the triangle at the end of segment , and its definite endpoints coordinates. (2) In the illustration, the moving direction of point is , and point is another vertex of triangle .

is the boundary node of . We adopt moving distance and direction to reposition boundary node , and the final pattern after FAA is achieved.

5. Experimental Results

All our experiments were performed on an Intel Core i7-5820K 3.3 GHz processor, with 4 GB of RAM, and an NVIDIA GeForce GTX TITAN X Graphics Card. For cloth simulation, we employ a standard mass-spring cloth system, with position-based strain limiting and collision processing. We implement the dual adaptive garment adjustment method using the CUDA library for GPU computation.

5.1. Virtual Dressing

Our 3D garments are created from 2D panels. 2D panels are triangulated using Delaunay algorithm as we use triangular meshes to represent garment surfaces. Seam lines are explicitly specified by choosing pairs of panel boundary edges. The designed coats are assembled and linked by seaming lines to simulate clothing behavior on the 3D mannequin, as shown in Figure 7(a). By applying elastic force among the seams, two clothing pieces in the pattern can be attached to each other during the sewing process, as shown in Figure 7(b). The clothing patterns can be therefore connected to the 3D mannequin. After several seconds, the virtual human will be dressed in a 3D garment (Figure 7(c)).

During the evolution of draping simulation [25], collision detection between the cloth and human body is a requisite for the system. If our human model is standing still, distance field can be computed beforehand [26]. This makes it a suitable solution that can be resolved correctly when a collision is detected.

5.2. Garment Adjustment and Fit Evaluation

To test how effective of our approach is, we performed experiments with several garment patterns and human models. In the first group of experiments, we choose the existing skirt pattern, which is suitable for a standard human model. The skirt pattern represented by a set of 2D polygons with triangulated mesh is shown in Figure 8(b). A female model with a thinner body was selected for the virtual try-on. Figure 8(a) shows the effect of the female model after the garment is draped on it, and it is obvious that the garment is too large for the female model. Figure 8(e) is an effect of the 2D garment pattern after automatic CAA, and Figure 8(d) shows the effect of the 2D garment pattern draped on the human body. Figure 8(g) is the effect of the 2D garment pattern draped on the human body after going through FAA. Figure 8(h) is the 2D pattern after FAA, and the resulting 2D pattern is also for production at the same time. Figures 8(c), 8(f), and 8(i) are heat maps of fit evaluation corresponding to Figures 8(a), 8(d), and 8(g), respectively. From these heat maps, we conclude that the effect of the draped garment after dual adaptive is improved significantly.

In the second group, we selected the existing trousers pattern for a standard model carry-on experiment, as shown in Figure 9(b). Then, a male model with a fat body was selected for the try-on. Figure 9(a) shows the effect after the garment is draped on the model. It is obvious that the trousers are too tight for the model and the size needs to be adjusted. Figure 9(e) shows a 2D pattern after CAA adjustment. Figure 9(h) shows a 2D pattern after adjustment by FAA. The 2D pattern of this type preserves the original pattern style after dual adjustment and can be used for trousers production of this human model.

5.3. Comparison with Manual Adjustment

To compare our auto adjustment method with the manual adjustment method, we select Sensitive Couture, proposed by Umetani et al. in [19], as the manual operation tool. Sensitive Couture provides synchronized, interactive editing of 2D garment patterns and their corresponding physically simulated 3D garment. It enables users to immediately customize the parsed patterns via manipulation and editing. However, its weaknesses are obvious. The designed garment needs manual operation to satisfy all kinds of body shapes, which is time-consuming.

We implement the SC manual method and our auto adjustment method on the same experimental platform. And the detail statistical comparison results are shown in Table 2. Our input garment meshes contain 15K–22K triangles. This number is consistent with those used in commercial garment design software, e.g., Marvelous Designer. is the smooth of draped simulation garment. The calculation is as follows:

Among them, represents triangle area of in , while represents triangle area of in . Take a vest, for example, the value of smooth before adjusting is 80.23%. We choose a CAD artist with several years of garment editing experience. After 30.21 s of manual operation by him, the value of smooth reaches 90.56%. By contrast, our auto adjustment system only takes 1.42 s, and the value of smooth reaches 88.76% with similar effect.

5.4. Comparison with Auto Fitting Method

To compare our auto adjustment method with the auto fitting method, we select Topology-independent 3D garment fitting, proposed by Zhang et al. in [14], as the auto fitting tool. It enables to auto fit 3D garment on another human model whose topology or shape is different from the garment’s reference human model.

We select four sizes of human model for virtual dressing, which are size 2, size 4, size 6, and size 8. The first line of Figure 10 shows the effect of auto fitting method try-on on different body sizes, which generate penetration. And the cloth mesh penetrates into the body, especially on human model of size 8. The second line of Figure 10 shows the effect of our auto method adjust garment pattern on different body sizes, which achieve proper garment on vastly different body shapes.

We use statistics to compare our auto adjustment with auto fitting method, as shown in Table 3. Take a trouser, for example, the value of smooth after first simulation is 73.01% for human model of size 8. After 0.91 s of auto fitting process, the value of smooth reaches 82.20%. And penetration is also obvious, as shown in Figure 11(d). While, our method takes 1.38 s, the value of smooth reaches 90.51%. From the result, our auto adjustment method realizes more realistic virtual garment on vastly different body shapes compared to auto fitting method.

6. Conclusion and Future Work

We have presented a dual adaptive garment slice auto adjustment method that is fully automatic and can preserve the style of garment between characters with vastly different body shapes. Compared with the traditional 2D editing approaches, our method is dramatically faster to use for novice users who have no experience with 2D patterns. And it achieves realistic garment effect compared to auto fitting method. During the dual adaptive process, first, we obtain the bounding box of the five parts of the human body according to the seven section rings of the human body, and automatically adjust the size of the garment. Then, we use rules of pattern boundary to achieve a better fit for the virtual character garment after FAA. In addition, a novel fit evaluation method is proposed for evaluation. Our evaluation confirms that our method can perform garment automatic try-on for a variety of body shapes.

Although our method is easy to implement and make the adaptive garment look pleasing, there are still some limitations to be approached in the future. The first limitation is that the character model needs to stand still to be able to satisfy automatic adjustment. Another limitation is that such complex pattern garments cannot be achieved with our auto adjustment method. In future, we will focus on removing the two limitations to get realistic garments that suit a variety of body shapes.

Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

No conflicts of interest exist in the submission of this manuscript.

Acknowledgments

The authors would like to thank Prof. John Sören Pettersson at Karlstad University for his valuable comments and Assoc. Prof. Mingmin Zhang at Zhejiang University for discussion. This work was supported by the National Key Research and Development Program of China under grant no. 2018YFB1004902, National Natural Science Foundation of Key Projects under grant no. 61332017, National Natural Science Foundation of China under grant no. 61502133, and Natural Science Foundation of Shandong Province under grant no. ZR2017FM054.