Method, device and equipment for determining volume of irregular space body and storage medium

CN117218277BActive Publication Date: 2026-09-25SONOSCAPE MEDICAL CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210622265.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-02
Publication Date
2026-09-25
Estimated Expiration
2042-06-02

AI Technical Summary

Technical Problem

由于各个切面的形状不规则,计算各个切面的面积的过程各不相同且较为复杂,因此上述方案确定不规则空间体的体积的效率较低

Benefits of technology

[0019]通过以上方案可知,本申请提供的一种不规则空间体的体积确定方法,构建与不规则空间体形态相近的目标掩码体,通过统计目标掩码体中体素值为第一预设值的目标体素的数量计算不规则空间体的体积,与切面遍历的方法相比,不需要计算每个切面的面积,提高了不规则空间体的体积确定效率。本申请还公开了一种不规则空间体的体积确定装置及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117218277B_ABST
    Figure CN117218277B_ABST
Patent Text Reader

Abstract

The application discloses a method and device for determining the volume of an irregular space body, electronic equipment and a storage medium. The method comprises the following steps: obtaining a three-dimensional model of the irregular space body based on the body data detected by the device, and constructing a closed space body corresponding to the three-dimensional model of the irregular space body; the closed space body comprises a plurality of non-overlapping triangular facets; a mask body data of a preset size is constructed, and the voxel value of each voxel in the mask body data is initialized as a first preset value; a plurality of first cutting surfaces of the closed space body in different directions are cut to obtain a plurality of first cross-sectional profiles of the closed space body; the voxel value of the voxel outside the first cross-sectional profile in the mask body data is set as a second preset value to obtain a target mask body; the number of target voxels with the first preset value in the target mask body is counted, and the volume of the irregular space body is calculated according to the number of target voxels and the volume of a single voxel. The application improves the volume determination efficiency of the irregular space body.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of network technology, and more specifically, to a method and apparatus for determining the volume of an irregular spatial volume, an electronic device, and a computer-readable storage medium. Background Technology

[0002] In the field of network technology, it is sometimes necessary to construct irregular spatial volumes and determine their volumes. For example, when reconstructing an irregular spatial volume corresponding to an ultrasound examination object such as the liver using ultrasound equipment, it is necessary to determine its volume to provide data guidance for doctors.

[0003] In related technologies, the volume of an irregular spatial volume is determined by traversing its cross-sections, which involves calculating the area of ​​each irregular cross-section and summing the results. However, since the shapes of each cross-section are irregular, the process of calculating the area of ​​each cross-section is different and quite complex. Therefore, the above method is inefficient in determining the volume of an irregular spatial volume.

[0004] Therefore, how to improve the efficiency of determining the volume of irregular spatial volumes is a technical problem that needs to be solved by those skilled in the art. Summary of the Invention

[0005] The purpose of this application is to provide a method, apparatus, electronic device, and computer-readable storage medium for determining the volume of irregular spatial bodies, thereby improving the efficiency of determining the volume of irregular spatial bodies.

[0006] To achieve the above objectives, this application provides a method for determining the volume of an irregular spatial body, comprising: acquiring a three-dimensional model of the irregular spatial body based on volume data obtained by device detection; constructing a closed spatial body corresponding to the three-dimensional model of the irregular spatial body; wherein the closed spatial body includes multiple non-overlapping triangular facets; constructing mask volume data of a preset size, and initializing the voxel value of each voxel in the mask volume data to a first preset value; cutting the closed spatial body along multiple first cutting surfaces in different directions to obtain multiple first sectional contours of the closed spatial body; setting the voxel values ​​of voxels outside the first sectional contours in the mask volume data to a second preset value to obtain a target mask body; counting the number of target voxels in the target mask body whose voxel values ​​are the first preset values, and calculating the volume of the irregular spatial body based on the number of target voxels and the volume of a single voxel.

[0007] The construction of the closed space corresponding to the three-dimensional model of the irregular space includes: cutting the three-dimensional model of the irregular space along multiple second cutting surfaces to obtain multiple second cutting surface contours of the irregular space, and selecting multiple contour points in each second cutting surface contour; wherein the multiple second cutting surfaces intersect at a target straight line passing through the irregular space; assigning an index to the contour points in each second cutting surface contour according to a preset rule, interpolating the contour points with the same index value in adjacent second cutting surface contours to obtain interpolated contour points, and constructing the second cutting surface contour between adjacent second cutting surface contours based on the interpolated contour points; connecting different contour points in the same second cutting surface contour and contour points in different second cutting surface contours to form multiple non-overlapping triangular facets, and forming a closed space based on the triangular facets.

[0008] The step of interpolating contour points with the same index value in adjacent second-section contours to obtain interpolated contour points includes: determining target points between contour points with the same index value in adjacent second-section contours based on the three-dimensional model of the irregular space; calculating the coordinates of control points based on the coordinates of contour points with the same index value in adjacent second-section contours and the coordinates of the target points; performing Bezier interpolation using the coordinates of contour points with the same index value in adjacent second-section contours and the coordinates of the control points to obtain multiple first candidate interpolated contour points; interpolating adjacent first candidate interpolated contour points according to voxel distance to obtain multiple second candidate interpolated contour points; storing the first candidate interpolated contour points and the second candidate interpolated contour points in a target array according to their positional order, and selecting multiple interpolated contour points at equal intervals in the target array.

[0009] The step of determining the target point between contour points with the same index value in adjacent second sectional contours based on the three-dimensional model of the irregular spatial body includes: determining a first rotation angle and a second rotation angle of the two second cutting surfaces corresponding to the adjacent second sectional contours along the target line; determining a first distance and a second distance between the two contour points with the same index value in the adjacent second sectional contours and the target line; selecting a target rotation angle between the first rotation angle and the second rotation angle; and calculating a first target distance between the target point and the target line using the first distance, the second distance, the first rotation angle, the second rotation angle, and the target rotation angle; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in the adjacent second sectional contours, the first target distance, and the target rotation angle.

[0010] The step of determining the target point between contour points with the same index value in adjacent second sectional contours based on the three-dimensional model of the irregular spatial body includes: determining the rotation angle difference between the two second cutting surfaces corresponding to adjacent second sectional contours along the target straight line; determining the first distance and the second distance between the two contour points with the same index value in adjacent second sectional contours and the target straight line; calculating the first target distance between the target point and the target straight line based on the first distance and the second distance; and calculating the second target distance between the target point and the midpoint of the connecting line based on the first target distance and the rotation angle difference; wherein the connecting line is the line between the two contour points with the same index value in adjacent second sectional contours; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second sectional contours and the second target distance.

[0011] The step of determining the target point between contour points with the same index value in adjacent second sectional contours based on the three-dimensional model of the irregular spatial body includes: determining a first rotation angle and a second rotation angle of the two second cutting surfaces corresponding to the adjacent second sectional contours along the target line; determining a first distance and a second distance between the two contour points with the same index value in the adjacent second sectional contours and the target line; calculating the target rotation angle of the second cutting surface corresponding to the second sectional contour where the target point is located along the target line according to the first rotation angle and the second rotation angle; calculating the first target distance between the target point and the target line according to the first distance and the second distance; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in the adjacent second sectional contours, the first target distance, and the target rotation angle.

[0012] The step of determining the target point between contour points with the same index value in adjacent second-section contours based on the three-dimensional model of the irregular spatial body includes: determining a first distance and a second distance between two contour points with the same index value in adjacent second-section contours and the target line, respectively, and calculating a first target distance between the target point and the target line based on the first distance and the second distance; calculating a third target distance between the target point and the connecting line based on the coordinates of the two contour points with the same index value in adjacent second-section contours and the first target distance; wherein the connecting line is the line between two contour points with the same index value in adjacent second-section contours; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second-section contours and the third target distance.

[0013] The step of connecting different contour points in the same second sectional contour and contour points in different second sectional contours to form multiple non-overlapping triangular patches includes: determining the first intersection point and the second intersection point between the second sectional contour and the target line; assigning an index to each contour point in each second sectional contour in a clockwise or counterclockwise direction, starting from the first intersection point; constructing a contour point layer corresponding to the index of each second sectional contour based on contour points with the same index in different second sectional contours, and assigning an index to each second contour point layer starting from the first intersection point and ending at the second intersection point; connecting adjacent contour points in the same second sectional contour, connecting contour points belonging to adjacent second sectional contours in the same contour point layer, and connecting contour points belonging to the contour point layer with index n in the kth second sectional contour and contour points belonging to the contour point layer with index n+1 in the (k+1)th second sectional contour.

[0014] The method involves cutting the enclosed space along multiple first cutting surfaces in different directions to obtain multiple first sectional contours of the enclosed space, including: determining the maximum and minimum depths of the triangular facets in different directions; sequentially identifying different first cutting surfaces in different directions as target first cutting surfaces; cutting the enclosed space along the target first cutting surfaces to obtain target first sectional contours corresponding to the target first cutting surfaces; wherein, when cutting the enclosed space along the target first cutting surfaces in the target directions, the cutting depth of the target first cutting surfaces in the target directions is determined; triangular facets with a maximum depth greater than the cutting depth and a minimum depth less than the cutting depth in the target directions are identified as triangular facets to be cut; the intersection points of the target first cutting surfaces and the edges of the triangular facets to be cut are determined; and the target first sectional contours corresponding to the target first cutting surfaces are constructed based on the intersection points.

[0015] The step of determining the intersection point of the target first cutting surface and the edge of the triangular facet to be cut includes: determining the intersecting edge of the target first cutting surface and the triangular facet to be cut, and determining the vertex coordinates of the intersecting edge; and calculating the intersection point coordinates using the vertex coordinates and the cutting depth of the target first cutting surface in the target direction.

[0016] To achieve the above objectives, this application provides a device for determining the volume of an irregular spatial body, comprising: an acquisition module, configured to acquire a three-dimensional model of the irregular spatial body based on volume data detected by the device, and construct a closed spatial body corresponding to the three-dimensional model of the irregular spatial body; wherein the closed spatial body includes multiple non-overlapping triangular facets; a construction module, configured to construct mask volume data of a preset size, and initialize the voxel value of each voxel in the mask volume data to a first preset value; a cutting module, configured to cut the closed spatial body along multiple first cutting surfaces in different directions to obtain multiple first cross-sectional contours of the closed spatial body; a setting module, configured to set the voxel values ​​of voxels outside the first cross-sectional contours in the mask volume data to a second preset value, thereby obtaining a target mask body; and a calculation module, configured to count the number of target voxels in the target mask body whose voxel values ​​are the first preset values, and calculate the volume of the irregular spatial body based on the number of target voxels and the volume of a single voxel.

[0017] To achieve the above objectives, this application provides an electronic device, comprising: a memory for storing a computer program; and a processor for executing the computer program to implement the steps of the volume determination method for irregular spatial bodies as described above.

[0018] To achieve the above objectives, this application provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the method for determining the volume of an irregular spatial body as described above.

[0019] As can be seen from the above solutions, the method for determining the volume of an irregular spatial body provided in this application constructs a target mask with a shape similar to the irregular spatial body. The volume of the irregular spatial body is calculated by counting the number of target voxels with a first preset value in the target mask. Compared with the method of traversing cross-sections, this method does not require calculating the area of ​​each cross-section, thus improving the efficiency of determining the volume of the irregular spatial body. This application also discloses a device for determining the volume of an irregular spatial body, an electronic device, and a computer-readable storage medium, which can achieve the same technical effects.

[0020] It should be understood that the above general description and the following detailed description are merely exemplary and do not limit this application. Attached Figure Description

[0021] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. The drawings are used to provide a further understanding of this disclosure and constitute a part of the specification. They are used together with the following detailed description to explain this disclosure, but do not constitute a limitation of this disclosure. In the drawings:

[0022] Figure 1 This is a flowchart illustrating a method for determining the volume of an irregular spatial volume according to an exemplary embodiment;

[0023] Figure 2 This is a schematic diagram illustrating an enclosed space according to an exemplary embodiment;

[0024] Figure 3 A schematic diagram showing the intersection of the target first cutting surface and the triangular facet to be cut;

[0025] Figure 4 This is a schematic diagram illustrating the profile of a first cut surface in a first cut surface according to an exemplary embodiment;

[0026] Figure 5 To be Figure 4 A schematic diagram showing the voxel values ​​of the voxels outside the first cross-sectional contour after setting the second preset value;

[0027] Figure 6 for Figure 1 Detailed flowchart of step S11;

[0028] Figure 7 This is a schematic diagram illustrating a second cross-sectional profile according to an exemplary embodiment;

[0029] Figure 8a and Figure 8b This is a schematic diagram illustrating the spatial positional relationship between two contour points and a target point with the same index value in adjacent second cross-sectional contours, according to an exemplary embodiment.

[0030] Figure 9 This is a schematic diagram illustrating the spatial positional relationship between two contour points with index value i and a target point in an adjacent second cross-sectional contour, according to an exemplary embodiment.

[0031] Figure 10 for Figure 9 A schematic diagram of the projection along the target line;

[0032] Figure 11This is a schematic diagram illustrating the spatial relationship between two contour points and a target point with the same index value in adjacent second-section contours of an XOZ section according to an exemplary embodiment.

[0033] Figure 12 This is a schematic diagram illustrating a connection of contour points according to an exemplary embodiment;

[0034] Figure 13 This is a structural diagram illustrating a volume determination device for an irregular spatial body according to an exemplary embodiment;

[0035] Figure 14 This is a structural diagram of an electronic device according to an exemplary embodiment. Detailed Implementation

[0036] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application. Furthermore, in the embodiments of this application, "first," "second," etc., are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be noted that in the embodiments of this application, "multiple" can refer to at least one or at least two.

[0037] The method for determining the volume of an irregular spatial volume provided in this application embodiment can be applied to the following scenario: This scenario includes a medical device and an electronic device, which are connected via a network. The medical device collects signals from irregularly shaped objects such as tumors, livers, follicles, uteruses, and bladders, and then obtains volume data of the irregular spatial volume corresponding to the object based on these signals, transmitting it to the electronic device. The electronic device is a device capable of processing volume data; it can be a terminal device or a server. When it is a terminal device, it can be a medical device, a personal computer, a tablet computer, a smartphone, etc. The electronic device constructs a three-dimensional model based on the volume data of the irregular spatial volume, determines the volume of the irregular spatial volume based on the three-dimensional model, and returns it to the medical device. Alternatively, the medical device can construct a three-dimensional model based on the volume data of the irregular spatial volume, send the data related to the three-dimensional model to the electronic device, and the electronic device determines the volume of the irregular spatial volume based on the three-dimensional model and returns it to the medical device. The medical device displays the volume of the irregular spatial volume. In specific application scenarios, only the medical device may be used. That is, a three-dimensional model is constructed by medical equipment based on the volume data of the irregular space, the volume of the irregular space is determined based on the three-dimensional model, and the volume of the irregular space is displayed.

[0038] This application discloses a method for determining the volume of an irregular spatial body, which improves the efficiency of determining the volume of an irregular spatial body.

[0039] See Figure 1 The flowchart illustrates a method for determining the volume of an irregular spatial body according to an exemplary embodiment. The following description uses the application of this method to an electronic device as an example. It should be noted that this method can also be applied to ultrasonic devices. Figure 1 As shown, the method includes:

[0040] S11: Obtain a three-dimensional model of the irregular spatial body based on the volume data obtained from the device detection, and construct a closed spatial body corresponding to the three-dimensional model of the irregular spatial body; wherein, the closed spatial body includes multiple non-overlapping triangular facets;

[0041] The irregular spatial volume can be a three-dimensional spatial volume corresponding to the object being examined. The object being examined can be an object with a three-dimensional structure and an irregular shape (i.e., not a standard sphere, cuboid, or other regular spatial volume), such as the liver, uterus, or follicles. Medical equipment obtains corresponding volumetric data after performing ultrasound, CT (Computed Tomography), MRI, or endoscopy on these objects. This data allows for spatial structure reconstruction, resulting in a three-dimensional model of the irregular spatial volume that closely approximates the spatial structure of the object being examined. This model data is then sent to an electronic device. Alternatively, the electronic device can directly retrieve the model data of the irregular spatial volume sent by the medical device through memory access, thereby generating a three-dimensional model of the irregular spatial volume. The electronic device can also acquire the volumetric data of the object being examined and construct a three-dimensional model of the object based on this data, thus obtaining the three-dimensional model of the irregular spatial volume.

[0042] In practical implementation, a three-dimensional model is constructed based on the volume data of the irregular spatial body to build a corresponding closed spatial body. This closed spatial body includes multiple triangular facets, and the closed spatial body formed by the enclosed triangular facets can be a closed spatial body with a shape and structure similar to the irregular spatial body. That is, the triangular facets are arranged to form a closed spatial body that is as close as possible to the structure of the irregular spatial body, such as... Figure 2 As shown.

[0043] S12: Construct mask data of a preset size, and initialize the voxel value of each voxel in the mask data to a first preset value;

[0044] In this step, mask volume data corresponding to a preset size is constructed. The preset size is greater than or equal to the size of the 3D model of the irregular spatial volume. The voxel value of each voxel in the mask volume data is initialized to a first preset value, for example, the voxel value of each voxel is initialized to 0.

[0045] S13: Cut the enclosed space body along multiple first cutting surfaces in different directions to obtain multiple first cut surface contours of the enclosed space body;

[0046] In this step, the enclosed space is cut along multiple first cutting surfaces in different directions to obtain multiple first sectional contours of the enclosed space. The intersection of the cutting surfaces and the edge of the enclosed space is the sectional contour. For example, the coordinate system of the enclosed space is determined, and the maximum and minimum depths of the enclosed space along the X, Y, and Z axes are determined. For example, the maximum depth of the enclosed space along the X axis can be understood as the maximum coordinate value of the enclosed space along the X axis, and the minimum depth along the X axis can be understood as the minimum coordinate value along the X axis. Based on the preset cutting surface spacing, different cutting surface depths along the X, Y, and Z axes are determined between the maximum and minimum depths. Multiple first cutting surfaces with different cutting surface depths are determined along the X, Y, and Z axes of the space, and the enclosed space is cut sequentially along different first cutting surfaces. When obtaining the first sectional profile along the Z-axis, the two-dimensional coordinates of a profile point in the sectional profile with a depth of depth are (x, y), and its corresponding three-dimensional coordinates are (x, y, deepth). When obtaining the first sectional profile along the X-axis, the two-dimensional coordinates of a profile point in the sectional profile with a depth of depth are (x, y), and its corresponding three-dimensional coordinates are (deepth, y, x). When obtaining the first sectional profile along the Y-axis, the two-dimensional coordinates of a profile point in the sectional profile with a depth of depth are (x, y), and its corresponding three-dimensional coordinates are (x, deepth, y).

[0047] As a possible implementation, this step may include: determining the maximum and minimum depths of the triangular facets in different directions; sequentially determining different first cutting surfaces in different directions as target first cutting surfaces, and cutting the enclosed space body along the target first cutting surfaces to obtain the target first sectional profile corresponding to the target first cutting surfaces; wherein, when cutting the enclosed space body along the target first cutting surfaces in the target direction, the sectional depth of the target first cutting surfaces in the target direction is determined, the triangular facets with a maximum depth greater than the sectional depth and a minimum depth less than the sectional depth in the target direction are determined as the triangular facets to be cut, the intersection points of the target first cutting surfaces and the edges of the triangular facets to be cut are determined, and the target first sectional profile corresponding to the target first cutting surfaces is constructed based on the intersection points.

[0048] In the specific implementation, all triangular facets are traversed to obtain the maximum and minimum depths of the facets in each direction, and these are recorded in fAxisMax[3] and fAxisMin[3], respectively. The indices of the vertices of the maximum and minimum depths in the triangular facets are recorded in uIndMax[3] and uIndMin[3]. Different first cutting faces in different directions are sequentially determined as the target first cutting faces. When cutting the target first cutting face of the closed space body along the target direction, based on the records in fAxisMax[3] and fAxisMin[3], the triangular facets with a maximum depth greater than the cutting depth of the target first cutting facet and a minimum depth less than the cutting depth of the target first cutting facet in the target direction are determined as the triangular facets to be cut, and the intersection edges between the target first cutting facet and the triangular facets to be cut are determined. It can be understood that the intersection of the target first cutting facet and the triangular facets to be cut includes, for example, Figure 3 In the seven cases shown, max represents the vertex corresponding to the maximum depth of the triangle to be cut in the target direction, min represents the vertex corresponding to the minimum depth of the triangle to be cut in the target direction, med represents the third vertex of the triangle to be cut, and cutter is the first cutting surface of the target. Further, based on the records in uIndMax[3] and uIndMin[3], the vertex coordinates of the intersecting edge are determined, and the intersection coordinates are calculated using the vertex coordinates and the cutting surface depth of the first cutting surface of the target in the target direction. Among them, the coordinates of the two vertices of the intersecting edge are recorded as (x1, y1, z1) and (x2, y2, z2), and the intersection point is recorded as (x0, y0, z0). Taking the target direction as the Y-axis as an example, the cutting surface depth is y0, and we can conclude that:

[0049]

[0050] The coordinates of the intersection point between the target first cutting surface and the triangular facet to be cut can be calculated using the above formula. Based on multiple intersection points, the target first cutting surface contour corresponding to the target first cutting surface is constructed. In the same way, the different first cutting surface contours corresponding to different first cutting surfaces in different directions are obtained in turn.

[0051] S14: Set the voxel value of the voxel outside the first cross-sectional contour in the mask body data to a second preset value to obtain the target mask body;

[0052] It is understandable that, for a given first cut plane, the contour of the first cut plane may not accurately describe the three-dimensional contour of an irregular spatial volume. For example... Figure 4 As shown (it should be noted that, Figure 4The use of black in the text is merely for easier display of the first sectional outline (not to set the voxels of the first sectional outline points to black). The first sectional outline includes two intersecting closed curves; therefore, it cannot be determined whether the voxels inside the two closed curves are voxels inside the irregular space; only the voxels outside the closed curves are voxels outside the irregular space. Therefore, in this step, the voxel values ​​of the voxels outside the first sectional outline in the mask volume data are set to a second preset value. This second preset value differs from the first preset value; for example, the second preset value can be set to 255. Figure 4 The first cut surface is shown, and the voxel values ​​of the voxels outside the first cut surface contour are set to the second preset values, as shown below. Figure 5 As shown. Traversing all first cutting surfaces, the voxel values ​​of the voxels outside the first contour on all first cutting surfaces are set to the second preset value, thereby generating the target mask volume. It can be understood that the shape of the target mask volume is close to the structure of an irregular spatial volume.

[0053] S15: Count the number of target voxels in the target mask with voxel values ​​of the first preset value, and calculate the volume of the irregular space volume based on the number of target voxels and the volume of a single voxel.

[0054] In this step, the volume of the irregular spatial volume can be calculated by counting the number of target voxels with a voxel value of the first preset value in the target mask. Specifically, if the number of target voxels with a voxel value of the first preset value in the target mask is M, and the volume of a single voxel is v cm... 3 Where v is related to the probe and front-end configuration parameters, and the volume of the irregular space is M × v cm. 3 .

[0055] Furthermore, if the irregular spatial volume is the object being detected by ultrasound signals from an ultrasound device, a grayscale histogram of the object can be constructed based on the original three-dimensional grayscale data of the target mask and the object being detected, facilitating other diagnostic methods. Specifically, the grayscale value of the target voxel with a voxel value of a first preset value in the target mask is determined, and the number of voxels corresponding to different grayscale values ​​is counted. A grayscale histogram is then plotted with the grayscale value on the x-axis and the number of voxels on the y-axis.

[0056] In addition, the blood flow grayscale ratio of the detected object can be calculated based on the original three-dimensional blood flow data of the target mask and the detected object, thereby analyzing the blood flow situation of the detected object. Specifically, it is determined whether there is a corresponding blood flow voxel with a voxel value of the first preset value in the original three-dimensional blood flow data of the blood flow grayscale ratio in the target mask, and the number of blood flow voxels is counted as C. The number of target voxels with a voxel value of the first preset value in the target mask is M. Then, the blood flow grayscale ratio can be calculated as C / (MC).

[0057] The volume determination method for irregular spatial bodies provided in this application constructs a target mask body with a shape similar to the irregular spatial body. The volume of the irregular spatial body is calculated by counting the number of target voxels with a first preset value in the target mask body. Compared with the method of traversing the cross-section, it is not necessary to calculate the area of ​​each cross-section, which improves the efficiency of determining the volume of irregular spatial bodies.

[0058] The following provides a detailed description of step S11 in the above embodiments. For details, please refer to [link / reference needed]. Figure 6 , Figure 6 for Figure 1 A detailed flowchart of step S11. (See attached flowchart.) Figure 6 As shown, step S11 includes:

[0059] S111: The three-dimensional model of the irregular spatial body is cut along multiple second cutting surfaces to obtain multiple second cutting surface contours of the irregular spatial body, and multiple contour points are selected in each second cutting surface contour; wherein, the multiple second cutting surfaces intersect at a target straight line passing through the irregular spatial body;

[0060] In practice, the 3D model of the irregular spatial body is cut along a target straight line passing through it, resulting in multiple second-section contours of the irregular spatial body. All second-section contours intersect the target straight line. At least two cutting planes can be determined based on the target straight line, and the 3D model is cut based on these cutting planes. Furthermore, after cutting the 3D model of the irregular spatial body along the target straight line, at least two second-section contours of the irregular spatial body can be obtained, such as the second-section contours of the front and side faces of the irregular spatial body. At least two contour points are selected in each second-section contour. The number of contour points selected for each second-section contour can be the same or different, and the contour points can include the intersection of the target straight line and the second-section contour.

[0061] As a feasible implementation, the three-dimensional model of the irregular spatial body is cut along multiple second cutting surfaces to obtain multiple second-cut contours of the irregular spatial body. This includes: determining a target straight line passing through the irregular spatial body; determining a second cutting surface containing the target straight line; rotating the three-dimensional model of the irregular spatial body along the target straight line according to a preset rotation step; and after each rotation, cutting the three-dimensional model of the irregular spatial body along the second cutting surface to obtain multiple second-cut contours of the irregular spatial body. In a specific implementation, firstly, a target straight line passing through the three-dimensional model of the irregular spatial body is determined. This target straight line can be a straight line passing through the three-dimensional model of the irregular spatial body, with both ends of the target straight line located outside the three-dimensional model of the irregular spatial body. Secondly, a second cutting surface containing the target straight line is determined, for example, using the display surface of the three-dimensional model as the cutting surface. Then, with the target straight line as the rotation axis and a preset angle as the rotation step θ, the three-dimensional model of the irregular spatial body is rotated around the rotation axis. After each rotation, the three-dimensional model of the irregular spatial body is cut along the cutting surface to obtain multiple cut contours of the irregular spatial body. For example, if the rotation step θ is 90°, the second cross-sectional contours of the front and side of the irregular spatial body can be obtained.

[0062] Furthermore, multiple contour points are selected in each cross-sectional contour, and the nth contour point in the kth cross-sectional contour is denoted as P. (k,n) These contour points can be points that are evenly distributed in the cross-sectional contour, or points that are not evenly distributed.

[0063] As a feasible implementation, selecting multiple contour points in each second sectional contour includes: determining one of the intersection points of the second sectional contour and the target line as the target intersection point; dividing each second sectional contour into an equal number of contour segments starting from the target intersection point; and determining the endpoint of each contour segment in each second sectional contour as a contour point of each second sectional contour. In a specific implementation, if N contour points are selected in a second sectional contour, then the second sectional contour is divided into N contour segments starting from one of the intersection points of the second sectional contour and the target line, and the endpoint of each contour segment is determined as a contour point.

[0064] As another feasible implementation, selecting multiple contour points in each second sectional contour includes: determining the first and second intersection points of the second sectional contour with the target line; dividing each second sectional contour into a first part and a second part through the first and second intersection points; dividing each first part and each second part of each second sectional contour into the same number of contour segments; and determining the endpoint of each contour segment in each second sectional contour as a contour point of each second sectional contour. In a specific implementation, the second sectional contour is divided into two parts (i.e., the first part and the second part) by the two intersection points (i.e., the first intersection point and the second intersection point) of the second sectional contour with the target line. If N contour points are selected in a second sectional contour, then each part of the second sectional contour is divided into N / 2 contour segments on average, and the endpoint of each contour segment is determined as a contour point. Figure 7 As shown, the first intersection point of the second sectional contour and the target line is the contour point with index 0, and the second intersection point of the second sectional contour and the target line is the contour point with index N / 2-1. The left and right parts of the target line (i.e., the first part and the second part) each contain N / 2-1 contour points in addition to the first and second intersection points.

[0065] S112: Assign an index to each contour point in the second sectional contour according to a preset rule, interpolate the contour points with the same index value in adjacent second sectional contours to obtain interpolated contour points, and construct the second sectional contour between the adjacent second sectional contours based on the interpolated contour points.

[0066] In this step, indices are assigned to the contour points in each second-section contour according to preset rules. It should be noted that the index assignment method for contour points in each contour can be consistent, and the assigned index numbers can also correspond. Taking clockwise as an example, for the 0th contour, the index of the first intersection point is set to 0. Following the clockwise direction, the indices of the contour points adjacent to the first intersection point are set to 1, and the indices of the contour points adjacent to that adjacent contour point are set to 2, and so on, completing the index assignment for each contour point in the 0th contour. For the 1st contour, the index of the first intersection point is set to 0. Following the clockwise direction, the indices of the contour points adjacent to the first intersection point are set to 1, and the indices of the contour points adjacent to that adjacent contour point are set to 2, and so on, completing the index assignment for each contour point in the 1st contour. This process is repeated for each contour.

[0067] Furthermore, for every two contour points with the same index value in adjacent second sectional contours, interpolation is performed to obtain one or more interpolated contour points between each two contour points. The index value of the interpolated contour point is the same as the index value of the corresponding two contour points. The number of interpolated contour points between each two contour points can be the same. The first intersection point, each interpolated contour point and the second intersection point are connected in sequence according to the index value to construct one or more second sectional contours between adjacent second sectional contours. For all the interpolated second sectional contours, the rotation angle between adjacent sectional contours is represented as angle_slice. The number of second sectional contours numSlice = 180 / angle_slice.

[0068] As a feasible implementation, the step of interpolating contour points with the same index value in adjacent second-section contours to obtain interpolated contour points includes: determining target points between contour points with the same index value in adjacent second-section contours based on the three-dimensional model of the irregular space; calculating the coordinates of control points according to the coordinates of contour points with the same index value in adjacent second-section contours and the coordinates of the target points; performing Bezier interpolation using the coordinates of contour points with the same index value in adjacent second-section contours and the coordinates of the control points to obtain multiple first candidate interpolated contour points; interpolating adjacent first candidate interpolated contour points according to voxel distance to obtain multiple second candidate interpolated contour points; storing the first candidate interpolated contour points and the second candidate interpolated contour points in a target array according to their positional order, and selecting multiple interpolated contour points at equal intervals in the target array.

[0069] In practical implementation, firstly, the coordinates of the target point pt0 between two contour points pt1 and pt2 with the same index value in adjacent second-section contours are calculated. The spatial relationship between pt1, pt2, and pt0 within the contour of the irregular spatial body is as follows: Figure 8a and Figure 8b As shown. Figure 9 As shown, ind represents the index of the contour point, pt1 and pt2 are two contour points with index value i in the adjacent second sectional contour, and pt0 is the target point to be calculated. The positional relationship of pt1, pt2 and pt0 when projected along the target line is as follows: Figure 10 As shown, O is the projection point corresponding to the target line, r1 represents the distance between pt1 and the target line, r2 represents the distance between pt2 and the target line, and r0 represents the distance between pt0 and the target line.

[0070] For the calculation of the target point's coordinates, as a first feasible implementation, determining the target point between contour points with the same index value in adjacent second sectional contours based on the three-dimensional model of the irregular spatial body includes: determining a first rotation angle and a second rotation angle of the two second cutting surfaces corresponding to the adjacent second sectional contours along the target line; determining a first distance and a second distance between the two contour points with the same index value in adjacent second sectional contours and the target line; selecting a target rotation angle between the first rotation angle and the second rotation angle; and calculating a first target distance between the target point and the target line using the first distance, the second distance, the first rotation angle, the second rotation angle, and the target rotation angle; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second sectional contours, the first target distance, and the target rotation angle.

[0071] In specific implementation, the first distance r1 and the second distance r2 between two contour points pt1 and pt2 with the same index value in adjacent second sectional contours and the target line are determined. The first rotation angle thetaTer and the second rotation angle thetaOrig of the two second cutting surfaces corresponding to adjacent second sectional contours along the target line are determined. The target rotation angle thetaDst is selected between thetaTer and thetaOrig. The first target distance r0 between the target point pt0 and the target line is calculated.

[0072]

[0073] Then, calculate the coordinates of the target point pt0:

[0074] pt0.x=(pt2.x+pt1.x) / 2-r0cos(thetaDst)

[0075] pt0.y = (pt2.y + pt1.y) / 2.

[0076] pt0.z=(pt2.z+pt1.z) / 2+r0sin(thetaDst)

[0077] Where pt0.x represents the x-coordinate of pt0, pt0.y represents the y-coordinate of pt0, pt0.z represents the z-coordinate of pt0, and so on.

[0078] As a second feasible implementation, determining the target point between contour points with the same index value in adjacent second sectional contours based on the three-dimensional model of the irregular spatial body includes: determining the rotation angle difference between the two second cutting surfaces corresponding to adjacent second sectional contours along the target straight line; determining the first distance and the second distance between the two contour points with the same index value in adjacent second sectional contours and the target straight line; calculating the first target distance between the target point and the target straight line based on the first distance and the second distance; and calculating the second target distance between the target point and the midpoint of the connecting line based on the first target distance and the rotation angle difference; wherein the connecting line is the line between the two contour points with the same index value in adjacent second sectional contours; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second sectional contours and the second target distance.

[0079] In the specific implementation, firstly, the first target distance r0 = (r1 + r2) / 2 between the target point pt0 and the target line is calculated. Secondly, the first target distance h1 = r0 × (1 - cos((thetaTer - thetaOrig) / 2)) between pt0 and the midpoint of the line connecting pt1 and pt2 is calculated. pt0 lies on the perpendicular bisector of the line connecting the two lines. Finally, the coordinates of the target point pt0 are calculated.

[0080] pt0.x=(pt2.x+pt1.x) / 2-h1(pt2.y-pt1.y)

[0081] pt0.y = (pt2.y + pt1.y) / 2.

[0082] pt0.z=(pt2.z+pt1.z) / 2+h1(pt2.x-pt1.x)

[0083] As a third feasible implementation, determining the target point between contour points with the same index value in adjacent second sectional contours based on the three-dimensional model of the irregular spatial body includes: determining a first rotation angle and a second rotation angle of the two second cutting surfaces corresponding to the adjacent second sectional contours along the target line; determining a first distance and a second distance between the two contour points with the same index value in the adjacent second sectional contours and the target line; calculating the target rotation angle of the second cutting surface corresponding to the second sectional contour where the target point is located along the target line according to the first rotation angle and the second rotation angle; calculating the first target distance between the target point and the target line according to the first distance and the second distance; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in the adjacent second sectional contours, the first target distance, and the target rotation angle.

[0084] In the specific implementation, firstly, the first target distance r0 = (r1 + r2) / 2 between the target point pt0 and the target line is calculated; secondly, the target rotation angle thetaDst = (thetaTer + thetaOrig) / 2 along the target line is calculated for the second cutting surface corresponding to the second cutting surface contour where the target point pt0 is located; finally, the coordinates of the target point pt0 are calculated.

[0085] pt0.x=(pt2.x+pt1.x) / 2-r0cos(thetaDst)

[0086] pt0.y = (pt2.y + pt1.y) / 2.

[0087] pt0.z=(pt2.z+pt1.z) / 2+r0sin(thetaDst)

[0088] As a fourth feasible implementation, determining the target point between contour points with the same index value in adjacent second sectional contours based on the three-dimensional model of the irregular spatial body includes: determining a first distance and a second distance between two contour points with the same index value in adjacent second sectional contours and the target line, respectively, and calculating a first target distance between the target point and the target line based on the first distance and the second distance; calculating a third target distance between the target point and the connecting line based on the coordinates of the two contour points with the same index value in adjacent second sectional contours and the first target distance; wherein, the connecting line is the line between two contour points with the same index value in adjacent second sectional contours; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second sectional contours and the third target distance.

[0089] In practical implementation, the first target distance r0 = (r1 + r2) / 2 between the target point pt0 and the target line is calculated. Taking the XOZ section as an example, ... Figure 11 As shown, assuming points pt0, pt1, and pt2 are concyclic with center O', calculate the second target distance h2 from pt0 to the line connecting pt1 and pt2:

[0090]

[0091] vector The vector is obtained by rotating it 90° clockwise. At this time, with vector Parallelism yields: The coordinates of the target point pt0 are obtained by solving:

[0092] pt0.x=(pt2.x+pt1.x) / 2-q(pt2.y-pt1.y)

[0093] pt0.y = (pt2.y + pt1.y) / 2;

[0094] pt0.z=(pt2.z+pt1.z) / 2+q(pt2.x-pt1.x)

[0095] in,

[0096] Furthermore, calculate the coordinates of the control point ptOut for the Bezier interpolation:

[0097] ptOut.x=(4.0×pt0.x-pt1.x-pt2.x) / 2.0

[0098] ptOut.y=(4.0×pt0.y-pt1.y-pt2.y) / 2.0;

[0099] ptOut.z=(4.0×pt0.z-pt1.z-pt2.z) / 2.0

[0100] Then, between two contour points with the same index value in adjacent second-section contours, Bezier interpolation is performed based on the coordinates of the control points calculated above to obtain multiple first candidate interpolation contour points, which are recorded in a vector. <point3i>In bezierVec, the first candidate interpolation contour points are interpolated by pixel distance to obtain multiple second candidate interpolation contour points, which are then recorded in a vector. <point3i>tempVec. If the coordinates of two contour points with the same index value in adjacent second-section contours are (x... a ,y a ,z a ) and (x b ,y b ,z b ), calculate the distance between two contour points. Round d to obtain the number of second candidate interpolation contour points, and calculate the step size for each axis:

[0101]

[0102] The coordinates of the i-th second candidate interpolation contour point are calculated as follows:

[0103] (x a +i×dx,y a +i×dy,z a +i×dz).

[0104] Finally, the first and second candidate interpolation contour points are stored in the target array in positional order. Then, dsIndNum interpolation contour points are selected at equal intervals within the target array, where dsIndNum = θ / angle_slice-1. Here, dsIndNum is a pre-set quantity value.

[0105] S113: Connect different contour points in the same second sectional contour and contour points in different second sectional contours to form multiple non-overlapping triangular facets, and form a closed space body based on the triangular facets.

[0106] In this step, different contour points within the same cross-sectional contour are connected according to preset rules, and contour points within different cross-sectional contours are also connected to form multiple non-overlapping triangular facets. Specifically, two different contour points in one cross-sectional contour and another contour point in another cross-sectional contour are connected to form a triangular facet. This process is repeated across all contour points in all cross-sectional contours to form multiple non-overlapping triangular facets that can enclose a closed space. Two different contour points within one cross-sectional contour can be adjacent contour points. Furthermore, the closed space enclosed by each triangular facet can be a closed space with a shape similar to the structure of an irregular space; that is, the triangular facets enclose a closed space as closely as possible to the structure of an irregular space.

[0107] As a possible implementation, this step may include: determining the first intersection point and the second intersection point between the second sectional contour and the target straight line; assigning an index to each contour point in each second sectional contour in a clockwise or counterclockwise direction, starting from the first intersection point; constructing a contour point layer corresponding to the index of each second sectional contour based on contour points with the same index in different second sectional contours, and assigning an index to each second contour point layer starting from the first intersection point and ending at the second intersection point; connecting adjacent contour points in the same second sectional contour, connecting contour points belonging to adjacent second sectional contours in the same contour point layer, and connecting contour points belonging to the contour point layer with index n in the kth second sectional contour and contour points belonging to the contour point layer with index n+1 in the (k+1)th second sectional contour.

[0108] In practice, starting from one of the intersection points of the second tangential profile and the target straight line, an index is assigned to each profile point in a clockwise or counterclockwise direction. For example, in... Figure 7 In the diagram, the first intersection point of the second sectional contour and the target line is the contour point with index 0, and the second intersection point is the contour point with index N / 2-1. Further, based on contour points with the same index in different second sectional contours, a contour point layer corresponding to the index of each second sectional contour is constructed, i.e., N contour point layers are constructed, with the first intersection point as the starting point and the second intersection point as the ending point, and an index is assigned to each second contour point layer. Adjacent contour points in the same second sectional contour are connected; contour points belonging to adjacent sectional contours in the same contour point layer are connected; and contour points belonging to the contour point layer with index n in the k-th second sectional contour and the contour points belonging to the contour point layer with index n+1 in the (k+1)-th second sectional contour are connected, where n = 0, 1, ..., N-1. Figure 12 As shown, the topmost point is the first intersection of the second-section contour and the target line, which is the contour point with index 0. The bottommost point is the second intersection of the second-section contour and the target line, which is the contour point with index N / 2-1. The ellipse represents the contour point layer. Points on the same ellipse are contour points with the same index in different second-section contours. Taking the k-th and k+1-th second-section contours and the contour layers with indices n-1, n, and n+1 as examples, connecting adjacent contour points in the same second-section contour is equivalent to connecting P. (k,n-1) and P (k,n) and P (k,n+1) , connect P (k+1,n-1) and P (k+1,n) and P (k+1,n+1) Connecting contour points belonging to adjacent second-section contours within the same contour point layer, i.e., connecting P (k,n-1) and P (k+1,n-1) , connect P (k,n) and P (k+1,n) , connect P (k,n+1) and P (k+1,n+1) Connect the contour points belonging to the contour point layer with index n in the k-th second-section contour and the contour points belonging to the contour point layer with index n+1 in the (k+1)-th second-section contour, that is, connect P. (k,n-1) and P (k+1,n) , connect P (k,n) and P (k+1,n+1) .

[0109] This application discloses a method for determining the volume of an irregular spatial body. The following description uses the application of this method to an ultrasonic device as an example. The method includes:

[0110] The ultrasonic signal of the object being tested is acquired, and the ultrasonic volume data of the corresponding spatial volume of the object is obtained based on the ultrasonic signal. When the object being tested has an irregular shape, the spatial volume of the object is designated as an irregular spatial volume.

[0111] An ultrasonic 3D model is constructed based on the ultrasonic volume data of the object being tested, thus obtaining the ultrasonic 3D model of the object being tested.

[0112] In the ultrasonic 3D model of the object space, the target straight line passing through the object space is determined, and the cutting surface containing the target straight line is determined.

[0113] The ultrasonic 3D model of the object space is rotated along the target straight line according to a preset rotation step. After each rotation, the ultrasonic 3D model of the object space is cut along the cutting surface to obtain multiple second cutting surface contours of the object space.

[0114] Determine the first and second intersection points between the second sectional profile and the target line; divide each sectional profile into a first part and a second part through the first and second intersection points; divide each first part and each second part in each second sectional profile into the same number of profile segments; determine the endpoints of each profile segment in each sectional profile as the profile points of each second sectional profile.

[0115] Starting from the first intersection point, an index is assigned to each contour point in each second sectional contour in a clockwise direction. The first rotation angle and the second rotation angle of the two second cutting surfaces corresponding to adjacent second sectional contours along the target line are determined respectively. The first distance and the second distance between the two contour points with the same index value in adjacent second sectional contours and the target line are determined respectively. The target rotation angle is selected between the first rotation angle and the second rotation angle. The first target distance between the target point and the target line is calculated using the first distance, the second distance, the first rotation angle, the second rotation angle and the target rotation angle. The coordinates of the target point are calculated based on the coordinates of the two contour points with the same index value in adjacent second sectional contours, the first target distance and the target rotation angle.

[0116] The coordinates of the control points are calculated based on the coordinates of the contour points with the same index value in adjacent second-section contours and the coordinates of the target points. Bezier interpolation is performed using the coordinates of the contour points with the same index value in adjacent second-section contours and the coordinates of the control points to obtain multiple first candidate interpolation contour points. Interpolation is performed on adjacent first candidate interpolation contour points according to voxel distance to obtain multiple second candidate interpolation contour points. The first candidate interpolation contour points and second candidate interpolation contour points are stored in the target array in positional order. Multiple interpolation contour points are selected at equal intervals in the target array. The second-section contour between adjacent second-section contours is constructed based on the interpolation contour points.

[0117] Contour point layers corresponding to the index of each second-section contour are constructed based on contour points with the same index in different second-section contours. An index is assigned to each second contour point layer with the first intersection point as the starting point and the second intersection point as the ending point. Adjacent contour points in the same second-section contour are connected. Contour points belonging to adjacent second-section contours in the same contour point layer are connected. Contour points belonging to the contour point layer with index n in the k-th second-section contour and contour points belonging to the contour point layer with index n+1 in the (k+1)-th second-section contour are connected to form multiple non-overlapping triangular patches. These triangular patches enclose a closed space volume, which is the closed space volume corresponding to the space volume of the detected object.

[0118] Construct mask data of a preset size, and initialize the voxel value of each voxel in the mask data to the first preset value.

[0119] Determine the maximum and minimum depths of the triangular facets in different directions, and then define the different first cutting surfaces in different directions as the target first cutting surfaces. Cut the enclosed space body along the target first cutting surfaces to obtain the target first cut surface contour corresponding to the target first cutting surface.

[0120] Specifically, when cutting the first target cutting surface of the enclosed space body along the target direction, the cutting depth of the first target cutting surface in the target direction is determined. Triangular facets with a maximum depth greater than the cutting depth and a minimum depth less than the cutting depth in the target direction are identified as the triangular facets to be cut. The intersection points of the first target cutting surface and the triangular facets to be cut are determined to identify the intersecting edges of the first target cutting surface and the triangular facets to be cut. The vertex coordinates of the intersecting edges are determined. The coordinates of the intersection points are calculated using the vertex coordinates and the cutting depth of the first target cutting surface in the target direction. Based on the intersection points, the contour of the first target cutting surface corresponding to the first target cutting surface is constructed.

[0121] The voxel values ​​of the voxels outside the first cross-sectional contour of the target in the mask body data are set to the second preset value to obtain the target mask body.

[0122] The number of target voxels with a voxel value of the first preset value in the target mask is counted, and the volume of the detected object is calculated based on the number of target voxels and the volume of a single voxel.

[0123] The volume determination method for irregular spatial bodies provided in this application embodiment obtains ultrasonic volume data of the target spatial body based on ultrasonic detection, constructs an ultrasonic three-dimensional model based on the ultrasonic volume data, constructs a target mask body with a shape similar to the target spatial body, and calculates the volume of the target spatial body by counting the number of target voxels with a first preset value in the target mask body. Compared with the method of cross-section traversal, it does not require calculating the area of ​​each cross-section, thus improving the efficiency of determining the volume of the target spatial body.

[0124] The following describes an application embodiment of the method for determining the volume of an irregular spatial body provided in this application.

[0125] The ultrasound equipment collects ultrasound signals from the follicles, obtains the ultrasound body data corresponding to the follicles based on the ultrasound signals, and sends it to the electronic equipment.

[0126] The electronic device performs the following steps:

[0127] 1. Construct a three-dimensional ultrasound model of follicles based on ultrasound body data of follicles.

[0128] 2. In the ultrasound three-dimensional model of the follicle, determine the straight line l passing through the follicle and the cutting surface passing through the straight line l.

[0129] 3. Rotate the 3D ultrasound model of the follicle along the straight line l with a rotation step θ. After each rotation, cut the 3D ultrasound model of the follicle along the cutting plane to obtain multiple second-section contours of the follicle.

[0130] 4. Determine the first intersection point f1 and the second intersection point f2 between the second sectional profile and the straight line l; divide each second sectional profile into left and right parts through f1 and f2, and divide each left and right part into an equal number of profile points.

[0131] 5. Starting from f1, assign an index to each of the above contour points in a clockwise direction. Determine the first rotation angles thetaTer and thetaOrig of the two second cutting surfaces corresponding to the adjacent second cutting contours along the line l. Determine the two contour points pt1 and pt2 with the same index value in the adjacent second cutting contours. Determine the first distance r1 and the second distance r2 between pt1 and pt2 and the line l. Select the target rotation angle thetaDst between thetaTer and thetaOrig. Calculate the first target distance r0 between the target point pt0 and the line l using r1, r2, thetaTer, thetaOrig, and thetaDst. Calculate the coordinates of pt0 based on the coordinates of pt1, the coordinates of pt2, r0, and thetaDst.

[0132] 6. Calculate the coordinates of control point ptOut based on the coordinates of pt0, pt1, and pt2. Perform Bezier interpolation using the coordinates of pt1, pt2, and ptOut to obtain multiple first candidate interpolation contour points pt3. Interpolate adjacent pt3 ​​points according to voxel distance to obtain multiple second candidate interpolation contour points pt4. Store pt3 and pt4 in the target array tempVec in positional order. Select dsIndNum interpolation contour points at equal intervals in tempVec. Construct the second sectional contour between adjacent second sectional contours based on the interpolation contour points.

[0133] 7. Construct a contour point layer corresponding to the index of each second-section contour based on contour points with the same index in different second-section contours, and assign an index to each second contour point layer with f1 as the starting point and f2 as the ending point; connect adjacent contour points in the same second-section contour, connect contour points in the same contour point layer belonging to adjacent second-section contours, and connect contour points in the k-th second-section contour belonging to the contour point layer with index n and the (k+1)-th second-section contour belonging to the contour point layer with index n+1 to form multiple non-overlapping triangular facets. These triangular facets enclose a closed space, which is the closed space corresponding to the follicle.

[0134] 8. Construct mask data with the same size as the follicles, and initialize the voxel value of each voxel in the mask data to 0.

[0135] 9. Determine the maximum and minimum depths of the triangular facets in the X / Y / Z directions. Cut the closed space volume along the X / Y / Z directions to obtain the corresponding facet contours. Set the voxel values ​​of the voxels outside these facet contours in the mask volume data to 255 to obtain the target mask volume.

[0136] 10. Count the number M of target voxels with a voxel value of 0 in the target mask volume, when the volume of a single voxel is v cm. 3 At that time, the volume of the follicle is calculated based on the formula M×v.

[0137] 11. After calculating the volume of the follicle, the data is returned to the ultrasound equipment. The ultrasound equipment displays the volume of the follicle.

[0138] The following describes a volume determination device for an irregular spatial body provided in an embodiment of this application. The volume determination device for an irregular spatial body described below and the volume determination method for an irregular spatial body described above can be referred to each other.

[0139] See Figure 13 A structural diagram of a volume determination device for an irregular spatial body, according to an exemplary embodiment, is shown below. Figure 13 As shown, it includes:

[0140] The acquisition module 100 is used to acquire a three-dimensional model of an irregular spatial body based on the volume data obtained by the device detection, and to construct a closed spatial body corresponding to the three-dimensional model of the irregular spatial body; wherein, the closed spatial body includes multiple non-overlapping triangular facets;

[0141] The construction module 200 is used to construct mask data of a preset size and initialize the voxel value of each voxel in the mask data to a first preset value.

[0142] The cutting module 300 is used to cut the enclosed space body along multiple first cutting surfaces in different directions to obtain multiple first cut surface contours of the enclosed space body.

[0143] Setting module 400 is used to set the voxel value of the voxel outside the first cross-sectional contour in the mask body data to a second preset value to obtain the target mask body;

[0144] The calculation module 500 is used to count the number of target voxels in the target mask body whose voxel values ​​are the first preset value, and to calculate the volume of the irregular space body based on the number of target voxels and the volume of a single voxel.

[0145] The volume determination device for irregular spatial bodies provided in this application constructs a target mask body with a shape similar to the irregular spatial body. The volume of the irregular spatial body is calculated by counting the number of target voxels with a first preset value in the target mask body. Compared with the method of traversing the cross-section, it does not require calculating the area of ​​each cross-section, thus improving the efficiency of determining the volume of irregular spatial bodies.

[0146] Based on the above embodiments, as a preferred embodiment, the acquisition module 100 includes: an acquisition unit for acquiring a three-dimensional model of an irregular spatial body; a cutting unit for cutting the three-dimensional model of the irregular spatial body along multiple second cutting surfaces to obtain multiple second sectional contours of the irregular spatial body, and selecting multiple contour points in each second sectional contour; wherein the multiple second cutting surfaces intersect at a target straight line passing through the irregular spatial body; an interpolation unit for assigning an index to the contour points in each second sectional contour according to a preset rule, interpolating the contour points with the same index value in adjacent second sectional contours to obtain interpolated contour points, and constructing second sectional contours between adjacent second sectional contours based on the interpolated contour points; and a connection unit for connecting different contour points in the same second sectional contour and contour points in different second sectional contours to form multiple non-overlapping triangular facets, and forming a closed spatial body based on the triangular facets.

[0147] Based on the above embodiments, as a preferred implementation, the interpolation unit includes: an allocation subunit, used to assign an index to each contour point in the second cross-sectional contour according to a preset rule; a determination subunit, used to determine target points between contour points with the same index value in adjacent second cross-sectional contours based on the three-dimensional model of the irregular space body; a calculation subunit, used to calculate the coordinates of control points based on the coordinates of contour points with the same index value in adjacent second cross-sectional contours and the coordinates of the target points; a first interpolation subunit, used to perform Bezier interpolation using the coordinates of contour points with the same index value in adjacent second cross-sectional contours and the coordinates of the control points to obtain multiple first candidate interpolation contour points; a second interpolation subunit, used to interpolate adjacent first candidate interpolation contour points according to voxel distance to obtain multiple second candidate interpolation contour points; a selection subunit, used to store the first candidate interpolation contour points and the second candidate interpolation contour points in order of position to a target array, and select multiple interpolation contour points at equal intervals in the target array; and a construction subunit, used to construct the second cross-sectional contour between the adjacent second cross-sectional contours based on the interpolation contour points.

[0148] Based on the above embodiments, as a preferred implementation, the determining subunit is specifically used for: determining the first rotation angle and the second rotation angle of the two second cutting surfaces corresponding to adjacent second sectional contours along the target line; determining the first distance and the second distance between the two contour points with the same index value in the adjacent second sectional contours and the target line; selecting a target rotation angle between the first rotation angle and the second rotation angle; and calculating the first target distance between the target point and the target line using the first distance, the second distance, the first rotation angle, the second rotation angle, and the target rotation angle; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in the adjacent second sectional contours, the first target distance, and the target rotation angle.

[0149] Based on the above embodiments, as a preferred implementation, the determining subunit is specifically used for: determining the rotation angle difference between two second cutting surfaces corresponding to adjacent second sectional contours along the target straight line; determining the first distance and the second distance between two contour points with the same index value in adjacent second sectional contours and the target straight line; calculating the first target distance between the target point and the target straight line based on the first distance and the second distance; and calculating the second target distance between the target point and the midpoint of the connecting line based on the first target distance and the rotation angle difference; wherein, the connecting line is the line between two contour points with the same index value in adjacent second sectional contours; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second sectional contours and the second target distance.

[0150] Based on the above embodiments, as a preferred implementation, the determining subunit is specifically used for: determining the first rotation angle and the second rotation angle of the two second cutting surfaces corresponding to adjacent second sectional contours along the target line; determining the first distance and the second distance between the two contour points with the same index value in adjacent second sectional contours and the target line; calculating the target rotation angle of the second cutting surface corresponding to the second sectional contour where the target point is located along the target line according to the first rotation angle and the second rotation angle; calculating the first target distance between the target point and the target line according to the first distance and the second distance; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second sectional contours, the first target distance, and the target rotation angle.

[0151] Based on the above embodiments, as a preferred implementation, the determining subunit is specifically used for: determining a first distance and a second distance between two contour points with the same index value in adjacent second sectional contours and the target line, respectively; calculating a first target distance between the target point and the target line based on the first distance and the second distance; calculating a third target distance between the target point and the connecting line based on the coordinates of the two contour points with the same index value in adjacent second sectional contours and the first target distance; wherein, the connecting line is the line between two contour points with the same index value in adjacent second sectional contours; and calculating the coordinates of the target point based on the coordinates of the two contour points with the same index value in adjacent second sectional contours and the third target distance.

[0152] Based on the above embodiments, as a preferred implementation, the connection unit is specifically used for: determining the first intersection point and the second intersection point between the second sectional contour and the target straight line; assigning an index to each contour point in each second sectional contour in a clockwise or counterclockwise direction, starting from the first intersection point; constructing a contour point layer corresponding to the index of each second sectional contour based on contour points with the same index in different second sectional contours, and assigning an index to each second contour point layer starting from the first intersection point and ending at the second intersection point; connecting adjacent contour points in the same second sectional contour, connecting contour points belonging to adjacent second sectional contours in the same contour point layer, and connecting contour points belonging to the contour point layer with index n in the kth second sectional contour and contour points belonging to the contour point layer with index n+1 in the (k+1)th second sectional contour.

[0153] Based on the above embodiments, as a preferred embodiment, the cutting module 300 is specifically used for: determining the maximum and minimum depths of the triangular facets in different directions; sequentially determining different first cutting surfaces in different directions as target first cutting surfaces, and cutting the enclosed space body along the target first cutting surfaces to obtain the target first sectional profile corresponding to the target first cutting surfaces; wherein, when cutting the enclosed space body along the target first cutting surfaces in the target direction, the sectional depth of the target first cutting surfaces in the target direction is determined, the triangular facets with a maximum depth greater than the sectional depth and a minimum depth less than the sectional depth in the target direction are determined as the triangular facets to be cut, the intersection points of the target first cutting surfaces and the edges of the triangular facets to be cut are determined, and the target first sectional profile corresponding to the target first cutting surfaces is constructed based on the intersection points.

[0154] Based on the above embodiments, as a preferred embodiment, when cutting the target first cutting surface of the enclosed space body along the target direction, the cutting depth of the target first cutting surface in the target direction is determined, and the triangular facets with a maximum depth greater than the cutting depth and a minimum depth less than the cutting depth in the target direction are determined as the triangular facets to be cut. The intersection edge of the target first cutting surface and the triangular facets to be cut is determined, and the vertex coordinates of the intersection edge are determined. The intersection point coordinates are calculated using the vertex coordinates and the cutting depth of the target first cutting surface in the target direction, and the target first cutting surface contour corresponding to the target first cutting surface is constructed based on the intersection point.

[0155] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0156] Based on the hardware implementation of the above program modules, and in order to implement the method of the embodiments of this application, the embodiments of this application also provide an electronic device. Figure 14 This is a structural diagram of an electronic device according to an exemplary embodiment, such as... Figure 14 As shown, the electronic device includes:

[0157] Communication interface 1 enables information exchange with other devices, such as network devices;

[0158] Processor 2 is connected to communication interface 1 to enable information interaction with other devices. When running a computer program, it executes the volume determination method for irregular spatial bodies provided by one or more of the aforementioned technical solutions. The computer program is stored in memory 3.

[0159] Of course, in practical applications, the various components in an electronic device are coupled together through bus system 4. It can be understood that bus system 4 is used to achieve communication and connection between these components. In addition to the data bus, bus system 4 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 14 The general will label all buses as Bus System 4.

[0160] The memory 3 in this embodiment is used to store various types of data to support the operation of the electronic device. Examples of such data include any computer program used to operate on the electronic device.

[0161] It is understood that memory 3 can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memory 3 described in the embodiments of this application is intended to include, but is not limited to, these and any other suitable types of memory.

[0162] The methods disclosed in the embodiments of this application can be applied to processor 2, or implemented by processor 2. Processor 2 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 2 or by instructions in the form of software. The processor 2 may be a general-purpose processor, DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Processor 2 can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in memory 3. Processor 2 reads the program in memory 3 and completes the steps of the aforementioned method in combination with its hardware.

[0163] When processor 2 executes the program, it implements the corresponding processes in the various methods of the embodiments of this application. For the sake of brevity, these will not be described in detail here.

[0164] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, such as a memory 3 that stores a computer program, which can be executed by a processor 2 to complete the steps described in the aforementioned method. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.

[0165] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.

[0166] Alternatively, if the integrated units described above are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause an electronic device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.

[0167] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for determining the volume of an irregular spatial volume, characterized in that, include: Based on the volume data obtained from device detection, a three-dimensional model of an irregular spatial body is obtained, and a closed spatial body corresponding to the three-dimensional model of the irregular spatial body is constructed; wherein, the closed spatial body includes multiple non-overlapping triangular facets; Construct mask data of a preset size, and initialize the voxel value of each voxel in the mask data to a first preset value; The enclosed space is cut along multiple first cutting surfaces in different directions to obtain multiple first cut surface contours of the enclosed space. The voxel values ​​of the voxels outside the first cross-sectional contour in the mask body data are set to a second preset value to obtain the target mask body; The number of target voxels with voxel values ​​of the first preset value in the target mask volume is counted, and the volume of the irregular space volume is calculated based on the number of target voxels and the volume of a single voxel. The enclosed space corresponding to the three-dimensional model of the irregular space includes: The three-dimensional model of the irregular spatial body is cut along multiple second cutting surfaces to obtain multiple second cutting surface contours of the irregular spatial body, and multiple contour points are selected in each second cutting surface contour; wherein, the multiple second cutting surfaces intersect at a target straight line passing through the irregular spatial body; According to the preset rules, an index is assigned to the contour points in each second section contour. Interpolation is performed on the contour points with the same index value in adjacent second section contours to obtain interpolated contour points. The second section contour between the adjacent second section contours is constructed based on the interpolated contour points. Connect different contour points in the same second sectional contour and contour points in different second sectional contours to form multiple non-overlapping triangular facets, and form a closed space body based on the triangular facets.

2. The volume determination method according to claim 1, characterized in that, The step of interpolating contour points with the same index value in adjacent second-section contours to obtain interpolated contour points includes: Based on the three-dimensional model of the irregular spatial volume, target points between contour points with the same index value in adjacent second cross-sectional contours are determined. The coordinates of the control point are calculated based on the coordinates of the contour points with the same index value in adjacent second-section contours and the coordinates of the target point. By using the coordinates of contour points with the same index value in adjacent second cross-sectional contours and the coordinates of the control points, Bezier interpolation is performed to obtain multiple first candidate interpolation contour points; Multiple second candidate interpolation contour points are obtained by interpolating adjacent first candidate interpolation contour points according to voxel distance; The first candidate interpolation contour points and the second candidate interpolation contour points are stored in the target array in order of position, and multiple interpolation contour points are selected at equal intervals in the target array.

3. The volume determination method according to claim 2, characterized in that, The determination of target points between contour points with the same index value in adjacent second cross-sectional contours based on the three-dimensional model of the irregular spatial volume includes: Determine the first and second rotation angles of the two second cutting surfaces corresponding to adjacent second cutting surface contours along the target line, respectively; determine the first and second distances between the two contour points with the same index value in adjacent second cutting surface contours and the target line, respectively. Select a target rotation angle between the first rotation angle and the second rotation angle, and calculate the first target distance between the target point and the target line using the first distance, the second distance, the first rotation angle, the second rotation angle, and the target rotation angle; The coordinates of the target point are calculated based on the coordinates of two contour points with the same index value in adjacent second cross-sectional contours, the first target distance, and the target rotation angle.

4. The volume determination method according to claim 2, characterized in that, The determination of target points between contour points with the same index value in adjacent second cross-sectional contours based on the three-dimensional model of the irregular spatial volume includes: Determine the difference in rotation angles of the two second cutting surfaces corresponding to adjacent second cutting surface contours along the target straight line, and determine the first distance and the second distance between the two contour points with the same index value in adjacent second cutting surface contours and the target straight line; The first target distance between the target point and the target line is calculated based on the first distance and the second distance, and the second target distance between the target point and the midpoint of the connecting line is calculated based on the first target distance and the difference in rotation angle; wherein, the connecting line is the line connecting two contour points with the same index value in adjacent second sectional contours; The coordinates of the target point are calculated based on the coordinates of two contour points with the same index value in adjacent second cross-sectional contours and the second target distance.

5. The volume determination method according to claim 2, characterized in that, The determination of target points between contour points with the same index value in adjacent second cross-sectional contours based on the three-dimensional model of the irregular spatial volume includes: Determine the first and second rotation angles of the two second cutting surfaces corresponding to adjacent second cutting surface contours along the target line, respectively; determine the first and second distances between the two contour points with the same index value in adjacent second cutting surface contours and the target line, respectively. Calculate the target rotation angle of the second cutting surface corresponding to the second cutting surface contour where the target point is located along the target straight line based on the first rotation angle and the second rotation angle, and calculate the first target distance between the target point and the target straight line based on the first distance and the second distance; The coordinates of the target point are calculated based on the coordinates of two contour points with the same index value in adjacent second cross-sectional contours, the first target distance, and the target rotation angle.

6. The volume determination method according to claim 2, characterized in that, The determination of target points between contour points with the same index value in adjacent second cross-sectional contours based on the three-dimensional model of the irregular spatial volume includes: Determine the first distance and the second distance between two contour points with the same index value in adjacent second cross-sectional contours and the target line, and calculate the first target distance between the target point and the target line based on the first distance and the second distance; The third target distance between the target point and the connecting line is calculated based on the coordinates of two contour points with the same index value in adjacent second-section contours and the first target distance; wherein, the connecting line is the line between two contour points with the same index value in adjacent second-section contours; The coordinates of the target point are calculated based on the coordinates of two contour points with the same index value in adjacent second cross-sectional contours and the distance to the third target.

7. The volume determination method according to claim 1, characterized in that, The step of connecting different contour points within the same second sectional contour and contour points within different second sectional contours to form multiple non-overlapping triangular facets includes: Determine the first and second intersection points between the second cross-sectional profile and the target straight line; Starting from the first intersection point, assign an index to each contour point in each second cross-sectional contour in a clockwise or counterclockwise direction; Contour point layers corresponding to the index of each second face contour are constructed based on contour points with the same index in different second face contours, and an index is assigned to each contour point layer with the first intersection point as the starting point and the second intersection point as the ending point. Connect adjacent contour points in the same second-section contour; connect contour points belonging to adjacent second-section contours in the same contour point layer; connect contour points belonging to the contour point layer with index n in the k-th second-section contour and contour points belonging to the contour point layer with index n+1 in the (k+1)-th second-section contour.

8. The volume determination method according to claim 1, characterized in that, The enclosed space is cut along multiple first cutting surfaces in different directions to obtain multiple first cut surface contours of the enclosed space, including: Determine the maximum and minimum depths of the triangular facet in different directions; Different first cutting surfaces in different directions are sequentially identified as target first cutting surfaces, and the enclosed space is cut along the target first cutting surfaces to obtain the target first cut surface contour corresponding to the target first cutting surface. Specifically, when cutting the closed space body along the target direction, the cutting depth of the target first cutting surface in the target direction is determined, and the triangular facets with a maximum depth greater than the cutting depth and a minimum depth less than the cutting depth in the target direction are determined as the triangular facets to be cut. The intersection point of the target first cutting surface and the edge of the triangular facet to be cut is determined, and the target first cutting surface contour corresponding to the target first cutting surface is constructed based on the intersection point.

9. The volume determination method according to claim 8, characterized in that, Determining the intersection point of the target first cutting surface and the edge of the triangular facet to be cut includes: Determine the intersection edge between the target first cutting surface and the triangular facet to be cut, and determine the vertex coordinates of the intersection edge; The intersection coordinates are calculated using the vertex coordinates and the cutting depth of the first cutting surface of the target in the target direction.

10. A device for determining the volume of an irregular spatial body, characterized in that, include: The acquisition module is used to acquire a three-dimensional model of an irregular spatial body based on the volume data obtained by the device detection, and to construct a closed spatial body corresponding to the three-dimensional model of the irregular spatial body; wherein, the closed spatial body includes multiple non-overlapping triangular facets; A construction module is used to construct mask data of a preset size and initialize the voxel value of each voxel in the mask data to a first preset value; A cutting module is used to cut the enclosed space body along multiple first cutting surfaces in different directions to obtain multiple first cut surface contours of the enclosed space body; The setting module is used to set the voxel value of the voxel outside the first cross-sectional contour in the mask body data to a second preset value to obtain the target mask body; The calculation module is used to count the number of target voxels with voxel values ​​of the first preset value in the target mask, and to calculate the volume of the irregular space volume based on the number of target voxels and the volume of a single voxel. The acquisition module includes: A cutting unit is used to cut the three-dimensional model of the irregular spatial body along multiple second cutting surfaces to obtain multiple second cutting surface contours of the irregular spatial body, and to select multiple contour points in each second cutting surface contour; wherein, the multiple second cutting surfaces intersect at a target straight line passing through the irregular spatial body; An interpolation unit is used to assign an index to each contour point in the second sectional contour according to a preset rule, interpolate contour points with the same index value in adjacent second sectional contours to obtain interpolated contour points, and construct the second sectional contour between the adjacent second sectional contours based on the interpolated contour points. The connecting unit is used to connect different contour points in the same second sectional contour and contour points in different second sectional contours to form multiple non-overlapping triangular facets, and to form a closed space body based on the triangular facets.

11. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to execute the computer program to implement the steps of the method for determining the volume of an irregular spatial body as described in any one of claims 1 to 9.

12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the method for determining the volume of an irregular spatial body as described in any one of claims 1 to 9.