Online try-on method and device

By pre-storing the coordinate information of the center of gravity and generating the target clone, the problem of large amount of calculation during the clothing trial-on process is solved, and a fast and accurate clothing trial-on simulation is achieved, especially considering the deformation of auxiliary materials, which improves the trial-on efficiency.

CN114511369BActive Publication Date: 2025-08-05CLO VIRTUAL FASHION INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202111316740.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-11-16
Filing Date
2021-11-08
Publication Date
2025-08-05
Estimated Expiration
2041-11-08

AI Technical Summary

Technical Problem

The prior art is difficult to quickly and efficiently simulate the trial-on process of clothing on different body sizes, especially considering the impact of auxiliary materials on clothing deformation, resulting in large calculations and high resource consumption.

Method used

By pre-storing and calling the center of gravity coordinate information, a target clone with the same grid topology is generated, and the center of gravity coordinate information is used to determine whether the clothing is successfully tried on, reducing the amount of calculation, especially when the clothing contains auxiliary materials, deformation is displayed through the auxiliary center of gravity coordinate information.

Benefits of technology

It realizes rapid and low-computational simulation of clothing trial-on-work on different body sizes, especially considering the deformation of auxiliary materials, which improves the efficiency and accuracy of the trial-on-work process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114511369B_ABST
    Figure CN114511369B_ABST
Patent Text Reader

Abstract

According to an embodiment of the online try-on method and apparatus, the method receives input from a user of the user's body size and a target size of clothing that fits the user's body; obtains center of gravity coordinate information corresponding to the result of wearing the clothing of the target size on a reference avatar; generates a target avatar having a mesh with the same topology as the mesh topology of the reference avatar and corresponding to the user's body size; and determines whether the clothing of the target size is successfully tried on the target avatar by applying the center of gravity coordinate information to the target avatar.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The following embodiments relate to an online fitting method and apparatus, which simulates putting a garment on a clone, thereby determining whether the garment has been successfully fitted on the user's body. Background Art

[0002] Although garments appear three-dimensional when worn, they can be considered two-dimensional objects because they are made of fabric. Fabric, the material used for clothing, is relatively flexible, so it can appear differently depending on the wearer. Furthermore, fabrics have various physical properties, such as strength, elongation, and shrinkage. Due to the differences in the physical properties of each fabric, even garments of the same design can appear and feel different when worn.

[0003] For example, the process of confirming whether a garment has been tried on by putting it on an avatar or the like may involve a large amount of calculation and a large amount of data, and therefore, it is not easy to quickly check this process on a computer with limited functionality and resources. Summary of the Invention

[0004] Technical problems to be solved

[0005] According to one embodiment, by pre-storing and calling the center of gravity coordinate information calculated based on the results of pre-wearing clothes of different sizes on three-dimensional reference clones with different body sizes on each body part, the wearing results of clothes of various sizes can be provided to the user more quickly.

[0006] According to an embodiment, a target avatar having a body size similar to that of a reference avatar sampled at unit intervals for each clothing size can be generated more quickly with less computational effort.

[0007] According to one embodiment, the amount of calculation used to display the result of trying on the clothing with a target size selected by the user on the user's body size can be reduced by applying the center of gravity coordinate information calculated based on the result of wearing the clothing with a target size selected by the user on a target avatar with a body size similar to the user's body size to the target avatar corresponding to the user's body size.

[0008] According to an embodiment, when clothing includes auxiliary materials, deformation of the clothing caused by the auxiliary materials can be easily displayed by applying, to the target avatar, barycenter coordinate information corresponding to the result of attaching the auxiliary materials to the clothing.

[0009] Technical methods to solve problems

[0010] According to one embodiment, an online try-on method includes the following steps: receiving input of the user's body size and a target size of clothing that fits the user's body from a user; obtaining barycentric coordinate information (barycentric coordinate), wherein the barycentric coordinate information corresponds to the result of wearing the clothing of the target size on a reference avatar; generating a target avatar (target avatar) having a mesh having the same topology as the mesh topology of the reference avatar and corresponding to the user's body size; and determining whether the clothing of the target size is successfully tried on the target avatar by applying the barycentric coordinate information to the target avatar.

[0011] The barycentric coordinate information may include at least one of (i) a parameter representing a 3D position transformation relationship between a first polygon and a second polygon in a clothing mesh suitable for the reference avatar and (ii) an index of the first polygon in the mesh of the reference avatar.

[0012] The parameters may include at least one of (i) coefficients for calculating the barycentric coordinate information, (ii) an offset between the first polygon and the second polygon, and (iii) identification information of the grid of the reference avatar corresponding to the barycentric coordinate information.

[0013] The step of determining whether the clothing of the target size is successfully tried on may include the following steps: extracting the index of the first polygon in the mesh of the reference avatar and multiple parameters representing the points of the clothing that match the first polygon from the centroid coordinate information; identifying the target polygon corresponding to the first polygon from the mesh of the target avatar based on the mesh topology of the target avatar and the index of the first polygon; and determining the points of the clothing by applying the multiple parameters to the target polygon, wherein the determined points of the clothing may correspond to the result of wearing the clothing on the target avatar.

[0014] The step of determining whether the clothing of the target size is successfully tried on may include the following steps: using the correspondence between the index of the first polygon and the index of the target avatar, identifying the target polygon of the mesh of the target avatar to map to the first polygon of the mesh of the reference avatar; and trying on the clothing on the target avatar by applying the centroid coordinate information to each point of the target polygon mapped to the first polygon.

[0015] When the clothing includes supplemental material, the step of determining whether to try it on may include the following steps: obtaining supplementary center of gravity coordinate information corresponding to the result of attaching the supplementary material to the clothing; and applying the supplementary center of gravity coordinate information to the clothing worn on the target clone.

[0016] When the auxiliary material is a rigid body, the step of applying the auxiliary center of gravity coordinate information to the clothing may include the following steps: applying the auxiliary center of gravity coordinate information and the 3D orientation of the auxiliary material to any point of the grid of the auxiliary material, and applying the auxiliary center of gravity coordinate information to the clothing worn on the target clone.

[0017] The step of obtaining the barycenter coordinate information may include the following steps: receiving the barycenter coordinate information from a server or a database.

[0018] The online fitting method further includes the following steps: storing fitting results of clothing of different sizes as pre-stored center of gravity coordinate information for reference to avatars of different body sizes, wherein the center of gravity coordinate information may correspond to the result of fitting clothing of the target size on a reference avatar obtained from the pre-stored center of gravity coordinate information.

[0019] The different body sizes may be obtained by sampling the garments of different sizes at unit intervals.

[0020] The online fitting method may further include the following step: when it is determined that the garment of the target size has not been successfully fitted on the target avatar, displaying a message informing of the fitting failure.

[0021] The step of determining whether the clothing of the target size has been successfully tried on may include the following steps: determining whether there is an intersection between the target polygon of the mesh of the target avatar and the polygon of the mesh of the clothing tried on the reference avatar; and determining whether the clothing of the target size has been successfully tried on based on the existence of the intersection.

[0022] The step of determining whether the clothing of the target size is successfully tried on may include the following steps: calculating a first distance between the grid of the reference avatar trying on the clothing and a point on the grid of the clothing; calculating a second distance between the grid of the clothing and a point on the grid of the target avatar; and determining whether the clothing of the target size is successfully tried on based on the difference between the first distance and the corresponding second distance.

[0023] The step of calculating the first distance may include the following steps: obtaining a point of a polygon on the mesh of the clothing that is in contact with the mesh of the reference clone as a point on the mesh of the clothing; and determining the distance between the centroid coordinates of the polygon of the mesh of the reference clone that is closest to the polygon point in the mesh of the obtained clothing as the first distance.

[0024] The step of calculating the second distance may include the following steps: obtaining a point of a polygon on the mesh of the clothing that is in contact with the target polygon of the mesh of the target clone as a point on the mesh of the clothing; and determining the distance between the centroid coordinates of the polygon of the reference clone closest to the obtained point as the second distance.

[0025] The step of determining whether the garment of the target size is successfully tried on based on the difference may include the following steps: determining a maximum value of the difference between the first distance and the corresponding second distance; and determining whether the try-on is successful based on whether the maximum value is greater than a threshold.

[0026] The step of determining whether the garment of the target size is successfully tried on based on the difference between the first distance and the corresponding second distance may include the following steps: determining an average value of the difference between the first distance and the corresponding second distance; and determining whether the try-on is successful based on whether the average value is greater than a second threshold value.

[0027] The online fitting method may further include the step of visualizing and guiding candidate sizes corresponding to the garment based on the user's body size.

[0028] According to one embodiment, in a non-transitory computer-readable recording medium storing instructions executed by a processor, the processor receives input of the user's body size and a target size of clothing that fits the user's body from a user, and obtains center of gravity coordinate information, the center of gravity coordinate information corresponding to the result of wearing the clothing of the target size on a reference avatar, and generates a target avatar having a mesh with the same topology as the mesh topology of the reference avatar and corresponding to the user's body size, and determines whether the clothing of the target size is successfully tried on the target avatar by applying the center of gravity coordinate information to the target avatar.

[0029] According to one embodiment, an online try-on device includes: a user interface that receives input of a user's body size and a target size of clothing to be tried on by the user; a communication interface that obtains center of gravity coordinate information, wherein the center of gravity coordinate information corresponds to the result of trying on the clothing of the target size on a reference clone; a processor that generates a target clone having a grid having the same topology as the grid topology of the reference clone and corresponding to the body size of the user, and determines whether the clothing of the target size is successfully tried on the target clone by applying the center of gravity coordinate information to the target clone.

[0030] Effects of the Invention

[0031] According to one aspect, the wearing results of clothing of various sizes can be provided to the user more quickly by pre-storing and calling the center of gravity coordinate information calculated based on the results of pre-wearing clothing of different sizes on a three-dimensional reference clone with different body sizes on each body part.

[0032] According to one aspect, a target avatar having a body size similar to that of a reference avatar sampled at unit intervals for each clothing size can be generated more quickly with less computational effort.

[0033] According to one side, the amount of calculation for displaying the result of trying on the clothing with a target size selected by the user can be reduced by applying the center of gravity coordinate information calculated based on the result of wearing the clothing with a target size selected by the user on a target clone with a body size similar to the user's body size to the target clone corresponding to the user's body size.

[0034] According to one aspect, when clothing includes auxiliary materials, deformation of the clothing caused by the auxiliary materials can be easily displayed by applying, to the target avatar, barycenter coordinate information corresponding to the result of attaching the auxiliary materials to the clothing. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Figure 1 FIG. 4 is a flow chart showing an online try-on method according to an embodiment.

[0036] Figure 2 A diagram illustrating barycenter coordinate information obtained by pre-wearing clothing of different sizes on a reference clone according to an embodiment.

[0037] FIG. 3 is a diagram illustrating a process of performing a try-on simulation by changing the size of an avatar sampled at unit intervals for clothing of that size, according to an embodiment.

[0038] Figure 4 FIG. 1 is a flow chart showing a method for putting clothing on a target avatar according to one embodiment.

[0039] Figure 5 1 is a diagram illustrating a method of putting clothing on a target avatar according to an embodiment.

[0040] Figure 6 Flowchart showing a method for putting a garment on a target avatar when the garment includes auxiliary materials according to one embodiment.

[0041] 7a to 7c are flow charts illustrating a method for detecting whether a wearing operation has failed according to an embodiment.

[0042] Figure 8 1 is a diagram illustrating a method for detecting whether a wearing failure occurs according to an embodiment.

[0043] Figure 9 1 is a diagram illustrating a method for guiding an online fitting apparatus by visualizing a range of candidate sizes according to an embodiment.

[0044] Figure 10 FIG. 4 is a block diagram showing an online try-on device according to an embodiment.

[0045] Main component symbols

[0046] 1000: Online fitting device

[0047] 1005: Communication bus

[0048] 1010: User Interface

[0049] 1030: Communication interface

[0050] 1050: Processor

[0051] 1090: Display

[0052] 1070: Output device DETAILED DESCRIPTION

[0053] Hereinafter, the embodiments will be described in detail with reference to the accompanying drawings. However, various modifications can be made to the embodiments, and the scope of the present invention is not limited or defined by the embodiments. All variations, equivalents, or substitutes for the embodiments are included within the scope of the rights.

[0054] The terms used in the embodiments are only used to illustrate specific embodiments and are not intended to limit the embodiments. Unless otherwise specified in the content, singular expressions include plural expressions. In this specification, terms such as "including" or "having" are used to express the presence of features, numbers, steps, operations, constituent elements, accessories, or combinations thereof described in the specification, and do not exclude the presence of one or more other features, numbers, steps, operations, constituent elements, accessories, or combinations thereof, or additional functions.

[0055] Unless otherwise defined, all terms used herein, including technical or scientific terms, have the ordinary meanings understood by those skilled in the art. Commonly used terms that are the same as dictionary definitions should be understood to have meanings consistent with the general context of the relevant technology and should not be overly idealized or interpreted as formal unless explicitly mentioned in this application.

[0056] Furthermore, in the description with reference to the accompanying drawings, identical components are given identical reference numerals regardless of the reference numerals, and repeated descriptions thereof are omitted. In the description of the embodiments, if it is determined that a detailed description of a related known technology would unnecessarily obscure the embodiments, the detailed description thereof will be omitted.

[0057] In addition, in the description of the components of the embodiments, terms such as first, second, A, B, (a), (B), etc. may be used. These terms are only used to distinguish one constituent element from another constituent element, and the nature, sequence, or order of the elements is not limited by these terms. When a constituent element is described as being "connected," "coupled," or "in contact with" another constituent element, it should be understood that the constituent element can be directly connected or attached to the other constituent element, or it can be understood that the other constituent element is "connected," "coupled," or "in contact with" each constituent element.

[0058] For the constituent elements and elements with common functions included in a certain embodiment, the same names can be used to describe in another embodiment. Unless otherwise mentioned, the description of a certain embodiment can be applied to other embodiments, and its detailed description will be omitted within the scope of repetition.

[0059] In this specification, a "reference avatar" may correspond to a virtual 3D object with different body dimensions for each body part. For example, the reference avatar may correspond to body dimensions sampled at unit intervals for each size of clothing in sizes S (small), M (medium), and L (large). In this case, the unit interval may be, for example, 1 cm, 2.5 cm, or 5 cm relative to height or waist circumference. Furthermore, the unit interval may be, for example, 2.5 kg, 5 kg, or 10 kg relative to weight.

[0060] The "target avatar" may correspond to a virtual 3D object having the same mesh topology as the reference avatar and wearing clothing corresponding to the user's body size. The target avatar may have at least one body part having a similar size to the reference avatar. The body type of the reference avatar and / or the body type of the target avatar may be classified as features appearing in the physique according to height, weight, waist circumference, arm thickness and / or leg thickness, for example, may include thin body type, standard body type, upper body fat body type, lower body fat body type, upper and lower body fat body type, and thin and fat body type, etc. The body type of the target avatar may be determined based on, for example, body size input from the user and the body size of an average person according to age and / or gender.

[0061] For example, the reference avatar and / or the target avatar can be modeled as follows Figure 5 A polygon mesh is formed by the same unit shapes, such as the triangles shown. In some cases, the unit shapes may be three-dimensional polyhedrons (e.g., tetrahedrons). Below, for ease of description, it is assumed that the unit shapes included in the mesh are polygons, particularly triangles, but the present invention is not limited to this.

[0062] Hereinafter, the mesh forming the reference avatar will be referred to as the "first mesh," and the polygons included in the first mesh will be referred to as "first polygons." In this context, the index indicating the first polygon may be referred to as the "first polygon index." The first mesh may be composed of multiple first polygons, and the index of a first polygon can uniquely identify the corresponding first polygon among the multiple first polygons.

[0063] Furthermore, the mesh forming the garment worn by the reference avatar is referred to as the "second mesh," and the polygons included in the second mesh are referred to as "second polygons." An index indicating a second polygon may be referred to as a "second polygon index." The second mesh may be composed of multiple second polygons, and the index of a second polygon may uniquely identify the corresponding second polygon among the multiple second polygons.

[0064] Furthermore, the mesh forming the target clone is referred to as the "third mesh," and the triangle included in the third mesh is referred to as the "target polygon." The index indicating the target polygon may be referred to as the "target polygon index." The third mesh may be composed of multiple third polygons, and the index of a third polygon may uniquely identify the corresponding third polygon among the multiple third polygons.

[0065] According to an embodiment, the mesh can be modeled in various ways. For example, the vertices of the polygons included in the mesh can be point masses with mass, and the edges of the polygons can be represented as springs with elasticity connecting their point masses. Therefore, for example, a 3D model of clothing according to an embodiment can be modeled by a mass-spring model. Depending on the material properties of the fabric used, the spring can have corresponding resistance values (resist) for example for stretching, shearing, and bending. Alternatively, the mesh can be modeled as a strain model. The polygons in the mesh can be modeled as triangles, or as polygons with more than four sides. In some cases, when it is necessary to model a 3D volume, the mesh can be modeled using a 3D polyhedron.

[0066] For example, the vertices of the polygons included in the mesh can move in response to external forces such as gravity, as well as internal forces such as stretch, shear, and bending. By calculating the external and internal forces to determine the force applied to each vertex, the displacement speed and motion of each vertex can be determined. The movement of the garment can be simulated by the movement of the polygon vertices at each time step. For example, when a garment formed from a polygonal mesh is worn on a 3D avatar, a 3D virtual garment that appears natural based on the laws of physics can be created. The vertices of the polygons included in the mesh can move in response to external forces such as gravity, as well as internal forces such as stretch, shear, and bending. By calculating the external and internal forces to determine the force applied to each vertex, the displacement and motion speed of each vertex can be obtained. Furthermore, the movement of the virtual garment can be simulated by the movement of the polygon vertices of the mesh at each time step. When a 2D pattern piece formed from the polygonal mesh is worn on a 3D avatar, a 3D model of the garment that appears natural based on the laws of physics can be created. Hereinafter, the vertices of the polygons constituting the mesh may be simply referred to as "points".

[0067] When clothing is worn or tried on the reference avatar and the target avatar, the volume or shape of the reference avatar and the target avatar may change, but for example, the connection relationship of the meshes forming each avatar and / or the number of polygons forming the meshes may be the same.

[0068] Figure 1 FIG. 1 is a flow chart showing an online fitting method according to an embodiment. Figure 1, it can be shown that the result of the online fitting apparatus according to one embodiment fitting the clothing selected by the user on the target avatar corresponding to the body size of the user through the process of steps 110 to 150 described later.

[0069] In step 110, the online fitting device receives input of the user's body size and the target size (target size) of the clothing that the user wants to wear from the user. In this specification, the terms "draping" and "fitting" can be understood as a process of simulating the placement of a 3D garment of the target size selected by the user on a 3D clone generated by a computer program. In the following, since the terms "draping" and "fitting" mean putting on clothing on a clone, they can be interpreted as having the same meaning. The online fitting device can receive input of the user's body size, the clothing selected by the user, and / or the size ("target size") of the clothing selected by the user through, for example, a touch display or a user interface displayed on the display. According to an embodiment, when the user's body size is pre-stored, the online fitting device can receive a selection of the user-selected clothing A and the size ("target size") of clothing A from the user.

[0070] In step 120 , the online fitting device obtains barycentric coordinate information corresponding to the result of fitting the target-sized garment onto a reference avatar, wherein the reference avatar is selected based on the user's body size input in step 110 .

[0071] For example, in step 120, the online fitting device may search for results of fitting the target-sized garment onto a reference avatar with dimensions closest to the user's actual body dimensions. According to one embodiment, by fitting the target-sized garment onto a reference avatar with dimensions closest to the user's actual body dimensions, the computational effort required to obtain the results of fitting the garment onto the target avatar can be reduced. In addition to the barycentric coordinates, the barycentric coordinate information may also include information about the mesh that constitutes the target-sized garment.

[0072] For example, the barycentric coordinate information may include parameters representing the 3D position transformation relationship between a first polygon of a first mesh forming the reference avatar and a point of a second polygon of a second mesh forming clothing worn on the reference avatar, and at least one of an index of the first polygon. In this case, the parameters include coefficients used to calculate the barycentric coordinate information, an offset between the points of the first polygon and the second polygon, and identification information (e.g., ID) of the second mesh corresponding to the corresponding barycentric coordinate information. Here, the identification information of the second mesh may correspond to information for identifying which second mesh the barycentric coordinate information refers to.

[0073] Alternatively, according to an embodiment, when the auxiliary material is rigid, the parameter may further include a three-dimensional orientation of the auxiliary material. The 3D orientation of the auxiliary material may be, for example, in the form of a 3x3 matrix, but is not limited thereto.

[0074] For example, the online fitting device can generate and pre-store the center of gravity coordinate information corresponding to the results of trying on clothing of different sizes on reference avatars of different sizes. In this case, the body size can correspond to the body size of the reference avatar sampled at unit intervals for each size of clothing.

[0075] In step 120, the online fitting device can retrieve the center of gravity coordinate information from a server or a database. Figure 2 The barycenter coordinate information obtained in step 120 will be described in more detail. In addition, a method for sampling the body size of an avatar at a unit interval according to an embodiment will be described in detail with reference to FIG. 3 a below.

[0076] In step 130, the online fitting device generates a target avatar with a mesh that has the same mesh topology as the reference avatar and corresponds to the user's body dimensions. Because the target and reference avatars share the same mesh topology, polygon indices can be used to determine the correspondence between polygons in the reference avatar's mesh and polygons in the target avatar's mesh. In other words, when the indices of the corresponding polygons match, a polygon in the reference avatar's mesh can correspond to another polygon in the target avatar's mesh. The online fitting device can generate the target avatar based on the body dimensions input by the user.

[0077] According to an embodiment, in step 130, for example, the online fitting apparatus may search for a reference avatar having dimensions closest to the user's body dimensions, and correct the difference between the searched reference avatar and the user's body dimensions, thereby generating a target avatar. For example, the online fitting apparatus may use the correspondence between the reference avatar and the polygons constituting the mesh of each target avatar to map the index of the target polygon of the target avatar to the index of the first polygon of the reference avatar. The online fitting apparatus may generate the target avatar by correcting the value corresponding to the difference between the mapped indices (e.g., a coefficient and / or an offset between the points of each polygon).

[0078] In step 140 , the online fitting apparatus applies the center of gravity coordinate information obtained in step 120 to the target avatar generated in step 130 , thereby determining whether the clothing of the target size that the user wants to wear is successfully tried on.

[0079] For example, the online fitting device identifies the target polygon mapped to the first polygon by the correspondence between the index of the first polygon of the first mesh constituting the reference avatar and the index of the target polygon of the third mesh constituting the target avatar. The online fitting device can wear the clothing on the target avatar by applying the barycentric coordinate information to the point of the target polygon mapped to the first polygon. Figure 4 The process of the online fitting device trying on the clothes that the user wants to wear on the target avatar is described in more detail.

[0080] In step 140, for example, the online fitting device may determine whether there is an intersection between the target polygon of the third mesh constituting the target avatar and the second mesh constituting the second mesh constituting the garment being fitted to the reference avatar. If there is an intersection between the target polygon of the third mesh and the second polygon of the second mesh, the online fitting device may display a message indicating that the fitting failed. For example, if the deformation of the second mesh exceeds a reference value, the online fitting device may display a message indicating that the fitting failed.

[0081] For example, the online fitting device may determine whether the fitting has failed based on the difference between the number of intersections between the target polygon of the third mesh and the second polygon of the second mesh and a preset reference number. For example, when the number of intersections is greater than or equal to a preset reference number (e.g., 2), the online fitting device may determine that the fitting has failed. Conversely, when the number of intersections is less than the preset reference number, the online fitting device may determine that the fitting has succeeded.

[0082] In step 150 , the online fitting device displays the result of fitting the clothing that the user wants to wear onto the target avatar.

[0083] Alternatively, in step 150, the online fitting device may determine whether the fitting fails based on the result of fitting the garment on the target avatar in step 140, and when it is determined that the fitting fails, a message notifying the fitting failure may be displayed. Figure 8 The invention describes in detail a method for determining whether a fitting is failed by an online fitting device.

[0084] According to an embodiment, when the fitting is unsuccessful, the online fitting device can visualize and guide the range of candidate sizes corresponding to the clothing based on the user's body size. Here, the "range of candidate sizes" may correspond to a size range in which the corresponding clothing will not slip off or fall off the user's body when the user wears the corresponding clothing. Figure 9 A method for visualizing and guiding the candidate size range in an online fitting device is described in detail.

[0085] Figure 2 FIG2 is a diagram illustrating the coordinate information of the center of gravity obtained by pre-wearing clothes of different sizes on a reference avatar according to an embodiment. Figure 2 , illustrates a graph showing sizes of clothing corresponding to body sizes sampled at unit intervals based on average heights and average weights of users according to an embodiment.

[0086] In this case, the body sizes corresponding to the clothing sizes can be differentiated by age and gender, for example, and can be sampled at the same or different unit intervals for Asian adult males, Asian adult females, European adult males, American adult females, African boys, or African girls. In addition, the clothing sizes corresponding to the corresponding body sizes can also be set differently according to age, gender, etc.

[0087] For example, in addition to Figure 2 In addition to the height and weight shown, the online fitting device can pre-store center of gravity coordinate information corresponding to the results of wearing clothes of different sizes (for example, small (S) size, medium (M) size and large (L) size) on clones with different body sizes (for example, waist circumference, wall length, leg length, etc.).

[0088] For example, the online fitting device may pre-store a reference image of each reference avatar with various body sizes (e.g., a reference avatar with a body size of 140 cm tall and 40 kg weight, a reference avatar with a body size of 145 cm tall and 40 kg weight, a reference avatar with a body size of 150 cm tall and 40 kg weight, a reference avatar with a body size of 155 cm tall and 40 kg weight, a reference avatar with a body size of 160 cm tall and 40 kg weight, a reference avatar with a body size of 140 cm tall and 42.5 kg weight, a reference avatar with a body size of 145 cm tall and 42.5 ... The center of gravity coordinate information corresponding to the result of wearing S-sized clothing on the baseline avatar with a body size of 155cm tall and 42.5kg weight, the baseline avatar with a body size of 160cm tall and 42.5kg weight, the baseline avatar with a body size of 140cm tall and 45kg weight, the baseline avatar with a body size of 145cm tall and 45kg weight, the baseline avatar with a body size of 150cm tall and 45kg weight, the baseline avatar with a body size of 155cm tall and 45kg weight, the baseline avatar with a body size of 160cm tall and 45kg weight, etc.).

[0089] Likewise, for example, the online fitting apparatus may pre-store center-of-gravity coordinate information corresponding to the results of wearing M-sized and L-sized clothing on each reference clone having various body sizes.

[0090] For example, the online fitting apparatus may calculate and pre-store center-of-gravity coordinate information corresponding to the results of wearing clothing on reference clones having 20 different body sizes for each size.

[0091] The online fitting device simulates the wearing or fitting of clothing in the Figure 2 The path with the least deformation during the experiment (e.g., the path for the same height and weight change) for each avatar with the sampled body size shown can reduce the number of calculations required for performing a try-on simulation by changing the body size of the garment of the corresponding size. According to one embodiment, the process of performing a try-on simulation while changing the body size of the garment of the corresponding size will be described in detail with reference to Figures 3a to 3c.

[0092] For example, there may be a situation where, during a try-on simulation, the clothing slips off or falls off because the clothing of the corresponding size is too large compared to the sampled body sizes. In this case, the online try-on device can detect the situation where the clothing is loose and slides off the body, and determine the body size that fits the user's body size among the different body sizes that cause the looseness and sliding off, and can continue the try-on simulation using the found body size. For example, suppose that L-sized clothing is worn on a reference avatar with a body size of 140cm and 45kg, and the corresponding clothing slides off the reference avatar. In this case, the online try-on device can perform try-on simulations on avatars with body sizes of 165cm and 45kg, which are closest to the body size of 140Cm and 45kg and are wearing L-sized clothing. Refer to Figures 7 to Figure 8 The method of detecting whether a fitting failure occurs when the garment is slipped off by the online fitting device is described in more detail.

[0093] The process of performing a try-on simulation by an online try-on device according to an embodiment is as follows. The online try-on device can collect clothing fabric data and avatar data. In this case, the fabric data and avatar data can each include mesh data, and the mesh data can include the position, normal vector, and index of the polygons included in the mesh structure.

[0094] The online fitting device can detect the proximity between the cloths and the proximity between the cloths and the avatar. The detected proximity can be used to determine the external force to prevent collision in a later step.

[0095] The online try-on device can calculate the force and Jacobian matrix applied to the fabric. The online try-on device can calculate the force and Jacobian matrix applied to multiple polygons included in the fabric mesh. Here, the force can be divided into internal force and external force. Internal force may include forces caused by sewing or the physical properties of the cloth, such as the force of the cloth trying to shrink or the force of the cloth trying to expand. In addition, external force may include forces applied to the fabric from the outside of the fabric, such as gravity. In order to prevent collisions between cloth and cloth or between cloth and clones, the forces added in the simulation can also be classified as external forces.

[0096] The online fitting device can calculate the accelerations applied to the multiple polygons included in the fabric mesh by simultaneously considering the forces and Jacobian matrices applied to the multiple polygons. For example, the online fitting device can define the system of equations corresponding to the multiple polygons as a linear system and then solve the corresponding linear system. The online fitting device can calculate the velocity and position of the multiple polygons included in the fabric mesh based on the accelerations.

[0097] For example, in a fitting simulation, calculations are performed to prevent possible collisions by solving a linear system. However, collisions between pieces of cloth or between pieces of cloth and the avatar may still occur. The online fitting system can handle these collisions individually and transfer the positions and velocities of non-collision-free polygons to the next iteration. The online fitting system can perform a simulation of putting the garment on the avatar by repeating these iterations.

[0098] For reference, in the initial iteration, the simulation can begin with an initial arrangement where the fabric is roughly wrapped around the corresponding parts of the avatar. For example, this initial arrangement can be provided by arranging the board technology, where the paper pattern pieces that constitute the garment are arranged around each body part of the avatar. In this initial arrangement, there is no collision between the fabric and the avatar, and there is no collision between the fabrics themselves. Gravity acts as an external force on the fabric, and the contraction forces generated during sewing can also act as internal forces.

[0099] The online device may call the center of gravity coordinate information corresponding to the result of wearing the clothing of the target size on the reference clone having the body size closest to the user's body size input in step 110 above.

[0100] FIG. 3 is a diagram illustrating a process of performing a try-on simulation by changing the size of an avatar sampled at unit intervals for clothing of that size, according to an embodiment.

[0101] Referring to Figure 3a, a diagram illustrating a method for determining the size of an avatar that can be used when wearing clothing of a corresponding size. In one embodiment, the avatar's size can be understood as including the avatar's body size or the avatar's body size represented by a combination of height and weight. For ease of description, the following description uses the example of an online fitting device performing the process of Figure 3, but the present invention is not limited thereto. The process of Figure 3 can also be performed by a server.

[0102] For example, the online fitting device can obtain information such as a height offset, a weight offset, and a minimum weight (e.g., 40 kg) from the average body dimensions determined based on the user's age and gender. Based on this information determined from the user's average body dimensions, the online fitting device can set a sampleable area corresponding to the dimensions of the avatar that would be suitable for clothing of the corresponding size. In one embodiment, the height offset, weight offset, and / or minimum weight offset can be input by the user, or default values can be set in advance.

[0103] When height and weight are gradually increased or decreased, sample sizes of the avatar that can be used when the avatar wears clothing of the corresponding size are determined by finding the sizes of the avatars that can be reached within the sampleable area 310 (e.g., the inner area 310 of the trapezoidal diagram shown in FIG3a). In this case, the sample sizes of the available avatars may correspond to the vertices 315 included in the sampleable area 310. In one embodiment, the increase / decrease size for height and / or the increase / loss size for weight may correspond to the above-mentioned unit interval for each size of clothing, may be input from the user, or may be preset as a default value.

[0104] For example, the online fitting device can change the sample size of the avatar that can be changed within the sampleable area 310 of FIG. 3 a through the process of FIG. 3 b to FIG. 3 c to try on clothing of a size selected by the user.

[0105] 3b, the online fitting device may determine a sample size 330 (①) that is closest to the user's body size 320 input in step 110 among the sample sizes of the avatars determined in FIG3a. In this case, the sample size 330 may be referred to as the "initial avatar size" or the "reference avatar size."

[0106] The online fitting device may draw a line segment 335 passing through the reference avatar size (e.g., sample size 330) and parallel to the right slope of the sampleable area 310. The online fitting device may fit the garment at the sample sizes (330, 340, 350) of the avatar passing through the line segment 335. The online fitting device may store fitting status information (②) corresponding to the sample size 350 after fitting the garment at a sample size smaller than the sample size 330 (e.g., sample size 350) corresponding to the reference avatar size between the sample sizes belonging to the line segment 335.

[0107] If there is no sample size smaller than the sample size 330 other than the sample size 350 in the line segment 335 , the online fitting apparatus may initialize the fitting simulation to a fitting state corresponding to the reference avatar size 330 (③).

[0108] After trying on a garment of a sample size whose value is greater than the sample size 330 (e.g., the sample size 340) among the sample sizes belonging to the line segment 335, the online fitting device may store fitting status information (④) corresponding to the sample size 340. For example, the online fitting device may determine the nearest sample size (e.g., the initial avatar size) among the sample sizes belonging to the line segment 335, perform a fitting simulation on the sample size, and then store the fitting status information.

[0109] The online fitting device can then also store fitting simulations and fitting states for small-sized samples. Here, "fitting state information" refers to information related to the fitting state of the sample size of the corresponding size of the garment's clone. For example, it can include positional information between each part of the clone and the garment in the sample size of a specific clone. In this case, the sample size of the clone for which the fitting state information is stored (e.g., sample size 330, sample size 340, and sample size 350) can be referred to as the "starting clone size."

[0110] 3 c , it shows a process of trying on clothing of a sample size having the same height and different weight as the starting avatar size based on the trying-on status information stored in the trying-on process by the online trying-on apparatus according to one embodiment.

[0111] The online fitting device may perform fitting for each sample size by loading the stored fitting state information corresponding to the starting clone size.

[0112] The online fitting device can perform fitting (⑤) on sample sizes with the same height as the starting avatar size in a direction of weight loss (e.g., to the left). For example, the online fitting device can fit sample sizes (341, 342, 343, 344, 345, 346) with the same height of 172.5 cm as sample size 340 shown in FIG3c, but with a weight less than sample size 340. In this case, the online fitting device can fit from sample size 340 to the left in a direction of gradually decreasing weight, that is, in the order of sample size 341, sample size 342, sample size 343, and sample size 344.

[0113] If there are no more sample sizes with the same height as sample size 340, the online fitting device can initialize the fitting simulation state (⑥) by loading the fitting state information of the starting avatar size (sample size 340). In this case, among the sample sizes with the same height as sample size 340, sample sizes corresponding to a minimum weight (e.g., 40 kg) or less can be excluded from processing.

[0114] Afterwards, the online fitting device can perform fitting (⑦) on sample sizes with the same height as the starting avatar size (sample size 340) in the direction of increasing weight (e.g., to the right). For example, the online fitting device can fit sample sizes (341, 342, 343, 344, 345, 346) with the same height of 172.5 cm as sample size 340 shown in FIG3c, but with sample sizes (345, 346) that are heavier than sample size 340. In this case, the online fitting device can perform fitting from sample size 340 toward the right side, where weight gradually increases, that is, in the order of sample size 345, then sample size 346.

[0115] If there is no longer a sample size with a weight different from the sample size 340 of the height of 172.5 cm, the online fitting device can load the fitting state information of the next starting avatar size (for example, the sample size 330) (⑧).

[0116] The online fitting device can perform fitting (⑨) by repeating the processes ⑤ to ⑧ for a sample size having the same height as the starting avatar size loaded with fitting state information (eg, sample size 330).

[0117] According to an embodiment, the online fitting device can detect fitting failure through the above process. When fitting failure is detected, the online fitting device can stop the operation without continuing to fit the next sample size. For example, when sequentially fitting sample sizes (331, 332, 333, 334) having the same height as the starting avatar size (e.g., sample size 330) and having a small weight, if fitting failure is detected for the avatar with sample size 333, the operation can be stopped without fitting the next sample size (e.g., the operation can be stopped without fitting the sample size 334). ). Refer to Figures 7 to Figure 8 The method of detecting test failure by an online test device is described in detail.

[0118] The online fitting device may ignore the sample size whose weight is smaller than the current sample size (e.g., sample size 333) and load the fitting status information of the starting clone size (e.g., sample size 330).

[0119] Thereafter, the online fitting device may perform fitting using a clone of a sample size (337, 338) whose weight is greater than the current sample size (e.g., sample size 333).

[0120] Figure 4 FIG. 1 is a flow chart showing a method for putting clothing on a target clone according to an embodiment. Figure 4 , shows a process in which an online fitting device according to one embodiment fits the clothing that a user wants to wear onto a target avatar through steps 410 to 430.

[0121] In step 410, the online fitting apparatus may extract the index of the first polygon in the mesh of the reference avatar (e.g., the first mesh forming the reference avatar) and multiple parameters showing (the 3D position of) the point of the clothing matching the first polygon from the barycentric coordinate information.

[0122] In step 420, the online fitting device may identify a target polygon corresponding to the first polygon from the mesh of the target avatar (e.g., a third mesh forming the target avatar) based on the mesh topology of the target avatar and the index of the first polygon.

[0123] In step 430, the online fitting apparatus may determine (the 3D positions of) points of the garment by applying a plurality of parameters to the target polygon. At this point, the determined 3D positions of the points of the garment may correspond to the result of wearing the garment on the target avatar.

[0124] Figure 5 FIG is a diagram illustrating a method for putting clothing on a target clone according to an embodiment. Figure 5, shows a target polygon 503 of a third mesh having a first polygon 510 of a first mesh forming a reference avatar selected based on the user's body size and the same mesh topology as the selected reference avatar, and forming a target avatar corresponding to the user's body size.

[0125] The A vector and the B vector are vectors representing the sides of the polygons forming the mesh constituting the reference avatar, and can be used to calculate the barycentric coordinates as shown below.

[0126] A=x1-x0,B=x2-x0

[0127] The A′ vector and the B′ vector may be vectors of the target avatar corresponding to the A vector and the B vector of the reference avatar.

[0128] A'=x1'-x0,B'=x2'-x0'

[0129] Points 520 and 540 are points that make up the mesh polygons of the garment. Points 510 and 530 indicate the positions closest to points 520 and 540 on the body in terms of linear distance. The following equation is calculated using points 510 and 530 as the centroid coordinates. Here, P(a) represents the position of point a.

[0130] P(510)=αA+βB

[0131] P(530)=αA′+βB′

[0132] The online fitting device can obtain the centroid coordinate information between each point of the target-sized garment worn on the reference avatar and the first polygon 501 forming the reference avatar.

[0133] The online fitting apparatus can extract the index of the first polygon 501 included in the first mesh forming the reference avatar (for example, index number 14) and a plurality of parameters representing the 3D position of the point 520 of the garment matching the first polygon 501 based on the first polygon 501 from the acquired barycentric coordinate information. In this case, the online fitting apparatus can extract the coefficients α, β used to calculate the barycentric coordinate information and the offset between the barycentric point 501 of the first polygon 501 and the point 520 of the second polygon of the garment of the target size worn on the reference avatar by adding the index of the first polygon 501 (for example, index number 14).

[0134] Here, first polygon 501 may be a polygon (first polygon) of the reference avatar, not a polygon of the garment, and point 520 may be one of the points constituting the polygon of the garment. The polygon of the reference avatar closest to point 520 constituting the polygon of the garment may be first polygon 501, and the point closest to point 520 among the points on polygon 501 may be point 510.

[0135] The online try-on device can identify the target polygon 503 corresponding to the first polygon from the third mesh forming the target avatar based on the same mesh topology as the reference avatar and the index of the first polygon 501 (for example, index number 14). In one embodiment, since the reference avatar and the target avatar have the same mesh topology, the indexes of the polygons forming each mesh can be mapped to each other. For example, a polygon with index number 14 corresponding to a specific position of the reference avatar (for example, the neck) can be mapped to a polygon with index number 14 corresponding to a specific position of the target avatar (for example, the neck). The online try-on device can identify the target polygon 503 of the target avatar corresponding to the first polygon 501 of the reference avatar by using the correspondence between the index of the polygon of the reference avatar and the index of the polygon of the target avatar.

[0136] The online try-on device can obtain the positions of the three points of the target polygon 503 of the target avatar based on the correspondence between the indices of the polygons, thereby, the online try-on device can identify the vectors A' and B' of the target polygon 503. Vectors A and B, as well as vectors A' and B', are the sides that constitute the polygon, and they are not always orthogonal vectors. For example, if the polygon is a right triangle, and vector A and vector B are two sides that form a right angle, then the two vectors are orthogonal; if it is not a right triangle, then there are no orthogonal vectors in the triangle. Specifically, when the angle formed by the two vectors is Θ, the value of Θ is 0 (rad) < Θ < π (rad).

[0137] The online fitting apparatus applies a plurality of parameters (eg, α, β) to the a′ and B′ vectors of the target polygon 503 , thereby determining the 3D position of the point 540 of the garment worn on the target avatar.

[0138] Here, the parameters α and β are weights for the basis vectors (A, B). The weights can be obtained as follows:

[0139]

[0140] In this case, the 3D position of point 540 of the garment can correspond to the result of placing the desired garment on the target avatar. Point 540 is a point in the mesh that constitutes the garment worn by the target avatar. When the garment is placed on the reference avatar, this position can be obtained by transferring point 520 using the correlation relationship obtained using the barycentric coordinates. That is, unlike point 520, point 540 is not always the closest point to the polygon on the target avatar.

[0141] The online fitting device can apply the obtained result (scale) to the offset between the second polygon 501 point 520 of the clothing worn on the reference clone and the center of gravity point 510 of the first polygon 501, and then apply it to the offset between the center of gravity point 530 of the target polygon 503 and the point 540 of the polygon of the clothing worn on the target clone.

[0142] Here, the scale can be obtained in various ways, as an example, As shown, it can also be obtained as the ratio of the square root of the area of the first polygon 501 to the square root of the area of the second polygon 503.

[0143] However, since the sizes of the reference avatar and the target avatar are similar, the offset value (the offset value between the center of gravity 510 of the first polygon 501 and the point 520 of the second polygon of the clothing worn on the reference avatar) without applying the scale can be determined as the offset value between the center of gravity point 530 of the target polygon 503 and the point 540 of the polygon of the clothing worn on the target avatar. In principle, the scale value obtained in the above manner can be applied to offset 1 (offset1) (510-520) to obtain offset 2 (offset2) (530-540) between the mesh of the clothing and the mesh of the target avatar. However, unless the size difference between the reference avatar and the target avatar is very large, the degree of scaling of the offset is negligible, in which case the offset can be implemented without scaling (i.e., assuming scaling = 1).

[0144] In the wearing simulation, an optimization process is performed to resolve conflicts after wearing, but in one embodiment, since the sizes of the reference avatar and the target avatar are similar, the optimization process for resolving conflicts can be omitted.

[0145] According to one embodiment, when using the barycentric coordinate system method, the online fitting apparatus can transform the points of the garment by using the transformation matrix T between the reference avatar and the target avatar, thereby putting the garment on the target avatar.

[0146] Figure 6FIG. 1 is a flow chart showing a method for putting a garment on a target avatar when the garment includes auxiliary materials according to an embodiment. Figure 6 , shows a process in which an online fitting device according to one embodiment puts clothing including auxiliary materials on a target avatar through a process from step 610 to step 620.

[0147] In step 610, the online fitting apparatus may obtain auxiliary center-of-gravity coordinate information corresponding to the result of attaching the auxiliary material to the garment. At this point, the auxiliary material may be mapped to the garment based on the auxiliary center-of-gravity coordinate information.

[0148] In step 620, the online fitting device may apply the auxiliary center of gravity coordinate information to the clothing worn on the target clone.

[0149] For example, when the auxiliary material is a rigid body with a fixed shape and size (e.g., a button), the online fitting device can apply the auxiliary center of gravity coordinate information and the 3D orientation of the auxiliary material of the rigid body to any point of the polygon forming the grid to apply the auxiliary center of gravity coordinate information to the garment worn by the target clone. The online fitting device can apply the auxiliary center of gravity coordinate information and the 3D orientation of the auxiliary material to any point of the polygon forming the grid, so that the rigid auxiliary material can be correctly mapped to the desired posture on the garment.

[0150] 7a to 7c are flow charts showing a method for detecting whether wearing fails according to one embodiment; Figure 8 1 is a diagram illustrating a method for detecting whether a wearing failure occurs according to an embodiment.

[0151] 7a , the size of an avatar according to an embodiment may be changed (eg, reduced) during a try-on, and the changed size of the garment tried on the original avatar does not fit the updated avatar and causes the avatar to slide off the updated avatar.

[0152] For example, as shown in Figure 7a, when the size of the clothing is too large to fit the avatar, the clothing may not fit the avatar displayed on the right (e.g., an avatar of the same height but lighter weight), which may be smaller than the avatar displayed on the left. Alternatively, even if the size of the clothing is very small, the same situation can occur.

[0153] In reality, because the human body has a soft body, clothing that is small compared to the body size may be caught on the body. However, because the simulated avatar has a rigid body similar to a mannequin, unlike the real human body, if the clothing is small compared to the body size, the body will not fit the clothing, and the clothing will be pushed towards the narrower part of the body. If the clothing has a certain degree of elasticity, it may stretch to adapt to the growing body size, but clothing made of stiff fabrics such as leather may be pushed down by the avatar's rigid body. This can be a phenomenon unique to clothing simulation depending on the properties of the avatar (soft or stiff).

[0154] Therefore, since there is no need to try on a clone with a size that is expected to fail, the online fitting device can prevent the attempt on a clone with a size that cannot be successfully fitted. In one embodiment, by reducing the number of clone samples used for fitting and not using clone samples to perform fitting, fitting efficiency can be improved.

[0155] Next, reference will be made to FIG. 7b, FIG. 7c and FIG. Figure 8 The method of detecting sizes predicted to be failed fittings is described in more detail.

[0156] As shown in Figure 7b, the online fitting device can calculate the distance between the garment 733 and the avatar 731 when the garment 733 is well-fitted (the "initial state") and store the calculated distance. For example, the avatar 731 can be a reference avatar selected based on the user's body size.

[0157] At this time, for example, the distance between the clothing 733 and the avatar 731 may be calculated by forming the distance between each vertex (vetex) of the clothing 733 and the mesh of the avatar 731 closest to the corresponding vertex.

[0158] More specifically, in step 810, the online fitting apparatus may obtain a set V of vertices in the mesh of the garment that is in contact with the avatar 731 in the initial state of the garment 733 being well worn. In this case, for example, the initial state may correspond to a state in which the garment is worn on the reference avatar, and the online fitting apparatus may obtain a first set (e.g., set V) of points of a second polygon forming a second mesh of the garment that includes points in contact with the first mesh forming the reference avatar. The online fitting apparatus may then calculate the distance between the set V of vertices in contact with the avatar 731 and the mesh of the avatar 731.

[0159] In step 820, the online fitting device can calculate the vertices v belonging to the set v i (v i∈V) and the jth grid T forming the clone 731 j The first distance d between the midpoints (i.e., barycentric coordinates) of i For example, the online fitting device may calculate the distance between the centroid coordinates of the first polygon of the first mesh closest to the point of the second polygon belonging to the first set and the point of the second polygon belonging to the first set as the first distance d i .

[0160] As shown in FIG7 b , after the online fitting device stores the distance between the garment 733 and the avatar 731 in the initial state where the garment 733 is well worn, it performs the fitting process by changing the sample size of the garment 733 .

[0161] In step 830, the online fitting device may perform fitting on the next sample size of the avatar 731. When the sample size of the avatar changes, the online fitting device may calculate the distance between the changed sample size of the avatar and the vertices of the garment.

[0162] In step 840, for example, the online fitting device may calculate the vertices v of the garment. i 'With the jth grid T of clone 731 j 'Change distance d between i In step 840, the online fitting device can calculate the distance d between the garment and the target avatar. i '("second distance"). More specifically, the online fitting device can obtain a second set of points of the second polygon of the mesh of the clothing that is in contact with the target polygon of the third mesh forming the target clone of the clothing, and calculate the distance between the centroid coordinates of the target polygon of the third mesh closest to the point of the second polygon belonging to the second combination and the point of the second polygon belonging to the second set as the second distance.

[0163] The online fitting device can be based on the changed second distance d' i The first distance d i The difference between |d i -d i '| to detect whether the garment 733 is successfully tried on. For example, the more the garment 733 deviates from its initial state of good wearing, |d i -d i The larger the value of '|

[0164] In step 850, the online fitting device may calculate the first distance d' i The first distance d i The maximum difference between And determine whether the maximum value is greater than a first threshold (Threshold) θ1.

[0165] When the distance d′ is determined in step 850 i and distance d i When the maximum value of the difference between the two is greater than the first threshold value (θ1), the online fitting device may determine in step 860 that the fitting has failed, and after detecting the sample size of the avatar that failed the fitting, perform post-processing. In step 860, the online fitting device may return to step 840 to recalculate the new sample size of the avatar and the changed distance between the vertices of the garment.

[0166] Conversely, when the distance d' is determined in step 850 i and distance d i When the maximum value of the difference between the two is less than or equal to the first threshold value θ1, the online fitting device in step 870 can calculate the distance d' i and distance d i The average value of the difference between n |d i -d i '|, and determine whether the average value is greater than the second threshold θ2.

[0167] When it is determined in step 870 that the average value is greater than the second threshold, the online try-on device may determine that the try-on has failed and perform the operation of step 860 .

[0168] On the contrary, when it is determined in step 870 that the average value is less than or equal to the second threshold value, the online try-on apparatus may perform the operation of step 840 .

[0169] In one embodiment, the first threshold value and the second threshold value are values used as criteria for determining whether the try-on has failed, and can be empirically determined through experiments or the like, for example.

[0170] Figure 9 1 is a diagram illustrating a method for guiding an online fitting apparatus by visualizing a range of candidate sizes according to an embodiment.

[0171] According to an embodiment, when fitting fails, the online fitting apparatus may visualize and provide a range of candidate sizes corresponding to the garment based on the body size 910 input by the user.

[0172] For example, assuming that user A, who is considering purchasing clothing, has body measurements 910 of 164.8 cm tall and 76 kg in weight, the online fitting device can visualize the sizes that would not fail when the corresponding clothing is tried on an avatar with the same or similar body measurements based on pre-simulation results, and can provide the visualized size range to user A. According to an embodiment, the online fitting device can visualize and provide a range of user body sizes that can fit each size of clothing (e.g., size S, size M, size L, size XL, etc.).

[0173] Figure 10 FIG. 1 is a block diagram showing an online fitting device according to an embodiment. Figure 10 According to an embodiment, an online try-on device 1000 may include a user interface 1010, a communication interface 1030, a processor 1050, a display 1070, and a memory 1090. The user interface 1010, the communication interface 1030, the processor 1050, the display 1070, and the memory 1090 may communicate with each other via a communication bus 1050.

[0174] The user interface 1010 receives input from the user of the user's body size and the target size of the clothing the user wants to wear. The user interface 1010 may include a hardware device such as a keyboard, a mouse, or a touch screen.

[0175] The communication interface 1030 obtains barycentric coordinate information corresponding to the result of wearing the target-sized clothing on the reference clone selected based on the user's body size. For example, the communication interface 1030 can receive the barycentric coordinate information from a server or a database. At this time, for example, the barycentric coordinate information may include parameters representing the 3D position transformation relationship between the points of the first polygon of the first mesh forming the reference clone and the second polygon of the second mesh forming the clothing worn on the reference clone, and at least one of the indexes of the second polygon. For example, the parameters may include at least one of the coefficients used to calculate the barycentric coordinate information and the offset between the points of the first polygon and the second polygon.

[0176] Processor 1050 can execute instructions stored in memory 1090 to perform the aforementioned functions. For example, processor 1050 generates a target avatar having a mesh with the same topology as the reference avatar's mesh and corresponding to the user's body size. Processor 1050 applies the barycentric coordinate information to the target avatar to determine whether the target-sized garment has been successfully fitted on the target avatar.

[0177] For example, processor 1050 can extract the index of a first polygon in the mesh of the reference avatar and multiple parameters representing the points of the garment that match the first polygon from the barycentric coordinate information. Based on the mesh topology of the target avatar and the index of the first polygon, processor 1050 can identify a target polygon corresponding to the first polygon from the mesh of the target avatar. Processor 1050 can determine the points of the garment by applying the multiple parameters to the target polygon. In this case, the determined points of the garment can correspond to the result of wearing the garment on the target avatar.

[0178] For example, processor 1050 can use the correspondence between the index of the first polygon and the index of the target avatar to identify the target polygon of the target avatar's mesh to map to the first polygon of the reference avatar's mesh. Processor 1050 can try the clothing on the target avatar by applying the barycentric coordinate information to each point of the target polygon mapped to the first polygon.

[0179] The processor 1050 may determine whether there is an intersection between the target polygon of the mesh of the target avatar and the polygon of the mesh of the garment being tried on the reference avatar. The processor 1050 may determine whether the garment of the target size has been successfully tried on based on the existence of the intersection.

[0180] Alternatively, processor 1050 may calculate a first distance between the mesh of the reference avatar trying on the garment and a point on the garment's mesh. Alternatively, processor 1050 may obtain a point of a polygon on the garment's mesh that contacts the mesh of the reference avatar as the point on the garment's mesh, and determine the first distance as the distance between the centroid coordinates of the polygon of the reference avatar's mesh closest to the obtained polygon point on the garment's mesh.

[0181] Processor 1050 may calculate a second distance between a point on the mesh of the garment and a point on the mesh of the target avatar. For example, processor 1050 may obtain a point on the mesh of the garment that is in contact with a target polygon of the mesh of the target avatar as a point on the mesh of the garment, and determine the distance between the centroid coordinates of the polygon of the reference avatar closest to the obtained point as the second distance.

[0182] The processor 1050 can determine whether the garment of the target size has been successfully tried on based on the difference between the first distance and the corresponding second distance. For example, the processor 1050 can determine the maximum value of the difference between the first distance and the corresponding second distance, and determine whether the try-on is successful based on whether the maximum value is greater than a threshold. Alternatively, the processor 1050 can determine the average value of the difference between the first distance and the corresponding second distance, and determine whether the try-on is successful based on whether the average value is greater than a second threshold.

[0183] When it is determined that the clothing of the target size is not successfully tried on the target avatar, the processor 1050 may display a message notifying that the try-on has failed.

[0184] The processor 1050 may visualize and guide candidate sizes corresponding to clothing based on the user's body size.

[0185] According to an embodiment, when the garment includes auxiliary materials such as buttons, decorations, graphics, and logos, the processor 1050 may obtain auxiliary center of gravity coordinate information corresponding to the result of attaching the auxiliary materials to the garment. The processor 1050 may apply the auxiliary center of gravity coordinate information to the garment worn by the target avatar. When the auxiliary material is a rigid body, the processor 1050 may apply the auxiliary center of gravity coordinate information and the 3D orientation of the auxiliary material to any point of the grid of the auxiliary material, and apply the auxiliary center of gravity coordinate information to the garment worn by the target avatar.

[0186] In addition, to reference avatars of different body sizes, processor 1050 may store the results of trying on clothing of different sizes as barycentric coordinate information pre-stored in memory 1090. In this case, the barycentric coordinate information may correspond to the result of trying on clothing of the target size on a reference avatar obtained from the pre-stored barycentric coordinate information. For example, different body sizes may be obtained by sampling clothing of different sizes at unit intervals.

[0187] Display 1070 displays the result of processor 1050 putting the garment on the target avatar.

[0188] The memory 1090 may store the user's body size and the target size of the clothing that the user wants to wear received from the user interface 1010. The memory 1090 may store the center of gravity coordinate information acquired through the communication interface 1030.

[0189] In addition, memory 1090 may store information generated by processor 1050 about the target avatar and / or the result of wearing the garment on the target avatar.

[0190] In addition, the memory 1090 can store various information generated during the processing performed by the processor 1050. In addition, the memory 1090 can store various other data and programs. The memory 1090 may include volatile or non-volatile memory. The memory 1090 may include a large-capacity storage medium such as a hard disk, etc., and store various data.

[0191] In addition, the processor 1050 may execute the above reference Figures 1 to 9At least one method described, or an algorithm corresponding to at least one method. The processor 1050 may be a data processing device implemented by hardware of a circuit having a physical structure for performing desired operations. For example, the desired operation may include a code or instructions included in a program. For example, the processor 1050 may be implemented as a central processing unit (CPU), a graphics processing unit (GPU), or a neural network processing unit (NPU). For example, the display device 900 implemented by hardware may include a microprocessor, a central processing unit (CPU), a processor core, a multi-core processor, a multiprocessor, an application specific integrated circuit (ASICS), and a field programmable gate array (FPGA).

[0192] The processor 1050 may execute a program and control the online try-on apparatus 1000. The program code executed by the processor 1050 may be stored in the memory 1090.

[0193] The method according to the embodiment is embodied in the form of program commands that can be executed by various computer means and recorded in a computer-readable and writable medium. The computer-readable and writable medium can include program commands, data files, data structures, etc., either individually or in combination. The program instructions recorded on the medium can be instructions specially designed and constructed to implement the embodiment, or instructions that can be used based on known knowledge by a person skilled in the art of computer software. Computer-readable and writable recording media can include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical media similar to CD-ROMs and DVDs; magneto-optical media similar to floppy disks; and hardware devices specially constructed for storing and executing program commands, such as read-only memories (ROMs), random access memories (RAMs), and flash memories. Examples of program instructions include not only machine language codes generated by compilers, but also high-level language codes that can be executed by computers using interpreters, etc. To perform the operations of the embodiment, the hardware device can be configured to implement the operations using one or more software modules, or vice versa.

[0194] Software can include a computer program, code, instructions, or a combination of more than one of these, that causes a processing device to operate in a desired manner or, individually or collectively, to command a processing device. Software and / or data can be permanently or temporarily embodied in any type of equipment, component, physical device, virtual equipment, computer storage medium or device, or transmitted signal wave for interpretation by the processing device or to provide commands or data to the processing device. Software is distributed across computer systems connected via a network and can be stored or executed in a distributed manner. Software and data can be stored in one or more computer read-write storage media.

[0195] In summary, the embodiments are described with limited drawings, and persons skilled in the art will be able to make various modifications and variations based on the description. For example, the described techniques may be performed in a different order than the illustrated method, and / or the described systems, structures, devices, circuits, and other components may be combined or combined in a different manner than the illustrated method, or replaced or substituted with other components or equivalents, and appropriate results may still be achieved.

[0196] Therefore, other embodiments, other examples and equivalents of the claims are intended to fall within the scope of the claims of the present invention.

Claims

1. An online fitting method, characterized in that: The following steps are involved: receiving input from a user of the user's body dimensions and a target size of clothing that fits the user's body; Obtaining center of gravity coordinate information, where the center of gravity coordinate information corresponds to a result of wearing the garment of the target size on a reference clone; generating a target avatar having a mesh having the same topology as that of the reference avatar and corresponding to the body size of the user; and Determining whether the clothing of the target size is successfully tried on the target avatar by applying the center of gravity coordinate information to the target avatar; Determining whether the garment of the target size is successfully tried on includes: Calculating a first distance between a grid of the reference avatar trying on the garment and a point on the grid of the garment; Calculating a second distance between a point on the mesh of the garment and a point on the mesh of the target avatar; and determining a maximum or average of differences between the first distances and corresponding second distances; and Whether the try-on is successful is determined based on whether the maximum value or the average value is greater than a threshold.

2. The online try-on method according to claim 1, characterized in that: The barycentric coordinate information includes at least one of (i) a parameter representing a 3D position transformation relationship between a first polygon and a second polygon in a clothing mesh suitable for the reference avatar and (ii) an index of the first polygon in the mesh of the reference avatar.

3. The online fitting method according to claim 2, wherein: The parameters include at least one of (i) coefficients for calculating the barycentric coordinate information, (ii) an offset between the first polygon and the second polygon, and (iii) identification information of a mesh of the reference avatar corresponding to the barycentric coordinate information.

4. The online try-on method according to claim 1, wherein: The step of determining whether the garment of the target size is successfully tried on comprises the following steps: Extracting, from the barycentric coordinate information, an index of a first polygon in the mesh of the reference avatar and a plurality of parameters representing a point of the garment that matches the first polygon; Identifying a target polygon corresponding to the first polygon from the mesh of the target avatar based on the mesh topology of the target avatar and the index of the first polygon; and determining points of the garment by applying the plurality of parameters to the target polygon, The determined points of the clothing correspond to the result of wearing the clothing on the target clone.

5. The online try-on method according to claim 1, wherein: identifying a target polygon of the target avatar's mesh to map to the first polygon of the reference avatar's mesh using a correspondence between the index of the first polygon and the index of the target avatar; as well as The garment is tried on the target clone by applying the barycentric coordinate information to each point of the target polygon mapped to the first polygon.

6. The online try-on method according to claim 1, characterized in that: When the garment includes auxiliary materials, the step of determining whether to try on the garment comprises the following steps: acquiring auxiliary center-of-gravity coordinate information corresponding to a result of attaching the auxiliary material to the garment; and The auxiliary center-of-gravity coordinate information is applied to the clothing worn on the target clone.

7. The online try-on method according to claim 6, characterized in that: When the auxiliary material is a rigid body, the step of applying the auxiliary center of gravity coordinate information to the garment comprises the following steps: The auxiliary center-of-gravity coordinate information is applied to the garment worn on the target avatar by applying the auxiliary center-of-gravity coordinate information and the 3D orientation of the auxiliary material to any point of the mesh of the auxiliary material.

8. The online try-on method according to claim 1, characterized in that: The step of obtaining the center of gravity coordinate information includes the following steps: The center of gravity coordinate information is received from a server or a database.

9. The online try-on method according to claim 1, wherein: The following steps are also included: In order to refer to the avatars of different body sizes, the fitting results of the clothes of different sizes are stored as the pre-stored center of gravity coordinate information. The center-of-gravity coordinate information corresponds to a result of trying on the target-sized garment on a reference avatar obtained from the pre-stored center-of-gravity coordinate information.

10. The online try-on method according to claim 9, characterized in that: The different body sizes are obtained by sampling the garments of different sizes at unit intervals.

11. The online try-on method according to claim 1, wherein: When it is determined that the clothing of the target size has not been successfully tried on the target avatar, a message notifying the failure of the try-on is displayed.

12. The online try-on method according to claim 11, characterized in that: determining whether there is an intersection between a target polygon of the mesh of the target avatar and a polygon of the mesh of the garment being tried on the reference avatar; as well as According to the existence of the intersection, it is determined whether the garment of the target size has been successfully tried on.

13. The online try-on method according to claim 1, characterized in that: The step of calculating the first distance comprises the following steps: Obtaining a polygonal point on the mesh of the garment that contacts the mesh of the reference avatar as a point on the mesh of the garment; and The distance between the coordinates of the center of gravity of the polygon of the mesh of the reference avatar closest to the obtained polygon point in the mesh of the clothing is determined as the first distance.

14. The online try-on method according to claim 1, characterized in that: The step of calculating the second distance comprises the following steps: Obtaining a polygon point on the mesh of the clothing that contacts a target polygon of the mesh of the target avatar as a point on the mesh of the clothing; and The distance between the centroid coordinates of the polygon of the reference avatar closest to the obtained point is determined as the second distance.

15. The online try-on method according to claim 1, characterized in that: Candidate sizes corresponding to the garment are visualized and guided based on the user's body size.

16. A non-transitory computer-readable recording medium storing instructions executed by a processor, characterized in that the processor, receiving input from a user of the user's body size and a target size of clothing that fits the user's body, Obtaining center of gravity coordinate information, the center of gravity coordinate information corresponding to the result of wearing the clothing of the target size on the reference clone, generating a target avatar having a mesh having the same topology as that of the reference avatar and corresponding to the body size of the user, Determining whether the clothing of the target size is successfully tried on the target avatar by applying the center of gravity coordinate information to the target avatar; Determining whether the garment of the target size is successfully tried on includes: Calculating a first distance between a grid of the reference avatar trying on the garment and a point on the grid of the garment; Calculating a second distance between a point on the mesh of the garment and a point on the mesh of the target avatar; and determining a maximum or average of differences between the first distances and corresponding second distances; and Whether the try-on is successful is determined based on whether the maximum value or the average value is greater than a threshold.

17. An online fitting device, characterized in that: include: a user interface that receives input of a user's body dimensions and a target size of a garment to be tried on by the user; a communication interface for acquiring center-of-gravity coordinate information corresponding to a result of trying on the garment of the target size on a reference clone; a processor configured to generate a target avatar having a mesh having the same topology as that of the reference avatar and corresponding to the user's body size, and determine whether the clothing of the target size is successfully tried on the target avatar by applying the barycentric coordinate information to the target avatar; Determining whether the garment of the target size is successfully tried on includes: Calculating a first distance between a grid of the reference avatar trying on the garment and a point on the grid of the garment; Calculating a second distance between a point on the mesh of the garment and a point on the mesh of the target avatar; and determining a maximum or average of differences between the first distances and corresponding second distances; and Whether the try-on is successful is determined based on whether the maximum value or the average value is greater than a threshold.