Patent Publication Number: US-2023137622-A1

Title: Client-Server Design Tool with 3D Preview for Laser-Finished Garments

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 16/937,560, filed Jul. 23, 2020, issued as U.S. Pat. No. 11,530,503 on Dec. 20, 2022, which claims priority to U.S. patent application 62/877,830, filed Jul. 23, 2019. These applications are incorporated by reference along with all other references cited in this application. 
    
    
     DESCRIPTION 
     A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the U.S. Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. 
     BACKGROUND OF THE INVENTION 
     The present invention relates to apparel finishing and, more specifically, the use of a laser in the finishing of garments, especially denim including jeans, shirts, shorts, jackets, vests, and skirts, to obtain a faded, distressed, washed, or worn finish or appearance. 
     In 1853, during the California Gold Rush, Levi Strauss, a 24-year-old German immigrant, left New York for San Francisco with a small supply of dry goods with the intention of opening a branch of his brother&#39;s New York dry goods business. Shortly after arriving in San Francisco, Mr. Strauss realized that the miners and prospectors (called the “forty niners”) needed pants strong enough to last through the hard work conditions they endured. So, Mr. Strauss developed the now familiar jeans which he sold to the miners. The company he founded, Levi Strauss &amp; Co., still sells jeans and is the most widely known jeans brand in the world. Levi&#39;s is a trademark of Levi Strauss &amp; Co. or LS&amp;Co. 
     Though jeans at the time of the Gold Rush were used as work clothes, jeans have evolved to be fashionably worn everyday by men and women, showing up on billboards, television commercials, and fashion runways. Fashion is one of the largest consumer industries in the U.S. and around the world. Jeans and related apparel are a significant segment of the industry. 
     As fashion, people are concerned with the appearance of their jeans. Many people desire a faded or worn blue jeans look. In the past, jeans became faded or distressed through normal wash and wear. The apparel industry recognized people&#39;s desire for the worn blue jeans look and began producing jeans and apparel with a variety of wear patterns. The wear patterns have become part of the jeans style and fashion. Some examples of wear patterns include combs or honeycombs, whiskers, stacks, and train tracks. 
     Despite the widespread success jeans have enjoyed, the process to produce modern jeans with wear patterns takes processing time, has relatively high processing cost, and is resource intensive. A typical process to produce jeans uses significant amounts of water, chemicals (e.g., bleaching or oxidizing agents), ozone, enzymes, and pumice stone. For example, it may take about 20 to 60 liters of water to finish each pair of jeans. 
     Therefore, there is a need for an improved process for finishing jeans that reduces environmental impact, processing time, and processing costs, while maintaining the look and style of traditional finishing techniques. There is a need for tool to creating and previewing patterns on jeans before laser finishing. 
     BRIEF SUMMARY OF THE INVENTION 
     A tool allows a user to create new designs for apparel and preview these designs in three dimensions before manufacture. Software and lasers are used in finishing apparel to produce a desired wear pattern or other design. Based on a laser input file with a pattern, a laser will burn the pattern onto apparel. With the tool, the user will be able to create, make changes, and view images of a design, in real time, before burning by a laser. The tool can be accessed or executes via a Web browser. 
     In an implementation, a method includes: providing a garment design tool, accessible via a Web browser or executing in a Web browser, that shows in a window of the Web browser of a three-dimensional preview image of a garment design as customized by a user with a finishing pattern; in the garment design tool, providing an option for the user to select a garment base and upon the user&#39;s selection, showing in a window of the Web browser a first preview image of the selected garment template; in the garment design tool, providing an option for the user to select a wear pattern from a menu of wear patterns and upon the user&#39;s selection, showing on a window of the Web browser a second preview image of the selected garment template with the selected wear pattern, where each wear pattern is associated with a laser input file to be used by a laser to produce that wear pattern onto a garment; at a server, merging a laser input file associated with the selected wear pattern with an image of the selected garment template to generate a merged image; and from the server, receiving the merged image to the Web browser, where the garment design tool shows the merged image as the second preview image. 
     The merged image can be generated by: generating an adjusted base image from the image of the selected garment template without the selected wear pattern; generating a pattern mask based on the laser input file associated with the selected wear pattern; for a pixel at a pixel location of the merged image, obtaining a first contribution for the pixel location of the merged image by combining a first value for a pixel corresponding to the pixel location for the pattern mask and a pixel corresponding to the pixel location for the image of the selected garment template without the selected wear pattern; for the pixel at the pixel location of the merged image, obtaining a second contribution at the pixel location for the merged image by combining a second value for a pixel corresponding to the pixel location for the pattern mask and a pixel corresponding to the pixel location for the adjusted base image; combining the first contribution and second contribution to obtain a color value for a pixel at the pixel location for the second preview image; and using the color value for the pixel at the pixel location in the merged image. 
     In an implementation, a method includes: providing a garment design tool that shows on a computer screen of a three-dimensional preview image of a garment design as customized by a user with a finishing pattern; in the garment design tool, providing an option for the user to select a garment base and upon the user&#39;s selection, showing on the computer screen a first preview image of the selected garment template; in the garment design tool, providing an option for the user to select a first level of wear or a second level of wear; after the first level of wear is selected, showing on the computer screen a second preview image of the selected garment template with the first level of wear; and after the second level of wear is selected, showing on the computer screen a third preview image of the selected garment template with the second level of wear, where the third preview image includes a first damage asset positioned on the garment template, the damage asset includes a hole, tear, rip, or emerging hole. 
     The first damage asset can created by: creating a first damage shape and associating the first damage asset with the first damage shape; based on the first damage shape, using a laser to create the first damage asset on a fabric; after a postlaser wash of the fabric with first damage asset, capturing an image of the first damage asset on the fabric; and using the image of the first damage asset in the third preview image. 
     The three-dimensional preview image can be a three-dimensional photorealistic visualization. The three-dimensional photorealistic visualization can include displaying on a computer screen or in a window a three-dimensional rendering of a customized garment design (before manufacture) as it would appear after a postlaser wash. 
     U.S. patent applications 62/715,788, filed Aug. 7, 2018; 62/636,108, 62/636,107, and 62/636,112, filed Feb. 27, 2018; Ser. No. 15/682,507, filed Aug. 21, 2017; Ser. Nos. 15/841,263 and 15/841,268, filed Dec. 13, 2017; and 62/579,863 and 62/579,867, filed Oct. 31, 2017; and Ser. No. 16/177,387, 16/177,407, and 16/177,412, filed Oct. 31, 2018, are incorporated by reference. 
     Other objects, features, and advantages of the present invention will become apparent upon consideration of the following detailed description and the accompanying drawings, in which like reference designations represent like features throughout the figures. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG.  1    shows a block diagram of a system for creating, designing, producing apparel products with laser finishing. 
         FIG.  2    shows a flow for a finishing technique that includes the use of a laser. 
         FIG.  3    shows a weave pattern for a denim fabric. 
         FIGS.  4 - 7    show how the laser alters the color of ring-dyed yarn. 
         FIG.  8    shows a flow for finishing in two finishing steps and using base templates. 
         FIG.  9    shows multiple base templates and multiple resulting finished products from each of these templates. 
         FIG.  10    shows a distributed computer network. 
         FIG.  11    shows a computer system that can be used in laser finishing. 
         FIG.  12    shows a system block diagram of the computer system. 
         FIGS.  13 - 14    show examples of mobile devices. 
         FIG.  15    shows a system block diagram of a mobile device. 
         FIG.  16    shows a block diagram of a system for creating, designing, producing apparel products with laser finishing. 
         FIG.  17    shows a block diagram of a specific implementation of a preview tool. 
         FIG.  18    shows a block diagram of a brief tool. 
         FIG.  19    shows a technique of generating a preview of a finished image using a brief tool. 
         FIG.  20    shows a laser pattern mask that is created from a laser input file. 
         FIG.  21    shows a base image hue saturation lightness adjustment (HSL) layer that is created from the base image. 
         FIG.  22    shows a technique of creating a masked solid color adjustment layer. 
         FIGS.  23 - 24    shows examples of two different adjustments for bright point. 
         FIG.  25    shows adjustment of intensity. 
         FIG.  26    shows an array of images showing the effects of adjustments in bright point and intensity. 
         FIG.  27    shows a block diagram of a system of generating a preview of a laser-finishing pattern on a garment, such as jeans. 
         FIG.  28    shows an overall flow for creating a three-dimensional preview for an apparel product, such as a pair of jeans. 
         FIGS.  29 A- 29 F  show photographs of cutting a garment into pieces. 
         FIG.  30    shows a system for taking photographs of the garment pieces. 
         FIGS.  31 A- 31 K  show photographs of cut garment pieces and corresponding extracted neutral digital pattern pieces. 
         FIGS.  32 A- 32 C  show extracted shadow neutral pattern pieces.  FIG.  32 D  shows a shadow neutral texture created using the extracted shadow neutral pattern pieces and a color layer. 
         FIG.  33 A  shows a created shadow neutral texture.  FIG.  33 B  shows a front view of a three-dimensional model, which the shadow neutral texture will be applied or mapped to.  FIG.  33 C  shows a result of mapping the shadow neutral texture to the three-dimensional model.  FIG.  33 D  shows a back or rear view of the three-dimensional model, which the shadow neutral texture will be applied or mapped to.  FIG.  33 E  shows a result of mapping the shadow neutral texture to the three-dimensional model. 
         FIG.  34 A  shows an example of a simulated light source positioned to a right of and above the garment.  FIG.  34 B  shows an example of a simulated light source positioned directly above the garment.  FIG.  34 C  shows an example of a simulated light source positioned to a left of and above the garment. 
         FIGS.  35 A- 35 E  show how a single three-dimensional model can be used with multiple shadow neutral texture to generate a multiple preview images. 
         FIG.  36    shows a flow for creating three-dimensional imagery for an e-commerce Web site to sell laser finished garments, such as jeans, to a consumer. 
         FIG.  37    shows scan fit model technique. 
         FIG.  38    shows a clean up scan technique. 
         FIG.  39    shows a deconstruct and photograph garment technique. 
         FIG.  40    shows a create two-dimensional base texture technique. 
         FIG.  41    shows a create base mesh technique. 
         FIG.  42    shows a UV mapping technique. 
         FIG.  43    shows a wrap scan technique. 
         FIG.  44    shows a clean wrap technique. 
         FIG.  45    shows a project detail technique. 
         FIG.  46    shows an extract maps and export technique. 
         FIG.  47    shows a materials technique. 
         FIG.  48    shows a multiple texture alignment technique. 
         FIG.  49    shows a decimation technique. 
         FIG.  50    shows a three.JS technique. 
         FIG.  51    shows a damage technique. 
         FIG.  52    shows a bend and decimate technique. 
         FIG.  53    shows a three.JS technique. 
         FIG.  54    shows a scale and check technique. 
         FIG.  55    shows an apply or adjust laser pattern technique. 
         FIGS.  56 - 69    show screens for an ordering flow and options available via the Future Finish Web site for customizing and ordering a pair of jeans for men. 
         FIGS.  70 - 89    show screens for an ordering flow and options available via the Future Finish Web site for customizing and ordering a pair of jeans for women. 
         FIGS.  90 - 99    relate to a pattern resize tool. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       FIG.  1    shows a process flow  101  for manufacturing apparel such as jeans, where garments are finished using a laser. The fabric or material for various apparel including jeans is made from natural or synthetic fibers  106 , or a combination of these. A fabric mill takes fibers and processes  109  these fibers to produce a laser-sensitive finished fabric  112 , which has enhanced response characteristics for laser finishing. 
     Some examples of natural fibers include cotton, flax, hemp, sisal, jute, kenaf, and coconut; fibers from animal sources include silk, wool, cashmere, and mohair. Some examples of synthetic fibers include polyester, nylon, spandex or elastane, and other polymers. Some examples of semisynthetic fibers include rayon, viscose, modal, and lyocell, which are made from a regenerated cellulose fiber. A fabric can be a natural fiber alone (e.g., cotton), a synthetic fiber alone (e.g., polyester alone), a blend of natural and synthetic fibers (e.g., cotton and polyester blend, or cotton and spandex), or a blend of natural and semisynthetic fibers, or any combination of these or other fibers. 
     For jeans, the fabric is typically a denim, which is a sturdy cotton warp-faced textile in which a weft passes under two or more warp threads. This twill weaving produces a diagonal ribbing. The yarns (e.g., warp yarns) are dyed using an indigo or blue dye, which is characteristic of blue jeans. 
     Although this patent describes the apparel processing and finishing with respect to jeans, the invention is not limited jeans or denim products, such as shirts, shorts, jackets, vests, and skirts. The techniques and approaches described are applicable to other apparel and products, including nondenim products and products made from knit materials. Some examples include T-shirts, sweaters, coats, sweatshirts (e.g., hoodies), casual wear, athletic wear, outerwear, dresses, evening wear, sleepwear, loungewear, underwear, socks, bags, backpacks, uniforms, umbrellas, swimwear, bed sheets, scarves, and many others. 
     A manufacturer creates a design  115  (design I) of its product. The design can be for a particular type of clothing or garment (e.g., men&#39;s or women&#39;s jean, or jacket), sizing of the garment (e.g., small, medium, or large, or waist size and inseam length), or other design feature. The design can be specified by a pattern or cut used to form pieces of the pattern. A fabric is selected and patterned and cut  118  based on the design. The pattern pieces are assembled together  121  into the garment, typically by sewing, but can be joined together using other techniques (e.g., rivets, buttons, zipper, hoop and loop, adhesives, or other techniques and structures to join fabrics and materials together). 
     Some garments can be complete after assembly and ready for sale. However, other garments are unfinished  122  and have additional finishing  124 , which includes laser finishing. The finishing may include tinting, washing, softening, and fixing. For distressed denim products, the finishing can include using a laser to produce a wear pattern according to a design  127  (design II). Some additional details of laser finishing are described in U.S. patent application 62/377,447, filed Aug. 19, 2016, and Ser. No. 15/682,507, filed Aug. 21, 2017, are incorporated by reference along with all other references cited in this application. 
     Design  127  is for postassembly aspects of a garment while design  115  is for preassembly aspects of a garment. After finishing, a finished product  130  (e.g., a pair of jeans) is complete and ready for sale. The finished product is inventoried and distributed  133 , delivered to stores  136 , and sold to consumers or customers  139 . The consumer can buy and wear worn blue jeans without having to wear out the jeans themselves, which usually takes significant time and effort. 
     Traditionally, to produce distressed denim products, finishing techniques include dry abrasion, wet processing, oxidation, or other techniques, or combinations of these, to accelerate wear of the material in order to produce a desired wear pattern. Dry abrasion can include sandblasting or using sandpaper. For example, some portions or localized areas of the fabric are sanded to abrade the fabric surface. Wet processing can include washing in water, washing with oxidizers (e.g., bleach, peroxide, ozone, or potassium permanganate), spraying with oxidizers, washing with abrasives (e.g., pumice, stone, or grit). 
     These traditional finishing approaches take time, incur expense, and impact the environment by utilizing resources and producing waste. It is desirable to reduce water and chemical usage, which can include eliminating the use agents such as potassium permanganate and pumice. An alternative to these traditional finishing approaches is laser finishing. 
       FIG.  2    shows a finishing technique that includes the use of a laser  207 . A laser is a device that emits light through a process of optical amplification based on the stimulated emission of electromagnetic radiation. Lasers are used for bar code scanning, medical procedures such as corrective eye surgery, and industrial applications such as welding. A particular type of laser for finishing apparel is a carbon dioxide laser, which emits a beam of infrared radiation. 
     The laser is controlled by an input file  210  and control software  213  to emit a laser beam onto fabric at a particular position or location at a specific power level for a specific amount of time. Further, the power of the laser beam can be varied according to a waveform such as a pulse wave with a particular frequency, period, pulse width, or other characteristic. Some aspects of the laser that can be controlled include the duty cycle, frequency, marking or burning speed, and other parameters. 
     The duty cycle is a percentage of laser emission time. Some examples of duty cycle percentages include 40, 45, 50, 55, 60, 80, and 100 percent. The frequency is the laser pulse frequency. A low frequency might be, for example, 5 kilohertz, while a high frequency might be, for example, 25 kilohertz. Generally, lower frequencies will have higher surface penetration than high frequencies, which has less surface penetration. 
     The laser acts like a printer and “prints,” “marks,” or “burns” a wear pattern (specified by input file  210 ) onto the garment. The fabric that is exposed to the laser beam (e.g., infrared beam) changes color, lightening the fabric at a specified position by a certain amount based on the laser power, time of exposure, and waveform used. The laser continues from position to position until the wear pattern is completely printed on the garment. 
     In a specific implementation, the laser has a resolution of about 34 dots per inch (dpi), which on the garment is about 0.7 millimeters per pixel. The technique described in this patent is not dependent on the laser&#39;s resolution, and will work with lasers have more or less resolution than 34 dots per inch. For example, the laser can have a resolution of 10, 15, 20, 25, 30, 40, 50, 60, 72, 80, 96, 100, 120, 150, 200, 300, or 600 dots per inch, or more or less than any of these or other values. Typically, the greater the resolution, the finer the features that can be printed on the garment in a single pass. By using multiple passes (e.g., 2, 3, 4, 5, or more passes) with the laser, the effective resolution can be increased. In an implementation, multiple laser passes are used. 
     Jeans are dyed using an indigo dye, which results in a blue colored fabric. The blue color is caused by chromophores trapped in the fabric which reflect light as a blue color. U.S. patent applications 62/433,739, filed Dec. 13, 2016, and Ser. No. 15/841,263, filed Dec. 13, 2017, which are incorporated by reference, describe a denim material with enhanced response characteristics to laser finishing. Using a denim material made from indigo ring-dyed yarn, variations in highs and lows in indigo color shading is achieved by using a laser. 
     Laser finishing can be used on denim and also other materials too. Laser finishing can be used to alter the coloration of any material where the sublimation (or decomposition in some cases) temperature of the dye or the material itself is within range of the operating temperatures of the laser during use. Color change is a product of either the removal of dyestuff or the removal of material uncovering material of another color. 
       FIG.  3    shows a weave pattern of a denim fabric  326 . A loom does the weaving. In weaving, warp is the lengthwise or longitudinal yarn or thread in a roll, while weft or woof is the transverse thread. The weft yarn is drawn through the warp yarns to create the fabric. In  FIG.  3   , the warps extend in a first direction  335  (e.g., north and south) while the wefts extend in a direction  337  (e.g., east and west). The wefts are shown as a continuous yarn that zigzags across the wefts (e.g., carried across by a shuttle or a rapier of the loom). Alternatively, the wefts could be separate yarns. In some specific implementations, the warp yarn has a different weight or thickness than the weft yarns. For example, warp yarns can be coarser than the weft yarns. 
     For denim, dyed yarn is used for the warp, and undyed or white yarn is typically used for the weft yarn. In some denim fabrics, the weft yarn can be dyed and have a color other than white, such as red. In the denim weave, the weft passes under two or more warp threads.  FIG.  3    shows a weave with the weft passing under two warp threads. Specifically, the fabric weave is known as a 2×1 right-hand twill. For a right-hand twill, a direction of the diagonal is from a lower left to an upper right. For a left-hand twill, a direction of the diagonal is from an lower right to an upper left. But in other denim weaves, the weft can pass under a different number of warp threads, such as 3, 4, 5, 6, 7, 8, or more. In other implementation, the denim is a 3×1 right-hand twill, which means the weft passes under three warp threads. 
     Because of the weave, one side of the fabric exposes more of the warp yarns (e.g., warp-faced side), while the other side exposes more of the weft yarns (e.g., weft-faced side). When the warp yarns are blue and weft yarns are white, a result of the weave is the warp-faced side will appear mostly blue while the reverse side, weft-faced side, will appear mostly white. 
     In denim, the warp is typically 100 percent cotton. But some warp yarns can be a blend with, for example, elastane to allow for warp stretch. And some yarns for other fabrics may contain other fibers, such as polyester or elastane as examples. 
     In an indigo ring-dyed yarn, the indigo does not fully penetrate to a core of the yarn. Rather, the indigo dye is applied at a surface of the cotton yarn and diffuses toward the interior of the yarn. So when the yarn is viewed cross-sectionally, the indigo dyed material will appear as a ring on around an outer edge of the yarn. The shading of the indigo dye will generally lighten in a gradient as a distance increases from the surface of the yarn to the center (or core) of the yarn. 
     During laser finishing, the laser removes a selected amount of the surface of the indigo dyed yarn (e.g., blue color) to reveal a lighter color (e.g., white color) of the inner core of the ring-dyed yarn. The more of the indigo dyed material that is removed, the lighter the color (e.g., lighter shade of blue). The more of the indigo dyed material that remains, the darker the color (e.g., deeper shade of blue). The laser can be controlled precisely to remove a desired amount of material to achieve a desired shade of blue in a desired place or position on the material. 
     With laser finishing, a finish can be applied (e.g., printed or burned via the laser) onto apparel (e.g., jeans and denim garments) that will appear similar to or indistinguishable from a finish obtained using traditional processing techniques (e.g., dry abrasion, wet processing, and oxidation). Laser finishing of apparel is less costly and is faster than traditional finishing techniques and also has reduced environmental impact (e.g., eliminating the use of harsh chemical agents and reducing waste). 
       FIGS.  4 - 7    show how the laser alters the color of ring-dyed yarn.  FIG.  4    shows a laser beam  407  striking a ring-dyed yarn  413  having indigo-dyed fibers  418  and white core fibers  422 . The laser removes the dyed fibers, which can be by vaporizing or otherwise destroying the cotton fiber via heat or high temperature that the laser beam causes. 
       FIG.  5    shows the laser using a first power level setting or first exposure time setting, or a combination of these, to remove some of the dyed fibers, but not revealing any of the white core fibers. The undyed fibers remain covered. There is no color change. 
       FIG.  6    shows the laser using a second power level setting or second exposure time setting, or a combination of these, to remove more of the dyed fibers than in  FIG.  5   . The second power level is greater than the first power level, or the second exposure time setting is greater than the first exposure time setting, or a combination of these. The result is some of the undyed fibers are revealed. There is a color change, subtle highlighting. 
       FIG.  7    shows the laser using a third power level setting or third exposure time setting, or a combination of these, to remove even more of the dyed fibers than in  FIG.  6   . The third power level is greater than the second power level, or the third exposure time setting is greater than the second exposure time setting, or a combination of these. The result is more of the undyed fibers are revealed. There is a color change, brighter highlighting. 
     As shown in  FIG.  2   , before laser  207 , the fabric can be prepared  216  for the laser, which may be referred to as a base preparation, and can include a prelaser wash. This step helps improves the results of the laser. After the laser, there can be a postlaser wash  219 . This wash can clean or remove any residue caused by the laser, such as removing any charring (which would appear as brown or slightly burning). There can be additional finish  221 , which may be including tinting, softening, or fixing, to complete finishing. 
       FIG.  8    shows a technique where finishing  124  is divided into two finishing steps, finishing I and finishing II. Finishing I  808  is an initial finishing to create base templates  811 . With finishing II  814 , each base template can be used to manufacture multiple final finishes  817 . 
       FIG.  9    shows multiple base templates, base A, base B, and base C. These base templates may be referred to as base fit fabrics or BFFs. In an implementation, the base templates can be created during base prep and prelaser wash  216  (see  FIG.  2   ). During finishing I, by using different wash  216  methods or recipes, each different base template can be created. 
     Finishing II can include laser finishing. Base A is lasered with different designs to obtain various final product based on base A (e.g., FP(A) 1  to FP(A)i, where i is an integer). Base B is lasered with different designs to obtain various final product based on base B (e.g., FP(B) 1  to FP(B)j, where j is an integer). Base C is lasered with different designs to obtain various final product based on base C (e.g., FP(C) 1  to FP(C)k, where k is an integer). Each base can be used to obtain a number of different final designs. For example, the integers i, j, and k can have different values. 
     As described above and shown in  FIG.  2   , after finishing II, there can be additional finishing during post laser wash  219  and additional finishing  221 . For example, during the postlaser wash, there may be additional tinting to the lasered garments. This tinting can result in an overall color cast to change the look of the garment. 
     In an implementation, laser finishing is used to create many different finishes (each a different product) easily and quickly from the same fabric template or BFF or “blank.” For each fabric, there will be a number of base fit fabrics. These base fit fabrics are lasered to produce many different finishes, each being a different product for a product line. Laser finishing allows greater efficiency because by using fabric templates (or base fit fabrics), a single fabric or material can be used to create many different products for a product line, more than is possible with traditional processing. This reduces the inventory of different fabric and finish raw materials. 
     For a particular product (e.g.,  511  product), there can be two different fabrics, such as base B and base C of  FIG.  9   . The fabrics can be part of a fabric tool kit. For base B, there are multiple base fit fabrics, FP(B) 1 , FP(B) 2 , and so forth. Using laser finishing, a base fit fabric (e.g., FP(B) 1 ) can be used to product any number of different finishes (e.g., eight different finishes), each of which would be considered a different product model. 
     For example, FP(B) 1  can be laser finished using different laser files (e.g., laser file  1 , laser file  2 , laser file  3 , or others) or have different postlaser wash (e.g., postlaser wash recipe  1 , postlaser wash recipe  2 , postlaser wash recipe  3 , or others), or any combination of these. A first product would be base fit fabric FP(B) 1  lasered using laser file  1  and washed using postlaser wash recipe  1 . A second product would be base fit fabric FP(B) 1  lasered using laser file  2  and washed using postlaser wash recipe  1 . A third product would be base fit fabric FP(B) 1  lasered using laser file  2  and washed using postlaser wash recipe  2 . And there can be many more products based on the same base fit fabric. Each can have a different product identifier or unique identifier, such as a different PC9 or nine-digit product code. 
     With laser finishing, many products or PC9s are produced for each base fit fabric or blank. Compared to traditional processing, this is a significant improvement in providing greater numbers of different products with less different fabrics and finishes (each of which in traditional processing consume resources, increasing cost, and take time). Inventory is reduced. The technique of providing base fit finishes or fabric templates for laser finishing has significant and many benefits. 
     A system incorporating laser finishing can include a computer to control or monitor operation, or both.  FIG.  10    shows an example of a computer that is component of a laser finishing system. The computer may be a separate unit that is connected to a system, or may be embedded in electronics of the system. In an embodiment, the invention includes software that executes on a computer workstation system or server, such as shown in  FIG.  10   . 
       FIG.  10    is a simplified block diagram of a distributed computer network  1000  incorporating an embodiment of the present invention. Computer network  1000  includes a number of client systems  1013 ,  1016 , and  1019 , and a server system  1022  coupled to a communication network  1024  via a plurality of communication links  1028 . Communication network  1024  provides a mechanism for allowing the various components of distributed network  1000  to communicate and exchange information with each other. 
     Communication network  1024  may itself be comprised of many interconnected computer systems and communication links. Communication links  1028  may be hardwire links, optical links, satellite or other wireless communications links, wave propagation links, or any other mechanisms for communication of information. Communication links  1028  may be DSL, Cable, Ethernet or other hardwire links, passive or active optical links, 3G, 3.5G, 4G and other mobility, satellite or other wireless communications links, wave propagation links, or any other mechanisms for communication of information. 
     Various communication protocols may be used to facilitate communication between the various systems shown in  FIG.  10   . These communication protocols may include VLAN, MPLS, TCP/IP, Tunneling, HTTP protocols, wireless application protocol (WAP), vendor-specific protocols, customized protocols, and others. While in one embodiment, communication network  1024  is the Internet, in other embodiments, communication network  1024  may be any suitable communication network including a local area network (LAN), a wide area network (WAN), a wireless network, an intranet, a private network, a public network, a switched network, and combinations of these, and the like. 
     Distributed computer network  1000  in  FIG.  10    is merely illustrative of an embodiment incorporating the present invention and does not limit the scope of the invention as recited in the claims. One of ordinary skill in the art would recognize other variations, modifications, and alternatives. For example, more than one server system  1022  may be connected to communication network  1024 . As another example, a number of client systems  1013 ,  1016 , and  1019  may be coupled to communication network  1024  via an access provider (not shown) or via some other server system. 
     Client systems  1013 ,  1016 , and  1019  typically request information from a server system which provides the information. For this reason, server systems typically have more computing and storage capacity than client systems. However, a particular computer system may act as both as a client or a server depending on whether the computer system is requesting or providing information. Additionally, although aspects of the invention have been described using a client-server environment, it should be apparent that the invention may also be embodied in a standalone computer system. 
     Server  1022  is responsible for receiving information requests from client systems  1013 ,  1016 , and  1019 , performing processing required to satisfy the requests, and for forwarding the results corresponding to the requests back to the requesting client system. The processing required to satisfy the request may be performed by server system  1022  or may alternatively be delegated to other servers connected to communication network  1024 . 
     Client systems  1013 ,  1016 , and  1019  enable users to access and query information stored by server system  1022 . In a specific embodiment, the client systems can run as a standalone application such as a desktop application or mobile smartphone or tablet application. In another embodiment, a “Web browser” application executing on a client system enables users to select, access, retrieve, or query information stored by server system  1022 . Examples of Web browsers include the Internet Explorer browser program provided by Microsoft Corporation, Firefox browser provided by Mozilla, Chrome browser provided by Google, Safari browser provided by Apple, and others. 
     In a client-server environment, some resources (e.g., files, music, video, or data) are stored at the client while others are stored or delivered from elsewhere in the network, such as a server, and accessible via the network (e.g., the Internet). Therefore, the user&#39;s data can be stored in the network or “cloud.” For example, the user can work on documents on a client device that are stored remotely on the cloud (e.g., server). Data on the client device can be synchronized with the cloud. 
       FIG.  11    shows an exemplary client or server system of the present invention. In an embodiment, a user interfaces with the system through a computer workstation system, such as shown in  FIG.  11   .  FIG.  11    shows a computer system  1101  that includes a monitor  1103 , screen  1105 , enclosure  1107  (may also be referred to as a system unit, cabinet, or case), keyboard or other human input device  1109 , and mouse or other pointing device  1111 . Mouse  1111  may have one or more buttons such as mouse buttons  1113 . 
     It should be understood that the present invention is not limited any computing device in a specific form factor (e.g., desktop computer form factor), but can include all types of computing devices in various form factors. A user can interface with any computing device, including smartphones, personal computers, laptops, electronic tablet devices, global positioning system (GPS) receivers, portable media players, personal digital assistants (PDAs), other network access devices, and other processing devices capable of receiving or transmitting data. 
     For example, in a specific implementation, the client device can be a smartphone or tablet device, such as the Apple iPhone product family, Apple iPad product family, Apple iPod product family, Samsung Galaxy product family, Google Nexus and Pixel product families, and Microsoft devices (e.g., Microsoft Surface product family). Typically, a smartphone includes a telephony portion (and associated radios) and a computer portion, which are accessible via a touch screen display. 
     There is nonvolatile memory to store data of the telephone portion (e.g., contacts and phone numbers) and the computer portion (e.g., application programs including a browser, pictures, games, videos, and music). The smartphone typically includes a camera (e.g., front facing camera or rear camera, or both) for taking pictures and video. For example, a smartphone or tablet can be used to take live video that can be streamed to one or more other devices. 
     Enclosure  1107  houses familiar computer components, some of which are not shown, such as a processor, memory, mass storage devices  1117 , and the like. Mass storage devices  1117  may include mass disk drives, floppy disks, magnetic disks, optical disks, magneto-optical disks, fixed disks, hard disks, CD-ROMs, recordable CDs, DVDs, recordable DVDs (e.g., DVD-R, DVD+R, DVD-RW, DVD+RW, HD-DVD, or Blu-ray Disc), flash and other nonvolatile solid-state storage (e.g., USB flash drive or solid state drive (SSD)), battery-backed-up volatile memory, tape storage, reader, and other similar media, and combinations of these. 
     A computer-implemented or computer-executable version or computer program product of the invention may be embodied using, stored on, or associated with computer-readable medium. A computer-readable medium may include any medium that participates in providing instructions to one or more processors for execution. Such a medium may take many forms including, but not limited to, nonvolatile, volatile, and transmission media. Nonvolatile media includes, for example, flash memory, or optical or magnetic disks. Volatile media includes static or dynamic memory, such as cache memory or RAM. Transmission media includes coaxial cables, copper wire, fiber optic lines, and wires arranged in a bus. Transmission media can also take the form of electromagnetic, radio frequency, acoustic, or light waves, such as those generated during radio wave and infrared data communications. 
     For example, a binary, machine-executable version, of the software of the present invention may be stored or reside in RAM or cache memory, or on mass storage device  1117 . The source code of the software of the present invention may also be stored or reside on mass storage device  1117  (e.g., hard disk, magnetic disk, tape, or CD-ROM). As a further example, code of the invention may be transmitted via wires, radio waves, or through a network such as the Internet. 
       FIG.  12    shows a system block diagram of computer system  1101  used to execute the software of the present invention. As in  FIG.  11   , computer system  1101  includes monitor  1103 , keyboard  1109 , and mass storage devices  1117 . Computer system  1101  further includes subsystems such as central processor  1202 , system memory  1204 , input/output (I/O) controller  1206 , display adapter  1208 , serial or universal serial bus (USB) port  1212 , network interface  1218 , and speaker  1220 . The invention may also be used with computer systems with additional or fewer subsystems. For example, a computer system could include more than one processor  1202  (i.e., a multiprocessor system) or a system may include a cache memory. 
     Arrows such as  1222  represent the system bus architecture of computer system  1101 . However, these arrows are illustrative of any interconnection scheme serving to link the subsystems. For example, speaker  1220  could be connected to the other subsystems through a port or have an internal direct connection to central processor  1202 . The processor may include multiple processors or a multicore processor, which may permit parallel processing of information. Computer system  1101  shown in  FIG.  12    is but an example of a computer system suitable for use with the present invention. Other configurations of subsystems suitable for use with the present invention will be readily apparent to one of ordinary skill in the art. 
     Computer software products may be written in any of various suitable programming languages, such as C, C++, C #, Pascal, Fortran, Perl, Matlab (from MathWorks), SAS, SPSS, JavaScript, AJAX, Java, Python, Erlang, and Ruby on Rails. The computer software product may be an independent application with data input and data display modules. Alternatively, the computer software products may be classes that may be instantiated as distributed objects. The computer software products may also be component software such as Java Beans (from Oracle Corporation) or Enterprise Java Beans (EJB from Oracle Corporation). 
     An operating system for the system may be one of the Microsoft Windows® family of systems (e.g., Windows 95, 98, Me, Windows NT, Windows 2000, Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10, Windows CE, Windows Mobile, Windows RT), Symbian OS, Tizen, Linux, HP-UX, UNIX, Sun OS, Solaris, Mac OS X, Apple iOS, Android, Alpha OS, AIX, IRIX32, or IRIX64. Other operating systems may be used. Microsoft Windows is a trademark of Microsoft Corporation. 
     Any trademarks or service marks used in this patent are property of their respective owner. Any company, product, or service names in this patent are for identification purposes only. Use of these names, logos, and brands does not imply endorsement. 
     Furthermore, the computer may be connected to a network and may interface to other computers using this network. The network may be an intranet, internet, or the Internet, among others. The network may be a wired network (e.g., using copper), telephone network, packet network, an optical network (e.g., using optical fiber), or a wireless network, or any combination of these. For example, data and other information may be passed between the computer and components (or steps) of a system of the invention using a wireless network using a protocol such as Wi-Fi (IEEE standards 802.11, 802.11a, 802.11b, 802.11e, 802.11g, 802.11i, 802.11n, 802.11ac, and 802.11ad, just to name a few examples), near field communication (NFC), radio-frequency identification (RFID), mobile or cellular wireless (e.g., 2G, 3G, 4G, 3GPP LTE, WiMAX, LTE, LTE Advanced, Flash-OFDM, HIPERMAN, iBurst, EDGE Evolution, UMTS, UMTS-TDD, 1×RDD, and EV-DO). For example, signals from a computer may be transferred, at least in part, wirelessly to components or other computers. 
     In an embodiment, with a Web browser executing on a computer workstation system, a user accesses a system on the World Wide Web (WWW) through a network such as the Internet. The Web browser is used to download Web pages or other content in various formats including HTML, XML, text, PDF, and postscript, and may be used to upload information to other parts of the system. The Web browser may use uniform resource identifiers (URLs) to identify resources on the Web and hypertext transfer protocol (HTTP) in transferring files on the Web. 
     In other implementations, the user accesses the system through either or both of native and nonnative applications. Native applications are locally installed on the particular computing system and are specific to the operating system or one or more hardware devices of that computing system, or a combination of these. These applications (which are sometimes also referred to as “apps”) can be updated (e.g., periodically) via a direct internet upgrade patching mechanism or through an applications store (e.g., Apple iTunes and App store, Google Play store, Windows Phone store, and Blackberry App World store). 
     The system can run in platform-independent, nonnative applications. For example, client can access the system through a Web application from one or more servers using a network connection with the server or servers and load the Web application in a Web browser. For example, a Web application can be downloaded from an application server over the Internet by a Web browser. Nonnative applications can also be obtained from other sources, such as a disk. 
       FIGS.  13 - 14    show examples of mobile devices, which can be mobile clients. Mobile devices are specific implementations of a computer, such as described above.  FIG.  13    shows a smartphone device  1301 , and  FIG.  14    shows a tablet device  1401 . Some examples of smartphones include the Apple iPhone, Samsung Galaxy, and Google Pixel family of devices. Some examples of tablet devices include the Apple iPad, Apple iPad Pro, Samsung Galaxy Tab, and Google Nexus and Pixelbook family of devices. 
     Smartphone  1301  has an enclosure that includes a screen  1303 , button  1309 , speaker  1311 , camera  1313 , and proximity sensor  1335 . The screen can be a touch screen that detects and accepts input from finger touch or a stylus. The technology of the touch screen can be a resistive, capacitive, infrared grid, optical imaging, or pressure-sensitive, dispersive signal, acoustic pulse recognition, or others. The touch screen is screen and a user input device interface that acts as a mouse and keyboard of a computer. 
     Button  1309  is sometimes referred to as a home button and is used to exit a program and return the user to the home screen. The phone may also include other buttons (not shown) such as volume buttons and on-off button on a side. The proximity detector can detect a user&#39;s face is close to the phone, and can disable the phone screen and its touch sensor, so that there will be no false inputs from the user&#39;s face being next to screen when talking. 
     Tablet  1401  is similar to a smartphone. Tablet  1401  has an enclosure that includes a screen  1403 , button  1409 , and camera  1413 . Typically the screen (e.g., touch screen) of a tablet is larger than a smartphone, usually 7, 8, 9, 10, 12, 13, or more inches (measured diagonally). 
       FIG.  15    shows a system block diagram of mobile device  1501  used to execute the software of the present invention. This block diagram is representative of the components of smartphone or tablet device. The mobile device system includes a screen  1503  (e.g., touch screen), buttons  1509 , speaker  1511 , camera  1513 , motion sensor  1515 , light sensor  1517 , microphone  1519 , indicator light  1521 , and external port  1523  (e.g., USB port or Apple Lightning port). These components can communicate with each other via a bus  1525 . 
     The system includes wireless components such as a mobile network connection  1527  (e.g., mobile telephone or mobile data), Wi-Fi  1529 , Bluetooth  1531 , GPS  1533  (e.g., detect GPS positioning), other sensors  1535  such as a proximity sensor, CPU  1537 , RAM memory  1539 , storage  1541  (e.g., nonvolatile memory), and battery  1543  (lithium ion or lithium polymer cell). The battery supplies power to the electronic components and is rechargeable, which allows the system to be mobile. 
       FIG.  16    shows a block diagram of a system for creating, designing, producing apparel products with laser finishing. A box line plan  1602  is an internal and interim tool for communication between a merchandising group and design group. Through the box line plan, merchandising can communicate what needs to be designed by the design group. The box line plan can have open slots to be designed  1609 . 
     There is a digital design tool  1616  merchants and design can use to click and drag finish effects (e.g., laser files) and tint casts over images of base washes in order to visualize possible combinations and build the line visually before the garment finish is actually finished by the laser. The visualizations can be by rendering on a computer system, such as using three-dimensional (3-D or 3D) graphics. 
     U.S. patent applications 62/433,746, filed Dec. 13, 2016, and Ser. No. 15/841,268, filed Dec. 13, 2017, which are incorporated by reference, describe a system and operating model of apparel manufacture with laser finishing. Laser finishing of apparel products allows an operating model that reduces finishing cost, lowers carrying costs, increases productivity, shortens time to market, be more reactive to trends, reduce product constraints, reduces lost sales and dilution, and more. Improved aspects include design, development, planning, merchandising, selling, making, and delivering. The model uses fabric templates, each of which can be used be produce a multitude of laser finishes. Operational efficiency is improved. 
     Designers can use the digital design tool to design products that are used to satisfy the requests in open slots  1609 . Designs created using the digital design tool can be stored in a digital library  1622 . Input to the digital design tool include fabric templates or blanks  1627  (e.g., base fit fabrics or BFFs), existing finishes  1633  (e.g., can be further modified by the tool  1616 ), and new finishes  1638 . New finishes can be from designs  1641  (e.g., vintage design) captured using a laser finish software tool  1645 , examples of which are described in U.S. patent applications 62/377,447, filed Aug. 19, 2016, and Ser. No. 15/682,507, filed Aug. 21, 2017. Digital library  1622  can be accessible by the region assorting and sell-in  1650 . And the digital library can be used to populate or satisfy the box line plan. 
       FIG.  17    shows a block diagram of a specific implementation of a digital design tool, a preview tool  1703 . Digital design tool  1616  can be representative of a collection of tools, such as an application suite, including desktop or mobile apps, or a combination. 
     Preview tool  1703  can be a single tool in a toolbox or toolkit used for laser finishing of garments, or the tool can be incorporated as a feature of another tool. The preview tool allows a user such as a clothing designer to preview on a computer screen or to generate a digital representation (e.g., image file, JPEG file, BMP file, TIFF file, GIF file, PNG file, PSD file, or others) of jeans in a selected base fit fabric or fabric template  1706  with a selected laser pattern  1709  (e.g., from a laser input file). With the digital representation, the user will be able to see or preview the jeans in the selected base fit fabric as if it had been burned with the selected laser input file, without needing to actually laser or burn the jeans. 
     With the preview tool, the appearance of the garment (e.g., jeans) will be of the finished garment product that the consumer will see (e.g., after postlaser wash). As discussed above, after laser finishing, the garment will have charred appearance, and damage holes will still be connected by fine yarns, and will not yet be tinted. After postlaser wash, the charring and yellowish hue due to the laser ash and residue will be washed away. The damage holes or openings will be opened and typically have a shredded appearance. The garment will have the selected tinting (e.g., color and level of color). 
     The preview tool displays on a screen or other visual output a preview image  1711  of the garment as it would appear to the consumer, after post laser wash. The preview image  1711  will be a photorealistic image in color. The preview image may be displayed in using a 8-bit or greater color depth, 16-bit or greater color depth, 24-bit or greater color depth, or 32-bit or greater color depth. This is in contrast to a computer screen at operator&#39;s console of a laser finishing machine, which typically only shows black and white images. The console is primarily used for alignment rather than design, and using black and white images can provide increased contrast (as compared to color images) which aids the operator in achieving proper alignment. 
     The console is directly attached or connected to the laser, while the preview tool is front end tool that executes remotely from the computer and connected via a network. The preview tool can be directly attached or connected to the laser, but typically not because laser finishing is typically performed at a different physical location from where garments are designed. For example, a design facility may be in San Francisco, while the laser finishing center may be Las Vegas or outside the United States (e.g., China, Mexico, Bangladesh, Sri Lanka, Vietnam, India, Malaysia, Indonesia, Egypt, Brazil, and others). 
     After a garment has been designed and previewed using the preview tool, the information can be transferred via the network to the laser finishing tool and its console. For example, the preview tool can execute on a desktop computer, mobile device (e.g., smartphone or tablet computer), or using a Web browser. 
     Some files are described as being of an image file type. Some examples of image file types or file formats include bitmap or raster graphics formats including IMG, TIFF, EXIF, JPEG, GIF, PNG, PBM, PGM, PPM, BMP, and RAW. The compression for the file can be lossless (e.g., TIFF) or lossy (e.g., JPEG). Other image file types or file formats include vector graphics including DXF, SVG, and the like. 
     Bitmaps or raster graphics are resolution dependent while vector graphics are resolution independent. Raster graphics generally cannot scale up to an arbitrary resolution without loss of apparent quality. This property contrasts with the capabilities of vector graphics, which generally easily scale up to the quality of the device rendering them. 
     A raster graphics image is a dot matrix data structure representing a generally rectangular grid of pixels, or points of color, viewable via a monitor, paper, or other display medium. A bitmap, such as a single-bit raster, corresponds bit-for-bit with an image displayed on a screen or output medium. A raster is characterized by the width and height of the image in pixels and by the number of bits per pixel (or color depth, which determines the number of colors it can represent). 
     The BMP file format is an example of a bitmap. The BMP file format, also known as bitmap image file or device independent bitmap (DIB) file format or simply a bitmap, is a raster graphics image file format used to store bitmap digital images, independently of the display device. The BMP file format is capable of storing two-dimensional digital images of arbitrary width, height, and resolution, both monochrome and color, in various color depths, and optionally with data compression, alpha channels, and color profiles. 
     The fabric template can be selected from a library of fabric template images  1716  or may be a new image uploaded or provided by the user. Each fabric template images is an image file of a jeans in a base fit fabric or other material. For each jeans model or fit (e.g., models or fits  311 ,  501 ,  505 ,  511 ,  515 ,  541 ,  569 ,  721 , and others), there would be one image in each different material or base fit fabric. 
     The laser input file can be selected from a library of laser input files  1722  (e.g., files created from vintage jeans or from a group of designers), a file  1718  created by the user, or a file uploaded or provided by the user. For example, the user may have created the laser pattern (contained within a laser input file) manually using a graphical or image editing tool (e.g., Adobe Photoshop and similar photo editing programs). Or the laser pattern may have been created by another, such as selected from a library of laser files. The laser pattern may be generated by a computer or automated process, such as may be used to obtain a laser pattern from vintage jeans. The user will be able to see the results of a burn, make any manual changes or alterations to the pattern (such as additional changes to a vintage jean pattern in a digital image file) and preview the results again. The preview tool allows a user to make and see changes, to the user can obtain feedback faster than having to laser jeans to see the results and also avoiding unneeded waste (e.g., preliminary versions of burned jeans). 
     Each digital representation can be saved as separate images, and a group or set of the images can be a called brief of collection of jeans. The preview tool can be used for merchandising, such as generating images of a proposed line of products for a particular season, and these images can be shared among members of a team to discuss any additions, changes, or deletions to a collection. 
     Table A presents a pseudocode computer program listing of sample software code for a specific implementation of a preview tool  1703  for displaying finished apparel  1711  for a given fabric template input (e.g., base fit fabric image) and laser input file. A specific implementation of the source code may be written in a programming language such as Python. Other programming languages can be used. 
     
       
         
           
               
               
             
               
                   
                 TABLE A 
               
               
                   
                   
               
             
            
               
                   
                 PREVIEW PATTERN TOOL 
               
               
                   
                 SETUP: file selection object 
               
               
                   
                 GET: input file from user selection 
               
               
                   
                 ASSIGN: default blur options for high and low settings 
               
               
                   
                 ASSIGN: input and conversion dpi settings 
               
               
                   
                 FUNCTION: Import File (File List, File Index): 
               
               
                   
                  IMPORT: file being previewed 
               
               
                   
                  COMPUTE AND SET: resolution conversion factor 
               
               
                   
                  CALCULATE: optional resized image for use during preview 
               
               
                   
                  RETURN: input file and resized input file 
               
               
                   
                 RUN: Import File (File List, File Index) 
               
               
                   
                 CREATE: plotting object to display results to user 
               
               
                   
                 SETUP: custom colors for preview options 
               
               
                   
                 ASSIGN: color and color separation variables 
               
               
                   
                 SETUP: graphical user interface interactions buttons, sliders, etc. 
               
               
                   
                 FUNCTION: Update (Value): 
               
               
                   
                  READ: current display settings 
               
               
                   
                  CHECK: which user interactions are being changed 
               
               
                   
                  ASSIGN: operation variable value 
               
               
                   
                  PERFORM: user specified operation 
               
               
                   
                  REDRAW: plot of image preview to user 
               
               
                   
                 FUNCTION: Reset (Event): 
               
               
                   
                  RESET: all default settings for image preview 
               
               
                   
                 FUNCTION: Change Color (color): 
               
               
                   
                  SET: color of base color for preview 
               
               
                   
                  REDRAW: plot of image preview to user 
               
               
                   
                 PLOT: current state of file object 
               
               
                   
                   
               
            
           
         
       
     
     A specific version of the preview tool overlays a fabric template input file and a laser input file, and then generates an image to display them together as a representation of the laser-finished apparel. The laser input file is aligned to the garment in the fabric template input file, so that the positioning of features in the laser input file are at appropriate positions or places on the garment. The alignment may be by using alignment marks that are in the input files. The alignment may be an automated alignment or scaling, or a combination. 
     Brightness, intensity, opacity, blending, transparency, or other adjustable parameters for an image layer, or any combination of these, are selected or adjusted for the laser input file, so that when the laser input file is overlaid above the fabric template image, the look of the garment will appear of simulate the look of a garment had been burned by a laser using that laser input file. 
     Adjustable parameters such as opacity can be used to blend two or more image layers together. For example, a layer&#39;s overall opacity determines to what degree it obscures or reveals the layer beneath it. For example, a layer with 1 percent opacity appears nearly transparent, while one with 100 percent opacity appears completely opaque. 
     Further, a dots per inch (dpi) of the combined image can be adjusted to more properly simulate the look of a garment more closely with a burned garment. Dots per inch refers to the number of dots in a printed inch. The more dots, the higher the quality of the print (e.g., more sharpness and detail). By reducing the dpi of the image, this will reduce the image quality, resulting a blurring of the image. In an implementation, the preview tool reduces a dpi of the combined image, to be of less dpi than the fabric template input file or the laser input file. By blurring the preview image, this results in improved simulation that corresponds better to a burned laser garment. When burning a garment, the garment material or fabric typically limits the resolution of the result to less than that of the input file. 
     In an implementation, the dpi of the laser input file is about 72 dpi, while the dpi of the preview image is about 34 dpi. In an implementation, the dpi of the fabric template input file and laser input file are about 36 dpi or above, while the dpi of the preview image is about 36 dpi or lower. 
       FIG.  18    shows a block diagram of a digital brief tool  1803 , which also like preview tool  1703 , provides a real-time preview of an appearance of pair of jeans when a finishing pattern is applied by burning using a laser input file. The digital brief tool has additional features to allow more flexible designing of jeans. 
     It should be understood that the invention is not limited to the specific flows and steps presented. A flow of the invention may have additional steps (not necessarily described in this patent), different steps which replace some of the steps presented, fewer steps or a subset of the steps presented, or steps in a different order than presented, or any combination of these. Further, the steps in other implementations of the invention may not be exactly the same as the steps presented and may be modified or altered as appropriate for a particular application or based on the data or situation. 
     The digital brief tool takes as input three types of digital assets  1805 , fabric template input  1816 , damage input  1819 , and laser input file  1822 . Fabric template input  1816  and laser input file  1822  are similar to the inputs for the preview tool. Damage input  1819  is an image of damage (e.g., holes, rips, shredded regions, or openings of various shapes and sizes) that can be burned by a laser into jeans. The digital brief tool overlays the damage and laser input files over the fabric template. 
     The user selects a fabric template input, which an image of a jeans style in a particular base fit fabric. The user can optionally select one or more damage inputs. If a damage input is selected, the damage input will be a layer that overlays the fabric template layer. As for the preview tool, the user selects a laser input file with laser pattern and overlays the fabric template layer. As the user selects the inputs, the user will be able to see in real time the inputs and any changes or updates in a preview image or brief. 
     After the inputs are selected, the user can select and perform one or more operations  1826  on the inputs using the digital brief tool. These operations including adding tint  1831 , adjusting intensity  1834 , adjusting bright point  1837 , move digital asset  1842 , rotate digital asset  1845 , scale digital asset  1848 , and warp digital asset  1852 . As the user selects and performs one or more operations, the user will be able to see in real time the changes or updates in the preview image or brief. 
     After the fabric template input, the user can add tinting  1831 . Tinting will adjust the hue of the color of the fabric template input. Tinting is representative of the tinting which can be added during the postlaser wash or finishing II, described above. The user will be able to select a tint color, and this tint color will be blended with the existing color of the fabric template input. The amount or intensity of the tinting can be increased or decreased, such as by using a slider bar. 
     The user can adjust intensity  1834 . In an implementation, intensity adjusts a weight matrix by a percentage of each value in the array. In an implementation, intensity (or brightness) adjusts an opacity of a generated adjustment layer (see hue saturation lightness adjustment layer described below). The greater the opacity, the more opaque this layer will appear in the preview or brief image. The less the opacity, the less opaque this layer will appear in the preview or brief image; the layer will appear more transparent so that the layer beneath will show through more. 
     When increasing brightness, the opacity of the adjustment layer increases, and since the adjustment layer is above the fabric template input, the generated adjustment layer will become more prominent or visible, thus making this layer (which has the wear pattern) brighter. Similarly, when decreasing brightness, the opacity of the adjustment layer decreases, the generated adjustment layer will become less prominent or visible, thus making this layer (which has the wear pattern) less bright or fainter. The amount of the intensity can be increased or decreased, such as by using a slider bar. 
     The user can adjust bright point  1837 . Bright point adjusts the effect of the laser input file on the fabric template input. In an implementation, bright point adjustment changes a midpoint of a grayscale, creating a piecewise linear mapping of the pattern file. 
     Increasing the bright point will increase an effect of the laser pattern (e.g., causing greater laser pattern highlights) in the laser input file on the fabric template input, while decreasing the bright point does the opposite (e.g., diminishing laser pattern highlights). The bright point adjustment can be analogous to changing a pixel time or the time that the laser stays at a particular position for a given input from the laser input file. The amount of the bright point can be increased or decreased, such as by using a slider bar. 
     The user can move  1842  or reposition a selected digital asset. For example, a damage input (or fabric template or laser file) may be moved to a position desired by the user. The user can rotate  1845  a selected digital asset. For example, a damage input (or fabric template or laser file) may be rotated to any angle relative to the other layers as desired by the user. 
     The user can scale  1848  a selected digital asset. This scaling can be locked, maintaining the original aspect ratio of the digital asset, or can be unlocked, such that the user can change the aspect ratio. The user can warp  1852  a selected digital asset. With warping, the user can adjust an aspect ratio of a portion of the digital asset differently from another portion. For example, one portion of a damage input (or fabric template or laser file) can be squished (e.g., right and left edges of image pushed toward each other) while another portion is expanded (e.g., right and left edges of image pulled away from each other). 
     After the user has performed selected operations  1826 , the digital brief tool shows an image of the jeans with the laser finishing pattern, including any tinting, damage, or other adjustments, as created by the user. This image can be saved and viewed again later. A user can create multiple designs, and these can be saved together as part of a collection. 
       FIG.  19    shows a technique of generating a preview of a finished image using a digital brief tool. A base image (or fabric template input) is selected. A hue saturation lightness (HSL) adjustment layer is created or generated for the selected base image. The HSL adjustment layer can be the base layer with an adjustment for hue saturation lightness. When tinting is selected, a solid color adjustment layer is created or generated. 
     To obtain a final result, which is the final image of the jeans with laser finishing pattern, a laser pattern mask is combined with the base image and HSL adjustment layer. An resulting combination will be based on intensity and bright point settings. 
     The laser pattern mask is a negative image or reverse image of the laser input file. For the laser input file, during laser burning, a white pixel means the pixel is not lasered (which results in the original indigo color of the fabric), and a black pixel means the pixel will be lasered at highest level (which results in the whitest color that can be achieved on the fabric). In an implementation, the laser input file has 256 levels of gray, and for levels between 0 (e.g., black) and 255 (e.g., white), then the amount of laser burning will be proportionally somewhere in between. 
       FIG.  20    shows a laser pattern mask that is created from a laser input file. The digital brief tool creates the laser pattern mask from the laser input file by reversing the laser input file. So, for the laser pattern mask, a black pixel means the pixel is not lasered (which results in the original indigo color of the fabric), and a white pixel means the pixel will be lasered at highest level (which results in the whitest color that can be achieved on the fabric). 
       FIG.  21    shows a HLS adjustment layer that is created from the base image. The HLS adjustment layer (or adjustment layer) is like a bleaching layer, which is an image of what the jeans would appear like if the jeans were fully bleached or lasered. This layer is created by taking the base image and adjusting its hue, saturation, and lightness. In an implementation, for this layer, the saturation is reduced compared to the base layer, and the lightness is increased compared to the base layer. And the hue is not adjusted compared to the base layer. 
     A technique of the digital brief tool is to combine the base image and adjustment layer based on the laser pattern mask. For a black pixel in the laser pattern mask, the base layer will fully pass (and none of the adjustment layer) through to the final result image. For a white pixel in the laser pattern mask, the adjustment layer (and none of the base layer) will fully pass through to the final result image. For gray pixel values, then a percentage of the base layer and adjustment layer will pass through to the final result image. For example, for a value in the layer pattern mask, 90 percent of the base layer and 10 percent of the adjustment layer pass through to the final result image. 
       FIG.  22    shows a technique of creating a masked solid color adjustment layer. The digital brief tool creates the solid color adjustment layer by creating a layer of a solid color, mask this layer based on the base image, and then create masked solid color adjustment layer. An opacity of the masked solid color adjustment layer can be reduced, so that when combined with the based image, the base image will pass through with some tinting contributed by the masked solid color adjustment layer. 
       FIGS.  23 - 24    shows examples of two different adjustments or settings for a bright point operation. Adjusting bright point adjusts a rate of transition from middle gray to white on the layer mask. 
       FIG.  25    shows adjustment of intensity. The intensity adjustment adjusts an opacity (e.g., 40 percent to 100 percent) of an HSL adjustment layer. At 100 percent, the HSL adjustment layer will be fully opaque, and the wear pattern will be very prominent in the brief image or preview. 
       FIG.  26    shows an array of images showing the effects of adjustments in bright point and intensity. Intensity changes are shown in an X or row direction, while bright point changes are shown in a Y or column direction. 
     For a first jeans in the first column (from a left of the array), third row (from a top of the array), the bright point and intensity are both L, indicating the least amount of bright point and intensity. A second jeans is in the second column, third row; this jeans has a bright point of L and an intensity between L and H. The wear pattern of the second jeans is more visible than that for the third jeans. A third jeans is in the third column, third row; this jeans has a bright point of L and an intensity of H, indicating the greatest amount of intensity. The wear pattern of the third jeans is more visible than that for the second jeans. 
     A fourth jeans is in the third column, second row; this jeans has a bright point between L and H, and an intensity of H. The size or area of the wear pattern of the fourth jeans is larger than that for the third jeans. A fifth jeans is in the third column, first row; this jeans has a bright point of H and an intensity of H. The size or area of the wear pattern of the fifth jeans is larger than that for the fourth jeans. 
       FIG.  27    shows a block diagram of a system of generating a preview of a laser-finishing pattern on a garment, such as jeans. Inputs to a create preview image process  2702  include a base template image  2707  and laser input file  2709 . The base template image is used to create an adjusted base template image  2717 , which is also input to the create preview image process. These create preview image process uses these three inputs to create a preview image  2727 , which can be displayed on a computer screen for the user. 
     The adjusted base template image is created from the base template image by adjusting its hue, saturation, or lightness, or any combination of these. Compared to the original base template image, the adjusted base template image will appear washed out or bleached. In other words, the adjusted base template image will appear as if the garment in the base template image were fully bleached or lasered. The adjusted base template image can be an HLS adjustment layer as discussed above. 
     For a specific implementation of a laser, a specification for the laser input file is that each pixel is represented by an 8-bit binary value, which represents grayscale value in a range from 0 to 255. A 0 black prints the highest intensity (i.e., creates the most change and will be the lightest possible pixel) and a 255 white does not print at all (i.e., creates the least change or will be the darkest possible pixel). 
     For a laser input file for this laser implementation, a reverse or negative image of the laser input file is input to the create preview image process. Based on the negative laser input file, to create each pixel in the preview image, the create preview image process will pass pixels of the base template image or the adjusted base template image, or a combination of these. 
     For the negative laser input file, a black pixel means the pixel (which was a white pixel in the original file) will not be lasered (which results in the original indigo color of the fabric). And a white pixel means the pixel (which was black in the original file) will be lasered at highest level (which results in the whitest color that can be achieved on the fabric). And for gray pixels between black and white, the result will be proportional to the value, somewhere between darkest and lightest colors. 
     Similarly, to create the preview image, based the negative laser input file, a pixel of a (1) base template image (e.g., unbleached) or (2) adjusted base template image (e.g., bleached) or (3) some mixture or combination of the base template image and adjusted base template image proportional to the grayscale value in the negative laser input file. For example, for a gray value in the negative laser input file, 60 percent of the base layer and 40 percent of the adjustment layer pass through to the preview image. 
     The above discussion described a laser input file conforming to one type of logic. However, in other implementations of a laser, the values in the laser input file can be the reverse or negative logic compared to that described above. As one of ordinary skill in the art would appreciate, the techniques described in this patent can be modified accordingly to work with negative or positive logic laser input files. 
       FIGS.  28 - 35 E  show a three-dimensional (3-D or 3D) previewing feature of a laser finishing design tool, such as a digital brief tool (e.g., digital brief tool  1803  of  FIG.  18   ). For example, after creating or selecting a product, the user can view the product (e.g., garment) in three dimensions or 3D. This 3D preview feature allows a user to see a 360-degree preview (in any direction or orientation) of a garment with a laser finishing pattern as the garment would appear when it is worn by a person. 
     The preview can be shown with a simulated light source, where a positioning of the simulated light source can be moved by the user. Or, the simulated light source can be at a particular position, and the user can move the garment above the simulated light source. The preview image will appear with the shadows based on the positioning of the light source. 
     Additionally, the preview image can be used in the digital brief tool or other tools where it is desirable for users to view previews of garments. Some examples include a consumer sales or ordering Web site (e.g., such as a preview available through a Web browser), where the three-dimensional preview allows the user to see the garment before making the order. Another example is a sales for wholesalers, distributors, retailers, and other buyers of a manufacturers product. The three-dimensional preview can provide the buyers a realistic view of the garments to be ordered, without needing to make physical samples or as many physical samples. 
       FIG.  28    shows an overall flow for creating a three-dimensional preview for an apparel product, such as a pair of jeans. The flow includes: 
     1. A deconstruct garment step  2806 . A garment is cut into separate pieces so the pieces can be photographed flat. The shape of the cut pieces are specifically sized and selected for ensuring a high quality three-dimensional preview. 
     2. A photograph pattern pieces step  2812 . The pieces of the garment are photographed while flat on a surface. Compared to photographing the pieces while sewed together, where sections of the garment may be 
     3. An extract shadow neutral digital pattern pieces  2818 . 
     4. A create shadow neutral texture pieces  2824 . 
     5. A map shadow neutral texture to three-dimensional (3-D or 3D) model step  2830 . 
     6. An apply simulated light or shadowing, or both, step  2836 . 
     The following describes a specific implementation of deconstruct garment  2806 .  FIGS.  29 A- 29 F  show photographs of cutting a garment into pieces. The photos are for a specific implementation where the garment is a pair or pants, and in particular, a pair of jeans. Not that the seams are not ripped or cut, but rather the cut pieces include the seams with thread. This ensures the three-dimensional preview will represent the seams properly. Also the cut pieces do not necessarily correspond to the pattern panels used to contrast the garment. The cut pieces are cut into shapes that are appropriate for photographing flat and use in generating the three-dimensional preview. 
     The following describes a specific implementation of photograph pattern pieces  2812 . A photograph of each deconstructed pattern pieces is taken. Each photograph can be stored in a digital file, such as a JPEG, high efficiency video coding (HVEC), or other image file format. 
       FIG.  30    shows a system for taking photographs of the garment pieces. The system includes a camera  3009  and lighting  3012  and  3016 . Typically the camera and lights are mounted or positioned against or near a wall or ceiling of a room, or on one side of room. A garment or garment pieces  3027  that are to be photographed are laid flat on a surface, facing the camera and lighting. In an implementation, the camera and lightning are positioned above a table or other work surface  3029 , horizontally orientated, upon which the garment is placed. 
     Alternatively, the camera and lightning are positioned on a side, and the work surface is vertically orientated on another side facing the camera and lightning. The garment pieces that be attached, such as using glue, pins, or hook and loop fasteners, to the vertical work surface. 
     The room can be a light room or light box. The room and work surface are typically painted or colored a white color. For good or best results, the white color used should be consistently the same shade throughout the room. Then any white balance adjustment or correction made at the camera or digitally after the photographs are taken will be more precise. 
     The lights of the lightning are positioned laterally (e.g., distributed evenly along the same plane as the work surface, which can be referred as an X direction) to evenly illuminate the work surface. So, the garment will be evenly illuminated without noticeably or significantly brighter or darker areas or portions. The lightning is also positioned a distance above the work surface (which can be referred as a Y direction) to allow for more even illumination. 
     The lens of the camera is positioned above (in the Y direction) the lighting source, so that the camera does not cast a shadow on the work surface or garment (e.g., horizontally orientated). And the camera can be positioned in the X direction so that lights are arranged uniformly about the camera lens. For example, in  FIG.  30   , camera  3009  is between lights  3012  and  3016 . Also the camera lens should be positioned directly over the garment (in the X direction) being photographed. This ensures the photographs taken will not be at an angle. 
     A specific example of extract shadow neutral digital pattern pieces  2818  follows. After the photographs are taken, each photograph is processed to extract neutral digital pattern pieces. In the extraction process, the background and shadowing, if any, is removed. 
     As examples,  FIGS.  31 A- 31 B  show photographs of a waistband pieces on the work surface, and  FIG.  31 C  shows the extracted neutral digital pattern piece for the waistband. The physical waistband may be cut into multiple pieces, and the photographs of the separate pieces can be digitally stitched together to create the complete extracted neutral digital waistband. 
       FIG.  31 D  shows a photograph of a left pant leg front of a pair of jeans with the background, and  FIG.  31 E  shows the extracted neutral digital pattern piece for the left pant leg front.  FIG.  31 F  shows a photograph of a right pant leg front of the jeans with the background, and  FIG.  31 G  shows the extracted neutral digital pattern piece for the right pant leg front. 
       FIG.  31 H  shows a photograph of a right pant leg back or rear of the jeans with the background, and  FIG.  31 I  shows the extracted neutral digital pattern piece for the right pant leg back.  FIG.  31 J  shows a photograph of a left pant leg back or rear of the jeans with the background, and  FIG.  31 K  shows the extracted neutral digital pattern piece for the left pant leg back. 
     The extracted pattern pieces are shadow neutral since the pattern pieces were photographed while flat. In contrast, for garments that are photographed or scanned while on a fit model or mannequin, the extracted pattern pieces would not be shadow neutral. The garment pieces based on curved surfaces, conforming to the shape of the fit model or mannequin. When the curved surfaces are flattened, there would be shadowing, such as wrinkles and other aberrations. So when those nonshadow neutral extracted pattern pieces are used with a three-dimensional model to generate a preview, the preview will have an appearance that does not look natural, such as having unusual shadowing. 
     A specific example of create shadow neutral texture pieces  2824  follows.  FIGS.  32 A- 32 C  show the extracted shadow neutral pattern pieces.  FIG.  32 D  shows a shadow neutral texture created using the extracted shadow neutral pattern pieces and a color layer  3202 . 
     To create the shadow neutral texture, the extracted shadow neutral pattern pieces are combined with a color layer, which typically is a color which is close to that of a color the garment. For example, for blue jeans, the color layer used will be a similar shade of blue or indigo as on the blue jeans. 
     The color layer of the shadow neutral texture allows stitching together of the different neutral pattern pieces, when mapped to a three-dimensional model, such any potential gaps between the pattern pieces will appear seamless. For example, if a very different color is used for the color layer, such as white, than the jeans color, then gaps that do not exactly align may show this color (e.g., white line). 
     A specific example of map shadow neutral texture to three-dimensional (3D) model  2830  follows.  FIG.  33 A  shows a created shadow neutral texture  3307 .  FIG.  33 B  shows a front view of a three-dimensional model, which the shadow neutral texture will be applied or mapped to.  FIG.  33 C  shows a result of mapping the shadow neutral texture to the three-dimensional model. This figure shows the front of the garment with the form and wrinkles resulting from the mapping to the three-dimensional model. This image can be used as a three-dimensional preview image. 
     Similarly,  FIG.  33 D  shows a back or rear view of the three-dimensional model, which the shadow neutral texture will be applied or mapped to.  FIG.  33 E  shows a result of mapping the shadow neutral texture to the three-dimensional model. This figure shows the back of the garment with the form and wrinkles resulting from the mapping to the three-dimensional model. This image can be used as a three-dimensional preview image. 
     There are various ways to generate a three-dimensional model. One technique is to generate a three-dimensional model from a scan of a physical three-dimensional object, such as a fit model or mannequin. Another technique to create a three-dimensional model from scratch using software. Such software can allow a designer to three-dimensional model analogous to using molding a clay sculpture. Another technique to create a three-dimensional model from software (e.g., computer aided design (CAD) or computer aided manufacturing (CAM) tool) where two-dimensional pattern pieces of a garment are converted into to three dimensions. 
     A specific example of apply simulated light or shadowing, or both,  2836  follows. A shadow neutral texture and three-dimensional model can be inputs to a rendering engine or software to render the preview image. Some examples of rendering engines include Google&#39;s ARCore, WebGL, and others. 
     With the rendering engine, an object such as the garment can be rendered or previewed with shadowing generated by the engine or software. The shadows will change based on a relative positioning of a simulated light source and object. Further, the rendering engine can change a camera position of point of view (POV) of the user, so that the preview will have the shadowing from that camera position. 
     In a specific implementation, a rendering engine maps the shadow neutral texture to the three-dimensional model, or preview image, and generates the preview image with shadowing based on a positioning of a simulated light source. The positioning of the light source can be changed or varied. 
     For example,  FIG.  34 A  shows an example of a simulated light source positioned to a right of and above the garment.  FIG.  34 B  shows an example of a simulated light source positioned directly above (e.g., centered) the garment.  FIG.  34 C  shows an example of a simulated light source positioned to a left of and above the garment. The shadowing, wrinkles, and contours are shown in the preview image in accordance with positioning the simulated light source. The shadows are generated by the rendering software. This is in contrast to shadows that are present garment when the photographs or scans are taken, when a shadow neutral texture creation approach is not user. 
     Alternatively, the user can rotate or change the positioning of the garment, and the shadowing, wrinkles, and contours will be shown in accordance with the changed positioning. This is due to the change in the relative positioning between the garment and the light source. The shadows are generated by the rendering software. 
       FIG.  35 A  shows an example of a first shadow neutral texture, which is a pair of jeans having a finish of a first shade.  FIG.  35 B  shows an example of a second shadow neutral texture, which is a pair of jeans having a finish of a second shade. The second shade is different and lighter than the first shade.  FIG.  35 C  shows various view of a three-dimensional model. There are front, back, left side, and right side views. 
       FIG.  35 D  shows of the first shadow neutral texture mapped to the three-dimensional model to generate a corresponding preview image. The figure shows various view of the preview image.  FIG.  35 E  shows of the second shadow neutral texture mapped to the three-dimensional model to generate a corresponding preview image. The figure shows various view of the preview image. 
       FIGS.  35 A- 35 E  show how a single three-dimensional model can be used with multiple shadow neutral texture to generate a multiple preview images. This allows one three-dimensional model to be used with multiple shadow neutral textures to more easily and rapidly generate preview images with different finishes. 
     Furthermore, there can be multiple three-dimensional models, such as a first three-dimensional model and a second three-dimensional model. The different three-dimensional models may represent different fits or styles. Then a single shadow neutral texture can be mapped to the first three-dimensional model to generate a corresponding preview image. And the single shadow neutral texture can be mapped to the second three-dimensional model to generate a corresponding preview image. 
     This allows generating multiple previews from a single shadow neutral texture. For example, a first preview may be for a first fit or style in the finish of the shadow neutral texture. And a second preview may be for a second fit or style in the same finish. This technique allows for more a single shadow neutral texture to be used to more easily and rapidly generate preview images of different models, where models can represent different fits (e.g., Levi&#39;s  501 ,  502 ,  504 ,  505 ,  511 ,  512 ,  514 ,  541 ,  311 ,  710 , or  711 ) or styles (e.g., skinny, boot cut, wide leg, straight, relaxed, super skinny, slim, tapered, athletic, boyfriend, wedgie, and others). 
       FIG.  36    shows a flow for creating three-dimensional imagery for an e-commerce Web site to sell laser finished garments, such as jeans, to a consumer. The Web site provides the consumer a what-you-see-is-what-you-get (WYSIWYG) user experience to create a custom pair of jeans. 
     The flow includes scan fit model  3606 , clean up scan  3606 , deconstruct and photograph garment  3609 , create two-dimensional base texture  3612 , create base mesh  3615 , UV mapping  3618 , wrap scan  3621 , clean wrap  3624 , project detail  3627 , extract maps and export  3630 , materials  3633 , multiple texture alignment  3636 , decimation  3639 , three.JS  3642 , damage  3645 , bend and decimate  3648 , three.JS  3651 , scale and check  3654 , and apply or adjust laser pattern  3657 . 
       FIG.  37    shows scan fit model technique. A fit model is scanned wearing a specific fit using a structured light three-dimensional scanner. A stylist can style the garment for each pose. The waist band and leg opening should be carefully scanned for best results. 
       FIG.  38    shows a clean up scan technique. Software can be used to remove stray polygons and vertices from scanned geometry. The scanned geometry is aligned so that the feet are planted and flush with the ground plan. A three-dimensional scanned geometry texture map can be imported to better assess model transition points. The mannequin is cut and geometry is solidified to create a water-tight mesh. 
       FIG.  39    shows a deconstruct and photograph garment technique. A garment (e.g., pants) is cut through the center of the front left and back right legs. The opposite legs of a second garment are cut. Belt loops and patches are removed to avoid unnecessary cloning later in during image editing. The garment is places on a photo table as flat as possible. Pins can be used to help remove wrinkles from the fabric. More details of the deconstruct and photograph garment technique are described above in  FIGS.  28 - 35    and their accompanying description. 
       FIG.  40    shows a create two-dimensional base texture technique. The front right, front left, back right, back left leg panels are extracted from the photographs. A two-dimensional base texture is generated using an image editor by using existing textures of the same fit as the template for panel placement. Holes, rivets, buttons, tags, and patches are cloned out (e.g., using a clone brush). 
       FIG.  41    shows a create base mesh technique. Using modeler software, a base mesh geometry is created with the purpose of wrapping the geometry around the scan. Landmarks should be created throughout the geometry for the pockets and seams. 
       FIG.  42    shows a UV mapping technique. Using the photograph of the final garment cuts as a reference, create a precise UV map of the base mesh geometry. A trace of the pockets, seams, yolk, and waistband should be as accurate as possible. 
     UV mapping is a technique used to wrap a 2D image texture onto a 3D mesh. U and V are the names of the axes of a plane, since X, Y, and Z are used for the coordinates in the 3D space. 
       FIG.  43    shows a wrap scan technique. With a software (e.g., ZWrap), select base mesh points and corresponding target points on the scanned geometry for wrapping the base mesh around the scan. Use landmarks created on the base mesh and polygonal transition points on the pockets, cuffs, and seams to get a more accurate wrap of the scan. 
       FIG.  44    shows a clean wrap technique. Apply texture map from final photographed garment cuts to wrapped base mesh. Analyze base mesh geometry for any textural inconsistencies where landmarks are not aligning properly. Resolve and align all inconsistencies between the base mesh and color texture. Check that all base mesh landmarks correspond to their photographed counterparts. Center and scale the model to real world proportions. 
       FIG.  45    shows a project detail technique. Subdivide base mesh geometry and project details of the scan and texture map onto the base mesh. Keep all subdivision levels intact for map extraction. 
       FIG.  46    shows an extract maps and export technique. Extract normal, ambient occlusion, and displacement maps using the multimap exporter. Import the geometry and extracted maps into software such as Substance Painter. View the model with a software&#39;s (e.g., ZBrush) texture maps in various lighting setups and environments from all angles. 
       FIG.  47    shows a materials technique. Apply a metallic material to the button and rivets on a layer. Apply a negative normal displacement on the button and rivets using a stencil. Apply a generic leather material to the patch on its own layer. Export normal, roughness, and metallic maps. 
       FIG.  48    shows a multiple texture alignment technique. Apply second photographic texture to the model. Clone inconsistencies of seams and stitches using tool such as Substance. For more complex alignments, further refine model and texture maps using software (e.g., Mari). 
       FIG.  49    shows a decimation technique. Export a low resolution version of the model at this point before decimating the mesh at the highest subdivision level. In software, decimate the denim and belt loop geometries to 150,000 or other number of polygons (e.g., more than 150,000 polygons or fewer than 150,000 polygons). Should keep UV map and freeze borders when decimating the mesh. Export a lower resolution remeshed version of the mannequin that still retains anatomical structure. The mannequin should be correctly fitted to the pants and not clipping. 
       FIG.  50    shows a three.JS technique. Three.JS is a Javascript 3D library. In a threejs editor, preview the model with the various texture maps: color, roughness, metalness, ambient occlusion, and normal map. Use a basic or lambert material for the denim. Use a physical material with the various roughness and metal maps for the button, rivets, and patch. Add lights to the scene to see how the materials react to light within three.js. 
     Three.js is a cross-browser JavaScript library and Application Programming Interface (API) used to create and display animated 3D computer graphics in a web browser. Three.js uses WebGL. The source code is hosted in a repository on GitHub. 
       FIG.  51    shows a damage technique. Using damage photographed texture, displace geometry of a subdivided plane. Split geometrical parts into fray and weft using the photographed texture alpha masks. Delete excess geometry of the plane not part of the damage fray or weft. 
       FIG.  52    shows a bend and decimate technique. Merge fray and weft together to create one single mesh. Decimate damage geometry to desired level of detail. Split geometrical parts into fray and weft using the photographed texture alpha masks. Export damage fray and weft as separate objects. 
       FIG.  53    shows a three.JS technique. In the three.JS editor, preview the model with the decimated damage model. Use a basic shader for the damage. 
       FIG.  54    shows a scale and check technique. Center a fit with its corresponding damages as a group to the origin. Scale fit or damage level group. Use the base denim object as a reference, and scale the base denim to approximately X sizing (e.g., 80, 90, 100, 110, or 120 centimeters) for a female fit and Y sizing (e.g., 90, 100, 110, 120, or 130 centimeters) for a male fit. In an implementation Y is greater than X. Accompanying damage levels should scale proportionally with the group. 
     Import the rescaled fit and damages into the three.js editor to cross-check scale consistency with a properly scaled fit. All assets between fits should be correctly scaled and centered. 
       FIG.  55    shows an apply or adjust, or both, laser pattern technique. Using an image editor, use a laser pattern to mask an HSL adjustment layer. See discussion above regarding HSL adjustment. A levels adjustment can be used on the mask to adjust the laser pattern contrast. Use the adjustment layer to match the laser pattern intensity to the physical target. 
     A Future Finish(TM) Web site of Levi Strauss &amp; Co. is an all-new way for users to customize denim using groundbreaking laser-powered technology. Future Finish is a trademark of Levi Strauss &amp; Co. At the Future Finish site, using a Web browser, a customer or user, can select, view, customize, and order a jeans with finishing pattern, where the finishing pattern is created by laser finishing. 
     With Future Finish, LS&amp;Co. has reinvented the art of self-expression. LS&amp;Co.&#39;s laser-powered personalization technology lets a user customize denim with one-of-a-kind details, from rips to fades, patterns to patches. Now users can create iconic denim, their way. And it is easy. 
     1. Pick a wash or base finish. For example, choose from a lighter or darker denim. 
     2. Pick a pattern. For example, choose from five different laser finishes including natural worn, bandana, logo, camo, or leopard. 
     3. Pick a wear. For example, choose how a Future Finish jeans will feel when you get them. Go for none if the user prefers to wear the jeans in. 
     4. Pick a tint. For example, choose from natural, midnight, black or rose 
     5. Pick a Levi&#39;s back patch. For example, choose from blue, yellow, orange, pink, green, or traditional leather. 
     The user selects a shipping preference when checking out. Then just sit back and relax. It typically takes about three days to process and customize an order. 
     The Road to Sustainability. Created in LS&amp;Co&#39;s Eureka Innovation Lab and built by a team of designers, developers, engineers and scientists, Future Finish uses the latest advances in laser-powered technology to digitize the design and development of denim. By going digital, fewer chemicals are used in the finishing process and reduce our environmental impact. It is an exciting day for denim. 
     More specifically, using Three.JS, the Future Finish site provides the user a three-dimensional real-time preview of the jeans as the user is customizing it. When the laser pattern is selected and displayed on the browser, the laser input file (e.g., which may be generated via the resizing tool for the particular jeans selected) is protected, so that a person can intercept a transmission between the server and client (e.g., browser) to obtain the laser input file by itself. 
     In an implementation, the laser input file is protected by encryption (e.g., end-to-end encryption). In an implementation, the laser input file is merged together with the jeans image before it is sent to the client device. This merging will make it difficult for a person to recover the laser input file itself, especially since the jeans image has a base wash pattern on it. The laser input file is protected because it can contain intellectual property of the company that developed the finish of the file. These files can be licensed from or by others for use. In an implementation, before use of a particular laser input file is allowed, the laser can request an authorization check from an external server with respect to that laser input file. For example, the laser input file may contain copyrighted images or trademarks of another company. 
       FIGS.  56 - 69    show screens for an ordering flow and options available via the Future Finish Web site for customizing and ordering a men&#39;s pair of jeans. 
       FIGS.  70 - 89    show screens for an ordering flow and options available via the Future Finish Web site for customizing and ordering a women&#39;s pair of jeans. 
     After an order is created, the order is sent to a laser finishing center for manufacture. At the laser finishing center, an operator or automaton (e.g., robot) will select the appropriate base template with selected sundries (e.g., selected labeling). The appropriate laser input file is selected and lasered onto the garment. The laser input file may have been generated using the pattern resize tool, especially when the ordered size is not the same as the original size (e.g., 32×32) provided to the resize tool. The damage will also be lasered onto the garment, and typically be done at the same time the finishing is being lasered. 
     The following figures include screens of a customization and ordering tool for men&#39;s jeans, executing on a personal computer using a Web browser, such as Mozilla Firefox® Web browser. Firefox is a trademark of Mozilla Foundation. 
       FIG.  56    shows a screen for selecting a fabric base. 
       FIGS.  57 - 58    show screens for selecting a denim shade for the selected fabric base. The selected fabric base may include a wash or a lighter or darker denim. For example, an option is for denim shade is “Indigo Night.” 
       FIG.  59    shows a screen for selecting a finish to apply to the selected base. The options can include a number of patterns for selection. For example, the screen shows five different laser finishes including naturally worn, bandana, logo, camo, or leopard. The naturally worn pattern is a pattern that is presently selected. A user may view swatches of the different pattern options available and select a desired pattern. A three-dimensional preview of the selected fabric base with selected option is shown on the screen. The preview may be rotated by a user by clicking and dragging the model or by selecting indictors (e.g., arrows, signs, markings) so that details of the model from different angles are shown. 
       FIG.  60    shows a screen for selecting a bandana pattern for the selected fabric base. A preview of the jeans garment with bandana pattern on the selected fabric base is shown on the screen. 
       FIG.  61    shows a screen for selected a lived-in characteristic for the garment. The lived in characteristic may be a wear for the selected fabric base. There are four lived-in options including none, worn, damaged, and destructed. Lived-in options may be sequenced on the screen by each option with progressively greater wear and damage for the finished product. The none option is selected on this screen. A preview of the jeans with selected options is shown on the screen. 
       FIG.  62    shows another screen for selecting the lived-in characteristic for the jeans. The worn option is selected, for which a preview is displayed on the screen. For a worn option, small rips near pockets and a knee area of the jeans are shown on the model. 
       FIG.  63    shows a screen for selecting the lived-in characteristic for the jeans. The damaged option is selected, for which a preview is displayed on the screen. For the damaged option, small rips near pockets and larger stressed areas near both knee areas of the jeans are shown on the model. 
       FIG.  64    shows a screen for selecting the lived-in characteristic for the jeans. The destructed option is selected, for which a preview is displayed on the screen. For the destructed option, larger portions of the knee areas are stressed and shown on the model. 
       FIG.  65    shows a screen for selecting a tint color for the selected fabric base. The screen shows three different tints including none, black, or midnight. Other tints may be available in other implementations, such as a rose tint. The none option is selected. A preview of the jeans with the selected tint is shown on the screen. The jeans in the preview may be rotated by a user by clicking and dragging the model or by selecting indictors (e.g., arrows, signs, markings) so that details of the preview from different angles are shown. 
       FIG.  66    shows another screen for selecting the tint color for the selected fabric base in the black wash option. A preview of the jeans with this option is shown on the screen. 
       FIG.  67    shows another screen for selecting the tint color for the selected fabric base in the midnight option. A preview of the jeans with this option is shown on the screen. 
       FIG.  68    shows a screen for selecting a back patch for jeans. A preview of the jeans with selected patch is shown on the screen. The preview can be rotated so that the label or back patch of the jeans is shown. The ordering tool may include a number of back patch colors for selection. For example, the screen shows blue, yellow, orange, pink, green, or traditional leather options. The leather option is selected. 
       FIG.  69    shows another screen for selecting the patch color for the selected fabric base in the pink option. A preview of the jeans with this selected patch is shown on the screen. 
       FIGS.  70 - 89    include screens of a customization and ordering tool for women&#39;s jeans, executing on a personal computer using a Web browser such as Mozilla Firefox or Google Chrome. These screens are similar to that as described above for customizing men&#39;s jeans, except these are for women&#39;s styles and fits. 
       FIGS.  70 - 72    show screens for selecting a fabric base. 
       FIG.  73    shows a screen for selecting a denim shade for the selected fabric base. 
       FIG.  74    shows a screen for selecting a pattern for the selected fabric base with the naturally worn option selected. 
       FIG.  75    shows a screen for selecting a pattern for the selected fabric base with the camo option selected. 
       FIG.  76    shows a screen for selecting a lived-in characteristic for the garment with the none option selected. 
       FIG.  77    shows a screen for selecting a lived-in characteristic for the garment with the destructed option selected. 
       FIG.  78    shows a screen for selecting a tint color for the selected fabric base with the none option selected. 
       FIG.  79    shows a screen for selecting a tint color for the selected fabric base with the black wash option selected. 
       FIG.  80    shows a screen for selecting a tint color for the selected fabric base with the midnight option selected. 
       FIG.  81    shows a screen for selecting a back patch for jeans with the leather option selected. 
       FIG.  82    shows a screen for selecting a back patch for jeans with the yellow option selected. 
       FIG.  83    shows a screen for a size or fit guide. 
       FIG.  84    shows a screen with a drop-down menu for selecting a size (e.g., waist and length). This drop down menu also gives an indication of whether a particular size is in-stock or out-of-stock. 
       FIG.  85    shows a screen with a drop-down menu for selecting a quantity (e.g., 1, 2, 3, 4, 5, or 6). 
       FIG.  86    shows a screen for an item added to shopping bag (e.g., shopping cart). There is a pop-up window that shows an image of the jeans, the size selected, the customization the user selected (e.g., camo pattern, yellow patch, destructed damage), quantity, subtotal price (e.g., $148), and a checkout button. Via the checkout button, the user will be brought to screen where the user can pay (e.g., payment by credit card) and the user can enter an address where the customized garment will be sent. 
       FIG.  87    shows a screen to save a design. After the design is saved, the user will be later be able to login to the user&#39;s account and retrieve this design. The save customized design can be reordered, or the user can user the old design as a starting point for a new design (e.g., modifying the previously saved design to obtain a new customized design). 
       FIG.  88    shows a screen of a shopping bag. 
       FIG.  89    shows a screen asking to save a design. 
       FIGS.  90 - 99    relate to a pattern resize tool. From a given laser input file (e.g., 32×32 regular fit jeans), this tool generates laser input files for a variety of sizes and fits. The generated laser input files are for sizes smaller (e.g., 30×30 jeans) and larger (e.g., 36×34) than the size of the given input file. And the fits can be larger (e.g., relaxed or oversized) or smaller (e.g., slim or tapered) compared to the fit of the given input file. 
     A pattern resize tool allows a user to take a laser input image and scale between garment sizes and styles based on user selection. The tool allows a user to record a mapping of sizes and styles then use that mapping on an ongoing basis to scale input images anywhere within the mapping space. The tool then saves the resulting files in a structure that will feed directly into a user interface for a specialized file conversion for manufacturing equipment. 
     Laser finishing is a process where a garment can have style elements added to it through the input of a manufacturing image to a piece of laser equipment. These input images can take hours or days to generate. Traditionally a user might need to create individual input images for each style and size of garment. The challenge in increased further because the magnitude of the image resizing is not constant over the entire image, each zone or region of the garment may have its own scaling behavior. 
     This tool allows a user to perform these scaling operations in an automated way with minimal user input with only a single input image. This is true across all sizes and styles so long as the style scaling of the selected garments has been mapped previously. This document covers both the mapping of the garment styles as well as the resizing of the input image or images. 
       FIG.  90    shows the mapping process. Showing user point select, automated zone measurements and functional mappings. 
       FIGS.  91 - 92    show a graphical user interface for selecting input and output parameters needed for the resize tool 
       FIG.  93    shows an example of a user input which gives a location of a landmark on the input image. 
       FIGS.  94 - 96    show examples of scaling to various sizes within a style. The process can also be performed across styles. 
       FIGS.  97 - 98    show the output file structure that will be used to convert to the vendor specific file format and image groupings with default settings dependent file structure. 
       FIG.  99    shows a block diagram showing a first technique and a second technique for resizing. 
     In an automated resizing technique, laser input files are provided for a particular size of a garment, such as jeans or pants. For example, the laser input file may be for a jeans size of 32 by 32 (or 32×32), which represents a 32 waist size and 32 inseam length size. With this laser input file, the pattern resize tool automatically generates the laser input files for other desired or specified sizes, such as 30×30, 29×30, 36×32, 38×34, 44×32, and others. 
     Referring  FIG.  90   , in a first step, size and style (or fit) mapping of garments is performed. Different styles or fits refer to a garment&#39;s fit, such as regular, relaxed, slim, boyfriend, boot cut, and others. For a good mapping, the garments should range in size in fit to encompass the desired sizes. 
     In an implementation, each and every garment size and style are provided for mapping. This implementation would result in very precise resizings of the laser input files since each and every size is measured and known. 
     In an implementation, selected garment sizes and styles are provided for mapping. For example in  FIG.  1   , three different sizes (e.g., size 1, size 2, and size 3) and three different styles (e.g., style 1, style 2, and style 3) are used to perform a mapping. This implementation&#39;s mapping may be somewhat less precise than the previously described implementation since each and every garment size and style is not provided. Any missing garment sizing and styling data can be estimated or approximated by an estimation or calculation, such as by interpolation. 
     To form the mapping, measurements are made of a particular garment. The points for measurements can be automatically determined by computer identification, user selecting the points, or a combination. There are two types of points for selection, calibration points (e.g., indicated in blue) and measurement points (e.g., indicated in red, a different color than that used for the calibration points). The calibration points can be points not at edges of the pants, but on the machine or handler holding the pants. The measurement points are 
     The measurement points selected include a crotch point, block points (e.g., points above the crotch), and inseam points (e.g., points below the crotch). Then based on these points, zone measurements are made. There are first and second lines from the crotch point that extend to the edges of the pants. There are third and fourth lines that extend transverse to the first and second lines in a direction away from the crotch toward the bottom of the pants. There are fifth and sixth lines that extend transverse to the first and second lines in a direction away from the crotch toward the top or waist of the pants. Using these zone measurements, scaling factors are determined, which will be used in scaling the laser input files. 
       FIGS.  91 - 92    show a user interface through which a user can select the input file information and the desired output for the resizing tool. The interfaces show in these two figures can be combined and output onto a single computer screen, or can be displayed on multiple computer screens or sequence of screens, such as two or more screens. 
       FIG.  93    shows an example of a user input which gives a location of a landmark on the input image. 
       FIGS.  94 - 96    show examples of scaling to various sizes within a style. The process can also be performed across styles. 
       FIGS.  97 - 98    show the output file structure that will be used to convert to the vendor specific file format and image groupings with default settings dependent file structure. The laser input files are in BMP format and stored in directory tree structure so they can be searched for and retrieved later. In other implementations, the output files can be stored in a database. 
       FIG.  99    shows a block diagram showing a first technique or process and a second technique or process for resizing. In the first technique, the software determines scaling ratios, applies scaling, applies filtering, positions the pattern, and creates a .JEAN file, which is similar to image file used by a laser machine. 
     Tables B-D below present pseudocode computer program listings for a specific implementation of a pattern resizing tool. 
     
       
         
           
               
             
               
                 TABLE B 
               
               
                   
               
             
            
               
                 RESIZE MAPPING CREATION 
               
               
                 FUNCTION: Measure XY (Pattern Directory): 
               
               
                  READ: Size and Style Images 
               
               
                  DISPLAY: Image to user and allow for the selection of specific 
               
               
                  pattern points 
               
               
                  SELECTION: Of requested points by user (these allow for 
               
               
                 calibration and measurement) 
               
               
                  RECORD: User selection of pattern points 
               
               
                  SAVE: point selection to data file 
               
               
                 FUNCTION: Pattern Analyzer (Measure XY data file): 
               
               
                  READ: Measure XY data file 
               
               
                  CALCULATE: Dimensions of required scaling zones from recorded 
               
               
                 image x and y data 
               
               
                  CACLULATE: Function approximation for scaling between sizes 
               
               
                  and styles 
               
               
                  SAVE: Function parameters for use in resize tool 
               
               
                   
               
            
           
         
       
     
     
       
         
           
               
             
               
                 TABLE C 
               
               
                   
               
             
            
               
                 RESIZE TOOL GRAPHICAL USER INTERFACE 
               
               
                 FUNCTION: View Controller (User Interface Parameters): 
               
               
                  CREATE: Selection variables required for resize tool. To include 
               
               
                 all input and desired output variables (input file names, sizes, fits, 
               
               
                 parameter options) 
               
               
                  DISPLAY: Formatted form to user with all fields meant for input 
               
               
                 and output selections displayed. Allow the user to progress only when 
               
               
                 all required fields are selected. 
               
               
                 Display error messages to inform user of missing elements. 
               
               
                  RECORD: All user selections for input and output variables. 
               
               
                 Automatically naming files according to the operations being performed 
               
               
                 on them. 
               
               
                 FUNCTION: Submit Form ( ) 
               
               
                  SAVE: A record of all selected user Settings 
               
               
                  RUN: Resize algorithm described below 
               
               
                   
               
            
           
         
       
     
     
       
         
           
               
             
               
                 TABLE D 
               
               
                   
               
             
            
               
                 RESIZE TOOL RESIZE ALGORITHM 
               
               
                 READ: input files parameters from recorded graphical user interface 
               
               
                 settings 
               
               
                 SET: (Front Left Files, Back Left Files, Front Right Files, Back 
               
               
                 Right Files, File Options, Current Fit, Current Waist, Current 
               
               
                 Inseam, Output Fits, Output Waists, Output Inseams, Control Name) 
               
               
                 FUNCTION: Resize (Front Left Files, Back Left Files, Front Right 
               
               
                 Files, Back Right Files, File Options, Current Fit, Current Waist, 
               
               
                 Current Inseam, Output Fits, Output Waists, Output Inseams, Control 
               
               
                 Nam): 
               
               
                  ASSIGN: Troubleshooting developer options 
               
               
                  CHECK: Input parameters for proper formatting report if necessary 
               
               
                  CHECK: Troubleshooting developer options output reports if 
               
               
                  necessary 
               
               
                  FUNCTION: Scale Images (File List): 
               
               
                   SETUP: Plotting object to allow user to select split point on 
               
               
                   pattern 
               
               
                   IMPORT: file being resized 
               
               
                   PLOT: Image being scaled so that user can use split point 
               
               
                   selection 
               
               
                   IMPORT: mappings of fits and size functions parameters 
               
               
                   SPLIT: image into its regions so they can be scaled 
               
               
                   individually 
               
               
                   APPLY: scaling options selected by user (i.e. width only/back 
               
               
                   knee) 
               
               
                   PERFORM: scaling operation on each region using imported 
               
               
                 function parameters 
               
               
                   RECONTRUCT: full image from component regions after 
               
               
                   scaling 
               
               
                 CHECK: Troubleshooting developer options output reports if 
               
               
                 necessary 
               
               
                 WRITE: Scaled images to output directory structured for file 
               
               
                 conversion 
               
               
                 SET: Required file meta-data 
               
               
                  RUN: Scale images (front left Images, front left settings, 
               
               
                  control file) 
               
               
                  RUN: Scale images (back left Images, back left settings, 
               
               
                  control file) 
               
               
                 RUN: Scale images (front right Images, front right settings, 
               
               
                 control file) 
               
               
                  RUN: Scale images (back right Images, back right settings, 
               
               
                  control file) 
               
               
                 RUN: Resize (Front Left Files, Back Left Files, Front Right 
               
               
                 Files, Back Right Files, File Options, Current Fit, Current 
               
               
                 Waist, Current Inseam, Output Fits, Output Waists, Output 
               
               
                 Inseams, Control Name) 
               
               
                   
               
            
           
         
       
     
     In an implementation, a method includes: providing a garment design tool, accessible via a Web browser or executing in a Web browser, that shows in a window of the Web browser of a three-dimensional preview image of a garment design as customized by a user with a finishing pattern; in the garment design tool, providing an option for the user to select a garment base and upon the user&#39;s selection, showing in a window of the Web browser a first preview image of the selected garment template; in the garment design tool, providing an option for the user to select a wear pattern from a menu of wear patterns and upon the user&#39;s selection, showing on a window of the Web browser a second preview image of the selected garment template with the selected wear pattern, where each wear pattern is associated with a laser input file to be used by a laser to produce that wear pattern onto a garment; at a server, merging a laser input file associated with the selected wear pattern with an image of the selected garment template to generate a merged image; and from the server, receiving the merged image to the Web browser, where the garment design tool shows the merged image as the second preview image. 
     The merged image can be generated by: generating an adjusted base image from the image of the selected garment template without the selected wear pattern; generating a pattern mask based on the laser input file associated with the selected wear pattern; for a pixel at a pixel location of the merged image, obtaining a first contribution for the pixel location of the merged image by combining a first value for a pixel corresponding to the pixel location for the pattern mask and a pixel corresponding to the pixel location for the image of the selected garment template without the selected wear pattern; for the pixel at the pixel location of the merged image, obtaining a second contribution at the pixel location for the merged image by combining a second value for a pixel corresponding to the pixel location for the pattern mask and a pixel corresponding to the pixel location for the adjusted base image;combining the first contribution and second contribution to obtain a color value for a pixel at the pixel location for the second preview image; and using the color value for the pixel at the pixel location in the merged image. 
     In various implementations, the method includes allowing the user to change a point (e.g., vantage point, view point, or point of view) from which the three-dimensional preview image of the garment design is viewed. The method includes allowing the user to rotate the three-dimensional preview image of the garment design. The user interface for rotating the three-dimensional preview image is via the Web browser. The garment design can be for at least one of a pair of pants, jeans, or shorts. 
     The generating a pattern mask based on the laser input file can include generating an inverse image of the laser input file. The first contribution includes a first percentage of the image of the selected garment template that passes to the merged image, and the second contribution includes a second percentage of the adjusted base image that passes to the merged image. A sum of the first percentage and the second percentage is 100. 
     For the first contribution, the combining includes a multiply operation of the first value for pixel corresponding to pixel location for the pattern mask and the pixel corresponding to the pixel location for the image of the selected garment template without the selected wear pattern. For the second contribution, the combining includes a multiply operation of the second value for the pixel corresponding to the pixel location for the pattern mask and the pixel corresponding to the pixel location for the adjusted base image. 
     The merged image can be received at the Web browser over an end-to-end encrypted channel between the server and a client on which the Web browser is executing. 
     The method can include: saving the garment design as customized by a user with the selected garment template; and based on the laser input file associated with the selected wear pattern, using a laser to create a finishing pattern on an outer surface of the a target garment corresponding to the selected garment template. 
     Based on the laser input file, the laser removes selected amounts of material from the surface of a material of the target garment at different pixel locations of the garment, and for lighter pixel locations of the finishing pattern, a greater amount of the indigo ring-dyed cotton warp yarn is removed, while for darker pixel locations of the finishing pattern, a lesser amount of the indigo ring-dyed cotton warp yarn is removed. 
     The method can include: in the garment design tool, providing an option for the user to select a first level of wear or a second level of wear; after the first level of wear is selected, showing on a window of the Web browser a third preview image of the selected garment template with the first level of wear; and after the second level of wear is selected, showing on a window of the Web browser a fourth preview image of the selected garment template with the second level of wear, where the fourth preview image includes a first damage asset positioned on the garment template, the damage asset includes a hole or emerging hole 
     The first damage asset can be created by: creating a first damage shape and associating the first damage asset with the first damage shape; based on the first damage shape, using a laser to create the first damage asset on a fabric; after a postlaser wash of the fabric with first damage asset, capturing an image of the first damage asset on the fabric; and using the image of the first damage asset in the fourth preview image. 
     The third preview image of the selected garment template with the first level of wear does not include the first damage asset. The fourth preview image of the selected garment template with the second level of wear includes a greater number of damages assets than in the third preview image of the selected garment template with the first level of wear. The fourth preview image of the selected garment template with the second level of wear includes at least one damage asset having a greater area than for any damage asset in the third preview image of the selected garment template with the first level of wear. 
     In the third preview image, an opacity of an edge of the image of the first damage asset is reduced to blend the image of the first damage asset with the garment template. 
     The method includes: saving the garment design as customized by a user with the selected garment template and selected level of wear; and based on a laser input file associated with the selected level of wear, using a laser to create a finishing pattern on an outer surface of the a target garment corresponding to the selected garment template. 
     The three-dimensional preview image of the garment design can be created by: deconstructing a garment corresponding to a garment template; capturing images of the deconstructed pattern pieces; extacting shadow neutral digital pattern pieces; creating a shadow neutral texture; mapping the shadow neutral texture to a three-dimensional model of the garment as worn by a person; applying simulated light and shadowing to the three-dimensionally mapped shadow neutral texture; and using the three-dimensionally mapped shadow neutral texture as the three-dimensional preview image. 
     The method can include: saving the garment design as customized by a user with the selected garment template and selected level of wear; providing a first laser file with a wear pattern for a first size and first style; automatically generating a number of laser files (e.g., a set of laser files) with the wear pattern for a number of sizes and styles, different from the first size and first style; and based on a laser input file associated with the selected wear pattern and the selected level of wear and a size as selected by the user, using the second laser input file with a laser to create a finishing pattern on an outer surface of the a target garment corresponding to the selected garment template and of the size selected by the user. 
     The automatically generating can include: scaling a first zone of the first laser file according to a first scaling factor; scaling a second zone of the first laser file according to a second scaling factor, different from the first scaling factor; and storing the first laser file with the scaled first zone and scaled second zone as a second laser file for a second size and first style. When the garment is a pair of pants, the first zone corresponds to a region of the pants above a crotch point of the pant, and the second zone corresponds to a region of the pants below a crotch point of the pants. 
     In an implementation, a method includes: providing a garment design tool that shows on a computer screen of a three-dimensional preview image of a garment design as customized by a user with a finishing pattern; in the garment design tool, providing an option for the user to select a garment base and upon the user&#39;s selection, showing on the computer screen a first preview image of the selected garment template; in the garment design tool, providing an option for the user to select a first level of wear or a second level of wear; after the first level of wear is selected, showing on the computer screen a second preview image of the selected garment template with the first level of wear; and after the second level of wear is selected, showing on the computer screen a third preview image of the selected garment template with the second level of wear, where the third preview image includes a first damage asset positioned on the garment template, the damage asset includes a hole, tear, rip, or emerging hole. 
     The first damage asset can created by: creating a first damage shape and associating the first damage asset with the first damage shape; based on the first damage shape, using a laser to create the first damage asset on a fabric; after a postlaser wash of the fabric with first damage asset, capturing an image of the first damage asset on the fabric; and using the image of the first damage asset in the third preview image. 
     Some implementations have been presented, but it should be understood that the invention is not limited to the specific flow and steps presented. An implementation of the invention may have additional steps or components (not necessarily described in this application), different steps (or techniques) which replace some of the steps presented, fewer steps or a subset of the steps presented, or steps in a different order than presented, or any combination of these. Components or elements of the implementations discussed above may be combined in any combination. Further, the steps in some implementations of the invention may not be exactly the same as the steps presented and may be modified or altered as appropriate for a particular application or based on the data. 
     This description of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form described, and many modifications and variations are possible in light of the teaching above. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications. This description will enable others skilled in the art to best utilize and practice the invention in various embodiments and with various modifications as are suited to a particular use. The scope of the invention is defined by the following claims.