A method for initial extraction of oral guides based on VTK
Through the VTK-based oral guide initial extraction method, combined with three-dimensional measurement, sleeve fusion and image expansion technology, the problem of inaccurate measurement in oral implant surgery in the existing technology is solved, the precise design of implant placement is achieved, and the success rate and safety of the operation are improved.
Patent Information
- Application Number
- CN202210563921.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-23
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2042-05-23
AI Technical Summary
In existing oral implant surgeries, the two-dimensional images of conventional X-rays lead to inaccurate measurements of jawbone density and defect areas, resulting in large deviations in surgical design, affecting the success rate of the surgery and potentially leading to serious consequences. Furthermore, these surgeries require a high level of experience and technical skills from the doctor.
A VTK-based oral guide initial extraction method is used. Through three-dimensional measurement, sleeve fusion, image area segmentation and three-dimensional data expansion technology, 3D printing technology is used to produce surgical guides to achieve precise design of implant placement and avoid damage to important neurovascular structures.
It achieves accurate measurement of oral CT images and medical 3D images, makes sleeve fusion more realistic, and simplifies image segmentation. The 3D image expansion technology facilitates the preliminary extraction of oral guides, thus improving the accuracy and success rate of surgery.
Smart Images

Figure CN115937072B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical fields of oral image measurement, sleeve fusion, image region segmentation and three-dimensional data expansion of images, and in particular to a VTK-based oral guide plate initial extraction method. Background Art
[0002] With the increasing sophistication of artificial intelligence, optical imaging, 3D image processing, high-resolution CT scanning, and computer software development, as well as the deepening of clinical analysis and experimental research in oral implantology, the visualization and analysis of the surgical environment, the prediction and navigation of preoperative simulation plans, and the extraction and fabrication of 3D digital oral guides have become a major research hotspot. While this technology is still relatively immature in China, the demand for oral implant guides remains unabated. The success of oral implant surgery is crucial for two key factors: developing a scientific, reasonable, and safe treatment plan for the patient before surgery; and simulating and predicting the results of this plan. The oral guide extraction system, with its excellent surgical navigation capabilities and proven clinical success, ensures surgical safety and stability, reduces surgical uncertainty, and effectively improves the success rate of implant surgery.
[0003] Oral implant surgery places stringent requirements on implant design and placement. The distance between the implant and the maxillary bone and mandibular neural canal must be measured within a 2mm tolerance. The assessment of mandibular bone loss and the positional relationship between the implant and the restoration require meticulous care. The success of the surgery hinges on preoperative planning. Conventional periapical radiographs and mandibular curvilinear radiographs can provide some guidance to clinicians, but these two-dimensional images, with overlapping structures, have low density resolution. This, influenced by the imaging angle, can lead to a degree of distortion and reduction in local tissue structures. In short, preoperative planning based on conventional radiographs often fails to accurately estimate jawbone density and defect area, placing clinicians in a difficult position during oral implant surgery. This not only fails to achieve effective treatment outcomes but can also lead to implant loss and even serious sequelae, such as adjacent tooth damage, lower lip numbness, jawbone resorption, and maxillary sinus infection, causing both physical and psychological damage to patients.
[0004] Previous implant surgeries required extremely strict experience and technical skills from the doctor. Implant placement not only had to consider the local jawbone bone density but also had to be designed based on the anatomical structure. Often, conclusions could only be made after the mucosal membrane was flipped open during surgery. There was a certain deviation between the implant position and angle designed before the surgery and the actual implant position, which would not only cause the failure of the surgery but also bring some sequelae. Minimally invasive implant technology is widely used because it can improve the accuracy of implant surgery and reduce intraoperative bleeding, reduce postoperative swelling, avoid alveolar bone absorption, and reduce patients' fear. The use of implant guides makes it possible to perform surgery without flaps. Similar to some other surgical guides, implant guides are also information carriers for implant surgery and serve as navigation tools during surgery. Summary of the Invention
[0005] The purpose of the present invention is to provide a VTK-based method for initial extraction of oral guides. The surgical guides produced by 3D printing technology can be designed and produced using three-dimensional measurement technology to determine the depth and angle of implant placement in the jawbone, thereby avoiding damage to important neurovascular structures within the jawbone. Even newly appointed young doctors can successfully complete implant surgery by using this surgical guide.
[0006] In order to achieve the above-mentioned purpose of the invention, the present invention adopts a technical solution specifically as follows: a VTK-based oral guide plate initial extraction method, comprising the following steps:
[0007] S10. Distance and Angle Measurement. Use the visual distance measurement control to measure the distance between two teeth in a two-dimensional mandibular cross-section data image; use the visual angle measurement control to measure the angle between two rays (defined by three points); and use the visual representation control to measure three-dimensional angles and distances.
[0008] S20, sleeve fusion. Using Boolean operations to directly fuse STL triangular surface data can effectively solve the problem of wasted time.
[0009] S30. Tooth region segmentation. Segmentation is performed based on the model's threshold or other significant features. Segmentation is usually performed by setting the model's feature value or using a mouse to interactively perform 3D segmentation. The user can define the model into several regions.
[0010] S40. Dilate the tooth region. The VTK-based image dilation transformation uses vector addition to merge two data sets. The dilated region X⊕B is the set of vector sums of all points in the triangle. The two operands of the vector addition come from sets X and B, respectively, and can be any possible combination of sets.
[0011] Furthermore, the step S10 includes:
[0012] S101. Two-dimensional distance measurement. First, the user customizes the settings (i.e., selects two endpoints), then defines the mouse interaction method (interactively moving the two endpoints). Using some events of this Windows window, it is necessary to instantiate (NEW) an instance of the visual distance measurement control and its subclass of the constructed visual distance identification control. This event is implemented using two instances of the visual handle control, which are used to determine the two endpoints of the measured area and are also inherited from the visual extraction control class;
[0013] S102, two-dimensional angle measurement. First, the user customizes the settings (i.e., selects two endpoints and a center point), and then defines the way of mouse interaction (interactively moving two endpoints and a center point). To use some events of this Windows window, it is necessary to instantiate (NEW) an instance of a visual angle measurement control and its subclass of the constructed visual angle identification control. These instances are used to locate the three points. The representation of these events is provided by the visual angle identification control. By default, the widget will respond to the following VTK events, that is, it monitors these events in the visual rendering window interactor: left button selection event - add a point or select a handle, mouse move event - locate the second or third point, or move the handle left button release event - release the selected handle;
[0014] S103. 3D Measurement. This class is used to define APIs and implement representations for different types of widgets. The plugin represents that visual representation controls are a type of visual prop; meaning that they can be associated with a vtkRenderer end embedded in a scene, just like any other visual object visual object. However, the visual representation control also defines an API that enables it to be paired with a visual abstraction control subclass, meaning that it can be driven by the widget to represent the widget as the widget responds to registered events. The API defined here should be considered a guide for implementing widgets and widget representations. The behavior of widgets is complex, and the way representations respond to registered widget events is also complex, so the API may vary from widget to widget to reflect this complexity. Visual Distance Identification Control 3D is for representing visual distance measurement controls. The representation consists of a measurement line (axis) and two visual handle controls to place the endpoints of the line.
[0015] Furthermore, the step S20 includes:
[0016] S201. The two STL data are data A and data B. Based on the derivation of geometry and computer graphics, the Boolean operation relationship between model A and model B is:
[0017]
[0018] AinB means the aggregate data of data A inside data B, and AoutB means the aggregate data of A outside data B. (AinB) -1 Represents the difference of the set data of data A within data B, that is, the result of moving all the normal vectors of the triangles in the set data of data A within data B in the opposite direction. (BinA) -1 This represents the difference of the set of data B within data A. This is the result of reversing the normal vectors of all triangles in the set of data B within data A. BoutA represents the set of data B outside of data A, while BinA represents the set of data B within data A.
[0019] S202: traverse each triangular vertex of the mandibular model A and the mandibular model B, and find the maximum and minimum x, y, and z coordinates of each vertex in each triangular face of each mandibular model, which are recorded as X, B, and C respectively. min , XB max 、YB min 、YB max 、ZB min 、ZB max and XA min 、XA max 、YA min 、YA max 、ZA min 、ZA max , if the coordinate data satisfies XA max <XB min or XB max <XA min or YA max <YB min or YB max <YA min or ZA max <ZB max or ZB max <ZA min If any of the conditions are met, the mandibular model A and the mandibular model B will not intersect, otherwise they will intersect.
[0020] S203: The positional relationship of each triangular facet data domain obtained by segmenting the surfaces of mandibular models A and B along the intersection line relative to the other model is determined by using the intersection line as the dividing line, with the critical point being either outside model A or inside model B. The trade-off faced in Boolean operations is determining the positional relationship of each region obtained by segmenting one entity along the intersection line relative to the other entity in mandibular models A and B. Therefore, to determine the positional relationship of the triangular facet regions obtained by segmenting the intersection line loop of mandibular models A and B relative to the other entity, one can find a vertex that is a non-intersection point of the triangular facets. Then, one can examine the positional relationship of this vertex relative to the other entity model. From point to surface, one can determine the positional relationship of the region containing this point with the other entity model. If the vertex is outside the other mandibular entity model, the triangular facet is outside the other entity. If the vertex is not outside the other entity, the triangular facet is inside the other entity.
[0021] S204, the intersection line solution method is implemented by the two triangle intersection line algorithm proposed by Tomas Moller. The two triangles T1 and T2 have vertices and The planes where triangles T1 and T2 are located are α and β respectively. Calculate the equation of plane β: N2*X+d2=0, where X is a point on the triangle. The signed distance from triangle T1 to plane β can be found by substituting the points into the plane equation:
[0022]
[0023] like This means that T1 is on one side of β, so there will be no intersection. Do the same for triangle T2. If the intersection area between the triangle and the line overlaps, the triangles will also intersect.
[0024] Furthermore, the step S30 includes:
[0025] S301, first determine the plane coordinates. In principle, the coordinates can be determined arbitrarily, but in actual testing, appropriate coordinates should be selected according to different test models. The selected coordinates are used (x o ,y o , z o ) is used to indicate that this coordinate is the center point of the cutting surface and can be set by customization. It is selected within the tooth bone data of the mandible;
[0026] S302: The internal normal vector of the tooth is then determined. Based on the degree of inclination of the tooth-bone model, the angle for cutting the mandible, i.e., the direction for separating the upper surface data of the tooth, is customized. There are two methods for setting the normal vector of the cutting plane: the first is to enter rectangular coordinates on the keyboard; the second is to set polar coordinates. Polar coordinates are obviously more intuitive, but in actual code operation, the spatial point normal is more often used, that is, polar coordinates are converted to rectangular coordinates using a specific formula.
[0027] S303. Assuming that the polar coordinates of the normal vector are (r0, ψ0, θ0), the conversion of the coordinates into rectangular coordinates can be completed by formula (3), and the obtained new coordinates are set to (i0, j0, k0), that is, the coordinates are in the form of the normal vector of the tooth cutting surface after conversion. The direction of the tooth cutting surface is determined by the normal vector. Based on these two conditions, the cutting surface can be determined according to the spatial plane point normal equation (4).
[0028]
[0029] i0(xx o )+j0(yy o )+k0(zz o )=0(4)
[0030] S304: After the tooth cutting plane is determined, the next key step is to map the cutting plane. This involves finding the intersection of the cutting plane and the 3D model and adding the intersection to the 3D model. The 3D model of the oral teeth is segmented using this plane. Once the normal vector of the cutting plane is determined, the resulting data is divided into two parts. The tooth surface is then shaded, while the remaining parts retain their original appearance.
[0031] Furthermore, the step S40 includes:
[0032] S401. Combine two data sets using quantitative addition (or set addition, such as (x, y, z) + (a, b, c) = (x + a, y + b, c + d)). The dilated region X⊕B is the set of vector sums of all points in the triangle. The two operands of vector addition come from sets X and B, respectively, and can be any possible combination of sets.
[0033]
[0034] S402. Traditional image dilation processing often involves a large amount of redundant operations. The larger the amount of triangular data in the image and the more complex the structural elements, the more obvious the results of the redundant operations. The redundant operations come from two sources:
[0035] (1) Dilation processing of the interior of the triangular surface image. Dilation operation is an incremental operation method. When performing dilation operation on regional three-dimensional volume data, only the processing of the image boundary will affect the final result. Traditional dilation algorithms will calculate the data inside the image, which will take a lot of time and reduce the efficiency of the algorithm. In fact, the dilation algorithm can dilate the original image boundary and then combine it with the original image;
[0036] 2) Overlapping of adjacent triangles. When dilating adjacent triangles, there is a large amount of overlap between the two operations. The more triangles there are, the larger the structural elements are, and the more overlap there is. This increases the execution time of the algorithm and reduces its efficiency.
[0037] Compared with the prior art, the present invention has the following beneficial effects:
[0038] (1) The present invention provides a VTK-based oral guide initial extraction method, which realizes the accurate measurement of distance and angle between oral CT images and medical three-dimensional images. The Boolean fusion technology of the sleeve makes the preoperative simulation more realistic.
[0039] (2) The present invention provides a method for initial extraction of oral guides based on VTK. The plane-based three-dimensional image segmentation technology is simpler to operate and does not require data conversion. After reading the tooth data, the coordinates of the cutting surface and the normal vector of the cutting surface are set to complete the image segmentation.
[0040] (3) The present invention provides a VTK-based oral guide plate initial extraction method, which uses three-dimensional image expansion technology to achieve preliminary extraction of oral guide plates, facilitating 3D physical printing.
[0041] (4) The present invention uses oral image measurement technology, sleeve fusion technology, image region segmentation technology, and image three-dimensional data expansion technology to ultimately achieve the initial extraction of the oral guide plate, and realizes the measurement of mouse-interactive two-dimensional and three-dimensional images; in terms of sleeve fusion, point picking and Boolean operation methods are used to achieve sleeve insertion in a custom area; in terms of region segmentation, a plane interactive segmentation method is used. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] The accompanying drawings are used to provide further understanding of the present invention and constitute a part of the specification. They are used to explain the present invention together with the embodiments of the present invention and do not constitute a limitation of the present invention.
[0043] Figure 1 This is a flowchart of a VTK-based oral guide initial extraction method provided by the present invention.
[0044] Figure 2 Schematic diagram of mandibular section distance measurement in the present invention.
[0045] Figure 3 Schematic diagram of the mandibular section angle measurement in the present invention.
[0046] Figure 4 Schematic diagram of three-dimensional oral distance measurement in the present invention.
[0047] Figure 5 Schematic diagram of three-dimensional oral angle measurement in the present invention.
[0048] Figure 6 Schematic diagram of the Boolean union operation of mandibular bone and sleeve data in the present invention.
[0049] Figure 7 Schematic diagram of the marking on the upper surface of the tooth in the present invention.
[0050] Figure 8 This is a schematic diagram of the tooth surface in the present invention.
[0051] Figure 9 Schematic diagram of tooth surface expansion treatment in the present invention.
[0052] Figure 10 This is a schematic diagram of the actual printing of the braces in the present invention. DETAILED DESCRIPTION
[0053] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. Of course, the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0054] Example 1
[0055] See also Figures 1 to 10 This embodiment provides a method for extracting oral guide plates based on VTK. Figure 1 As shown, the following steps are included:
[0056] S10. Distance and Angle Measurement. Use the visual distance measurement control to measure the distance between two teeth in a two-dimensional mandibular cross-section data image; use the visual angle measurement control to measure the angle between two rays (defined by three points); and use the visual representation control to measure three-dimensional angles and distances.
[0057] S20, sleeve fusion. Using Boolean operations to directly fuse STL triangular surface data can effectively solve the problem of wasted time.
[0058] S30. Tooth region segmentation. Segmentation is performed based on the model's threshold or other significant features. Segmentation is usually performed by setting the model's feature value or using a mouse to interactively perform 3D segmentation. The user can define the model into several regions.
[0059] S40. Dilate the tooth region. The VTK-based image dilation transformation uses vector addition to merge two data sets. The dilated region X⊕B is the set of vector sums of all points in the triangle. The two operands of the vector addition come from sets X and B, respectively, and can be any possible combination of sets.
[0060] Preferably, the step S10 includes:
[0061] S101. Two-dimensional distance measurement. First, the user customizes the settings (i.e., selects two endpoints), then defines the mouse interaction method (interactively moving the two endpoints). Using some events of this Windows window, it is necessary to instantiate (NEW) an instance of the visual distance measurement control and its subclass of the constructed visual distance identification control. This event is implemented using two instances of the visual handle control, which are used to determine the two endpoints of the measured area and are also inherited from the visual extraction control class;
[0062] S102. Two-dimensional angle measurement. First, the user customizes the settings (i.e., selects two endpoints and a center point), and then defines the way of mouse interaction (interactively moving two endpoints and a center point). To use some events of this Windows window, you need to instantiate (NEW) an instance of the visual angle measurement control and its subclass of the constructed visual angle identification control. These instances are used to locate the three points. The representation of these events is provided by the visual angle identification control. By default, the widget will respond to the following VTK events (i.e., it monitors these events in the visual rendering window interactor): left-button selection event - add a point or select a handle, mouse move event - locate the second or third point, or move the handle left button release event - release the selected handle;
[0063] S103. 3D Measurement. This class is used to define APIs and implement representations for different types of widgets. The plugin represents that visual representation controls are a type of visual prop; meaning that they can be associated with a vtkRenderer end embedded in a scene, just like any other visual object visual object. However, the visual representation control also defines an API that enables it to be paired with a visual abstraction control subclass, meaning that it can be driven by the widget to represent the widget as the widget responds to registered events. The API defined here should be considered a guide for implementing widgets and widget representations. The behavior of widgets is complex, and the way representations respond to registered widget events is also complex, so the API may vary from widget to widget to reflect this complexity. Visual Distance Identification Control 3D is for representing visual distance measurement controls. The representation consists of a measurement line (axis) and two visual handle controls to place the endpoints of the line.
[0064] Preferably, the step S20 includes:
[0065] S201. The two STL data are data A and data B. Based on the derivation of geometry and computer graphics, the Boolean operation relationship between model A and model B is:
[0066]
[0067] AinB means the aggregate data of data A inside data B, and AoutB means the aggregate data of A outside data B. (AinB) -1 Represents the difference of the set data of data A within data B, that is, the result of moving all the normal vectors of the triangles in the set data of data A within data B in the opposite direction. (BinA) -1 This represents the difference of the set of data B within data A. This is the result of reversing the normal vectors of all triangles in the set of data B within data A. BoutA represents the set of data B outside of data A, while BinA represents the set of data B within data A.
[0068] S202: traverse each triangular vertex of the mandibular model A and the mandibular model B, and find the maximum and minimum x, y, and z coordinates of each vertex in each triangular face of each mandibular model, which are recorded as X, B, and C respectively. min , XB max 、YB min 、YB max 、ZB min 、ZB max and XA min 、XA max 、YA min 、YAmax 、ZA min 、ZA max , if the coordinate data satisfies XA max <XB min or XB max <XA min or YA max <YB min or YB max <YA min or ZA max <ZB max or ZB max <ZA min If any of the conditions are met, the mandibular model A and the mandibular model B will not intersect, otherwise they will intersect.
[0069] S203: The positional relationship of each triangular facet data domain obtained by segmenting the surfaces of mandibular models A and B along the intersection line relative to the other model is determined by using the intersection line as the dividing line, with the critical point being either outside model A or inside model B. The trade-off faced in Boolean operations is determining the positional relationship of each region obtained by segmenting one entity along the intersection line relative to the other entity in mandibular models A and B. Therefore, to determine the positional relationship of the triangular facet regions obtained by segmenting the intersection line loop of mandibular models A and B relative to the other entity, one can find a vertex that is a non-intersection point of the triangular facets. Then, one can examine the positional relationship of this vertex relative to the other entity model. From point to surface, one can determine the positional relationship of the region containing this point with the other entity model. If the vertex is outside the other mandibular entity model, the triangular facet is outside the other entity. If the vertex is not outside the other entity, the triangular facet is inside the other entity.
[0070] S204, the intersection line solution method is implemented by the two triangle intersection line algorithm proposed by Tomas Moller. The two triangles T1 and T2 have vertices and The planes where triangles T1 and T2 are located are α and β respectively. Calculate the equation of plane β: N2*X+d2=0, where X is a point on the triangle. The signed distance from triangle T1 to plane β can be found by substituting the points into the plane equation:
[0071]
[0072] like This means that T1 is on one side of β, so there will be no intersection. Do the same for triangle T2. If the intersection area between the triangle and the line overlaps, the triangles will also intersect.
[0073] Preferably, the step S30 includes:
[0074] S301, first determine the plane coordinates. In principle, the coordinates can be determined arbitrarily, but in actual testing, appropriate coordinates should be selected according to different test models. The selected coordinates are used (x o ,y o , z o ) is used to indicate that this coordinate is the center point of the cutting surface and can be set by customization. It is selected within the tooth bone data of the mandible;
[0075] S302: The internal normal vector of the tooth is then determined. Based on the degree of inclination of the tooth-bone model, the angle for cutting the mandible, i.e., the direction for separating the upper surface data of the tooth, is customized. There are two methods for setting the normal vector of the cutting plane: the first is to enter rectangular coordinates on the keyboard; the second is to set polar coordinates. Polar coordinates are obviously more intuitive, but in actual code operation, the spatial point normal is more often used, that is, polar coordinates are converted to rectangular coordinates using a specific formula.
[0076] S303. Assuming that the polar coordinates of the normal vector are (r0, ψ0, θ0), the conversion of the coordinates into rectangular coordinates can be completed by formula (3), and the obtained new coordinates are set to (i0, j0, k0), that is, the coordinates are in the form of the normal vector of the tooth cutting surface after conversion. The direction of the tooth cutting surface is determined by the normal vector. Based on these two conditions, the cutting surface can be determined according to the spatial plane point normal equation (4).
[0077]
[0078] i0(xx o )+j0(yy o )+k0(zz o )=0(4)
[0079] S304: After the tooth cutting plane is determined, the next key step is to map the cutting plane. This involves finding the intersection of the cutting plane and the 3D model and adding the intersection to the 3D model. The 3D model of the oral teeth is segmented using this plane. Once the normal vector of the cutting plane is determined, the resulting data is divided into two parts. The tooth surface is then shaded, while the remaining parts retain their original appearance.
[0080] Preferably, the step S40 includes:
[0081] S401. Combine two data sets by adding quantities (or adding sets, such as (x, y, z) + (a, b, c) = (x + a, y + b, c + d)). It is the set of vector sums of all points in the triangle. The two operands of vector addition come from set X and set B respectively, and any possible combination of sets is selected.
[0082]
[0083] S402. Traditional image dilation processing often involves a large amount of redundant operations. The larger the amount of triangular data in the image and the more complex the structural elements, the more obvious the results of the redundant operations. The redundant operations come from two sources:
[0084] (1) Dilation processing of the interior of the triangular surface image. Dilation operation is an incremental operation method. When performing dilation operation on regional three-dimensional volume data, only the processing of the image boundary will affect the final result. Traditional dilation algorithms will calculate the data inside the image, which will take a lot of time and reduce the efficiency of the algorithm. In fact, the dilation algorithm can dilate the original image boundary and then combine it with the original image;
[0085] 2) Overlapping of adjacent triangles. When dilating adjacent triangles, there is a large amount of overlap between the two operations. The more triangles there are, the larger the structural elements are, and the more overlap there is. This increases the execution time of the algorithm and reduces its efficiency.
[0086] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A VTK-based oral guide plate initial extraction method, characterized in that: The following steps are involved: S10, distance and angle measurement, using a visual distance measurement control to measure the distance between two teeth in a two-dimensional mandibular cross-section data image; using a visual angle measurement control to measure the angle between two rays; using a visual representation control to achieve three-dimensional angle and distance measurement; S20, sleeve fusion, uses Boolean operation method to directly fuse STL triangle surface data; S30, tooth region segmentation, segmentation is performed based on the model's threshold or significant features, the model's feature values are set for segmentation, or three-dimensional segmentation is performed interactively using the mouse, and the user defines how to segment the model into several regions; The step S20 includes the following steps: S201. The two STL data are data A and data B. Based on the derivation of geometry and computer graphics, the Boolean operation relationship between model A and model B is: AinB means the aggregate data of data A inside data B, and AoutB means the aggregate data of A outside data B. (AinB) -1 Represents the difference of the set data of data A within data B, that is, the result of moving all the normal vectors of the triangles in the set data of data A within data B in the opposite direction; (BinA) -1 Represents the difference of the set data of data B inside data A, that is, the result of moving all the normal vectors of the triangles in the set data of data B inside data A in the opposite direction; BoutA means the set data of data B outside data A, and BinA means the set data of data B inside data A; S202: traverse each triangular vertex of the mandibular model A and the mandibular model B, and find the maximum and minimum x, y, and z coordinates of each vertex in each triangular face of each mandibular model, which are recorded as X, B, and C respectively. min , XB max 、YB min 、YB max 、ZB min 、ZB max and XA min 、XA max 、YA min 、YA max 、ZA min 、ZA max , if the coordinate data satisfies XA max <XB min or XB max <XA min or YA max <YB min or YB max <YA min or ZA max <ZB max or ZB max <ZA min If any of the conditions are met, the mandibular model A and the mandibular model B will not intersect, otherwise they will intersect; S203, the positional relationship of each triangular facet data domain obtained by dividing the surfaces of mandibular model A and mandibular model B by the intersection line relative to the other model is divided by the intersection line, and its critical point is either outside model A or inside model B; the trade-off problem faced in Boolean operation is to determine the positional relationship of each region obtained by dividing one entity along the intersection line in model A and model B relative to the other entity; to determine the positional relationship of the triangular facet region obtained by dividing the intersection ring of mandibular model A and model B relative to the other entity, it is necessary to find a vertex that is a non-intersection point of the triangular facet, and then check the positional relationship of this vertex relative to the other entity model, and from point to surface, obtain the positional relationship of the region where the point is located with the other entity model. When the vertex is outside the other mandibular entity model, then the triangular facet is outside the other entity. If the vertex is not outside the other entity, then the triangular facet is inside the other entity. S204, the intersection line solution method is implemented by using the two triangle intersection line algorithm. The two triangle faces T1 and T2 have vertices respectively. and The planes where triangles T1 and T2 are located are α and β respectively. Calculate the equation of plane β: N2*X+d2=0, where X is a point on the triangle. The directed distance from triangle T1 to plane β is obtained by substituting the points into the plane equation: like This means that T1 is on one side of β, so there will be no intersection. The same treatment is done for triangle T2. If When , the triangles will intersect. If the intersection areas of the triangles and the straight lines overlap, the triangles will also intersect. S40, tooth area expansion. The VTK-based image expansion transformation uses vector addition to merge two data sets. The expansion area X⊕B is the set of the vector sums of all points in the triangle. The two operands of vector addition come from set X and set B respectively, and any possible set combination is selected.
2. The oral guide plate initial extraction method based on VTK according to claim 1, characterized in that: The step S10 includes the following steps: S101. Two-dimensional distance measurement. First, the user customizes the settings, that is, selects two endpoints, and then defines the mouse interaction method to interactively move the two endpoints. Using some events of this Windows window, an instance of a visual distance measurement control and its subclass of the constructed visual distance identification control are instantiated; this event is implemented using two instances of the visual handle control, which are used to determine the two endpoints of the measured area and are also inherited from the visual extraction control class; S102. Two-dimensional angle measurement. First, the user customizes the settings, that is, selects two endpoints and a center point, and then defines the mouse interaction method to interactively move the two endpoints and a center point. To use some events of this Windows window, you need to instantiate an instance of a visual angle measurement control and its construction form, a subclass of the visual angle identification control. These instances are used to locate the three points. The representation of these events is provided by the visual angle identification control. By default, the widget will respond to the following VTK events and monitor these events in the visual rendering window interactor: left-click selection event - add a point or select a handle, mouse move event - locate the second or third point, or move the handle, left button release event - release the selected handle; S103. Three-dimensional measurement. This class is used to define APIs and implement representations for different types of widgets. The plugin represents a type of visualization prop, meaning that they are associated with a vtkRenderer end embedded in the scene, just like any other visualization object. The visualization representation control also defines an API to pair it with a visualization extraction control subclass. It is driven by the widget and represents the widget when the widget responds to registered events. The API defined here is considered a guide for implementing widgets and widget representations. The behavior of the widget is complex, and the way the representation responds to registered widget events is also complex. The API varies from widget to widget to reflect this complexity. The visualization distance identification control 3D is for representing a visualization distance measurement control. The representation includes a measurement line and two visualization handle controls to place the endpoints of the line.
3. The method for initial extraction of oral guide plate based on VTK according to claim 1, characterized in that: The step S30 includes the following steps: S301, first determine the plane coordinates, and use (x o ,y o , z o ) to indicate that this coordinate is the center point of the cutting surface, which is set by customization and is selected within the tooth bone data of the mandible; S302: Then, determine the internal normal vector of the tooth. Based on the degree of inclination of the tooth-bone model, customize the angle of cutting the mandible, i.e., the direction for separating the upper surface data of the tooth. There are two ways to set the normal vector of the cutting plane: the first method is to enter rectangular coordinates on the keyboard; the second method is to set polar coordinates and convert the polar coordinates into rectangular coordinates using a formula. S303. Assume that the polar coordinates of the normal vector are (r0, ψ0, θ0). Convert the coordinates into rectangular coordinates using formula (3). The new coordinates are set to (i0, j0, k0). That is, the coordinates are the normal vector form of the tooth cutting surface after transformation. The direction of the tooth cutting surface is determined by the normal vector. The cutting surface is determined by these two conditions according to the spatial plane point normal equation (4): i0(xx o )+j0(yy o )+k0(zz o )=0(4) S304. After the tooth cutting plane is determined, the intersection of the cutting plane and the three-dimensional model is calculated, and the intersection part is added to the three-dimensional model. The three-dimensional model of the oral teeth is segmented using this plane. When the normal vector of the cutting plane is determined, the two parts of the oral tooth data are obtained after segmentation. The tooth surface is colored, and the remaining parts retain their original appearance.
4. The method for initial extraction of oral guide plate based on VTK according to claim 1, characterized in that: The step S40 includes the following steps: S401, quantitative addition or set addition, merge two data sets, expand the area It is the set of vector sums of all points in the triangle. The two operands of vector addition come from sets X and B respectively, and any possible combination of sets is selected: S402: Dilation processing is performed on the interior of the triangular face image. Dilation operation is an incremental operation method. When performing dilation operation on regional three-dimensional volume data, processing of the image boundary will affect the final result. The dilation algorithm dilates the original image boundary and then combines it with the original image. The overlapping part of the dilation operation of adjacent triangles. The dilation operation of adjacent triangles has overlapping parts between the two operations.
Citation Information
Patent Citations
Image segmentation method for teeth images
WO2018214950A1
KR20200118517A