Self-adaptive fitting display recommendation method and system based on 3D clothes
By constructing a three-dimensional human body model and performing semantic region segmentation and interpolation deformation calculations, a clothing model adapted to the target user is generated, which solves the problem of unrealistic fit between clothing and the human body in two-dimensional virtual try-on technology, and realizes a comprehensive and realistic try-on experience and clothing evaluation.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANDONG SAINT VAURNNI CLOTHING CO LTD
- Filing Date
- 2026-01-20
- Publication Date
- 2026-05-08
AI Technical Summary
Existing two-dimensional virtual try-on technology cannot accurately simulate the real fit between clothing and the human body, resulting in users being unable to assess the comfort and fit of clothing, leading to poor try-on results.
By constructing a 3D human body model and performing semantic region segmentation, local curvature features are obtained. The clothing model is then interpolated and deformed by combining the target displacement vector, deformation constraint weight, and expansion coefficient adjustment value to generate a clothing model that is adapted to the target user. Based on the physical properties of the fabric, dynamic try-on display screens and pressure distribution heat maps are generated.
It achieves precise adaptation of clothing models to user body shapes, provides a comprehensive and realistic try-on experience, improves the try-on effect, and can accurately assess the three-dimensional shape, wrinkle distribution, and pressure relationship of clothing.
Smart Images

Figure CN121998736A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of clothing data processing technology, specifically to an adaptive try-on display and recommendation method and system based on 3D clothing. Background Technology
[0002] Virtual try-on technology is a technique that uses computer graphics, 3D modeling, and image processing to simulate the effect of wearing clothing in a digital environment. This technology constructs 3D models of the human body and clothing, enabling virtual overlay and interactive display of the garments on the body, allowing users to preview how the clothing will look without actually trying it on. Virtual try-on technology is widely used in e-commerce platforms, clothing customization, and fashion design, providing users with convenient shopping decision support while reducing clothing return rates and improving the user shopping experience.
[0003] Virtual try-on technology commonly used in related fields is mostly based on two-dimensional patching, which involves overlaying clothing images onto a human body model to simulate the try-on effect. However, in practical applications, due to differences in user body shape, the complexity of body curves, and the characteristics of clothing materials, the fit between the clothing image and the human body contour lacks realistic physical deformation, making it impossible for users to accurately assess the comfort and fit of the clothing, resulting in a poor try-on effect. Summary of the Invention
[0004] This application provides an adaptive try-on display and recommendation method and system based on 3D clothing, which can provide a comprehensive and realistic try-on experience for different users, thereby improving the try-on effect.
[0005] Firstly, this application provides an adaptive try-on display and recommendation method based on 3D clothing, the method comprising: Obtain the target user's body data, construct a 3D human body model, and perform semantic region segmentation on the 3D human body model to obtain multiple body semantic regions and their corresponding local curvature features. In response to the clothing selection command of the target user, the three-dimensional basic mesh model of the target clothing is retrieved, and the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model is calculated. Identify the mesh vertices corresponding to each body semantic region in the 3D basic mesh model, determine the deformation constraint weight of each mesh vertex according to the type of body semantic region, and calculate the expansion coefficient adjustment value of each mesh vertex in the normal direction according to the local curvature characteristics. Based on the target displacement vector, deformation constraint weight, and expansion coefficient adjustment value, interpolation deformation calculation is performed on the three-dimensional basic mesh model to generate a target clothing model adapted to the target user. Load the target clothing model into the 3D human body model, and generate a dynamic try-on display screen based on the physical property parameters of the fabric corresponding to the target clothing. A pressure distribution heatmap is generated based on the topological distance between the inner surface of the target clothing model and the outer surface of the 3D human body model. Clothing recommendation information is then generated based on the pressure distribution heatmap and the dynamic try-on display.
[0006] By employing the aforementioned technical solution, a 3D human body model is constructed using the target user's body data, and semantic region segmentation is performed to obtain multiple body semantic regions and local curvature features. This accurately captures the personalized characteristics of the user's body shape and the complexity of body curves. The deformation constraint weights of mesh vertices are determined based on the type of body semantic regions, and the expansion coefficient adjustment value of mesh vertices in the normal direction is calculated based on local curvature features, achieving precise adaptation of the clothing model to curvature changes in different body parts. Interpolation deformation calculations are performed on the 3D basic mesh model using the target displacement vector, deformation constraint weights, and expansion coefficient adjustment values to generate a target clothing model adapted to the target user, ensuring the clothing realistically fits the user's body shape. Dynamic try-on display screens are generated based on the fabric's physical property parameters, and a pressure distribution heatmap is generated based on the topological distance between the inner surface of the target clothing model and the outer surface of the 3D human body model. This comprehensively presents the three-dimensional shape, wrinkle distribution, and pressure relationship of the clothing, thereby providing a comprehensive and realistic try-on experience for different users and improving the try-on effect.
[0007] Secondly, this application provides an adaptive try-on display and recommendation system based on 3D clothing, the system comprising: The initialization module is used to acquire the target user's body data, construct a three-dimensional human body model, and perform semantic region segmentation on the three-dimensional human body model to obtain multiple body semantic regions and their corresponding local curvature features. The clothing instruction processing module is used to respond to the clothing selection instruction of the target user, retrieve the three-dimensional basic mesh model of the target clothing, and calculate the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model. The model parameter processing module is used to identify the mesh vertices in the 3D basic mesh model that correspond to each body semantic region, determine the deformation constraint weight of each mesh vertex according to the type of body semantic region, and calculate the expansion coefficient adjustment value of each mesh vertex in the normal direction according to the local curvature characteristics. The model adjustment module is used to perform interpolation deformation calculations on the three-dimensional basic mesh model based on the target displacement vector, deformation constraint weights, and expansion coefficient adjustment values to generate a target clothing model that is adapted to the target user. The try-on display module is used to load the target clothing model onto the 3D human body model and generate a dynamic try-on display screen based on the physical property parameters of the fabric corresponding to the target clothing. The recommended output module is used to generate a pressure distribution heat map based on the topological distance between the inner surface of the target clothing model and the outer surface of the 3D human body model, and to generate clothing recommendation information based on the pressure distribution heat map and the dynamic try-on display screen.
[0008] Thirdly, this application provides a computer storage medium that stores multiple instructions adapted for loading by a processor and executing any of the methods described above.
[0009] Fourthly, this application provides an electronic device including a processor, a memory, and a transceiver. The memory is used to store instructions, the transceiver is used to communicate with other devices, and the processor is used to execute the instructions stored in the memory to cause the electronic device to perform any of the methods described above.
[0010] In summary, the beneficial effects of the technical solution of this application include: By employing the aforementioned technical solution, a 3D human body model is constructed using the target user's body data, and semantic region segmentation is performed to obtain multiple body semantic regions and local curvature features. This accurately captures the personalized characteristics of the user's body shape and the complexity of body curves. The deformation constraint weights of mesh vertices are determined based on the type of body semantic regions, and the expansion coefficient adjustment value of mesh vertices in the normal direction is calculated based on local curvature features, achieving precise adaptation of the clothing model to curvature changes in different body parts. Interpolation deformation calculations are performed on the 3D basic mesh model using the target displacement vector, deformation constraint weights, and expansion coefficient adjustment values to generate a target clothing model adapted to the target user, ensuring the clothing realistically fits the user's body shape. Dynamic try-on display screens are generated based on the fabric's physical property parameters, and a pressure distribution heatmap is generated based on the topological distance between the inner surface of the target clothing model and the outer surface of the 3D human body model. This comprehensively presents the three-dimensional shape, wrinkle distribution, and pressure relationship of the clothing, thereby providing a comprehensive and realistic try-on experience for different users and improving the try-on effect. Attached Figure Description
[0011] Figure 1 This is a flowchart illustrating an adaptive try-on display and recommendation method based on 3D clothing according to an embodiment of this application. Figure 2 This is a schematic diagram of the structure of an adaptive try-on display and recommendation system based on 3D clothing according to an embodiment of this application; Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0012] Explanation of reference numerals in the attached drawings: 300, electronic device; 301, processor; 302, communication bus; 303, user interface; 304, network interface; 305, memory. Detailed Implementation
[0013] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.
[0014] In the description of the embodiments of this application, words such as "illustrative," "for example," or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "illustrative," "for example," or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Rather, the use of words such as "illustrative," "for example," or "for example" is intended to present the relevant concepts in a specific manner.
[0015] In the description of the embodiments of this application, the term "multiple" means two or more. For example, multiple systems means two or more systems, and multiple screen terminals means two or more screen terminals. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.
[0016] Please see Figure 1 This document presents a flowchart illustrating an adaptive try-on display and recommendation method based on 3D clothing, as provided in an embodiment of this application. This method can be implemented using a computer program, a microcontroller, or run on a 3D clothing-based adaptive try-on display and recommendation system based on the von Neumann architecture. The computer program can be integrated into the application or run as a standalone utility application. The specific steps of the 3D clothing-based adaptive try-on display and recommendation method are described in detail below.
[0017] S101: Obtain the target user's body data, construct a three-dimensional human body model, and perform semantic region segmentation on the three-dimensional human body model to obtain multiple body semantic regions and their corresponding local curvature features. Body data refers to quantitative information about a target user's body dimensions, shape, and posture, acquired through sensors, scanning devices, or measuring tools. This includes measurements of key areas such as height, chest circumference, waist circumference, and hip circumference, as well as spatial coordinate data of the body contours. For example, it can be a set of point cloud data of the user's front, side, and back views obtained through depth camera scanning. A 3D human body model represents a digital representation of the human body with three-dimensional spatial geometry, constructed based on body data. It can realistically reflect the user's body shape and curves, such as a parametric model using SMPL (Skinned Multi-Person Linear Model) or a mesh-based polygonal human body model. Semantic region segmentation represents the process of dividing a 3D human body model into regions with specific functions or attributes according to human anatomical meaning, such as the division of the head, neck, chest, waist, hips, thighs, and calves. A semantic body region refers to a body part region with clear anatomical meaning obtained after semantic region segmentation. Each region corresponds to a specific part of the human body; for example, the chest region includes the area from the clavicle to the lower edge of the ribs, and the waist region includes the area from the lower edge of the ribs to the iliac crest. Local curvature features represent a quantitative index of the degree of curvature of the surface of a semantic region of the body, reflecting the concave and convex characteristics of the region and used to describe the changing trend of the body curve.
[0018] Specifically, this step is executed when the system starts the virtual try-on function, triggered after the target user enters the virtual try-on system and completes identity verification. First, the system acquires the target user's body data through a body data acquisition module. This data may originate from historically stored measurement records, 3D point cloud data collected by real-time scanning devices, or body size parameters manually entered by the user. Based on the acquired body data, the system calls a 3D reconstruction algorithm to construct a 3D human body model. This process includes point cloud registration, mesh generation, and surface smoothing, ultimately generating a 3D human body mesh model with a complete topological structure. This model accurately reflects the user's true body shape characteristics, including the proportional relationships and spatial positions of various body parts. Subsequently, the system performs semantic region segmentation on the constructed 3D human body model. This segmentation process is based on human anatomy knowledge and a pre-trained semantic segmentation algorithm, decomposing the human body model into multiple body semantic regions with clear semantic meanings. For example, the torso region is further subdivided into sub-regions such as the chest, waist, and abdomen, and the upper limb region is subdivided into sub-regions such as the upper arm, forearm, and hand. For each body semantic region, the system calculates the local curvature features of its surface. This calculation is based on the principle of differential geometry. By analyzing geometric information such as the rate of change of the normal vector of each grid vertex in the region and the spatial distribution of neighboring points, the system obtains curvature parameters such as the average curvature, Gaussian curvature, and principal curvature direction of the region.
[0019] S102: In response to the clothing selection command of the target user, retrieve the three-dimensional basic mesh model of the target clothing, and calculate the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model; The clothing selection instruction refers to the operation command issued by the target user to select specific clothing for virtual try-on. It typically includes selection information such as clothing type, style, size, and color. For example, a user might click on a thumbnail of a T-shirt or enter a clothing number on the virtual try-on interface. The target clothing refers to the specific style of clothing selected by the target user for virtual try-on; it is the clothing object specified by the clothing selection instruction. The 3D basic mesh model is used to represent the standardized 3D geometric representation of the target clothing. It is a mesh structure composed of vertices, edges, and faces, and is the basic form of clothing digitization. Preset feature control points represent key position points pre-defined on the 3D basic mesh model. These are reference points used to control clothing deformation and are typically located at important structural positions such as the center point of the neckline, shoulder line endpoints, cuff center points, hem center points, and waistline key points. The number and position of these points are predefined according to the clothing type. The target displacement vector is the vector representation of the direction and distance required for the feature control points to move from their initial position on the standard human body model to the corresponding position on the target user's 3D human body model. It is used to guide the overall deformation direction of the clothing model.
[0020] Specifically, this step is executed immediately after the target user completes the clothing selection operation and is a crucial link in the system's response to user interaction. When the system detects the target user's clothing selection instruction, it first parses the instruction content and extracts clothing identification information, including key parameters such as clothing ID, style code, and size specifications. Based on the parsed clothing identification information, the system retrieves the corresponding 3D basic mesh model from the clothing database. This model is standardized clothing geometric data pre-created using 3D modeling software or obtained through scanning of physical clothing, containing complete mesh topology, texture coordinates, material properties, and other information. The retrieved 3D basic mesh model is usually based on a standard human body model, and its size and shape match the standard body type. Therefore, it needs to be adapted to the target user's personalized body type through deformation calculations. To achieve this adaptation process, the system needs to calculate the target displacement vector corresponding to the preset feature control points on the 3D basic mesh model. The calculation process first locates the initial spatial coordinates of the feature control points on the 3D base mesh model. These feature control points are key locations pre-annotated during the clothing modeling stage, and their number depends on the complexity of the clothing. Simple clothing such as a T-shirt may contain 10-20 feature control points, while complex clothing such as a dress may contain 30-50. Next, the system projects these feature control points onto a standard human body model that matches the 3D base mesh model, finding the nearest projection position of each control point on the surface of the standard human body model. Then, the system finds the target position on the target user's 3D human body model that corresponds to the projection position on the standard human body model. This correspondence is established based on matching semantic regions of the human body; for example, a projection point on the shoulder line of the standard human body model corresponds to the same semantic position on the shoulder line of the target user's human body model.
[0021] S103: Identify the mesh vertices corresponding to each body semantic region in the 3D basic mesh model, determine the deformation constraint weight of each mesh vertex according to the type of body semantic region, and calculate the expansion coefficient adjustment value of each mesh vertex in the normal direction according to the local curvature characteristics. In this model, mesh vertices represent the basic geometric units that constitute the 3D basic mesh model. They are discrete spatial points on the mesh surface, each with attributes such as 3D coordinates and a normal vector. The type of body semantic region refers to the category into which the body semantic region is classified according to mechanical properties, functional attributes, or anatomical classification. Deformation constraint weights represent the strength coefficients that constrain mesh vertices during deformation calculations. The expansion coefficient adjustment value represents the amount of distance adjustment by which mesh vertices expand outward or contract inward along the normal direction, reflecting the size of the gap between the clothing and the human body.
[0022] Specifically, this step is executed immediately after obtaining the target displacement vector and is the core preparatory stage for adaptive deformation of clothing. First, the system needs to identify which body semantic regions each mesh vertex in the 3D basic mesh model corresponds to. This identification process is achieved through spatial position analysis. Specifically, each mesh vertex is projected backward along its normal vector direction onto the surface of the 3D human body model, and the nearest intersection point is found. The body semantic region to which this intersection point belongs is the region corresponding to that mesh vertex. For mesh vertices located near the boundaries of multiple regions, the system calculates the distance from the vertex to each adjacent region and uses a weighted average method to determine its primary region. After completing the region identification, the system assigns corresponding deformation constraint weights to each mesh vertex based on the type of body semantic region it corresponds to. Different types of body semantic regions require different deformation constraint strategies. For example, rigid support regions such as the shoulders and chest require the clothing to fit tightly to maintain its support structure; therefore, the corresponding mesh vertices should have higher deformation constraint weights to ensure they strictly follow the human body surface during deformation. On the other hand, flexible draping regions such as the abdomen and skirt allow the clothing to maintain a certain gap with the body and drape naturally; therefore, the corresponding mesh vertices should have lower deformation constraint weights to retain more degrees of freedom in deformation. The allocation of deformation constraint weights is based on a preset weight configuration table. This table defines standard weight value ranges for different types of body semantic regions. The system retrieves the corresponding weight value from the configuration table based on the region affiliation of the mesh vertex. Simultaneously with determining the deformation constraint weights, the system also needs to calculate the expansion coefficient adjustment value of each mesh vertex in the normal direction based on the local curvature characteristics of the body semantic region. This calculation process first obtains the local curvature characteristic values of the region corresponding to the mesh vertex, including the average curvature and Gaussian curvature of the region. By analyzing the curvature values, the system can determine whether the region is a convex region, a concave region, or a flat region. For convex regions, such as the chest and buttocks, the expansion coefficient adjustment value needs to be increased to allow the clothing to expand outwards more in these areas, providing sufficient space to accommodate the convex parts of the body and avoiding the feeling of pressure from overly tight clothing. For concave regions, such as the waistline and underarms, the expansion coefficient adjustment value needs to be decreased to allow the clothing to conform appropriately to the concave curves and maintain the overall aesthetics of the clothing. For flat regions, the expansion coefficient adjustment value remains at the baseline level.
[0023] S104: Perform interpolation deformation calculations on the three-dimensional basic mesh model based on the target displacement vector, deformation constraint weights, and expansion coefficient adjustment values to generate a target clothing model adapted to the target user. Among them, the target clothing model refers to a personalized 3D clothing model that is specifically adapted to the body shape of the target user after deformation calculation, and it is the final output result of deformation calculation.
[0024] Specifically, this step, executed after configuring the mesh vertex parameters, is a crucial computational step in converting a standard clothing model into a personalized clothing model. The system first establishes a mathematical framework for interpolation deformation calculations, based on algorithms such as radial basis function interpolation, Laplace deformation, or skeleton-driven deformation. In the interpolation deformation calculations, the target displacement vector of the feature control points serves as a hard constraint, ensuring that these key positions must be precisely moved to their target locations, thereby guaranteeing the accurate transformation of the overall clothing structure. For ordinary mesh vertices that are not feature control points, the system calculates their displacements using interpolation algorithms. This interpolation process comprehensively considers the spatial distance relationship between the vertex and each feature control point, the mesh topology connectivity, and the pre-set deformation constraint weights. Mesh vertices closer to feature control points are more significantly affected by the displacement of those control points; mesh vertices with higher deformation constraint weights tend to have their calculated displacements more strictly follow the nearest human body surface. After completing the interpolation deformation based on the target displacement vector, the system further applies an expansion coefficient adjustment value to correct the displacement in the normal direction of each mesh vertex. The correction process calculates the current normal vector of each vertex and moves the vertex along the normal vector direction by a distance corresponding to the expansion coefficient adjustment value. This finely adjusts the local gap between the garment and the human body while maintaining the overall shape of the garment. For vertices in rigid support areas, due to the high deformation constraint weights and the expansion coefficient adjustment values typically set appropriately according to the curvature of the human body, these vertices can closely conform to the surface of the body after deformation while retaining necessary wearing space. For vertices in flexible suspension areas, due to the lower deformation constraint weights, these vertices maintain greater freedom during deformation, simulating the effect of natural garment draping. The interpolation deformation calculation employs an iterative optimization strategy, updating the positions of all mesh vertices in each iteration while applying mesh conformal constraints to prevent excessive mesh distortion or self-intersection. These conformal constraints are implemented using Laplacian smoothing operators, volume preservation terms, or edge preservation terms. The iterative process continues until all vertex positions converge to a stable state or the preset maximum number of iterations is reached.
[0025] Optionally, after the deformation calculation is completed, the system performs a quality check on the generated mesh model, including detecting the presence of geometric defects such as degenerate triangles, flipped normals, and mesh self-intersections. If defects are detected, the system automatically performs mesh repair operations, such as flipping erroneous normals, subdividing overstretched triangles, and removing self-intersecting regions. The mesh model after quality checking and repair is the final target clothing model.
[0026] In some embodiments, interpolation deformation calculation based on the target displacement vector, deformation constraint weights, and expansion coefficient adjustment values can be implemented in various ways. Optionally, the first implementation includes the following steps: First, construct a skeleton structure for the 3D basic mesh model, and generate the central skeleton line of the garment using a central axis transformation or skeleton extraction algorithm, with skeleton nodes corresponding to key structural parts of the garment; Second, bind feature control points to the nearest skeleton node, and calculate the skeleton node transformation matrix corresponding to the target displacement vector of the feature control point, including rotation and translation components; Third, use a skinning algorithm to calculate which skeleton nodes affect each mesh vertex, with the influence weight calculated based on the distance from the vertex to the skeleton node and the mesh topology relationship; the closer the distance or the shorter the topological connection, the greater the influence weight; Fourth, for each mesh vertex, accumulate all transformation matrices affecting the skeleton nodes, and use the influence weights for weighted mixing to obtain the overall transformation matrix of the vertex; Fifth, apply the overall transformation matrix to the original position of the mesh vertex, calculate the transformed position, and adjust the application intensity of the transformation according to the deformation constraint weights, with vertices with high deformation constraint weights fully applying the transformation. The process involves several steps: First, applying transformations to vertices with low weights. Second, calculating the normal vector for each vertex after transformation, obtained by applying the inverse of the transformation matrix to the original normal vector. Third, adjusting the displacement of each vertex along its transformed normal vector, with the displacement distance equal to the adjustment value. Fourth, applying global optimization to the deformed mesh to construct an energy function. This energy function includes the deviation between vertex and target positions, mesh Laplacian smoothing, edge length preservation, and volume preservation. Gradient descent or conjugate gradient methods are used to minimize the energy function. Fifth, real-time mesh quality monitoring during optimization iterations. If the area or minimum angle of a triangle is less than a threshold, the triangle is subdivided locally or its vertices are relocated. Finally, when the energy function converges or reaches the maximum number of iterations, the optimized mesh model is output as the target clothing model. This model satisfies the precise constraints of the feature control points while preserving the geometric quality and local details of the mesh. It is understood that other methods can also be used to perform interpolation deformation calculations, such as free deformation, cage-based deformation, or physics-based elastic body simulation, which are not limited here.
[0027] S105: Load the target clothing model into the 3D human body model, and generate a dynamic try-on display screen based on the physical property parameters of the fabric corresponding to the target clothing. The physical properties parameters of the fabric represent a set of parameters describing the physical characteristics of the clothing material. These include physical quantities such as fabric density, elastic modulus, Poisson's ratio, flexural stiffness, shear stiffness, damping coefficient, and coefficient of friction. These parameters determine the deformation and motion behavior of the fabric under stress. For example, the flexural stiffness of cotton fabric is approximately 0.01-0.05 N·m, and the elastic modulus is approximately 5-15 MPa. The dynamic try-on display screen is used to represent the dynamic visual effect of simulating a target user wearing the target clothing in different postures. It is a real-time rendered image sequence or video generated based on physical simulation.
[0028] Specifically, this step is performed after the target clothing model is generated, aiming to provide the target user with an intuitive and realistic virtual try-on experience. First, the system loads the target clothing model into the virtual scene containing the 3D human body model. This loading process includes sub-steps such as coordinate system alignment, initial position setting, and collider configuration. Coordinate system alignment ensures that the clothing model and the human body model use a unified world coordinate system, avoiding spatial positional deviations. Initial position setting places the clothing model near the outer surface of the human body model, maintaining a reasonable initial gap between the clothing and the human body. This gap is typically set to 5-20 mm, adjusted according to the clothing type and design style. Collision configuration establishes geometric proxies for collision detection for both the clothing model and the human body model. Collision bodies typically use simplified geometric shapes such as spheres, capsules, or convex hulls to improve the computational efficiency of collision detection. After loading is complete, the system initializes the physics simulation engine based on the physical property parameters of the fabric corresponding to the target clothing. The fabric physical property parameters are obtained from the clothing database. Different materials have different physical properties; for example, silk has low bending stiffness and high softness, while denim has high bending stiffness and low softness. The system configures the solver of the physics simulation engine based on these parameters, including setting the spring constants of the mass-spring model, setting the material constitutive relations of the finite element model, and setting the elastic coefficients and friction coefficients of the collision response. After the physics simulation engine starts, it begins to simulate the dynamic behavior of clothing under the action of external forces such as gravity, human motion, and air resistance. The simulation process is carried out in a time-step manner, with each time step typically set to 0.01-0.05 seconds. Within each time step, the system calculates the resultant force on each vertex of the clothing mesh, including gravity, elastic restoring force, damping force, and collision force, and updates the velocity and position of the vertices according to Newton's second law. During the simulation, the system continuously performs collision detection to check whether there is penetration or excessive compression between the clothing mesh and the human mesh. Once a collision is detected, the collision response force is immediately applied to push the clothing vertex away from the human surface, maintaining a reasonable gap distance. The physics simulation enables the clothing to naturally produce corresponding wrinkles, drapes, and flowing effects with changes in human posture. For example, when a person raises their arm, the sleeve will stretch and wrinkle; when a person walks, the skirt will sway periodically. The system simultaneously drives the human body model to execute preset action sequences, such as common postures like standing, walking, turning, and sitting, or specific actions based on the target user's scenario requirements, such as running, jumping, and dancing. While the human body model performs these actions, the physics simulation engine calculates the clothing's response in real time, generating dynamic clothing shape sequences. To present the simulation results as a visual image, the system calls a graphics rendering engine to render the virtual scene.The rendering engine is equipped with a virtual camera, light sources, and material shaders. The virtual camera can be set to a fixed or surround view. The light sources simulate real-world lighting conditions such as sunlight and indoor lighting. The material shaders calculate the surface color, reflection, and shadow effects based on the clothing's texture maps and physical properties. The rendering engine continuously renders the scene at a frame rate of 30-60 frames per second, generating a continuous sequence of image frames to create a smooth, dynamic try-on display.
[0029] S106: Generate a pressure distribution heat map based on the topological distance between the inner surface of the target clothing model and the outer surface of the three-dimensional human body model, and generate clothing recommendation information based on the pressure distribution heat map and the dynamic try-on display screen.
[0030] Topological distance refers to the shortest spatial distance along the normal direction between the inner surface of the target garment model and the outer surface of the 3D human body model, reflecting the degree of fit between the garment and the human body. Pressure distribution heatmaps are two-dimensional or three-dimensional images that visualize the intensity of pressure exerted by the garment on various parts of the body using color coding. Clothing recommendation information refers to guidance information such as purchase suggestions, size adjustment suggestions, or style adjustment suggestions generated based on virtual try-on effect analysis, helping users make purchasing decisions.
[0031] Specifically, this step is performed after the dynamic try-on display is generated. It aims to quantitatively assess the fit and comfort of the clothing and provide users with scientific purchase advice. First, the system calculates the topological distance between the inner surface of the target clothing model and the outer surface of the 3D human body model. This calculation is performed on each vertex of the inner surface of the clothing model. For each vertex, the system emits a ray along the opposite direction of the vertex's normal vector (pointing inwards towards the human body), performs an intersection operation with the outer surface of the human body model, finds the nearest intersection point, and calculates the Euclidean distance from the vertex to the intersection point. This distance is the topological distance at that vertex. If the ray does not intersect the human body surface, it indicates that the vertex is far from the human body, and the topological distance is set to a large positive value or infinity. If the vertex has penetrated the interior of the human body surface, the topological distance is negative, and its absolute value represents the penetration depth. By traversing all vertices of the inner surface of the clothing, the system obtains complete topological distance field data. Based on the topological distance field, the system generates a pressure distribution heatmap. Pressure is inversely proportional to topological distance; a smaller topological distance indicates a closer proximity between the garment and the body, resulting in greater pressure. Conversely, a larger topological distance indicates a greater gap between the garment and the body, with pressure approaching zero. The system establishes a mapping relationship between topological distance and pressure based on the fabric's physical properties, particularly its elastic modulus and Poisson's ratio. This mapping is based on a simplified model of Hooke's Law, assuming that the fabric undergoes elastic deformation under pressure. Pressure equals the elastic modulus multiplied by strain, and strain is calculated as the ratio of the topological distance to the original thickness of the garment. For each garment vertex, the system calculates the corresponding pressure value based on its topological distance and maps this value to a color space, generating a color code. The combination of all vertex pressure color codes forms a pressure distribution heatmap, which can be directly overlaid on the surface of the 3D garment model for visualization or unfolded into a 2D planar view for convenient user viewing. The pressure distribution heatmap visually reveals the pressure distribution of clothing on different parts of the body. Areas with excessively high pressure (red or orange) indicate that the clothing is too tight, which may lead to discomfort or impaired blood circulation; areas with moderate pressure (green or yellow) indicate that the clothing fits well and is comfortable; areas with excessively low or zero pressure (blue) indicate that the clothing is too loose, which may affect aesthetics or function. In addition to the pressure distribution heatmap, the system also comprehensively analyzes visual information from the dynamic try-on display, especially the distribution and shape of clothing folds. The system processes each frame of the dynamic try-on display to extract fold features from the clothing surface. Fold features can be obtained through edge detection, texture analysis, or calculation of normal vector change rate. The system statistically analyzes the number, location, depth, and direction of folds. Too many folds indicate that the clothing is too large or poorly designed; uneven fold distribution indicates uneven stress on certain parts of the clothing. The system also calculates the frequency domain characteristics of the folds, analyzing their spatial frequency through Fourier transform. High-frequency folds (dense small folds) usually indicate that the clothing is too large, while low-frequency folds (sparse large folds) may be a characteristic of the design style.Based on the analysis results of the combined pressure distribution heat map and the dynamic try-on display screen, the system generates clothing recommendation information.
[0032] Based on the above embodiments, as an optional implementation method, the method of calculating the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model in S102 can be specifically implemented through the following steps S201-S203.
[0033] S201: Obtain a standard human body model that matches the 3D base mesh model, and extract the first set of key points on the standard human body model and the second set of key points on the 3D human body model. The standard human body model refers to the standardized human geometric model used in conjunction with the 3D basic mesh model during the production stage. This model has standardized body proportions and dimensions, serving as a benchmark reference for clothing design and modeling. The first keypoint set refers to the set of anatomically significant feature points marked on the surface of the standard human body model. These points correspond to anatomical features such as skeletal landmarks, joint centers, and muscle attachment points. The second keypoint set represents the set of feature points extracted from the surface of the target user's 3D human body model that correspond anatomically to the first keypoint set.
[0034] Specifically, the system reads the standard human body model identification information associated with the 3D basic mesh model from the clothing database, and loads the corresponding standard human body model geometric data based on the identification information. The vertex coordinates, facet topology, semantic region annotations, and other data of the standard human body model are loaded into memory. The system locates pre-annotated anatomical key points on the standard human body model. These key points include anatomical landmarks such as the vertex of the head, the seventh cervical vertebra, the left and right acromion points, the left and right elbow joint points, the left and right wrist joint points, the upper edge of the sternum, the lower edge of the ribs, the umbilicus, the left and right anterior superior iliac spine points, the left and right knee joint points, and the left and right ankle joint points. The 3D coordinates of these key points are directly read from the metadata of the standard human body model or automatically identified through feature detection algorithms. The system extracts the coordinates of all annotated key points to form the first set of key points. For the target user's 3D human body model, the system performs the same key point extraction process, locating key points on the surface of the 3D human body model that have the same anatomical semantics as the standard human body model through semantic region matching and geometric feature analysis. The system analyzes the semantic region segmentation results of a 3D human body model, searches for locations with significant geometric features within each semantic region, and determines the precise coordinates of key points through methods such as curvature analysis, symmetry detection, and boundary recognition. The system then organizes the coordinates of all key points extracted from the 3D human body model into a second set of key points.
[0035] S202: Based on the correspondence between the first set of key points and the second set of key points, calculate the local affine transformation matrix from the standard human body model to the three-dimensional human body model; The local affine transformation matrix is used to describe the spatial coordinate transformation relationship from a local region of the standard human body model to the corresponding local region of the three-dimensional human body model. This matrix contains geometric transformation parameters such as rotation, scaling, shearing, and translation.
[0036] Specifically, the system divides both the standard human body model and the 3D human body model into multiple local regions. The division method is based on the anatomical structure of the human body and semantic region segmentation results, dividing the human body into non-overlapping sub-regions such as the head region, neck region, upper torso region, lower torso region, left upper arm region, right upper arm region, left forearm region, right forearm region, left thigh region, right thigh region, left calf region, and right calf region. The system counts the number of keypoints contained in each local region and calculates the affine transformation matrix for each region separately. For a local region containing n keypoints, the system extracts the coordinates of the n keypoints in the standard human body model to form a source point set, and extracts the corresponding n keypoint coordinates in the 3D human body model to form a target point set. The system constructs a least-squares optimization problem, with the objective function being the sum of squared distances between the positions of the source point set after affine transformation and the positions of the target point set. The affine transformation matrix contains twelve parameters, arranged in a 3x4 matrix form, with the first three columns constituting the linear transformation part and the fourth column being the translation vector. The system obtains the affine transformation matrix parameters that minimize the objective function by solving a system of linear equations in which the partial derivatives of the objective function with respect to the transformation matrix parameters are equal to zero. The solution process employs matrix decomposition, transforming the linear equations into matrix equations, and then calculating the least-squares solution using singular value decomposition or QR decomposition. For local regions with insufficient keypoints, the system expands the region's extent or merges it with adjacent regions, ensuring that each region contains at least four non-coplanar keypoints to guarantee the uniqueness and stability of the affine transformation matrix. The system stores the calculated affine transformation matrix for each local region and establishes a mapping table between region identifiers and transformation matrices.
[0037] S203: Determine the projection positions of the preset feature control points on the 3D basic mesh model onto the standard human body model, and calculate the coordinate difference between each feature control point and the corresponding position on the 3D human body model according to the local affine transformation matrix corresponding to the projection position, so as to obtain the target displacement vector.
[0038] The projection position represents the intersection point obtained by projecting the feature control point onto the surface of the standard human body model along a specific direction. This position determines the spatial relationship between the feature control point and the standard human body model. The coordinate difference refers to the vector difference between the target coordinates of the feature control point after affine transformation and mapping onto the 3D human body model and the initial coordinates of the control point on the 3D basic mesh model.
[0039] Specifically, the system traverses all preset feature control points on the 3D basic mesh model, reading the 3D coordinates and normal vector information of each feature control point. The system emits a projection ray from the feature control point along the opposite direction of the normal vector, pointing towards the inside of the clothing, and performs geometric intersection calculations with the surface of the standard human body model. The intersection calculation uses a ray-triangle intersection test algorithm, traversing all triangular faces of the standard human body model, detecting whether the projection ray intersects with a facet, and recording the intersection point closest to the feature control point as the projection position. The system records the triangular facet index where the projection position is located and the centroid coordinates of the intersection point within that triangle; the centroid coordinates represent the weighted combination coefficient of the intersection point relative to the three vertices of the triangle. The system queries the local region to which the triangular facet containing the projection position belongs, obtaining the corresponding local affine transformation matrix from the region-transformation matrix mapping table. The system inputs the projection position coordinates of the feature control point into the affine transformation matrix for coordinate transformation. The transformation operation multiplies the homogeneous coordinates of the projection position with the affine transformation matrix to obtain the transformed coordinates, which represent the corresponding position of the projection position in the 3D human body model space. The system locates the triangular facet corresponding to the projected position on the 3D human body model. This correspondence is established through semantic region matching and topological alignment. The system uses the centroid coordinates of the projected position to interpolate and calculate the target coordinates of the feature control point on the corresponding triangle of the 3D human body model. The system calculates the difference vector between the target coordinates and the initial coordinates of the feature control point on the 3D base mesh model. The three components of this difference vector represent the displacement in the x, y, and z directions, respectively. The system uses the calculated difference vector as the target displacement vector of the feature control point and associates it with the control point index for storage.
[0040] Based on the above embodiments, as an optional implementation method, the body semantic region includes a rigid support region and a flexible overhang region. The method of determining the deformation constraint weight of each mesh vertex according to the type of the body semantic region in S103 can be specifically implemented through the following steps S301-S303.
[0041] S301: Obtain the preset region weight configuration table and determine the body semantic region to which the mesh vertex belongs; The region weight configuration table represents a data structure that maps predefined body semantic region types to deformation constraint weight values. This table uses the region type identifier as an index to store the corresponding weight parameter settings.
[0042] Specifically, the system loads a region weight configuration table from a configuration file or database. This table contains the identifier codes and corresponding weight value ranges for all body semantic region types. The configuration table categorizes body semantic regions according to their mechanical characteristics. Rigid support regions include areas requiring close clothing fit for structural support, such as the shoulders, upper chest, and scapular region of the back. Flexible draping regions include areas allowing clothing to drape naturally, such as the abdomen, skirt hem, and loose cuffs. The system reads the body semantic region attribution information marked on mesh vertices in previous steps; this information records the region identifier code corresponding to the vertex. The system matches the vertex's region identifier code with the index in the configuration table to locate the record entry for that region. The system reads the region type classification label in that record entry to determine whether the region belongs to a rigid support region, a flexible draping region, or another type of region.
[0043] S302: If the mesh vertex is located in a rigid support region, then set the deformation constraint weight of the mesh vertex to the first weight value; The first weight value represents the deformation constraint weight value assigned to the mesh vertex of the rigid support region. This value is in the high range of the weight value range, reflecting the constraint strength that the clothing needs to closely follow the deformation of the human body surface.
[0044] Specifically, the system detects the region type judgment results of the mesh vertices and identifies the set of vertices marked as rigid support regions. The system reads the weight parameter corresponding to the rigid support region from the region weight configuration table, which is defined as the first weight value. The value of the first weight value ranges from 0.8 to 1.0, with the value closer to 1.0 indicating a higher constraint strength. The system directly assigns the first weight value to the identified rigid support region mesh vertices, and this assignment operation writes the weight value into the vertex's attribute data structure. The high weight setting of the rigid support region ensures that the displacement of the vertex is close to or equal to the displacement of the nearest human body surface point during subsequent interpolation deformation calculations, maintaining close contact between the clothing and the human body.
[0045] S303: If a mesh vertex is located in a flexible overhang region, the deformation constraint weight of the mesh vertex is set to the second weight value, which is less than the first weight value.
[0046] The second weight value represents the deformation constraint weight value assigned to the mesh vertices of the flexible overhang region. This value is in the low range of the weight value range and is less than the first weight value, reflecting the constraint characteristics of the clothing in maintaining the degree of freedom of deformation in this region.
[0047] Specifically, deformation constraint weights are assigned to mesh vertices belonging to the flexible overhang region, allowing these vertices to retain a large degree of deformation freedom during deformation. The system detects the region type judgment results of the mesh vertices and identifies the set of vertices marked as flexible overhang regions. The system reads the weight parameter corresponding to the flexible overhang region from the region weight configuration table, which is defined as the second weight value. The value of the second weight value ranges from 0.2 to 0.5, significantly lower than the first weight value, and the difference between the two is usually not less than 0.3. The system assigns the second weight value to the identified flexible overhang region mesh vertices, updating the weight attributes of the vertices. The low weight setting of the flexible overhang region ensures that the displacement of the vertices during interpolation deformation calculation is only partially affected by the deformation of the human body surface, mainly controlled by gravity and the internal tension of the fabric, thus producing a natural drooping and fluttering effect. The system verifies the relationship between the second weight value and the first weight value, confirming that the second weight value is strictly less than the first weight value, satisfying the logical constraints of weight hierarchy.
[0048] Optionally, if the mesh vertex is located in the transition region between the rigid support region and the flexible overhang region, the second weight value and the first weight value are smoothed, and the deformation constraint weight of the mesh vertex is set to the third weight value.
[0049] The transition region represents the intermediate zone between the rigid support region and the flexible overhang region, where the mesh vertices are spatially close to the boundaries of both types of regions. Smoothing involves continuous interpolation or blending operations on the weight values of adjacent regions to eliminate abrupt changes in weight distribution at region boundaries, resulting in a gradual transition in weight distribution. The third weight value represents the deformation constraint weight of the mesh vertices in the transition region. This weight value lies between the second weight value of the rigid support region and the first weight value of the flexible overhang region, reflecting the intermediate state where the transition region possesses characteristics of both regions.
[0050] Specifically, the system determines whether a mesh vertex is located in the transition region based on the distance from the vertex to the boundaries of both the rigid support region and the flexible overhang region. The system calculates the distance from the vertex to the nearest boundary point of the rigid support region as the rigid region distance, and the distance from the vertex to the nearest boundary point of the flexible overhang region as the flexible region distance. The system sets a spatial range threshold for the transition region; when both the rigid and flexible region distances of a mesh vertex are less than this threshold, the vertex is determined to be located in the transition region. The system reads the second weight value corresponding to the rigid support region and the first weight value corresponding to the flexible overhang region as input parameters for smoothing. The system calculates a mixing coefficient based on the relative position of the mesh vertex within the transition region. The mixing coefficient reflects the degree to which the vertex leans towards the rigid or flexible region. When calculating the mixing coefficient, the system uses the sum of the rigid and flexible region distances as a normalization base, divides the rigid region distance by this base to obtain the flexible weight ratio, and divides the flexible region distance by this base to obtain the rigid weight ratio. The system uses a mixing coefficient to perform a weighted average of the first and second weight values. The first weight value is multiplied by the proportion of the flexible weight, and the second weight value is multiplied by the proportion of the rigid weight. The sum of these two products constitutes the third weight value. The system assigns the calculated third weight value to the mesh vertex as its deformation constraint weight. The system performs the above smoothing process on all mesh vertices in the transition region to ensure that the weight distribution changes continuously in space, and that there are no abrupt changes in the weight values of adjacent vertices.
[0051] Based on the above embodiments, as an optional implementation method, the method of calculating the expansion coefficient adjustment value of each mesh vertex in the normal direction according to the local curvature characteristics in S103 can be implemented through the following steps S401-S402.
[0052] S401: Obtain the local curvature features of the body semantic region corresponding to the mesh vertex, and calculate the curvature value of the local curvature features; Among them, the curvature value represents the quantitative result of the local curvature feature. This value reflects the degree of curvature of the surface of the body semantic region and is calculated through mathematical analysis of the geometric shape of the region surface.
[0053] Specifically, the system reads the body semantic region attribution information of the mesh vertices marked in the previous steps to determine the region identifier corresponding to each vertex. The system extracts the local curvature features of the body semantic region from the region attribute data of the 3D human model. These features were calculated and stored during the construction of the 3D human model. The local curvature features contain the curvature distribution data of the region's surface, recording the curvature parameters of each surface point within the region. The system analyzes the local curvature feature data to extract curvature parameters representing the overall bending characteristics of the region. Extraction methods include calculating the statistics of the curvature of all surface points within the region and taking the average as the representative value of the overall curvature of the region, or selecting the curvature at the center of the region as the feature curvature. The system records the extracted curvature parameters as the curvature values of the region. Positive curvature values indicate that the region's surface bulges outward, negative curvature values indicate that the region's surface is concave inward, and curvature values close to zero indicate that the region's surface is relatively flat.
[0054] S402: Determine the geometric convexity and concavity characteristics of the region where the mesh vertex is located based on the curvature value, determine the adjustment vector corresponding to the curvature value from the preset expansion coefficient adjustment range, and obtain the expansion coefficient adjustment value of the mesh vertex in the normal direction.
[0055] Among them, geometric convexity / concavity characteristics represent the convex or concave state of the surface of the body semantic region in spatial morphology. This characteristic is determined by analyzing the sign and magnitude of the curvature value. The expansion coefficient adjustment range refers to the pre-defined range of expansion coefficient adjustment values. This range is divided into multiple sub-ranges for different geometric convexity / concavity characteristics and curvature values, and each sub-range corresponds to a specific adjustment vector. The adjustment vector represents the expansion coefficient adjustment value in spatial direction. This vector is along the normal direction of the mesh vertex, and its magnitude is the size of the expansion coefficient adjustment value.
[0056] Based on the above embodiments, as an optional implementation method, the method of determining the geometric convexity and concavity characteristics of the region where the mesh vertex is located according to the curvature value in S402, determining the adjustment vector corresponding to the curvature value from the preset expansion coefficient adjustment range, and obtaining the expansion coefficient adjustment value of the mesh vertex in the normal direction can be specifically implemented through the following steps S4021-S4023.
[0057] S4021: If the curvature value is greater than the preset convexity threshold, the first adjustment vector corresponding to the curvature value will be determined from the preset expansion coefficient adjustment range, and the expansion coefficient adjustment value of the mesh vertex in the normal direction will be increased according to the first adjustment vector. The convexity threshold represents the curvature value limit for determining whether the surface of a semantic region of the body is significantly convex. When the curvature value of a region exceeds this threshold, the region is considered a significant convex region. The first adjustment vector represents the adjustment parameter vector selected from the expansion coefficient adjustment range for the convex region. This vector points outward along the normal and is used to increase the gap distance between the clothing and the convex part.
[0058] Specifically, the system compares the curvature value of the region corresponding to a mesh vertex with a preset convexity threshold. The convexity threshold is preset based on human anatomy and clothing design experience; different body parts have different thresholds, with the chest region having a higher threshold than the waist region. The system determines if the curvature value exceeds the convexity threshold. If the result is true, the region where the mesh vertex is located is confirmed to be a region with significant convexity. The system accesses the sub-range set for the convex region in the expansion coefficient adjustment range configuration data. The adjustment values in this sub-range are all positive and relatively large. The system selects the corresponding adjustment value from the adjustment range based on the degree to which the curvature value exceeds the convexity threshold. A larger curvature value indicates a more severe convexity, and a larger adjustment value is selected. The system performs a dot product operation between the selected adjustment value and the unit vector of the mesh vertex normal vector to construct a first adjustment vector. The three components of this vector represent the adjustment amount in the three coordinate axis directions. The system reads the current baseline value of the expansion coefficient adjustment for the mesh vertex, adds the magnitude of the first adjustment vector to the baseline value, and obtains the increased expansion coefficient adjustment value.
[0059] S4022: If the curvature value is less than the preset concavity threshold, the second adjustment vector corresponding to the curvature value will be determined from the preset expansion coefficient adjustment range, and the expansion coefficient adjustment value of the mesh vertex in the normal direction will be reduced according to the second adjustment vector. The indentation threshold represents the curvature value limit for determining whether the surface of a semantic area of the body is significantly indented. When the curvature value of a region is lower than this threshold, the region is considered to be a significantly indented area. The second adjustment vector represents the adjustment parameter vector selected from the expansion coefficient adjustment range for the indented area. This vector is used to reduce the gap distance between the clothing and the indented part.
[0060] Specifically, the system compares the curvature value of the region corresponding to the mesh vertex with a preset concavity threshold. The concavity threshold is negative, and its absolute value reflects the standard for judging the degree of concavity. The absolute value of the concavity threshold in the waist concavity region is usually greater than that in the armpit region. The system determines whether the curvature value is less than the concavity threshold. When the result is true, it confirms that the region where the mesh vertex is located belongs to a region with obvious concavity characteristics. The system accesses the sub-range set for the concavity region in the expansion coefficient adjustment range configuration data. The adjustment value of this sub-range is small or negative. The system selects the corresponding adjustment value from the adjustment range according to the degree of deviation of the curvature value from the concavity threshold. The larger the absolute value of the negative curvature value, the deeper the concavity. The smaller the selected adjustment value or the larger the absolute value of the negative value, the better. The system performs a dot product operation between the selected adjustment value and the unit vector of the mesh vertex normal vector to construct a second adjustment vector. The system reads the current expansion coefficient adjustment value baseline value of the mesh vertex, subtracts the magnitude of the second adjustment vector from the baseline value, and obtains the reduced expansion coefficient adjustment value. Reducing the operation makes the garment mesh closer to the human body surface at the apex, adapting to the concave shape of the recessed area, and avoiding the garment from having excess gaps in the recessed area that affect the appearance of the garment.
[0061] S4023: If the curvature value is less than or equal to the convex threshold and greater than or equal to the concave threshold, then the expansion coefficient adjustment value of the mesh vertex is calculated by linear interpolation based on the difference between the curvature value and the preset reference curvature.
[0062] The reference curvature represents the standard curvature reference value of a body surface that is neither significantly convex nor significantly concave. It is usually set to zero or a value close to zero, representing a relatively flat surface. Linear interpolation calculation refers to the method of calculating an intermediate value proportionally between two known values based on the positional relationship of the independent variable. This method is used to achieve a smooth transition in determining the expansion coefficient adjustment value.
[0063] Specifically, the system determines whether the curvature value of the region corresponding to a mesh vertex simultaneously satisfies both the condition of being less than or equal to a convexity threshold and greater than or equal to a concaveness threshold. When both conditions are met, the region is confirmed to be a flat or slightly curved transition region. The system reads a preset reference curvature value, which represents the curvature state of an ideal flat surface. The system calculates the difference between the curvature value and the reference curvature, which reflects the degree of deviation of the actual surface from the ideal flat surface. A positive difference indicates a slightly convex surface, and a negative difference indicates a slightly concave surface. The system establishes a linear mapping relationship between the difference and the expansion coefficient adjustment value. This mapping relationship defines a reference expansion coefficient adjustment value corresponding to a difference of zero, a larger adjustment value corresponding to a difference close to the convexity threshold, and a smaller adjustment value corresponding to a difference close to the concaveness threshold. The system calculates the adjustment value proportionally based on the relative position of the difference between the curvature value and the reference curvature within the range from the concaveness threshold to the convexity threshold. The calculation process normalizes the difference to the range of zero to one, and then maps it to the range of adjustment values to obtain the expansion coefficient adjustment value of the mesh vertex. Linear interpolation ensures that the expansion coefficient adjustment value changes continuously with the curvature value, avoiding abrupt changes at the threshold boundary and resulting in a smooth transition of the void distribution on the garment surface. The system stores the calculated expansion coefficient adjustment value in the mesh vertex attributes, completing the expansion coefficient configuration of the vertices in the transition region.
[0064] Based on the above embodiments, as an optional implementation method, the method of generating clothing recommendation information based on the pressure distribution heat map and dynamic try-on display screen in S106 can be implemented through the following steps S501-S504.
[0065] S501: Obtain the scenario demand tags of the target user, and determine the stress threshold of the target user based on the scenario type corresponding to the scenario demand tags; The scenario requirement label represents descriptive information about the target user's intended use of the clothing, indicating the activity or environment in which the user plans to wear the clothing. Scenario type refers to the classification of clothing usage situations based on the scenario requirement label; different scenario types have different requirements for clothing comfort and fit. The pressure threshold represents the acceptable upper limit of pressure exerted on the body by the clothing in a specific scenario type; pressure exceeding this threshold can lead to discomfort or impaired function.
[0066] Specifically, the system reads scenario requirement tags from the target user's input information or user profile. These tags, stored in text or encoded form, describe the user's clothing scenario. The system accesses a scenario type classification database, which maps various scenario requirement tags to standardized scenario type categories. The system uses a tag matching algorithm to associate the user's scenario requirement tags with the scenario types in the database, determining the corresponding scenario type category. The system loads a configuration table that maps scenario types to stress thresholds. This configuration table presets a reasonable stress threshold range for each scenario type. The stress threshold for everyday casual scenarios is set lower, allowing clothing to remain loose and comfortable. The stress threshold for formal business scenarios is set moderately, requiring clothing to fit well but not be too tight. The stress threshold for sports and fitness scenarios is relatively strict, requiring even pressure distribution and moderate overall pressure to avoid hindering physical activity or affecting blood circulation. Based on the determined scenario type, the system queries the corresponding stress threshold value from the configuration table.
[0067] S502: Calculate the comprehensive matching score by statistically analyzing the proportion of overpressure areas exceeding the pressure threshold in the pressure distribution heatmap and combining it with the frequency domain characteristics of clothing folds in the dynamic try-on display. The overpressure area ratio represents the ratio of the total area of regions where the pressure value exceeds the pressure threshold in the pressure distribution heatmap to the overall surface area of the garment. This ratio reflects the severity of the overly tight clothing problem. Frequency domain features refer to the characteristic parameters of garment folds in the spatial frequency dimension extracted through frequency domain analysis methods such as Fourier transform. These features describe the density and spatial distribution pattern of the folds. The comprehensive matching score represents a quantitative score that comprehensively evaluates the fit between the garment and the user's body shape. This score integrates multiple evaluation dimensions such as the rationality of the pressure distribution and the naturalness of the fold distribution.
[0068] Specifically, the system iterates through all pixels or vertices in the pressure distribution heatmap, reading the pressure value at each location. The system compares the pressure value at each location with the pressure threshold determined in the previous step, marking locations where the pressure value exceeds the threshold as overpressure points. The system calculates the surface area corresponding to all overpressure points by accumulating the area of the grid patch or pixel associated with each overpressure point. The system calculates the total surface area of the clothing model by accumulating the areas of all grid patches. The system divides the total area of the overpressure region by the total surface area of the clothing to obtain the percentage of the overpressure region area. The system performs wrinkle detection on keyframe images of the dynamic try-on display, extracting the wrinkle contours of the clothing surface using an edge detection algorithm. The system performs a two-dimensional Fourier transform on the extracted wrinkle images, converting the spatial domain wrinkle distribution into a frequency domain spectral distribution. The system analyzes the energy distribution of different frequency components in the spectrum, extracting frequency domain feature parameters such as the proportion of high-frequency components, the location of the dominant frequency, and the concentration of spectral energy. A high proportion of high-frequency components indicates dense and fine wrinkles, while a high proportion of low-frequency components indicates sparse and wide wrinkles. The system constructs a comprehensive matching score function, which takes the proportion of overpressure area and the frequency domain characteristics of wrinkles as input variables. The scoring function assigns a negative weight to the proportion of overpressure area; a larger proportion results in a lower score. The scoring function analyzes the frequency domain characteristics of wrinkles; moderate low-frequency wrinkles have little impact on the score, while excessive high-frequency wrinkles or an excessive total number of wrinkles lower the score. The system adjusts the weights of each evaluation dimension according to the scene type; motion scenes focus more on pressure distribution, while formal scenes focus more on wrinkle control. The system summarizes the weighted scores of each dimension, normalizes them to a score range of zero to one hundred, and obtains the comprehensive matching score.
[0069] S503: If the overall matching score is higher than or equal to the preset score standard, then generate recommended purchase information; The scoring standard represents the overall matching score threshold for determining whether clothing is suitable for recommended purchase. A score that meets or exceeds this standard indicates that the clothing fits the user's body type well. Recommended purchase information refers to system-generated prompts suggesting the user purchase the clothing, which includes explanations of the clothing's suitability advantages and guidance on the purchase process.
[0070] Specifically, the system reads the overall matching score calculated in the previous step. The system loads preset scoring standard parameters, which are set based on business experience and user satisfaction statistics, typically at 70 or 80 points. The system compares the score with the standard value to determine if the overall matching score is higher than or equal to the preset score standard. If the result is true, the system confirms that the clothing matches the target user's body type well and is suitable for purchase. The system generates text content for the purchase recommendation, including a detailed display of the overall matching score, emphasizing the clothing's advantages in terms of reasonable pressure distribution and good wrinkle control. The system analyzes the pressure distribution heatmap, identifies body parts with even and moderate pressure distribution, and explains in the recommendation information that the clothing fits ideally in these areas. The system extracts screenshots from the dynamic try-on display showing the clothing's aesthetically pleasing appearance and adds these images to the purchase recommendation information as visual evidence. The system adds purchase guidance to the purchase recommendation information, including interactive elements such as product details links, add-to-cart buttons, and size confirmation prompts. The system displays the generated purchase recommendations in a prominent position on the user interface, along with a pressure distribution heatmap and dynamic try-on display, to provide users with comprehensive support for their purchase decisions.
[0071] S504: If the overall matching score is lower than the preset score standard, size adjustment suggestions or style adjustment suggestions will be generated based on the location of the overpressure area.
[0072] The size adjustment advice provides guidance on choosing the right size for clothing that doesn't fit the overall dimensions. This advice suggests users choose a larger or smaller size to improve the fit. The style adjustment advice recommends alternative styles that are better suited to the user's body type, addressing issues where the clothing design doesn't match the user's body shape.
[0073] Specifically, the system determines whether the overall matching score is lower than a preset score standard. If the result is true, it confirms that the clothing has a fit problem and requires adjustment suggestions. The system analyzes the spatial distribution characteristics of overpressure areas in the pressure distribution heatmap, extracting the location coordinates and boundaries of the overpressure areas. The system statistically analyzes the distribution of overpressure areas in each body semantic region, calculating the proportion of the overpressure area in each body semantic region to the total area of that region. The system determines the distribution pattern of overpressure areas, identifying whether the overpressure is a global or localized distribution. When overpressure areas are evenly distributed across multiple major body parts such as the chest, waist, hips, and thighs, and the proportion of overpressure area in each part exceeds a set proportion, the system determines it to be an overall size too small problem. The system generates size adjustment suggestions, recommending that the user choose a larger clothing size, and specifying in the suggestions which specific parts of the current size are too tight. The system predicts the pressure distribution effect of larger-sized clothing, estimating the proportion of overpressure area after adjustment based on the correspondence between size and body dimensions, and displays the predicted improvement effect in the suggestion information. When overpressure is concentrated in a few specific areas, while pressure in other areas is normal or low, the system identifies this as a localized mismatch, stemming from a structural mismatch between the clothing design and the user's body shape. The system generates style adjustment suggestions, identifies the body parts with concentrated overpressure, and retrieves alternative styles optimized for those body features from the clothing database. The system applies collaborative filtering or content-based recommendation algorithms to calculate the predicted fit scores of other clothing styles based on the user's body shape parameters and the style attributes of the current garment. The system sorts candidate garments by their predicted fit scores, selects the top few as recommendations, and displays their thumbnails, names, and predicted fit scores in the style adjustment suggestions.
[0074] The following are system embodiments of this application, which can be used to execute the method embodiments of this application. For details not disclosed in the system embodiments of this application, please refer to the method embodiments of the application.
[0075] Please see Figure 2 This illustration shows a schematic diagram of the structure of an adaptive try-on display and recommendation system based on 3D clothing, provided in an exemplary embodiment of this application. The system can be implemented through software, hardware, or a combination of both, forming all or part of the system. The adaptive try-on display and recommendation system based on 3D clothing includes: The initialization module is used to acquire the target user's body data, construct a three-dimensional human body model, and perform semantic region segmentation on the three-dimensional human body model to obtain multiple body semantic regions and their corresponding local curvature features. The clothing instruction processing module is used to respond to the clothing selection instruction of the target user, retrieve the three-dimensional basic mesh model of the target clothing, and calculate the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model. The model parameter processing module is used to identify the mesh vertices in the 3D basic mesh model that correspond to each body semantic region, determine the deformation constraint weight of each mesh vertex according to the type of body semantic region, and calculate the expansion coefficient adjustment value of each mesh vertex in the normal direction according to the local curvature characteristics. The model adjustment module is used to perform interpolation deformation calculations on the three-dimensional basic mesh model based on the target displacement vector, deformation constraint weights, and expansion coefficient adjustment values to generate a target clothing model that is adapted to the target user. The try-on display module is used to load the target clothing model onto the 3D human body model and generate a dynamic try-on display screen based on the physical property parameters of the fabric corresponding to the target clothing. The recommended output module is used to generate a pressure distribution heat map based on the topological distance between the inner surface of the target clothing model and the outer surface of the 3D human body model, and to generate clothing recommendation information based on the pressure distribution heat map and the dynamic try-on display screen.
[0076] This application also provides a computer storage medium that can store multiple instructions. The instructions are adapted to be loaded and executed by a processor as described in the above embodiments for the adaptive try-on display and recommendation method based on 3D clothing. For the specific execution process, please refer to the detailed description of the embodiments, which will not be repeated here.
[0077] Please see Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 3 As shown, the electronic device 300 may include: at least one processor 301, at least one network interface 304, user interface 303, memory 305, and at least one communication bus 302.
[0078] The communication bus 302 is used to enable communication between these components.
[0079] The user interface 303 may include a display screen and a camera.
[0080] The network interface 304 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface).
[0081] The processor 301 may include one or more processing cores. The processor 301 connects to various parts of the server using various interfaces and lines, and performs various server functions and processes data by running or executing instructions, programs, code sets, or instruction sets stored in the memory 305, and by calling data stored in the memory 305. Optionally, the processor 301 may be implemented using at least one hardware form of digital signal processing, field-programmable gate array, or programmable logic array. The processor 301 may integrate one or more of the following: a central processing unit (CPU), a graphics processing unit (GPU), and a modem. The CPU primarily handles the operating system, user interface, and applications; the GPU is responsible for rendering and drawing the content required for display; and the modem handles wireless communication. It is understood that the modem may also not be integrated into the processor 301 and may be implemented as a separate chip.
[0082] The memory 305 may include random access memory (RAM) or read-only memory (ROM). Optionally, the memory 305 may include a non-transitory computer-readable medium. The memory 305 may be used to store instructions, programs, code, code sets, or instruction sets. The memory 305 may include a program storage area and a data storage area. The program storage area may store instructions for implementing an operating system, instructions for at least one function (such as touch functionality, sound playback functionality, image playback functionality, etc.), instructions for implementing the various method embodiments described above, etc.; the data storage area may store data involved in the various method embodiments described above, etc. Optionally, the memory 305 may also be at least one storage device located remotely from the aforementioned processor 301. Figure 3 As shown, the memory 305, which serves as a computer storage medium, may include an operating system, a network communication module, a user interface module, and an application for an adaptive try-on display and recommendation method based on 3D clothing.
[0083] exist Figure 3 In the electronic device 300 shown, the user interface 303 is mainly used to provide an input interface for the user and to obtain the user input data; while the processor 301 can be used to call an application stored in the memory 305 for an adaptive try-on display recommendation method based on 3D clothing. When executed by one or more processors, the electronic device executes one or more methods as described in the above embodiments.
[0084] An electronic device readable storage medium stores instructions that, when executed by one or more processors, cause the electronic device to perform one or more methods as described in the above embodiments.
[0085] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.
[0086] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
[0087] In the several embodiments provided in this application, it should be understood that the disclosed apparatus can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the shown or discussed mutual couplings or direct couplings or communication connections may be through some service interfaces; indirect couplings or communication connections between apparatuses or units may be electrical or other forms.
[0088] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0089] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0090] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage device (CMD). Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned memory includes various media capable of storing program code, such as USB flash drives, portable hard drives, magnetic disks, or optical disks.
[0091] The above are merely exemplary embodiments of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. Those skilled in the art will readily conceive of other embodiments of this disclosure upon considering the specification and practical application disclosed herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described in this disclosure.
Claims
1. An adaptive try-on display and recommendation method based on 3D clothing, characterized in that, The method includes: Obtain the target user's body data, construct a three-dimensional human body model, and perform semantic region segmentation on the three-dimensional human body model to obtain multiple body semantic regions and their corresponding local curvature features. In response to the clothing selection instruction of the target user, the three-dimensional basic mesh model of the target clothing is retrieved, and the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model is calculated. Identify the mesh vertices in the three-dimensional basic mesh model corresponding to each of the body semantic regions, determine the deformation constraint weights of each of the mesh vertices according to the type of the body semantic region, and calculate the expansion coefficient adjustment value of each of the mesh vertices in the normal direction according to the local curvature features; Based on the target displacement vector, the deformation constraint weight, and the expansion coefficient adjustment value, the three-dimensional basic mesh model is interpolated and deformed to generate a target clothing model that is adapted to the target user. The target clothing model is loaded into the three-dimensional human body model, and a dynamic try-on display screen is generated based on the physical property parameters of the fabric corresponding to the target clothing. A pressure distribution heatmap is generated based on the topological distance between the inner surface of the target clothing model and the outer surface of the three-dimensional human body model, and clothing recommendation information is generated based on the pressure distribution heatmap and the dynamic try-on display screen.
2. The method according to claim 1, characterized in that, The calculation of the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model includes: Obtain a standard human body model that matches the three-dimensional basic mesh model, and extract the first set of key points on the standard human body model and the second set of key points on the three-dimensional human body model; Based on the correspondence between the first set of key points and the second set of key points, calculate the local affine transformation matrix from the standard human body model to the three-dimensional human body model; The projection positions of the preset feature control points on the three-dimensional basic mesh model onto the standard human body model are determined, and the coordinate difference between each feature control point and its corresponding position on the three-dimensional human body model is calculated based on the local affine transformation matrix corresponding to the projection position to obtain the target displacement vector.
3. The method according to claim 1, characterized in that, The body semantic region includes a rigid support region and a flexible overhang region. Determining the deformation constraint weights of each mesh vertex based on the type of the body semantic region includes: Obtain the preset region weight configuration table and determine the body semantic region to which the mesh vertex belongs; If the mesh vertex is located in the rigid support region, then the deformation constraint weight of the mesh vertex is set to the first weight value; If the mesh vertex is located in the flexible overhang region, the deformation constraint weight of the mesh vertex is set to a second weight value, which is less than the first weight value.
4. The method according to claim 3, characterized in that, The method further includes: If the mesh vertex is located in the transition region between the rigid support region and the flexible overhang region, then the second weight value and the first weight value are smoothed, and the deformation constraint weight of the mesh vertex is set to the third weight value.
5. The method according to claim 1, characterized in that, The step of calculating the expansion coefficient adjustment value of each mesh vertex in the normal direction based on the local curvature characteristics includes: Obtain the local curvature features of the body semantic region corresponding to the mesh vertex, and calculate the curvature value of the local curvature features; Based on the curvature value, the geometric convexity and concavity characteristics of the region where the mesh vertex is located are determined. The adjustment vector corresponding to the curvature value is determined from the preset expansion coefficient adjustment range, and the expansion coefficient adjustment value of the mesh vertex in the normal direction is obtained.
6. The method according to claim 5, characterized in that, The step of determining the geometric convexity / concave characteristics of the region where the mesh vertex is located based on the curvature value, determining the adjustment vector corresponding to the curvature value from a preset range of expansion coefficient adjustment, and obtaining the expansion coefficient adjustment value of the mesh vertex in the normal direction includes: If the curvature value is greater than the preset convexity threshold, then the first adjustment vector corresponding to the curvature value will be determined from the preset expansion coefficient adjustment range, and the expansion coefficient adjustment value of the mesh vertex in the normal direction will be increased according to the first adjustment vector. If the curvature value is less than a preset concavity threshold, a second adjustment vector corresponding to the curvature value will be determined from a preset range of expansion coefficient adjustment, and the expansion coefficient adjustment value of the mesh vertex in the normal direction will be reduced according to the second adjustment vector. If the curvature value is less than or equal to the protrusion threshold and greater than or equal to the concavity threshold, then the expansion coefficient adjustment value of the mesh vertex is calculated by linear interpolation based on the difference between the curvature value and the preset reference curvature.
7. The method according to claim 1, characterized in that, The process of generating clothing recommendation information based on the pressure distribution heatmap and the dynamic try-on display includes: Obtain the scenario demand tags of the target user, and determine the stress threshold of the target user based on the scenario type corresponding to the scenario demand tags; The percentage of overpressure areas exceeding the pressure threshold in the pressure distribution heatmap is statistically analyzed, and the overall matching score is calculated by combining the frequency domain characteristics of clothing folds in the dynamic try-on display. If the overall matching score is higher than or equal to the preset score standard, recommended purchase information is generated; If the overall matching score is lower than the preset score standard, size adjustment suggestion information or style adjustment suggestion information will be generated based on the location of the overpressure area.
8. An adaptive try-on display and recommendation system based on 3D clothing, characterized in that, The system includes: An initialization module is used to acquire the target user's body data, construct a three-dimensional human body model, and perform semantic region segmentation on the three-dimensional human body model to obtain multiple body semantic regions and their corresponding local curvature features. The clothing instruction processing module is used to respond to the clothing selection instruction of the target user, retrieve the three-dimensional basic mesh model of the target clothing, and calculate the target displacement vector corresponding to the preset feature control points on the three-dimensional basic mesh model. The model parameter processing module is used to identify the mesh vertices in the three-dimensional basic mesh model corresponding to each of the body semantic regions, determine the deformation constraint weights of each of the mesh vertices according to the type of the body semantic region, and calculate the expansion coefficient adjustment value of each of the mesh vertices in the normal direction according to the local curvature characteristics. The model adjustment module is used to perform interpolation deformation calculation on the three-dimensional basic mesh model based on the target displacement vector, the deformation constraint weight, and the expansion coefficient adjustment value, so as to generate a target clothing model that is adapted to the target user. The try-on display module is used to load the target clothing model onto the three-dimensional human body model and generate a dynamic try-on display screen based on the physical property parameters of the fabric corresponding to the target clothing. The recommended output module is used to generate a pressure distribution heat map based on the topological distance between the inner surface of the target clothing model and the outer surface of the three-dimensional human body model, and to generate clothing recommendation information based on the pressure distribution heat map and the dynamic try-on display screen.
9. A computer storage medium, characterized in that, The computer storage medium stores a plurality of instructions, which are adapted to be loaded by a processor and executed as described in any one of claims 1 to 7.
10. An electronic device, characterized in that, The device includes a processor, a memory, and a transceiver, wherein the memory is used to store instructions, the transceiver is used to communicate with other devices, and the processor is used to execute the instructions stored in the memory to cause the electronic device to perform the method as described in any one of claims 1 to 7.