An oral scanning point cloud registration method, device, equipment and medium
By combining the fusion representation of two-dimensional texture and three-dimensional geometric features, unique candidate key points are screened out, a graph model is constructed, and spatial transformation parameters are calculated. This solves the problem of insufficient registration accuracy of smooth tooth surfaces in existing technologies and realizes the generation of high-precision oral scan images.
Patent Information
- Application Number
- CN202511736098.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-25
- Publication Date
- 2026-03-03
- Estimated Expiration
- 2045-11-25
AI Technical Summary
Existing oral scanning technologies struggle to achieve high-precision point cloud registration when faced with smooth, curved tooth surfaces and high similarity in local geometric features. This results in misalignment and ghosting in tooth models, failing to meet the requirements for high-precision dental restorations and orthodontics.
By extracting a fusion representation of two-dimensional texture features and three-dimensional geometric features, unique candidate key points are selected, and a graph model is constructed based on these key points. Spatial transformation parameters are calculated for point cloud registration, and dense subgraph search and iterative nearest point algorithms are used for optimization, ultimately generating a high-precision three-dimensional oral cavity scan image.
It significantly improves the discriminative power and robustness of feature matching, overcomes the problems of smooth tooth surfaces and high geometric feature repeatability, and achieves high-precision oral model reconstruction.
Smart Images

Figure CN121280417B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of image processing or generation technology, and more specifically, to a method, apparatus, device, and medium for registering point clouds of oral scans. Background Technology
[0002] In oral healthcare, obtaining high-precision three-dimensional tooth models using intraoral scanners is fundamental for subsequent diagnosis and treatment. The core of this process lies in precisely stitching together point cloud fragments obtained from multiple scans from different perspectives into a complete tooth model.
[0003] However, the inventors discovered that existing registration techniques fall short of clinical accuracy requirements when dealing with the unique environment of the oral cavity. This is primarily due to the inherent challenges of the oral environment: tooth surfaces are mostly smooth curved surfaces with high similarity in local geometric features and a lack of significant distinguishability; simultaneously, there are occlusions, noise, and interference introduced by saliva reflection during the scanning process. These factors make existing registration methods prone to errors in the feature matching stage, resulting in misalignment, ghosting, and other inaccuracies in the assembled tooth models, making it difficult to meet the stringent requirements of high-precision dental restorations, orthodontics, and other applications. Summary of the Invention
[0004] In view of this, embodiments of this application provide a method, apparatus, device, and medium for registering oral cavity scanning point clouds to improve the registration accuracy of oral cavity scanning point clouds.
[0005] In a first aspect, embodiments of this application provide a method for registering oral cavity scanning point clouds, the method comprising:
[0006] Acquire multiple sets of point cloud data to be registered; the multiple sets of point cloud data are collected based on different shooting angles;
[0007] Extract the two-dimensional texture features and three-dimensional geometric features from each group of point cloud data;
[0008] Based on the fusion representation of the two-dimensional texture features and the three-dimensional geometric features, a set of candidate key points is selected from each set of point cloud data;
[0009] For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points;
[0010] Based on the spatial transformation parameters, the multiple sets of point cloud data are registered to obtain a registered three-dimensional oral cavity scan image.
[0011] In a feasible implementation, for any two sets of point cloud data, based on their corresponding two sets of candidate keypoints, the spatial transformation parameters between the two sets of point cloud data are calculated, including:
[0012] Match the two sets of candidate key points corresponding to any two sets of point cloud data.
[0013] A graph model is constructed based on the matching relationship between the two sets of candidate key points;
[0014] The spatial transformation parameters between the two sets of point cloud data are calculated by searching for dense subgraphs in the graph model.
[0015] In a feasible implementation, a graph model is constructed based on the matching relationship between the two sets of candidate key points, including:
[0016] Multiple matching pairs are obtained by matching the two sets of candidate key points; each matching pair includes two candidate key points from different point cloud data.
[0017] The matching pairs are used as nodes to form a compatibility graph; the compatibility graph also includes edge weights calculated from the geometric consistency and texture similarity between the matching pairs.
[0018] In one feasible implementation, spatial transformation parameters between the two sets of point cloud data are calculated by searching for dense subgraphs in the graph model, including:
[0019] Search the compatibility graph for three clusters that meet the preset accuracy requirements; the three clusters are subgraphs composed of three nodes, and any two of the three nodes are connected by an edge;
[0020] Based on the matching pairs corresponding to the nodes contained in the three clusters, the rigid body transformation between the two sets of point cloud data to be registered is calculated, and the rigid body transformation is used as the spatial transformation parameter.
[0021] Registration of the multiple sets of point cloud data based on the spatial transformation parameters includes:
[0022] Starting with the rigid body transformation, the point-to-surface iterative nearest point algorithm is used for optimization to complete the final registration.
[0023] In one feasible implementation, the search in the compatibility graph includes three clusters that meet a preset accuracy requirement, including:
[0024] Sort the edges in the compatibility graph from high to low, and select the first number of edges with the highest ranking as the pivot edges.
[0025] For each pivot edge, find the target node in the compatibility graph that is connected to both endpoints of the pivot edge;
[0026] The two endpoints of the pivot edge, and each of their corresponding target nodes, constitute a candidate tri-cluster;
[0027] Calculate the aggregate weight of each candidate tricluster; the aggregate weight is the sum of the weights of the three edges contained in the candidate tricluster.
[0028] For all candidate three-clusters formed by the same pivot edge, they are sorted according to their aggregation weights, and the second-highest ranked candidate three-clusters are selected in sequence to form the final three-cluster set, and the rigid body transformation is calculated based on the three-clusters in the three-cluster set.
[0029] In one feasible implementation, the multiple sets of point cloud data are registered based on the spatial transformation parameters to obtain a registered three-dimensional oral cavity scan image, including:
[0030] The multiple sets of point cloud data are initially registered based on the spatial transformation parameters.
[0031] The initial registration result is verified based on the preset tooth morphology.
[0032] When the verification result indicates that the initial registration result matches the tooth morphology, a three-dimensional oral scan image after registration is obtained based on the initial registration result.
[0033] If the verification result indicates that the initial registration result is different from the tooth morphology, then the following steps are repeated:
[0034] For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points.
[0035] In a feasible implementation, a set of candidate key points is selected from each set of point cloud data, including:
[0036] The saliency score of each point is calculated based on the fusion representation; the saliency score is used to represent the comprehensive uniqueness of each point in terms of two-dimensional texture features and three-dimensional geometric features;
[0037] Based on the saliency score, initial candidate key points are selected from the point cloud data;
[0038] Among the initial candidate key points, all points contained in the nearest neighbor pairs are retained to form the final set of candidate key points.
[0039] Secondly, embodiments of this application also provide an oral cavity scanning point cloud registration device, the device comprising:
[0040] The acquisition module is used to acquire multiple sets of point cloud data to be registered; the multiple sets of point cloud data are collected based on different shooting angles;
[0041] The extraction module is used to extract two-dimensional texture features and three-dimensional geometric features from each group of point cloud data;
[0042] The filtering module is used to filter a set of candidate key points from each set of point cloud data based on the fusion representation of the two-dimensional texture features and the three-dimensional geometric features.
[0043] The calculation module is used to calculate the spatial transformation parameters between any two sets of point cloud data based on their corresponding two sets of candidate key points.
[0044] The registration module is used to register the multiple sets of point cloud data based on the spatial transformation parameters to obtain a registered three-dimensional oral cavity scan image.
[0045] In one feasible implementation, the calculation module is used to calculate the spatial transformation parameters between any two sets of point cloud data, based on their corresponding two sets of candidate keypoints, for the following purposes:
[0046] Match the two sets of candidate key points corresponding to any two sets of point cloud data.
[0047] A graph model is constructed based on the matching relationship between the two sets of candidate key points;
[0048] The spatial transformation parameters between the two sets of point cloud data are calculated by searching for dense subgraphs in the graph model.
[0049] In one feasible implementation, the computing module is used to construct a graph model based on the matching relationship between the two sets of candidate key points, for:
[0050] Multiple matching pairs are obtained by matching the two sets of candidate key points; each matching pair includes two candidate key points from different point cloud data.
[0051] The matching pairs are used as nodes to form a compatibility graph; the compatibility graph also includes edge weights calculated from the geometric consistency and texture similarity between the matching pairs.
[0052] In one feasible implementation, the computing module is configured to calculate spatial transformation parameters between the two sets of point cloud data by searching for dense subgraphs in the graph model, for the following purposes:
[0053] Search the compatibility graph for three clusters that meet the preset accuracy requirements; the three clusters are subgraphs composed of three nodes, and any two of the three nodes are connected by an edge;
[0054] Based on the matching pairs corresponding to the nodes contained in the three clusters, the rigid body transformation between the two sets of point cloud data to be registered is calculated, and the rigid body transformation is used as the spatial transformation parameter.
[0055] The registration module is used to register the multiple sets of point cloud data based on the spatial transformation parameters, and is used for:
[0056] Starting with the rigid body transformation, the point-to-surface iterative nearest point algorithm is used for optimization to complete the final registration.
[0057] In one feasible implementation, the calculation module is used to search for three clusters that meet a preset accuracy requirement in the compatibility graph, for the following purposes:
[0058] Sort the edges in the compatibility graph from high to low, and select the first number of edges with the highest ranking as the pivot edges.
[0059] For each pivot edge, find the target node in the compatibility graph that is connected to both endpoints of the pivot edge;
[0060] The two endpoints of the pivot edge, and each of their corresponding target nodes, constitute a candidate tri-cluster;
[0061] Calculate the aggregate weight of each candidate tricluster; the aggregate weight is the sum of the weights of the three edges contained in the candidate tricluster.
[0062] For all candidate three-clusters formed by the same pivot edge, they are sorted according to their aggregation weights, and the second-highest ranked candidate three-clusters are selected in sequence to form the final three-cluster set, and the rigid body transformation is calculated based on the three-clusters in the three-cluster set.
[0063] In one feasible implementation, the registration module is used to register the multiple sets of point cloud data based on the spatial transformation parameters to obtain a registered three-dimensional oral cavity scan image, for the purpose of:
[0064] The multiple sets of point cloud data are initially registered based on the spatial transformation parameters.
[0065] The initial registration result is verified based on the preset tooth morphology.
[0066] When the verification result indicates that the initial registration result matches the tooth morphology, a three-dimensional oral scan image after registration is obtained based on the initial registration result.
[0067] If the verification result indicates that the initial registration result is different from the tooth morphology, then the following steps are repeated:
[0068] For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points.
[0069] In one feasible implementation, the filtering module is used to filter a set of candidate key points from each set of point cloud data, for the following purposes:
[0070] The saliency score of each point is calculated based on the fusion representation; the saliency score is used to represent the comprehensive uniqueness of each point in terms of two-dimensional texture features and three-dimensional geometric features;
[0071] Based on the saliency score, initial candidate key points are selected from the point cloud data;
[0072] Among the initial candidate key points, all points contained in the nearest neighbor pairs are retained to form the final set of candidate key points.
[0073] Thirdly, embodiments of this application also provide an electronic device, including: a processor, a storage medium, and a bus, wherein the storage medium stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor communicates with the storage medium via the bus, and the processor executes the machine-readable instructions to perform the steps of the method as described in any one of the first aspects.
[0074] Fourthly, embodiments of this application also provide a computer-readable storage medium storing a computer program, which, when executed by a processor, performs the steps of the method as described in any one of the first aspects.
[0075] This application provides a method, apparatus, device, and medium for registering point clouds in oral cavity scanning. By extracting two-dimensional texture features and three-dimensional geometric features from point cloud data, a fused representation of the two-dimensional texture features and three-dimensional geometric features of each point can be obtained, resulting in more unique candidate key points. Based on these unique candidate key points, point cloud data acquired from different shooting angles can be registered more accurately to obtain the final three-dimensional oral cavity scanning image. Compared with existing technologies that only register based on three-dimensional geometric features, this method effectively overcomes the matching ambiguity problem caused by the smoothness of tooth surfaces and the high repeatability of geometric features, significantly improving the discriminative power and robustness of feature matching, thus laying a reliable foundation for achieving high-precision oral cavity model reconstruction.
[0076] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. Attached Figure Description
[0077] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0078] Figure 1 A flowchart of a point cloud registration method for oral cavity scanning provided in an embodiment of this application is shown.
[0079] Figure 2 A flowchart of another oral cavity scanning point cloud registration method provided in an embodiment of this application is shown.
[0080] Figure 3 A schematic diagram of the structure of an oral cavity scanning point cloud registration device provided in an embodiment of this application is shown.
[0081] Figure 4 A schematic diagram of the structure of an electronic device provided in an embodiment of this application is shown. Detailed Implementation
[0082] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. The components of the embodiments of this application described and shown in the accompanying drawings can generally be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely represents selected embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.
[0083] In oral healthcare, obtaining high-precision three-dimensional tooth models using intraoral scanners is fundamental for subsequent diagnosis and treatment. The core of this process lies in precisely stitching together point cloud fragments obtained from multiple scans from different perspectives into a complete tooth model.
[0084] However, the inventors discovered that existing registration techniques fall short of clinical accuracy requirements when dealing with the unique environment of the oral cavity. This is primarily due to the inherent challenges of the oral environment: tooth surfaces are mostly smooth curved surfaces with high similarity in local geometric features and a lack of significant distinguishability; simultaneously, there are occlusions, noise, and interference introduced by saliva reflection during the scanning process. These factors make existing registration methods prone to errors in the feature matching stage, resulting in misalignment, ghosting, and other inaccuracies in the assembled tooth models, making it difficult to meet the stringent requirements of high-precision dental restorations, orthodontics, and other applications.
[0085] Based on this, embodiments of this application provide a method, apparatus, device, and medium for registering point clouds in oral scanning, which are described below through embodiments.
[0086] To facilitate understanding of this embodiment, in conjunction with Figure 1 This application provides a detailed description of a method for registering oral cavity scanning point clouds according to embodiments. For example... Figure 1 As shown, it includes the following steps:
[0087] Step 101: Obtain multiple sets of point cloud data to be registered; the multiple sets of point cloud data are collected based on different shooting angles.
[0088] Due to the physiological structure of the oral cavity, scanning equipment typically cannot acquire complete oral cavity data in a single imaging session. Therefore, it is necessary to collect local point clouds from multiple perspectives and then integrate these local data into a unified coordinate system using registration techniques to generate a complete 3D oral cavity scanning point cloud.
[0089] Therefore, these collected local point clouds are used as multiple sets of point cloud data to be registered.
[0090] Step 102: Extract the two-dimensional texture features and three-dimensional geometric features from each group of point cloud data.
[0091] In this embodiment of the application, the scanning device is a structured light intraoral scanner as an example. It is equipped with a camera module. By projecting a specific coded optical pattern into the oral cavity and capturing its deformation, it can simultaneously acquire two-dimensional texture images and three-dimensional point cloud data of the oral cavity.
[0092] Two-dimensional texture images can reflect key visual details on the tooth surface that cannot be fully described by geometry, including but not limited to:
[0093] The unique luster and spots of tooth enamel, such as natural patches and pigmentation on the tooth surface; personalized developmental grooves and fissures, such as the unique and complex grooves on the occlusal surfaces of posterior teeth; subtle wear lines and cracks; and the transition between proximal and gingival margins, such as the color and texture variations at the junctions of teeth and gums. These details provide indispensable, highly discriminative information for point cloud registration.
[0094] Three-dimensional geometric features can represent the macroscopic three-dimensional morphology and microscopic surface curvature of teeth, accurately describing their shape, concavity and convexity and orientation in three-dimensional space.
[0095] For example, two-dimensional texture features and three-dimensional geometric features can be extracted in the following ways:
[0096] 1. Methods for extracting two-dimensional texture features:
[0097] First, multiple two-dimensional oral cavity images are acquired by the scanning device. (The text then repeats the first two sentences.) Two-dimensional images (perspective) Taking this as an example, we will introduce how to extract two-dimensional texture features. Among them, Representative image, Represents pixel coordinates on an image, usually Represents the x-axis. Represents the vertical axis. Indicates: the The image at pixel coordinates ( , The pixel value (such as brightness or color) at the location.
[0098] First, in one embodiment, all points can be used as keypoints, thereby extracting two-dimensional texture features and three-dimensional geometric features for each point. In another embodiment, to reduce computational load, only a subset of important points can be selected as keypoints. For example, the FAST corner detection algorithm can be used to find keypoints with significant discriminative power in the image. These keypoints are typically located in areas with obvious features such as tooth texture, edges, or patches.
[0099] Next, a principal direction is calculated for each keypoint to achieve rotation invariance of the features. Specifically, a circular neighborhood is defined centered on the previously found keypoints, and the centroid of the brightness distribution of pixels within this region is calculated using the gray-scale centroid method. Then, the center of each keypoint is connected to the calculated brightness centroid, forming a directed vector. The direction of this vector is defined as the principal direction of the keypoint. This mechanism ensures that even if the image rotates, the relative orientation between the keypoint and its own brightness centroid remains unchanged, thus making the subsequently generated feature descriptions rotationally robust.
[0100] Finally, using the aforementioned main direction as a reference, within the image region surrounding the keypoint, a compact binary feature descriptor (i.e., a BRIEF descriptor) is generated by randomly selecting multiple pairs of pixels and comparing their brightness levels. This descriptor is a sequence of 0s and 1s, serving as the "feature fingerprint" of the keypoint and uniquely representing the texture structure of its neighborhood. Ultimately, for each keypoint... Output the two-dimensional descriptor corresponding to its two-dimensional texture features, denoted as .
[0101] 2. Methods for extracting three-dimensional geometric features:
[0102] First, a spatial neighborhood is defined for each key point in the point cloud data. The set of points within this neighborhood defines the local geometric context of that key point.
[0103] Next, a 3D descriptor is constructed for each keypoint using the Fast Point Feature Histogram (FPFH) method, resulting in a Fast Point Feature Histogram (FPFH) descriptor for each keypoint, denoted as […]. This three-dimensional descriptor is also known as a three-dimensional geometric feature. Its core lies in statistically analyzing the multi-dimensional spatial relationships between the keypoint and its neighborhood points, i.e., the keypoint... The geometric relationships (normal angle, azimuth angle, curvature, etc.) with neighboring points are determined. Then, all statistically obtained parameter values are divided into preset intervals and summarized to generate a normalized multidimensional statistical histogram, thus obtaining the FPFH descriptor for that point. This descriptor is a feature vector, where the value of each dimension reflects the statistical frequency of a specific geometric relationship occurring in the neighborhood of that point.
[0104] Set key points The FPFH descriptor is a D-dimensional histogram, as shown in the following formula:
[0105]
[0106] Here, D is the total dimension of the FPFH descriptor, which determines how finely the descriptor can describe geometric relationships. The larger D is, the finer the intervals are divided, and the more accurate the description. In this histogram representing the FPFH descriptors, the first... The value of the dimension, that is, the . Geometric relations at this key point The relative frequency of occurrence within a local region. For example, a higher The value indicates the key point. There are a large number of neighborhood points whose normal vectors are within a certain range, which accurately describes the local surface morphology (such as flat areas, edges, or corners) where the point is located.
[0107] To further assess the uniqueness of this keypoint, the variance of its FPFH descriptor (i.e., the aforementioned statistical histogram) is calculated, and this variance value is defined as the geometric discriminant of the point. Variance The formula is as follows:
[0108]
[0109] in, Representative descriptor vector The average value represents an ideal region that is completely featureless, smooth, and uniform. It measures the frequency of a single dimension. With average frequency The square of the deviation. If a certain Much greater than or much less than the average frequency This indicates that such geometric relationships occur either very frequently or very infrequently, meaning that the geometric characteristics of the point deviate from a "mediocre" state, and this deviation is quite large.
[0110] variance The larger the value, the more complex and unique the geometry around the key point is, and the higher its distinguishability in the overall point cloud data.
[0111] The method describes three-dimensional geometric features through local statistical aggregation, which is robust to data noise and can effectively handle challenges such as smooth areas, geometrically repetitive structures and local occlusion on the tooth surface, thereby extracting stable and highly discriminative three-dimensional geometric features.
[0112] Through the above step 102, and by utilizing the mapping relationship pre-calibrated by the scanning system, the two-dimensional texture features from the two-dimensional texture image and the three-dimensional geometric features of the three-dimensional point cloud data can be associated with the same physical point, thereby determining the two-dimensional texture features and three-dimensional geometric features fused to each point in the point cloud data.
[0113] For example, the mapping relationship between two-dimensional texture images and three-dimensional point cloud data can be determined in the following way:
[0114] Thanks to the use of structured light 3D reconstruction technology, the scanning system has obtained the intrinsic parameter matrix of the camera module through precise pre-calibration. and extrinsic parameter matrices from different perspectives Based on these parameters, the first... Projection matrix of each viewpoint , means as follows:
[0115]
[0116] in, It is the camera's intrinsic parameter matrix, representing the first... The camera intrinsic parameter matrix corresponding to each viewpoint. If the camera lens and sensor are fixed, then the intrinsic parameter matrix is... It should be a constant, not changing with the viewpoint. It is the first The rotation matrix of each viewpoint describes the orientation of the camera relative to the world coordinate system. It is the first The translation vector of each viewpoint describes the position of the camera's optical center in the world coordinate system.
[0117] Based on this projection matrix It can establish a mapping relationship between two-dimensional texture images and three-dimensional point cloud data, as shown in the following formula:
[0118]
[0119] in, , , This represents the coordinates of any point in the point cloud in three-dimensional space. For example, this point could be a specific location on the incisal edge of an incisor.
[0120] , It is a three-dimensional point ( , , The final pixel coordinates are projected onto the two-dimensional texture image. It is usually the x-axis. It is usually the vertical axis.
[0121] Based on the above projection relationship, any point in the 3D point cloud ( , , Each of these can be uniquely mapped to a specific pixel coordinate on a two-dimensional texture image. , This establishes a precise direct correspondence between 3D point clouds and 2D texture images.
[0122] Step 103: Based on the fusion representation of the two-dimensional texture features and the three-dimensional geometric features, select a set of candidate key points from each set of point cloud data.
[0123] To effectively distinguish multiple points in point cloud data, especially overcoming the limitations of single geometric features on smooth tooth surfaces, the two-dimensional texture features and three-dimensional geometric features of each point can be fused to obtain a joint descriptor. This fused joint descriptor combines texture and geometric information, significantly enhancing the uniqueness of each point and the robustness of matching.
[0124] For example, a two-dimensional descriptor of two-dimensional texture features can be used. 3D descriptors of 3D geometric features By concatenating the components, we obtain the joint descriptor, whose formalized representation is as follows:
[0125]
[0126] According to the joint descriptor From each set of point cloud data, a set of candidate keypoints is selected. This set of candidate keypoints are keypoints that have significant distinguishability compared to the joint descriptors of other keypoints in the point cloud data, and can represent the most representative local features of the point cloud in terms of texture and geometry.
[0127] Step 104: For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points.
[0128] This step aims to solve the spatial alignment problem between any two sets of point cloud data. Its core lies in calculating an optimal spatial transformation parameter based on two sets of candidate keypoints selected in step 103 that can characterize the point cloud features of these two sets of data.
[0129] The spatial transformation parameters define the rotational and translational motions required to transform one set of point clouds (source point cloud) into the coordinate system of another set of point clouds (target point cloud). This step is the core of point cloud registration; its input is two sets of feature points, and its output is a mathematical transformation that best aligns them.
[0130] There are several algorithms available for implementing this step. For example, one could find correspondences (matching pairs) between two sets of keypoints and use optimization algorithms (such as singular value decomposition, random sample consensus, etc.) to solve for the optimal transformation based on these correspondences. Alternatively, one could construct a specific graph structure model (such as a compatibility graph) and search for substructures that satisfy the constraints within the graph to estimate the transformation. Yet another approach is to directly compare the global statistical distributions of the two sets of keypoints (such as point distribution histograms, shape diameter functions, etc.) and iteratively adjust the transformation parameters to minimize the differences between the distributions. Alternatively, one could treat the point sets as probability density functions and calculate the transformation by maximizing the statistical correlation between the two point set distributions (such as using mutual information) or minimizing their bulldozer distance.
[0131] Step 105: Register the multiple sets of point cloud data based on the spatial transformation parameters to obtain the registered three-dimensional oral cavity scan image.
[0132] Step 104 yields the spatial transformation parameters between any two sets of point cloud data. This allows each set of point cloud data to be transformed from its original, independent local coordinate system to a unified global coordinate system using its corresponding spatial transformation parameters. This process seamlessly stitches together point cloud data from all different perspectives, fusing them into a complete and consistent 3D oral cavity model, thereby generating the final high-precision 3D oral cavity scan image.
[0133] This application provides a method, apparatus, device, and medium for registering point clouds in oral cavity scanning. By extracting two-dimensional texture features and three-dimensional geometric features from point cloud data, a fused representation of the two-dimensional texture features and three-dimensional geometric features of each point can be obtained, resulting in more unique candidate key points. Based on these unique candidate key points, point cloud data acquired from different shooting angles can be registered more accurately to obtain the final three-dimensional oral cavity scanning image. Compared with existing technologies that only register based on three-dimensional geometric features, this method effectively overcomes the matching ambiguity problem caused by the smoothness of tooth surfaces and the high repeatability of geometric features, significantly improving the discriminative power and robustness of feature matching, thus laying a reliable foundation for achieving high-precision oral cavity model reconstruction.
[0134] In a feasible implementation, for any two sets of point cloud data, based on their corresponding two sets of candidate keypoints, the spatial transformation parameters between the two sets of point cloud data are calculated, including:
[0135] Match two sets of candidate key points corresponding to any two sets of point cloud data; construct a graph model based on the matching relationship between the two sets of candidate key points; calculate the spatial transformation parameters between the two sets of point cloud data by searching dense subgraphs in the graph model.
[0136] In a feasible implementation, a graph model is constructed based on the matching relationship between the two sets of candidate key points, including:
[0137] Multiple matching pairs are obtained by matching the two sets of candidate key points; each matching pair includes two candidate key points from different point cloud data; the matching pairs are used as nodes to form a compatibility graph; the compatibility graph also includes edge weights calculated by geometric consistency and texture similarity between the matching pairs.
[0138] For any two sets of point cloud data to be registered, one set is designated as the source point cloud, and the other as the target point cloud. As mentioned earlier, both the source and target point clouds already contain a set of candidate keypoints obtained through feature fusion and filtering. The set of candidate keypoints corresponding to the source point cloud is then matched with the set of candidate keypoints corresponding to the target point cloud.
[0139] The purpose of matching is to find the most similar candidate keypoint in the target point cloud for each candidate keypoint in the source point cloud, thereby establishing a preliminary correspondence (hereinafter referred to as a matching pair). The quality of matching directly determines the accuracy of subsequent registration. The core of matching lies in finding a high-quality similarity metric to accurately determine whether two keypoints from different point clouds are true correspondences of the same physical point.
[0140] Based on the matching results above, we construct a compatibility graph to model and optimize these preliminary correspondences:
[0141] Nodes in the compatibility graph: Each matching pair obtained in the previous step is treated as a node in the compatibility graph. Specifically, given the set M of matching pairs obtained from the initial screening:
[0142]
[0143] in, It is the first There are 10 matching pairs, at this point... , These represent the source point cloud and the target point cloud, respectively. The matching pairs... As a node in the graph, construct an undirected compatible graph, where... This is the total number of matching pairs, this node. Represents the "first in the source cloud" Points With the first in the target point cloud Points The assumption is that it is a potential corresponding point.
[0144] Graph Edges and Edge Weights: In an undirected compatible graph, we evaluate whether any two nodes, i.e., two matching pairs, are compatible, for example, by comparing matching pairs. and matching pairs ,in , Matching pairs and matching pairs Compatibility between them is achieved through a comprehensive edge weighting To quantify it. Edge weight is a comprehensive confidence index, determined by both geometric consistency and texture similarity:
[0145] Geometric consistency: Evaluates whether the geometry formed by two matching pairs remains consistent in three-dimensional space. For example, the midpoint of a source point cloud. With point The distance should be approximately equal to the midpoint of the target point cloud. point The distance. Therefore, the distance difference is defined. The formula is as follows:
[0146]
[0147] Geometric Consistency Weight The formula for calculating using the Gaussian function is as follows:
[0148]
[0149] in, This is the distance scale parameter. The smaller the distance difference, the higher the weight and the better the compatibility.
[0150] Texture similarity: Evaluates whether the texture features corresponding to two matching pairs are similar. Hamming distance is calculated using their ORB descriptors. The calculation formula is as follows:
[0151]
[0152] Where H represents the Hamming distance calculation function.
[0153] Texture similarity weight for:
[0154]
[0155] in, This is a parameter for texture similarity. The smaller the Hamming distance, the more similar the textures are, and the higher the weight.
[0156] Ultimately, Bian Quan Defined as the product of geometric weights and texture weights:
[0157]
[0158] It is a connection node and nodes The weight of that edge represents the matching pair. and matching pairs Direct compatibility. If Greater than the preset threshold Then it is considered a match. and matching pairs If compatible, connect edges in the graph; otherwise, do not connect edges.
[0159] To enhance robustness, second-order compatibility weights can be further defined. The calculation formula is as follows:
[0160]
[0161] Second-order compatibility rights It not only considers the compatibility of the matching pairs themselves, but also reflects their common compatibility density in the neighborhood, which is used for pivot selection in subsequent three-cluster searches to prioritize searching edges supported by more common neighbors.
[0162] node Represents a matching pair ,node Represents a matching pair ,node Represents a matching pair . Is and node and nodes The boundary weights between them.
[0163] The compatibility graph constructed in this way cleverly transforms the global registration problem of point clouds into the problem of finding a highly consistent and reliable subset of matching pairs within the graph model.
[0164] In this way, the spatial transformation parameters between the source point cloud and the target point cloud can be calculated based on the relationship between the nodes in the compatibility graph.
[0165] For example, Figure 2 A flowchart of another oral cavity scan point cloud registration method provided in an embodiment of this application is shown, such as... Figure 2 As shown, the spatial transformation parameters can be calculated as follows:
[0166] The spatial transformation parameters between the two sets of point cloud data are calculated by searching for dense subgraphs in the graph model, including:
[0167] Step 201: Search for three clusters that meet the preset accuracy requirements in the compatibility graph; the three clusters are subgraphs composed of three nodes, and any two of the three nodes are connected by an edge.
[0168] In this example, the dense subgraph being searched is a tricluster. A tricluster is a complete subgraph consisting of three nodes. This means that any two nodes in the subgraph (i.e., three matching pairs) are connected by an edge. This pairwise connection structure implies that the three matching pairs are highly internally consistent in geometry and texture, and the probability that they are all correct is extremely high.
[0169] Step 202: Based on the matching pairs corresponding to the nodes contained in the three clusters, calculate the rigid body transformation between the two sets of point cloud data to be registered, and use the rigid body transformation as the spatial transformation parameter.
[0170] From the three nodes contained in a ternary point cloud, three pairs of precise corresponding points in 3D space can be extracted. Using these three pairs of corresponding points, an optimal rigid body transformation (including the rotation matrix R and translation vector t) can be uniquely calculated through a robust rigid body transformation solution algorithm (such as the Kabsch algorithm). This rigid body transformation is then used as the initial spatial transformation parameters for initially aligning the source point cloud to the target point cloud.
[0171] Registration of the multiple sets of point cloud data based on the spatial transformation parameters includes:
[0172] Starting with the rigid body transformation, the point-to-surface iterative nearest point algorithm is used for optimization to complete the final registration.
[0173] After obtaining the initial rigid body transformation described above, it is used as the starting point for optimization, and fine registration is performed. This example uses the iterative nearest-point algorithm from point to surface for optimization. This algorithm takes the initially transformed source point cloud as input and minimizes its overall error with the target point cloud by iteratively executing the following steps:
[0174] For each point in the source point cloud, find the nearest neighbor on the surface of the target point cloud; calculate the rigid body transformation that minimizes the distance between the source point cloud and the target point cloud surface; update the position of the source point cloud; repeat the above steps until convergence.
[0175] Through iterative optimization of the algorithm, a high-precision registration result is finally obtained, thereby completing the seamless stitching of all point cloud data and generating a complete and accurate three-dimensional oral cavity scan image.
[0176] In one feasible implementation, the search in the compatibility graph includes three clusters that meet a preset accuracy requirement, including:
[0177] The edges in the compatibility graph are sorted from high to low, and the first number of edges with the highest ranking are selected as pivot edges. For each pivot edge, a target node connected to both endpoints of the pivot edge is found in the compatibility graph. The two endpoints of the pivot edge and each corresponding target node constitute a candidate tricluster. The aggregation weight of each candidate tricluster is calculated. The aggregation weight is the sum of the weights of the three edges contained in the candidate tricluster. For all candidate triclusters formed by the same pivot edge, they are sorted according to their aggregation weights, and the second number of candidate triclusters with the highest ranking are selected to form the final tricluster set. The rigid body transformation is calculated based on the triclusters in the tricluster set.
[0178] This embodiment introduces the concept of "pivot edges" to achieve directional search, avoiding exhaustive enumeration of the entire graph and significantly improving computational efficiency. Details are as follows:
[0179] Determining preferred pivot edges: Sort all edges in the compatibility graph in descending order of their weight values (i.e., the compatibility confidence between matching pairs). Then, starting with the top-ranked edge, sequentially select a predetermined first number of edges with the highest weights, and determine these high-weight edges as pivot edges. Each pivot edge represents a pair of highly compatible and reliable matching pairs.
[0180] Expanding the candidate three-clique around the pivot edge: For each pivot edge selected in the previous step (assuming it connects node 1 and node 2), perform a local search in the compatibility graph to find all target nodes (denoted as node 3) that are connected to both node 1 and node 2. This means that node 3 is compatible with both endpoints of the pivot edge. For each such target node (node 3) found, it, together with the two endpoints of the pivot edge (node 1 and node 2), forms a candidate three-clique (node 1, node 2, node 3).
[0181] Scoring and screening candidate triads: A quality assessment is performed on each candidate triad generated in the preceding steps.
[0182] Calculate the aggregation weight: Add the weights of the three edges contained in the candidate three-cluster (i.e., edge one between node one and node two, edge two between node one and node three, and edge three between node two and node three). The sum is the aggregation weight of the three-cluster. This value comprehensively reflects the overall level of consistency within the three-cluster. The higher the aggregation weight, the stronger the reliability of the three-cluster as a whole.
[0183] Optimal selection: For all candidate triclusters generated around the same pivot edge, sort them in descending order according to their aggregation weight. Then, retain only the top-ranked, predetermined second-largest number of candidate triclusters. This step ensures that for each high-quality pivot edge, we only retain the best few triclusters generated by it, avoiding an explosion in the number of triclusters.
[0184] The candidate triclets remaining after the above screening of all pivot edges are grouped together to form the final triclet set. Each triclet in this set has high internal consistency and reliability, and will serve as the basis for subsequent calculations of high-precision rigid body transformations.
[0185] In one feasible implementation, the multiple sets of point cloud data are registered based on the spatial transformation parameters to obtain a registered three-dimensional oral cavity scan image, including:
[0186] The multiple sets of point cloud data are initially registered based on the spatial transformation parameters; the results of the initial registration are verified based on the preset tooth morphology; when the verification result indicates that the results of the initial registration match the tooth morphology, a three-dimensional oral scan image after registration is obtained based on the results of the initial registration.
[0187] If the verification result indicates that the initial registration result is different from the tooth morphology, then the following steps are repeated:
[0188] For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points.
[0189] First, using the spatial transformation parameters calculated in the aforementioned steps, coordinate transformation and stitching are performed on all multiple sets of point cloud data to complete the initial registration and generate a preliminary complete three-dimensional oral cavity model.
[0190] Subsequently, based on the generally accepted rules of tooth alignment and morphology in dentistry, the initial registration results were automatically verified. The verification mainly relied on two key anatomical priors: first, the sequentiality of the dental arch curve, that is, verifying whether the center points of all teeth are arranged sequentially along a smooth, continuous dental arch curve, without misalignment or crossing; second, the continuity of the incisal edge, that is, verifying whether the incisal edge of the anterior teeth forms a smooth arc, without abrupt breaks or step-like drops.
[0191] For example, the following two core constraints are described:
[0192] 1. Dental arch curve sequence constraint: Set the anatomical center points of each tooth in the model after the initial registration. Projected onto the ideal dental arch curve fitted based on all center points This allows us to obtain a position parameter along the curve for each center point. This parameter sequence must be strictly monotonically increasing, i.e., satisfying:
[0193]
[0194] This constraint ensures the correct left-right arrangement of teeth on the dental arch. If parameters are reversed or crossed after projection, it indicates that the current spatial transformation disrupts the natural order of the dental arch, and the constraint is deemed not satisfied.
[0195] 2. Incisal edge continuity constraint: Extract the incisal edge point set of the anterior teeth on the model after the initial registration. Calculate the Euclidean distance between adjacent tangent points (the g-th tangent point and the (g+1)-th tangent point): .
[0196] And calculate their included normal angles. :
[0197]
[0198] in, : Represents the three-dimensional normal vector at the g-th point on the tangent edge; This represents the three-dimensional normal vector of the next point (the (g+1)th point) immediately following the g-th point on the tangent line.
[0199] This constraint requires that the distance between adjacent tangent points be less than a distance threshold, and the included normal angle... The distance or angle must be less than the angle threshold. This ensures that the incisal edge of the anterior teeth forms a spatially continuous curve with a smooth directional change. If the distance or angle exceeds the threshold, it indicates that the incisal edge line is broken or twisted, and is judged as not meeting the constraint.
[0200] The system compares the initial registration result with the aforementioned morphological standards. If the comparison result meets all the verification criteria, the verification is deemed successful, indicating that the registration result is anatomically reasonable, and the final high-precision three-dimensional oral cavity scan image is directly output based on this result.
[0201] If the verification result indicates that the initial registration does not match the tooth morphology, the registration is deemed a failure. In this case, the system will automatically trigger a rollback and recalculation mechanism to re-execute the core step of calculating the spatial transformation parameters.
[0202] For example, if the spatial transformation parameters of a flower are determined based on three clusters, the system will discard the currently unreliable spatial transformation parameters, and re-match based on candidate key points, construct a compatibility graph, search for three clusters, and calculate new spatial transformation parameters. Alternatively, the system can directly delete the three clusters corresponding to the unreliable spatial transformation parameters in the compatibility graph, i.e., delete the three nodes of the three clusters and the three edges corresponding to these three nodes. Then, the three-cluster search and rigid body transformation estimation are performed again.
[0203] This process forms a closed-loop optimization workflow, iteratively calculating and verifying until a registration result conforming to anatomical principles is obtained. By introducing this mechanism, it is effectively ensured that the final model not only meets mathematical alignment accuracy but also possesses clinically usable physiological rationality, significantly improving the robustness of the method.
[0204] In a feasible implementation, a set of candidate key points is selected from each set of point cloud data, including:
[0205] The saliency score of each point is calculated based on the fusion representation; the saliency score is used to represent the comprehensive uniqueness of each point in two-dimensional texture features and three-dimensional geometric features; based on the saliency score, initial candidate key points are selected from the point cloud data; among the initial candidate key points, all points contained in the nearest neighbor pairs are retained to form a final set of candidate key points.
[0206] In a feasible implementation, a set of candidate key points is selected from each set of point cloud data, including:
[0207] The saliency score of each point is calculated based on the fusion representation; the saliency score is used to represent the comprehensive uniqueness of each point in two-dimensional texture features and three-dimensional geometric features; based on the saliency score, initial candidate key points are selected from the point cloud data; among the initial candidate key points, all points contained in the nearest neighbor pairs are retained to form a final set of candidate key points.
[0208] First, based on the fused representation of the two-dimensional texture features and three-dimensional geometric features of each point, a comprehensive saliency score is calculated. The calculation formula is as follows:
[0209]
[0210] in, and These are predefined weighting coefficients used to balance the contributions of texture and geometric features. Variance This has been obtained through the aforementioned steps. The two-dimensional texture saliency of a representative point is the corner response intensity of the ORB (Oriented FAST and Rotated BRIEF). It is calculated using the Harris response function after detection by the FAST operator, as shown in the following formula:
[0211]
[0212] in, It is a point The gray-level gradient covariance matrix in the image neighborhood, det and trace represent the determinant and trace of the matrix, respectively; b is a constant pre-set based on experience. It quantitatively describes the combined prominence of a point on two-dimensional texture (such as image corners and patches) and three-dimensional geometry (such as surface curvature and shape uniqueness). The higher the score, the more unique the point is in its neighborhood and the easier it is to be reliably and repeatedly detected in point clouds from different viewpoints.
[0213] Subsequently, based on the calculated saliency scores, all points are sorted, and a certain number of points with the highest scores are selected to form an initial candidate keypoint set C. This step completes the first round of screening, initially focusing on points with significant features.
[0214] Finally, a second round of screening is performed on the initial candidate keypoint set C, which involves applying a nearest neighbor selection strategy to eliminate isolated points. Specifically, in the initial candidate keypoint set C, for any point, if its spatial nearest neighbor also considers that point as its farthest neighbor, then the two are considered to form a stable "nearest neighbor" point pair. In this step, only the points contained in all such point pairs are retained, and these are determined as the final set of candidate keypoints.
[0215] The strategy is defined as follows: for each point in the set... Find its nearest neighbor in Euclidean distance. ,Right now:
[0216]
[0217] in, This means that in the initial candidate keypoint set C, besides Apart from oneself, distance The nearest point. It is a function, and its input is... The output is .
[0218] argmin is an abbreviation for argument of the minimum. It is a mathematical notation representing the value of the independent variable that makes a function reach its minimum value. It focuses not on the exact value of the minimum, but on what caused the minimum.
[0219] If and only if and They are each other's nearest neighbors, meaning they satisfy:
[0220]
[0221] as well as
[0222]
[0223] but Since they are nearest neighbors, they are both preserved.
[0224] Final set of candidate key points for:
[0225]
[0226] This strategy effectively filters out points that, while possessing significant characteristics, are located in isolated areas or may be generated by noise or mismatches, ensuring the stability and reliability of the final keypoint set.
[0227] Through the above two-level screening mechanism, a set of candidate key points with a moderate number, unique features, and spatially robust characteristics can be obtained, providing a key data foundation for subsequent steps to achieve high-precision point cloud registration.
[0228] Based on the same technical concept, embodiments of this application also provide an oral cavity scanning point cloud registration device, such as... Figure 3 As shown, the device includes:
[0229] The acquisition module 301 is used to acquire multiple sets of point cloud data to be registered; the multiple sets of point cloud data are collected based on different shooting angles.
[0230] Extraction module 302 is used to extract two-dimensional texture features and three-dimensional geometric features from each group of point cloud data.
[0231] The filtering module 303 is used to filter a set of candidate key points from each set of point cloud data based on the fusion representation of the two-dimensional texture features and the three-dimensional geometric features.
[0232] The calculation module 304 is used to calculate the spatial transformation parameters between two sets of point cloud data based on their corresponding two sets of candidate key points, for any two sets of point cloud data.
[0233] The registration module 305 is used to register the multiple sets of point cloud data based on the spatial transformation parameters to obtain a registered three-dimensional oral cavity scan image.
[0234] In one feasible implementation, the calculation module is used to calculate the spatial transformation parameters between any two sets of point cloud data, based on their corresponding two sets of candidate keypoints, for the following purposes:
[0235] Match the two sets of candidate key points corresponding to any two sets of point cloud data.
[0236] A graph model is constructed based on the matching relationship between the two sets of candidate key points.
[0237] The spatial transformation parameters between the two sets of point cloud data are calculated by searching for dense subgraphs in the graph model.
[0238] In one feasible implementation, the computing module is used to construct a graph model based on the matching relationship between the two sets of candidate key points, for:
[0239] Multiple matching pairs are obtained by matching the two sets of candidate key points; each matching pair includes two candidate key points from different point cloud data.
[0240] The matching pairs are used as nodes to form a compatibility graph; the compatibility graph also includes edge weights calculated from the geometric consistency and texture similarity between the matching pairs.
[0241] In one feasible implementation, the computing module is configured to calculate spatial transformation parameters between the two sets of point cloud data by searching for dense subgraphs in the graph model, for the following purposes:
[0242] Search the compatibility graph for three clusters that meet the preset accuracy requirements; the three clusters are subgraphs composed of three nodes, and any two of the three nodes are connected by an edge.
[0243] Based on the matching pairs corresponding to the nodes contained in the three clusters, the rigid body transformation between the two sets of point cloud data to be registered is calculated, and the rigid body transformation is used as the spatial transformation parameter.
[0244] The registration module is used to register the multiple sets of point cloud data based on the spatial transformation parameters, and is used for:
[0245] Starting with the rigid body transformation, the point-to-surface iterative nearest point algorithm is used for optimization to complete the final registration.
[0246] In one feasible implementation, the calculation module is used to search for three clusters that meet a preset accuracy requirement in the compatibility graph, for the following purposes:
[0247] The edges in the compatibility graph are sorted from high to low, and the first number of edges with the highest ranking are selected as pivot edges.
[0248] For each pivot edge, find the target node in the compatibility graph that is connected to both endpoints of the pivot edge.
[0249] The two endpoints of the pivot edge, and each of their corresponding target nodes, constitute a candidate tri-cluster.
[0250] Calculate the aggregate weight of each candidate tricluster; the aggregate weight is the sum of the weights of the three edges contained in the candidate tricluster.
[0251] For all candidate three-clusters formed by the same pivot edge, they are sorted according to their aggregation weights, and the second-highest ranked candidate three-clusters are selected in sequence to form the final three-cluster set, and the rigid body transformation is calculated based on the three-clusters in the three-cluster set.
[0252] In one feasible implementation, the registration module is used to register the multiple sets of point cloud data based on the spatial transformation parameters to obtain a registered three-dimensional oral cavity scan image, for the purpose of:
[0253] The multiple sets of point cloud data are initially registered based on the spatial transformation parameters.
[0254] The initial registration result is verified based on the preset tooth morphology.
[0255] When the verification result indicates that the initial registration result matches the tooth morphology, a three-dimensional oral scan image after registration is obtained based on the initial registration result.
[0256] If the verification result indicates that the initial registration result is different from the tooth morphology, then the following steps are repeated:
[0257] For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points.
[0258] In one feasible implementation, the filtering module is used to filter a set of candidate key points from each set of point cloud data, for the following purposes:
[0259] The saliency score of each point is calculated based on the fusion representation; the saliency score is used to represent the comprehensive uniqueness of each point in terms of two-dimensional texture features and three-dimensional geometric features.
[0260] Based on the saliency score, initial candidate key points are selected from the point cloud data.
[0261] Among the initial candidate key points, all points contained in the nearest neighbor pairs are retained to form the final set of candidate key points.
[0262] Figure 4 A schematic diagram of an electronic device provided in this application embodiment includes: a processor 401, a storage medium 402, and a bus 403. The storage medium 402 stores machine-readable instructions executable by the processor 401. When the electronic device runs an oral cavity scanning point cloud registration method as described in the embodiment, the processor 401 communicates with the storage medium 402 via the bus 403, and the processor 401 executes the machine-readable instructions to perform the steps as described in the embodiment.
[0263] In this embodiment, the storage medium 402 may also execute other machine-readable instructions to perform other methods as described in the embodiment. For details on the specific execution steps and principles, please refer to the description of the embodiment, which will not be repeated here.
[0264] This application also provides a computer-readable storage medium storing a computer program that is executed by a processor to perform the steps as described in the embodiments.
[0265] In this embodiment, the computer program, when run by the processor, can also execute other machine-readable instructions to perform other methods as described in the embodiments. For details on the specific execution steps and principles, please refer to the description of the embodiments, which will not be repeated here.
[0266] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the coupling or direct coupling or communication connection shown or discussed may be through some communication interface; the indirect coupling or communication connection between apparatuses or modules may be electrical, mechanical, or other forms.
[0267] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0268] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0269] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a processor-executable, non-volatile, computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
[0270] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method for registering point clouds in oral cavity scanning, characterized in that, The method includes: Acquire multiple sets of point cloud data to be registered; the multiple sets of point cloud data are collected based on different shooting angles; Extract the two-dimensional texture features and three-dimensional geometric features from each group of point cloud data; Based on the fusion representation of the two-dimensional texture features and the three-dimensional geometric features, a set of candidate key points is selected from each set of point cloud data; For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points; Based on the spatial transformation parameters, the multiple sets of point cloud data are registered to obtain a registered three-dimensional oral cavity scan image.
2. The method according to claim 1, characterized in that, For any two sets of point cloud data, based on their corresponding two sets of candidate keypoints, calculate the spatial transformation parameters between the two sets of point cloud data, including: Match the two sets of candidate key points corresponding to any two sets of point cloud data. A graph model is constructed based on the matching relationship between the two sets of candidate key points; The spatial transformation parameters between the two sets of point cloud data are calculated by searching for dense subgraphs in the graph model.
3. The method according to claim 2, characterized in that, A graph model is constructed based on the matching relationship between the two sets of candidate key points, including: Multiple matching pairs are obtained by matching the two sets of candidate key points; each matching pair includes two candidate key points from different point cloud data. The matching pairs are used as nodes to form a compatibility graph; the compatibility graph also includes edge weights calculated from the geometric consistency and texture similarity between the matching pairs.
4. The method according to claim 3, characterized in that, The spatial transformation parameters between the two sets of point cloud data are calculated by searching for dense subgraphs in the graph model, including: Search the compatibility graph for three clusters that meet the preset accuracy requirements; the three clusters are subgraphs composed of three nodes, and any two of the three nodes are connected by an edge; Based on the matching pairs corresponding to the nodes contained in the three clusters, the rigid body transformation between the two sets of point cloud data to be registered is calculated, and the rigid body transformation is used as the spatial transformation parameter. Registration of the multiple sets of point cloud data based on the spatial transformation parameters includes: Starting with the rigid body transformation, the point-to-surface iterative nearest point algorithm is used for optimization to complete the final registration.
5. The method according to claim 4, characterized in that, The search in the compatibility graph identifies three clusters that meet the preset accuracy requirements, including: Sort the edges in the compatibility graph from high to low, and select the first number of edges with the highest ranking as the pivot edges. For each pivot edge, find the target node in the compatibility graph that is connected to both endpoints of the pivot edge; The two endpoints of the pivot edge, and each of their corresponding target nodes, constitute a candidate tri-cluster; Calculate the aggregate weight of each candidate tricluster; the aggregate weight is the sum of the weights of the three edges contained in the candidate tricluster. For all candidate three-clusters formed by the same pivot edge, they are sorted according to their aggregation weights, and the second-highest ranked candidate three-clusters are selected in sequence to form the final three-cluster set, and the rigid body transformation is calculated based on the three-clusters in the three-cluster set.
6. The method according to claim 1, characterized in that, Based on the spatial transformation parameters, the multiple sets of point cloud data are registered to obtain a registered three-dimensional oral cavity scan image, including: The multiple sets of point cloud data are initially registered based on the spatial transformation parameters. The initial registration result is verified based on the preset tooth morphology. When the verification result indicates that the initial registration result matches the tooth morphology, a three-dimensional oral scan image after registration is obtained based on the initial registration result. If the verification result indicates that the initial registration result is different from the tooth morphology, then the following steps are repeated: For any two sets of point cloud data, calculate the spatial transformation parameters between the two sets of point cloud data based on their corresponding two sets of candidate key points.
7. The method according to claim 1, characterized in that, From each set of point cloud data, a set of candidate key points is selected, including: The saliency score of each point is calculated based on the fusion representation; the saliency score is used to represent the comprehensive uniqueness of each point in terms of two-dimensional texture features and three-dimensional geometric features; Based on the saliency score, initial candidate key points are selected from the point cloud data; Among the initial candidate key points, all points contained in the nearest neighbor pairs are retained to form the final set of candidate key points.
8. A point cloud registration device for oral cavity scanning, characterized in that, The device includes: The acquisition module is used to acquire multiple sets of point cloud data to be registered; the multiple sets of point cloud data are collected based on different shooting angles; The extraction module is used to extract two-dimensional texture features and three-dimensional geometric features from each group of point cloud data; The filtering module is used to filter a set of candidate key points from each set of point cloud data based on the fusion representation of the two-dimensional texture features and the three-dimensional geometric features. The calculation module is used to calculate the spatial transformation parameters between any two sets of point cloud data based on their corresponding two sets of candidate key points. The registration module is used to register the multiple sets of point cloud data based on the spatial transformation parameters to obtain a registered three-dimensional oral cavity scan image.
9. An electronic device, characterized in that, include: The device includes a processor, a storage medium, and a bus, wherein the storage medium stores machine-readable instructions executable by the processor, and when the electronic device is in operation, the processor communicates with the storage medium via the bus, and the processor executes the machine-readable instructions to perform the steps of the oral cavity scan point cloud registration method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the oral cavity scan point cloud registration method as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Method and device for scanning oral cavity by using smart phone and storage medium
CN114283236A
Oral cavity three-dimensional reconstruction method and system based on smart phone and storage medium
CN114299244A