A Morphology-Based Method for Non-Destructive Segmentation and Reconstruction of Fracture Regions

By segmenting and reconstruction of the broken bone region based on morphology, the problem of low efficiency of adhesion broken bone segmentation in CT images was solved, and high-precision bone model reconstruction and treatment efficiency were improved.

CN116029972BActive Publication Date: 2025-07-25SHANDONG UNIV
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202211316437.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-26
Publication Date
2025-07-25
Estimated Expiration
2042-10-26

AI Technical Summary

Technical Problem

The prior art is difficult to efficiently segment the broken bone area of adhesions in CT images, resulting in low image processing efficiency and loss of details during fracture reduction surgery, affecting the accuracy of fracture reduction.

Method used

A morphology-based method is adopted, and the non-destructive segmentation and reconstruction of the broken bone area is achieved through 8 neighborhood calculations, subboundary point detection, concave point connection and flood filling steps, combined with threshold parameter adjustment.

Benefits of technology

The automated adaptability and segmentation accuracy of broken bone target segmentation are improved, the original detailed characteristics of CT images are retained, the labor intensity of doctors is reduced, and the processing efficiency is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116029972B_ABST
    Figure CN116029972B_ABST
Patent Text Reader

Abstract

The present invention relates to a method for non-destructive segmentation and reconstruction of fracture regions based on morphology, belonging to the field of medical assistance technology. The method includes the following steps: (1) extracting the fracture region; (2) performing 8-neighborhood operation; (3) detecting sub-boundary points; (4) marking and screening concave points; (5) connecting concave points; (6) flood filling; (7) aggregating boundary points and other points; (8) reconstructing a three-dimensional model. Based on the neighborhood operation of CT image pixels, the present invention introduces the concepts of sub-boundary points and concave point detection and connection methods, and divides the regions with large adhesions in the image by adjusting the threshold parameters, overcoming the shortcoming of the traditional target segmentation method with poor segmentation ability for regions with large adhesions, and improving the adaptability of the algorithm for automatic segmentation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a morphology-based non-destructive segmentation and reconstruction method for a fracture region, and belongs to the technical field of medical assistance. Background Art

[0002] The prior art discloses a series of related technologies such as "Integrated surgical system and control method for reduction and fixation of limb fractures (CN202011268283.X)", which are used to perform fracture reduction surgery under uncertain conditions. The premise of all this is the accurate segmentation and three-dimensional model reconstruction of the patient's fracture site preoperative images. However, after the fracture, due to muscle traction, the two ends of the broken bone will be staggered and fitted, and the broken bone area will appear to be adhered in the CT image, and it is impossible to directly segment it using the existing target segmentation method.

[0003] At present, most existing medical image adhesion segmentation focuses on the boundary segmentation of organ tissues and cells. For example, the blood cell recognition segmentation method proposed in patent CN110647875B and the lung nodule segmentation method proposed in patent CN107274399B. In this case, there is a certain gray value difference between the organ itself and the surrounding tissue, which can be used as a basis for segmentation. However, when segmenting a broken bone target, the bone tissue density near and far ends of the broken bone is almost the same. The gray value difference in CT images is small, and it cannot be used as a basis for segmentation.

[0004] Normally, for images of fractured bones with adhesions, doctors need to manually delineate the boundaries of the proximal and distal regions of the fractured bones by manually deleting the pixels at the adhesion boundary. However, the number of fracture CT image sections is often more than hundreds, and this method is too inefficient. For this problem, patent CN108257118A proposes a fracture segmentation method of normal corrosion and random walk, which performs target segmentation by corroding the image and performing connected domain analysis, and expanding and restoring the unconnected regions. However, this method requires the user to select the adhesion region by himself, which reduces the processing efficiency. At the same time, when performing the target segmentation of the fractured bones, the image must first be filtered, which will affect the surface of the fractured bones, especially the end face details, resulting in the loss of the end face details of the fractured bones in the image. Through communication with orthopedic experts, these lost details are crucial for the evaluation of fracture reduction accuracy. Therefore, a "morphological-based lossless segmentation and reconstruction method of fractured bones" is proposed, which uses a morphological algorithm to perform 8-neighborhood operations on image pixels and connect concave points, and then performs fractured bone target segmentation through flood filling and pixel point aggregation, thereby completing the reconstruction of the fractured bone model. Summary of the invention

[0005] Aiming at the deficiencies of the prior art, the present invention provides a method for non-destructive segmentation and reconstruction of fracture regions based on morphology. On the basis of performing neighborhood operations on CT image pixels, the concepts of secondary boundary points and concave point detection and connection methods are introduced. By adjusting the threshold parameters, regions with large adhesions in the image are segmented, overcoming the disadvantage of poor segmentation ability of traditional target segmentation methods for regions with large adhesions and improving the adaptability of the algorithm for automatic segmentation.

[0006] The technical solution of the present invention is as follows:

[0007] A method for non-destructive segmentation and reconstruction of fracture regions based on morphology, the steps are as follows:

[0008] (1) Extract the fracture region

[0009] Traverse each voxel of the CT image, and separately extract the data of the bone part and the muscle tissue part.

[0010] (2) 8-neighborhood operation

[0011] Discretize and process layer by layer the bone part data extracted in step (1), perform 8-neighborhood calculation, and calculate according to the pixel values of the surrounding points to mark the identity of each point. Specifically, when calculating, the iterator first moves to the first pixel point of the data and then moves across columns. When moving to the slice boundary, it moves down to the next row. After reaching the last pixel point of the slice, it moves from the current slice to the first pixel point of the next slice and continues to calculate, and so on until all pixel points in the data are traversed. For some slightly adhered parts, after 8-neighborhood calculation, the two ends of the broken bone can be separated by marking the boundary points, and then flood filling, boundary point and other point collection can be performed to complete the segmentation of the near and far ends of the broken bone target.

[0012] (3) Secondary boundary point detection

[0013] Through 8-neighborhood calculation for pixel point identity marking, isolated points and slightly adhered regions in the image can already be effectively separated. For slightly larger adhered regions (in the image target segmentation, there is no clear definition of the adhesion degree. In this application, when the width of the adhered part is only 1 or 2 pixels, screening out the boundary points can separate the two, which is slightly adhered; when the width of the adhered part is greater than 2 and less than 4 pixels, screening out the secondary boundary points can separate the two, which is slightly larger adhered; when the width of the adhered part is 4 pixels or more, it is a larger adhesion), iterate the data after neighborhood operation, and find secondary boundary points on the basis of the original internal points.

[0014] (4) Concave point marking and screening

[0015] For some large adhesion parts, by observing the shape and structural features of the image, it can be found that most similar images have two large masses, and there is a concave area at the boundary between the two parts. Compared with other points in the image, within a certain range centered on the concave point, the number of external points is much smaller than that of other points. Therefore, the concave point can be located and screened by detecting the number of external points around the pixel point;

[0016] (5) Concave point connection

[0017] First, judge the position of the target concave point relative to the current concave point, and then judge whether the point close to the target concave point of the current concave point is an internal point. If so, set the current concave point as the secondary boundary point, and continue to explore with the internal point as the starting point, and iterate until the position of the target concave point is reached. The contour formed by all the secondary boundary points between the current concave point and the target concave point is the connection line.

[0018] (6) Flood filling

[0019] Through 8-neighborhood operation, secondary boundary point screening and concave point connection, a boundary can already be formed between the proximal and distal ends of the broken bone to separate the two image regions. Before the final pixel point aggregation, several seed points need to be selected from the proximal region and the distal region of the broken bone respectively (the seed points are points selected by the user, selected from the internal points (pv = 1) within the two target ranges, and are the starting points of filling), and the calculated internal points are filled to form the proximal and distal regions of the broken bone respectively;

[0020] (7) Aggregation of boundary points and other points

[0021] After the flood filling is completed, there are still pixel points such as boundary points and secondary boundary points left in the processed image that have not been assigned to the proximal or distal regions of the fracture. Through distance judgment, the above points are aggregated into the proximal or distal region to complete the segmentation of the broken bone target.

[0022] (8) 3D model reconstruction

[0023] After the target segmentation of the proximal and distal regions of the fracture is completed, the three-dimensional reconstruction of the fracture region image is carried out through the existing volume rendering program, and the proximal and distal models of the broken bone can be constructed respectively.

[0024] Preferably, in step (1), the image is binarized by setting the threshold K1, and the bone part data and the muscle tissue data are separated and extracted separately. In the processed data, the pixel value of the bone part is pv = 1, and the pixel value of the rest is pv = 0;

[0025] Preferably, in step (2), during the specific calculation, when the iterator reaches a certain pixel point, the value of this point is calculated through the pixel values of 8 points in the neighborhood. The calculation formula is as follows:

[0026] s = (p1 - p1 * p2 * p3) + (p3 - p3 * p4 * p5) + (p5 - p5 * p6 * p7) + (p7 - p7 * p8 * p1)

[0027] Where: s is the connection number of this point;

[0028] p1 to p8 are the pixel values of 8 pixel points (OffSet1 to OffSet8) around this point respectively;

[0029] After the calculation is completed, according to the calculation result, if s = 0 and the pixel values of all pixel points in the surrounding 8-neighborhood are 0, then this point is marked as an isolated point, and pv = 6;

[0030] If s = 0 and there are pixel points with non-zero pixel values in the surrounding 8-neighborhood, then this point is marked as an internal point, and let the pixel value pv = 1;

[0031] If s = 1, then this point is a boundary point, and pv = 2;

[0032] If s = 2, then this point is a connection point, and pv = 3;

[0033] If s = 3, then this point is a branch point, and pv = 4;

[0034] If s = 4, then this point is a crossover point, and pv = 5.

[0035] Preferably, in step (3), during the specific calculation, like the above 8-neighborhood calculation, use an iterator to traverse all pixel points in the data. When it is detected that the current pixel point is an internal point (pv = 1), perform an 8-neighborhood search on this point. If the number of boundary points (pv = 2) within the range is less than the threshold K2, then determine this point as an internal point, otherwise as a secondary boundary point, assign the pixel value pv = 7, and then perform flood filling and aggregation of boundary points and other points, and the segmentation of the near and far ends of the broken bone target can be completed.

[0036] Preferably, in step (4), when finding and positioning concave points, use an iterator to traverse all pixel points in the data. When it is detected that the current point is a secondary boundary point, search and count the external points (external points are points with pixel value pv = 0, which are the black background in the image) within a circular range with this point as the center and a set value R as the radius. When the number of external points within the range is within the set threshold K3, then determine this point as a concave point;

[0037] However, since the algorithm does not perform filtering processing before image processing, the boundary of the broken bone in the image is not smooth enough, and even holes appear, which affects the calculation of concave points and may cause many interfering concave points in the processed image. Therefore, the algorithm proposes to further screen the concave points.

[0038] The specific steps for concave point screening are as follows. First, search the 8-neighborhood of the concave point. If there are other concave points in the neighborhood, set them as secondary boundary points. If there are no other concave points, search within the neighborhood of the set threshold K4. If there are other concave points within the range of threshold K4, retain this concave point. If not, set it as a secondary boundary point. After this step, most unqualified concave points can be screened out after adjusting the thresholds K3 and K4.

[0039] Preferably, in step (5), the selected concave points need to be connected to separate the parts with large adhesion. When connecting the concave points, first determine the position of the target concave point relative to the current concave point:

[0040] When the target concave point is located in the upper right of the current concave point, first explore whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point on the right side of the current concave point. The rule is to first determine the position of the target point relative to the starting point, and perform corresponding searches and assignments according to this orientation (the subsequent exploration rules are the same as here and will not be repeated). If not, explore whether the point above the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point above the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen the concave points.

[0041] When the target concave point is located on the right side of the current concave point, first explore whether the point on the right side of the current concave point is the target concave point. If so, set the current concave point and the target concave point as secondary boundary points, connect the concave points, and end the loop. If not, determine whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point on the right side of the current concave point. If not, explore whether the point above the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point above the current concave point. If not, explore whether the point below the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to loop starting from the internal point below the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen the concave points.

[0042] When the target concave point is located in the lower right of the current concave point, first explore whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point on the right side of the current concave point. If not, explore whether the point below the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point below the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen the concave points.

[0043] When the target concave point is above the current concave point, first explore whether the point above the current concave point is the target concave point. If so, set the current concave point and the target concave point as secondary boundary points, connect the concave points, and end the loop. If not, determine whether the point above the current concave point is an internal point. If so, set the current concave point as a secondary boundary point and continue to explore starting from the internal point above the current concave point. If not, explore whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point and continue to explore starting from the internal point on the right side of the current concave point. If not, explore whether the left side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point and continue to explore starting from the internal point on the left side of the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen the concave points.

[0044] Similarly, when the target concave point is located above the upper left, left, lower left, or lower side of the current concave point, the target search executes the corresponding rules;

[0045] After the processing is completed, loop iteratively until the position of the target concave point is reached. The contour formed by all the secondary boundary points between the current concave point and the target concave point is the connection line. At the same time, in order to prevent a dead loop caused by an overly long iteration path, analyze and judge the approximate path length through the adhesion area, set a path length threshold K5, and when it exceeds K5, jump out of the loop, return to step (4), and adjust the threshold k4 to re-screen the concave points.

[0046] It should be noted that the above situation of incorrect concave point screening basically does not occur and has never occurred during the experiment, but there is still such a possibility, which can be used as an auxiliary verification method.

[0047] Preferably, in step (6), during the specific calculation, start the calculation from the set seed point. If this point is an internal point (pv = 1), set this point as the proximal broken bone point (pv = 8) or the distal point (pv = 9), and search for the pixel points in the 6-neighborhood of this point in three-dimensional space. If there are internal points within the 6-neighborhood range, set these points as the proximal or distal points, and continue to loop with these points as the seed points. If this point is not an internal point, stop the loop.

[0048] Preferably, in step (7), during the calculation, iterate through all the pixel points in the data. When the pixel point is not in the proximal or distal fracture area (pv ≠ 8 and pv ≠ 9), search for all the proximal and distal points in this slice, calculate the distances between this point and the proximal and distal points, respectively take the minimum values D1 and D2 of the two for comparison. If D1 > D2, then judge that this point belongs to the distal point (pv = 9); conversely, if D1 < D2, then judge that this point belongs to the proximal point (pv = 8).

[0049] The beneficial effects of the present invention are as follows:

[0050] 1. Based on the neighborhood operation of CT image pixel points, the present invention introduces the concept of sub-boundary points and the concave point detection and connection method, and divides the large adhesion areas in the image by adjusting the threshold parameters, overcoming the disadvantage of poor segmentation ability of traditional object segmentation methods for large adhesion areas and improving the adaptability of the automatic segmentation algorithm.

[0051] 2. The present invention uses a morphological algorithm to perform object segmentation on the fracture area, avoiding the operation of image filtering required by traditional methods before object segmentation of CT images, retaining the original detail features of CT images to the greatest extent, and improving the segmentation accuracy of broken bone objects and the model reconstruction accuracy.

[0052] 3. The present invention automatically performs object segmentation and three-dimensional reconstruction on fracture CT images through an object segmentation algorithm, greatly improving the image processing efficiency while meeting the requirements of segmentation and modeling accuracy, and reducing the labor intensity of doctors. BRIEF DESCRIPTION OF THE DRAWINGS

[0053] Figure 1 is a schematic diagram of the algorithm flow of the present invention;

[0054] Figure 2 is the iterator traversal rule of the present invention;

[0055] Figure 3 is an 8-neighborhood schematic diagram of the present invention;

[0056] Figure 4 is a schematic diagram of the concave point area of the present invention;

[0057] Figure 5 is a flow chart of concave point detection and screening of the present invention;

[0058] Figure 6 is a flow chart of concave point connection of the present invention;

[0059] Figure 7 is a spatial 6-neighborhood schematic diagram of the present invention;

[0060] Figure 8 is a comparison diagram of experimental results of the present invention;

[0061] Figure 9 is a three-dimensional reconstruction model diagram of the present invention;

[0062] Figure 10 is a pixel connection classification diagram of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0063] The present invention will be further described below through examples in conjunction with the drawings, but is not limited thereto.

[0064] Example 1:

[0065] AsFigure 1-10 As shown in the figure, this embodiment provides a method for non-destructive segmentation and reconstruction of fracture regions based on morphology, and the steps are as follows:

[0066] (1) Extract the fracture region

[0067] Traverse each voxel of the CT image, perform binary calculation on the image by setting the threshold K1, and separately extract the bone part data and muscle tissue data. In the processed data, the pixel value pv of the bone part is 1, and the pixel value pv of the rest is 0;

[0068] (2) 8-neighborhood operation

[0069] Discretize and process the bone part data extracted in step (1) layer by layer, perform 8-neighborhood calculation, and calculate based on the pixel values of the surrounding points to mark the identity of each point. Specifically, when calculating, the iterator first moves to the first pixel point of the data and then moves across columns. When it reaches the slice boundary, it moves down to the next row. After reaching the last pixel point of the slice, it moves from the current slice to the first pixel point of the next slice and continues the calculation, and so on until all pixel points in the data are traversed. The traversal rule of the iterator is as Figure 2 shown. For some slightly adhered parts, after 8-neighborhood calculation, the two ends of the broken bone can be separated by marking the boundary points, and then flood filling, boundary point and other point collection can be performed to complete the segmentation of the near and far ends of the broken bone;

[0070] (3) Detection of secondary boundary points

[0071] Through 8-neighborhood calculation for pixel point identity marking, the isolated points and slightly adhered areas in the image can already be effectively separated. For slightly larger adhered areas (in the image target segmentation, there is no clear definition of the adhesion degree. In this application, when the width of the adhered part is only 1 or 2 pixels, screening out the boundary points can separate the two, which is slightly adhered; when the width of the adhered part is greater than 2 and less than 4 pixels, screening out the secondary boundary points can separate the two, which is slightly larger adhered; when the width of the adhered part is 4 pixel points or more, it is larger adhered), iterate the data after neighborhood operation, and find secondary boundary points on the basis of the original internal points;

[0072] Specifically, when calculating, like the above 8-neighborhood calculation, use the iterator to traverse all pixel points in the data. When it is detected that the current pixel point is an internal point (pv = 1), perform 8-neighborhood search on this point. If the number of boundary points (pv = 2) within the range is less than the threshold K2, then determine that this point is an internal point, otherwise it is a secondary boundary point, assign the pixel value pv = 7, and then perform flood filling and boundary point and other point collection to complete the segmentation of the near and far ends of the broken bone;

[0073] (4) Marking and screening of concave points

[0074] For some large adhesive parts, by observing the shape and structural features of the image, it can be found that most similar images have two large masses, and there are concave areas at the dividing line between the two parts. Compared with other points in the image, within a certain range centered on the concave point, the number of external points is much smaller than other points. As Figure 4 shown, so the concave point can be located and screened by detecting the number of external points around the pixel point, and the processing flow is as Figure 5 shown;

[0075] When locating the concave point, an iterator is used to traverse all pixel points of the data. When it is detected that the current point is a sub-boundary point, search and count the external points (the external points are the points with pixel value pv = 0, which are the black background in the image) within a circular range with the point as the center and a set value R as the radius. When the number of external points within the range is within the set threshold K3, then this point is determined to be a concave point;

[0076] However, since the algorithm does not perform filtering before image processing, the fracture boundary in the image is not smooth enough, and even holes appear, which affects the calculation of concave points and may cause many interfering concave points in the processed image. Therefore, the algorithm proposes to further screen the concave points.

[0077] The specific steps for screening concave points are as follows. First, search the 8-neighborhood of the concave point. If there are other concave points in the neighborhood, set them as sub-boundary points. If there are no other concave points, search within the neighborhood of the set threshold K4. If there are other concave points within the threshold K4 range, then this concave point is retained. If not, set it as a sub-boundary point. After this step, most unqualified concave points can be screened out after adjusting the thresholds K3 and K4.

[0078] (5) Concave point connection

[0079] First, judge the position of the target concave point relative to the current concave point, and then judge whether the point where the current concave point is close to the target concave point is an internal point. If so, set the current concave point as a sub-boundary point, and continue to explore with the internal point as the starting point, and iterate in a loop until the position of the target concave point is reached. The contour composed of all sub-boundary points between the current concave point and the target concave point is the connection line.

[0080] (6) Flood filling

[0081] Through 8-neighborhood operation, sub-boundary point screening and concave point connection, a boundary can already be formed between the proximal and distal ends of the fracture to separate the two image regions. Before the final pixel point aggregation, several seed points need to be selected from the proximal fracture region and the distal fracture region respectively (the seed points are the points selected by the user, selected from the internal points (pv = 1) within the two target ranges, and are the starting points of filling), and the calculated internal points are filled to form the proximal and distal fracture regions respectively;

[0082] (7) Aggregation of boundary points and other points

[0083] After flood filling is completed, there are still pixel points such as boundary points and sub-boundary points in the processed image that have not been assigned to the proximal or distal regions of the fracture. Through distance judgment, the above points are aggregated into the proximal or distal region to complete the segmentation of the fractured bone target.

[0084] (8) Three-dimensional model reconstruction

[0085] After the target segmentation of the proximal and distal regions of the fracture is completed, three-dimensional reconstruction of the fracture region image is performed through an existing volume rendering program, and the proximal and distal models of the fractured bone can be constructed respectively.

[0086] In step (2), during specific calculations, when the iterator reaches a certain pixel point, the value of this point is calculated through the pixel values of 8 points in the neighborhood. The calculation formula is as follows, and the arrangement of pixel points in the 8-neighborhood is as Figure 3 shown:

[0087] s = (p1 - p1 * p2 * p3) + (p3 - p3 * p4 * p5) + (p5 - p5 * p6 * p7) + (p7 - p7 * p8 * p1)

[0088] In the formula: s is the connection number of this point;

[0089] p1 to p8 are the pixel values of 8 pixel points (OffSet1 to OffSet8) around this point respectively;

[0090] After the calculation is completed, according to the calculation result, if s = 0 and the pixel values of all pixel points in the surrounding 8-neighborhood are 0, then this point is marked as an isolated point, and pv = 6, as Figure 10 (a);

[0091] If s = 0 and there are pixel points with non-zero pixel values in the surrounding 8-neighborhood, then this point is marked as an internal point, and the pixel value is set to pv = 1, as Figure 10 (i);

[0092] If s = 1, then this point is a boundary point, and pv = 2, as Figure 10 (b)(c)(e);

[0093] If s = 2, then this point is a connection point, and pv = 3, as Figure 10 (d)(f);

[0094] If s = 3, then this point is a branch point, and pv = 4, as Figure 10 (g);

[0095] If s = 4, then this point is a crossing point, and pv = 5, as Figure 10 (h).

[0096] Algorithm principle

[0097] Through the analysis of fracture CT images, it is found that after fracture, due to the interlaced and fitting of broken bones, there are several different degrees of adhesion between the proximal and distal ends of the broken bones in the CT images. It is often difficult to meet various segmentation conditions using traditional segmentation algorithms. To address this problem, the algorithm first binarizes the fracture CT images to extract the bone part in the data. By performing neighborhood calculations on pixel points, pixel points at different positions are screened to isolate the non-adherent and slightly adherent areas. For areas with larger adhesions, the connected regions are further separated by screening secondary boundary points. For areas with excessive adhesions, a method of concave point detection, screening matching, and concave point connection is used to form a boundary in the adhesion area to achieve the separation of the adhesion area. After completing the isolation of the proximal and distal ends of the broken bones, the method of selecting seed points for flood filling is used to initially form the target area. The boundary points and secondary boundary nodes are grouped to complete the segmentation of the proximal and distal ends of the broken bones. Finally, the volume rendering algorithm is used to realize the segmentation and reconstruction of the broken bone model on the basis of the target segmentation. The overall process is as Figure 1 shown.

[0098] Experimental verification

[0099] After the algorithm design is completed, it is implemented through C++ and experimentally verified. In the experiment, three sets of relatively representative fracture CT images were selected, namely tibial fracture, femoral fracture, and fibular fracture image data. The fracture CT images manually divided by doctors were compared with the fracture CT images automatically segmented by the algorithm. The average intersection over union parameter was used to measure the similarity between the two. The closer the parameter value is to 1, the higher the similarity between the two, that is, the more accurate the automatic segmentation effect. The experimental results are as Figure 8 , 9 shown. The experimental results show that the highest average intersection over union of the three sets of CT images is 0.98 and the lowest is 0.84. The average calculation time per slice is 0.14 s. The processing accuracy and efficiency can meet the clinical requirements. Figure 8 In the leftmost one in the middle is the original image, the second from the left is the manually segmented image, and the third from the left is the automatically segmented image.

[0100] Example 2:

[0101] A method for non-destructive segmentation and reconstruction of fracture regions based on morphology, the steps are as described in Example 1, the difference is that in step (5), for the selected concave points, they need to be connected to separate the parts with larger adhesions. When connecting the concave points, first judge the position of the target concave point relative to the current concave point:

[0102] When the target concave point is located above and to the right of the current concave point, first explore whether the point to the right of the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point to the right of the current concave point. The rule is to first determine the position of the target point relative to the starting point, and perform corresponding searches and assignments according to this orientation (the following rules for continuing the exploration are the same as those here and will not be repeated). If it is not, then explore whether the point above the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point above the current concave point. If it is not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and restart step (4) to screen the concave points.

[0103] When the target concave point is located to the right of the current concave point, first explore whether the point to the right of the current concave point is the target concave point. If it is, then set the current concave point and the target concave point as secondary boundary points, connect the concave points, and end the loop. If it is not, then determine whether the point to the right of the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point to the right of the current concave point. If it is not, then explore whether the point above the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point above the current concave point. If it is not, then explore whether the point below the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the loop starting from the internal point below the current concave point. If it is not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and restart step (4) to screen the concave points.

[0104] When the target concave point is located below and to the right of the current concave point, first explore whether the point to the right of the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point to the right of the current concave point. If it is not, then explore whether the point below the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point below the current concave point. If it is not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and restart step (4) to screen the concave points.

[0105] When the target concave point is located above the current concave point, first explore whether the point above the current concave point is the target concave point. If it is, then set the current concave point and the target concave point as secondary boundary points, connect the concave points, and end the loop. If it is not, then determine whether the point above the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point above the current concave point. If it is not, then explore whether the point to the right of the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point, and at the same time continue the exploration starting from the internal point to the right of the current concave point. If it is not, then explore whether the point to the left of the current concave point is an internal point. If it is, then set the current concave point as a secondary boundary point and at the same time continue the exploration starting from the internal point to the left of the current concave point. If it is not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and restart step (4) to screen the concave points.

[0106] Similarly, when the target concave point is located above, to the left, below, or to the lower left of the current concave point, the target search executes corresponding rules;

[0107] After the processing is completed, it iterates cyclically until the position of the target concave point is reached. The contour formed by all sub-boundary points between the current concave point and the target concave point is the connection line. At the same time, to prevent an infinite loop caused by an overly long iteration path, the approximate path length is judged by analyzing the adhesion area, and a path length threshold K5 is set. When it exceeds K5, the loop is exited, and step (4) is returned to adjust the threshold k4 to re-screen the concave points. The concave point connection process is as Figure 6 shown.

[0108] It should be noted that the situation of incorrect concave point screening as described above basically does not occur and has never occurred during the experiment. However, there is still such a possibility, which can be used as an auxiliary verification method.

[0109] Example 3:

[0110] A method for non-destructive segmentation and reconstruction of a fracture area based on morphology, the steps are as described in Example 1, except that in step (6), during specific calculation, starting from the set seed point, if this point is an internal point (pv = 1), then this point is set as the proximal end of the broken bone (pv = 8) or the distal end point (pv = 9), and the pixel points in the 6-neighborhood in the three-dimensional space of this point are searched. The layout of the 6-neighborhood in space is as Figure 7 shown. If there are internal points within the range of the 6-neighborhood, these points are set as the proximal end points or the distal end points, and at the same time, these points are used as seed points to continue cycling. If this point is not an internal point, the cycle stops.

[0111] Example 4:

[0112] A method for non-destructive segmentation and reconstruction of a fracture area based on morphology, the steps are as described in Example 1, except that in step (7), during calculation, by iteratively traversing all pixel points in the data, when the pixel point is not in the proximal or distal region of the fracture (pv ≠ 8 and pv ≠ 9), all proximal end points and distal end points in this slice are searched, the distances between this point and the proximal end points and distal end points are calculated, and the minimum values D1 and D2 of the two are respectively taken for comparison. If D1 > D2, then it is judged that this point belongs to the distal end point (pv = 9), and vice versa, if D1 < D2, then it is judged that this point belongs to the proximal end point (pv = 8).

[0113] The foregoing description has shown and described several preferred embodiments of the present application. However, as previously mentioned, it should be understood that the present application is not limited to the forms disclosed herein. It should not be regarded as excluding other embodiments, but can be used in various other combinations, modifications, and environments, and can be changed within the scope of the application concept described herein through the above teachings or the techniques or knowledge in the relevant field. Any changes and variations made by those skilled in the art without departing from the spirit and scope of the present application shall fall within the protection scope of the appended claims of the present application.

Claims

1. A method for non-destructive segmentation and reconstruction of fracture regions based on morphology, characterized in that, The steps are as follows: (1) Extract the fracture region Traverse each voxel of the CT image, and separately extract the data of the bone part and the muscle tissue part; (2) 8-neighborhood operation Discretize and process the bone part data extracted in step (1) layer by layer, perform 8-neighborhood calculation, calculate according to the pixel values of the surrounding points, and mark the identity of each point. Specifically, when calculating, the iterator first moves to the first pixel point of the data and then moves across columns. When it moves to the slice boundary, it moves down to the next row. After reaching the last pixel point of the slice, it moves from the current slice to the first pixel point of the next slice and continues the calculation, and so on until all pixel points in the data are traversed. For some slightly adhered parts, after 8-neighborhood calculation, the two ends of the broken bone are separated by marking the boundary points; (3) Detection of secondary boundary points Separate the isolated points and slightly adhered regions in the image by marking the identity of pixel points through 8-neighborhood calculation. For relatively large adhered regions, iterate the data after neighborhood operation to find secondary boundary points based on the original internal points; (4) Marking and screening of concave points Locate and screen concave points by detecting the number of external points around pixel points; (5) Connection of concave points First, judge the position of the target concave point relative to the current concave point, and then judge whether the point close to the target concave point of the current concave point is an internal point. If so, make the current concave point a secondary boundary point, and continue to explore starting from the internal point, and iterate in a loop until the position of the target concave point is reached. The contour formed by all secondary boundary points between the current concave point and the target concave point is the connection line; (6) Flood filling First, select several seed points from the proximal region and the distal region of the broken bone respectively, and fill the calculated internal points to form the proximal and distal regions of the broken bone respectively; (7) Aggregation of boundary points and other points After flood filling is completed, there are still boundary points and secondary boundary points in the processed image that have not been assigned to the proximal or distal regions of the fracture. Through distance judgment, the above points are aggregated into the proximal or distal region to complete the segmentation of the broken bone target; (8) 3D model reconstruction After the target segmentation of the proximal and distal regions of the fracture is completed, perform 3D reconstruction of the fracture region image, and the proximal and distal models of the broken bone can be constructed respectively.

2. The method for non-destructive segmentation and reconstruction of fracture regions based on morphology according to claim 1, characterized in that, In step (1), the image is binarized by setting a threshold K1, and the data of the bone part and the muscle tissue data are separately extracted. In the processed data, the pixel value pv of the bone part is 1, and the pixel value pv of the rest is 0.

3. The method for non-destructive segmentation and reconstruction of fracture regions based on morphology according to claim 1, characterized in that, In step (2), when calculating specifically, when the iterator reaches a certain pixel point, the value of this point is calculated through the pixel values of 8 points in the neighborhood, and the calculation formula is as follows: s=(p1 - p1*p2*p3)+(p3 - p3*p4*p5)+(p5 - p5*p6*p7)+(p7 - p7*p8*p1) In the formula: s is the connection number of this point; p1 to p8 are the pixel values of 8 pixel points around this point respectively; After the calculation is completed, according to the calculation result, if s = 0 and the pixel values of all pixel points in the surrounding 8-neighborhood are 0, then this point is marked as an isolated point, and pv = 6; If s = 0 and there are pixel points with non-zero pixel values in the surrounding 8-neighborhood, then this point is marked as an internal point, and let the pixel value pv = 1; If s = 1, then this point is a boundary point and pv = 2; If s = 2, then this point is a connection point and pv = 3; If s = 3, then this point is a branch point and pv = 4; If s = 4, then this point is an intersection point and pv = 5.

4. The morphological-based non-destructive segmentation and reconstruction method for fracture regions according to claim 3, wherein In step (3), during specific calculations, use an iterator to traverse all pixel points in the data. When it is detected that the current pixel point is an internal point with pv = 1, perform an 8-neighborhood search on this point. If the number of boundary points with pv = 2 within the range is less than the threshold K2, then determine that this point is an internal point; otherwise, it is a secondary boundary point, and assign the pixel value pv = 7.

5. The morphological-based non-destructive segmentation and reconstruction method for fracture regions according to claim 3, wherein In step (4), when locating concave points, use an iterator to traverse all pixel points in the data. When it is detected that the current point is a secondary boundary point, search and count the external points within a circular range with this point as the center and a set value R as the radius. When the number of external points within the range is within the set threshold K3, then determine that this point is a concave point; The specific steps for screening concave points are as follows: First, search the 8-neighborhood of the concave point. If there are other concave points in the neighborhood, set them as secondary boundary points. If there are no other concave points, then search within a neighborhood with a set threshold K4. If there are other concave points within the threshold K4 range, then this concave point is retained; if not, set it as a secondary boundary point.

6. The method for non-destructive segmentation and reconstruction of fracture regions based on morphology according to claim 5, wherein In step (5), when connecting concave points, first judge the position of the target concave point relative to the current concave point: When the target concave point is located in the upper right of the current concave point, first explore whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point on the right side of the current concave point. The rule is to first judge the position of the target point relative to the starting point, and perform corresponding searches and assignments according to this orientation. If not, explore whether the point above the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point above the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen concave points; When the target concave point is located on the right side of the current concave point, first explore whether the point on the right side of the current concave point is the target concave point. If so, set the current concave point and the target concave point as secondary boundary points, connect the concave points, and end the loop. If not, judge whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point on the right side of the current concave point. If not, explore whether the point above the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to explore starting from the internal point above the current concave point. If not, explore whether the point below the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and at the same time continue to loop starting from the internal point below the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen concave points; When the target concave point is located at the lower right of the current concave point, first explore whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and continue to explore starting from the internal point on the right side of the current concave point. If not, explore whether the point below the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and continue to explore starting from the internal point below the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen the concave points; When the target concave point is located above the current concave point, first explore whether the point above the current concave point is the target concave point. If so, set the current concave point and the target concave point as secondary boundary points, connect the concave points, and end the loop. If not, determine whether the point above the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and continue to explore starting from the internal point above the current concave point. If not, explore whether the point on the right side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point, and continue to explore starting from the internal point on the right side of the current concave point. If not, explore whether the left side of the current concave point is an internal point. If so, set the current concave point as a secondary boundary point and continue to explore starting from the internal point on the left side of the current concave point. If not, it proves that the concave point screening is incorrect. Set the current concave point as a secondary boundary point, end the loop, and re-perform step (4) to screen the concave points; Similarly, when the target concave point is located at the upper left, left, lower left, or lower side of the current concave point, the target search executes the corresponding rules; After processing, perform loop iteration until reaching the position of the target concave point. The contour formed by all secondary boundary points between the current concave point and the target concave point is the connection line. At the same time, to prevent an infinite loop caused by an overly long iteration path, set a path length threshold K5. When it exceeds K5, jump out of the loop, return to step (4), and adjust the threshold k4 to re-screen the concave points.

7. The morphological-based non-destructive segmentation and reconstruction method for fracture regions according to claim 1, wherein In step (6), during specific calculations, start calculating from the set seed point. If this point is an internal point, set this point as the proximal or distal point of the broken bone, and search for the pixel points in the 6-neighborhood of this point in three-dimensional space. If there are internal points within the 6-neighborhood range, set these points as proximal or distal points, and continue to loop with these points as seed points. If this point is not an internal point, stop the loop.

8. The method for non-destructive segmentation and reconstruction of fracture regions based on morphology according to claim 1, characterized in that, In step (7), during the calculation, iterate through all pixel points in the data. When the pixel point is not in the proximal or distal region of the fracture, search for all proximal and distal points in this slice, calculate the distances between this point and the proximal and distal points, and take the minimum values D1 and D2 of the two for comparison. If D1 > D2, then determine that this point belongs to the distal point. Conversely, if D1 < D2, then determine that this point belongs to the proximal point.

Citation Information

Patent Citations

  • A lung nodule segmentation method based on Hession matrix and 3D shape index

    CN107274399B

  • Normal corrosion and random walk based fracture adhesion segmentation method

    CN108257118A

  • Integrated surgical system for reduction and fixation of limb fractures

    CN112370290B

  • Method and apparatus for segmenting overlapping regions based on concave point matching

    CN109118494A

  • Improved adhesion particle target segmentation method based on concave point matching

    CN110246140A