Abstract

We present a novel virtual try-on solution for fitting evaluation and pattern modification to design various types of garment and speed up the garment design process. In the phase of fit evaluation, we propose a method for producing two-dimensional (2D) color maps by comparing a 2D triangle mesh panel garment and a 3D triangle mesh garment, which can display the fit evaluation outcome in real time. In the phase of pattern modification, a novel prior condition based on maximum entropy coordinates and a more comprehensive mean value coordinates interpolation algorithm are proposed. By a combination of the two deformation methods, the positions of the internal vertices are updated smoothly. Applying the proposed method to the repetition of the garment design procedure, the experimental results show that it can easily pinpoint the location where it needs to be modified and can achieve arbitrary pattern modification with a smooth mesh update.

1. Introduction

Nowadays, with the growth of demand in fashion industry, there is a need for realistic computer-aided garment design. Garment design is typically interactive, involving one or more stages of pattern modification. First, several slices of 2D garment patterns are presented. And numerical patterns should be modified to create new model style lines, including sleeve stretching, internal cutting movement, etc., which need an arbitrary deformation method of the internal and external control nodes with different pattern shape. Then, a 3D garment is formed after sewing them together around a mannequin; the unfitness should be quantified in that location for pattern modification. Mathematical models cannot give full accurate garment fit evaluation. By contrast, in physical-based systems, the simulated stretch and strain can give designers information about the fit for fit improvement.

For designing various types of garments and achieving a satisfactory pattern, we focus on a novel virtual try-on solution for fitting evaluation and pattern modification. Research on try-on tasks exists in the extant literature, and a novel tailoring method by the classic 2D pattern modification based on output colour maps is proposed in this study. The contribution of this paper can be summarized as follows. (1) We define a novel fitting rule to produce colour maps. With the colour map, we could see which part of the garment does not fit correctly and then modify the panel of the garment. (2) Two methods of mesh deformation using mesh edge control nodes and internal control nodes are introduced in this study. The mesh edge control node performs the mesh deformation based on the maximum entropy coordinates interpolation algorithm with a novel prior condition. The mesh internal control node performs the mesh deformation based on the enhanced mean value coordinates interpolation algorithm. With the cooperation of the two deformation methods, the positions of the internal vertices are updated smoothly.

The structure of this paper is as follows: the related work on garment pattern design, fit evaluation, and mesh deformation are included in Section 2. In Section 3, the operation processes are described in detail. In Section 4, the garment fitting evaluation details are given. And Section 5 details the maximum entropy principle and compares the different prior conditions. Then, the limitations of the mean value coordinates algorithm are analysed, and the enhanced algorithm is introduced. In Section 6, the processes about fit evaluation in interaction of garment pattern design are presented. In Section 7, we adapt our proposed interpolation method on 2D shape pattern mesh. Then, the designed various types of garments draped on human model are given. The conclusion and future work are presented in Section 8.

2.1. Garment Pattern Design

Realistic 3D garment models are required in various applications for virtual characters [1, 2], such as virtual try-on or VR games. Several approaches exist for generating simulated virtual garments. Pattern-based modeling is one of the approaches. Users typically start by designing planar patterns, and then they use physical simulation or iterative optimization of related parameters to stitch the planar pattern and obtain the desired realistic 3D garment. For example, Umetani et al. [3] 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. [4] proposed a new framework that allows designers to directly apply the changes they envision in 3D space.

Recently, several researchers have focused on auto adjustment. Meng et al. [5] 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. [6] adopted the constrained optimization method, which satisfies certain predefined criteria, to formulate garment transfer. However, this method is sensitive to the quality of the cross-parameterization between the source and target models.

2.2. Fit Evaluation

Compared with traditional living models that represent the human body, the dress form is a convenient way for measuring and fitting evaluation. As a result, reliable and convenient virtual tools for garment fit analysis are emerging. Photos and videos [7] have been used for fitting analysis, but they provide limited information for proper assessment.

In recent years, researches have attempted to analyse the suitability of clothing by looking for suitable comfort areas between the body and the cloth surface. Providing customers with enough space between their bodies and clothing is a way to achieve acceptable clothing suitability, which also allows them to easily move and stretch. Some studies have shown that cloth pressure evaluation can be used to test the wearing comfort of tight clothing. Seo et al. [8] proposed a technique to evaluate the cloth pressure, which could replace the expensive physical measurement. They use an existing cloth simulator based on a particle system to calculate the cloth pressure and the spring force exerted on each particle. Lin et al. [9] presented a novel approach for evaluating clothing fit on 3D human body models. In this study, they first evaluated the ease amount at the chest and waist regions where there are less variations and analysed the fitting requirement. Then, the clothing fits of specified sizes were quantitatively evaluated by calculating the vacant space area between the garment and the 3D human body.

Although there have been various attempts to evaluate the garment fit, to our knowledge, the real-time display of the fitting effect is not included and the proposed fitting method can provide the exact location where the garment needs to be modified.

2.3. Mesh Deformation

The scope of the literatures on mesh deformation algorithm is vast. In general, mesh deformation technologies are divided into three categories. The first category is mainly based on physical analogy. A well-known physical simulation method comes from Stein’s elastic analogy [10], where the mesh structure is composed of elastic material and the stiffness of the elastic material varied based on changes in the node location. In recent years, Zhou et al. [11] proposed a novel mesh deformation method based on disk relaxation algorithm and background mesh. With the background mesh, the disk relaxation algorithm rearranges the nodes in the mesh by repulsive and attractive interactions to preserve high mesh quality.

The point-by-point method is the second-type strategy. This type of strategy updates depending on the spatial location of each individual point and does not require mesh node connection information. An explicit direct interpolation without solving any equation is the Inverse Distance Weighting (IDW) interpolation method. For 2D mesh deformation, this method runs fast because the boundary nodes are relatively small. Luke et al. [12] used the double exponential form and area of the surface facet as the weighting function, which performs well in maintaining the quality of the elements near the boundary.

Recently, there have been tremendous concerns about coordinates’ interpolation. The barycentric coordinates were presented in [13] and are widely used in computer graphics because of their greater interpolation property. Sun et al. [14] proposed an algebraic deformation method based on barycentric coordinates interpolation. This specific method could not satisfy deformation with any polygon shape. Barycentric coordinates are only adapt to triangular interpolation; so to satisfy the interpolation of arbitrary-shaped polygons, various interpolation coordinates are proposed. One of the most famous is mean value coordinates (MVC), which was first developed by Floater et al. [15] in 2003. To satisfy the positive nature of interpolation coordinates, Lipman et al. [16] added a rough control mesh that contains a deformed shape, which could satisfy the positive qualitative requirement but is only linearly smooth. Sun et al. [17] used MVC for mesh deformation in 2016; they need to find the visible boundary of each node before calculating the mean value coordinates.

Another generalized barycentric coordinates’ method based on maximum entropy theory was presented by Arroyo et al. [18] and Sukumar et al. [19]. The maximum entropy principle is based on incomplete information for minimum deviation reasoning. By constructing, these interpolated coordinates are positive definite within any polygon, satisfying the local properties and ensuring that the inner interpolation display is smooth. Different prior conditions result in significant differences in running time and characteristics. Sukumar adopted uniform prior condition [19], Arroyo adopted Gaussian prior condition [18], while Hormann adopted edge weight prior condition [20]. A good prior condition should consider the local geometrical shape of the polygon and proceed to study the prior conditions. This paper presents an angle-based line segment prior condition.

The maximum entropy coordinates (MEC) algorithm has a good interpolating effect inside the polygon of a single boundary, but could not satisfy the interpolation for the interior that contains the inner and outer boundary. While the mean value coordinates algorithm satisfies the multiboundary interpolation proved by Hormann [21], it could not interpolate on the straight line connecting the two consecutive nodes on the edge. This paper proposes an enhanced mean value coordinates interpolation algorithm, which makes it possible to interpolate at both the boundary and on the straight line connecting the two consecutive nodes on the edge. The maximum entropy coordinates with novel prior conditions are used in conjunction with the enhanced mean value coordinates to satisfy smooth mesh update after various garment modification operations.

3. Methodology

3.1. Process of Repetition Interaction in Garment Pattern Design

Live models have been favoured in the past because they represent the real shape of the human body and could interact with the designers in the fitting process to provide detailed advice. However, this method is time-consuming and tedious. At the same time, the research on tailoring and interaction with the garment came into being in the virtual garment fitting environment. These studies either focus on cloth simulation without focusing on fitting or focus on fitting without paying attention to panel modifications. Fit evaluation and garment modification are the focus in this study. The proposed method does not lose the general and could be applied to various types of garments, such as pants, one-piece dresses, etc.

The algorithm flow is a basic repetition of the procedure. There are two practically important phases in the production of clothes. The first phase is fit evaluation, which provides the 2D colour maps by comparing the 2D garment pattern mesh and the 3D garment mesh. The other phase is garment deformation, where the necessary modification to the panel according to the fitting outcome occurs. The detailed flow of the procedure is shown in Figure 1, and the detailed steps are as follows.

Step 1. Loading human model and garment pattern , then stitch the 2D pattern on the human model to get the 3D draped garment .

Step 2. Going to the fit evaluation phase, if the value of the fitting ratio is more than 90%, output the garment result , otherwise go to the next step.

Step 3. Entering the 2D panel to modify the ill-fitting parts by using the boundary modifications and internal modifications.

Step 4. Sewing modified 2D garment pattern, go to Step 2.

3.2. Symbol Definition

A list of symbols used in our repeat interactive garment pattern design is presented in Table 1.

4. Garment Fit Evaluation

We know that if a garment does not fit on the body, it will produce larger deformations, such as larger folds or stretching. As a result, we can judge where it is unfit based on large folds with the naked eyes. But we cannot quantify the unfitness in that location. By contrast, in physical-based systems, drape simulation can simulate the clothing stretch and strain for fit evaluation. The simulated stretch and strain can give designers information about the fit for fit improvement. And this study presents a real-time, convenient, and easy way to pinpoint the unnatural locations.

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 (as shown in Figure 2(a)) and a 3D triangle mesh (as shown in Figure 2(b)), respectively. The inputs are the 2D garment mesh and the 3D garment model mesh , where is the set of vertices of the garment mesh, . is the topology connection information of the garment mesh, and represents the triangle of garment mesh. In a similar way, is the set of vertices of garment model, . is the topology connection information of the garment model, and represents the triangle of garment model. The shape variables of each triangle in the garment surface are compared before and after sewing. The variables are calculated as follows:where represents the area of triangle . 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 fitting ratio, which provides an assessment of the clothing fit on a human body, is used to indicate the level of fit between the clothes and human body. The fitting ratio can be obtained using the following equation:

When the garment is in an unfit state, the interactive process is desired. And the value of cannot be set too large or too small. If the setting is too small, the output is unfit for the human body. When the setting is too large, it will spend lots of time. Based on several experiments, is set to be 90%; the virtual garment appears good and is considered to be in a fit state. In the fit evaluation results, we use dark colour to indicate that the clothing in this area is more physically tight and light colour to indicate that the clothing in this area is more physically loose, while neutral colour means that this area of the garment on the body has a better fit. The effects of output heat map are as shown in Figure 1 and marked with .

5. Mesh Deformation Methods

When designers modify the 2D panel garment, different operations are exerted on 2D panel, such as boundary interactions or internal interactions, while most pattern adjustments involve modifying the size and enhancing the shape of the patterns for fit improvement to the body. These cases are quite often useless to perform a complete reconstruction of the garment mesh. And the changes for fabric coordinates of the mesh vertices are sufficient to match a new pattern shape. As a result, the mesh edge control node performs mesh deformation based on the maximum entropy coordinates interpolation algorithm is proposed in Section 5.1. And the mesh internal control node performs mesh deformation based on the enhanced mean value coordinates interpolation algorithm is proposed in Section 5.2.

5.1. Maximum Entropy Coordinates
5.1.1. Theory of Maximum Entropy

In information theory, the notion of entropy as a measure of uncertainty or incomplete knowledge was introduced by Shannon [22]. The Shannon entropy of a discrete probability distribution is as follows:

where is the probability of the occurrence of the event .

The maximum entropy principle [23] is used for least-biased statistical inference when insufficient information is available. It provides a maximally noncommittal distribution that is consistent with the given data. The general form of the continuous entropy should be as follows:

where is prior distribution. And the version of discrete entropy is

In the absence of external forces, things are always developing in the most chaotic direction. Under known conditions, the things with maximum entropy are most likely to be close to its real state. Therefore, the solution process of maximum entropy coordinates is to limit the optimization problem:

Affine precision and partition of unity are two restrictions needed to be satisfied:

The constraint function is associated with an original function so that it matches the equation of equality with the number of variables, and the extremes of the original function variables are obtained:

Obtain the partial derivative of the first variable and assign a value of zero:

Since (10) is equal to zero and is an arbitrary number, so

After (11) is deformed, we get the result :

5.1.2. Prior Condition

The key factor of the maximum entropy formula is the choice of the prior condition , which provides a great deal of flexibility in the construction of the approximation function, and this flexibility provides the possibility of customizing the barycentric coordinate.

For uniform prior condition, as indicated earlier, the function of Shannon-Jaynes entropy is equivalent to the Shannon entropy. The uniform prior condition is as follows:

Contrary to the uniform prior conditions, the nonuniform prior condition gives each node a different weight. Different prior conditions can be applied to the Shannon-Jaynes entropy function. The Gaussian prior (radial basis function) is one of them which could be used in (6) to get . The Gaussian prior condition is as follows:

In (14), the parameter in the Gaussian distribution is inversely proportional to the variance, which determines the support width of the basis function.

To acquire the nonnegative barycentric coordinate of arbitrary polygon , Hormann et al. [20] took the desired boundary properties into account when choosing a prior condition.

Inspired by the Hormann’s method, we use the characteristics of triangle and the desired boundary properties are considered. At the same time, we propose a novel prior condition with the Triangle Angle Bisector, which is described as follows:

In this prior condition, we consider the relationship between the edges of the triangle and its angle. , , and represent three vertices of the triangle and represents distance of the edge. Due to the linear constraints (7) and (8), satisfy the partition of unity property. And as prior condition is nonnegative according to (15d), are also nonnegative. It remains to show that inherit the Lagrange property from the prior condition .

We select two groups of experiments as our examples and choose three different prior conditions for testing. The first group experiment adopts the shape of garment, and the three prior conditions are edge weight function, uniform prior condition, and our proposed prior condition. Maximum entropy basis function with these three conditions is exerted on red circle node, as shown in Figure 3. And the coordinate value ranges from 0 to 1. From the experimental results, the effect of interpolation without prior conditions is not obvious. Note that the coordinate derived from uniform prior is very steep. While using the triangle angle bisector as a prior condition, the interpolation result is smooth, which is the best interpolation result among the three prior conditions.

A complex polygon (concave polygon) is chosen for the second group of experiments. As shown in Figure 4, maximum entropy basis functions with different conditions are also exerted on red circle node. And the experimental results show that the use of our proposed prior condition could obtain the best interpolation effect.

5.2. Mean Value Coordinates
5.2.1. Theory of Mean Value Coordinates

In the simplest polygon triangle , the vertex inside the triangle and the weights , , and are unique. They are the barycentric coordinates of with respect to the triangle . The barycentric coordinates satisfy all the properties of interpolation coordinates, such as positivity, Lagrange property, edge property, etc. A set of coordinates for is shown in Figure 5.

Now, we describe a type of coordinates, called the mean value coordinates, that satisfy all the properties we would like. These coordinates come from the application of the mean theorem for harmonic function, which depends on the points , , , and . Let , , be the angle at in the triangle ; let , , be the angle at in the triangle , defined cyclically; see Figure 5. The mean value coordinates are described by (16) and (17), as follows:

5.2.2. The Improved Mean Value Coordinates

If the shape of the garment is completely irregular, when performing the mesh update, the mesh boundary and the entire internal mesh need to be updated. Due to the characteristic of the mean value coordinates interpolation algorithm, it is not possible to interpolate on the straight line connecting with two consecutive nodes on the boundary, as shown by the dotted line in Figure 6. A more comprehensive MVC interpolation algorithm is then proposed, which considers the internal interpolation on the straight line connecting two consecutive nodes on the boundary and boundary interpolation.

Interpolation of the Boundary:

, are boundary vertices of pattern shape and represent the vertex on boundary, as shown in Figure 6. Internal interpolation of the straight line connects two consecutive nodes on the boundary, taking the average of the two points around it:

and are two mean value coordinates of and , as shown in Figure 6. A star-shaped polygon was chosen to test the effectiveness of the improved MVC algorithm, as shown in Figure 7, which is interpolated in a concave vertex. It can be seen from the graph that the interpolation effect is smooth and satisfies the internal interpolation of the straight line connecting two consecutive nodes on the boundary and the boundary interpolation.

6. Fit Evaluation in Interaction of Garment Pattern Design

6.1. Garment Initialization

The garment patterns represent a set of 2D polygons for a coat, which could be designed beforehand. The patterns are not only designed by measuring real coats to make different-sized garment, but are also digitized and triangulated to enable the garment construction.

The patterns are placed in the corresponding position around the body surface as shown in Figure 8(a), prior to sewing. Figure 8(b) shows the fit evaluation before sewing the garment. Since there is no stitching, the size of each triangle on the 2D garment surface is the same as that on the 3D garment surface. The initialization evaluation outcome is displayed in the same colour, and the fitting ratio is 100%.

6.2. Garment Virtual Dressing

The 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 9(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 9(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 9(c)) [24].

During the evolution of draping simulation, 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. This makes it a suitable solution that can be resolved correctly when a collision is detected.

6.3. Garment Simulation and Fit Evaluation

After simulation, the garment patterns connected to the 3D mannequin. Figure 10(a) shows the draping simulation after seaming. Figure 10(b) shows the fit evaluation outcome after dressing the garment. As seen from Figure 10(b), the fitting result tends to lack a smooth and natural representation. To reduce the distortion and tightness around the cloth mesh surface, we should modify the garment based on the fitting result.

6.4. Garment Modification

The garment interaction tools used in this study are divided into two categories, i.e., boundary interaction tools (BIT) and internal interaction tools (IIT). The boundary interaction tools are as follows: point move, edge move, and edit curve, while the internal interaction tools include the dart edit.

When designers use the pointer to modify the garment, the proposed mesh deformation method will update the positions of the internal vertices. We know that Wachspress mappings are injective, while the mean value mappings are not injective when the polygons have five or more vertices [25]. Schneider et al. [26] proposed a solution to the injectivity problem using a sequence of intermediate polygons. If each consecutive pair of polygons is close enough to each other, we would expect a barycentric mapping between them to be injective, and by composing these individual mappings, we thus obtain an injective mapping.

The proposed mesh deformation method updates the positions of the internal vertices while maintaining the shape well and keeping it uniform throughout the pattern domain. Figure 11(a) shows the garment triangle mesh before modification. After performing a series of operations, for example, dragging the boundary points to increase the size of the entire garment, cutting the interior using the dart tool, in which the boundary operations and internal operations use the novel MEC algorithm and the enhanced MVC algorithm, respectively, an updated mesh is achieved. Figure 11(b) shows the modified triangular mesh.

6.5. Simulation after Garment Modification

Figure 12(a) shows the modified garment worn on the model according to the fitting evaluation outcome. In contrast to Figure 10(a), the modified apparel is less compact and has a more natural fit. Figure 12(b) shows the fitting evaluation outcome after the simulation is performed again. Compared with Figure 10(b), Figure 12(b) is closer to Figure 8(b) and looks smoother.

7. Experimental Results

All of our experiments were tested on a 3.4 GHz AMD Phenom II x4 965 processor machine, with 4 GB of RAM, and an NVIDIA GTX260 graphics card. And we implement fit evaluation during repetition interaction using the CUDA library for GPU computation. To illustrate the effectiveness of our proposed interpolation method on mesh update, we exerted our method on 2D shape pattern mesh. Then, garment pattern modification is applied in virtual try-on for designing various types of garments.

7.1. Mesh Update

Our system utilizes a mesh update algorithm which updates the 2D mesh position on the pattern according to the 2D shape modification of the pattern. That is, the pattern coordinates of the mesh vertices are obtained as a weighted sum of the pattern coordinates defining the vertices of the pattern shape. When one of these vertices is changed, all associated mesh vertices are updated based on the coefficients of the weighted sum.

To prove the effective of mesh update with the proposed mesh deformation method, we exerted two group experiments for modifying the pattern mesh. In the first group experiment, we implement the mesh internal control node performs the mesh deformation, as shown in Figure 13. Figure 13(a) shows the initial mesh without deformation; a Delaunay triangulation algorithm triangulates the pattern shape for building an initial mesh. And a blue quadrilateral located in the upper-left corner of the initial rectangular mesh. A unit translation in both directions is imposed on the blue quadrilateral boundary nodes, while the red nodes on boundary are fixed. The displacements of the yellow nodes are obtained through the enhanced mean value coordinates method, resulting in the updated triangular mesh in Figure 13(b). From the purple circle in Figure 13(b), we could obviously see that our proposed deformation method updates the positions of the internal vertices smoothly.

In the second group experiment, we implement the mesh edge control node performs the mesh deformation. Figure 14(a) shows the initial mesh without deformation. Figure 14(b) shows the updated triangular mesh with our proposed condition based on MEC method. From the purple circle in Figure 14(b), we could obviously see that our proposed deformation method has a good interpolation effect when exerted on mesh update.

7.2. Designed Garment for Human Body

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 fitting ratio of draped simulation garment. Take a coat for example; the value of fitting ratio after simulation is 65.23%. We choose a common CAD artist. After 10.3 s of manual operation by him, the value of reaches 91.43%. And the detailed statistical outcomes are shown in Table 2.

Figures 15(a)15(e) show the effects of putting the different types of designed garments on the human body model. Figure 15(a) shows the original size of the coat put on the human body model, which has a better fit. Figure 15(b) shows the smaller size of the coat on the human body model. The coat pattern texture clearly shows that the coat is somewhat tight for the model. Figure 15(c) shows the larger size of the coat on the human body model. The pattern strip texture clearly shows that the coat is slightly large on the model. Figures 15(d) and 15(e) show the effect of the stretched coat and shorted coat put the human body model, respectively.

We select another human model and dress the model with the designed 2D pattern garment. Figures 16(a)16(c) show the original-size skirt, skirt with the stretched upper body, and skirt with the stretched sleeve, draping on the model body, respectively. Figures 17(a)17(c) show the designed trousers on the model body; the designed trousers are original-size trousers, stretched trousers, and larger-size trousers.

8. Conclusion and Future Work

A novel fitting rule for producing 2D colour maps is presented in this study by comparing the 2D panel garment and the 3D garment. Then, a novel prior condition based on maximum entropy coordinates and a more comprehensive MVC interpolation algorithm are proposed. The proposed mesh deformation method will update the positions of the internal vertices smoothly. When applying the proposed method to the repetition of the garment design procedure, the experimental results show that it can easily pinpoint the location where the garment needs to be modified and can achieve arbitrary modification with a smooth mesh update. Any basic pattern such as trousers, skirts, etc. could be satisfied according to our methodology, and we plan to expand the proposed method to apply to a more general range of garments.

Although our method has some limitations, it indicates the direction of our future research. The first limitation is not considering the fabric material in the phase of fit evaluation. For accurate evaluation, we will consider fabric material in the future. Another limitation is existence of two deformation methods to satisfy the mesh update smoothly in the modification phase. In the future, we will devote sufficient time to remove these two limitations and obtain more realistic garment immediately.

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 exit in the submission of this manuscript, and manuscript is approved by all authors for publication in this journal. We confirm that the content of the manuscript has not been published or submitted for publication elsewhere.

Funding

This work is supported by the National Key Research and Development Program of China under Grant No. 2018YFB1004902, the Natural Science Foundation of Shandong Province under Grant Nos. ZR2017FM054 and ZR2019MF003, the National Natural Science Foundation of Key Projects under Grant No. 61332017, and the National Natural Science Foundation of China under Grant No. 61502133.

Acknowledgments

We would like to thank Prof. John Sören Pettersson at Karlstad University for his valuable comments and Associate Prof. Mingmin Zhang at Zhejiang University for discussion.