Human body size measurement method, electronic device, and computer storage medium

By using a human body mesh model and weight matrix calculation, combined with a depth camera and SMPL parametric model, the problem of inaccurate positioning of human body parts by 3D scanning equipment is solved, achieving efficient multi-body measurement, which is suitable for fitness and clothing customization.

CN115346017BActive Publication Date: 2026-03-20MIDEA GRP (SHANGHAI) CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-24
Publication Date
2026-03-20

AI Technical Summary

Technical Problem

Existing 3D scanning equipment is inaccurate in locating human body parts, is difficult to locate, and has low measurement efficiency, making it unable to effectively measure multiple human body parts.

Method used

By employing a human body mesh model, determining multiple human body mesh vertices and marker points, calculating the coordinates of the marker points using a weight matrix, and combining a depth camera and the SMPL parametric model, high-precision measurement of human body dimensions is achieved.

Benefits of technology

It improves the accuracy and efficiency of human body part positioning and measurement, increases the number of measurable human body parts, and provides more accurate dimensional information for fitness and clothing customization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115346017B_ABST
    Figure CN115346017B_ABST
Patent Text Reader

Abstract

The application discloses a human body size measurement method, an electronic device, a computer storage medium, and a computer program product. The human body size measurement method comprises the following steps: determining a human body grid model, wherein the human body grid model comprises a plurality of human body grid vertices; determining a plurality of human body marker points of the human body grid model based on the plurality of human body grid vertices; and measuring the human body size based on the plurality of human body marker points. In this way, the accuracy of human body part positioning and the efficiency of human body part measurement can be improved, and the number of measurable human body parts can be increased.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer vision, in particular to a human body size measurement method, an electronic device, a computer storage medium and a computer program product. BACKGROUND

[0002] Traditional human body part size measurement methods generally use manual measurement methods. Later, due to the rapid development of three-dimensional scanning related technologies and hardware, various three-dimensional scanning devices are now used to measure the human body more commonly. However, the existing method has the problems of inaccurate positioning of the human body part, high positioning difficulty, low measurement efficiency, and small number of measurable human body parts. SUMMARY

[0003] The present application provides a human body size measurement method, an electronic device, a computer storage medium and a computer program product to improve the accuracy of human body part positioning and the efficiency of human body part measurement, and increase the number of measurable human body parts.

[0004] To solve the above technical problems, the present application provides a human body size measurement method. The human body size measurement method comprises: determining a human body grid model, the human body grid model comprising a plurality of human body grid vertices; determining a plurality of human body marker points of the human body grid model based on the plurality of human body grid vertices; and measuring the human body size based on the plurality of human body marker points.

[0005] The method comprises: determining a vertex coordinate matrix based on the coordinates of the plurality of human body grid vertices, each row of the vertex coordinate matrix corresponding to a vertex coordinate; multiplying a weight matrix and the vertex coordinate matrix to obtain a marker point coordinate matrix of a plurality of marker points of the human body grid model to determine the plurality of marker points, each row of the marker point coordinate matrix corresponding to a marker point coordinate.

[0006] The human body size measurement method further comprises obtaining the weight matrix by the following steps: determining a plurality of training grid models, each training grid model comprising a plurality of training grid vertices and a plurality of training marker points; and calculating the weight matrix such that the sum of error values of the plurality of training grid models is minimized, the error value representing the difference between the training grid vertices processed by the weight matrix and the training marker points.

[0007] The error value is (WV-J)2, wherein W is the weight matrix, V is the coordinate matrix of the training grid vertices in the training grid model, and J is the coordinate matrix of the training marker points in the training grid model.

[0008] The human body size measurement based on the plurality of human body mark points comprises: determining at least two human body mark points related to a one-dimensional size of the human body to be measured as measurement points from the plurality of human body mark points; and calculating the one-dimensional size of the human body according to the coordinates of the measurement points.

[0009] The human body size measurement based on the plurality of human body mark points comprises: determining one human body mark point related to a two-dimensional size of the human body to be measured as a measurement point from the plurality of human body mark points; determining a normal vector based on the measurement point, and determining a measurement plane perpendicular to the normal vector and passing through the measurement point; and calculating a perimeter of a polygon intersected by the measurement plane and the human body mesh model as the two-dimensional size of the human body.

[0010] The human body size measurement based on the plurality of human body mark points comprises: determining at least two human body mark points related to a two-dimensional size of the human body to be measured as a base measurement point and a normal measurement point from the plurality of human body mark points; determining a normal vector based on the normal measurement point, and determining a measurement plane perpendicular to the normal vector and passing through the base measurement point; and calculating a perimeter of a polygon intersected by the measurement plane and the human body mesh model as the two-dimensional size of the human body.

[0011] The human body size measurement based on the plurality of human body mark points comprises: obtaining at least one polygon intersected by the measurement plane and the human body mesh model; calculating an average vertex of all human body mesh vertices on the polygon; and calculating a perimeter of a polygon corresponding to the average vertex closest to the measurement point as the two-dimensional size of the human body.

[0012] To solve the above technical problem, the present application provides an electronic device. The electronic device comprises a memory and a processor coupled to each other, and the processor is configured to execute program data stored in the memory to implement the human body size measurement method.

[0013] To solve the above technical problem, the present application provides a computer storage medium. The computer storage medium stores program data, and the program data can be executed to implement the human body size measurement method.

[0014] To solve the above technical problem, the present application provides a computer program product. The computer program product comprises computer program instructions, and the computer program instructions enable a computer to implement the human body size measurement method.

[0015] The body size measurement method of the present application first determines a human body grid model containing multiple human body grid vertices, then determines multiple human body marker points of the human body grid model based on the multiple human body grid vertices, and finally measures the body size based on the multiple human body marker points. Since the human body grid model has uniform topological information (i.e., consistent number of human body grid vertices and connection relationship), the data integrity can be ensured, and therefore the present application can solve the problem of inaccurate positioning of human body parts and fewer measurable human body parts caused by visual angle obstruction and the like in the prior art, thereby improving the accuracy of positioning of human body parts and the efficiency of measurement of human body parts, and increasing the number of measurable human body parts. BRIEF DESCRIPTION OF DRAWINGS

[0016] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor on the basis of these drawings.

[0017] Figure 1 is a flowchart of an embodiment of the body size measurement method of the present application;

[0018] Figure 2 is Figure 1 is a specific flowchart of step S12 in the embodiment;

[0019] Figure 3 is a specific flowchart of obtaining the weight matrix in the body size measurement method of the present application;

[0020] Figure 4 is Figure 1 is a specific flowchart of step S13 in the embodiment;

[0021] Figure 5 is a body height measurement diagram of the present application;

[0022] Figure 6 is Figure 1 is a specific flowchart of step S13 in the embodiment;

[0023] Figure 7 is a body chest circumference measurement diagram of the present application;

[0024] Figure 8 is Figure 1 is a specific flowchart of step S13 in the embodiment;

[0025] Figure 9 is a structural diagram of an embodiment of the body size measurement device of the present application;

[0026] Figure 10 is a structural schematic diagram of an embodiment of an electronic device of the present application.

[0027] Figure 11 is a result schematic diagram of an embodiment of a computer storage medium of the present application. DETAILED DESCRIPTION

[0028] The technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the drawings of the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the protection scope of the present application.

[0029] It should be noted that if the embodiments of the present application involve directional indications (such as up, down, left, right, front, back, etc.), the directional indications are only used to explain the relative position relationship, movement condition, etc. between components in a certain posture (as shown in the drawings), and if the certain posture changes, the directional indications also change accordingly.

[0030] In addition, if the embodiments of the present application involve descriptions such as “first”, “second”, etc., the descriptions of “first”, “second”, etc. are only for description purposes, and cannot be understood as indicating or implying the relative importance of the indicated technical features or implicitly indicating the number of the indicated technical features. Therefore, the features limited by “first”, “second” can explicitly or implicitly include at least one of the features. In addition, the technical solutions of each embodiment can be combined with each other, but it must be based on the realization of those of ordinary skill in the art, and when the combination of technical solutions contradicts each other or cannot be realized, it should be considered that the combination of technical solutions does not exist and is not within the protection scope of the present application.

[0031] The human body size measurement method, electronic device and computer storage medium provided by the present application will be described in detail in conjunction with the embodiments.

[0032] The present application first proposes a human body size measurement method, as shown in Figure 1 Figure 1 is a flow schematic diagram of an embodiment of a human body size measurement method of the present application. The human body size measurement method of the present embodiment specifically includes the following steps:

[0033] Step S11: determining a human body grid model, the human body grid model including a plurality of human body grid vertices.

[0034] ​A human body mesh model is established, which is a model of a three-dimensional human body approximated by a series of polygons (usually triangles) of similar size and shape, i.e., a mesh.

[0035] The embodiment can obtain depth image information of a human body by using a depth camera such as an RGBD camera, and establish a three-dimensional virtual model of the human body, i.e., a human body mesh model, which represents the geometric shape of the human body in the form of a three-dimensional mesh. For example, a depth image of the front of the human body or depth images of multiple angles including the front can be obtained by the depth camera.

[0036] The depth camera can be integrated into an electronic device such as a human body size measurement device, to improve the efficiency of data processing and size measurement.

[0037] A depth image refers to an image in which the distance (depth) from the depth camera to each point in a scene (the user in the embodiment) is taken as a pixel value, which directly reflects the geometric shape of the visible surface of the user. Each frame of data scanned by the depth camera includes not only the color RGB image of the points on the visible surface of the user, but also the distance value of each point to the vertical plane where the depth camera is located.

[0038] In other embodiments, a laser radar or the like can also be used to obtain depth image information of the user.

[0039] The human body mesh model can be established by using the vertices of the human body mesh and the facets formed by sequentially connecting the vertices of the human body mesh.

[0040] The embodiment can establish the human body mesh model based on the depth image information by using a Skinned Multi-Person Linear Model (SMPL) or the like. The SMPL is a commonly used parameterization method. There are 24 joints in the SMPL, and the pose parameters are divided into rotation and translation. Each joint has three parameters to represent rotation. In addition to the three rotation parameters, the vertex joint also has three translation parameters. Therefore, the total number of pose parameters is (24*3+3). The commonly used shape parameters are 10, but there are 300 public shape parameters. According to actual needs, 10 shape parameters can be selected.

[0041] The SMPL can output 6890 human body mesh vertices and more than ten thousand facets based on the human body model of 24 joints, by inputting 85 parameters, i.e., 10 (shape parameters) + 75 (pose parameters).

[0042] Step S12: determining multiple human body marker points of the human body mesh model based on the multiple human body mesh vertices.

[0043] Before step S12 is performed, multiple human body marker points can be defined on the human body mesh model, the multiple human body marker points being key points of the human body, and multiple human body sizes can be calculated based on the human body marker points.

[0044] From the above analysis, when the human body mesh model is established by SMPL or the like, the human body mesh model is essentially established by multiple human body mesh vertices, and therefore the embodiment uses the coordinates of the human body mesh vertices corresponding to the marker points as the coordinates of the marker points.

[0045] The human body marker points are not necessarily human body mesh vertices, and the human body marker points are obtained by multiplying the human body mesh vertices matrix of the human body mesh model by a weight matrix, which can be understood as a weighted sum of part of the human body mesh vertices of the human body mesh model, and specific details can be referred to in the following embodiments.

[0046] Specifically, the embodiment can implement step S12 by using the method as shown in Figure 2 The method of the embodiment includes steps S21 and S22.

[0047] Step S21: determining a vertex coordinate matrix based on the coordinates of the multiple human body mesh vertices, each row of the vertex coordinate matrix corresponding to the coordinates of a human body mesh vertex.

[0048] Since the human body mesh generated by the parameterized model such as SMPL has a fixed triangular connection relationship, that is, when different shape and pose parameters are input, the human body mesh output by the parameterized model only changes the coordinates of the vertices, and the triangular connection relationship does not change.

[0049] The human body mesh model is actually composed of many spatial triangles. The triangular connection relationship is actually that the three points are connected to form a triangle.

[0050] Since the human body mesh model has a uniform topology and the number of human body mesh vertices is the same, assuming that the number is n, the coordinates of the n human body mesh vertices of the human body mesh model can be constructed into a vertex coordinate matrix of n rows and 3 columns [n, 3], denoted as V, each row of V corresponding to the coordinates of a human body mesh vertex, that is, the coordinates of the x, y, and z axes.

[0051] Step S22: multiplying the weight matrix and the vertex coordinate matrix to obtain a marker point coordinate matrix of the multiple marker points of the human body mesh model, to determine the multiple marker points, each row of the marker point coordinate matrix corresponding to the coordinates of a human body marker point.

[0052] For example, k human body marker points are needed to measure the size of the human body, and a weight matrix W is obtained, W is a matrix of k rows and n columns [k, n], the coordinates of the k human body marker points can be obtained by W*V, the multiplication of the two matrices obtains a marker point coordinate matrix of k rows and 3 columns [k, 3], denoted as J1, each row in J1 corresponds to the coordinates of a human body marker point in the k human body marker points, that is, the 3 data in each row in J1 correspond to the x, y and z three-axis coordinates of a marker point.

[0053] The embodiment uses the weight matrix to obtain the coordinates of the defined multiple human body marker points from the coordinates of the multiple human body grid vertices in the human body grid model to determine the multiple marker points.

[0054] In this embodiment, the weight matrix can be obtained by the method as shown in Figure 3 The method of the embodiment includes steps S31 and S32.

[0055] Step S31: Determine multiple training grid models, each training grid model including multiple training grid vertices and multiple training marker points.

[0056] The n training grid models can be established based on the SMPL parameterized model, and k training marker points are defined for each training network model, and the training grid model includes multiple training grid vertices.

[0057] Step S32: Calculate the weight matrix so that the sum of the error values of the multiple training grid models is minimized, and the error value represents the difference between the training grid vertices processed by the weight matrix and the training marker points.

[0058] Wherein, the error value is (WV-J)2, wherein W is the weight matrix, V is the coordinate matrix of the training grid vertices in the training grid model, and J is the coordinate matrix of the training marker points in the training grid model.

[0059] Specifically, an error function is constructed, and W is obtained by nonlinear optimization to minimize the error function. The error function is as follows:

[0060]

[0061] Wherein, V i is the coordinate matrix of the training grid vertices in the i-th training grid model, and J i is the coordinate matrix of the k training marker points defined in the i-th training grid model.

[0062] Of course, in other embodiments, the weight weight matrix can also be pre-configured or predefined.

[0063] Step S13: Measure the size of the human body based on the multiple human body marker points.

[0064] Before step S12, a plurality of human body marker points can be defined in the human body mesh model, and the coordinates of the plurality of human body marker points are determined through step S12 to determine a plurality of marker points, and the human body size is measured based on the coordinates of the plurality of human body marker points.

[0065] The embodiment can measure the one-dimensional size of the part of the human body based on the coordinates of the plurality of human body marker points, and specifically can be implemented through the method as shown in Figure 4 The method of the embodiment includes step S41 and step S42.

[0066] Step S41: At least two human body marker points related to the one-dimensional size of the human body to be measured are determined from the plurality of human body marker points as measurement points.

[0067] Step S42: The one-dimensional size of the human body is calculated according to the coordinates of the measurement points.

[0068] The one-dimensional size is generally a single line segment, and the position of the one-dimensional size is determined, that is, at least two marker points related to the one-dimensional size of the human body to be measured are determined from the plurality of human body marker points as measurement points, then the coordinates corresponding to the measurement points are obtained according to the coordinates of the human body marker points calculated above, and finally the distance between the measurement point coordinates, that is, the distance between the measurement points, is calculated, which is the one-dimensional size of the human body.

[0069] For example, when measuring the height of the human body, as shown in Figure 5 the highest point H corresponding to the head of the human body and the coordinates thereof are selected from the defined human body marker points, and the lowest point L (the midpoint of the line connecting the lowest points of the two feet) corresponding to the bottom of the human body and the coordinates thereof are selected from the defined human body marker points; the distance between H and L is calculated based on the coordinates of H and L, which is the height of the human body.

[0070] The embodiment can also measure the two-dimensional size of the part of the human body based on the coordinates of the plurality of human body marker points, and specifically can be implemented through the method as shown in Figure 6 The method of the embodiment includes step S61 to step S63.

[0071] Step S61: One human body marker point related to the two-dimensional size of the human body to be measured is determined from the plurality of human body marker points as a measurement point.

[0072] Step S62: A normal vector is determined based on the measurement point, and a measurement plane perpendicular to the normal vector and passing through the measurement point is determined.

[0073] Step S63: The perimeter of the polygon intersecting the human body mesh model of the measurement plane is calculated as the two-dimensional size of the human body.

[0074] Two-dimensional dimensions are generally multi-line segments. First, the measurement point of the two-dimensional dimension of the human body to be measured is determined (selected from the defined marker points). Then, the measurement plane is determined based on this measurement point and its normal vector. Finally, the polygon that intersects the measurement plane with the human body mesh model is obtained, and the perimeter of the polygon is calculated as the two-dimensional dimension of the human body to be measured.

[0075] Specifically, at least one polygon that intersects the measurement plane with the human body mesh model can be obtained. For example, when measuring the hip circumference, the intersection of the measurement plane and the human body mesh model will form a polygon, while when measuring the chest circumference, the intersection of the measurement plane and the human body mesh model will form three polygons (one for the chest circumference and two for the hands). The average vertex of all human body mesh vertices on each polygon is calculated, that is, the average value of the coordinates of all mesh vertices on the polygon. Then, the distance between the measurement point and the average vertex of each polygon is calculated, and the perimeter of the polygon corresponding to the average vertex closest to the measurement point is calculated as the two-dimensional human body dimension.

[0076] For example, when it is necessary to measure a person's chest circumference, such as Figure 7 As shown, the midpoint A in the chest cavity is selected from the human body markers as the measurement point, and the normal vector B of A is determined. The measurement plane C is obtained from the midpoint A and the normal vector B. The measurement plane C intersects with the human body mesh model to obtain three polygons. The average coordinates of all human body mesh vertices on each polygon are calculated. The distance between the average coordinates of each polygon and the coordinates of the midpoint A is calculated, and the perimeter of the polygon with the smallest distance is obtained as the chest circumference.

[0077] In this embodiment, the measurement plane is determined by measuring a point and its normal vector (unit vector). The measuring point can be a human body marker point selected from multiple human body marker points for the corresponding part.

[0078] In another embodiment, it can also be achieved through, for example... Figure 8 The method shown enables the measurement of two-dimensional dimensions of parts of the human body. The method in this embodiment includes steps S81 to S83.

[0079] Step S81: Determine at least two human body markers from multiple human body markers that are related to the two-dimensional dimensions of the human body to be measured as the base measurement point and the normal measurement point.

[0080] Step S82: Determine the normal vector based on the normal measurement point, and determine the measurement plane that is perpendicular to the normal vector and passes through the basic measurement point.

[0081] Step S83: Calculate the perimeter of the polygon where the measurement plane intersects with the human body mesh model as the two-dimensional dimension of the human body.

[0082] This embodiment and Figure 6 The difference in implementation is that this embodiment determines the normal vector by obtaining the normal measurement point.

[0083] For example, when measuring the chest circumference of a human body, a midpoint of the chest cavity is selected as a base measurement point from the human body marker points, two normal measurement points (such as the midpoint of the line connecting the highest point on the head and the lowest point of the two feet) are selected, a normal vector is determined, and a measurement plane is obtained from the midpoint and the normal vector; the measurement plane intersects the human body mesh model to obtain three polygons, and the average value of the coordinates of all human body mesh vertices on each polygon is obtained; the distance between the coordinate average value of each polygon and the coordinate of the midpoint is calculated, and the perimeter of the polygon corresponding to the minimum distance is obtained as the chest circumference.

[0084] In this embodiment, two human body marker points corresponding to the parts are selected from multiple human body marker points, a normal vector is determined based on the two human body marker points, and a measurement plane is determined based on the normal vector and the measurement point.

[0085] In other embodiments, a unit vector (x, y, z) can be directly specified as the normal of the plane.

[0086] In the human body size measurement method of the present application, the input data is a human body mesh generated by a human body parameterization model such as SMPL, a method of positioning human body size by combining a weight matrix is proposed, and human body marker points for measuring human body size are obtained by using the human body mesh and the weight matrix, so as to analyze and measure multiple sizes of human body parts, including specific one-dimensional sizes (height, head height, arm span, upper body length, lower body length, shoulder width, upper arm length, lower arm length, hand length, foot length, etc.) and two-dimensional sizes (head circumference, upper arm circumference, lower arm circumference, thigh circumference, lower leg circumference, wrist circumference, chest circumference, waist circumference, hip circumference, ankle circumference, etc.) and numerous human body part size measurement data. For the weight matrix, a training method thereof is also proposed.

[0087] Traditional manual measurement methods are inefficient and cannot obtain human body part size information in batches. The existing method of using three-dimensional scanning equipment to measure human body part size cannot obtain complete three-dimensional data of the human body due to angle obstruction, and it is also difficult and inaccurate to position human body parts using these three-dimensional data. The human body parameterization model is used in the present application to obtain a human body mesh as input data, which has uniform topological information (i.e., the mesh has the same number of vertices and consistent connection relationship of triangles), complete data, and can solve the problems of inaccurate human body part positioning, few measurable parts, and low measurement efficiency of traditional input data.

[0088] Since the human body grid model is introduced as the input data of the human body size measurement algorithm in the present application, the number of measurable part sizes is greatly increased by combining the method for positioning the human body part based on the weight matrix in the present application. The part size measurement algorithm in the present application can provide higher-precision size information for subsequent human body fitness, clothing customization and other applications.

[0089] In one embodiment, as shown in Figure 9 A human body size measurement device is provided, which can be a software module or a hardware module, or a combination of the two as part of a computer device. The device specifically includes a human body grid model determination module 111, a human body marker point determination module 112 and a size measurement module 113, wherein the human body marker point determination module 112 is connected to the human body grid model determination module 111 and the size measurement module 113 respectively, the human body grid model determination module 111 is used to determine a human body grid model, which includes a plurality of human body grid vertices; the human body marker point determination module 112 is used to determine the coordinates of a plurality of human body marker points of the human body grid model based on the plurality of human body grid vertices; and the size measurement module 113 is used to measure the human body size based on the plurality of human body marker points.

[0090] The human body size measurement device of the present embodiment is also used to implement the human body size measurement method described above.

[0091] The specific limitations of the human body size measurement device can be referred to the limitations of the human body size measurement method described above, which will not be repeated here. The various modules in the human body size measurement device described above can be realized by software, hardware and their combinations in whole or in part. The above-mentioned modules can be embedded in or independent of the processor in the computer device in hardware form, or can be stored in the memory in the computer device in software form, so as to be called and executed by the processor to perform the operations corresponding to the above-mentioned modules.

[0092] The present application further proposes an electronic device, as shown in Figure 10 Figure 10 is a structural schematic diagram of an embodiment of the electronic device of the present application. The electronic device 100 of the present embodiment includes a processor 101, a memory 102 coupled to the processor 101, an input / output device 103 and a bus 104.

[0093] The processor 101, the memory 102 and the input / output device 103 are respectively connected to the bus 104, and the memory 102 stores program data, and the processor 101 is used to execute the program data to implement the human body size measurement method described above.

[0094] The controller in the above-mentioned embodiment can be integrated in the processor 101.

[0095] ​In this embodiment, the processor 101 can also be referred to as a CPU (Central Processing Unit). The processor 101 can be an integrated circuit chip having a processing capability of signals. The processor 101 can also be a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application-Specific Integrated Circuit), an FPGA (Field Programmable Gate Array) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. The general-purpose processor can be a microprocessor or the processor 101 can also be any conventional processor or the like.

[0096] The present application further provides a computer readable storage medium, such as Figure 11 As shown in the figure, the computer readable storage medium 160 of the present embodiment is used to store the program data 161 of the above-mentioned embodiments, and the program data 161 can be executed to realize the above-mentioned human body size measurement method. The program data 161 has been described in detail in the above-mentioned method embodiments, and will not be described here.

[0097] The computer readable storage medium 160 of the present embodiment can be, but is not limited to, a U disk, an SD card, a PD optical drive, a mobile hard disk, a large-capacity floppy disk drive, a flash memory, a multimedia memory card, a server or the like.

[0098] Different from the prior art, the human body size measurement method of the present application first determines a human body grid model containing multiple human body grid vertices, then determines multiple human body marker points of the human body grid model based on the multiple human body grid vertices, and finally measures the human body size based on the multiple human body marker points. Because the human body grid model has uniform topological information (i.e., consistent human body grid vertex quantity and connection relationship), the data integrity can be ensured, so that the present application measures the human body size based on the human body grid model and the human body grid vertices, which can solve the problem of inaccurate positioning of human body parts and fewer measurable human body parts caused by visual angle occlusion and the like in the prior art, thereby improving the accuracy of positioning of human body parts and the efficiency of measurement of human body parts, and increasing the number of measurable human body parts.

[0099] In one embodiment, a computer program product or computer program is provided, which includes computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions, so that the computer device executes the steps in the above-mentioned method embodiments.

[0100] In addition, the above functions, if implemented in the form of software functions and sold or used as independent products, can be stored in a mobile terminal readable storage medium, i.e., the present application also provides a storage device storing program data, the program data being executable to implement the method of the above embodiments, and the storage device can be, for example, a U disk, an optical disk, a server, etc. That is, the present application can be embodied in the form of a software product, which includes a number of instructions for causing an intelligent terminal to execute all or part of the steps of the method described in each embodiment.

[0101] In addition, the terms "first", "second", etc. are only used for descriptive purposes and should not be construed as indicating or implying relative importance or implicitly indicating the number of the technical features indicated. Therefore, the features defined with "first", "second" can explicitly or implicitly include at least one of the features. In the description of the present application, the meaning of "a plurality of" is at least two, for example, two, three, etc., unless otherwise specifically limited.

[0102] Any process or method descriptions in flow charts or otherwise described herein represent embodiments of implementations that can include one or more steps, codes, or portions of codes for accomplishing a described function or set of functions. The scope of preferred embodiments of the present application includes additional implementation that can not be expressly shown or described herein, but are nevertheless within the scope of the present application, and the scope of the present application includes additional implementations that can be performed in a different order, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those skilled in the art.

[0103] The logic and / or steps represented in the flow diagrams and / or otherwise described herein, for example, can be embodied in non-transitory computer-readable media, executed by an instruction execution system, apparatus, or device, such as a personal computer, server, network device, or other computing / processing apparatuses that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. In this regard, the "computer-readable medium" can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-readable medium can comprise any one of the following: electric connections (electronic devices), a portable computer diskette (magnetic devices), a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, and a portable compact disc read-only memory (CDROM). Additionally, the computer-readable medium can even be paper or other suitable medium upon which the program is printed, as the program can be electronically captured, via for instance an optical scanner, then compiled, interpreted, or otherwise processed, and stored in a computer storage medium.

[0104] The above description is merely illustrative of the embodiments of this application and is not intended to limit the scope of the application. Any equivalent structure or equivalent processes variant using the content of the specification and the drawings of this application, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of this application.

Claims

1. A method for measuring human body dimensions, characterized in that, include: Based on the depth image information of the human body, a human body mesh model is determined using a multi-person linear skinning model, wherein the human body mesh model includes multiple human body mesh vertices; A vertex coordinate matrix is ​​determined based on the coordinates of the multiple human body mesh vertices, wherein each row of the vertex coordinate matrix corresponds to the coordinates of a human body mesh vertex; Multiply the weight matrix with the vertex coordinate matrix to obtain the marker coordinate matrix of multiple marker points of the human body mesh model, so as to determine multiple human body marker points. Each row of the marker coordinate matrix corresponds to the coordinates of one human body marker point. The human body marker points are used to characterize key points in human body size measurement. The human body marker points are obtained by weighted sum of the vertex coordinate matrices corresponding to the multiple human body mesh vertices of the human body mesh model. Human body dimensions are measured based on the aforementioned multiple human body markers; The weight matrix is ​​obtained by the following steps: Multiple training mesh models are determined using the multi-person linear skinning model, each training mesh model including multiple training mesh vertices and multiple training marker points; The weight matrix is ​​calculated such that the sum of the error values ​​of the plurality of training grid models is minimized, where the error value represents the difference between the training grid vertex after being processed by the weight matrix and the training marker point.

2. The measurement method according to claim 1, characterized in that, The error value is (WV-J)², where W is the weight matrix, V is the coordinate matrix of the training grid vertices in the training grid model, and J is the coordinate matrix of the training marker points in the training grid model.

3. The measurement method according to claim 1, characterized in that, The measurement of human body dimensions based on the plurality of human body markers includes: From the plurality of human body markers, at least two human body markers that are related to the one-dimensional size of the human body to be measured are determined as measurement points; The one-dimensional dimensions of the human body are calculated based on the coordinates of the measurement points.

4. The measurement method according to claim 1, characterized in that, The measurement of human body dimensions based on the plurality of human body markers includes: From the plurality of human body markers, one human body marker related to the two-dimensional dimension of the human body to be measured is selected as the measurement point; Based on the measurement point, a normal vector is determined, and a measurement plane perpendicular to the normal vector and passing through the measurement point is determined. The perimeter of the polygon where the measurement plane intersects with the human body mesh model is calculated as the two-dimensional dimension of the human body.

5. The measurement method according to claim 1, characterized in that, The measurement of human body dimensions based on the plurality of human body markers includes: From the plurality of human body markers, at least two human body markers related to the two-dimensional dimensions of the human body to be measured are determined as the base measurement point and the normal measurement point; Based on the normal measurement point, a normal vector is determined, and a measurement plane perpendicular to the normal vector and passing through the basic measurement point is determined. The perimeter of the polygon where the measurement plane intersects with the human body mesh model is calculated as the two-dimensional dimension of the human body.

6. The measurement method according to claim 4 or 5, characterized in that, The step of calculating the perimeter of the polygon where the measuring plane intersects with the human body mesh model as the two-dimensional dimension of the human body includes: Obtain at least one polygon that intersects the measurement plane with the human body mesh model; Calculate the average number of vertices across all human body mesh vertices on the polygon; The perimeter of the polygon corresponding to the average vertex closest to the measurement point is calculated as the two-dimensional dimension of the human body.

7. An electronic device, characterized in that, include: A memory and a processor are coupled to each other, the processor being configured to execute program data stored in the memory to implement the method for measuring human body dimensions as described in any one of claims 1 to 6.

8. A computer storage medium, characterized in that, It stores program data that can be executed to implement the method for measuring human body dimensions as described in any one of claims 1 to 6.

9. A computer program product, characterized in that, It includes computer program instructions that cause a computer to implement the method for measuring human body dimensions as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Body parameter measurement method, system and device based on human body reconstruction, chip and medium

    CN112401369A

  • Human body reconstruction and garment customization data acquisition method based on single image

    CN112950788A