Appendix A (2 pages) contains an example of the pseudocode for finding a set of markers on a product;
Appendix B (1 page) contains an example of the code for remapping the color of an image using normalized ordinal color distribution;
Appendix C (4 pages) contains an example of the code for building a color map in normalized histogram order with an index from a matching color space;
Appendix D (2 pages) contains an example of the code for building a look-up table to remap the colors from a source sphere to a destination sphere; and
Appendix E (3 pages) contains an example of the code for remapping the color of the source image with a source sphere color map to a destination image with the color map of the sphere color object.
Appendices A-E form part of the specification and are incorporated herein by reference.
The invention relates generally to a system and method for modeling a piece of apparel.
Electronic commerce (E-commerce) is a thriving business in which various different products and services are sold to a plurality of consumers using an E-commerce site. The E-Commerce site may include a website that allows a plurality of consumers to gain access to the website using a network, such as the Internet. The website may have a plurality of web pages wherein these web pages have images of a plurality of different products that the consumer may purchase. The images contained in the plurality of web pages are two dimensional images. The website may also include a secure commerce portion that allows the consumer to select one or more items, place those items in an electronic shopping cart and, when done shopping, check out and pay for the items that remain in the electronic shopping cart using various payment services, such as PayPal or a credit card.
One limitation with these typical E-commerce systems is that the product available on the website, such as a shirt, may be modeled by a human model to show the product and its design, but is shown to the consumer as a “flat” image since it is shown to the consumer on the display of the computer being used by the consumer. Thus, the actual design of the product and how the product looks in real life is often difficult to determine from those images. This may result in consumers not purchasing the product which is undesirable.
Another limitation of these typical E-commerce systems is that the product available on the website, such as a shirt, cannot be customized by the consumer with a design on the product. Thus, the consumer cannot see the customized product with the design and this also may result in consumers not purchasing the product which is undesirable. Thus, it is desirable to provide a system and method that provides better models for products and it is to this end that the system and method are directed.
The system and method are particularly applicable to a web based client/server model system and method for selling a shirt modeling with a product modeling system implemented in software on a computer and it is in this context that the system and method is illustrated and described. It will be appreciated, however, that the system and method can be used for various products wherein the products may include other apparel and other products in which it is desirable to provide betters models of the products. For example, the system may be used for any type of garment or piece of apparel, any item that can be worn or used by a human being or pet, such as a hat, backpack, dog sweater, etc. and/or any other product in which it is desirable to be able to display the product on a model. In addition, the system may be used with any product in which it is desirable to be able to display the product (with an irregular surface) with a design on it, such as a skateboard, a shoe. In addition, the system may be used to display a design on any item with an irregular surface, such as a wall, automobile body, a pencil and the like. Furthermore, the system may be used to identify a product/item in a video wherein a design can be inserted into the product/item in the video. In addition, the system and method can be implemented in software (shown in the illustrated implementation), hardware or a combination of hardware and software and may also be implemented on client/server system (shown in the illustrated implementation), a web server, a terminal, a peer to peer system and the like so that the system and method are not limited to the particular implementation of the system or method.
The sales unit 106 may also be coupled to a product modeling unit that may be implemented on the computing device with the typical elements wherein the product modeling unit may further comprise a product modeling store 112, such as a software implemented database and a memory in the product modeling unit may store a product modeling module 116 that has a plurality of lines of computer code wherein the plurality of lines of computer code are executed by the processing unit to implement the product modeling system and method as described below.
For purposes of illustrating the product modeling system and method, a product modeling method for a piece of apparel, such as a t-shirt, with a design is described below. However, the product modeling system may also be used for other products, such as other apparel and other products in which it is desirable to provide betters models of the products. For example, the system may be used for any type of garment or piece of apparel, any item that can be worn or used by a human being or pet, such as a hat, backpack, dog sweater, etc. and/or any other product in which it is desirable to be able to display the product on a model. In addition, the system may be used with any product in which it is desirable to be able to display the product (with an irregular surface) with a design on it, such as a skateboard, a shoe. In addition, the system may be used to display a design on any item with an irregular surface, such as a wall, automobile body, a pencil and the like. Furthermore, the system may be used to identify a product/item in a video wherein a design can be inserted into the product/item in the video. The output of the product modeling method (an image of the product with a design shown on the product) may be used for various purposes. For example, the output may be used to generate a plurality of product displays with designs on a website that allows consumers to see the products. The example described below is a system in which the product modeling system is tied to a product marketing and selling company wherein the product marketing and selling company has control of models and images of the product modeling system. In another implementation/embodiment of the product modeling system, the system may permit a consumer to provide their own images/models, such as models of the actual consumer, so that the consumer can upload the image to a service and then have the selected design displayed on the model of the actual consumer wherein the service provides: 1) the model components (to create the model form); 2) a tool to upload/modify the model images to the service; and 3) a tool to display the model with the design to the consumer.
Once the one or more pieces of apparel are prepared with the markers, an image for each piece of apparel on each different human model may be generated (150) such as by using a camera to take a picture of the piece of apparel being worn by a human model. Prior to taking the image of the piece of apparel with the markers on the human model, the lighting for taking the image is determined. When the user/consumer generates the models, the product modeling system may provide instructions for taking an image of the piece of apparel such as using a flash, using a particular exposure, etc. . . . . In one implementation of the product modeling system, the product modeling system may download a piece of code directly to a user/consumer's camera, such as a digital camera, to set up the camera properly to take the image of the product or item. In particular, the surface model and illumination model for each piece of apparel is determined which also allows the color and lighting for the image to be accurately determined.
Once the image of the piece of apparel on a plurality of human models in a plurality of different poses are taken, the model for the piece of apparel on a particular model in a particular pose are preprocessed (160) by the product modeling system. During the preprocessing, the product modeling system may detect the plurality of markers on the piece of apparel image, remove the marker images from the image of the piece of apparel and then generate a representation of the surface of the piece of apparel when worn by the human model.
In one implementation, the markers may be detected by a distinguishing feature of the markers (spectral difference, reflective difference, textual difference and/or temporal difference), refined by matching geometric properties of the pattern (local pattern finding) and reconstructed by matching the known pattern (local patterns assembled into a known complete pattern.) The reconstructed pattern may then be used to model the shape of the flexible substrate. The product modeling system may have a plurality of local samples of the original unmarked substrate so that the marker pattern can be replaced using the textures of the unmarked substrate as an example that yields an unmarked image suitable for commercial display.
The preprocessing process is shown in
During the identification of the markers, the product modeling system may use various techniques. For example, edge detection may be used to identify each marker and the spacing between the markers that can then be used to generate the grid of markers on the surface of the piece of apparel when worn on a human model that thus allows the surface of that piece of apparel on the particular human model in a particular pose to be accurately determined. Alternatively, the system may threshold at the white color based on the color calibration and then locate elements above the threshold and then also identify the background including elements of the human model such as jewelry, an eye or the background behind the human model. The system may also use histograms to identify the markers and the background.
The marker images (once identified) may be removed from the image of the piece of apparel (as shown in
To generate the representation of the contours of the surface of the piece of apparel when worn by a particular human model in a particular pose, the system maps the position of the markers 190 relative to each other as shown in
Once the contours of the surface is determined and the preprocessing is completed, the model of the piece of apparel when worn by a particular human model in a particular pose may be retouched (162) as needed. Then, the model is post-processed (170) by the product model system. During the post-processing process, the product model system colorizes the model using a color mapping module that is part of the product model system. The colorizing allows each model for each piece of apparel on a particular human model in a particular pose to have the piece of apparel converted into any colors such as the two different colors shown in
Appendices B-E, incorporated herein by reference, illustrate, for a particular implementation of the product modeling system, the code for 1) remapping the color of an image using normalized ordinal color distribution; 2) building a color map in normalized histogram order with an index from a matching color space; 3) building a look-up table to remap the colors from a source sphere to a destination sphere; and 4) remapping the color of the source image with a source sphere color map to a destination image with the color map of the sphere color object. Using the code set forth in these appendices (and the process steps described in these appendices), the color mapping process: 1) builds a color map (the BuildMap code in Appendix C) for the source image using a sphere to build a histogram and then a sorted table; 2) builds a remap table (the BuildReMap table code in Appendix D); 3) remaps the image colors (the code in Appendices B and E) onto the product. The system may also layer color and texture so that the colorized model of the particular piece of apparel on the particular human model in the particular pose more accurately emulates different fabrics and/or threads of the fabric which results, for example, in an accurate emulation of the printed ink of the design on the piece of apparel with the particular type of fabric.
Once the colorization is completed, the model for a particular piece of apparel on a particular human model in a particular pose is integrated into a service (180) such as a website that has the pieces of apparel with particular designs for sale to consumers.
When the model is integrated into the service, the product modeling system may perform warp mapping (182) on a design selected by the consumer and permit the user to select a particular background (184). An example design is shown in
During the warp mapping (that may be a bicubic image warp), a grid of the design 200 is mapped to the surface contour grid 202 which is then placed onto the piece of apparel to generate the more realistic model for the piece of apparel with the design as shown in
Although the example provided herein is for a piece of apparel (a shirt) worn by a human being, the product modeling system may be used for various different products (other pieces of apparel, other garments, hats, shoes, pet clothing, inanimate objects such as cups) with various different models (human models, animal models, inanimate models such as robots or mannequins) and with any number of different poses for the models since the above example is merely illustrative.
While the foregoing has been with reference to a particular embodiment of the invention, it will be appreciated by those skilled in the art that changes in this embodiment may be made without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
4636027 | Dube | Jan 1987 | A |
4888260 | Cowan | Dec 1989 | A |
5134669 | Keogh et al. | Jul 1992 | A |
5343401 | Goldberg et al. | Aug 1994 | A |
5422819 | Nakamura | Jun 1995 | A |
5615318 | Matsuura | Mar 1997 | A |
5850222 | Cone | Dec 1998 | A |
5872555 | Kolar et al. | Feb 1999 | A |
6012402 | Sekine | Jan 2000 | A |
6012890 | Celorio Garrido | Jan 2000 | A |
6029141 | Bezos et al. | Feb 2000 | A |
6097310 | Harrell et al. | Aug 2000 | A |
6173211 | Williams et al. | Jan 2001 | B1 |
6321670 | Tomita et al. | Jan 2001 | B1 |
6196146 | Goldberg et al. | Mar 2001 | B1 |
6280891 | Daniel | Aug 2001 | B2 |
6310627 | Sakaguchi | Oct 2001 | B1 |
6392748 | Fately | May 2002 | B1 |
6473671 | Yan | Oct 2002 | B1 |
6513921 | Houle | Feb 2003 | B1 |
6513924 | Goldberg et al. | Feb 2003 | B1 |
6546309 | Gazzuolo | Apr 2003 | B1 |
6564118 | Swab | May 2003 | B1 |
6804573 | Goldman | Oct 2004 | B2 |
6804660 | Landau et al. | Oct 2004 | B2 |
6842532 | Hu et al. | Jan 2005 | B2 |
6859679 | Smith | Feb 2005 | B1 |
6907310 | Gardner et al. | Jun 2005 | B2 |
6947808 | Goldman | Sep 2005 | B2 |
6968075 | Chang | Nov 2005 | B1 |
6994201 | Yu et al. | Feb 2006 | B2 |
7016756 | Goldman | Mar 2006 | B2 |
7016757 | Goldman | Mar 2006 | B2 |
7054709 | Takeuchi | May 2006 | B2 |
7216092 | Weber et al. | May 2007 | B1 |
7340416 | Larabee | Mar 2008 | B1 |
7409259 | Moreno | Aug 2008 | B2 |
7479956 | Shaw-Weeks | Jan 2009 | B2 |
7616851 | Uhlhorn et al. | Nov 2009 | B1 |
8069091 | Callen et al. | Nov 2011 | B1 |
8090461 | Harvill et al. | Jan 2012 | B2 |
8174521 | Harvill et al. | May 2012 | B2 |
8175931 | Harvill et al. | May 2012 | B2 |
8240262 | Zeiger et al. | Aug 2012 | B2 |
8249738 | Lastra et al. | Aug 2012 | B2 |
8401916 | Harvill et al. | Mar 2013 | B2 |
8411090 | Wang | Apr 2013 | B2 |
8514220 | Harvill et al. | Aug 2013 | B2 |
8516392 | Ostroff | Aug 2013 | B2 |
8654120 | Beaver et al. | Feb 2014 | B2 |
8711175 | Aarabi | Apr 2014 | B2 |
8712566 | Harvill | Apr 2014 | B1 |
8878850 | Harvill et al. | Nov 2014 | B2 |
8958633 | Harvill | Feb 2015 | B2 |
9087355 | Harvill et al. | Jul 2015 | B2 |
9213920 | Harvill et al. | Dec 2015 | B2 |
9477979 | Harvill et al. | Oct 2016 | B2 |
20010026272 | Feld et al. | Oct 2001 | A1 |
20020007228 | Goldman | Jan 2002 | A1 |
20020030689 | Eichel et al. | Mar 2002 | A1 |
20020082960 | Goedken | Jun 2002 | A1 |
20020099524 | Sell et al. | Jul 2002 | A1 |
20030023687 | Wolfe | Jan 2003 | A1 |
20030076318 | Shaw-Weeks | Apr 2003 | A1 |
20030120183 | Simmons | Jun 2003 | A1 |
20030168148 | Gerber et al. | Sep 2003 | A1 |
20030177364 | Walsh et al. | Sep 2003 | A1 |
20030179197 | Sloan et al. | Sep 2003 | A1 |
20030182402 | Goodman et al. | Sep 2003 | A1 |
20030184544 | Prudent | Oct 2003 | A1 |
20030229893 | Sgaraglino | Dec 2003 | A1 |
20040024764 | Hsu et al. | Feb 2004 | A1 |
20040044566 | Bostelmann et al. | Mar 2004 | A1 |
20040049309 | Gardner et al. | Mar 2004 | A1 |
20040078285 | Buvoet | Apr 2004 | A1 |
20040078294 | Rollins et al. | Apr 2004 | A1 |
20040095375 | Burmester et al. | May 2004 | A1 |
20040153512 | Friend | Aug 2004 | A1 |
20040194344 | Tadin | Oct 2004 | A1 |
20040227752 | McCartha et al. | Nov 2004 | A1 |
20040236455 | Woltman et al. | Nov 2004 | A1 |
20040236634 | Ruuttu | Nov 2004 | A1 |
20040267610 | Gossett et al. | Dec 2004 | A1 |
20050065799 | Dare et al. | Mar 2005 | A1 |
20050071242 | Allen et al. | Mar 2005 | A1 |
20050125092 | Lukis et al. | Jun 2005 | A1 |
20050131571 | Costin | Jun 2005 | A1 |
20050144090 | Gadamsetty | Jun 2005 | A1 |
20050149223 | Takeuchi | Jul 2005 | A1 |
20050155316 | Shipley | Jul 2005 | A1 |
20050177453 | Anton et al. | Aug 2005 | A1 |
20050182707 | Yeager | Aug 2005 | A1 |
20050203766 | Donaldson | Sep 2005 | A1 |
20050204002 | Friend | Sep 2005 | A1 |
20050238251 | Lunetta et al. | Oct 2005 | A1 |
20050251462 | Nykamp | Nov 2005 | A1 |
20060015207 | Weiser et al. | Jan 2006 | A1 |
20060020486 | Kurzweil et al. | Jan 2006 | A1 |
20060027154 | Naka et al. | Feb 2006 | A1 |
20060156283 | Landau et al. | Jul 2006 | A1 |
20060178952 | Harris | Aug 2006 | A1 |
20060226563 | Albert et al. | Oct 2006 | A1 |
20070005461 | Lenz | Jan 2007 | A1 |
20070208633 | Singh | Mar 2007 | A1 |
20070083383 | Van Bael et al. | Apr 2007 | A1 |
20070174132 | Shemula | Jul 2007 | A1 |
20080006192 | Zeiger et al. | Jan 2008 | A1 |
20080079727 | Goldman et al. | Apr 2008 | A1 |
20080092309 | Ellis et al. | Apr 2008 | A1 |
20080147512 | Yankton | Jun 2008 | A1 |
20080147219 | Jones | Aug 2008 | A1 |
20090070666 | Eilers et al. | Mar 2009 | A1 |
20090109214 | Harvill et al. | Apr 2009 | A1 |
20090122329 | Hegemier et al. | May 2009 | A1 |
20090182573 | Lidestri | Jul 2009 | A1 |
20090190858 | Moody et al. | Jul 2009 | A1 |
20090222127 | Lind | Sep 2009 | A1 |
20090254207 | Tiffany et al. | Oct 2009 | A1 |
20100119957 | Satou et al. | May 2010 | A1 |
20100169185 | Cottingham | Jul 2010 | A1 |
20100185309 | Ohiaeri et al. | Jul 2010 | A1 |
Number | Date | Country |
---|---|---|
1536511 | Oct 2004 | CN |
1713196 | Dec 2005 | CN |
1828671 | Sep 2006 | CN |
1877629 | Dec 2006 | CN |
101663662 | Mar 2010 | CN |
102203818 | Sep 2011 | CN |
1136899 | Sep 2001 | EP |
S61-255376 | Nov 1986 | JP |
H02-104758 | Apr 1990 | JP |
H07-140886 | Jun 1995 | JP |
10-222653 | Aug 1998 | JP |
10-247256 | Sep 1998 | JP |
11-066119 | Mar 1999 | JP |
11076663 | Mar 1999 | JP |
2001-052177 | Feb 2001 | JP |
2001-314677 | Nov 2001 | JP |
2002-133201 | May 2002 | JP |
2003-122960 | Apr 2003 | JP |
2004-152000 | May 2004 | JP |
2005-118215 | May 2005 | JP |
2007-183486 | Jul 2007 | JP |
2011-077764 | Apr 2011 | JP |
WO 2001087001 | Nov 2001 | WO |
WO 2002012925 | Feb 2002 | WO |
WO 2003085186 | Oct 2003 | WO |
WO 2008038039 | Apr 2008 | WO |
WO 2010022404 | Feb 2010 | WO |
Entry |
---|
PCT/US08/81215 International Search Report dated Jan. 5, 2009, 2 pages. |
PCT/US08/81215 Written Opinion dated Jan. 5, 2009, 6 pages. |
PCT/US09/61858 International Search Report dated Dec. 18, 2009, 4 pages. |
PCT/US09/61858 Written Opinion dated Dec. 18, 2009, 5 pages. |
PCT/US09/52154 International Search Report dated Sep. 23, 2009, 3 pages. |
PCT/US09/52154 Written Opinion dated Sep. 23, 2009, 6 pages. |
PCT/US09/54806 International Search Report dated Oct. 7, 2009, 3 pages. |
PCT/US09/54806 Written Opinion dated Oct. 7, 2009, 6 pages. |
EP Application No. 08843251.3 Supplemental Search Report dated Nov. 23, 2010, 11 pages. |
EP Application No. 09822776.2 Supplemental Search Report dated Mar. 2, 2012, 9 pages. |
DeMarco “Zazzle and Pitney Bowes Team up to deliver custom stamps to consumers,” (2005), published online: http//www.zazzle.com/mk/welcome/pressreleases/pr071805_2 (2 pages). |
Ehara J et al: “Texture overlay onto deformable surface for virtual clothing” ACM International Conference Proceeding Series—Proceedings of The 2005 International Conference on Augmented Tele-Existence, ICAT '05 2005 Association for Computing Machinery USA, vol. 157, 2005 , pp. 172-179, XP002606672 DOI: 10.1145/1152399.1152431 (8 pages). |
Ehara J et al: “Texture overlay for virtual clothing based on PCA of silhouettes” Mixed and Augmented Reality, 2006. ISMAR 2006. IEEE/ACM International Symposium ON, IEEE, PI, Oct. 1, 2006 (Oct. 1, 2006) , pp. 139-142, XP031014661 ISBN: 978-1-4244-0650-0 (4 pages). |
Meseth “Towards Predictive Rendering in Virtual Reality” Ph.D. dissertation, Bonn University, published Oct. 2006 (369 pages). |
Nelson, J “From Moon Shoes to Gel Gun—Sustaining Hart health”, Columbian. Vancouver, Wash.: Oct. 11, 2007 (3 pages). |
Scholz V et al: “Garment motion capture using color-coded patterns” Computer Graphics Forum Blackwell Publishers for Eurographics Assoc UK, vol. 24, No. 3, 2005 , pp. 439-439, XP002603022 ISSN: 0167-7055 (9 pages). |
Joele: “Research Assignment of an Augmented Reality System using ARToolKit and user invisible markers,” 2005 (Jan. 1, 2005), XP055103237, Retrieved from the Internet: URL:http://graphics.tudelft.nl/˜vrphobia/RA_final_report_Dennis_Joele.pdf [retrieved on Feb. 19, 2014] (66 pgs.). |
Gruber, “Texture Mapping,” Ted Gruber Software, Inc., pp. 1-2 (2001) (2 pgs.). |
Heckbert, Paul S. “Fundamentals of texture mapping and image warping” Master's Thesis under the direction of Carlo Sequin, Dept. of Electrical Engineering and Computer Science University of California, Berkeley. Jun. 17, 1989. |
Real Studio, “Real 3D Tutorials: Tutorial 5—Texture Mapping,” pp. 1-5 (printed Sep. 9, 2016) (5 pgs.). |
Wolfe, “Teaching Texture Mapping Visually,” Nov. 1997, pp. 1-37 (37 pgs.). |
Wu et al., Wavelength-multiplexed submicron holograms for disk-compatible data storage, Optics Express, vol. 15, No. 26, Dec. 24, 07, p. 17798-17804 (7 pgs.). |