A human limb circumference measurement method, device, intelligent terminal and storage medium

The method constructs a human body surface mesh model to determine limb circumference using measurement plane equations, simplifying calculations and improving accuracy by eliminating the need for limb orientation consideration and plane projection.

CN113837995BActive Publication Date: 2024-12-17SHANGHAI AOSTAR INTELLIGENT TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202110936608.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-08-16
Publication Date
2024-12-17
Estimated Expiration
2041-08-16

AI Technical Summary

Technical Problem

Existing methods for measuring human limb circumference involve complex calculations due to the need to consider limb orientation, leading to projection errors and reduced accuracy.

Method used

A method that constructs a human body surface mesh model, obtains measurement points, and uses measurement plane equations to determine the minimum circumference without considering limb orientation, eliminating the need for plane projection and simplifying the calculation process.

Benefits of technology

This approach simplifies the measurement process and enhances accuracy by directly obtaining the minimum circumference without projection errors, applicable to human and animal limbs, and other object measurements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113837995B_ABST
    Figure CN113837995B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, device, intelligent terminal and storage medium for measuring the circumference of a human limb, wherein the method comprises: constructing a human body surface grid model; obtaining measurement points corresponding to the limb to be measured based on the human body surface grid model; obtaining measurement plane equations corresponding to the measurement points; obtaining the minimum circumference corresponding to the measurement points based on the measurement plane equations and the human body surface grid model as the circumference of the limb to be measured. Compared with the prior art, after obtaining the measurement plane equations corresponding to the measurement points, the scheme of the present invention obtains the minimum circumference corresponding to the measurement points according to the measurement plane equations and the human body surface grid model, and directly uses the minimum circumference as the circumference of the limb to be measured, without considering the limb orientation, which is conducive to making the calculation process simpler, and does not require plane projection, which can avoid projection errors, and is conducive to improving the accuracy of circumference measurement.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of human body measurement, and in particular to a method, a device, an intelligent terminal and a storage medium for measuring the circumference of a human limb. Background Art

[0002] 3D human body size measurement can be divided into contact measurement and non-contact measurement according to different measurement methods. With the development of 3D laser scanning technology, non-contact human body shape parameter measurement has been more and more widely used.

[0003] At present, most circumference measurement methods measure the horizontal circumference of the limb to be measured when it is pointing vertically downward. However, in the actual measurement process, the orientation of each limb of the three-dimensional human body model obtained by non-contact scanning may be arbitrary. In the prior art, the circumference of human limbs is usually measured by combining point cloud principal axis analysis with plane projection. However, this method needs to consider the orientation of each limb, which makes the calculation process complicated, and it is necessary to first accurately segment the point cloud of the limb to be measured. Although plane projection can ensure that the circumference is calculated in one plane, the projected points are not necessarily from the same plane, which will introduce projection errors, thereby affecting the accuracy of circumference measurement. Summary of the invention

[0004] The main purpose of the present invention is to provide a method, device, intelligent terminal and storage medium for measuring the circumference of human limbs, aiming to solve the problem in the prior art that when measuring the circumference of human limbs, the orientation of each limb needs to be considered, the calculation process is complicated, and there are projection errors, which affects the accuracy of circumference measurement.

[0005] In order to achieve the above object, the present invention provides a method for measuring the circumference of a human limb in a first aspect, wherein the method comprises:

[0006] Construct a mesh model of the human body surface;

[0007] Based on the human body surface mesh model, obtain the measurement points corresponding to the limb to be measured;

[0008] Obtain the measurement plane equation corresponding to the above measurement point;

[0009] Based on the measurement plane equation and the human body surface mesh model, the minimum circumference corresponding to the measurement points is obtained as the circumference of the limb to be measured.

[0010] Optionally, the above-mentioned construction of a human body surface mesh model includes:

[0011] Acquire human body point cloud data of the target object;

[0012] A human body surface mesh model of the target object is constructed based on the human body point cloud data.

[0013] Optionally, the step of obtaining the measurement points corresponding to the limb to be measured based on the human body surface grid model includes:

[0014] Acquire the limb to be tested of the target object;

[0015] A point corresponding to the limb to be measured in the human body surface grid model is obtained as a measurement point corresponding to the limb to be measured.

[0016] Optionally, the obtaining of the measurement plane equation corresponding to the measurement point includes:

[0017] Constructing a measurement plane based on the neighborhood surface corresponding to the above measurement points;

[0018] Obtaining the normal corresponding to the above-mentioned measuring point based on the above-mentioned measuring plane calculation;

[0019] The measurement plane equation corresponding to the measurement point is obtained based on the normal line corresponding to the measurement point.

[0020] Optionally, the obtaining of the minimum circumference corresponding to the measuring point based on the measuring plane equation and the human body surface mesh model as the circumference of the limb to be measured includes:

[0021] Based on the measurement plane equation and the human body surface mesh model, obtain the girth equation corresponding to the measurement point;

[0022] Calculate and obtain the minimum value of the above girth equation as the girth of the limb to be measured.

[0023] Optionally, the obtaining of the girth equation corresponding to the measurement point based on the measurement plane equation and the human body surface mesh model includes:

[0024] Obtaining the intersection point between the measurement plane corresponding to the measurement plane equation and the human body surface mesh model;

[0025] Perform clustering based on all the above intersection points to obtain the target cluster closest to the above measurement point;

[0026] All intersection points in the target cluster are sorted, and the girth equation corresponding to the measurement point is obtained based on the sorted intersection points.

[0027] Optionally, the method further comprises: obtaining the minimum girth using a heuristic search method, the heuristic search method comprising:

[0028] Defining a search space range of the measurement point, wherein the search space range is formed by the intersection of each measurement plane of the measurement point and the human body surface grid model;

[0029] The minimum girth is searched in the above search space using the normal vectors of the above measurement planes and a coarse-to-fine iterative search method.

[0030] A second aspect of the present invention provides a human limb circumference measuring device, wherein the device comprises:

[0031] A scanning module, used for scanning a human body and obtaining human body point cloud data;

[0032] A model building module, used to build a human body surface mesh model based on the human body point cloud data;

[0033] A measurement point acquisition module, used to acquire measurement points corresponding to the limb to be measured based on the human body surface grid model;

[0034] A measurement plane equation acquisition module is used to obtain the measurement plane equation corresponding to the above measurement point;

[0035] The circumference acquisition module is used to obtain the minimum circumference corresponding to the above-mentioned measurement points based on the above-mentioned measurement plane equation and the above-mentioned human body surface grid model as the circumference of the above-mentioned limb to be measured.

[0036] A third aspect of the present invention provides an intelligent terminal, which includes a scanning device, a memory, a processor, and a human limb circumference measurement program stored in the memory and executable on the processor. When the human limb circumference measurement program is executed by the processor, the scanning device is used to scan a human body and obtain human point cloud data to implement any step of the human limb circumference measurement method.

[0037] A fourth aspect of the present invention provides a computer-readable storage medium, on which a human limb circumference measurement program is stored. When the human limb circumference measurement program is executed by a processor, the steps of any one of the human limb circumference measurement methods are implemented.

[0038] As can be seen from the above, in the scheme of the present invention, a human body surface grid model is constructed; based on the human body surface grid model, the measurement points corresponding to the limb to be measured are obtained; the measurement plane equations corresponding to the measurement points are obtained; based on the measurement plane equations and the human body surface grid model, the minimum girth corresponding to the measurement points is obtained as the girth of the limb to be measured. Compared with the method of measuring the girth of human limbs by combining point cloud principal axis analysis with plane projection in the prior art, after the measurement plane equations corresponding to the measurement points are obtained, the minimum girth corresponding to the measurement points is obtained according to the measurement plane equations and the human body surface grid model, and the minimum girth is directly used as the girth of the limb to be measured, without considering the orientation of the limb, which is conducive to making the calculation process simpler, and does not require plane projection, which can avoid projection errors and is conducive to improving the accuracy of girth measurement. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0040] Figure 1 It is a schematic diagram of a flow chart of a method for measuring the circumference of a human limb provided by an embodiment of the present invention;

[0041] Figure 2 The present invention is implemented Figure 1 Specific flow diagram of step S100;

[0042] Figure 3 The present invention is implemented Figure 1 Specific flow diagram of step S200;

[0043] Figure 4 The present invention is implemented Figure 1 Specific flow diagram of step S300;

[0044] Figure 5 The present invention is implemented Figure 1 Specific flow diagram of step S400;

[0045] Figure 6 The present invention is implemented Figure 5 Specific flow diagram of step S401;

[0046] Figure 7 It is a specific flow chart of a heuristic search method provided by an embodiment of the present invention;

[0047] Figure 8 is a range schematic diagram of a search space provided by an embodiment of the present invention;

[0048] Fig. 9 It is a structural schematic diagram of a human limb circumference measuring device provided by an embodiment of the present invention;

[0049] Fig.10 It is a block diagram of the internal structure principle of an intelligent terminal provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0050] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present invention. However, it should be clear to those skilled in the art that the present invention may be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present invention.

[0051] It should be understood that when used in this specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof.

[0052] It should also be understood that the terms used in the present specification are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in the present specification and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include plural forms.

[0053] It should be further understood that the term "and / or" used in the present description and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0054] As used in this specification and the appended claims, the term "if" may be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrases "if it is determined" or "if [described condition or event] is detected" may be interpreted as meaning "upon determination" or "in response to determining" or "upon detection of [described condition or event]" or "in response to detecting [described condition or event]," depending on the context.

[0055] The following is a clear and complete description of the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0056] In the following description, many specific details are set forth to facilitate a full understanding of the present invention, but the present invention may also be implemented in other ways different from those described herein, and those skilled in the art may make similar generalizations without violating the connotation of the present invention. Therefore, the present invention is not limited to the specific embodiments disclosed below.

[0057] In order to solve the problems existing in the prior art, in this embodiment, a method, device, intelligent terminal and storage medium for measuring the circumference of a human limb are proposed to make the circumference measurement process simpler and more convenient and improve the accuracy of circumference measurement.

[0058] Exemplary Methods

[0059] like Figure 1 As shown, an embodiment of the present invention provides a method for measuring the circumference of a human limb. Specifically, the method comprises the following steps:

[0060] Step S100, constructing a human body surface mesh model.

[0061] The human body surface mesh model is a human body surface mesh model corresponding to the user who needs to measure the limb circumference. Specifically, the method is used in a non-contact measurement scenario, and a depth camera or a 3D scanner can be used to scan the user to generate corresponding human body point cloud data, and the human body point cloud data can be further used to construct a human body surface mesh model, so as to measure the user's limb circumference through the user's corresponding human body surface mesh model.

[0062] Step S200: obtaining measurement points corresponding to the limb to be measured based on the human body surface grid model.

[0063] The limb to be measured is the limb of the user that needs to be measured, for example, the wrist, calf, neck and other limbs of the user. The measurement point is a point on the limb to be measured of the user. In this embodiment, the limb to be measured of the user is measured through the measurement point, that is, the girth finally measured is the girth through the measurement point. Specifically, the measurement point can be specified or selected by the user.

[0064] Step S300, obtaining the measurement plane equation corresponding to the above measurement point.

[0065] Among them, the above-mentioned measurement plane equation is the equation corresponding to the measurement plane of each orientation passing through the above-mentioned measurement point. In this embodiment, because the size of the measurement plane only needs to be larger than the cross-sectional area of ​​the limb to be measured at the corresponding position, the orientation angle corresponding to each plane passing through the measurement point can be used as a variable to obtain a measurement plane equation based on the orientation angle. The measurement plane equation can be used as a general formula corresponding to all measurement planes. When the corresponding orientation angle takes different values, the measurement plane equation corresponds to the measurement plane of different angles (or directions). In this way, the measurement planes of various angles (or directions) are represented by a measurement plane equation general formula, and the corresponding variable (orientation angle) only needs to be adjusted to different values ​​to calculate the measurement girth corresponding to each measurement plane, which is conducive to reducing the calculation complexity and improving the measurement efficiency.

[0066] Step S400, based on the measurement plane equation and the human body surface mesh model, the minimum circumference corresponding to the measurement point is obtained as the circumference of the limb to be measured.

[0067] In this embodiment, based on the measurement plane equation and the human body surface grid model, the minimum value (i.e., the minimum girth) of the girth obtained by intersecting the human body surface grid model in the measurement plane at each angle is obtained as the girth of the measurement point, i.e., the girth corresponding to the limb to be measured. The girth of the limb to be measured is the circumference of the limb corresponding to the user that needs to be measured. For example, when measuring the circumference of the user's wrist, the minimum circumference of the circle (or ellipse) obtained by intersecting the human body surface grid model at the wrist in the measurement plane at each angle is used as the circumference of the wrist, so as to simply and quickly obtain the circumference of the corresponding limb to be measured, without the need for plane projection, and without causing projection errors, which is conducive to improving the accuracy of the measurement results.

[0068] As can be seen from the above, in the method for measuring the circumference of a human limb provided by an embodiment of the present invention, a human body surface grid model is constructed; based on the human body surface grid model, the measurement points corresponding to the limb to be measured are obtained; the measurement plane equations corresponding to the measurement points are obtained; based on the measurement plane equations and the human body surface grid model, the minimum circumference corresponding to the measurement points is obtained as the circumference of the limb to be measured. Compared with the method of measuring the circumference of a human limb by combining point cloud principal axis analysis with plane projection in the prior art, after the solution of the present invention obtains the measurement plane equations corresponding to the measurement points, the minimum circumference corresponding to the measurement points is obtained according to the measurement plane equations and the human body surface grid model, and the minimum circumference is directly used as the circumference of the limb to be measured, without considering the limb orientation, which is conducive to making the calculation process simpler, and does not require plane projection, which can avoid projection errors, and is conducive to improving the accuracy of circumference measurement.

[0069] It should be noted that an approximate strategy is adopted in the method for measuring the circumference of human limbs disclosed in this embodiment: the minimum circumference passing through any point is used as the circumference passing through the point. When the curvature near the measured position is not large, the circumference error caused by this approximate strategy is very small. The curvature of the surface of the human limb is very small, so the error of the approximate strategy is very small (smaller than the influence of the plane projection error). Therefore, the method of this embodiment can not only make the measurement and calculation process simpler, but also help to improve the accuracy of the measurement results. When measuring the circumference based on this method, it is not necessary to know which part of the body the measurement point comes from, there is no need to perform limb point cloud segmentation, and there is no need to consider or adjust the direction of the limb, which can make the measurement process simpler. Furthermore, the method of calculating the minimum circumference of any point and using it as the corresponding measurement circumference in this application can also be used in other measurement processes not limited to human limbs, such as animal limbs or object circumference measurement. In this application, the measurement of human limbs is used as an example for explanation, but it is not specifically limited here.

[0070] In one embodiment, the above step S100 more specifically includes the following steps: Figure 2 Steps shown:

[0071] Step S101, obtaining human body point cloud data of the target object.

[0072] Step S102: constructing a human body surface mesh model of the target object based on the human body point cloud data.

[0073] The target object is a user who needs to measure the limb circumference. The human body point cloud data of the target object can be obtained by point cloud measurement and other methods, which are not specifically limited here. The human body surface gateway model is a grid model constructed based on the human body point cloud data of the target object. Specifically, by measuring and obtaining the user's human body point cloud data and constructing a corresponding human body surface grid model, non-contact three-dimensional human body size measurement of the user can be achieved.

[0074] In this embodiment, the above step S200 more specifically includes the following steps: Figure 3 Steps shown:

[0075] Step S201, obtaining a limb to be tested of a target object.

[0076] Step S202, obtaining a point in the human body surface grid model corresponding to the limb to be measured as a measurement point corresponding to the limb to be measured.

[0077] Specifically, the limb to be measured of the above-mentioned target object is the limb that needs to be measured in circumference, which can be input by the measurement personnel, selected or specified on the human body surface mesh model. For example, the measurement personnel can circle a part on the human body surface mesh model as the limb to be measured. Furthermore, the measurement point corresponding to the above-mentioned limb to be measured is a mesh vertex in the area corresponding to the limb to be measured in the human body surface mesh model. For example, when the limb circumference of the wrist needs to be measured, a surface mesh vertex corresponding to the wrist area in the human body surface mesh model can be selected as the measurement point. The measurement point can be randomly selected or specified by the measurement personnel, which is not specifically limited here.

[0078] It should be noted that in this embodiment, the limb circumference measurement is performed based on one measurement point. In actual use, different measurement points corresponding to different limbs to be measured can also be obtained at the same time, and each different limb to be measured can be measured based on each measurement point, so as to obtain multiple limb circumferences more quickly. The specific method can refer to the measurement method in this embodiment.

[0079] In this embodiment, a corresponding coordinate system is established to facilitate the establishment of the corresponding measurement plane equation and girth equation. It should be noted that the specific way of establishing the coordinate system has no effect on the result of the girth measurement, and the corresponding coordinate system can be established according to actual needs. In this embodiment, the right-handed coordinate system on the y-axis is used as an example for illustration, but it is not a specific limitation.

[0080] In one embodiment, the above step S300 more specifically includes the following steps: Figure 4 Steps shown:

[0081] Step S301: construct a measurement plane based on the above measurement points and their corresponding neighborhood surfaces.

[0082] Step S302: Calculate and obtain the normal line corresponding to the measurement point based on the measurement plane.

[0083] Step S303: obtaining the measurement plane equation corresponding to the measurement point based on the normal line corresponding to the measurement point.

[0084] The neighborhood surface is a surface formed by points in the neighborhood of the measurement point. In this embodiment, the normal of the neighborhood surface is calculated and used as the normal corresponding to the measurement point, so that the measurement point better conforms to the overall surface of the limb to be measured (or the part to be measured), and it is convenient to further obtain the general formula of the measurement plane equation corresponding to the measurement plane corresponding to different angles according to the normal of the measurement point.

[0085] Specifically, in this embodiment, a surface triangulated mesh model is obtained by cloud computing of human body point clouds, and a measurement point P is determined in the mesh model. Point P is a necessary point in the circumference measurement. The neighborhood range is obtained, and a certain range near point P (i.e., neighborhood range, denoted as R P ) is used to fit a surface to the grid points within the neighborhood. P The range size of the neighborhood can be preset or input by the measurement personnel, and the above neighborhood range is determined by the specific curvature (for example, the neighborhood range corresponding to different curvatures is preset, or the corresponding neighborhood range is adjusted according to the change of curvature). It should be noted that a more reasonable fixed curvature value can be set according to actual needs to simplify the calculation, but it is not a specific limitation. After obtaining the neighborhood surface, the normal of the neighborhood surface is approximated as the normal n of point P. Using the surface normal instead of the actual normal of P can make point P better conform to the overall situation of the surface of the part to be measured.

[0086] In one embodiment, the curvature corresponding to the target object (or its limb to be measured) is specifically calculated according to the following method. Specifically, the curvature of each vertex in the triangular mesh model is calculated, preferably including at least one of the principal curvature, Gaussian curvature and mean curvature. In an application scenario, in order to analyze the curvature, the neighborhood surface formed by the point P and the neighborhood is defined as S, and S is defined by a quadratically differentiable function f, let f: Among them, U represents the point set of (x, y), and R represents the set of real numbers. Then the neighborhood surface S can be expressed as:

[0087] S={(x,y,z)|(x,y)∈U, z∈R, f(x,y)=z} (1)

[0088] Among them, x, y, and z are the horizontal coordinate, vertical coordinate, and vertical coordinate of the point on the neighborhood surface in the right-hand coordinate system in the y-axis direction. For each point (x, y, f(x, y)) on the surface S, its first-order derivatives along the x and y coordinate axes are f x and f y , because the point cloud data of the triangular meshed model is discrete, the difference is used instead when calculating the first-order derivative of the surface, as shown below:

[0089] f x (x,y)=f(x+1,y)-f(x,y) (2)

[0090] f y (x,y)=f(x,y+1)-f(x,y) (3)

[0091] Among them, f x (x,y) and f y(x, y) represents the first-order derivative of f(x, y) along the x and y axes. Similarly, the second-order derivative on the discrete surface is also expressed by difference, as shown below:

[0092] f xx (x,y)=f x (x+1,y)-f x (x,y) (4)

[0093] f yy (x,y)=f y (x,y+1)-f y (x,y) (5)

[0094] f xy (x,y)=f x (x,y+1)-f x (x,y) (6)

[0095] According to the second-order derivative of the above discrete surface, f xx You can get the partial contour of the surface in the x-axis direction, f yy You can get the partial contour of the surface in the y-axis direction, f xy The partial contour of the surface in the xy space can be obtained, but the second-order partial differential is very sensitive to noise and is easily interfered by various noises, and the result is unstable. Therefore, in this embodiment, Gaussian curvature and mean curvature are used to accurately determine whether the surface formed by point P and its nearby neighborhood (i.e., neighborhood surface) conforms to the overall situation of the surface of the part to be measured.

[0096] Based on differential geometry, the mean curvature (H) and Gaussian curvature (K) at each point (x, y, f(x, y)) on the three-dimensional surface are calculated by the following formulas:

[0097]

[0098]

[0099] Among them, K represents Gaussian curvature, H represents mean curvature, and f x , f y , f xx , f yy and f xy are the first and second order differentials of f at (x, y) respectively. Since the second order differential is very sensitive to noise, the surface needs to be smoothed. It should be noted that the above human body point cloud data can be obtained by collecting the depth data of the target object, and the depth data is the data obtained by taking a depth image of the target object. Furthermore, before calculating the curvature, the depth data before being converted into point cloud data is processed with a Gaussian filter to reduce the impact of noise.

[0100] After obtaining the above-mentioned Gaussian curvature and average curvature, the corresponding neighborhood range is obtained based on the above-mentioned Gaussian curvature and average curvature, so that the surface formed by point P and its neighborhood is more consistent with the overall situation of the surface of the part to be measured.

[0101] In one embodiment, the human body point cloud data (or all vertices of the human body surface mesh model) are rotated with point P as the reference so that the normal n is parallel to the y-axis, and the normal n is converted from Euclidean coordinates (i.e., the coordinates of the coordinate system based on "Euclidean geometry", i.e., the coordinates corresponding to the rectangular coordinate system) to spherical coordinates n = (r, θ, φ), where θ is the angle between the normal and the positive semi-axis of the y-axis, and φ is the angle between the projection of the normal on the horizontal plane and the positive semi-axis of the z-axis. Specifically, since the search process when measuring the circumference (i.e., the process of determining the minimum circumference) is only related to the direction and has nothing to do with the scale, the search process is to find the optimal θ and φ, and its range of variation has been limited by the normal direction of point P, so the optimal value is solved in a closed interval. It should be noted that the radius r of the spherical coordinates here is not of concern to the search process. If the Euclidean coordinates are used directly to construct the equation, the variables are x, y, and z, which are difficult to solve in a closed interval.

[0102] Furthermore, the corresponding measurement plane equation is obtained based on the spherical coordinates of the normal line n. Specifically, for the human body surface mesh model, the mesh surface is represented as F = {F1, ..., F i ,…,F N}, where each element F in the set of mesh faces F i represents a mesh surface, where i ranges from 1 to N, and N is the number of mesh surfaces. In this embodiment, the human body surface mesh model is a triangular mesh surface model, that is, each mesh surface is composed of three vertices, so F i ={(x i1 ,y i1 ,z i1 ),(x i2 ,y i2 ,z i2 ),(x i3 ,y i3 ,z i3 )},F i The three elements in represent the mesh surface F i The coordinates of the three vertices. The measurement point P is a mesh vertex, and its normal n = (r, θ, φ). The equation corresponding to the measurement plane passing through point P can be obtained as:

[0103]

[0104] in, represents the measurement plane, θ is the angle between the normal and the positive semi-axis of the y-axis, φ is the angle between the projection of the normal on the horizontal plane and the positive semi-axis of the z-axis, (P x ,P y ,P z ) are the coordinates corresponding to point P, and (x, y, z) are the coordinates of the point on the measurement plane.

[0105] In one embodiment, the above step S400 more specifically includes the following steps: Figure 5 Steps shown:

[0106] Step S401, obtaining the girth equation corresponding to the measurement point based on the measurement plane equation and the human body surface mesh model.

[0107] Step S402, calculating and obtaining the minimum value of the above girth equation as the girth of the above limb to be measured.

[0108] Among them, the girth equation corresponding to the above-mentioned measurement point is the equation corresponding to the circumference of the circle or ellipse formed by the points where each measurement plane passing through the measurement point P intersects with the human body surface mesh model. For example, when only one measurement plane is considered, the circumference corresponding to the intersection point obtained by the intersection of the measurement plane and the human body surface mesh model is the corresponding girth, but for different directions, there are multiple different measurement planes passing through point P, so the girth formed by the intersection of the plane passing through point P and the human body surface mesh model can be expressed as a binary variable G(θ,φ) of θ and φ, so that the problem of finding the minimum girth can be converted into finding the minimum value of G(θ,φ) in the feasible domain of θ and φ.

[0109] In one embodiment, the above step S401 more specifically includes the following steps: Figure 6 Steps shown:

[0110] Step S4011, obtaining the intersection of the measurement plane corresponding to the measurement plane equation and the human body surface grid model.

[0111] Step S4012: clustering is performed based on all the above intersection points to obtain a target cluster closest to the above measurement point.

[0112] Step S4013: sort all the intersection points in the target cluster, and obtain the girth equation corresponding to the measurement point based on the sorted intersection points.

[0113] Specifically, find the mesh surface F and the measurement plane The intersection points are then clustered to obtain the set of intersection points corresponding to each measurement plane, as shown below:

[0114]

[0115] in, Indicates the mesh surface F and the measurement plane The intersection of Indicates clustering of the obtained intersection points (for example, clustering can be performed based on distance, such as using the K-means clustering algorithm for clustering). The result obtained is the point set obtained by clustering, C i (θ, φ) represents the i-th point set obtained by clustering, i ranges from 1 to n, and n is the total number of point sets obtained by clustering. In an application scenario, n is equal to the number of set measurement planes, C i (θ, φ) represents the set of intersection points between the i-th measurement plane and the grid surface F.

[0116] After clustering, find the cluster (i.e., point set) closest to the measurement point P as the target cluster, and sort them in the order of connection:

[0117]

[0118] Among them, Q(θ,φ) is the target cluster, It means calculating the distance between the measurement point P and the i-th cluster, i ranges from 1 to n, and the obtained {q1(θ,φ),…,q j (θ,φ)…,q m (θ, φ)} is the set of intersection points in the target cluster arranged in connection order, where q1(θ, φ) represents the first intersection point, q j (θ, φ) represents the jth intersection point, q m (θ, φ) represents the mth intersection point, that is, the last intersection point. Then the girth equation can be expressed as the following formula (12):

[0119]

[0120] That is, the minimum girth is the sum of the distances of the intersection points in the target cluster in the order of connection. However, since the human body surface mesh model does not have a simple analytical expression, it is impossible to simply obtain an accurate solution through analytical methods such as derivation. Therefore, in another embodiment, step S400 can also use a heuristic search method to obtain the minimum girth, wherein the heuristic search method more specifically includes the following: Figure 7 Steps shown:

[0121] Step S501, limiting the search space range of the measurement point, wherein the search space range is formed by the intersection of each measurement plane of the measurement point and the human body surface mesh model. Specifically, in this embodiment, the minimum girth search space range of the point P is limited. Figure 8 is a schematic diagram of a range of a search space provided by an embodiment of the present invention, such as Figure 8As shown, the gray shaded area is the search space formed by the intersection of each section (i.e., measurement plane) and the human body surface grid model. The range of θ of the section normal is limited to [45°, 90°], and the range of φ is [0, 180°). It should be noted that the maximum range of θ is [0°, 180°], but since the section moves within a spherical range and has symmetry, the actual effective range is [0°, 90°], which is further reduced to [45°, 90°] in this embodiment; the maximum range of φ is [0°, 360°), and due to the symmetry of spherical search, the actual effective range is [0, 180°); the ranges of θ and φ of the section normal are related to the actual application scenario, and can be designed according to the actual situation to reduce the amount of calculation, and are not limited here.

[0122] Step S502: Search for the minimum girth in the search space using the normal vectors of the measurement planes and a coarse-to-fine iterative search method.

[0123] More specifically, within the value range of θ and φ, a coarse-to-fine iterative search method is used to search for the minimum girth in the search space range, wherein the coarse-to-fine iterative search method is to first adjust with a larger step size, and after reaching a certain condition, continue to adjust with a smaller step size to reduce the amount of calculation and increase the measurement accuracy. Specifically, for θ and φ, several discrete division points can be set within the corresponding value range, the value range is divided into some discrete intervals, and the girth of each discrete interval is calculated respectively.

[0124] In one embodiment, AngStep θ and AngStep φ Represents the coarse adjustment step of angle θ and φ, AngStep θ (For example, it can be set to 10° during initial coarse adjustment) as intervals, discretize the range of angle θ; φ (For example, it can be set to 10° for initial coarse adjustment) as intervals, discretize the range of angle φ, where AngStep θ and AngStep φ The value of is set and adjusted according to actual needs, and the two can be the same or different. For each set (θ, φ), the corresponding measurement plane equation is obtained, and then the measurement plane is translated up and down by a preset length (for example, 1 cm) respectively, and a strip area is cut out from the grid model using the two translated planes to facilitate calculation.

[0125] It should be noted that the measurement plane equation can be updated accordingly according to different values ​​of (θ, φ). More specifically, based on the surface mesh model, because the plane is translated up and down by 1 cm, there may be multiple rings in the strip area, and each ring may come from a different body part. In order to eliminate the grid data of the non-measured parts, the multiple rings in the strip area are clustered to form multiple clusters with point P as the center, and the distance between each cluster and point P is calculated. The cluster with the closest distance is selected, that is, the ring of the cluster and the corresponding measurement plane is obtained. That is, the strip area is clustered first, and then the ring closest to point P is selected.

[0126] Calculate the intersection of the measurement plane determined by (θ, φ) and the ring (the spherical coordinates of each point of the ring can be substituted into the determined plane equation for verification, or the coordinates of each point of the ring can be directly obtained), then store this circle of intersections in counterclockwise order, and then calculate the distances between adjacent intersections in turn and add them up to get the girth under (θ, φ). In this way, all girths within the discrete value range of θ and φ are obtained, and the minimum girth is selected and recorded as G1, and the corresponding binary variable value is recorded as (θ1, φ1). It should be noted that the values ​​of θ and φ can change at the same time, or one value can be fixed and the other can be adjusted (that is, not changing at the same time), which is not specifically limited here.

[0127] After obtaining G1, θ1 and φ1 are fine-tuned with smaller steps. Specifically, the discrete value points that are closely adjacent to (θ1, φ1) are used as boundaries to determine the new continuous interval of the binary variable: θ ∈ [θ1-AngStep θ ,θ1+AngStep θ ],φ ∈ [φ1-AngStep φ ,φ1+AngStep φ ], and then discretize the above new continuous interval with a smaller fine adjustment step (which can be set and adjusted according to actual needs). In this embodiment, AngStep θ / 4 and AngStep φ / 4 is the fine adjustment step, the new θ, φ continuous intervals are discretized, and the new minimum girth G2 is calculated within the discretized interval, where the specific process of calculating G2 is similar to the above-mentioned process of calculating G1, which will not be repeated here.

[0128] After obtaining G2, the difference between G1 and G2 is judged. If the value after G1 minus G2 approaches 0, it is considered that the searched minimum girth is sufficiently close to the optimal value, and it (G2) is used as the minimum girth corresponding to the above-mentioned measurement point, that is, the girth of the limb to be measured. That is, at the minimum girth G1, when the angle changes slightly, the minimum girth G2 obtained is close to G1 (the girth change in this direction is small), it is considered that the girth corresponding to this direction is the smallest and can be used as the girth of the limb to be measured. Otherwise, adjust the value of the fine adjustment step, search in a smaller range with a smaller step, and recalculate G2 until the minimum girth difference of two adjacent iterations (that is, the difference between G1 and the newly calculated G2) approaches 0. In this way, the accuracy of the obtained measurement results can be improved.

[0129] In one embodiment, the human limb circumference measurement method further includes outputting the circumference of the limb to be measured obtained by measurement. Specifically, the output can be performed by voice broadcast, print output, text display, pre-sent to a preset mailbox or terminal device, and there can be other output methods, which are not specifically limited here.

[0130] Exemplary Devices

[0131] like Fig. 9 As shown in , corresponding to the above-mentioned human limb circumference measurement method, an embodiment of the present invention further provides a human limb circumference measurement device, and the above-mentioned human limb circumference measurement device includes:

[0132] The scanning module 510 is used to scan the human body and obtain human body point cloud data.

[0133] In one embodiment, the acquisition module 510 may be a depth camera or a 3D scanner, which is used to acquire images of the human body to obtain the depth information of the human body and further generate human body point cloud data or to scan the human body to directly generate human body point cloud data. The depth camera may be, but is not limited to, one or more cameras based on time-of-flight (TOF) such as indirect time-of-flight (iToF) or direct time-of-flight (dToF), based on binocular vision, or based on structured light, etc., and is not limited here.

[0134] The model acquisition module 520 is used to create a human body surface mesh model based on the human body point cloud data.

[0135] The human body surface mesh model is a human body surface mesh model corresponding to a user who needs to measure the limb circumference. Specifically, the method is used in a non-contact measurement scenario. In the non-contact measurement scenario, the user can be scanned to generate a corresponding human body surface mesh model, so as to measure the limb circumference of the user through the human body surface mesh model corresponding to the user.

[0136] The measurement point acquisition module 530 is used to acquire the measurement points corresponding to the limb to be measured based on the human body surface grid model.

[0137] The limb to be measured is the limb of the user that needs to be measured, for example, the wrist, calf, neck and other limbs of the user. The measurement point is a point on the limb to be measured of the user. In this embodiment, the limb to be measured of the user is measured through the measurement point, that is, the girth finally measured is the girth through the measurement point. Specifically, the measurement point can be specified or selected by the user.

[0138] The measurement plane equation acquisition module 540 is used to acquire the measurement plane equation corresponding to the above measurement point.

[0139] Among them, the above-mentioned measurement plane equation is the equation corresponding to the measurement plane of each orientation passing through the above-mentioned measurement point. In this embodiment, because the size of the measurement plane only needs to be larger than the cross-sectional area of ​​the limb to be measured at the corresponding position, the orientation angle corresponding to each plane passing through the measurement point can be used as a variable to obtain a measurement plane equation based on the orientation angle. The measurement plane equation can be used as a general formula corresponding to all measurement planes. When the corresponding orientation angle takes different values, the measurement plane equation corresponds to the measurement plane of different angles (or directions). In this way, the measurement planes of various angles (or directions) are represented by a measurement plane equation general formula, and the corresponding variable (orientation angle) only needs to be adjusted to different values ​​to calculate the measurement girth corresponding to each measurement plane, which is conducive to reducing the calculation complexity and improving the measurement efficiency.

[0140] The circumference acquisition module 550 is used to acquire the minimum circumference corresponding to the above-mentioned measurement points based on the above-mentioned measurement plane equation and the above-mentioned human body surface grid model as the circumference of the above-mentioned limb to be measured.

[0141] In this embodiment, based on the measurement plane equation and the human body surface grid model, the minimum value (i.e., the minimum girth) of the girth obtained by intersecting the human body surface grid model in the measurement plane at each angle is obtained as the girth of the measurement point, i.e., the girth corresponding to the limb to be measured. The girth of the limb to be measured is the circumference of the limb corresponding to the user that needs to be measured. For example, when measuring the circumference of the user's wrist, the minimum circumference of the circle (or ellipse) obtained by intersecting the human body surface grid model at the wrist in the measurement plane at each angle is used as the circumference of the wrist, so as to simply and quickly obtain the circumference of the corresponding limb to be measured, without the need for plane projection, and without causing projection errors, which is conducive to improving the accuracy of the measurement results.

[0142] Specifically, in this embodiment, the specific functions of the above-mentioned human limb circumference measurement device and its various modules can also refer to the corresponding description in the above-mentioned human limb circumference measurement method, and will not be repeated here.

[0143] Based on the above embodiments, the present invention further provides an intelligent terminal, whose principle block diagram can be shown as follows: Fig.10 As shown. The above-mentioned intelligent terminal includes a processor, a memory, a network interface and a display screen connected through a scanning device and a system bus. Among them, the scanning device includes a depth camera or a 3D scanner, which is used to scan the human body and generate human body point cloud data; the processor of the intelligent terminal is used to provide computing and control capabilities. The memory of the intelligent terminal includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a human limb circumference measurement program. The internal memory provides an environment for the operation of the operating system and the human limb circumference measurement program in the non-volatile storage medium. The network interface of the intelligent terminal is used to communicate with an external terminal through a network connection. When the human limb circumference measurement program is executed by the processor, the steps of any of the above-mentioned human limb circumference measurement methods are implemented using the above-mentioned human point cloud data. The display screen of the intelligent terminal can be a liquid crystal display screen or an electronic ink display screen. It should be noted that the connection method between the scanning device and the processor can be wireless and / or wired, and can also be associated through the cloud, which is not limited here.

[0144] Those skilled in the art will understand that Fig.10 The principle block diagram shown in the figure is only a block diagram of a partial structure related to the scheme of the present invention, and does not constitute a limitation on the smart terminal to which the scheme of the present invention is applied. The specific smart terminal may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0145] In one embodiment, a smart terminal is provided. The smart terminal includes a memory, a processor, and a human limb circumference measurement program stored in the memory and executable on the processor. When the human limb circumference measurement program is executed by the processor, the following operation instructions are performed:

[0146] Construct a mesh model of the human body surface;

[0147] Based on the human body surface mesh model, obtain the measurement points corresponding to the limb to be measured;

[0148] Obtain the measurement plane equation corresponding to the above measurement point;

[0149] Based on the measurement plane equation and the human body surface mesh model, the minimum circumference corresponding to the measurement points is obtained as the circumference of the limb to be measured.

[0150] An embodiment of the present invention further provides a computer-readable storage medium, on which a human limb circumference measurement program is stored. When the human limb circumference measurement program is executed by a processor, the steps of any one of the human limb circumference measurement methods provided in the embodiments of the present invention are implemented.

[0151] It should be understood that the serial numbers of the steps in the above embodiments do not imply a sequence of execution, and the execution sequence of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0152] Those skilled in the art can clearly understand that, for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the above-mentioned device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of the present invention. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0153] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0154] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.

[0155] In the embodiments provided by the present invention, it should be understood that the disclosed apparatus / terminal equipment and method can be implemented in other ways. For example, the apparatus / terminal equipment embodiments described above are only illustrative, for example, the division of the above modules or units is only a logical function division, and in actual implementation, other division methods can be used, for example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0156] If the above-mentioned integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the present invention implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The above-mentioned computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the above-mentioned computer program includes computer program code, and the above-mentioned computer program code can be in source code form, object code form, executable file or some intermediate form. The above-mentioned computer-readable medium may include: any entity or device capable of carrying the above-mentioned computer program code, recording medium, U disk, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in the above-mentioned computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.

[0157] The embodiments described above are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, it should be understood by those skilled in the art that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features therein may be replaced by equivalents. However, these modifications or replacements do not deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the protection scope of the present invention.

Claims

1. A method for measuring the circumference of a human limb, characterized in that: The method comprises: Construct a mesh model of the human body surface; Acquire a limb to be measured of the target object; acquire a point in the human body surface mesh model corresponding to the limb to be measured as a measurement point corresponding to the limb to be measured, wherein the measurement point is a mesh vertex in the human body surface mesh model corresponding to the area of ​​the limb to be measured; the measurement point is determined by randomly selecting mesh vertices in the area corresponding to the limb to be measured, or the measurement point is determined by a measurement person specifying mesh vertices in the area corresponding to the limb to be measured; Obtaining a measurement plane equation corresponding to the measurement point; wherein the measurement plane equation is an equation corresponding to the measurement plane in each direction passing through the measurement point; Based on the measurement plane equation and the human body surface mesh model, the minimum circumference corresponding to the measurement point is obtained as the circumference of the limb to be measured.

2. The method for measuring the circumference of a human limb according to claim 1, characterized in that: The constructing of the human body surface mesh model comprises: Acquire human body point cloud data of the target object; A human body surface mesh model of the target object is constructed based on the human body point cloud data.

3. The method for measuring the circumference of a human limb according to claim 1, characterized in that: The obtaining the measurement plane equation corresponding to the measurement point includes: Constructing a measurement plane based on the neighborhood surface corresponding to the measurement point; Obtaining a normal line corresponding to the measuring point based on the measuring plane calculation; The measurement plane equation corresponding to the measurement point is obtained based on the normal line corresponding to the measurement point.

4. The method for measuring the circumference of a human limb according to claim 1, characterized in that: The step of obtaining the minimum circumference corresponding to the measuring point based on the measuring plane equation and the human body surface mesh model as the circumference of the limb to be measured includes: Acquire the girth equation corresponding to the measuring point based on the measuring plane equation and the human body surface mesh model; The minimum value of the girth equation is calculated and obtained as the girth of the limb to be measured.

5. The method for measuring the circumference of a human limb according to claim 4, characterized in that: The obtaining the girth equation corresponding to the measuring point based on the measuring plane equation and the human body surface mesh model includes: Obtaining the intersection point between the measurement plane corresponding to the measurement plane equation and the human body surface grid model; Perform clustering based on all the intersection points to obtain a target cluster closest to the measurement point; All intersection points in the target cluster are sorted, and the girth equation corresponding to the measurement point is obtained based on the sorted intersection points.

6. The method for measuring the circumference of a human limb according to claim 1, characterized in that: The method of obtaining the minimum girth corresponding to the measuring point based on the measuring plane equation and the human body surface mesh model further includes: obtaining the minimum girth using a heuristic search method, wherein the heuristic search method includes: Defining a search space range of the measurement point, wherein the search space range is formed by the intersection of each measurement plane of the measurement point and the human body surface grid model; The minimum girth is searched within the search space using the normal vectors of the measurement planes and a coarse-to-fine iterative search method.

7. A device for measuring the circumference of a human limb, characterized in that: The device comprises: A scanning module, used for scanning a human body and obtaining human body point cloud data; A model building module, used to build a human body surface mesh model based on the human body point cloud data; A measurement point acquisition module is used to acquire a limb to be measured of a target object; acquire a point in the human body surface mesh model corresponding to the limb to be measured as a measurement point corresponding to the limb to be measured, wherein the measurement point is a mesh vertex in the human body surface mesh model corresponding to the area of ​​the limb to be measured; the measurement point is determined by randomly selecting mesh vertices in the area corresponding to the limb to be measured, or the measurement point is determined by a measurement person specifying mesh vertices in the area corresponding to the limb to be measured; A measurement plane equation acquisition module, used to acquire the measurement plane equation corresponding to the measurement point; wherein the measurement plane equation is an equation corresponding to the measurement plane in each direction passing through the measurement point; The circumference acquisition module is used to acquire the minimum circumference corresponding to the measurement point based on the measurement plane equation and the human body surface grid model as the circumference of the limb to be measured.

8. An intelligent terminal, characterized in that: The intelligent terminal includes a scanning device, a memory, a processor, and a human limb circumference measurement program stored in the memory and executable on the processor. When the human limb circumference measurement program is executed by the processor, the scanning device is used to scan the human body and obtain the human body point cloud data to implement the steps of the human limb circumference measurement method as described in any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a human limb circumference measurement program, which, when executed by a processor, implements the steps of the human limb circumference measurement method as described in any one of claims 1 to 6.