Medical image reconstruction method and electronic device

By copying medical image data to the graphics processor's memory and utilizing multi-threaded parallel interpolation and filtering, the inefficiency problem in existing technologies is solved, achieving highly efficient and automated medical image reconstruction.

CN120747385BActive Publication Date: 2025-11-18SHENZHEN INST OF ADVANCED TECH CHINESE ACAD OF SCI
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511262024.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-05
Publication Date
2025-11-18
Estimated Expiration
2045-09-05

AI Technical Summary

Technical Problem

Existing medical image reconstruction technologies are inefficient, especially when processing large volumes and high-resolution data, which takes a long time and is difficult to meet the requirements of real-time and batch processing. Furthermore, the reliance on manual operation and CPU calculation limits the interpolation efficiency.

Method used

Medical image data is copied into the memory of the graphics processor, and linear interpolation is performed in parallel using the multi-threaded processing of the graphics processor. Interpolation and filtering are performed in parallel and efficiently to generate a 3D mesh and reconstruct the image model.

Benefits of technology

It improves the efficiency of medical image reconstruction, realizes automated processing, reduces computing time, adapts to real-time processing of large-scale data, and avoids tedious manual operation steps.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120747385B_ABST
    Figure CN120747385B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a medical image reconstruction method and an electronic device. The method comprises: in response to a medical image reconstruction instruction, copying medical image data stored in a first memory of a central processing unit to a second memory of a graphics processing unit; executing, on the graphics processing unit, a kernel function of a unified computing device architecture for implementing linear interpolation, to perform linear interpolation on the medical image data stored in the second memory in parallel by using a plurality of threads started by the graphics processing unit, to obtain interpolated data; returning the interpolated data stored in the second memory to the first memory; generating a first three-dimensional grid based on the interpolated data stored in the first memory, and reconstructing a medical image model corresponding to the medical image data according to the first three-dimensional grid. The technical solution of the embodiments of the present application improves the efficiency of medical image reconstruction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of image processing technology, and in particular to a medical image reconstruction method and electronic device. Background Technology

[0002] Medical image reconstruction is a core support for modern medical diagnosis, treatment, and scientific research.

[0003] However, the efficiency of medical image reconstruction is currently low and urgently needs to be addressed. Summary of the Invention

[0004] This invention provides a medical image reconstruction method and electronic device, which improves the efficiency of medical image reconstruction.

[0005] According to one aspect of the present invention, a medical image reconstruction method is provided, which may include: in response to a medical image reconstruction instruction, copying medical image data stored in a first memory of a central processing unit to a second memory of a graphics processing unit; executing a kernel function on the graphics processing unit for a kernel function for implementing linear interpolation in a unified computing device architecture, so as to perform linear interpolation on the medical image data stored in the second memory in parallel using multiple threads started by the graphics processing unit to obtain interpolated data; transferring the interpolated data stored in the second memory back to the first memory; generating a first three-dimensional mesh based on the interpolated data stored in the first memory, and reconstructing a medical image model corresponding to the medical image data based on the first three-dimensional mesh.

[0006] According to another aspect of the present invention, an electronic device is provided, which may include: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, the computer program being executed by the at least one processor to implement the medical image reconstruction method provided in any embodiment of the present invention when executed by the at least one processor.

[0007] The technical solution of this invention, in response to a medical image reconstruction instruction, copies medical image data stored in the first memory of the central processing unit (CPU) to the second memory of the graphics processing unit (GPU), enabling the GPU to perform linear interpolation on the medical image data. For the kernel function of the unified computing device architecture used to implement linear interpolation, the kernel function is executed on the GPU. Multiple threads started by the GPU are used to perform linear interpolation on the medical image data stored in the second memory in parallel, obtaining interpolated data. The interpolated data stored in the second memory is then returned to the first memory. A first three-dimensional mesh is generated based on the interpolated data stored in the first memory, and a medical image model corresponding to the medical image data is reconstructed based on the first three-dimensional mesh, thus achieving the reconstruction of the medical image model. This technical solution, by copying the medical image data to the second memory of the GPU and then performing linear interpolation on the medical image data in parallel and efficiently through multiple threads started by the GPU, improves the efficiency of interpolation of medical image data. Furthermore, the entire medical image reconstruction process does not rely on manual intervention and can be performed automatically, thereby improving the efficiency of medical image reconstruction.

[0008] It should be understood that the description in this section is not intended to identify key or important features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0009] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0010] Figure 1 This is a flowchart of a medical image reconstruction method provided according to an embodiment of the present invention;

[0011] Figure 2 This is a flowchart of another medical image reconstruction method provided according to an embodiment of the present invention;

[0012] Figure 3 This is a flowchart of another medical image reconstruction method provided according to an embodiment of the present invention;

[0013] Figure 4 This is a schematic diagram of a two-dimensional view of the aorta in an optional example of an embodiment of a medical image reconstruction method provided according to an embodiment of the present invention;

[0014] Figure 5 This is a schematic diagram of a three-dimensional view of the aorta in an optional example of an embodiment of a medical image reconstruction method provided according to an embodiment of the present invention.

[0015] Figure 6 This is a schematic diagram of a two-dimensional view of cerebral blood vessels in an optional example of an experimental result in another medical image reconstruction method provided according to an embodiment of the present invention;

[0016] Figure 7 This is a schematic diagram of a three-dimensional view of cerebral blood vessels in an optional example of an experimental result in another medical image reconstruction method provided according to an embodiment of the present invention;

[0017] Figure 8 This is a structural block diagram of a medical image reconstruction device according to an embodiment of the present invention;

[0018] Figure 9 This is a schematic diagram of the structure of an electronic device that implements the medical image reconstruction method of the present invention. Detailed Implementation

[0019] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0020] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. The same applies to "target," "original," etc., and will not be repeated here. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0021] Before introducing the embodiments of the present invention, the implementation process of the current schemes for medical image reconstruction and the reasons for their low efficiency in medical image reconstruction will be explained by way of example, so as to better understand why the scheme proposed in the embodiments of the present invention improves the efficiency of medical image reconstruction.

[0022] Currently, the reconstruction of medical image data into medical image models mainly relies on manual processing tools with graphical interfaces that require manual operation, such as 3DSlicer, InsightToolkit-Segmenting and Navigation Platform (ITK-SNAP), and some supporting Digital Imaging and Communications in Medicine (DICOM) toolkits. However, the aforementioned manual processing tools, which require manual operation, rely on manual interaction with a graphical user interface (GUI). Most processes, such as image loading, threshold adjustment, target region annotation, and model export, must be completed manually, resulting in low automation and difficulty in achieving automated pipelines. Consequently, their efficiency in medical image reconstruction is low, especially for batch data processing. Furthermore, while these manual processing tools use a central processing unit (CPU) for calculations such as interpolation and mesh generation, they lack parallel computing optimization and do not fully utilize the acceleration provided by the graphics processing unit (GPU) in interpolation operations during medical image reconstruction. Therefore, the efficiency of interpolation operations is limited by CPU performance, leading to long reconstruction times and consequently low efficiency, particularly when processing large-volume and high-resolution medical image data (such as high-resolution magnetic resonance imaging). The time consumed during imaging (MRI) or computed tomography (CT) scans increases cubically, making this problem particularly significant and difficult to meet the requirements of real-time and batch processing. In addition, the interpolation and other operations of the aforementioned manual processing tools need to be completed across multiple modules or even multiple software programs, making automation and process optimization difficult.

[0023] To address this, this embodiment of the invention copies medical image data to the second memory of the graphics processor, and then uses multiple threads started by the graphics processor to perform linear interpolation on the medical image data in parallel and efficiently. This improves the efficiency of interpolation of medical image data, thereby improving the efficiency of medical image reconstruction. This will be explained in detail below.

[0024] Figure 1This is a flowchart of a medical image reconstruction method provided in an embodiment of the present invention. This embodiment is applicable to medical image reconstruction. The method can be executed by the medical image reconstruction device provided in this embodiment of the present invention. The device can be implemented by software and / or hardware, and can be integrated into an electronic device, which can be various user terminals or servers.

[0025] See Figure 1 The method of this invention specifically includes the following steps:

[0026] S110, in response to a medical image reconstruction instruction, copies the medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor.

[0027] Among them, the medical image reconstruction command can be understood as a command used to instruct the reconstruction of medical images.

[0028] The first memory can be understood as the memory of the central processing unit.

[0029] Medical imaging data can be understood as imaging data in the medical field; medical imaging data can be, for example, in the Neuroimaging Informatics Technology Initiative (NIfTI) format (.nii / .nii.gz), and medical imaging data can be in multiple versions of NIfTI format to enable input of multiple versions of NIfTI format.

[0030] The second memory can be understood as the memory of the graphics processor.

[0031] In this embodiment of the invention, medical image data stored in a first memory can be copied to a second memory in response to a medical image reconstruction instruction.

[0032] In this embodiment of the invention, before copying the medical image data stored in the first memory to the second memory, the core class (vtkNIFTIImageReader) of the Visualization Toolkit (VTK) library for reading formatted medical image data can be used to read the medical image data, and then the medical image data can be converted into a NumPy array to obtain array data for subsequent processing; according to the pre-set label values ​​(Label) The array data is binarized (e.g., explicit binarization) to obtain mask data containing only the target tissue (voxel values ​​that meet the conditions corresponding to the label values ​​are set to 1, and the remaining voxel values ​​are set to 0, i.e., generating binary mask data of 0-1). The target tissue can be understood as the tissue for which a medical image model needs to be built. The target tissue can be at least one of blood vessels, organs, bones, or tissues, etc. Based on the mask data, the array data is processed (e.g., only the data corresponding to the mask data is retained) to obtain the first processing result. The first processing result is converted into float32 type transformed data to ensure the consistency of data type in subsequent interpolation and other operations. Based on the transformed data, the medical image data is updated so that the medical image data only includes the data corresponding to the target tissue, laying a consistent foundation for subsequent spatial processing and model reconstruction operations.

[0033] In this embodiment of the invention, before copying the medical image data stored in the first memory to the second memory, the spatial parameters (such as dimension, spacing and / or origin) of the medical image data can be automatically parsed, and the medical image data can be updated according to the obtained parsing results so that the medical image data can be adapted to subsequent linear interpolation and other operations.

[0034] S120. For a unified computing device architecture, the kernel function for implementing linear interpolation is executed on the graphics processor to utilize multiple threads started by the graphics processor to perform linear interpolation on the medical image data stored in the second memory in parallel, so as to obtain the interpolated data.

[0035] The Compute Unified Device Architecture (CUDA) can be understood as an architecture designed for GPU-accelerated computing.

[0036] A kernel function can be understood as a kernel function used to implement a unified computing device architecture for linear interpolation.

[0037] A thread can be understood as a thread started by the graphics processor to perform linear interpolation.

[0038] Linear interpolation can be understood as an interpolation method where the interpolation function is a first-order polynomial. Linear interpolation can also be understood as a method of upsampling medical image data. Linear interpolation can be bilinear interpolation or trilinear interpolation, etc. Using trilinear interpolation allows for continuous estimation of input voxel values ​​in space, avoiding step-like boundaries, so that the interpolated data still maintains the original anatomical structure continuity. Therefore, the embodiments of the present invention can use trilinear interpolation.

[0039] Interpolated data can be understood as data obtained by linearly interpolating medical image data.

[0040] In this embodiment of the invention, the kernel function of the unified computing device architecture can be executed on the graphics processor to utilize multiple threads started by the graphics processor to perform linear interpolation on the medical image data stored in the second memory in parallel, and obtain the interpolated data. The above process can improve the spatial resolution of the medical image data, make the boundaries of the medical image model obtained by subsequent reconstruction smoother, the three-dimensional reconstruction effect more delicate, and at the same time help to maintain the consistency of the three-dimensional reconstruction volume.

[0041] In this embodiment of the invention, multiple threads launched by the graphics processor are used to perform linear interpolation on the medical image data stored in the second memory in parallel. This can be achieved by using the parallel computing framework of PyTorch to decompose the interpolation calculation of the medical image data into GPU thread blocks. This process can reduce the complexity from O(N) (CPU) to O(N / P) (GPU), where P is the number of CUDA cores.

[0042] In this embodiment of the invention, linear interpolation is performed on the medical image data. For example, an interpolation factor 's' can be determined for the medical image data. Through formula Perform trilinear interpolation at the interpolation factor, where, The output voxels are obtained after interpolation (the interpolated data is obtained based on each output voxel and the number of medical images). , , .

[0043] In this embodiment of the invention, after obtaining the interpolated data, median filtering can be performed on the interpolated data. For example, an odd-numbered kernel (3 / 5 / 7) that can eliminate noise and preserve edge features can be used to perform median filtering on the interpolated data to remove noise points or isolated small patches, smooth the target area corresponding to the target tissue, and preserve boundary features to protect edge information, thereby improving the quality of medical image reconstruction. The size of the filter kernel involved in the median filtering can be determined according to the capacity or can be preset, such as 3x3x3 or 5x5x5. The median filtering process can be non-linear to suit the interpolated data. The process of eliminating salt-and-pepper noise or small voxel islands in the interpolated data can be achieved by executing a kernel function on the graphics processor to perform median filtering on the interpolated data in parallel using multiple threads started by the graphics processor, and updating the interpolated data according to the second processing result. Alternatively, the process of performing median filtering on the interpolated data can be achieved by having the central processing unit perform median filtering on the interpolated data after the interpolated data stored in the second memory is transferred back to the first memory, and updating the interpolated data according to the third processing result.

[0044] S130: The interpolated data stored in the second memory is sent back to the first memory.

[0045] In this embodiment of the invention, the interpolated data stored in the second memory can be sent back to the first memory so that the central processing unit can continue to perform processing related to medical image reconstruction.

[0046] S140. A first three-dimensional mesh is generated based on the interpolated data stored in the first memory, and a medical image model corresponding to the medical image data is reconstructed based on the first three-dimensional mesh.

[0047] The first three-dimensional mesh can be understood as a three-dimensional mesh generated based on the interpolated data.

[0048] A medical image model can be understood as a model reconstructed from a first three-dimensional mesh that corresponds to the medical image data; a medical image model can be, for example, a three-dimensional model in Standard Tessellation Language (STL).

[0049] In this embodiment of the invention, a first three-dimensional mesh can be generated based on the interpolated data stored in the first memory. For example, dilation (opening operation) and / or erosion (closing operation) can be performed on the interpolated data, and the first three-dimensional mesh is generated according to the operation results to strengthen the first three-dimensional mesh structure, close small holes, and eliminate isolated points. It is understood that dilation can fill small holes in the interpolated data and connect fine structures; erosion can remove redundant isolated points or shrink boundaries in the interpolated data; the combination of dilation and erosion operations helps improve the integrity and coherence of the subsequently reconstructed medical image model; dilation and / or erosion operations can be anisotropic operations; dilation can be performed multiple adjustable iterations, and erosion can also be performed multiple adjustable iterations. The number of iterations corresponding to dilation and erosion operations can be preset or determined according to the parameters of the central processing unit. The number of iterations can be 0-3 times. The iteration process of dilation operation D can be, for example, as follows: The iterative process of the erosion operation E can be, for example, When both expansion and erosion operations are performed, expansion can be performed first, followed by erosion. Expansion and erosion operations can be performed separately based on their respective structuring elements, for example, through formulas. The three-dimensional shape is defined based on the radius r of the structuring element. The expansion and / or erosion operations are performed based on the three-dimensional shape to control the extent of surface expansion and contraction. The structuring element can iteratively control the extent of morphological operations. For example, the structuring element can be a 3x3x3 structuring element. The element radius can determine the neighborhood during expansion or erosion operations. The element radius can be customized. For example, when the element radius is 1, it can be a 6-neighborhood. For another example, when the element radius is 2, it can be a 26-neighborhood.

[0050] In this embodiment of the invention, before generating the first three-dimensional mesh based on the interpolated data stored in the first memory, the interpolated data can be subjected to 50-1000 low-pass filtering iterations using the core filter class (vtkWindowedSinc) in VTK for three-dimensional data smoothing (denoising) to smooth and eliminate high-frequency noise on the surface. For example, a transfer function of... The vtkWindowedSinc filter performs 50-1000 low-pass filtering iterations on the interpolated data, where... =0.01 is the cutoff frequency, fstop=0.1. It's important to note that the relationship between the number of iterations N in the low-pass filter and the smoothing effect is: roughness reduction rate... (k is a material-related constant), the number of iterations N can be controlled by the smoothing iterations parameter (smooth_iterations) to balance smoothing speed and quality.

[0051] In this embodiment of the invention, before generating the first three-dimensional mesh based on the interpolated data stored in the first memory, the interpolated data, which may be in NumPy format and has undergone multi-stage processing, can be converted into an image data object that can be directly used by the VTK framework. The interpolated data is updated according to the conversion result so that the mesh generation operation can be performed subsequently. For example, a container (vtkImageData) object for three-dimensional image data can be constructed, and the image size and spatial resolution (Spacing) of the image data object can be set. The spatial resolution can be determined according to the interpolation factor. The origin coordinates of this image data object are consistent with the medical image data. The interpolated data in NumPy format is converted into a voxel (Scalar) array of VTK and set to the Scalars property of the vtkImageData object so as to obtain the conversion result based on the Scalar array and the vtkImageData object. The interpolated data is then updated according to the conversion result.

[0052] In this embodiment of the invention, a medical image model can be reconstructed based on a first three-dimensional mesh.

[0053] In this embodiment of the invention, before reconstructing the medical image model corresponding to the medical image data based on the first three-dimensional mesh, the first three-dimensional mesh can be smoothed to remove burrs and irregularities on its surface, thereby improving the visualization and subsequent processing quality of the reconstructed medical image model. For example, the number of smoothing iterations and the filtering bandwidth (e.g., 0.01) can be set, and non-manifold smoothing can be enabled (ensuring smoothing effects even in complex topology cases). Under the specified number of smoothing iterations, filtering bandwidth, and non-manifold smoothing conditions, the first three-dimensional mesh is smoothed, and the first three-dimensional mesh is updated based on the obtained third processing result. It should be noted that the number of iterations for mesh smoothing can be multiple, and this number of iterations can be preset or determined based on factors such as capacity.

[0054] In this embodiment of the invention, after the medical image model is reconstructed based on the first three-dimensional mesh, the medical image model can be exported as an STL standard format file for use by other three-dimensional design software or three-dimensional printing equipment. For example, an output file path can be set, and the medical image model can be written to a .stl file and exported according to the output file path through the core class (vtkSTLWriter) module in VTK used to write three-dimensional mesh data to an STL format file.

[0055] It is understood that the medical image reconstruction process of the technical solution of the present invention can perform linear interpolation of medical image data in parallel and efficiently, which can significantly reduce the calculation time, thereby improving the efficiency of interpolation of medical image data and thus improving the efficiency of medical image reconstruction, which is conducive to realizing real-time processing of large-scale data; and it does not require the collaboration of multiple modules or even multiple software to complete the various operations involved in medical image reconstruction. Therefore, it does not rely on manual labor and can be carried out automatically, avoiding the tedious manual operation of manual processing tools, thereby improving the efficiency of medical image reconstruction.

[0056] The technical solution of this invention, in response to a medical image reconstruction instruction, copies medical image data stored in the first memory of the central processing unit (CPU) to the second memory of the graphics processing unit (GPU), enabling the GPU to perform linear interpolation on the medical image data. For the kernel function of the unified computing device architecture used to implement linear interpolation, the kernel function is executed on the GPU. Multiple threads started by the GPU are used to perform linear interpolation on the medical image data stored in the second memory in parallel, obtaining interpolated data. The interpolated data stored in the second memory is then returned to the first memory. A first three-dimensional mesh is generated based on the interpolated data stored in the first memory, and a medical image model corresponding to the medical image data is reconstructed based on the first three-dimensional mesh, thus achieving the reconstruction of the medical image model. This technical solution, by copying the medical image data to the second memory of the GPU and then performing linear interpolation on the medical image data in parallel and efficiently through multiple threads started by the GPU, improves the efficiency of interpolation of medical image data. Furthermore, the entire medical image reconstruction process does not rely on manual intervention and can be performed automatically, thereby improving the efficiency of medical image reconstruction.

[0057] An optional technical solution involves reconstructing a medical image model corresponding to medical image data based on a first three-dimensional mesh, including: obtaining the curvature of each vertex in the first three-dimensional mesh, and obtaining the edge folding cost based on the curvature; sorting the edges in the first three-dimensional mesh according to the edge folding cost corresponding to each vertex to obtain a sorting result; simplifying the first three-dimensional mesh sequentially based on the edges in the sorting result; and reconstructing the medical image model corresponding to the medical image data based on the currently obtained simplified three-dimensional mesh when the simplification ratio of the first three-dimensional mesh reaches a preset ratio.

[0058] Here, a vertex can be understood as the vertex of a grid in the first three-dimensional grid.

[0059] Curvature can be understood as the curvature of the first three-dimensional mesh at the vertex.

[0060] It's important to note that edge folding merges the two vertices on either side of an edge into a new vertex, while simultaneously deleting the associated edges and faces. Therefore, the cost of edge folding can be understood as the cost corresponding to the impact on the geometric accuracy or visual quality of the first 3D mesh when folding the edge corresponding to a vertex; it can also be understood as the error of the new vertex after merging vertices with other vertices.

[0061] In this embodiment of the invention, the curvature of each vertex in the first three-dimensional mesh can be obtained, and the edge folding cost can be obtained based on the curvature, for example, through an edge folding cost function. The cost of edge folding is obtained based on the curvature. ,in, For curvature, and These are the weighting coefficients.

[0062] The sorting result can be understood as the result obtained by sorting each edge in the first three-dimensional mesh.

[0063] In this embodiment of the invention, the edges in the first three-dimensional mesh can be sorted according to the edge folding cost corresponding to each vertex to obtain a sorting result. For example, the edges in the first three-dimensional mesh can be sorted according to the edge folding cost of the vertex corresponding to each edge to obtain a sorting result.

[0064] An edge can be understood as an edge in the first three-dimensional mesh.

[0065] The simplification ratio can be understood as the simplification ratio of the first three-dimensional mesh.

[0066] The preset scale can be understood as a preset scale for simplifying the first 3D mesh according to requirements; the preset scale can be, for example, 0.1~0.5; the preset scale can be set directly (e.g., through the mesh simplification scale (target_reduction) parameter), or it can be determined by the preset number of retained faces (mesh), for example, through a formula. Based on the number of retained face pieces Determine the preset ratio R, where, This represents the total number of facets.

[0067] In this embodiment of the invention, the first three-dimensional mesh can be simplified sequentially based on each edge in the sorting result. For example, the first three-dimensional mesh can be simplified sequentially based on each edge in the sorting result using the efficient three-dimensional mesh simplification filter (vtkDecimatePro) in VTK.

[0068] In this embodiment of the invention, before the first three-dimensional mesh is simplified sequentially, PreserveTopologyOn() can be enabled to prevent the mesh topology of the first three-dimensional mesh from being destroyed during the simplification process, thereby preventing the shape of the reconstructed medical image model from being destroyed.

[0069] In this embodiment of the invention, a medical image model can be reconstructed based on the currently obtained simplified three-dimensional mesh, provided that the simplification ratio reaches a preset ratio.

[0070] In this embodiment of the invention, for each vertex in the first 3D mesh, the curvature of the vertex is obtained, and the edge folding cost is obtained based on the curvature. The edges in the first 3D mesh are then sorted according to the edge folding cost corresponding to each vertex, resulting in a sorting result. Based on the edges in the sorting result, the first 3D mesh is sequentially simplified. When the simplification ratio reaches a preset ratio, a medical image model is reconstructed based on the currently obtained simplified 3D mesh. Compared to related solutions that lack refined post-processing for complex medical image data, especially those with a fixed reduction in the number of facets and a lack of curvature optimization support, the above technical solution simplifies the first 3D mesh, reducing the number of mesh facets, lowering the size of the first 3D mesh, and reducing processing difficulty. Furthermore, simplifying the first 3D mesh according to a preset ratio enables refined post-processing of complex medical image data, which is beneficial for balancing the accuracy and computational load of medical image reconstruction, as well as optimizing the storage and rendering efficiency of the medical image model.

[0071] Another alternative technical solution involves copying medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor, including: copying multiple medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor respectively, so as to realize the parallel reconstruction of multiple medical image data.

[0072] In this embodiment of the invention, multiple medical image data stored in the first memory can be copied to the second memory respectively to achieve parallel reconstruction of multiple medical image data. The above technical solution can realize automatic batch reconstruction of medical image data.

[0073] Another alternative technical solution involves copying medical image data stored in the first memory of the central processing unit (CPU) to the second memory of the graphics processor (GPU), including: checking the availability of the GPU; and if the GPU is available, copying the medical image data stored in the first memory of the CPU to the second memory of the GPU.

[0074] In this embodiment of the invention, availability can be checked, for example, an anomaly detection mechanism can be set to check availability; the anomaly detection mechanism can also verify the dimensions of medical image data to prevent memory overflow.

[0075] In this embodiment of the invention, medical image data stored in the first memory can be copied to the second memory when a graphics processor is available.

[0076] In this embodiment of the invention, CUDA availability can also be explicitly checked, and if CUDA is available, the medical image data stored in the first memory can be copied to the second memory.

[0077] In this embodiment of the invention, if it is detected that there is no graphics processor, the graphics processor is unavailable, or the CUDA availability is lower than a preset threshold, it can automatically switch to CPU mode (reserved interface) so that the process of linear interpolation of medical image data can be performed directly by the CPU, thereby ensuring that the downgraded processing of medical image reconstruction is achieved when there is no graphics processor, the graphics processor is unavailable, or the CUDA availability is lower than a preset threshold.

[0078] In this embodiment of the invention, availability can be checked; if the graphics processor is available, the medical image data stored in the first memory is copied to the second memory. The above technical solution, by copying the medical image data to the second memory when the graphics processor is available, can improve the success rate of linear interpolation of the medical image data.

[0079] Another alternative technical solution involves storing medical image data in a medical image file and copying the medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor. This includes: obtaining the file extension of the medical image file stored in the first memory of the central processing unit; reading the medical image data from the medical image file based on the reader corresponding to the file extension; and copying the medical image data to the second memory of the graphics processor.

[0080] Medical image files can be understood as files that store medical image data.

[0081] The file extension can be understood as an extension used to indicate the type and format of medical image files.

[0082] A reader can be understood as a device used to read medical image data.

[0083] In this embodiment of the invention, the file extension can be obtained; based on the reader corresponding to the extension, the medical image data in the medical image file is read, and the medical image data is copied to the second memory. The above technical solution, by reading the medical image data through the file extension and copying the medical image data to the second memory, can ensure accurate copying of the medical image data to the second memory.

[0084] Figure 2 This is a flowchart of another medical image reconstruction method provided in this embodiment of the invention. This embodiment is based on and optimized from the above-described technical solutions. Optionally, in this embodiment, the medical image reconstruction method further includes: obtaining the capacity of the second memory and determining the interpolation factor based on the capacity; using multiple threads started by the graphics processor to perform linear interpolation on the medical image data stored in the second memory in parallel to obtain interpolated data, including: using multiple threads started by the graphics processor to perform linear interpolation on the medical image data stored in the second memory in parallel at the interpolation factor to obtain interpolated data. The explanations of terms that are the same as or corresponding to those in the above embodiments will not be repeated here.

[0085] See Figure 2 The method in this embodiment may specifically include the following steps:

[0086] S210, in response to a medical image reconstruction instruction, copies the medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor.

[0087] S220: Obtain the capacity of the second memory and determine the interpolation factor based on the capacity.

[0088] Here, capacity can be understood as the size of the second memory.

[0089] The interpolation factor can be understood as the density ratio of the interpolated data points relative to the original data points during the linear interpolation process of medical image data. The interpolation factor can be an integer or a non-integer, meaning that linear interpolation supports non-integer scaling, thereby improving the flexibility of medical image reconstruction. The interpolation factor can be determined based on the capacity or can be preset. Specifically, the interpolation factor can be controlled by the user parameter scale_factor, which can be preset or determined based on the capacity. The interpolation factor can be 1-4 times.

[0090] In this embodiment of the invention, the capacity can be obtained, and the interpolation factor can be determined based on the capacity.

[0091] S230. For a unified computing device architecture, the kernel function for implementing linear interpolation is executed on the graphics processor to utilize multiple threads started by the graphics processor to perform linear interpolation at the interpolation factor on the medical image data stored in the second memory in parallel, so as to obtain the interpolated data.

[0092] In this embodiment of the invention, multiple threads started by the graphics processor can be used to perform linear interpolation at the interpolation factor on the medical image data stored in the second memory in parallel to obtain the interpolated data.

[0093] S240: The interpolated data stored in the second memory is sent back to the first memory.

[0094] S250. Generate a first three-dimensional mesh based on the interpolated data stored in the first memory, and reconstruct a medical image model corresponding to the medical image data based on the first three-dimensional mesh.

[0095] The technical solution of this invention obtains the capacity of the second memory and determines the interpolation factor based on the capacity. Multiple threads started by the graphics processor are used to perform linear interpolation at the interpolation factor on the medical image data stored in the second memory in parallel, obtaining the interpolated data. Compared to solutions using fixed module settings, linear interpolation is limited by the range of interface parameters and lacks the ability to automatically adjust according to hardware configuration. The above technical solution, by determining the interpolation factor based on the capacity, can support dynamic adjustment of the interpolation factor to adapt to the capacity of the second memory, achieving flexible adaptation to different hardware environments. This avoids problems such as memory overflow or calculation anomalies caused by improper interpolation factor settings during medical image reconstruction, especially when the medical image data is extremely large.

[0096] Figure 3 This is a flowchart of another medical image reconstruction method provided in this embodiment of the invention. This embodiment is based on and optimized from the above-mentioned technical solutions. In this embodiment, optionally, generating a first three-dimensional mesh based on interpolated data stored in a first memory includes: obtaining the topological structure of the data to be eroded based on the interpolated data stored in the first memory, and performing an erosion operation on the data to be eroded; checking the topological structure during the erosion process, and stopping the erosion operation if the topological structure changes, and generating a first three-dimensional mesh based on the currently obtained eroded data. The explanations of terms that are the same as or corresponding to those in the above embodiments are not repeated here.

[0097] See Figure 3 The method in this embodiment may specifically include the following steps:

[0098] S310, in response to a medical image reconstruction instruction, copies medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor.

[0099] S320, for a unified computing device architecture, a kernel function for implementing linear interpolation is executed on a graphics processor to utilize multiple threads started by the graphics processor to perform linear interpolation on medical image data stored in a second memory in parallel, to obtain interpolated data.

[0100] S330: The interpolated data stored in the second memory is sent back to the first memory.

[0101] S340. For the data to be eroded, which is obtained based on the interpolated data stored in the first memory, the topological structure of the data to be eroded is obtained, and the erosion operation is performed on the data to be eroded.

[0102] The data to be etched can be understood as the data to be etched.

[0103] Topology can be understood as the topological structure of the data to be eroded.

[0104] In this embodiment of the invention, the data to be eroded can be obtained based on the interpolated data stored in the first memory, for example, the interpolated data can be used as the data to be eroded.

[0105] In this embodiment of the invention, the topological structure of the data to be etched can be obtained. For example, structural analysis can be performed on the data to be etched, and the topological structure can be determined based on the analysis results.

[0106] In this embodiment of the invention, corrosion operations can be performed on the data to be corroded.

[0107] S350. During the corrosion process, check the topology and stop the corrosion operation if the topology changes. Generate the first three-dimensional mesh based on the currently obtained post-corrosion data.

[0108] In this embodiment of the invention, if the erosion operation continues to be performed when the topology changes, the first three-dimensional mesh generated subsequently will not correspond to the topology of the interpolated data. Therefore, the erosion operation can be stopped when the topology changes, and the first three-dimensional mesh can be generated based on the eroded data.

[0109] In this embodiment of the invention, a first three-dimensional mesh is generated based on the post-erosion data. For example, the first three-dimensional mesh can be generated based on the post-erosion data using a contour 3D mesh extraction (Marching Cubes) algorithm. Specifically, a threshold for extracting contour surfaces can be set (e.g., 0.5) to identify the 1-0 boundaries of the post-erosion data. The VTK Moving Cube Filter (vtkMarchingCubes) algorithm is used to extract contour surfaces of this threshold in the post-erosion data to automatically generate a continuous triangular mesh, thereby obtaining a first three-dimensional mesh that ensures surface continuity. This allows for the automatic extraction of surfaces (triangular meshes) that meet the target from the post-erosion data, forming a preliminary modeling foundation.

[0110] S360. Reconstruct the medical image model corresponding to the medical image data based on the first three-dimensional mesh.

[0111] The technical solution of this invention addresses the data to be eroded, obtained based on interpolated data stored in a first memory. It obtains the topological structure of the data to be eroded and performs an erosion operation on it. During the erosion process, the topological structure is checked, and if the topological structure changes, the erosion operation is stopped. A first three-dimensional mesh is then generated based on the currently obtained eroded data. Compared to related solutions with deficiencies in mesh generation, such as threshold-based mesh generation algorithms (e.g., VTK contour filters), the above technical solution provides support for generating a smooth first three-dimensional mesh through the topological structure. This avoids problems such as decreased accuracy, surface discontinuities, and noticeable jagged edges in the generated first three-dimensional mesh. It improves the surface quality of the medical image model reconstructed from the first three-dimensional mesh, enhances the rationality of the first three-dimensional mesh's topological structure, and thus helps improve the surface roughness of the medical image model, preventing impact on subsequent diagnosis and surgical planning.

[0112] An optional technical solution involves obtaining the topology of the data to be eroded, including: marking connected regions in the data to be eroded and obtaining the number of connected regions, wherein the number is used to characterize the topology of the data to be eroded; checking the topology during the erosion process and stopping the erosion operation if the topology changes, including: checking the number during the erosion process and stopping the erosion operation if the number changes.

[0113] In this context, a connected region can be understood as a region within the data to be eroded that has spatial connectivity.

[0114] The quantity can be understood as the number of connected regions, which can characterize the topological structure of the data to be eroded.

[0115] In this embodiment of the invention, connected regions can be marked and their quantity obtained. The quantity is checked during the erosion process, and if the quantity changes, indicating a change in the topology, the erosion operation can be stopped. This technical solution, by stopping the erosion operation when the quantity changes, ensures the generation of a smooth first three-dimensional mesh and also guarantees the accuracy of the generated first three-dimensional mesh.

[0116] Another alternative technical solution involves performing the erosion operation based on a structuring element, which is created as follows: obtaining the erosion radius corresponding to the erosion operation; obtaining the diameter of the structuring element based on the erosion radius, and obtaining the center position based on the diameter of the structuring element; generating a second three-dimensional mesh based on the diameter of the structuring element, and determining the distance between each mesh point in the second three-dimensional mesh and the center position; obtaining the spherical mask corresponding to the second three-dimensional mesh based on the numerical relationship between each distance and the erosion radius, and creating the structuring element based on the spherical mask.

[0117] The structuring element can be understood as the core tool for defining morphological operations (here, erosion operations). It is essentially a small matrix that can achieve specific transformation effects through sliding and interaction.

[0118] The corrosion radius can be understood as the maximum distance from the center to the edge of a structural element.

[0119] In this embodiment of the invention, the corrosion radius can be obtained.

[0120] The diameter of a structural element can be understood as the maximum span of the structural element within a spatial range.

[0121] In this embodiment of the invention, the diameter of the structural element is obtained based on the corrosion radius. For example, the corrosion radius can be used as the element radius, and the diameter of the structural element can be determined based on the element radius.

[0122] The center position can be understood as the position of the center of the structural element, or it can represent the reference coordinates of the structural element in the data to be eroded.

[0123] In this embodiment of the invention, the center position can be obtained based on the diameter of the structural element. For example, the diameter of the structural element can be calculated using floating-point numbers based on the corrosion radius, and the center position can be obtained based on the diameter of the structural element.

[0124] The second three-dimensional mesh can be understood as a three-dimensional mesh generated based on the diameter of the structuring element.

[0125] The distance between grid points can be understood as the distance between a grid point and the center position.

[0126] In this embodiment of the invention, a second three-dimensional mesh can be generated based on the diameter of the structural element, and the distance between each mesh point in the second three-dimensional mesh and the center position can be determined.

[0127] The numerical relationship can be understood as the numerical relationship between the distance between the two sides and the corrosion radius.

[0128] A spherical mask can be understood as a mask corresponding to the effective area of ​​a spherical structuring element.

[0129] In this embodiment of the invention, a spherical mask can be obtained based on the numerical relationship between each phase distance and the corrosion radius. For example, grid points with a standard phase distance less than or equal to the corrosion radius can be used as target points, and the spherical mask can be determined based on the obtained target points.

[0130] In this embodiment of the invention, structural elements can be created based on a spherical mask.

[0131] In this embodiment of the invention, the corrosion radius can be obtained; the diameter of the structural element can be obtained based on the corrosion radius, and the center position can be obtained based on the diameter of the structural element; a second three-dimensional mesh can be generated based on the diameter of the structural element, and the distance between each mesh point in the second three-dimensional mesh and the center position can be determined; a spherical mask can be obtained based on the numerical relationship between each distance and the corrosion radius, and the structural element can be created based on the spherical mask. The above technical solution can realize the adaptive creation of structural elements.

[0132] To better understand the technical solutions of the above embodiments of the present invention, an optional example is provided here. Exemplarily, the embodiments of the present invention employ the binarization preprocessing of medical image data, anomaly detection mechanisms, CUDA-based trilinear interpolation upsampling processing, median filtering, dilation and erosion processing, conversion of image data objects directly usable in the VTK framework, extraction of a first three-dimensional mesh based on isosurfaces, mesh smoothing, mesh simplification, and reconstruction and export of the medical image model involved in the above embodiments to achieve medical image reconstruction.

[0133] The above scheme can be tested to provide a theoretical basis for parameter optimization in the medical image reconstruction process. The specific testing methods are as follows:

[0134] The acceleration ratio formula can be used. The speedup ratio of the above scheme was determined. In actual tests, when the interpolation factor was 2, the speedup ratio of the above scheme could reach 8-12 times. Here, C is the CPU single-core computing constant, P is the number of GPU stream processors, and D is the dimension of medical image data.

[0135] Surface roughness formula can be used The surface roughness of the reconstructed medical image model of the above scheme was determined. After 300 smoothing iterations, the surface roughness ΔS of the above scheme was reduced to 20% of that of the relevant schemes.

[0136] The efficiency formula can be simplified using facets. The efficiency of the above scheme in simplifying the surface was determined. In actual tests, when the preset ratio was 0.3, the surface simplification efficiency η of the above scheme could reach 0.12. That is, while retaining 90% visual accuracy, the above scheme can reduce the surface by 30%.

[0137] Based on the test results obtained above, and the experimental results obtained by performing medical image reconstruction using the relevant schemes and the schemes of the embodiments of the present invention (see, for example, [link to relevant documentation]). Figure 4 , Figure 5 , Figure 6 and Figure 7 The experimental results of medical image models obtained by reconstructing medical image data corresponding to different target tissues using related solutions and the solutions of this invention (this solution) show that, compared to the interpolation time complexity in medical image reconstruction, the results are significantly better. (where n is the volume data dimension and k is the computational complexity of the interpolation kernel) The aforementioned scheme fully leverages the computational advantages of GPUs, improving processing speed and supporting batch processing of large-scale data. It introduces automated image dimension and spatial information synchronization and automatic adaptation, CUDA-accelerated linear interpolation, enhanced mesh generation algorithms including smoothing algorithms, automated processing pipelines, customizable and adjustable 3D anisotropic morphological processing strategies, multi-stage nonlinear and linear filtering combination processing techniques, mesh simplification algorithms, flexible parameter configuration, and batch processing capabilities. It can be integrated into a continuous medical image reconstruction workflow (extraction-smoothing-simplification-export) within the VTK framework. It presents a highly modular data processing framework and anomaly handling mechanism with centralized configuration of core parameters and controllable parameters. It effectively solves the problems of low efficiency, high human intervention, insufficient flexibility and poor mesh quality in medical image reconstruction. It ensures the compatibility of GPU acceleration and abnormal input, achieves a balance between quality and efficiency, and can improve the computational efficiency of the interpolation process in medical image reconstruction by 5-10 times. It supports real-time processing of 4K volumetric data, reduces redundant patches by 70%, and reduces the surface roughness of the reconstructed medical image model by 80%. It significantly improves efficiency and model quality, and has stronger adaptability, thus realizing efficient, automated, highly robust and flexible medical image reconstruction.

[0138] Figure 8This is a structural block diagram of a medical image reconstruction apparatus provided in an embodiment of the present invention. This apparatus is used to perform the medical image reconstruction method provided in any of the above embodiments. This apparatus and the medical image reconstruction methods of the above embodiments belong to the same inventive concept. Details not described in detail in the embodiments of the medical image reconstruction apparatus can be found in the embodiments of the above medical image reconstruction methods. See also... Figure 8 The device may specifically include: a medical image data copying module 410, an interpolated data acquisition module 420, a data return module 430, and a medical image model reconstruction module 440.

[0139] The medical image data copying module 410 is used to copy medical image data stored in the first memory of the central processing unit to the second memory of the graphics processing unit in response to medical image reconstruction instructions; the interpolated data acquisition module 420 is used to execute the kernel function for linear interpolation on the graphics processing unit for the unified computing device architecture, so as to use multiple threads started by the graphics processing unit to perform linear interpolation on the medical image data stored in the second memory in parallel to obtain interpolated data; the data return module 430 is used to return the interpolated data stored in the second memory to the first memory; and the medical image model reconstruction module 440 is used to generate a first three-dimensional mesh based on the interpolated data stored in the first memory, and reconstruct a medical image model corresponding to the medical image data based on the first three-dimensional mesh.

[0140] Optionally, the device may further include: an interpolation factor determination module for obtaining the capacity of the second memory and determining the interpolation factor based on the capacity; and an interpolated data acquisition module 420, which may include: an interpolated data acquisition submodule for using multiple threads started by the graphics processor to perform linear interpolation at the interpolation factor on the medical image data stored in the second memory in parallel to obtain the interpolated data.

[0141] Optionally, the medical image model reconstruction module 440 may include: an erosion operation execution submodule, used to obtain the topological structure of the data to be eroded based on the interpolated data stored in the first memory, and to perform an erosion operation on the data to be eroded; and a first three-dimensional mesh generation submodule, used to check the topological structure during the erosion process, and to stop the erosion operation if the topological structure changes, and to generate a first three-dimensional mesh based on the currently obtained eroded data.

[0142] Optionally, based on the above apparatus, the corrosion operation execution submodule may include: a quantity obtaining unit, used to mark connected regions in the data to be corroded and obtain the quantity of connected regions, wherein the quantity is used to characterize the topological structure of the data to be corroded; and a first three-dimensional mesh generation submodule, which may include: a corrosion operation stopping unit, used to check the quantity during the corrosion process and stop the corrosion operation if the quantity changes.

[0143] Optionally, based on the above-described apparatus, the corrosion operation is performed based on a structural element. The apparatus may further include the following modules to create the structural element: a corrosion radius acquisition module for acquiring the corrosion radius corresponding to the corrosion operation; a center position acquisition module for obtaining the structural element diameter based on the corrosion radius and the center position based on the structural element diameter; a distance determination module for generating a second three-dimensional mesh based on the structural element diameter and determining the distance between each mesh point in the second three-dimensional mesh and the center position; and a structural element creation module for obtaining the spherical mask corresponding to the second three-dimensional mesh based on the numerical relationship between each distance and the corrosion radius, and creating the structural element based on the spherical mask.

[0144] Optionally, the medical image model reconstruction module 440 may include: a sorting result obtaining submodule, used to obtain the curvature of each vertex in the first three-dimensional mesh, and obtain the edge folding cost based on the curvature, so as to sort each edge in the first three-dimensional mesh according to the edge folding cost corresponding to each vertex, and obtain a sorting result; and a medical image model reconstruction submodule, used to simplify the first three-dimensional mesh sequentially based on each edge in the sorting result, and when the simplification ratio of the first three-dimensional mesh reaches a preset ratio, to reconstruct a medical image model corresponding to the medical image data based on the currently obtained simplified three-dimensional mesh.

[0145] Optionally, the medical image data copying module 410 may include: a first medical image data copying submodule, used to copy multiple medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor, so as to realize the parallel reconstruction of multiple medical image data.

[0146] Optionally, the medical image data copying module 410 may include: an availability check submodule for checking the availability of the graphics processor; and a second medical image data copying submodule for copying medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor when the graphics processor is available.

[0147] Optionally, medical image data is stored in medical image files. The medical image data copying module 410 may include: an extension acquisition submodule for acquiring the extension of the medical image file stored in the first memory of the central processing unit; and a third medical image data copying submodule for reading the medical image data in the medical image file based on the reader corresponding to the extension, and copying the medical image data to the second memory of the graphics processor.

[0148] The medical image reconstruction apparatus provided in this embodiment of the invention, through a medical image data copying module, responds to a medical image reconstruction command by copying medical image data stored in the first memory of the central processing unit to the second memory of the graphics processing unit, so that the graphics processing unit can perform linear interpolation on the medical image data; through an interpolated data acquisition module, the kernel function used to implement linear interpolation in a unified computing device architecture is executed on the graphics processing unit, so that multiple threads started by the graphics processing unit can be used to perform linear interpolation on the medical image data stored in the second memory in parallel to obtain interpolated data. The multiple threads started by the graphics processing unit can perform linear interpolation on the medical image data in parallel and efficiently; through a data return module, the interpolated data stored in the second memory is returned to the first memory; through a medical image model reconstruction module, a first three-dimensional mesh is generated based on the interpolated data stored in the first memory, and a medical image model corresponding to the medical image data is reconstructed based on the first three-dimensional mesh, thereby realizing the reconstruction of the medical image model. The aforementioned device copies medical image data into the second memory of the graphics processor, and then performs linear interpolation on the medical image data in parallel and efficiently through multiple threads started by the graphics processor. This can improve the efficiency of interpolation of medical image data, and the entire medical image reconstruction process can be carried out automatically without relying on manual intervention, thereby improving the efficiency of medical image reconstruction.

[0149] The medical image reconstruction device provided in the embodiments of the present invention can execute the medical image reconstruction method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the method.

[0150] It is worth noting that in the embodiments of the above-mentioned medical image reconstruction device, the various units and modules included are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the scope of protection of the present invention.

[0151] Figure 9A schematic diagram of an electronic device 10, which can be used to implement embodiments of the present invention, is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0152] like Figure 9 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer programs stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 may also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0153] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0154] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as medical image reconstruction methods.

[0155] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication unit 19, or installed from storage unit 18, or installed from ROM 12. When the computer program is executed by processor 11, it performs the functions defined in the methods of the embodiments of the present invention.

[0156] In some embodiments, the medical image reconstruction method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or mounted on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the medical image reconstruction method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the medical image reconstruction method by any other suitable means (e.g., by means of firmware).

[0157] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0158] Computer programs used to implement the methods of the present invention can be written in any combination of one or more programming languages. These computer programs can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The computer programs can be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0159] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0160] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0161] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0162] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.

[0163] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.

[0164] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A method for medical image reconstruction, characterized in that, include: In response to a medical image reconstruction command, the medical image data stored in the first memory of the central processing unit is copied to the second memory of the graphics processor; For a kernel function of a unified computing device architecture used to implement linear interpolation, the kernel function is executed on the graphics processor to perform linear interpolation on the medical image data stored in the second memory in parallel using multiple threads started by the graphics processor to obtain interpolated data; The interpolated data stored in the second memory is then transmitted back to the first memory. A first three-dimensional mesh is generated based on the interpolated data stored in the first memory, and a medical image model corresponding to the medical image data is reconstructed based on the first three-dimensional mesh. The step of generating a first three-dimensional mesh based on the interpolated data stored in the first memory includes: For the data to be eroded obtained based on the interpolated data stored in the first memory, the topological structure of the data to be eroded is obtained, and an erosion operation is performed on the data to be eroded. During the corrosion process, the topology is inspected, and if the topology changes, the corrosion operation is stopped, and a first three-dimensional mesh is generated based on the currently obtained post-corrosion data. The step of reconstructing the medical image model corresponding to the medical image data based on the first three-dimensional mesh includes: For each vertex in the first three-dimensional mesh, the curvature of the vertex is obtained, and the edge folding cost is obtained based on the curvature. The edges in the first three-dimensional mesh are sorted according to the edge folding cost corresponding to each vertex to obtain the sorting result. Based on each edge in the sorting result, the first three-dimensional mesh is simplified sequentially. When the simplification ratio of the first three-dimensional mesh reaches a preset ratio, a medical image model corresponding to the medical image data is reconstructed based on the currently obtained simplified three-dimensional mesh.

2. The method according to claim 1, characterized in that, Also includes: Obtain the capacity of the second memory, and determine the interpolation factor based on the capacity; The method of using multiple threads started by the graphics processor to perform linear interpolation on the medical image data stored in the second memory in parallel to obtain interpolated data includes: By using multiple threads started by the graphics processor, the medical image data stored in the second memory is linearly interpolated at the interpolation factor in parallel to obtain the interpolated data.

3. The method according to claim 1, characterized in that, The topological structure of the obtained data to be eroded includes: The connected regions in the data to be eroded are marked, and the number of the connected regions is obtained, wherein the number is used to characterize the topology of the data to be eroded; The step of inspecting the topology during the corrosion process and stopping the corrosion operation if the topology changes includes: The quantity is checked during the corrosion process, and the corrosion operation is stopped if the quantity changes.

4. The method according to claim 1, characterized in that, The erosion operation is performed based on a structuring element, which is created in the following manner: Obtain the corrosion radius corresponding to the corrosion operation; The diameter of the structural element is obtained based on the corrosion radius, and the center position is obtained based on the diameter of the structural element. Based on the diameter of the structural element, a second three-dimensional mesh is generated, and the distance between each mesh point in the second three-dimensional mesh and the center position is determined. Based on the numerical relationship between each of the phase distances and the corrosion radius, a spherical mask corresponding to the second three-dimensional mesh is obtained, and the structural element is created based on the spherical mask.

5. The method according to claim 1, characterized in that, The step of copying medical image data stored in the first memory of the central processing unit to the second memory of the graphics processing unit includes: Multiple medical image data stored in the first memory of the central processing unit are copied to the second memory of the graphics processing unit to achieve parallel reconstruction of the multiple medical image data.

6. The method according to claim 1, characterized in that, The step of copying medical image data stored in the first memory of the central processing unit to the second memory of the graphics processing unit includes: Check the availability of the graphics processor; When the graphics processor is available, the medical image data stored in the first memory of the central processing unit is copied to the second memory of the graphics processor.

7. The method according to claim 1, characterized in that, The medical image data is stored in a medical image file, and copying the medical image data stored in the first memory of the central processing unit to the second memory of the graphics processor includes: Retrieve the file extension of the medical image file stored in the first memory of the central processing unit; Based on the reader corresponding to the file extension, the medical image data in the medical image file is read and copied to the second memory of the graphics processor.

8. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor to cause the at least one processor to perform the medical image reconstruction method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Three-dimensional grid model generation method and device based on single image

    CN110443892A

  • Medical image three-dimensional reconstruction method and device, electronic equipment and storage medium

    CN110503715A