METHOD AND APPARATUS FOR DISPLAYING ASSETS, GOODS AND SERVICES
DESCRIPTION
Related Applications
This application claims the benefit of U.S. Provisional Application No. 60/197,781, filed April 14, 2000, and incorporated herein by reference. Technical Field The present invention relates to visual display methods and apparatuses, and in particular, a method and system for providing over a communications link a three- dimensional visualization that can be manipulated by a user. More specifically, the present invention provides a methodology and system for allowing the construction, manipulation and intertwining of more than one three-dimensional visualization of objects using the Internet as the communications link. The present invention has particular applicability in providing customized views of assets, goods and services offered for sale and/or lease. For example, clothing, real-estate, automobiles, home furnishings, home renovations, landscaping, or the like. Background of the Invention Many websites have been introduced wherein a user is provided with two- dimensional views of articles for sale, such as clothing, furniture or similar objects. For instance, until recently, www.boo.com provided views of clothing that could be placed on a two-dimensional front view of the user's body. Customization of the body parameters was not possible. When viewing goods such as clothing, two pre-created Shockwave Flash documents (i. e. , vector-graphic documents) were used and handled by
Shockwave Flash plug-ins. One of these documents contained several two-dimensional
pictures of clothing taken from different angles. As the user moved the cursor with the mouse, this document generated one of the two-dimensional images, thereby creating the illusion of a three-dimensional object rotating. The other Shockwave Flash document generated a zoomed view of the object because this document contained several pictures of clothing taken with different resolution.
Similarly, Www. iust4mepl u s . com and www.landsend . com use the same program, entitled MY VIRTUAL MODEL, which does not provide pure three- dimensional views. For instance, MY VIRTUAL MODEL does not allow free rotation. Instead, the model can be rotated only in steps of 90 degrees. Therefore, it is not possible to view the model except from the front, left side, right side, and back. Moreover, there is no dynamic generation of a three-dimensional model of the user's body according to parameters entered by the user. Instead, there are approximately 10-15 pre-created three- dimensional models. When the user selects his/her body parameters, MY VIRTUAL MODEL selects the model which has the closest body parameters to those entered by the user. Since there are only 10-15 three-dimensional models, and only four possible angles of view for each of them, it is quite easy to pre-render all graphics for all models into two-dimensional images. This way, there is no need for dynamic creation of three- dimensional models and all operations can be done in two-dimensions. There is also no need to create complex mathematical algorithms for transformation of generic three- dimensional models into models of the user's body. And no need to create face texture for the three-dimensional model from the user's picture, since the two-dimensional picture can be applied right on the two-dimensional image (front side view) of the user.
More importantly, there are also difficulties in using a Web-based system for generating three-dimensional customized views due to constraints in data flow. For example, considerable time and/or bandwidth is required for transferring image data.
Presently, those three-dimensional formats that do exist require stand-alone or direct LAN/WAN connections. Accordingly, the Internet is not feasible because of the limited bandwidth and transmission speed in utilizing a three-dimensional display format.
Summary of the Invention
The present invention provides a system and methodology for creating three- dimensional views of objects between one or more remote computer server over a variable communications link, i.e., a Web-based computer system. In particular, the system and methodology of the present invention allows for the interaction between at least a first and second server sites for the development and manipulation of at least a first three-dimensional object over a communications link that has variable bandwidth structure. By this methodology more than one three-dimensional object construct can be combined with another creating a lifelike appearance of a desired multi-object image, e.g., clothes on a human form.
One particular application for the present invention is the development of three-dimensional views of assets, goods and services offered for sale and/or lease. The system can include a display server operably connected, via a merchant server, to the browser of a client. The display server provides for generating various three-dimensional views of a graphical model produced in response to data entered by a user concerning parameters provided by the user operating the browser. The system can also use a stored model if the user does not provide any data.
The configuration of the system provides for transmission and interaction with a graphical model over a limited bandwidth structure. The display server also provides for arranging merchandise or services, based on the graphical model of the user, for generating a composite image of both the graphical model and the merchandise or services. In a preferred embodiment, the dimensions of the merchandise are also recorded so the resulting display closely matches the appearance that the goods would have on the user. Other features and advantages of the invention are apparent from the following specification taken in conjunction with the following drawings.
Brief Description of the Drawings
FIGURE 1 is a simplified block diagram illustrating an embodiment of a system in accordance with the present invention;
FIGURE 2 is a simplified functional block diagram of the system of FIGURE 1 wherein goods and services are displayed and offered for sale;
FIGURE 3 is a simplified functional bock diagram of a methodology for combining two or more three-dimensional configured elements, such as clothing and a human avatar, in a single point and click step;
FIGURE 4 is another simplified functional block diagram of the system of FIGURE 1 wherein assets such as real estate are displayed and offered for sale or lease; and
FIGURE 5 is yet another simplified block diagram of an embodiment of a system in accordance with the present invention. Detailed Description of the Preferred Embodiment While this invention is susceptible of embodiments in many different forms, there is shown in the drawings and will herein be described in detail preferred embodiments of the invention with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention and is not intended to limit the broad aspect of the invention to the embodiments illustrated. More specifically, the present invention will be described in detail with respect to an embodiment defining the development and manipulation of clothing upon a human form on a Web-based system. However, the same methodology can be employed for the development of an object representing a building, office space, or different pieces of furniture that are positioned with respect to each other in one or more rooms. The same methodology can also be employed in product engineering where two or more individuals are working to construct a three-dimensional product model over a Web-based system.
Turning to FIGURE 1, a simplified block diagram is provided of a display server system in accordance with the present invention. The display server system 10 supports providing realistic views of assets, goods and services offered for sale and/or lease over the Internet using the World Wide Web. The server system 10 includes a server engine 12, user databases 14, various Web pages 16, an image data generator component 17, a catalog database 18, and a sales database 20. The server engine 12 receives HTTP requests to access Web pages 16 identified by URLs and provides the Web pages to various client systems 22.
The user databases 14 contain information for various users. The information within the user database 14 is obtained from users in response to queries from the server system 10. The information can include user-specific information such as login name, password, name of the user, the user's address, credit card number, email address and personal information such as physical measurements.
The catalog database 18 contains information regarding assets, goods, and services offered for sale and/or lease. The information within the catalog database 18 can also include data required for generating a three-dimensional model of the assets, goods and services.
The sales database 20 contains information regarding assets, goods, and services that have been ordered and sold to users. The information within the sales database 20 can include billing address, credit card data, item, quantity ordered, and delivery address.
The information can be obtained for users in response to queries generated by the server system 10. Moreover, portions of this information, such as delivery address, can be obtained from the user databases 14 instead of having users reenter data already present in the system 10. As shown in FIGURE 1, the client system 22 contains a browser 24 and a memory storage device 25. The server and client system interface by exchanging information via communication link 26 which can include transmission over the Internet. The browser 24 consists of a software application used to locate and display Web pages having
graphics as well as text. It is desired that the browser 24 be capable of presenting multimedia-information, including sound and video, with or without, requiring plug-ins. Moreover, the memory storage device 25 can consists of random-access memory, a hard drive, or any like device for storing information retrievable by the browser 24. One skilled in the art would appreciate that the present invention can also be used in various environments other than the Internet. A contribution of the present invention is a methodology incorporating mathematical algorithms that allow for the configuration and manipulation of three-dimensional objects over communication modes having varying bandwidths. For example, various communication channels may be used such as handheld units like personal digital assistants (PDAs), cellphones, local area network, wide area network, or point-to-point dial up connections and standalone booths/kiosks. Also, the server system can comprise any combination of hardware or software for interacting with the client system. These systems can include television-based systems or various other consumer products through which information may be retrieved. Turning to FIGURE 2, the present invention will be described with particularity to a system that is designed to provide shopping services, specifically the visualization and purchasing of clothing and other accessories, over the Internet. More specifically, the server system 10 provides shopping services such as a virtual dressing room and hair/beauty salon. Preferably, the user databases 14 include a user profile storage component 30, a user billing information storage component 32, and a user shopping and purchase history storage component 34.
The user profile storage component 30 contains personal data entered by the user such as the user's name, address, age, date of birth, anniversary, weight, height, measurements, photographs, and email address. The personal data is entered by the user, via the client system 22, in response to questions asked by the server system 10.
Accordingly, the client system 22 includes a keyboard or other like data enter device for allowing a user to enter personal data. The personal data entered by the user is
transmitted, via the communications link 26, to the server system where the data is stored in the user profile storage component 30.
Similar, the billing information storage component 30 contains billing data entered by the user such as the user's name, address, credit card number, shipping address, billing address, email address, telephone number and social security number, if provided. Once data is entered and stored in the profile and billing storage components, the data can be automatically retrieved as needed instead of having the user reenter the data when making a purchase.
The user shopping and purchase history component 34 allows for gathering and storing a record of items tried and purchased by each user, along with the amount of time the user spent looking at various items. The records allow for determining the preferences of each user. The server system 10 can then use this preference data to accommodate the user by providing customized web pages and offers whenever the user returns to the server system. The customized web pages and offers preferably relate to like items based on the user's preferences. Moreover, the data within the purchase history component 34 can provide detailed information to merchants or other interested parties about users' interests.
Preferably, access to the user database 14 is non-evasive such that, for example, registration of a user would be activated only when the user's personal data is required. Once the user is registered, the user is automatically logged onto the server system 10 each subsequent time the user enters the site or moves on to other sites. Likewise, if required, plug-ins for viewing three-dimensional models by the user are automatically loaded on the client's system 22 upon first time use by the browser 24. Thus, a URL can be provided by the server system 10 where a necessary plug-in can be found and downloaded. As such, the plug-in can be downloaded/installed automatically on the client system 22 if the plug-in is missing.
In an embodiment, the web pages 16 of the server system 10 provide a trial area 36, such as a virtual dressing room, where users can experiment with clothing selected from
the catalog database 18. The catalog database 18 includes graphical three or two dimensional models and descriptions of items offered for sale. For instance, the catalog database 18 can contain models and descriptions of assets, goods and services offered for sale and/or lease. The catalog database 18 can also include categories of items for particular events such as weddings, proms, formal parties, and the like. Moreover, the catalog database 18 provide data for displaying items on various sized models such as petite, medium, and large women or men.
Within the virtual dressing room 36 a user can take clothing from a catalog of products, stored on a catalog database 18, and try it on a three-dimensional model of the user's body provided by the image data generator 17. Preferably, every product offered within the catalog database can be directly put into the user's shopping basket 40 from the virtual dressing room or, alternatively, stored in a folder or e-mailed to the vendor's off-line store. The items within the shopping basket can be purchased by the user, wherein information regarding delivery of the goods is entered into the sales database 20. In an embodiment, the virtual dressing room 36 can work in two modes: demonstration mode where no user's registration is required, and full mode where user registration is required. The difference between these two modes preferably consists of it not being possible to save user's settings in demonstration mode.
The server system 10 allows a user to build his or her own virtual model or avatar by specifying the user' s measurements to be used in displaying clothes and the like in the virtual dressing room. Preferably, the server system 10 has three or four different sized models for various body parts that are selected by the system to closely match the user' s profile or are created based on the measurements of the user. Moreover, the avatar can be articulated in its movements with precut body parts and clothes for allowing partial to full animations. In implementing the invention, it is preferred that the models selected be cached on the client system 22, within memory 25, once generated and transmitted by the server system 10.
Streaming is the desired transfer protocol used to transfer a model between the server system 10 and the client system 22. The main benefit of streaming is that the user has better response time from the server. Good streaming format allows the user to start playing with three-dimensional models as soon as the basic elements of the model have been downloaded on the client system. Otherwise, the user can get long delays before the user gets the whole model with all of its textures. With streaming, these delays are greatly reduced.
The client system 22 is preferably provided with controls on the Web Pages 16 for allowing a user to select and change clothing to try on the user's three-dimensional model. The controls also allow the user to change the parameters of the three- dimensional model. In an embodiment, the controls are incorporated into a plug-in on the client system 22. Alternatively, the controls are external to the chosen plug-in (usual HTML form elements on page). When the controls are incorporated into a plug-in, the plug-in preferably handles its own controls. However, if the controls are external to the chosen plug-in, the plug-in preferably provides a general purpose programming language interface to its functionality, such as JavaScript, and, therefore, JavaScript handlers or the like for HTML form elements that can be used to manage the plug-in.
Preferably, the user interface is embedded on a web page plug-in that provides three-dimensional visualization for three-dimensional models of body and clothing. A more preferred embodiment includes specific dimensions and other parameters/characteristics of the merchandise to be displayed on the individual's three- dimensional model. When the goods are displayed upon the model, the merchandise is configured to lie upon the model and conform to the actual pre-configured dimensions of the model. Specifically, depending upon the designer's specifications for the fit of a particular piece of clothing or similar article, the system either simply overlays the clothing or article on the human avatar by performing a simple comparison step to ensure the proper overlay, or takes the mathematically derived vertices (to be defined hereinafter) of both the human avatar and particular piece of clothing according to the
designer specifications and performs a more comprehensive comparison of such vertices to ensure a closer visual fit of the clothing over the human avatar.
In an alternative embodiment, the trial area 28 can consist of a hair/beauty salon, similar to the virtual dressing room, that provides a place for users to experiment with their appearance. Users can try different hairdos and different makeup. For instance, cosmetic products can be taken from catalog database 18 for users to test. Moreover, other products and accessories like eyeglasses can be taken from catalog database 18 and tested by users.
In an embodiment, the hair/beauty salon can use a faceless avatar or, alternatively, a picture of the user's face. However, if a face picture is used, it is preferred that the face image only be provided when the avatar is at a front or side direction corresponding to those projections where the face is visible. This way, there is no need to deal with creation of three-dimensional face textures from the user's picture.
The server system 10 can also provide a web page to assist the user in loading his scanned photograph into the user database 14, via the client system 22, and delimitate the face region. The user can then virtually try different hairstyles and makeup combinations within the hair/beauty salon utilizing the downloaded picture. The server system 10 provides that all changes in the user's look are visualized on the transformed user's picture. Visualization is preferably provided by two-dimensional graphics. In an embodiment, transformation of the user's picture within the hair/beauty salon is provided by recognition of facial areas and the determination of base points on the edges of the face areas by the server system 10. The user's picture, along with the base points determined by the server system 10, are stored in the user database 14. Using the base points, hair style images can be merged with face pictures within the hair/beauty salon.
In an embodiment, the server system 10 includes a library of generic algorithms within the image data generator 17 for transforming a picture of the user's face to produce the effects of makeup. The algorithms preferably transform pictures of the face
using base points of the face. Further, the algorithms use the base points to join a hairstyle to the image of a face. Thus, various hair style images are adapted to the image of a user to provide a lifelike composite image.
The server system 10 can also include an on-line virtual sales assistant for helping and complimenting the user' s selections) from the catalog database 18. The user can ask the sales assistant, simple questions by typing the questions and sending them to the server system 10. The sales assistant provides the user with standard recommendations and answers to a set of questions based on key words and the like contained within the user's questions. A preferred format is to store multi-profiles of different types of sales assistants based upon customer demographics, age, location, and profession and then use artificial intelligence to provide comments based on the stored information.
Preferably, a composite image of both the human avatar and one or more articles of clothing is provided in response to only a single action by the user such as clicking a mouse button when a cursor is position over the graphical representation of the item offered for sale. As shown in FIGURE 3, in step 90 the server system provides a client system with both a three-dimensional template or avatar model and a three-dimensional model of an item offered for sale. In step 92 the client system uses the avatar model and the item model to generate a graphical representation of the avatar and the item offered for sale, respectively. In step 94 the user of the client system performs a single action such as clicking a mouse button when a cursor is position over the graphical representation of the item offered for sale. In step 96, and in response to the single action, the server system combines the template model and the model of the item offered for sale such that a composite three-dimensional model is provided, as described in detail further herein, for use by the client system in displaying the item offered for sale fitted onto the template model. As will be appreciated by those skilled in the art, the single action can also include using a television remote control, depressing a key on a key pad, or using a pointing device.
While the above embodiment describes the instant invention in the context of a shopping system for clothing, the instant invention should not be limited to this embodiment. Those skilled in the art recognizing that the described dressing room, human avatar and clothing configuration could, with the mathematically methodology described hereinafter, be substituted with an embodiment where the dressing room and human avatar may be an office building, home or even a piece of land, and the clothing or accessories may be walls or other structures, or furniture or other similar household items that are moved about the office building, home or piece of land. Similarly, a product modeling system can be substituted for the described embodiment where a specific product design platform replaces the human avatar and portions of such product design are manipulated and reconfigured in a manner similar to the manipulation and reconfiguration of both the human avatar, and the placement of the clothing or other accessories upon such avatar, or the design of an automobile interior about one or more human avatars. Furthermore, in still further embodiments of the invention the specific aspects of configuring a human avatar can be incorporated in visualization settings, for example, an office or home setting. In one particular embodiment a human avatar is configured to function in a bank office setting instead of a shopping setting. The function of the avatar is preset to respond to specific questions inputted by the user of the system to answer typical questions in the bank setting. The purpose of this type of configuration is to provide the user a more lifelike representation of a bank office setting while conducting banking services online.
Turning to FIGURE 4, a simplified functional block diagram of one alternative embodiment of the invention is described. This embodiment provides a server system in accordance with the present invention for displaying an asset such as real estate. The last two digits of the 100 series of reference numbers in FIGURE 4 correspond to similar elements having the same two digit reference numbers in FIGURES 1 and 2.
The server system 110 of FIGURE 4 includes a user database 114, a virtual real estate image generator 117, a catalog database 118, atrial area 128, a shopping cart 140, and a sales database 120. The image generator 117 provides data for visually displaying a three-dimensional model of a house, building, room, automobile, landscaping, or the like. The catalog database 118 provides data for generating three-dimensional models of goods and services for sale such as furniture, drapery, tiles, and landscaping options. The three-dimensional models of the goods and services from the catalog database 118 can be inserted into the three-dimensional model from the image generator 117 to provide a composite three-dimensional image within the trial area 128. For instance, furniture models from catalog database 118 can be inserted to a room provided by image generator 117 so a user can visually see how the furniture will look in the room.
The goods and services offered from the catalog database 118 can be selected by the user within the trial area 128, and put into the user's shopping basket 140. The goods and services within the shopping basket 140 can then be. purchased by the user, whereupon the sales database 120 provides store notification, inventory management, shipping address, and other like order processing information.
In an embodiment real estate data can be read from computer-aided design and/or manufacturing drawings providing structural details, wiring and duct diagrams, floor plans, building owner, manager information, neighborhood information, local information like public transportation and restaurants. The data can then be used to provide a user with information and for automated generation of three-dimensional models for storage and transmittal by the server system 110.
In an embodiment shown in FIGURE 5, the present invention includes a system 200 wherein owners of business or merchant sites can have there own servers 250, and use both a shared or leased part of the display server system 210 along with their own closed part of the three-dimensional models storage for demonstrating three-dimensional models of assets, goods, and services. All three-dimensional models are preferably stored on the leased part of the display server system 210. In an embodiment, the display
server system 210 also supports tracking of user actions such as what the user has tried and when, and what the user has bought and the amount paid. Optionally, the display server system 210 supports saving user preferences like body parameters. It is desired that all user data be stored in the users' profiles storage on the leased part of the display server system 210.
The display server system 210 preferably allows merchant site owners to access their leased part of three-dimensional models storage and users' profiles storage through administration tools. Moreover, the display server system 210 provides an application program interface (API) that allows merchant site owners to build customized interfaces based on the leased part of the system.
As stated previously, it is desired that the display server system 210 provide a trial area by means of a three-dimensional visualization component 252 maintained on a web server 254. The display server system 210 further includes a users/models data source 256, model storage component 213, and user profiles storage 214. The three- dimension visualization component 252 includes client side software (either Java applet accompanied by controlling Java applet). Generally, the three-dimensional visualization component 252 only shows models that it receives from the model data source.
The users/models data source component 256 includes software installed on the display server system 210 that accepts requests for data from the three-dimensional visualization component 252 and, in response thereto, sends specific user and three- dimensional model data. Preferably, models are taken from the models storage component 213 and user data is taken from user profiles storage 214 by the user/models data source component 256.
•- The models storage component 213 preferably includes a database for storage of all three-dimensional models. It is also desired that the models storage component 213 include some libraries that provide an API for models storage operation to edit the content of the models storage component (add/remove model and edit model data). Likewise, the users profiles storage component 214 preferably includes a user's
parameters and history accompanied by some libraries that provide an API for users profiles storage operation (add/remove user profile and edit user profile data).
Preferably, an application service provider can be used to create three- dimensional images for any business and e-commerce for simulating actual shopping, designing or procuring "experiences." These tools can be an integral part, i.e., a kernel or an infrastructure component, of a website for any bricks-and-mortar business as well as business-to-business and business-to-consumers e-commerce. These tools can be licensed to manufacturers, retailers and consumers in a variety of industries such as, for example, clothing and fashion, commercial and residential real estate, home improvement, interior decoration, furniture, landscaping, automobiles, industrial design as well as hair care, make-up and many others.
The above described systems make shopping more fun, exciting, convenient and efficient. Visitors to sites who use the services can, for instance, decorate homes, model clothes, shoes, accessories as well as make-up and hairstyles. These sites can also offer convenience in shopping and allow women and men to fantasize about their new looks.
In an embodiment, the system licensor may or may not sell any physical goods. Moreover, the licensor can bring customers to marketing partners such as real estate companies, department stores, home improvement stores, automobile manufactures and dealers, salons and speciality shops. Further, the system licensor can target industrial applications as well such as, for example, a car designing and parts supplier company can use the web-based tools for its business customers.
In an embodiment, the system licensor can license use of the system on a per usage basis. The system licensor can assist partners in attracting customers to their sites by offering free tools for a variety of three-dimensional design applications. Further, by tracking the usage on the site, the system licensor can assist customers in marketing, inventory management and purchasing decisions. The system licensor can also, for instance, conduct market research and consulting for the retail, apparel, fashion, and personal care industries that can help vendors make inventory management and
purchasing decisions. The system licensor can also share in the revenues generated for the licensee from the use of these tools.
Preferably, the system licensor makes peoples' lives simpler, while also assisting bricks-and-mortar businesses and manufacturers in the business-to-business (B2B) space to work more efficiently. On the B2B side, the system licensor can assist in industrial design and procurement phases for a supplier and the end user. On the business-to- consumer (B2C) side, the system licensor can assist customers on an e-commerce site in designing their own images and products in three-dimension. The system licensor can also cyber-educate and entertain visitors and convert them into a community and into buyers for the service provider's marketing alliances' products and services. As will be appreciated by those having skill in the art, the web-based three-dimensional technology described herein is applicable to a number of industries such as, for example, automobile design, home improvement and furnishing, real estate, fashion and makeover hair salon and more. Preferably, the system licensor embeds tools as an "engine" within a licensee's site for design as well as e-commerce. The site can have animated pictures of self- created models sporting different looks such as hair, clothes, shoes, and accessories. Visitors can create a model of their own homes as well as of themselves from their own pictures and/or based on their look and measurements. As indicated previously, the system licensor can assist licensees in building applications using three-dimensional design tools. For example, the system licensor can help a department store by providing a site having different departments ~ Apparel, Hair, Makeup, Accessories, etc. Each department or "floor" can have sub-departments and "trial rooms," sales, and make-up counters. For example, within apparel, the sub- categories can be work clothes, evening wear, wedding dresses, and prom dresses. For hair salon, the sub-categories can be every day style, glamour look and special occasion look, and within each sub-category can be short, medium and long hair with different colors.
Using the licensed system, customers can take a dress from one department and then try it on with different hair, make up, accessories, etc. Once a customer likes a certain apparel or style, the customer can be directly linked to the licensees' sites to purchase it or have it made. The system licensor can also arrange for custom fitting based on the clients' exact measurements.
On the industrial application side, a car seat manufacturer or a home furniture maker can design new parts and items and work with the end manufacturer or a furniture store or a homeowner looking for home furnishings.
In an embodiment tfie server system can also provide fashion tips sessions and buyers guide. For instance, live broadcast of fashion shows or a virtual fashion consultant who can recommend styles and fashions. The server system can further provide for chat/talk sessions. For example, after certain fashion shows or shows like the Oscars, people can come chat on the server system about movie stars' dresses and looks. And also vote on the best-dressed, and the like, and buy the products from the site. The results of the votes can be stored on the server system and used for pre-ordering, focus studies, inventory management, and the like.
The system can also, using the database, e-mail and suggest people try new season's fashions, automobiles, etc. Having the data on personal information, i.e., wedding dates, birthdays, anniversaries, proms, etc., allows the server system to recommend different looks and help consumers in shopping.
As described in detail further herein, interactive three-dimensional visualization for human body and clothing models is provided on the web by parameterization of an avatar. This allows a user to enter his or her body measurements and, as a result, see a proper visualization of his or her body via an avatar. Moreover, three-dimensional visualization of the avatar and clothing is provided that changes its properties based on changes of body parameters.
Preferably, multi-parametric morphing is used for parameterization of three- dimensional models. As such, the geometry of each three-dimensional model depends
on a set of parameters wherein changes of the parameters affects the look of the three- dimensional model. These parameters can include height, waist size, chest size, and the like.
Preferably, the system uses polygon or mesh models for providing a three- dimensional visualization. However, as will be appreciated by those having skill in the art, the system can be readily adopted for other types of three-dimensional models. For example, three-dimensional models created with Non-Uniform Rational B-Spline,
(NURBS), splines surfaces.
In general, the models provide geometric formulas to generate three-dimensional images of objects. Desirably, the formulas are simple to calculate, such as being linear, so the three-dimensional images can be generated quickly. The formulas are also interrelated so that changing the parameters of one formula results in changes in the parameters of other formulas. Thus, parameter changes can be determined by using a conventional matrix type solving method. And particularly, wherein the parameters are limited to either a value of zero or one for simplicity in solving the matrix.
Preferably, each polygonal or mesh model consists of a number of vertices that define the form of the model. Stated another way, each mesh model has a number of vertices wherein the coordinates of these vertices depend on a plurality of parameters values. Thus, the position of the vertex in space can be described by the following formula:
^ = V? + f P P2, - - - , P») (360)
Here, v, is a vector which begins at point (0,0,0) , and ends at (xι,yt,Zi) ,
where {Xi,yt,Zi) are coordinates of the i-th vertex, vt is avector corresponding to the vertex in the initial state (i.e., all parameters as value 0), and [ pi, pi, ... , pn) is a set of parameters.
The function f within formula 360 defines the morphing properties. Preferably,
the function ft is relatively simple so the coordinates of the vertices within formula 360 can quickly be calculated. As such, the morphing properties can be defined by the following formula: n f, = ∑ %& (362)
In Formula 362, xt J are vector constant. Formula 362 is desired because it is a simple linear function that can be calculated quickly. Formula 362 also has a minimal number of variables that must be stored with vertices for a parameterized three- dimensional model. In particular, for each vertex, the value of n vector constants is stored, where n is a number of parameters.
Thus, using formula 362, formula 360 for the vertices in the parameterized model becomes:
V, = v.° + Σ %P> (364)
After the three-dimensional model has been created, the model is then parameterized. This step includes a calibration process wherein the constants in the morphing formula are calculated. For instance, if formula 364 is used for the morphing formula, then the values of constants xt J should be determined for each vertex.
Accordingly, to determine the values, n variants of the three-dimensional model are needed, where n is a number of parameters, since each variant of the three-dimensional model corresponds to one set of parameters.
As will be appreciated by those skilled in the art, because all sets of parameters for all variants are lineal independent, there is needed n + 1 variants of the three-
dimensional model: one basic model and n additional variants. The additional variants of the three-dimensional models are referred to herein as calibration models.
To determine the values of constants xj the following system of linear equations can be solved:
Here v;. is the i-th vertex of the k-th variant of the three-dimensional model and
(Λ SA ' - ' JA ) correspond to the set of parameters.
For simplicity, the internal values of the parameters are restricted so they are with the interval [0; 1]. Further, to simplify the calculations, it is desired that calibration models be used corresponding to sets of parameters where only one parameter has a value of 1 (maximum value), while the other parameter has a value of 0 (minimum value). This way if:
then the system of linear equations 366 becomes:
And the values of parameters within the set of linear equations 370 the canbe determined by:
It is recognized that formula 362 for defining the morphing properties imposes several restrictions when used within the above described application of multi-parametric morphing for parameterization of a three-dimensional human body model. Formula 362 is suitable for parameters that, in part, are independent. That is, formula 362 is suitable if some parameters such as bust size, hip size, and height can be treated as independent. Thus, changing the bust size does not affect vertices that belong to the hips, changing the size of the hips does not affect the vertices belonging to the bust, and changing the height affects only the vertical coordinate of the vertices. Accordingly, while not fully correct
for human body, formula 362 is appropriate for general three-dimensional simulation of the human body.
If, however, a more precise model of the human body is required such that no parameters are treated as independent, but instead all parameters are taken into account, then it is preferred that formula 362 not be used. Instead, it is desired that the morphing properties be defined by:
In formula 374, b, ' are vector constants. Formula 374 can be used for defining the morphing properties in formula 360, whereby the full formula for vertices becomes:
Formula 376 requires more calibration three-dimensional models than formula 364. Moreover, formula 376 has more constants than formula 364, so the size of additional data for each vertex is increased. However, formula 376 provides more powerful parameterization of three-dimensional models because dependent parameters are used.
As stated above, the virtual dressing room contains both a three-dimensional model of an avatar wearing selected clothing. Preferably, when the avatar changes clothing it is desired that the models for both the avatar and the clothing change synchronously. An approach to gain this effect consists of designing the clothing model in this way that it fits the basic model of the avatar and applies the exactly same parameterization as the avatar model. This can be accomplished by creation of calibration models for clothing that are similar to the avatar model. However, this is not
convenient since it requires the creation of a lot of models for each article of clothing to be displayed.
A preferred method to overcome the above problem is calibration of three- dimensional models using an already parameterized model referred to herein as a template model. In this method, both the template model and the model to be parameterized, hereinafter the target model, use the same morphing formula 364. However, since these models have different sets of vertices, the morphing formula constants must be recalculated for each vertex of the target model based on the morphing formula constants in template model. The relationship between these constants is defined by: m < = Σ 2 = 0 wl>% (378)
In formula 378, XJ, are constants of the target model, are constants of the
template model, m is the number of vertices in the template model, and w are weights
that determine how the i-th vertex of the template model affects the -th vertex of the target model.
The weights wl, within formula can be defined by:
I I"
,*''3
W„ = (380)
1 -Γ-I m 1 = 0 7/3
In formula 380, l is the distance between the -th vertex of the template model
and i' is the vertex of the target model defined by:
Where v , is the vector for the -th vertex of the target model and Vj is the
vector for the /-th vertex of the template model.
To provide suitable results, it is desired that not all clothing models be calibrated using an avatar model as a template model. Avatar models can be used as template models for types of clothing that fit closely to the body such as various pants, short skirts, shirts, and the like. However, other types of loose fitting clothing such as dresses and coats should have models created for them without the use of a template. Once these models for loose fitting clothing are created, they can be used as templates to create additional models.
As discussed previously, the present invention has been described in the context of modeling clothing on a human form. As one skilled in the art will appreciate the concept of developing a single avatar, or image of an object in three-dimensions using the methodology defined herein can also be applied to other objects such as furniture substituting for the human form, upon which other three-dimensional objects also developed using the methodology of the present invention are incorporated, e.g., pillows, blankets and rooms, buildings, etc. The methodology of the present invention may also be used to create a three- dimensional image of a new product design which is under devolvement. The methodology of the present invention will thus facilitate the visualization of such product under development between two remote locations using the Web, or similar communication structure, as the linkage between two remote server systems. By the appropriate duplication of system configurations this product can be manipulated at either server system, with the alterations being visualized at the other server.
While specific embodiments have been illustrated and described, numerous modifications come to mind without significantly departing from the spirit of the invention, and the scope of protection is only limited by the scope of the accompanying Claims.