KEYWORDS

Weave Patterns, Illumination Model, Multi-Texturing.

ABSTRACT

This paper presents a technique for visualizing woven textiles in real time, while optimizing the realistic appearance. The proposed approach supports rendering of complex weave patterns by adopting Weaving Information File (WIF), a standard from textile Computer Aided Design (CAD) for representing the grammar of weaving. We develop a realistic rendering scheme by combining the grammar representation obtained from the WIF with a procedural thread texture, a suitable textile Bi-directional Reflectance Distribution Function (BRDF) and horizon maps. We employ the multi-texturing approach to meet the real time constraint. Thus our approach to visualizing woven textiles begins from weaving grammar specifications and converts them into textures that can be used for visualizing clothes. We demonstrate the versatility of the proposed approach with examples.

INTRODUCTION

There are two main aspects to the problem of modeling and simulating textiles:

Modelling the dynamics of textiles: Textiles are flexible and exhibit dynamic behavior when interacted with. This is an important characteristic of textiles that has been studied extensively and a large amount of research has been done in the area of modelling dynamics of clothing in the context of textile research (Kawabata 1975; Clapp and Peng 1990; Collier et al.1991; Gan et al 1995; Kang and Yu 1995) and computer graphics (Volino and Magnenat-Thalmann 1995; Baraff and Witkin 1998). Most of these techniques are non real-time, however recent work (Cordier and Magnenat-Thalmann 2002) has made it feasible to simulate the clothing dynamics in real time.

Visualizing textiles: Textiles exhibit micro and macro-geometry (we refer to milli-scale geometry as macro-geometry in this paper). The light interaction with the interwoven threads has to be captured in order to create a realistic appearance.

This paper focuses on the second aspect namely visualizing textiles. Our goal is to create a real time technique that enables rendering of complex weave patterns. The ability to visualize the appearance of the textile realistically is important for the completeness of digital representation of textiles. Such digital virtual textiles have application in fashion industry where computer aided prototyping of clothing is gaining importance, in e-commerce where an authentic representation of real world articles is needed, in clothing for virtual character, etc. We have chosen to meet real-time constrains in order to be able to integrate our approach with clothes designing software, which requires the designer to perceive changes immediately.

There are two main types of textiles namely, the knit and woven textiles. Impressive results have been reported in recent research on visualization of knitwear (Zhong et al 2000; Daubert et al. 2001; Grller et al 1995; Meissner and Eberhardt 1998; Xu et al 2001). Techniques to represent complex knit patterns have been developed (Meissner and Eberhardt 1998, Zhong et al 2000). Relatively less work has been done in the area of woven textiles, especially in the context of representing complex weave patterns. The main issues that have to be addressed when developing a technique for visualizing textiles are:

Zhong H, Xu Y, Guo B and Shum H (2000) Realistic and Efficient Rendering of Free-Form Knitwear, Journal of Visualization and Computer Animation, Special Issue on Cloth Simulation, 2000 pp13-22.

ABOUT THE AUTHOR :

1) Neeharika Adabala obtained her Ph.D. from Indian Institute of Science, Bangalore in 2000. She worked at Philips Research, Bangalore, before joining MIRALab - University of Geneva as a post-doctoral research assistant. Her research at MIRALab focuses on realistic rendering of woven clothes.
Address- MIRALab - University of Geneva,
24 Rue General Dufour,
CH1211 Geneva 4,
Switzerland
E-mail: adabala@miralab.unige.ch

2) Nadia Magnenat-Thalmann has pioneered research into virtual humans over the last 20 years. She studied at the University of Geneva and obtained several degrees including Psychology, Biology, Chemistry, and a PhD in Quantum Physics at the University of Geneva in 1977. From 1977 to 1989, she was a Professor at the University of Montreal in Canada. In 1989, she founded MIRALab, an interdisciplinary creative research laboratory at the University of Geneva. She has published more than 200 papers, is editor-in-chief of the Visual Computer and the Journal of Visualization and Computer Animation journal. She has received several awards and recently, she has been nominated at the Swiss Academy of Technical Sciences.
Address- MIRALab - University of Geneva,
24 Rue General Dufour,
CH1211 Geneva 4,
Switzerland
E-mail- thalmann@miralab.unige.ch

3) Guangzheng Fei obtained his Msc.degree from Hefei University of Technology in 1997, and obtained his Ph.D degree from Institute of Software, Chinese Academy of Sciences in 2001. After doing a short time research in Microsoft Research China, he worked in MIRALab, University of Geneva as a postdoc from 2001 to 2002 before moving to Animation School, Beijing Broadcasting Institute.
Address- Animation School,
Beijing Broadcasting Institute,
China
E-mail- gzfei@bbi.edu.cn


To read more articles on Textile, Fashion, Apparel, Technology, Retail and General please visit www.fibre2fashion.com/industry-article


Clapp TG, Peng H, (1990) "Buckling of Woven Fabrics", Textile Research Journal, 60, pp 228-234 & 285-292.

Collier JR, Collier BJ, OToole G, Sargand SM, (1991) "Drape Prediction by means of Finite-Element Analysis", Journal of the Textile Institute, 82 (1), pp 96-107.

Cordier F and Magnenat-Thalmann N (2002) Real time animation of dresses virtual human. In EUROGRAPHICS 2002, Computer Graphics Forum, Blackwell Publishing, vol. 21, 327336.

Daubert K, Lensch HPA, Heindrich W, Seidel H-P (2001) Efficient Cloth Modelling and Rendering, In: Eurographics Workshop on Rendering 2001, pp 63-70.

Gan L, et al, (1995) "A Study of Fabric Deformation using Non-Linear Finite Elements", Textile Research Journal, 65(11), pp 660-668.

Grller, E., Rau, R., And Strasser, W. (1995). Modelling and visualization of knitwear. In IEEE Transactions on Visualization and Compute Graphics, 302310.

Grller, E., Rau, R., And Strasser, W. (1996). Modelling textile as three dimensional texture. In Rendering Techniques 1996: Proc. 7th Eurographics Workshop on Rendering, 205214.

Heidrich W, Daubert K, Kautz J and Seidel H-P (2000) Illuminating micro geometry based on precomputed visibility. In: Proceedings of SIGGRAPH 2000, pp.455-464.

Kang TJ, Yu WR,(1995)"Drape Simulation of Woven Fabric Using the Finite-Element Method", Journal of the Textile Institute, 86(4), pp 635-648.

Kautz J, McCool M (1999) Interactive Rendering with Arbitrary BRDFs using Separable Approximations, In: Eurographics Workshop on Rendering 1999, pp 281-292.

Kawabata S, "The Standardization and Analysis of Hand Evaluation", Hand Eval. and Stand. Committee of the Textile Machinery Society of Japan, Osaka, 1975.

Meissner M and Eberhardt B (1998) The art of knitted fabrics: Realistic and physically based modelling of knitted fabrics. Computer Graphics Forum, vol 17, no 3, pp 355-362.

Nielsen R, Keates R, Sinkler R, Sally Breckenridge, Dana Cartwright, Jane Eisenstein, Mark Kloosterman, Bjorn Myhre. (1997) Weaving Information File Version 1.1. http://www.mhsoft.com/wif/wif.html.

Sloan P-P, Cohen MF (2000) Interactive Horizon Mapping, In: Eurographics Workshop on Rendering 2000 pp281-286.

Volino P and Magnenat-Thalmann N (2000) Implementing fast Cloth Simulation with Collision Response. In: Computer Graphics International 2000, June 2000, pp257-268.

Westin S, Arvo JR, Torrance KE (1992) Predicting Reflectance Functions from Complex Surfaces. In: Proceedings of SIGGRAPH 1992, pp 255-264.

Xu Y, Chen Y, Lin S, Zhong H, Wu E, Guo B and Shum H (2001) Photorealistic Rendering of Knitwear Using the Lumislice. In: Proceedings of SIGGRAPH 2001, pp 391-398.

Yasuda T, Yokoi S, Toriwaki J, Inagaki K (1992) A Shading Model for Cloth Objects. IEEE Computer Graphics and Applications, vol 12, no 6, pp 15-24.


Representation of interwoven threads
Modelling of light interaction with the threads/ textile.

We briefly describe some of the previous work in the light of these issues. Westin et al. (Westin et al 1992) consider a weave pattern and obtain realistic rendering of textile. In this work they consider a simple alternate weave pattern known as the linen binding and model the illumination at micro-scale and extend it to the milli-scale by performing an integral over the surface. Yasuda et al. (Yasuda et al. 1992) describe a shading model for textiles that emphasizes on the interaction of light with individual fibers that constitute the textile. Grller et al. (Grller et al 1996) use a technique based on three-dimensional textures to model textiles. More recently, Daubert et al. (Daubert et al. 2001) have presented an efficient technique for modelling and rendering clothes, their approach is applicable especially for coarsely woven fabric and knitted fabric.

Apart from the work that directly addresses the problems of rendering clothes there is a class of work based on light interaction with surfaces that exhibit micro-geometry that can be applied to address problems in rendering of clothes. These include the work by Ashikhmin et al. (Ashikhmin et al. 2000) that develops a micro-facet based technique for modelling light interaction with surfaces and applies it effectively to simulate the appearance of velvet and satin. Also the techniques of illuminating micro-geometry described in Heidrich et al. (Heidrich et al. 2000) and Sloan et al. (Sloan and Cohen 2000) find direct application to visualization of textiles as they exhibit micro-geometric details.

All the existing techniques are very powerful and solve the problem of visualizing clothes effectively, but the existing techniques do not address the problem of being able to capture a wide variety of weave patterns. Some variations other than the most common linen binding have been considered in (Ashikhmin et al. 2000) and (Daubert et al. 2001) where patterns similar to satin binding are considered. However the more complex ones have not been addressed.

The objective of our technique is to provide clothes and graphics designers with the capability of generating textures with various designs of weave patterns to texture the clothes designed by them without having to use scans/photographs of sample textiles. Approaches using scans/photographs suffer from the problem of presence of features resulting from the illumination under which the images were generated. Thus there is a need to provide textures with the ability to exhibit the change in illumination behavior, without the illumination being incorporated into the color of the material in a fixed way. Also, we would like to zoom in onto the textile and be able to perceive detail. In order to address these issues we break up the problem of visualizing textiles into:

Representing the weave pattern
Modelling the microstructure of the threads of the textile.
Modelling the light interaction with the textile:

- Reflection behavior
- Shadowing behavior between the threads in the weave pattern.

Our approach addresses the above issues as follows: We use a standard in the textile industry known as the Weaving Information File (WIF) to obtain the complex weaving patterns and represent patterns suitably for generating the color texture. The microstructure of the threads is incorporated into a procedural texture and it is used along with the WIF information to generate a color texture. The WIF information is also used to define a suitable Bi-directional Reflectance Distribution Function (BRDF) that corresponds to the reflection behavior of the textile. The shadowing that occurs between the threads when they are woven together is captured in the horizon maps that are generated with information from the WIF. We are thus able to start from the grammar representation for weaving a textile and generate a visualization of the woven textiles. One of the important aspect of the work is that we not only capture the appearance based on the weave grammar but we also capture the way light interacts with the material.


The organization of the paper is as follows: the next section an overview of our algorithm is given. The details of the four main parts of our algorithm are then described. We discuss the results by presenting example images that demonstrate the capabilities of our algorithm. Conclusions and suggestions for future work are given in the final section.

OVERVIEW OF THE ALGORITHM

The outline of the algorithm is presented in the Figure 1.



The algorithm uses the information in WIF that describes the weave pattern. It is interpreted by the WIF interpreter and made available to the modules namely: the micro-geometry shader, the BRDF generator and the horizon map generator. The micro-geometry shader makes use of a procedural thread texture generator to create a color texture based on the WIF. The procedural thread texture generator is responsible for creating the shading that results from the twisting of the fibers that are spun into the threads.

The BRDF generator takes as input the characteristic of the textile obtained from the weave pattern described in the WIF. It generates a BRDF to correspond to these characteristics. The WIF does not contain any properties that describe the illumination characteristics of the thread, therefore WIF alone does not give the complete information required for defining an illumination model. However, the pattern of weaving contributes significantly to the way the light interacts with a fabric. This is very well exemplified by the fact that the satin weave results in textiles with glossy appearance.


The WIF contains the weave grammar and therefore from this information it is possible to learn which facets of the threads are longer and hence tend to be higher on the surface of the textile. This in turn dictates how such facets of textile cast shadows on the neighboring threads of the textile. The horizon map generator module uses the WIF information to define these shadows that are essential to convey the feeling of depth in the weave pattern. The real time constraint prompted us to use the multi-texturing approach to realize the solution to our algorithm. Each of the above modules results in a texture and the final rendering of the textile is done by compositing the images suitably.

DETAILS OF THE ALGORITHM

The four main modules of our approach namely the WIF interpreter, the micro-geometry shader, the BRDF generator and the horizon map generator are described in this section.

WIF Interpreter

Woven fabrics exhibit well-defined structures; it should be possible to use a procedural or grammar-based technique to represent the weave pattern. However, the wide variety of the weave patterns limits the applicability of such techniques. Fortunately, in CAD of textile there is a well-established technique for representing the weave pattern as WIF format (Nielsen et al. 1997). It is a specification that provides the information required for weaving a fabric in textile looms. The WIF includes information from which the weave pattern can be derived. The pattern indicates how warp and weft threads are interwoven

Since the WIF format was designed for manufacturing purpose rather than for visualization, it is not directly applicable to computer graphics. The WIF contains the threading information that defines which warp thread goes through the heddle in which shaft. It also contains a liftplan that represents the combination of shafts raised for creation of each weft. The weave pattern can be obtained by combining the threading and the liftplan information. We parse the WIF format and derive the weave pattern from it. The weave pattern is represented as a two dimensional matrix, where the rows and the columns can be thought of to index the weft and warp threads respectively. Each entry in the matrix indicates the visibility of the weft or warp thread at that point. The number of weft and warp threads present in the weave pattern determines the dimension of the matrix.

The WIF format also contains color information for each thread that can be directly combined with the pattern matrix to generate the color scheme for the weave pattern. Since the weave pattern matrix indicates which thread is seen at each point on one face of the textile, the texture for the other side of the textile is easily obtained by complementing the matrix. Figure 2 shows a color scheme of a complex weave pattern generated from a WIF format.



Micro-geometry Shader

The woven fabrics are made up of interwoven twisted fibers. We have observed that when one examines woven textiles at the usual distances of viewing the twisted nature of the thread facets is often visible. The visibility is caused by the presence of dark shaded lines that follow the twist of the fibers of the thread. In some cases these lines are seen prominently while in other cases they are less prominent. It is possible to discern whether the threads are tightly or loosely twisted from these shaded lines. We also observed that the shading present on the thread facet tends to remain approximately the same under various lighting conditions. We may attribute this to presence of deep fine grove between the twists of the fiber into which the light never reaches. This feature is unlike the other illumination aspects of the macro-geometry of textiles in the form of shadowing between the threads that show variation with position of light. Also unlike wool where the fibers occupy a significant volume, the threads that are woven into a textile are finer and are limited to a near two-dimensional surface.

The above observations lead us to separate the micro and macro-geometry details present in the woven textiles. We exploit the near two-dimensional nature of the textile surface by modelling the facet of thread visible on the surface of a textile as a two dimensional procedural texture. We design the procedural texture such that it has parameters to capture the tightness of the twist and thickness of the thread. Figure 3 shows examples of the thread shading textures that are generated procedurally by our technique.



Figure 3: Output Of Procedural Texture (a) Very Loosely Twist Of Thread Without Shading. (b) More Tightly Twisted Thread, Noise Is Added To Simulate The Presence Of Fibers About The Thread. (c) Thicker Fibers Twisted Into
Thread. (d) Tightly Twisted Thread.

These thread textures can be used along with the weave pattern to generate a color texture of a weave pattern that has the appearance of being woven from twisted fibers. An example of such a texture is shown in Figure 4.



BRDF Generator

The image that is generated by combining the micro-geometry shader and the weave pattern does not include an illumination model. It only contains the colors of the threads and the pattern of weaving. However, the same weave pattern can have a significantly different appearance based on the material of the threads that constitute the textiles. Also, the same threads can result in a different texture of the textile depending on the weave pattern. This has already been pointed out before when it was mentioned that use of the satin weave pattern results in a more glossy texture than linen weave pattern for the same quality of thread.

In our technique the BRDF generator makes use of the WIF information to define a BRDF. Various approaches to represent the BRDF can be adopted. We choose the micro-facet based BRDF modelling (Ashikhmin et al. 2000) because it is flexible and can be used to model complex reflection behavior. In this approach design of suitable probability distribution functions of micro-facet enables modelling of various types of textures.

We have define a generalization of the formulation used in for satin in [1], to represent the probability distribution. The probability distribution of the micro-facets that we use is:


 

where  represents the probability distribution of the normals of the micro-facet, fwarp and fweft are respectively the fractions of the surface occupied by the warp and weft threads. The probability distributions of facets on individual warp and weft threads are given by the  and respectively. The represents the normalized half vector between the vector to the light and the vector to the viewer. The parameters fwarp and fweft are computed from the WIF. However no information is present in the WIF to enable us to define the probability distributions of the micro-facets on individual threads in the warp and weft directions, namely the functions for and . We use a cylindrical Gaussian with similar to the one described in [1] for this purpose. The width of the thread is used to choose the σx of the cylindrical Gaussian. The details for evaluating the BRDF from a distribution of microfacets are found in (Ashikhmin et al. 2000).

The textiles can appear more biased to the color of the warps or wefts depending on the angle of viewing. This view dependence of the appearance of the cloth is incorporated into the BRDF when the colors that are woven together are very contrasting with the help of the Fresnel's co-efficient. The co-efficient is computed as a weighted sum as follows: When the angle of viewing is close to perpendicular the warp color is given a higher weight. When the angle of viewing is at grazing angles the weft color is given a higher weight. The cosine of the angle between viewing direction and the normal to the surface is used to compute the weight. This is a heuristic approach to incorporate the dependence of appearance on the viewing angle.

We achieve the real-time rendering of the BRDF by using the cube map approach (Kautz and McCool 1999). The BRDF we use is defined for the whole textile rather than for individual thread segments therefore some details like shadowing of threads on each other are not captured by it. These details are captured in the horizon maps that are described in the next section.


Horizon Map Generator

Horizon maps store shadows cast by small surface perturbations on itself. In the case of fabrics in outdoor day light scenes this feature is relatively less important as there is a large amount of light incident on the fabric from all directions resulting in the absence of shadowing among threads. However, in the case of artificial lighting in indoor scenes we have observed that the fabrics tend to look significantly different under lighting and this is due to the shadows cast by the threads on each other.
We observe that the height of a facet of thread above the textile surface is dependent on the length of the facet on which it occurs. However, the height is limited to a maximum level dictate by the tightness of the weave. This height in turn defines the shadow that it can cast on the neighboring thread facets. The WIF information in the form of the weave pattern matrix is used to compute the length of the facet at each location within the weave. This information is then translated into a height field that is further used to compute the horizon maps. We discretize the directions of the light and generate a shadow map for each of the directions. This approach is less accurate than the techniques proposed in [7] and [11], however we found that it gives reasonable results for our real time constraints.

RESULTS AND DISCUSSION

This section presents example images that have been generated using our technique. We implement our algorithm on a PC with a pentium 4 processor (2 GHz), with a nVIDIA graphics card. The clothes that have been rendered in this section were modeled with MIRACloth, the in house software of MIRALab for designing clothes. All the models in the figures consist of approximately 2000 triangles each. We perform the computation of the color texture, BRDF texture and the horizon maps as a preprocessing step. The computation time for the color texture is less than one second and each of the shadow maps takes about half a second. The BRDF computation along with the separation for cube maps requires around 140 seconds. The rendering of the images from these pre-computed textures using multi-texturing is achieved in real-time.

We present example images of jackets created from various weave patterns in Figure 5. Use of the WIF based method enables easy generation of many complex and interesting weave patterns. This result is especially relevant to show that our technique combines the benefits of developments in both computer graphics and textile industry.




The figure 6 shows the power of our illumination model. We are able to capture the variation in appearance of a cloth woven with contrasting colored threads. This is possible because of our BRDF function that models the detailed light interaction. This result is not possible with only texture-based approaches that are widely used. The ability to visualize such textiles realistically gives a designer a clearer perspective of the end product of their design.

We demonstrate the ability of our technique to support viewing at various levels of detail in the Figure 7. It can be seen that our technique results in a very realistic appearance of the textile even at close distances. The presence of shadows enhances the feeling of thickness of the textile.




CONCLUSIONS AND FUTURE WORK

This paper has proposed a technique for generating realistic visualization of woven textiles in real-time. The main features of the work are:

Texture of fabric generated from grammar: Such textures are typically generated as sample bitmaps with no accompanying illumination model. In our case we have developed a more complete representation of the textile that also models the light interaction. As it works in real-time it can be used for visualizing textiles in clothing design.

Compatible with textile CAD: Use of the WIF format that has been a standard in the textile industry from 1996, makes our work compatible with work carried out in the textile industry and thus helps to bridge gaps by sharing knowledge between the computer graphics technologies and textile technologies .

Micro and Macro detail separation: In order to meet the real time constraint and also not lose the details in modelling the cloth, we separated details of the cloth visualization into micro and macro details. The micro details were incorporated into the thread textures that were generated procedurally while the macro details were incorporated into the BRDF and horizon maps.

Weave pattern based BRDF: The ability to represent the weave as a grammar enabled us to define the BRDF based on the pattern. Relatively less importance has been give to this aspect of visualizing textiles in computer aided design tools of the textile industry. However this is of prime importance for realism of the visualization and here again there is a bridging of gaps between the two areas.

Works in real time: The multi-texturing approach was exploited to develop an algorithm that works in real-time.

While the algorithm described in the paper gives realistic results, the BRDF technique presented in the paper uses an estimation over the whole weave pattern. However, it may be possible to investigate a more detailed model of the BRDF based on the grammar of weaving at distinct locations within the textile. Such studies can lead to a Bi-Directional Texture Function (BTF) or a spatially varying BRDF representation for the cloth (Adabala et al. 2003). Such approaches cannot be real-time and has application in off-line rendering of realistic textiles/clothes for digital production rather than for design where the real-time visualization is more useful. One of the important features of cloth that has not been captured is the presence of fibers on the surface of the cloth. We are investigating methods for overcoming this limitation.

ACKNOWLEDGEMENTS

The authors are grateful to Christiane Luible for providing the model of the clothes used in the Figures 5 to 7. Part of this work has been supported by the European project MELIES IST-2000-28700.

REFERENCES

Adabala N, Magnenat-Thalmann N, Fei G, Visualization of Woven Cloth, to appear in Proceedings of the Eurographics Symposium on Rendering 2003

Ashikhmin M, Premoze S, Shirley P (2000) A Microfacet Based BRDF Generator. In: Proceedings of SIGGRAPH 2000, pp 65-74.

Baraff D and Witkin A (1998) Large steps in cloth simulation. In: Proceedings of SIGGRAPH 1998, pp 43--54.