Medical image abdomen contour model generation method and system
Through multi-step processing of medical imaging data, including labeling, slicing, deduplication and triangulation, the problem of low accuracy in abdominal 3D model reconstruction in the existing technology is solved, and efficient and accurate 3D model generation is achieved, providing clinical benefits. The puncture operation provides reliable imaging support.
Patent Information
- Application Number
- CN202411919825.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-25
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2044-12-25
AI Technical Summary
The prior art is difficult to accurately reconstruct a three-dimensional model of the abdominal contour from medical imaging data, and the processing efficiency is low and the noise is high, making it difficult to meet the precise needs of clinical puncture operations.
A high-precision three-dimensional abdominal contour model is generated through multi-step processing such as labeling, layer-by-layer slice processing, deduplication, voxelization downsampling, Delaunay triangulation, and DBSCAN clustering on the three-dimensional image data.
The reconstruction of high -precision three -dimensional abdominal contour models has been achieved, the processing efficiency is improved, the noise is removed, the accurate visual reference is provided, which significantly reduces the risk of surgery.
Smart Images

Figure CN119359965A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of medical image processing, and more particularly to a method and system for generating a medical image abdominal contour model. Background Art
[0002] At present, with the continuous development of medical imaging technology, especially the widespread application of computed tomography (CT) and magnetic resonance imaging (MRI), the accuracy and clarity of medical imaging data have been significantly improved. At the same time, the processing and analysis of medical imaging data plays an increasingly important role in clinical diagnosis and treatment, especially in some complex surgical operations and precision medicine, such as abdominal puncture operations.
[0003] However, although the traditional image-guided puncture method can provide certain visual assistance, doctors still face many challenges in operating under complex anatomical structures. For example, the puncture path requires selecting a suitable entry point on the body surface and avoiding important blood vessels and other organs in the process of reaching the lesion, which increases the difficulty of the operation. The puncture operation requires extremely high precision, and the slightest deviation may cause the puncture to fail to reach the target area.
[0004] Therefore, although existing medical imaging technology can provide high-resolution image data, it is still a challenging task to accurately extract the three-dimensional contours of the body surface, lesion area, important organs or target parts from these data and convert them into a three-dimensional model that can be directly applied. Existing traditional medical image processing methods mainly focus on the processing of two-dimensional images, while the processing of three-dimensional data often faces problems such as large data volume, complex processing and high noise.
[0005] Therefore, how to accurately reconstruct the three-dimensional contours of various parts from medical images, effectively remove noise, and improve processing accuracy and efficiency is a technical problem that needs to be solved urgently in the field of medical image processing. Summary of the invention
[0006] In view of this, the present invention provides a method and system for generating a medical image abdominal contour model, which can solve the problem of limited accuracy in constructing a three-dimensional abdominal contour model in the prior art. By processing and analyzing medical image data, a three-dimensional model of the abdominal contour structure can be accurately reconstructed, thereby providing an accurate visual reference for clinical puncture operations. It is compatible with existing medical imaging equipment and has high application value and promotion prospects.
[0007] In order to achieve the above object, the present invention adopts the following technical solution:
[0008] In a first aspect, an embodiment of the present invention provides a method for generating a medical image abdominal contour model, comprising the following steps:
[0009] S10, marking the connected areas in the three-dimensional image data, generating marked three-dimensional volume data, and filtering out areas smaller than a preset volume threshold;
[0010] S20, slicing the retained three-dimensional image data layer by layer, extracting the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operation, and generating a three-dimensional contour based on a combination of multi-directional contours;
[0011] S30, performing neighbor search using a KD tree to remove duplicate points of the three-dimensional contour;
[0012] S40, performing voxel down-sampling on the point cloud data of the three-dimensional contour after deduplication processing to reduce the number of point clouds;
[0013] S50, extracting the outer contour of the irregular shape through Delaunay triangulation, boundary screening and DBSCAN clustering algorithm for the three-dimensional point cloud data after voxel downsampling;
[0014] S60, use the DBSCAN algorithm again to remove noise points in the point cloud and screen out valid clusters;
[0015] S70, generating a final three-dimensional abdominal contour model by triangulating the point cloud data in the valid cluster.
[0016] Furthermore, the step S10 includes:
[0017] Use the 8-nearest neighbor algorithm to identify the 3D image data and mark the connected areas;
[0018] The regions that are too small are filtered out according to the preset volume threshold, and the background regions are removed.
[0019] Furthermore, the step S20 includes:
[0020] Obtain the size of the three-dimensional image data retaining the connected area;
[0021] Performing a normalization operation on the three-dimensional image data and mapping it to a range of 0 to 255;
[0022] Traverse each slice of the 3D image data layer by layer, and extract the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operations;
[0023] Draw the detected edge and outer contour information;
[0024] The contours are extracted along the axial, coronal and sagittal directions and combined into a complete three-dimensional contour.
[0025] Furthermore, the step S30 includes:
[0026] Merge the point cloud data extracted from the axial, coronal, and sagittal directions into a single data set;
[0027] Use the KD tree to find each point and its two nearest neighboring points; when the distance between the point and the two neighboring points is less than the preset distance threshold, the corresponding neighboring point is removed.
[0028] Furthermore, the step S40 includes:
[0029] Dividing the point cloud data of the three-dimensional contour after deduplication processing into a plurality of cubic grids; each small cube is a voxel;
[0030] For each voxel, only one representative point within the voxel is retained; the representative point is the centroid, a random selection, or a point with significant features.
[0031] Furthermore, the step S50 includes:
[0032] Delaunay triangulation is used for the 3D point cloud data after voxel downsampling;
[0033] Traverse each triangle generated by triangulation, and obtain the three edges of the triangle by index to form a non-repeating edge set;
[0034] Calculate the Euclidean distance between the two endpoints of each edge, retain the edges with a distance less than the parameter alpha, and generate a valid triangle edge set;
[0035] Traversing each edge in the valid triangle edge set, and generating an initial boundary point set of the point cloud according to the starting point and the end point of the edge;
[0036] The initial boundary point set is clustered by DBSCAN clustering to remove noise points and screen effective boundary points.
[0037] Furthermore, the step S70 includes:
[0038] Delaunay triangulation is used for the point cloud data in the valid cluster, and triangles with a circumscribed circle radius less than Alpha are selected;
[0039] The mesh surface is smoothed by averaging the coordinates of each vertex and its surrounding adjacent vertices, the normal vector of each vertex of the mesh is calculated, and the final three-dimensional abdominal contour model is output.
[0040] In a second aspect, an embodiment of the present invention further provides a medical image abdominal contour model generation system, comprising:
[0041] Image preprocessing module: Mark the connected areas in the 3D image data, generate marked 3D volume data, and filter out areas smaller than a preset volume threshold;
[0042] Contour scanning module: Slice the retained 3D image data layer by layer, extract the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operations, and generate a 3D contour based on the combination of multi-directional contours;
[0043] Overlap removal module: using a KD tree to perform neighbor search to remove duplicate points of the three-dimensional contour;
[0044] A grid voxel downsampling module: performs voxel downsampling on the point cloud data of the three-dimensional contour after deduplication processing to reduce the number of point clouds;
[0045] Alpha shape module: extracts the outer contour of irregular shapes through Delaunay triangulation, boundary screening and DBSCAN clustering algorithm for 3D point cloud data after voxel downsampling;
[0046] Abdominal cleaning module: DBSCAN algorithm is used again to remove noise points in the point cloud and screen out valid clusters;
[0047] Model output module: The point cloud data in the valid cluster is processed by triangulation to generate the final three-dimensional abdominal contour model.
[0048] It can be seen from the above technical solutions that compared with the prior art, the present invention has the following technical advantages:
[0049] The present invention acquires high-resolution medical imaging data and uses advanced image processing technology to generate a three-dimensional model that accurately reflects the contour structure of the abdomen. For example: through multi-directional contour combination, the local contour information loss caused by blurred scanned images and other reasons can be effectively restored; through Alpha shape processing, the local details of the surface contour can be retained to the maximum extent; through voxel downsampling and DBSCAN clustering, etc., the amount of calculation can be greatly reduced, and the modeling can be completed more quickly or the model can be updated in real time, which is convenient for doctors to perform puncture operations under dynamic observation, thereby significantly reducing surgical risks. The innovative technology proposed by the present invention is expected to provide more reliable imaging support for abdominal puncture, thereby helping to improve the treatment effect and medical experience of patients. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.
[0051] Figure 1 This is a flow chart of the method for generating a medical image abdominal contour model provided by the present invention.
[0052] Figure 2 A schematic diagram of the present invention for finding connected regions using the 8-nearest neighbor algorithm.
[0053] Figure 3 This is the schematic diagram of the KD tree.
[0054] Figure 4 This is a schematic diagram of the grid voxelization principle provided by the present invention.
[0055] Figure 5 This is a block diagram of the medical image abdominal contour model generation system provided by the present invention. DETAILED DESCRIPTION
[0056] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0057] In the related technologies, although there are some methods that can perform image segmentation and contour extraction of the abdominal area, most of them rely on traditional two-dimensional image processing methods and lack the ability to fully process three-dimensional data. In addition, most of them have problems such as long processing time, large consumption of computing resources, and low accuracy. In addition, the subsequent optimization of point cloud data (such as removing overlapping points, noise points, generating mesh models, etc.) in the existing technology is not perfect, resulting in the application effect of the final generated three-dimensional model in visualization, analysis and actual operation being limited.
[0058] Therefore, the embodiment of the present invention discloses a method for generating a medical image abdominal contour model, which is widely used in the field of medical imaging. By comprehensively processing and modeling image data (such as axial, coronal and sagittal positions), the present invention can generate a high-precision three-dimensional medical model, providing important support for clinical diagnosis, surgical planning and medical teaching. Figure 1 The process shown includes steps S10 to S70:
[0059] S10, marking connected areas in the three-dimensional image data, generating marked three-dimensional volume data, and filtering out areas smaller than a preset volume threshold.
[0060] In this step, 3D image data is usually generated by scanning the entire body or a specific area using medical imaging equipment (such as CT, MRI, etc.), and the abdomen may be only a part of the body. In practical applications, image data is usually obtained from the patient's entire body (including the head, chest, abdomen, limbs, etc.), so it is necessary to extract the abdomen area for processing through image segmentation or region selection.
[0061] Specifically, step S10 includes:
[0062] S101, using an 8-nearest neighbor algorithm to identify the three-dimensional image data and mark connected areas;
[0063] S102: Filter out too small areas according to a preset volume threshold, and remove background areas.
[0064] First, the connected regions in the 3D image data volume (volume data) are labeled, and a labeled volume label_volume (3D volume data) and the number of regions num_labels (the number of labeled connected regions) are returned. A unique label is assigned to each connected region. Each position of this labeled volume label_volume stores the label of the connected region to which it belongs.
[0065] That is, to identify those "connected" areas from medical images. In simple terms, it is to mark the parts of the image that are connected to each other and belong to the same object, such as different tissue structures in the abdomen. This marking process is equivalent to putting a label on each area in the image.
[0066] like Figure 2 As shown in the figure, we use 8-nearest neighbors to find connected regions (1 is the object, 0 is the background); then we calculate the volume (number of pixels / voxels) of each connected region, that is, the number of times each label appears in label_volume. We flatten the three-dimensional label_volume into a one-dimensional array, and then use bincount (statistical function) to calculate the count of each label to get the size (i.e. volume) of each connected region.
[0067] That is: once the labeling is completed, the "volume" of each connected region is calculated. The volume here is not the actual spatial volume, but the number of pixels (or voxels) these regions occupy in the image. For example, if a region occupies 100 pixels in the image, its volume is 100.
[0068] Then, by comparing with min_size (preset volume threshold), the connected areas with volumes larger than the minimum threshold are marked. label_sizes is the size array of each connected area, which is compared with min_size to generate a Boolean array large_labels. Each value in the array indicates whether the corresponding connected area is larger than min_size.
[0069] That is, for each marked area, its volume is compared to see if it meets the preset volume threshold. If the volume of a certain area is too small, for example, it may be just a noise point or an irrelevant small block, it will be filtered out and will not be retained.
[0070] Common preset volume thresholds can range from tens to hundreds of voxels, but this threshold usually needs to be adjusted based on actual image and processing requirements. For example:
[0071] For general medical imaging data, the minimum volume threshold may be set between 100-500 voxels.
[0072] For the recognition of some fine structures, a smaller threshold can be set.
[0073] Secondly, large_labels[0] = false (Boolean false value) sets the background area (the area with label 0) to not be retained. This is because, in the connected area labeling, 0 is usually used to represent the background. In order to ensure that the background is not considered as a connected area, large_labels[0] is set to false here, indicating that even if the background area is larger than min_size, it will not be retained.
[0074] Finally, a filtered volume data is generated, and only the connected areas that meet the conditions are retained, ensuring that the final focus is only on the abdomen-related areas (i.e., relatively large connected areas) rather than irrelevant background.
[0075] In this step, we find the relevant areas of the abdomen from the image, calculate the size of these areas, and remove those that are too small or irrelevant to ensure that only useful areas are retained. This improves the computational efficiency of subsequent processing and ensures that subsequent contour extraction and model generation are more accurate.
[0076] S20, slicing the retained three-dimensional image data layer by layer, extracting the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operations, and generating a three-dimensional contour based on a combination of multi-directional contours.
[0077] The details include:
[0078] S201, obtaining the size of the three-dimensional image data of the preserved connected area.
[0079] Image data reading and size determination: Obtain the three-dimensional size of the input multi-dimensional image data, namely height, width and depth, so as to perform slice contour detection in different directions.
[0080] S202, performing a normalization operation on the three-dimensional image data, mapping it to a range of 0 to 255, that is, a single-channel grayscale image;
[0081] Normalization is performed on the image data to eliminate brightness and contrast differences and bring the data into a uniform range for subsequent contour detection. First, the global minimum and maximum values of the input data are obtained and normalized to a range of 0-255 through the following steps to facilitate subsequent contour detection processing:
[0082] 1) Calculate the difference (denom) between the minimum value (slice_min) and the maximum value (slice_max) of each slice. If the difference is zero, directly generate an all-zero matrix.
[0083] 2) Otherwise, the slice data is mapped to the range of 0-255 through a linear transformation.
[0084] After normalization, the grayscale value of each layer of image data is between 0 and 255, ensuring the consistency and processability of the data.
[0085] S203, traversing each slice of the three-dimensional image data layer by layer, and extracting the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operations.
[0086] The slice image is smoothed using Gaussian blur to reduce noise interference.
[0087] Use the Canny algorithm for edge detection to extract strong edge responses in the image.
[0088] The morphological dilation operation is then used to dilate the edges, followed by an erosion operation to remove the internal redundant edges, leaving only the outer contour.
[0089] S204, drawing the detected edge and outer contour information;
[0090] The input image is scanned pixel by pixel to locate white pixels (value 255), and then contours are formed based on the connected areas in the edge map. Finally, the point set of each contour is optimized and the points on the straight line are compressed into the starting point and the end point.
[0091] Output slice_contours: Array of detected contours, each contour is a set of points. slice_contours={C1,C2,…,Cn} Ci represents the i-th contour, the format is a point set: Ci={(x1,y1),(x2,y2),…,(x k ,y k )}
[0092] S205, extracting contours in the axial, coronal and sagittal directions respectively and combining them into a complete three-dimensional contour.
[0093] In the application scenario of the present invention, the above-mentioned contour detection function is called along the axial, coronal and sagittal directions respectively (step S203) to extract the slice contour in each direction. After obtaining the coronal and sagittal contours, the two images are rotated and aligned to the axial direction to generate the final result of the three-dimensional combined contour.
[0094] In this step, the contour of each layer can be accurately extracted by processing the image data layer by layer, combining Gaussian blur and Canny edge detection algorithms. This step uses a combination of multiple algorithms to ensure that the true abdominal contour is efficiently extracted from complex image data. In addition, by scanning and contour extraction along different directions (axial, coronal, and sagittal), the abdominal contour is accurately captured from multiple angles, and a three-dimensional model can be effectively constructed.
[0095] S30, performing neighbor search using a KD tree to remove duplicate points of the three-dimensional contour;
[0096] When processing medical image data, we usually extract some points from the image (for example, key points or feature points of the abdominal contour). Sometimes, these points may overlap, that is, there may be multiple very close points at the same location. Such duplicate points will lead to inaccurate model generation and even make the contour incoherent. Step S30 specifically includes:
[0097] S301, merging the point cloud data extracted from the axial direction, the coronal direction, and the sagittal direction into a single data set;
[0098] S302, using the KD tree to find each point and its two nearest neighboring points; when the distance between the point and the two neighboring points is less than a preset distance threshold (in this example, 1e-3), the corresponding neighboring point is removed.
[0099] The main purpose of this step is to process duplicate points in the point cloud data to ensure that each point is independent and unique. This process is to ensure that in subsequent steps, the accuracy and quality of the model will not be affected by duplicate points.
[0100] This step specifically combines the three sets of axis bit combinations into one array to remove duplicate points. Figure 3 As shown in the figure, the KD tree finds the two closest points to each point, and stores the distance between each point and the two nearest neighbor points in the array distances, and indices is the index array of the corresponding neighbor points. A Boolean array is used to store the distance between all points and their second neighbors (distances[:, 1]). If the distance is greater than the threshold, it is True, otherwise it is False. Finally, the points that meet the conditions are screened out, that is, the points whose distance to their nearest neighbor is greater than 1e-3 (if the distance between the two points is less than 0.001, they are overlapping points). These points can be regarded as unique points.
[0101] by Figure 3 For example, suppose we are processing the contour extraction data of an image and the following points are obtained:
[0102] The distance between point B and point A is 0.0005 (very close).
[0103] The distance between point B and point D is 0.002 (relatively far).
[0104] If the threshold is set to 1e-3 (ie 0.001), then point B and point A will be considered duplicates because their distance is less than the threshold. The distance between point B and point D is greater than the threshold, so they will be considered two different points.
[0105] The purpose of this step is to filter out duplicate points that are very close to each other by calculating the distance between each point and other points, and remove them. Finally, only unique points are retained, which ensures that only one representative point is used in subsequent model generation and contour drawing, avoiding the interference of duplicate points, so as to improve the accuracy and quality of the model.
[0106] S40, performing voxel down-sampling on the point cloud data of the three-dimensional contour after deduplication processing to reduce the number of point clouds;
[0107] like Figure 4 As shown in the figure, the point cloud is divided into a series of voxel grids, and for each voxel, only one representative point in the voxel is retained. This can reduce the number of point clouds and thus reduce the computational complexity. The approximate information of the original shape is still retained, but the density of the points will be reduced, and the original features will still be ensured not to be destroyed.
[0108] The representative points can be selected in the following ways:
[0109] 1) Select the "average position" of all points within the voxel as the representative point (that is, calculate the centroid of these points).
[0110] 2) Randomly select a point in the voxel as the representative point.
[0111] 3) Select a point with significant features as a representative point (for example, a point on the edge of a contour).
[0112] In this step, the amount of point cloud data is reduced by dividing the 3D point cloud data into small grid voxels, with only one representative point in each voxel. This makes subsequent calculations more efficient and can reduce processing time and computational burden without losing too much important information.
[0113] S50, extracting the outer contour of the irregular shape through Delaunay triangulation, boundary screening and DBSCAN clustering algorithm for the three-dimensional point cloud data after voxel downsampling;
[0114] This step extracts complex boundary shapes from point cloud data, which is suitable for generating irregular, tortuous contours or surfaces. Its function is to determine the outline boundary of point cloud data through an Alpha shape algorithm, and represent these point sets as a complete geometric shape (such as a polygon or polyhedron). Specifically include:
[0115] S501, using Delaunay triangulation on the three-dimensional point cloud data after voxel downsampling;
[0116] Delaunay triangulation is an algorithm that divides a set of points into triangles, ensuring that the generated triangles satisfy the circumcircle formed by the shared edges of any two triangles, and do not contain the vertices of other triangles. This maximizes the minimum angle, avoids the generation of overly thin and long triangles, and improves the quality of triangulation.
[0117] Find the convex hull in the input point set to determine the initial triangle. Insert the point set into the current triangle network and adjust the triangle division according to the Delaunay condition to ensure that the circumscribed circle property is satisfied. Check the boundary conditions of all triangles to ensure that no points are missed and handle possible numerical errors.
[0118] S502, traversing each triangle generated by triangulation, and obtaining three edges of the triangle through indexes to form a non-repeated edge set;
[0119] Traverse each triangle generated by triangulation and obtain the three edges of the triangle by index. Each triangle has three edges. In the loop, the indices of the triangle vertices (i, j, k) are combined to form a non-repeating edge set edges. This step helps avoid redundancy caused by multiple calculations of edges.
[0120] S503 . Calculate the Euclidean distance between the two endpoints of each edge, retain the edges whose distance is less than the parameter alpha, and generate a valid triangle edge set.
[0121] Assume that the coordinates of the two endpoints of an edge are (x1, y1, z1) and (x2, y2, z2), and calculate the Euclidean distance for each edge. , and retain the edges whose distance is less than the parameter alpha as outer_edges (outer edge set). This operation is designed to remove edges that are too long to meet the Alpha Shape boundary conditions.
[0122] During the triangulation process, the algorithm generates some circumscribed circles of triangles (each triangle has a circle around it). If the radius of the circumscribed circle of a triangle is very large, then it may no longer be "really" part of the outer contour of the point cloud. At this time, the algorithm will control it through a parameter called alpha, only retaining triangles with smaller circumscribed circle radius and removing those triangles that are too large.
[0123] This alpha parameter controls the smoothness of the "shape". The smaller the alpha, the finer the retained boundary; the larger the alpha, the smoother the boundary and the higher the degree of simplification.
[0124] S504, traversing each edge in the valid triangle edge set, and generating an initial boundary point set of the point cloud according to the starting point and the end point of the edge;
[0125] Traverse each edge in outer_edges, add the start and end points of the edge to the set outer_points (the set of the start and end points of the edge), and generate the preliminary boundary point set of the point cloud. Use the set to remove duplicates to ensure that each point appears only once.
[0126] S505 , clustering the initial boundary point set by DBSCAN clustering, removing noise points and screening effective boundary points.
[0127] Use the DBSCAN clustering algorithm to cluster outer_points, set the cluster radius eps to alpha, and define the minimum number of samples min_samples to 2 to remove outliers and ensure the continuity of the boundary. DBSCAN can effectively identify the core boundary points in the point cloud while excluding noise points (points with a label of -1).
[0128] In the clustering results, the noise points are filtered out and different sets of boundary points are extracted according to the cluster labels. For each cluster, the boundary points in the cluster are sorted and returned in coordinate order, ensuring that the returned boundary point set conforms to the specific sorting order.
[0129] In this step, by combining Delaunay triangulation, boundary screening and DBSCAN clustering algorithms, efficient extraction of boundary contours of complex point cloud data is achieved, which is suitable for generating outer contours of irregular shapes.
[0130] S60, use the DBSCAN algorithm again to remove noise points in the point cloud and screen out valid clusters;
[0131] The purpose of this step is to remove irrelevant noise points that may appear during the processing and retain the real points related to the abdominal contour. In other words, it makes the final point cloud cleaner and more accurate by identifying and removing those "stray" points that are irrelevant to the target shape.
[0132] Specifically, the DBSCAN clustering algorithm is used to divide the point cloud into connected areas. The point cloud data is divided into different clusters through the eps and min_points parameters. EPS is the neighborhood radius of each point, min_points is the minimum number of points in each cluster, and the number of points in each cluster is counted, and only valid clusters are calculated. When a point has more than min_points neighbor points, it is classified as a core point, otherwise it is regarded as a noise point.
[0133] According to the min_size parameter, clusters with points greater than min_size are filtered out. A Boolean mask is created to mark the points that belong to large clusters, and the remaining points are stored. In this way, all points belonging to large clusters can be obtained. Finally, the point cloud containing only the points of large clusters is returned.
[0134] Assume that this step extracts some abdominal point cloud data from medical images. These point clouds contain correct abdominal contour points and some random noise points (such as points generated by scanning errors). Through DBSCAN clustering:
[0135] The actual abdominal contour points will be gathered into one or more clusters with a large number of points, which are valid data;
[0136] Some outlier points (such as interference points or noise points during scanning) will be identified as noise, with a small number of points and a large distance from other points, and will be eliminated.
[0137] In this step, the abdominal area is cleaned by using the DBSCAN clustering algorithm to identify and remove noise points that do not belong to the abdominal contour. It performs density analysis on the points, retains those dense and relevant points, and removes those isolated and irrelevant noise points, ensuring that the final point cloud data is cleaner and more accurate. This process can greatly improve the accuracy and quality of subsequent model generation.
[0138] S70, generating a final three-dimensional abdominal contour model by triangulating the point cloud data in the valid cluster.
[0139] The purpose of this step is to convert the processed point cloud data into a 3D mesh model, and further smooth and optimize the model for better display and analysis. This step is the last step of the whole process, which gathers scattered points into a complete 3D shape that can be used for visualization, printing or further analysis.
[0140] The point cloud data generates a triangular mesh, which is to convert the point cloud into a mesh according to the model accuracy requirements. The Delaunay triangulation is constructed by first finding the convex hull to determine the initial triangle, then inserting the point set into the current triangular network, adjusting the triangle division according to the Delaunay condition to ensure that the circumscribed circle property is satisfied, and filtering out those triangles whose circumscribed circle radius is greater than the value according to a specific value, thereby extracting the shape boundary. Then, the mesh surface is smoothed by averaging the coordinates of each vertex and its adjacent vertices, reducing mesh noise and irregularities, making the model smoother, and calculating the normal vector of each vertex of the mesh to output the model file.
[0141] Specifically include:
[0142] S701, using Delaunay triangulation for the point cloud data in the valid cluster, and selecting triangles whose circumscribed circle radius is less than Alpha;
[0143] Point cloud data itself is just a bunch of points distributed in three-dimensional space, which represent the shape of the object, but these points are not directly connected. In order to "connect" these points into a complete surface, it is first necessary to use Delaunay triangulation. This algorithm will connect these points into triangles according to certain rules. In this way, a triangular mesh is obtained to represent the surface of the object.
[0144] This triangular mesh is the most basic way to represent the shape of a three-dimensional object. The three corners of each triangle represent a vertex of the mesh, and the edges of the triangle represent the connection between these vertices.
[0145] Remove unqualified triangles: In the generated mesh, some triangles may not meet the required shape. For example, the circumscribed circle radius of some triangles is too large, indicating that these triangles may be at the "edge" or "far away" from the object and should be removed.
[0146] To this end, the algorithm will filter these triangles based on a threshold (called Alpha). Only those triangles whose circumscribed circle radius is less than Alpha will be retained. This can remove unnecessary and overly distorted triangles and retain the part that truly represents the outer contour of the object.
[0147] S702: Smooth the mesh surface by averaging the coordinates of each vertex and its surrounding adjacent vertices, calculate the normal vector of each vertex of the mesh, and output the final three-dimensional abdominal contour model.
[0148] Once the mesh is obtained, the next task is to make it smoother and remove sharp corners or irregular faces. The smoothing process is usually achieved by calculating the average position of each vertex and its surrounding adjacent vertices. In this way, the coordinates of each vertex will be adjusted to be closer to the position of its neighboring vertices, ultimately forming a smoother mesh surface.
[0149] In order to make the mesh look more realistic, it is usually necessary to calculate the normal vector for each triangular face. A normal vector is a vector perpendicular to the triangular face, indicating the direction the face is facing. By calculating the normal vector, the lighting effect of the mesh can be obtained, making the final 3D model look more natural when displayed.
[0150] Finally, the smoothed and optimized triangular mesh will be saved as a standard 3D model format (such as STL, OBJ, etc.). This file can be used for 3D visualization, 3D printing, or further analysis and processing.
[0151] The present invention can accurately and quickly reconstruct the three-dimensional contour of the abdomen from the original medical image data and generate a high-quality three-dimensional model, providing accurate visual reference for clinical surgery, puncture operations, etc., which has important practical significance and application prospects.
[0152] Based on the same inventive concept, an embodiment of the present invention also provides a medical image abdominal contour model generation system. Since the principle of the problem solved by the system is similar to that of the aforementioned medical image abdominal contour model generation method, the implementation of the device can refer to the implementation of the aforementioned method, and the repeated parts will not be repeated.
[0153] Reference Figure 5 As shown, a medical image abdominal contour model generation system comprises:
[0154] Image preprocessing module: Mark the connected areas in the 3D image data, generate marked 3D volume data, and filter out areas smaller than a preset volume threshold;
[0155] Contour scanning module: Slice the retained 3D image data layer by layer, extract the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operations, and generate a 3D contour based on the combination of multi-directional contours;
[0156] Overlap removal module: using a KD tree to perform neighbor search to remove duplicate points of the three-dimensional contour;
[0157] A grid voxel downsampling module: performs voxel downsampling on the point cloud data of the three-dimensional contour after deduplication processing to reduce the number of point clouds;
[0158] Alpha shape module: extracts the outer contour of irregular shapes through Delaunay triangulation, boundary screening and DBSCAN clustering algorithm for 3D point cloud data after voxel downsampling;
[0159] Abdominal cleaning module: DBSCAN algorithm is used again to remove noise points in the point cloud and screen out valid clusters;
[0160] Model output module: The point cloud data in the valid cluster is processed by triangulation to generate the final three-dimensional abdominal contour model.
[0161] The medical image abdominal contour model generation system provided by the present invention has the following advantages:
[0162] 1) Optimizing accuracy and efficiency: Through a series of modular processing steps, the data is optimized layer by layer, noise is removed, and the abdominal contour is finely extracted to finally generate an accurate 3D model.
[0163] 2) Efficient computing and storage optimization: Use downsampling and deduplication technology to reduce redundant data, improve computing efficiency, and adapt to large-scale data processing.
[0164] 3) Strong compatibility and adaptability: The system is compatible with different medical imaging devices, and its ability to process irregular shapes makes it widely applicable and has strong promotion prospects.
[0165] The overall processing flow has significant technical advantages in terms of accuracy, efficiency, adaptability and scalability, and can provide strong support for clinical medical image analysis. In addition, the system can update the model in real time, making it easier for doctors to perform puncture operations under dynamic observation, thereby significantly reducing the risk of complications.
[0166] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part.
[0167] The above description of the disclosed embodiments enables one skilled in the art to implement or use the present invention. Various modifications to these embodiments will be apparent to one skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for generating a medical image abdominal contour model, characterized in that: The following steps are involved: S10, marking the connected areas in the three-dimensional image data, generating marked three-dimensional volume data, and filtering out areas smaller than a preset volume threshold; S20, slicing the retained three-dimensional image data layer by layer, extracting the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operation, and generating a three-dimensional contour based on a combination of multi-directional contours; S30, performing neighbor search using a KD tree to remove duplicate points of the three-dimensional contour; S40, performing voxel down-sampling on the point cloud data of the three-dimensional contour after deduplication processing to reduce the number of point clouds; S50, extracting the outer contour of the irregular shape through Delaunay triangulation, boundary screening and DBSCAN clustering algorithm for the three-dimensional point cloud data after voxel downsampling; S60, use the DBSCAN algorithm again to remove noise points in the point cloud and screen out valid clusters; S70, generating a final three-dimensional abdominal contour model by triangulating the point cloud data in the valid cluster.
2. The method for generating a medical image abdominal contour model according to claim 1, characterized in that: The step S10 comprises: Use the 8-nearest neighbor algorithm to identify the 3D image data and mark the connected areas; The regions that are too small are filtered out according to the preset volume threshold, and the background regions are removed.
3. The method for generating a medical image abdominal contour model according to claim 1, characterized in that: The step S20 comprises: Obtain the size of the three-dimensional image data retaining the connected area; Performing a normalization operation on the three-dimensional image data and mapping it to a range of 0 to 255; Traverse each slice of the 3D image data layer by layer, and extract the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operations; Draw the detected edge and outer contour information; The contours are extracted along the axial, coronal and sagittal directions and combined into a complete three-dimensional contour.
4. The method for generating a medical image abdominal contour model according to claim 1, characterized in that: The step S30 comprises: Merge the point cloud data extracted from the axial, coronal, and sagittal directions into a single data set; Use the KD tree to find each point and its two nearest neighboring points; when the distance between the point and the two neighboring points is less than the preset distance threshold, the corresponding neighboring point is removed.
5. The method for generating a medical image abdominal contour model according to claim 1, characterized in that: The step S40 comprises: Dividing the point cloud data of the three-dimensional contour after deduplication processing into a plurality of cubic grids; each small cube is a voxel; For each voxel, only one representative point within the voxel is retained; the representative point is the centroid, a random selection, or a point with significant features.
6. The method for generating a medical image abdominal contour model according to claim 1, characterized in that: The step S50 comprises: Delaunay triangulation is used for the 3D point cloud data after voxel downsampling; Traverse each triangle generated by triangulation, and obtain the three edges of the triangle by index to form a non-repeating edge set; Calculate the Euclidean distance between the two endpoints of each edge, retain the edges with a distance less than the parameter alpha, and generate a valid triangle edge set; Traversing each edge in the valid triangle edge set, and generating an initial boundary point set of the point cloud according to the starting point and the end point of the edge; The initial boundary point set is clustered by DBSCAN clustering to remove noise points and screen effective boundary points.
7. The method for generating a medical image abdominal contour model according to claim 1, characterized in that: The step S70 includes: Delaunay triangulation is used for the point cloud data in the valid cluster, and triangles with a circumscribed circle radius less than Alpha are selected; The mesh surface is smoothed by averaging the coordinates of each vertex and its surrounding adjacent vertices, the normal vector of each vertex of the mesh is calculated, and the final three-dimensional abdominal contour model is output.
8. A medical image abdominal contour model generation system, characterized in that: include: Image preprocessing module: Mark the connected areas in the 3D image data, generate marked 3D volume data, and filter out areas smaller than a preset volume threshold; Contour scanning module: Slice the retained 3D image data layer by layer, extract the outer contour of each layer through Gaussian blur, Canny edge detection and morphological operations, and generate a 3D contour based on the combination of multi-directional contours; Overlap removal module: using a KD tree to perform neighbor search to remove duplicate points of the three-dimensional contour; A grid voxel downsampling module: performs voxel downsampling on the point cloud data of the three-dimensional contour after deduplication processing to reduce the number of point clouds; Alpha shape module: extracts the outer contour of irregular shapes through Delaunay triangulation, boundary screening and DBSCAN clustering algorithm for 3D point cloud data after voxel downsampling; Abdominal cleaning module: DBSCAN algorithm is used again to remove noise points in the point cloud and screen out valid clusters; Model output module: The point cloud data in the valid cluster is processed by triangulation to generate the final three-dimensional abdominal contour model.
Citation Information
Patent Citations
Method for rebuilding point-cloud type three-dimensional surface of nonparallel outline medical image
CN101625767A
A backpack type three-dimensional laser point cloud data-based building contour line extraction method
CN109949326A
Adaptive Alpha Shapes contour extraction method based on DBSCAN algorithm
CN116469092A
Heart three-dimensional structure reconstruction method and system
CN118037994A
Learning-based active surface model for medical image segmentation
US20230043026A1
