Persistent Wrinkles and Folds of Clothes

(1) Abstract— We present a novel approach to woven-cloth simulation in order to generate persistent wrinkles and folds. For a couple of decades, our community has identified and mimicked non-linear buckling of cloth based on the mechanical measurement of cloth. It has, however, scarcely paid attention to another important aspect of the measurement, the hysteresis of cloth behaviors, which is the lag of the amount of forces between stress and relaxation. Our interpretation of the measurement indicates that persistent wrinkles and folds develop in part from the hysteresis of cloth and its associated energy loss. Thus, we establish an adaptive energy model which takes stiffness coefficients and rest posture values not as constants but as variables over time and behavior. As stiffness coefficients and rest posture values change in proportion to the amount of the energy loss, they appear as persistent wrinkles and folds. Consequently, the clothes simulated by our method bring more realism with respect to visual identification for past behaviors of cloth.


INTRODUCTION
Cloth is an essential part of our living not only for its functions but also for its beauty and visual identification.Hence visually plausible animation of cloth has been a major goal to the graphics community over a couple of decades.From the mechanical measurement using the Kawabata Evaluation System (KES) [1] and insights into cloth-like deformable objects, [2][3][4][5][6][7] had identified and mimicked the most visually salient cloth behavior, i.e., buckling of cloth.Based on the works, [8][9][10][11][12] had almost established canonical simulation steps using the mass-spring-damper (MSD) system.
Buckling of cloth produces wrinkles and folds, which are uniquely perceived as a prominent characteristic of cloth.Although they are believably produced by the canonical cloth simulator mentioned above, they would disappear if exerted forces are gone because they are formed just as responses to the forces.In the real world, however, some part of them does not have disappeared even after the forces were gone.This aspect of them has been paid little attention to so far, which can be identified as characteristics of both cloth and its wearer (e.g., over-lengthened elbow parts of shirts, creased trousers of pajamas or a crumpled handkerchief).It represents the history of past behaviors and eventually reveals some individual identities which can enliven the virtual environment.
To find out the reason why persistent wrinkles and folds cannot have been sustained in the canonical cloth simulation, we revisit its elastic mass-spring model as in the left of Fig. 1.The formula which describes the model with respect to ith mass point on cloth can be written as where   and   are the positions of two mass points connected by a spring,   0 is its stiffness coefficient,   0 is the rest length of the spring, f  is a force exerted on   , and  is the energy function of an object.This expects that a spring always returns to the original state so that the cloth simulated based on it can restore its rest shape even after stretched or compressed.In other words, the model assumes that the spring keeps the modulus of elasticity unchanged.Thus, the energy functions based on it cannot change ever.Consequently the internal forces, negative derivatives of energy functions, would always be the same about the same cloth motion and posture (see 3.1 for details).That's why it brings us a cloth which is never worn out.
Our approach is to treat moduli of elasticity and their associated rest posture values as variables while they are traditionally considered as constants of an MSD system during simulation.The proposed method captures the changes of energy over cloth and applies them to variables as in the right of Fig. 1 where  is a time variable and   and   are the functions which adjust the stiffness and the rest posture value, respectively.

Persistent Wrinkles and Folds of Clothes
Byung-Cheol Kim1 , Seungwoo Oh2 and Kwangyun Wohn 3(2) (3) Our contributions are as below: Memory Effect: Our method generates persistent wrinkles and folds since it adjusts coefficients of constraint functions which are the basis of cloth postures.Thus clothes simulated by our method provide a visual identifiability, especially for dynamically moving virtual characters, on the fly.
Hysteresis: We partly address the hysteresis, one of the prominent characteristics of cloth behaviors, by reflecting the energy loss during the movement of cloth.So the simulation system is capable of encompassing more physical meanings of the cloth behavior.
Simplicity: Our adaptive energy model is easy to implement because it does not violate the canonical MSD system.Hence, it can be adopted onto existing cloth simulators based on an MSD system without severe modification.

II. RELATED WORK
After [2]'s seminal paper on cloth simulation in the computer graphics community, there have been a lot of noticeable research efforts.[4] successfully dressed synthetic actors with virtual garments which are made of seamed patterns and simulated to actors' movement.[5,6] modeled cloth behaviors based on the measurements of fabric motion using KES and developed a draping simulator which can support various fabric types.[7,8,13] established a versatile simulator for cloth-like deformable objects.
[9] built a stable cloth simulator by adopting implicit integration and associated system-handling techniques and by taking the constraint function as the main element of formulation.[14,12] made the simulator more accurate and useful by improving the MSD system and numerical techniques.[15] envisioned a new era of cloth simulation with ultra realism although their simulator can hardly be adopted soon in the real-time application domain.
[16] clarified the bending model for cloth of triangular mesh, specifically about modes of bending motion, and suggested how to incorporate consistent wrinkles and folds into the existing MSD system using non-zero rest angles.But those consistent wrinkles and folds have been up to artists, thus it has been a labor intensive process to make virtual characters put on their clothes with such wrinkles and folds.
There have been another kind of research efforts to generate cloth wrinkles because buckling over a triangle cannot be simulated and simulation with a finer mesh is expensive, [17][18][19] made a layer, separated from cloth mesh, over which they could control and produce wrinkles regardless of mesh shapes and fineness, and sometimes even simulation itself.[3,6] pointed out the hysteresis in cloth behaviors.But they did not handle it for the sake of computational simplicity.[20] dealt with it to produce temporally-distributed different relaxation processes.[21] covered it by fitting the characteristic curves obtained from KES, using non-linear Green-Lagrange strain tensor.

III. ENERGY OF CLOTH AND HYSTERESIS
As described in Section 1, we believe that the persistent change of cloth behaviors comes from the change of energy of cloth.Thus the main problems are how to define energy functions and their 'changes' and how to capture and reflect the change of energy.

Change of energy over time
To understand the development of persistent wrinkles and folds, the first step is to specify the origin which the cloth posture comes from.Basically we can think of a scalar potential energy function, (), which describes the kinematic 'state' of woven cloth.Then, we can define the change of cloth posture over time by differentiating the energy function with respect to time as below: 2does not give us further insight.As [9] had suggested, () can be defined in terms of a vector constraint function, () since the state and behavior of woven cloth are determined mainly by its intrinsically constrained structure, i.e., the crosses of warp and weft threads resulted from interweaving them to form a fabric.Thus, postures of cloth are determined by the constraint functions.The visually meaningful change of cloth posture comes only from the change of energy over time along the constrained direction.This can be rewritten as where  p is a coefficient varying over materials.Equation 2 and 3 mean the change of cloth posture is the change of potential energy.That is, there should be a permanent increase or decrease of potential energy when a permanent change of cloth posture occurs.Thus, the next step is to investigate the cloth behavior and locate where such an influx or outflux of energy occurs.[6] used measurements from KES to build up computational models of cloth behaviors.They mimicked buckling, the unique behavior of cloth, by fitting data which show high resistance to stretch and shear and very low resistance to bend.They ignored, however, another characteristic called hysteresis to simplify their computational models.For example, in plotting of a relationship between force exerted on a fabric and curvature, the regression curve shows the hysteretic behavior that the amount of the exerted force to bend more is much bigger than one of restitution, but it was neglected (see [6] for details).

Hysteretic behaviors of cloth
(4) The hysteresis of cloth behaviors implies that there are some amounts of energy losses over time and behavior.But the majority of cloth simulators based on Equation 1have not allowed such energy losses by keeping the coefficients of the equation from changing for the sake of simplicity and performance of simulation.Nevertheless, they have allowed another kind of energy losses, damping, for numerical stability of simulation.

Damping and hysteresis
Cloth fabrics do not usually oscillate, contrary to similar thin materials like sheets of paper or aluminum, that is, they reach stable equilibrium very quickly as [11] pointed out.Interestingly, the mass-spring-damper system for cloth simulators blows up some amounts of forces to prevent the system from unwanted oscillation.Those forces are called damping and a fraction of negative derivatives of the energy function, i.e., changes of energy over time.Therefore, the damping would be connected to energy losses in the hysteresis of cloth behaviors.
A certain amount of energy cannot just dissipate without influencing anything.The amount of lost energy must be transformed to 'something'.We believe that the hysteretic energy loss can be seen as an idiosyncratic version of damping for cloth, not only resisting the constrained movements but also changing cloth postures persistently.The damping force can also be written using the constraint function, (), as in [9] as where  d is a damping coefficient, and it has a magnitude similar to Equation 3, the change of cloth posture over time.
Eventually, quick stabilization of cloth movements can be done by the hysteretic behavior of cloth and its associated energy conversion from movement to change of posture.

Viscoelasticity and persistent change
Since the MSD system of canonical cloth simulation uses a set of spring and damper connected in parallel, it always returns to the original state after external forces have been removed.Thus, it cannot handle the hysteretic behavior of cloth discussed in the previous section.On the other hand, a serial set of spring and damper can memorize the strain history by using the damper coefficient because displacement of a serially connected damper does not participate in the relaxation process.[20] pointed out the hysteretic behavior and handled it using the generalized Maxwell model.To accomplish this, they adopted the Prony series and fit the series from the real data.They successfully reproduced a retardation phenomenon in the relaxation process.But they did not deal with the persistent wrinkle which is the major goal to be met in this paper.
As mentioned above, pure viscoelastic approaches cannot provide a solution to this problem.Therefore, we adopt a new approach to the problem by taking stiffness coefficients and rest posture values not as constants but as variables, which were a kind of static property of cloth material during the simulation.

Microscopic analysis
The characteristics of a fabric are derived from many things such as a weaving method and the kind of threads.A thread is twisted from a lot of fibers.So the change of cloth posture is consistent in part with the shape of a bundle of fibers [22].When a fabric is folded due to compression, strips of the fabric both in and very next to a wrinkle line become thinner in thickness but more solid in density and this phenomenon produces high stiffness to buckling.Thus, persistent wrinkle lines get to form there.

Change modeling
We classify changes of cloth posture as gradual change and critical change based on the assumption that some amount of the energy, consumed during the hysteretic movement of cloth, is used to change the density and structure of fibers lumped together.A gradual change, , is a phenomenon that fibers are getting to fray out little by little over a long period of time.Thus (5) .
it decreases the density of fibers, then the rigidity of fabric.A critical change, , is that neighboring fibers are compressed one another very strongly over even a short period of time, and then become to act more rigidly.
The former appears over a relatively wide ridge while the latter does over a very narrow crease.Eventually, the former and the latter make persistent wrinkles and folds, respectively.Thus we reflect those characteristics into our adaptive energy model as in the next section.

Linear adaptation for the MSD system
As described so far, the visually persistent change of cloth posture over time comes from the permanent change of energy over time, which is then the permanent change of () over time.Thus, the final step is to define how to detect and reflect the change of ().Our approach is a linear mapping from the fraction of the damping force to the change of cloth posture.Because the time-integrated, fractional amount of the damping force corresponds to the amount of the change of energy during constrained cloth movements.
The amount of change of () should be proportional to the magnitude of the damping force, Equation 5 implies the magnitude is the amount of a virtual displacement along the constrained direction.For instance, if () is for bending, then  () is the amount of change in angle between two adjacent triangles over a specific time step.
We adopt two kinds of parameters, one for the detection threshold and the other for the ratio of recompense.A detection threshold value,  � (), defines a meaningful change of cloth posture with the duration of change, .Then, the actual threshold value is  � () =  � ()/.A ratio of recompense, , defines a proportion of recompense to a change of cloth posture and is used to reflect the change onto a stiffness coefficient and a rest posture (length/angle) value.
Consequently, there are ten parameters in total.First, there are two detection threshold values,  �  () and  �  (), and two associated change duration values,   and   , for gradual and critical changes, respectively.There are two ratios of recompense for a stiffness coefficient,   _ and   _ , and four ratios for rest posture (length/angle) values,   _ ,   _ ,   _ , and   _ .
These can be rewritten as follows: If  � () continues to occur over  for  or , then and  or  ×=   or   � () . V.

EXPERIMENTAL RESULTS
We implemented our cloth simulator basically as in [9], such as triangle-based stretching/ shearing/ bending models, implicit integration with second-order backward difference, contact constraints incorporated into the system and Conjugate Gradient (CG) method to solve the linear system.We dealt with collisions of cloth particle-to-particle and object triangle-to-cloth particle and took advantage of voxelization to cull out non-collided pairs.Our experiments have been done on a machine of Intel Core2Duo 2.4GHz, 2GB main memory, and nVidia GeForce 8800 GTX (768MB memory).
First of all, to see whether our adaptive model deteriorates convergence in solving the linear system, we conducted an experiment that a few strips of cloth with various mesh resolution free-fall to the ground.The residual value and the number of iterations of CG were observed under the lower bound to the residual value and the upper bound to the iteration number.And the time to stabilization was extracted based on them.Stabilization in this context means a stationary state of cloth, i.e., little numerical fluctuation of the residual value in solving the linear system.
On the contrary to the anticipation, there has been no degradation observed on convergence.Rather, our model slightly speeds it up as in Table 1.Similar to [11]'s approach which early-stabilizes the system, our adaptive energy model stabilizes it quicker than the canonical model by alleviating its kinematic burden.Because adaptation (mostly reduction to the initial value) of rest posture values reduces the amount of forces incurred from the difference of current posture values and rest ones.After some experiments with various parameters' values, we've noticed that the most influential factor is the time threshold variables because they are the multipliers of the amount of lost energy feed-backed from the damping force to the system.And likewise,   is more influential than   since a gradual change occurs more frequently.With the one part fixed, a very simple cloth mesh of only one hinge was folded over 9 seconds and then released freely without gravity.The torque exerted on the other part of the hinge was measured as in Table 2.The more frequent a gradual change occurs, the more the fractional amount of lost energy goes back to the system.This makes clothes less deformable with respect to developing persistent wrinkles and folds.
To visually identify the effectiveness, we conducted some qualitative experiments.We made a T-shirt of 13,867 particles, folded it three times and unfolded it as in Fig. 4. For detection thresholds,  �  () = 27%,  �  () = 85%,   = 4.3 sec.and   = 1 sec.are used.For recompense during gradual and critical changes,   _ = 1.1 and   _ = 0.4, and   _ = 2.5 and   _ = 1.0 are used, respectively.Length-based rest posture values are not adjusted due to little visual difference.We observed persistent wrinkles and folds as Fig. 2 and 4 show.The hysteretic behavior of cloth, which has been paid little attention to so far, is addressed by associating it both with an idiosyncratic version of damping for cloth and with the persistent change of cloth posture.Based on the association, we were able to establish an adaptive energy model which takes stiffness coefficients and rest posture values not as constants but as variables over time and behavior.Consequently persistent wrinkles and folds can be produced on the fly.
In the near future, our method can be hybridized with video-based cloth capture and simulation schemes.It would benefit from persistent wrinkles and folds of a real cloth, so that it could change them and/or produce new ones, reflecting the material properties of the cloth for wrinkling and folding.In addition, wrinkles and folds generated by our method can be stored and transferred from one cloth to another.

Fig. 2 .
Fig. 2. Two t-shirts have been folded and then unfolded.Left two images of normal rendering: a t-shirt without our model and one with our model.Middle two images of false-color rendering: rest posture values and curvature values.Rightmost image: a real photo of a similarly folded-and-unfolded t-shirt.

Fig. 3 .
Fig. 3.The change of bundles of fibers in a fabric when folded

TABLE 1 .
32×44-CM STRIPS OF CLOTH FALL TO THE GROUND.STABILIZATION MEANS LITTLE NUMERICAL FLUCTUATION OF THE RESIDUAL VALUE IN SOLVING THE LINEAR SYSTEM.

TABLE 2 .
A COMPARISON OF VARIOUS   VALUES WITH   FIXED.A CLOTH MESH OF ONE HINGE WAS FOLDED OVER 9 SECONDS AND RELEASED FREELY WITHOUT GRAVITY.