Rock body point cloud registration method, device and equipment and storage medium thereof
By calculating the concave and convex descriptor of the rock body point cloud data and using the edit distance and singular value decomposition algorithm to calculate the transformation matrix, the problem of difficult to register multiple batches of three-dimensional point cloud data in the existing technology with low overlap rate and large angle deflection is solved, and high-precision point cloud registration is achieved.
Patent Information
- Application Number
- CN202510638277.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-19
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2045-05-19
AI Technical Summary
The prior art is difficult to register multiple batches of three-dimensional point cloud data of rock bodies with low overlap rate and large angle deflection with high accuracy, resulting in low registration accuracy.
By obtaining the source point cloud data and the target point cloud data, computing its concave and convex descriptors, and using the edit distance and singular value decomposition algorithm to calculate the transformation matrix, the pose transformation and registration of point cloud data is realized.
The registration accuracy between point cloud data with low overlap rate and large angle deflection is improved, ensuring the accuracy of target registration results.
Smart Images

Figure CN120163858A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of rock body point cloud registration, and particularly relates to a rock body point cloud registration method, device, equipment and storage medium thereof. Background Art
[0002] High-precision three-dimensional point cloud data plays an important role in fields such as geological disaster monitoring, rock mass structure analysis, mineral exploration, engineering surveying and mapping, and virtual terrain reconstruction.
[0003] The structure of the rock body is complex, and it is difficult to obtain complete rock body point cloud data only through single-view scanning; the existing technology is to scan the rock body from multiple perspectives and in multiple batches to obtain multiple batches of three-dimensional point cloud data of the rock body, and then register the multiple batches of three-dimensional point cloud data of the rock body to obtain a three-dimensional model of the rock body; however, the overlap rate between the three-dimensional point cloud data of the rock body obtained through multiple perspectives and multiple batches is low, and the angle deflection is large, while the existing point cloud registration technology depends on the absolute coordinates of the point cloud data for registration between point cloud data, and can only achieve registration of point cloud data with a high overlap rate and a small angle deflection. Using the existing point cloud registration technology to register multiple batches of three-dimensional point cloud data of the rock body results in low registration accuracy of the multiple batches of three-dimensional point cloud data, and the accuracy of the three-dimensional model of the rock body obtained based on the point cloud registration result is low. Summary of the Invention
[0004] The present invention aims to at least solve one of the technical problems existing in the prior art. For this purpose, the present invention provides a rock body point cloud registration method, device, equipment and storage medium thereof, which can improve the registration accuracy between point cloud data with a low overlap rate and a large angle deflection.
[0005] In a first aspect, an embodiment of the present invention provides a rock body point cloud registration method, including: Obtain source point cloud data and target point cloud data, where the source point cloud data and the target point cloud data each include a plurality of point cloud points; Perform a target operation on the source point cloud data to obtain a plurality of source concave-convex descriptors, and perform the target operation on the target point cloud data to obtain a plurality of target concave-convex descriptors, where the target operation includes: determining a corresponding geometric center, determining a normal vector based on a KD tree, after unifying the direction of the normal vector, adjusting the orientation of the normal vector based on the geometric center, screening out a plurality of concave-convex feature points from the corresponding point cloud points based on the normal vector, and filtering out noise points among the concave-convex feature points through clustering; Determine multiple pairs of available matching point pairs from the source concave-convex descriptors and the target concave-convex descriptors whose edit distances satisfy a first preset threshold; Select three target matching point pairs from all the available matching point pairs that can construct congruent triangles in their respective point clouds, and calculate a transformation matrix based on the target matching point pairs and the singular value decomposition algorithm, where the transformation matrix is used to indicate the mapping from the source point cloud data to the target point cloud data; Determine an optimal transformation matrix based on all the transformation matrices, control the source point cloud data to perform a pose transformation based on the optimal transformation matrix to obtain an initial registration result, and adjust the initial registration result based on the transformation matrix to obtain a target registration result.
[0006] According to some embodiments of the present invention, screening out a plurality of concave and convex feature points from the corresponding point cloud points based on the normal vector includes: Obtain the centroid of the point cloud point and the local neighborhood of the point cloud point, and determine a first eigenvector based on the point cloud point and the centroid, where the local neighborhood includes a plurality of neighboring points of the point cloud point; Obtain the normal vector of the point cloud point, and decompose the first eigenvector along the normal vector into a first vertical component and a first horizontal component; Based on any one of the neighboring points, determine a first vector, decompose the first vector along the vertical direction and the horizontal direction respectively to obtain a second vertical component and a second horizontal component respectively, add the first vertical component and the second vertical component to obtain a third vertical component, add the first horizontal component and the second horizontal component to obtain a third horizontal component, and obtain a second eigenvector based on the third vertical component and the third horizontal component; Obtain a plurality of the second eigenvectors, perform a dot product of all the second eigenvectors with the normal vector respectively to obtain a plurality of first dot product values, and when the absolute value of the first dot product value is greater than a second preset threshold and the length of the second eigenvector is greater than a third preset threshold, the point cloud point corresponding to the first dot product value is the concave and convex feature point.
[0007] According to some embodiments of the present invention, before decomposing the first vector along the vertical direction and the horizontal direction respectively, it further includes: Perform a dot product of all the first vectors with the normal vector respectively to obtain a plurality of second dot product values, and divide all the first vectors into a first vector group and a second vector group based on the positive and negative of all the second dot product values; Obtain a first ratio and a second ratio, where the first ratio is the ratio of the number of the first vectors in the first vector group to the total number of the first vectors, and the second ratio is the ratio of the number of the first vectors in the second vector group to the total number of the first vectors; Substitute the first ratio and the second ratio into the first formula respectively to obtain the first weight and the second weight, and assign the first weight and the second weight to each of the first vectors in the first vector group and the second vector group respectively, where the first formula is , e is the natural exponential, and β is the noise suppression coefficient.
[0008] According to some embodiments of the present invention, filtering noise points in the concave and convex feature points by clustering includes: Obtain all the concave and convex feature points, and obtain a point cloud cluster based on all the concave and convex feature points; Set the domain radius, minimum sample number, and maximum sample number of the DBSCAN algorithm, and perform point cloud clustering on the point cloud cluster based on the domain radius by the DBSCAN algorithm to obtain a plurality of initial clusters; Obtain the number of concave and convex feature points in the initial cluster. When the number of concave and convex feature points in the initial cluster is less than the minimum sample number, delete the initial cluster, where the concave and convex feature points in the initial cluster are the noise points; Alternatively, when the number of concave and convex feature points in the initial cluster is greater than the minimum sample number and less than the maximum sample number, retain the initial cluster; Alternatively, when the number of concave and convex feature points in the initial cluster is greater than the maximum sample number, obtain the curvature of the initial cluster based on the KD tree, and delete the initial cluster whose curvature does not meet the first preset condition, where the concave and convex feature points in the initial cluster whose curvature does not meet the first preset condition are the noise points.
[0009] According to some embodiments of the present invention, after filtering noise points in the concave and convex feature points by clustering, it further includes; Obtain k neighboring points of the concave and convex feature points through the KD tree, obtain the concavity and convexity of the concave and convex feature points, and represent the concavity and convexity of the concave and convex feature points through the first concave and convex encoding; Calculate the Euclidean distance between each neighboring point and the concave and convex feature point respectively, and obtain a plurality of second concave and convex encodings based on all the concave and convex feature points and the corresponding Euclidean distances respectively. Wherein, when the concave and convex feature point is a concave feature point, the second concave and convex encoding is equal to the opposite of the numerical form of the Euclidean distance between the neighboring point and the concave and convex feature point, and when the concave and convex feature point is a convex feature point, the second concave and convex encoding is equal to the numerical form of the Euclidean distance between the neighboring point and the concave and convex feature point; Obtain a concave and convex descriptor based on the first concave and convex encoding and k second concave and convex encodings, where the expression of the concave and convex descriptor is: , is the concavity / convexity descriptor of the i-th concavity / convexity feature point is the first concavity / convexity code corresponding to the concavity / convexity feature point is the second concavity / convexity code corresponding to the first neighboring point of the i-th concavity / convexity feature point is the second concavity / convexity code corresponding to the second neighboring point of the i-th concavity / convexity feature point is the second concavity / convexity code corresponding to the k-th neighboring point of the i-th concavity / convexity feature point, where i is a positive integer and k is a positive integer
[0010] According to some embodiments of the present invention, determining multiple pairs of available matching point pairs with the edit distance satisfying a first preset threshold from the source concavity / convexity descriptor and the target concavity / convexity descriptor includes: Changing the data types of the source concavity / convexity descriptor and the target concavity / convexity descriptor to strings, respectively obtaining a source string and a target string, where the expression of the source string is: , is the source string is the character form of the first concavity / convexity code of the source concavity / convexity descriptor is the character form of the first second concavity / convexity code of the source concavity / convexity descriptor is the character form of the second second concavity / convexity code of the source concavity / convexity descriptor is the character form of the k-th second concavity / convexity code of the source concavity / convexity descriptor, and the expression of the target string is: , is the target string is the character form of the first concavity / convexity code of the target concavity / convexity descriptor is the character form of the first second concavity / convexity code of the target concavity / convexity descriptor is the character form of the second second concavity / convexity code of the target concavity / convexity descriptor is the character form of the k-th second concavity / convexity code of the target concavity / convexity descriptor. The second concavity / convexity code of the source string is determined based on the source concavity / convexity feature point and the source neighboring point. The source concavity / convexity feature point is the concavity / convexity feature point obtained by performing the target operation on the source point cloud data, and the source neighboring point is the neighboring point of the source concavity / convexity feature point. The second concavity / convexity code of the target string is determined based on the target concavity / convexity feature point and the target neighboring point. The target concavity / convexity feature point is the concavity / convexity feature point obtained by performing the target operation on the target point cloud data, and the target neighboring point is the neighboring point of the target concavity / convexity feature point; When When the second preset condition is satisfied, the corresponding source adjacent point and the target adjacent point are corresponding points. When When the second preset condition is not satisfied, the corresponding source adjacent point and the target adjacent point are invalid points, where the second preset condition is when and , is the fourth preset threshold; When the edit distance satisfies the first preset threshold, the source string and the target string are respectively adjusted based on the corresponding points or the invalid points through the edit distance algorithm, and the adjacent point sets of the source concave-convex feature points and the adjacent point sets of the target concave-convex feature points corresponding to the adjusted source string and the adjusted target string are obtained. Among them, the adjacent point sets of the source concave-convex feature points and the adjacent point sets of the target concave-convex feature points jointly form a set of matching point pairs, and the set of matching point pairs includes multiple pairs of available matching point pairs.
[0011] According to some embodiments of the present invention, three target matching point pairs that can construct congruent triangles in their respective point clouds are selected from all the available matching point pairs, and a transformation matrix is calculated based on the target matching point pairs and the singular value decomposition algorithm, including: Arbitrarily obtain two of the available matching point pairs in the set of matching point pairs. If the two available matching point pairs satisfy the third preset condition, the available matching point pair is the target matching point pair, and a candidate line segment pair is constructed based on the two target matching point pairs, where the third preset condition is , is the rth source concave-convex feature point, is the sth source concave-convex feature point, is the rth target concave-convex feature point, is the sth target concave-convex feature point, r is a positive integer, and s is a positive integer; Arbitrarily obtain one of the available matching point pairs in the set of matching point pairs. If the available matching point pair and the two target matching point pairs satisfy the fourth preset condition, the available matching point pair is the target matching point pair, and a congruent triangle is constructed based on the available matching point pair and the candidate line segment pair, where the fourth preset condition is , is the tth source concave-convex feature point, is the tth target concave-convex feature point, and t is a positive integer; Obtain all the congruent triangles, and generate multiple transformation matrices based on all the congruent triangles through the singular value decomposition algorithm.
[0012] Second aspect, an embodiment of the present invention provides a rock body point cloud registration device, including at least one control processor and a memory communicatively connected to the at least one control processor; the memory stores instructions executable by the at least one control processor, and the instructions are executed by the at least one control processor to enable the at least one control processor to execute the rock body point cloud registration method as described in the first aspect above.
[0013] Third aspect, an embodiment of the present invention provides an electronic device, including the rock body point cloud registration device as described in the second aspect above.
[0014] Fourth aspect, an embodiment of the present invention provides a computer-readable storage medium storing computer-executable instructions for executing the rock body point cloud registration method as described in the first aspect above.
[0015] Embodiments of the present invention provide a method, apparatus, device and storage medium for rock body point cloud registration. The method for rock body point cloud registration includes: obtaining source point cloud data and target point cloud data, where the source point cloud data and the target point cloud data each include a plurality of point cloud points; performing a target operation on the source point cloud data to obtain a plurality of source concave-convex descriptors, and performing the target operation on the target point cloud data to obtain a plurality of target concave-convex descriptors, where the target operation includes: determining a corresponding geometric center, determining a normal vector based on a KD tree, after unifying the direction of the normal vector, adjusting the orientation of the normal vector based on the geometric center, screening out a plurality of concave-convex feature points from the corresponding point cloud points based on the normal vector, and filtering out noise points in the concave-convex feature points through clustering; determining a plurality of available matching point pairs with an edit distance satisfying a first preset threshold from the source concave-convex descriptors and the target concave-convex descriptors; selecting three target matching point pairs that can construct congruent triangles in their respective point clouds from all the available matching point pairs, calculating a transformation matrix based on the target matching point pairs and the singular value decomposition algorithm, where the transformation matrix is used to indicate the mapping from the source point cloud data to the target point cloud data; determining an optimal transformation matrix based on all the transformation matrices, controlling the source point cloud data to perform a pose transformation based on the optimal transformation matrix to obtain an initial registration result, and adjusting the initial registration result based on the transformation matrix to obtain a target registration result. According to the technical solution of the embodiments of the present invention, a plurality of source concave-convex descriptors characterizing the concave-convex features of the source point cloud data are obtained based on the source point cloud data, a plurality of target concave-convex descriptors characterizing the concave-convex features of the target point cloud data are obtained based on the target point cloud data, a plurality of available matching point pairs with an edit distance satisfying a first preset threshold are determined based on all the source concave-convex descriptors and all the target concave-convex descriptors, a large-angle deflection of the source point cloud data is realized by controlling the source point cloud data to perform a pose transformation through a transformation matrix generated based on the target matching point pairs, and the registration between the source point cloud data and the target point cloud data is performed through the geometric similarity of the concave-convex features between the source point cloud data and the target point cloud data, ensuring the accuracy of the target registration result, and thus improving the registration accuracy between the target point cloud data and the source point cloud data with a low overlap rate and a large angle deflection. Description of the Drawings
[0016] Figure 1 is a flowchart of a method for rock body point cloud registration provided by an embodiment of the present invention; Figure 2 is a schematic diagram of unregistered source point cloud data and target point cloud data provided by another embodiment of the present invention; Figure 3 is a schematic diagram of concave-convex feature points provided by another embodiment of the present invention; Figure 4 is a schematic diagram of a clustering result provided by another embodiment of the present invention; Figure 5 It is a schematic diagram of the target registration result provided by another embodiment of the present invention; Figure 6 It is a structural diagram of the rock body point cloud registration device provided by another embodiment of the present invention. Detailed implementation manners
[0017] The embodiments of the present invention will be described in detail below. The examples of the embodiments are shown in the accompanying drawings, where the same or similar reference numerals denote the same or similar elements or elements with the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention and should not be construed as a limitation of the present invention.
[0018] In the description of the present invention, it should be understood that for the orientation description, such as the orientation or positional relationship indicated by up, down, front, back, left, right, etc. is based on the orientation or positional relationship shown in the accompanying drawings, and it is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of the present invention.
[0019] In the description of the present invention, the meaning of several is one or more, the meaning of multiple is two or more, greater than, less than, exceeding, etc. are understood as not including the number itself, and above, below, within, etc. are understood as including the number itself. If the first and second are described only for the purpose of distinguishing technical features, they should not be understood as indicating or implying relative importance or implicitly indicating the quantity of the indicated technical features or the sequence relationship of the indicated technical features.
[0020] In the description of the present invention, unless otherwise clearly defined, words such as setting, installing, connecting, etc. should be understood in a broad sense, and those skilled in the art can reasonably determine the specific meanings of the above words in the present invention in combination with the specific content of the technical solution.
[0021] Embodiments of the present invention provide a method, apparatus, device, and storage medium for registering rock body point clouds. The method for registering rock body point clouds includes: obtaining source point cloud data and target point cloud data, where the source point cloud data and the target point cloud data each include a plurality of point cloud points; performing a target operation on the source point cloud data to obtain a plurality of source concavity-convex descriptors, and performing the target operation on the target point cloud data to obtain a plurality of target concavity-convex descriptors, where the target operation includes: determining a corresponding geometric center, determining a normal vector based on a KD tree, after unifying the direction of the normal vector, adjusting the orientation of the normal vector based on the geometric center, screening out a plurality of concavity-convex feature points from the corresponding point cloud points based on the normal vector, and filtering out noise points in the concavity-convex feature points through clustering; determining multiple pairs of available matching point pairs from the source concavity-convex descriptors and the target concavity-convex descriptors whose edit distances satisfy a first preset threshold; selecting three target matching point pairs from all the available matching point pairs that can construct congruent triangles in their respective point clouds, calculating a transformation matrix based on the target matching point pairs and the singular value decomposition algorithm, where the transformation matrix is used to indicate the mapping from the source point cloud data to the target point cloud data; determining an optimal transformation matrix based on all the transformation matrices, controlling the source point cloud data to perform a pose transformation based on the optimal transformation matrix to obtain an initial registration result, and adjusting the initial registration result based on the transformation matrix to obtain a target registration result. According to the technical solution of the embodiments of the present invention, a plurality of source concavity-convex descriptors characterizing the concavity-convex features of the source point cloud data are obtained based on the source point cloud data, a plurality of target concavity-convex descriptors characterizing the concavity-convex features of the target point cloud data are obtained based on the target point cloud data, multiple pairs of available matching point pairs whose edit distances satisfy a first preset threshold are determined based on all the source concavity-convex descriptors and all the target concavity-convex descriptors, the source point cloud data is controlled to perform a pose transformation through the transformation matrix generated based on the target matching point pairs to achieve a large-angle deflection of the source point cloud data, and the registration between the source point cloud data and the target point cloud data is performed through the geometric similarity of the concavity-convex features between the source point cloud data and the target point cloud data, ensuring the accuracy of the target registration result, and thus improving the registration accuracy between the target point cloud data and the source point cloud data with a low overlap rate and a large angle deflection.
[0022] The control method of the embodiments of the present invention will be further described below with reference to the accompanying drawings.
[0023] Refer to Figures 1 to 3 and Figure 5 , Figure 1 is a flowchart of a method for registering rock body point clouds provided by an embodiment of the present invention, Figure 2 is a schematic diagram of unregistered source point cloud data and target point cloud data provided by another embodiment of the present invention, Figure 3 is a schematic diagram of concavity-convex feature points provided by another embodiment of the present invention, Figure 5It is a schematic diagram of the target registration result provided by another embodiment of the present invention. The embodiment of the present invention provides a method for registering rock body point clouds, including but not limited to the following steps: S10. Obtain source point cloud data and target point cloud data, where the source point cloud data and the target point cloud data each include a plurality of point cloud points; S20. Perform a target operation on the source point cloud data to obtain a plurality of source concavity-convex descriptors, and perform a target operation on the target point cloud data to obtain a plurality of target concavity-convex descriptors, where the target operation includes: determining the corresponding geometric center, determining the normal vector based on the KD tree, after unifying the direction of the normal vector, adjusting the orientation of the normal vector based on the geometric center, screening out a plurality of concavity-convex feature points from the corresponding point cloud points based on the normal vector, and filtering out the noise points in the concavity-convex feature points through clustering; S30. Determine a plurality of available matching point pairs from the source concavity-convex descriptors and the target concavity-convex descriptors whose edit distances satisfy a first preset threshold; S40. Select three target matching point pairs from all the available matching point pairs that can construct congruent triangles in their respective point clouds, and calculate a transformation matrix based on the target matching point pairs and the singular value decomposition algorithm, where the transformation matrix is used to indicate the mapping from the source point cloud data to the target point cloud data; S50. Determine an optimal transformation matrix based on all the transformation matrices, control the source point cloud data to perform a pose transformation based on the optimal transformation matrix to obtain an initial registration result, and adjust the initial registration result based on the transformation matrix to obtain a target registration result.
[0024] It should be noted that the point cloud data is a set used to represent three-dimensional space data, and is composed of a plurality of point cloud points with three-dimensional coordinates and possibly attached attributes such as color and intensity. The point cloud data can be generated by lidar, depth cameras or photogrammetry techniques.
[0025] It should be noted that the KD tree (K-Dimension tree, abbreviated as KD tree) is a data structure used for organizing and searching high-dimensional space data. The KD tree recursively divides the data into hyperplanes, making the query operation more efficient, where the query operation includes k-nearest neighbor search and range search. Compared with the traditional linear search, the KD tree can significantly improve the search speed in the case of low dimensions.
[0026] It should be noted that in this application, the rock body is scanned from multiple perspectives and batches by lidar to obtain three-dimensional point cloud data of multiple rock bodies. The source point cloud data and the target point cloud data are the point cloud data to be registered. In order to achieve the point cloud registration between the source point cloud data and the target point cloud data, first, the input multiple batches of point cloud data are sorted manually so that there is an overlapping area between the two point cloud data to be registered.
[0027] It should be noted that the pose change of the point cloud data will affect the judgment of the concavity and convexity of the point cloud data, which will further cause the deviation of the positions of the concave and convex feature points. When the number of matching point pairs is insufficient, due to the difference between the normal vectors of the source point cloud data to be registered and the target point cloud data, the concave and convex coding directions in the overlapping area are opposite, and the source point cloud data and the target point cloud data cannot be correctly registered. By performing a flipping operation on the source point cloud data, recalculating the concave and convex information of the source point cloud data, and then performing the registration between the source point cloud data and the target point cloud data again, the registration success rate between the source point cloud data and the target point cloud data can be improved.
[0028] It should be noted that determining the normal vector of the source point cloud data based on the source point cloud data and the KD tree includes: storing the source point cloud data through the KD tree to obtain the source storage structure, obtaining multiple adjacent points of the geometric center based on the source storage structure, and determining the normal vector of the source point cloud data through the geometric plane generated by the multiple adjacent points. Among them, the source storage structure stores all the point cloud points of the source point cloud data.
[0029] It should be noted that determining the normal vector of the target point cloud data based on the target point cloud data and the KD tree includes: storing the target point cloud data through the KD tree to obtain the target storage structure, obtaining multiple adjacent points of the geometric center based on the target storage structure, forming a geometric plane based on the multiple adjacent points, and determining the normal vector of the target point cloud data based on the geometric plane. Among them, the target storage structure stores all the point cloud points of the target point cloud data.
[0030] It should be noted that based on the source point cloud data or the target point cloud data, multiple concave and convex feature points are selected from the corresponding point cloud points according to the normal vector, and the noise points in the concave and convex feature points are filtered out by clustering, so as to filter the areas with less obvious concave and convex features or the point cloud points located in the areas with less obvious concave and convex features, and extract the point cloud points with more obvious concave and convex features as the concave and convex feature points to be registered. The local neighborhood of the concave and convex feature points is used to generate the concave and convex descriptors. This application uses the geometric similarity characteristics of the concave and convex features of the rock mass as the registration basis to realize the registration between multiple batches of point cloud data obtained by scanning the rock mass, so as to improve the registration accuracy and correctness between the point cloud data.
[0031] It should be noted that the edit distance algorithm is an algorithm used to measure the similarity between two strings, indicating the minimum number of edit operations required to convert one string into another string. Edit operations usually include: insertion, deletion, and replacement. The edit distance algorithm is widely used in fields such as spelling correction, natural language processing, and text similarity calculation. When the edit distance is smaller, the approximation degree between the two strings is higher.
[0032] It should be noted that since the data types of the source concave-convex descriptor and the target descriptor are not strings, before determining the geometric similarity between the source concave-convex descriptor and the target descriptor through the edit distance algorithm, the data types of all the source concave-convex descriptors and all the target descriptors are changed to strings to obtain the source string and the target string respectively; any source string and any target string are obtained, and the edit distance between the source string and the target string is calculated through the edit distance algorithm. If the edit distance meets the first preset threshold, that is, the geometric similarity between the source concave-convex feature points corresponding to the source string and the target concave-convex feature points corresponding to the target string meets the requirements, the source concave-convex feature points and the target concave-convex feature points jointly form a pair of matching point pairs. It should be noted that the available matching point pairs include source concave-convex feature points and target concave-convex feature points, and the geometric similarity between the local neighborhoods of the source concave-convex feature points and the local neighborhoods of the target concave-convex feature points meets the requirements.
[0033] It should be noted that three target matching point pairs are obtained from all the available matching point pairs. The three target matching point pairs include three source concave-convex feature points and three target concave-convex feature points. A source triangle is constructed by connecting the three source concave-convex feature points, and a target triangle is constructed by connecting the three target concave-convex feature points. The source triangle and the target triangle are congruent triangles.
[0034] It should be noted that based on the obtained congruent triangles, a transformation matrix is calculated through the singular value decomposition algorithm. Among them, the singular value decomposition algorithm is a prior art, and this application does not make any form of improvement to the singular value decomposition algorithm, so it will not be elaborated here.
[0035] It should be noted that the transformation matrix is a rigid transformation matrix. How to control the point cloud data for pose transformation through the rigid transformation matrix is a prior art, and this application does not make any form of improvement to the rigid transformation matrix for controlling the point cloud data for pose transformation, so it will not be elaborated here.
[0036] It should be noted that based on all source concavo-convex descriptors and all target concavo-convex descriptors, multiple pairs of available matching point pairs are determined. Multiple pairs of congruent triangles are generated based on the target matching point pairs in all available matching point pairs. Among them, the target matching point pairs can be reused, that is, the source concavo-convex feature points and target concavo-convex feature points in a pair of target matching point pairs can be the vertices of multiple congruent triangles. A transformation matrix is generated based on a congruent triangle. When the overlapping number of concavo-convex feature points corresponding to the vertices of a congruent triangle is the largest, the transformation matrix of this congruent triangle is the optimal transformation matrix. The optimal transformation matrix is the transformation matrix with the largest number of overlapping concavo-convex feature points, that is, the optimal transformation matrix is the mapping of the region with the highest geometric similarity between the source point cloud data and the target point cloud data. After controlling the source point cloud data to perform pose transformation based on the optimal transformation matrix, the source point cloud data is subjected to pose transformation based on the overlapping situation of the initial registration result to obtain the target registration result.
[0037] It should be noted that to achieve efficient registration, during the process of controlling the source point cloud data to perform pose transformation based on the optimal transformation matrix, the target point cloud data remains stationary. Among them, the pose transformation includes rotation and translation; based on the concavo-convex features of the source point cloud data and the target point cloud data, the region with the highest geometric similarity between the source point cloud data and the target point cloud data is determined. The source point cloud data is controlled to perform pose transformation to an intermediate reference position with a lower rotation error based on the optimal transformation matrix to obtain the initial registration result. Then, the source point cloud data is controlled to perform pose transformation based on the remaining transformation matrices, and fine-tuning is performed on the basis of the initial registration result to gradually optimize the positional relationship between the source point cloud data and the target point cloud data.
[0038] It should be noted that the source point cloud data and the target point cloud data are obtained, and the target registration result is output, that is, the source point cloud data and the target point cloud data are completed. Using the target registration result as the new target point cloud data, an unprocessed point cloud data is obtained as the new source point cloud data to achieve point cloud registration between three batches of point cloud data. Among them, there is an overlapping region between the target registration result and the unprocessed point cloud data; and so on, three-dimensional point cloud data of multiple batches of rock masses are obtained in sequence, and the registration between all batches of three-dimensional point cloud data of the rock mass is completed through the rock mass point cloud registration method of the present application, and the registration between point cloud data with a low overlap rate and a large angular deflection can be improved.
[0039] It should be noted that in the existing point cloud registration technology, it is only applicable to the registration between point cloud data with high overlap rate, small angular deflection and smooth surface. However, the point cloud data of this application is obtained by scanning the rock mass. The source point cloud data and the target point cloud data to be registered in this application have a low overlap rate, a large angular deflection and a rough surface. If the source point cloud data and the target point cloud data of this application are registered by the existing point cloud registration technology, the accuracy of the obtained three-dimensional point cloud registration result is low, which is not conducive to generating a three-dimensional model of the rock mass based on the obtained three-dimensional point cloud registration model for analysis.
[0040] It should be noted that in this application, the source point cloud data and the target point cloud data are based on the concavo-convex features between the source concavo-convex descriptor and the target concavo-convex descriptor as the registration basis. Based on all the source concavo-convex descriptors, all the target concavo-convex descriptors and the edit distance algorithm, multiple pairs of available matching point pairs are determined. Based on at least three target matching point pairs, congruent triangles are constructed to calculate multiple transformation matrices; based on the transformation matrices, the registration between the source point cloud data and the target point cloud data is completed in two stages; first, based on the optimal transformation matrix in all the transformation matrices, the pose transformation of the large angular deflection of the source point cloud data is realized, and the initial registration between the source point cloud data and the target point cloud data is completed to obtain the initial registration result; the initial registration result is fine-tuned based on the remaining transformation matrices to obtain the target registration result, that is, the registration between the source point cloud data and the target point cloud data is completed. According to the technical solution of the embodiment of the present invention, the registration between the source point cloud data and the target point cloud data with a low overlap rate is realized through the concavo-convex feature matching between the source point cloud data and the target point cloud data. The transformation matrix generated by the target matching point pairs obtained based on the concavo-convex descriptors controls the pose transformation of the source point cloud data to realize the large angular deflection of the source point cloud data, so as to realize the three-dimensional point cloud registration of the rock mass with a low overlap rate, a large angular deflection and a rough surface, and can improve the registration accuracy, reliability and practicability between the source point cloud data and the target point cloud data, which is conducive to generating a three-dimensional model of the rock mass based on the obtained three-dimensional point cloud registration model for analysis, provides accurate and efficient technical support for practical applications such as topographic survey, and at the same time reduces the complexity of subsequent data processing, and has strong engineering application value.
[0041] In addition, referring to Figure 2 and Figure 3 , Figure 2 is a schematic diagram of the unregistered source point cloud data and target point cloud data provided by another embodiment of the present invention. Figure 3 is a schematic diagram of the concavo-convex feature points provided by another embodiment of the present invention. In one embodiment, in S20, based on the normal vector, multiple concavo-convex feature points are screened out from the corresponding point cloud points, and further includes but is not limited to the following steps: S21. Obtain the centroid of the point cloud point and the local neighborhood of the point cloud point. Based on the point cloud point and the centroid, determine the first eigenvector, where the local neighborhood includes multiple neighboring points of the point cloud point; S22. Obtain the normal vector of the point cloud point. The first eigenvector is decomposed along the normal vector into a first vertical component and a first horizontal component; S23. Based on any neighboring point, determine the first vector. Decompose the first vector along the vertical direction and the horizontal direction respectively to obtain a second vertical component and a second horizontal component. Add the first vertical component and the second vertical component to obtain a third vertical component, and add the first horizontal component and the second horizontal component to obtain a third horizontal component. Based on the third vertical component and the third horizontal component, obtain the second eigenvector; S24. Obtain multiple second eigenvectors. Perform dot products of all the second eigenvectors with the normal vector respectively to obtain multiple first dot product values. When the absolute value of the first dot product value is greater than the second preset threshold and the length of the second eigenvector is greater than the third preset threshold, the point cloud point corresponding to the first dot product value is a concave-convex feature point.
[0042] It should be noted that to obtain the centroid of the point cloud point and the local neighborhood of the point cloud point, the coordinates of the first eigenvector are obtained through a formula, and the first eigenvector is obtained based on the coordinates of the first eigenvector, where the formula is: , is the centroid coordinate, is the coordinate of the point cloud point, is the coordinate of the first eigenvector, that is, the coordinate of the centroid of the local neighborhood of the point cloud point is equal to the coordinate of the point cloud point plus the coordinate of the first eigenvector. The coordinate of the first eigenvector.
[0043] It should be noted that for the point cloud points without neighboring points, they are deleted and the specific steps of this embodiment are not executed, so as to reduce the influence of noise.
[0044] It should be noted that by obtaining the second eigenvector and the second dot product value, the relationship between the point cloud point and the normal vectors of the surrounding neighboring points is judged, so as to judge the surface change trend and degree of the local neighborhood of the point cloud point. Based on the judgment result, the point cloud points located in the plane area and the point cloud points whose concave-convex features do not meet the requirements, that is, the concave-convex features are not obvious, are filtered out to obtain the concave-convex feature points.
[0045] It should be noted that the second preset threshold is used to characterize the direction of the concave-convex area of the local neighborhood of the point cloud point, that is, to judge whether the geometric surface of the local neighborhood of the point cloud point is a concave surface or a convex surface; if the absolute value of the first dot product value is greater than the second preset threshold, it means that the geometric surface of the local neighborhood of the point cloud point is a concave surface or a convex surface, and the local neighborhood of the point cloud point has concave-convex features.
[0046] It should be noted that the third preset threshold is used to characterize the degree of change in the concave and convex regions of the local neighborhood of the point cloud points, that is, the curvature magnitude of the geometric surface of the local neighborhood of the point cloud points; if the length of the second eigenvector is greater than the third preset threshold, it indicates that the concave and convex features of the geometric surface of the local neighborhood of the point cloud points are obvious. The second preset threshold and the third preset threshold can be set based on actual requirements.
[0047] Through the specific method of this embodiment, all point cloud points are traversed to obtain multiple concave and convex feature points. Among them, all point cloud points in the source point cloud data are traversed, and multiple source concave and convex feature points are obtained based on the source point cloud data. All point cloud points in the target point cloud data are traversed, and multiple target concave and convex feature points are obtained based on the target point cloud data; it can reduce the influence of noise and provide high-quality input data and implementation basis for extracting concave and convex features based on concave and convex feature points subsequently.
[0048] In addition, in one embodiment, in S23, after determining the first vector based on any adjacent point, the following steps are further included but not limited to: S231, respectively dot-multiply all the first vectors with the normal vector to obtain multiple second dot-product values, and divide all the first vectors into a first vector group and a second vector group based on the positive and negative of all the second dot-product values; S232, obtain the first ratio and the second ratio, where the first ratio is the ratio of the number of first vectors in the first vector group to the total number of first vectors, and the second ratio is the ratio of the number of first vectors in the second vector group to the total number of first vectors; S233, substitute the first ratio and the second ratio into the first formula respectively to obtain the first weight and the second weight respectively, and assign the first weight and the second weight to each first vector in the first vector group and the second vector group respectively, where the first formula is , e is the natural exponent, and β is the noise suppression coefficient.
[0049] It should be noted that before determining the concave and convex feature points based on the point cloud points, the first vector is first denoised, and then the first eigenvector is added to the denoised first vector to obtain the second eigenvector, thereby reducing the influence brought by the noise point cloud points.
[0050] It should be noted that all the first vectors are divided into a first vector group and a second vector group based on the positive and negative values of all the second dot products. Among them, the point cloud points corresponding to the first vectors in the first vector group and the point cloud points corresponding to the first vectors in the second vector group are respectively adjacent points on one side of the tangent plane of the point cloud points. If the number of first vectors in the same group is larger, the point cloud points corresponding to the first vectors in this vector group are more likely to be correct point cloud points; if the number of first vectors in the same group is smaller, the point cloud points corresponding to the first vectors in this vector group are more likely to be noise point cloud points, and should be given a lower weight during the calculation of the centroid, so as to reduce the influence caused by the noise point cloud points.
[0051] It should be noted that when the first ratio is equal to the second ratio, the first weight is equal to the second weight; when the first ratio is greater than the second ratio, the first weight is greater than the second weight; when the first ratio is less than the second ratio, the first weight is less than the second weight. The size of the noise suppression coefficient can be adaptively set according to actual needs. β is the noise suppression coefficient, and the noise suppression coefficient can control the sensitivity of the first formula to suppress noise.
[0052] It should be noted that before adding the first eigenvector and the first vector, the first vector is weighted by the first formula to suppress the noise in the first vector, reduce the influence brought by the noise point cloud points, thereby improving the robustness of the second eigenvector, and determining the concave and convex feature points based on the denoised point cloud points.
[0053] In addition, referring to Figure 3 and Figure 4 , Figure 3 is a schematic diagram of the concave and convex feature points provided by another embodiment of the present invention, Figure 4 is a schematic diagram of the clustering result provided by another embodiment of the present invention. In one embodiment, in S20, filtering the noise points in the concave and convex feature points through clustering further includes but is not limited to the following steps: S25, obtaining all the concave and convex feature points, and obtaining a point cloud cluster based on all the concave and convex feature points; S26, setting the neighborhood radius, the minimum number of samples, and the maximum number of samples of the DBSCAN algorithm, and performing point cloud clustering on the point cloud cluster based on the neighborhood radius through the DBSCAN algorithm to obtain a plurality of initial clusters; S27, obtaining the number of concave and convex feature points in the initial cluster. When the number of concave and convex feature points in the initial cluster is less than the minimum number of samples, deleting the initial cluster, where the concave and convex feature points in the initial cluster are noise points; S28, or, when the number of concave and convex feature points in the initial cluster is greater than the minimum number of samples and less than the maximum number of samples, retaining the initial cluster; S29. Alternatively, when the number of concave and convex feature points in the initial clustering is greater than the maximum number of sample points, obtain the curvature of the initial clustering based on the KD tree, and delete the initial clustering whose curvature does not meet the first preset condition. Among them, the concave and convex feature points in the initial clustering whose curvature does not meet the first preset condition are noise points.
[0054] It should be noted that the DBSCAN (Density-Based Spatial Clustering of Applications with Noise) algorithm is a density-based clustering algorithm used to discover high-density regions in data and is widely applied in fields such as point cloud processing, anomaly detection, geographic information analysis, and pattern recognition. Different from K-Means, DBSCAN does not require specifying the number of clusters and can effectively handle clusters of arbitrary shapes and noise data. The DBSCAN algorithm defines density through the neighborhood radius ε and the minimum number of points. The DBSCAN algorithm defines three types of points: core points, boundary points, and noise points. The DBSCAN algorithm starts from the core points and expands to the density-reachable regions to form clusters until all core points are visited.
[0055] It should be noted that by optimizing the concave and convex feature points through the DBSCAN algorithm, the noise data in the concave and convex feature points is further removed, improving the data quality and reliability of the concave and convex descriptors.
[0056] It should be noted that through density-based clustering of the discrete point cloud clusters, the obtained initial clustering reduces the impact of the outlier initial clustering on the whole based on the minimum number of sample points and the maximum number of sample points of the DBSCAN algorithm, thereby reducing the impact of the outlier concave and convex feature points on the whole. At the same time, the regions with obvious concave and convex features of the point cloud data are retained, enriching the concave and convex feature information of the overall point cloud data. Through the DBSCAN algorithm, the main structural features of the point cloud data can be effectively retained, and at the same time, the noise interference is eliminated, providing a quality guarantee for subsequent data analysis and processing.
[0057] In addition, in an embodiment, in S20, after filtering the noise points in the concave and convex feature points through clustering, it further includes but is not limited to the following steps: S201. Obtain k neighboring points of the concave and convex feature points through the KD tree, obtain the concavity and convexity of the concave and convex feature points, and represent the concavity and convexity of the concave and convex feature points through the first concave and convex coding; S202. Calculate the Euclidean distance between each neighboring point and the concave-convex feature point respectively, and obtain multiple second concave-convex encodings based on all the concave-convex feature points and the corresponding Euclidean distances. Among them, when the concave-convex feature point is a concave feature point, the second concave-convex encoding is equal to the opposite number of the numerical form of the Euclidean distance between the neighboring point and the concave-convex feature point; when the concave-convex feature point is a convex feature point, the second concave-convex encoding is equal to the numerical form of the Euclidean distance between the neighboring point and the concave-convex feature point. S203. Obtain the concave-convex descriptor based on the first concave-convex encoding and k second concave-convex encodings. The expression of the concave-convex descriptor is: , is the concave-convex descriptor of the i-th concave-convex feature point, is the first concave-convex encoding corresponding to the concave-convex feature point, is the second concave-convex encoding corresponding to the first neighboring point of the i-th concave-convex feature point, is the second concave-convex encoding corresponding to the second neighboring point of the i-th concave-convex feature point, is the second concave-convex encoding corresponding to the k-th neighboring point of the i-th concave-convex feature point. i is a positive integer, and k is a positive integer.
[0058] It should be noted that the concavity and convexity of the concave-convex feature point are characterized by the first concave-convex encoding. When the concave-convex feature point is a concave feature point, the first concave-convex encoding is equal to 0; or when the concave-convex feature point is a convex feature point, the first concave-convex encoding is equal to 1.
[0059] It should be noted that the Euclidean distance is a common method for measuring the straight-line distance between two points and is calculated based on the Pythagorean theorem. For points in two-dimensional or three-dimensional space, it calculates the square sum of the coordinate differences in each dimension and then takes the square root to obtain the shortest distance between two points. In higher-dimensional spaces, the Euclidean distance can be extended to any dimension through a similar formula. This distance metric is widely used in clustering analysis, pattern recognition, machine learning and other fields to measure the similarity or difference between samples.
[0060] It should be noted that the concave-convex descriptor can characterize the concave-convex features of the local neighborhood of the concave-convex feature point. The first concave-convex encoding and the second concave-convex encoding are obtained by feature encoding through the Euclidean distance between multiple neighboring points and the concave-convex feature point and the concavity and convexity of the concave-convex feature point. The concave-convex descriptor generated based on the first concave-convex encoding and the second concave-convex encoding can effectively reflect the local geometric structure of the concave-convex feature points in the point cloud data, ensure the scientificity of subsequent registration through concave-convex features, and provide a clearer and more effective data structure for subsequent processing.
[0061] It should be noted that the second concave-convex encoding characterizes the Euclidean distance between the neighboring point and the concave-convex feature point through its absolute value, and characterizes the concavity and convexity of the concave-convex feature point through its positive and negative.
[0062] In addition, in one embodiment, in S30, it further includes but is not limited to the following steps: S31. Change the data types of the source concavity-convex descriptor and the target concavity-convex descriptor to strings, and obtain a source string and a target string respectively. Among them, the expression of the source string is: , is the source string, is the character form of the first concavity-convex code of the source concavity-convex descriptor, is the character form of the 1st second concavity-convex code of the source concavity-convex descriptor, is the character form of the 2nd second concavity-convex code of the source concavity-convex descriptor, is the character form of the kth second concavity-convex code of the source concavity-convex descriptor. The expression of the target string is: , is the target string, is the character form of the first concavity-convex code of the target concavity-convex descriptor, is the character form of the 1st second concavity-convex code of the target concavity-convex descriptor, is the character form of the 2nd second concavity-convex code of the target concavity-convex descriptor, is the character form of the kth second concavity-convex code of the target concavity-convex descriptor. The second concavity-convex code of the source string is determined based on the source concavity-convex feature points and the source neighboring points. The source concavity-convex feature points are the concavity-convex feature points obtained by performing a target operation on the source point cloud data, and the source neighboring points are the neighboring points of the source concavity-convex feature points. The second concavity-convex code of the target string is determined based on the target concavity-convex feature points and the target neighboring points. The target concavity-convex feature points are the concavity-convex feature points obtained by performing a target operation on the target point cloud data, and the target neighboring points are the neighboring points of the target concavity-convex feature points; S32. When meets the second preset condition, the corresponding source neighboring point and the target neighboring point are corresponding points. When does not meet the second preset condition, the corresponding source neighboring point and the target neighboring point are invalid points. Among them, the second preset condition is when and , is the fourth preset threshold; S33. When the edit distance meets the first preset threshold, adjust the source string and the target string respectively based on the corresponding points or invalid points through the edit distance algorithm, and obtain the neighboring point set of the corresponding source concavity-convex feature points and the neighboring point set of the target concavity-convex feature points based on the adjusted source string and the adjusted target string. Among them, the neighboring point set of the source concavity-convex feature points and the neighboring point set of the target concavity-convex feature points jointly form a set of matching point pairs, and the set of matching point pairs includes multiple pairs of available matching point pairs.
[0063] It should be noted that since the edit distance algorithm is applied to the similarity judgment of strings, the data types of the source concave-convex descriptor and the target concave-convex descriptor are changed to strings to obtain the source string and the target string respectively. The similarity between the source string and the target string is judged through the edit distance algorithm, so as to transform the similarity judgment of the source concave-convex descriptor and the target concave-convex descriptor into the similarity judgment of the source string and the target string.
[0064] It should be noted that the edit distance calculation adopts the dynamic programming method to judge the similarity of the minimum number of edit operations required to convert the source string into the target string; among them, the smaller the edit distance, the higher the similarity of the two strings.
[0065] It should be noted that through the edit distance algorithm, the edit distance between the source string and the target string is calculated. If the edit distance meets the first preset threshold, that is, the edit distance is less than the first preset threshold, then the source concave-convex descriptor corresponding to the source string and the target concave-convex descriptor corresponding to the target string are adjusted according to the edit steps to obtain the adjacent point set of the source concave-convex feature points and the adjacent point set of the target concave-convex feature points. Among them, the edit steps include insertion, deletion, replacement and matching.
[0066] It should be noted that after obtaining the adjacent point set of the source concave-convex feature points and the adjacent point set of the target concave-convex feature points, the transformation matrices between the adjacent point set of the source concave-convex feature points and the adjacent point set of the target concave-convex feature points are calculated respectively to obtain the source transformation matrix and the target transformation matrix. If the source transformation matrix can be obtained after transformation to get the target transformation matrix, then the source transformation matrix and the target transformation matrix are correctly corresponding, the adjacent point set of the source concave-convex feature points and the adjacent point set of the target concave-convex feature points are correctly corresponding, and the source concave-convex feature points and the target concave-convex feature points are correctly corresponding.
[0067] It should be noted that all the obtained source concave-convex descriptors and all the target concave-convex descriptors are traversed to obtain multiple pairs of available matching point pairs.
[0068] It should be noted that by using the edit distance algorithm to judge the similarity between the source concave-convex descriptor and the target concave-convex descriptor based on the source string and the target string, it can effectively evaluate the tightness and rationality of the correspondence between the source point cloud data and the target point cloud data, and can effectively quantitatively analyze the geometric similarity difference of the corresponding regions of the source point cloud data and the target point cloud data to ensure the scientificity and reliability of the registration result, and can reduce the influence of incorrect correspondence on the registration result.
[0069] It should be noted that the matching point pair set includes the adjacent point set of the source concave-convex feature points and the adjacent point set of the target concave-convex feature points. The matching point pair set includes multiple pairs of matching point pairs, and a matching point pair includes a source adjacent point and a target adjacent point.
[0070] In addition, in one embodiment, in S40, three target matching point pairs that can construct congruent triangles in their respective point clouds are selected from all available matching point pairs, and a transformation matrix is calculated based on the target matching point pairs and the singular value decomposition algorithm. The steps further include but are not limited to the following: S41, randomly obtain two available matching point pairs from the set of matching point pairs. If the two available matching point pairs meet the third preset condition, the available matching point pairs are target matching point pairs, and a candidate line segment pair is constructed based on the two target matching point pairs. Among them, the third preset condition is , is the r-th source concave-convex feature point, is the s-th source concave-convex feature point, is the r-th target concave-convex feature point, is the s-th target concave-convex feature point, r is a positive integer, and s is a positive integer; S42, randomly obtain one available matching point pair from the set of matching point pairs. If the available matching point pair and the two target matching point pairs meet the fourth preset condition, the available matching point pair is a target matching point pair, and a congruent triangle is constructed based on the available matching point pair and the candidate line segment pair. Among them, the fourth preset condition is , is the t-th source concave-convex feature point, is the t-th target concave-convex feature point, and t is a positive integer; S43, obtain all congruent triangles, and generate multiple transformation matrices based on all congruent triangles through the singular value decomposition algorithm.
[0071] It should be noted that in this application, three available matching point pairs are obtained from the set of matching point pairs. By proving that the side lengths of the two triangles constructed by the three available matching point pairs are equal, the three available matching point pairs are determined to be target matching point pairs, and congruent triangles are obtained.
[0072] It should be noted that by gradually constructing congruent triangles to solve the pose transformation between the source point cloud data and the target point cloud data, the data quality and reliability are significantly improved. By gradually going from points to lines to planes among the available matching point pairs, and then solving the transformation matrix through the singular value decomposition algorithm, an effective pose transformation between the source point cloud data and the target point cloud data can be obtained, the data obtained through the foregoing method can be effectively utilized, and at the same time, the steps for solving the transformation matrix are optimized, reducing the error for registering the source point cloud data and the target point cloud data.
[0073] In addition, to better illustrate the technical solution of this embodiment, refer to Figures 1 to 5 , Figure 1 is a flowchart of a rock body point cloud registration method provided by an embodiment of the present invention, Figure 2 is a schematic diagram of unregistered source point cloud data and target point cloud data provided by another embodiment of the present invention,Figure 3 It is a schematic diagram of concave-convex feature points provided by another embodiment of the present invention. Figure 4 It is a schematic diagram of the clustering result provided by another embodiment of the present invention. Figure 5 It is a schematic diagram of the target registration result provided by another embodiment of the present invention, and the following specific examples are provided: S501, Obtain source point cloud data and target point cloud data. The source point cloud data includes multiple source point cloud points, and the target point cloud data includes multiple target point cloud points; S502, Determine the source geometric center based on the source point cloud data, and determine the target geometric center based on the target point cloud data. Among them, the source geometric center is the geometric center of the source point cloud data, and the target geometric center is the geometric center of the target point cloud data; S503, Store the source point cloud data through a KD tree to obtain a source storage structure, and obtain the source normal vector based on the source storage structure. Among them, the source normal vector is the normal vector of the source point cloud data; store the target point cloud data through a KD tree to obtain a target storage structure, and obtain the target normal vector based on the target storage structure. Among them, the target normal vector is the normal vector of the target point cloud data; S504, Make the directions of the source normal vector and the target normal vector consistent, and adjust the orientation of the source normal vector based on the source geometric center, and adjust the orientation of the target normal vector based on the target geometric center; S505, Obtain any source point cloud point, and determine the first source feature vector based on the source point cloud point and the centroid of the local neighborhood of the source point cloud point; determine the first source vector based on the source point cloud point, perform noise reduction processing on the first source vector through the first formula to obtain a second source vector, and based on the second source vector and the first source feature vector, determine the source concave-convex feature points of the source point cloud points that meet the second preset threshold and the third preset threshold; S506, Obtain any target point cloud point, and determine the first target feature vector based on the target point cloud point and the centroid of the local neighborhood of the target point cloud point; determine the first target vector based on the target point cloud point, perform noise reduction processing on the first target vector through the first formula to obtain a second target vector, and based on the second target vector and the first target feature vector, determine the target concave-convex feature points of the target point cloud points that meet the second preset threshold and the third preset threshold; S507, Traverse all source point cloud points and all target point cloud points to obtain multiple source concave-convex feature points and multiple target concave-convex feature points, and filter out the noise points of all source concave-convex feature points and the noise points of all target concave-convex feature points through the DBSCAN algorithm; S508, Traverse the source concave-convex feature points to obtain multiple source concave-convex descriptors, and traverse the target concave-convex feature points to obtain multiple target concave-convex descriptors; S509. Obtain any source concavity-convex descriptor and any target concavity-convex descriptor, convert the data types of the source concavity-convex descriptor and the target concavity-convex descriptor into strings to obtain a source string and a target string respectively. When the edit distance between the source string and the target string meets the first preset threshold, adjust the source string and the target string through the edit distance algorithm, and obtain the adjacent point sets of the corresponding source concavity-convex feature points and the adjacent point sets of the target concavity-convex feature points based on the adjusted source string and target string. The adjacent point sets of the source concavity-convex feature points and the adjacent point sets of the target concavity-convex feature points together form a matching point pair set, and the matching point pair set includes multiple pairs of available matching point pairs. S510. Select three target matching point pairs that can construct congruent triangles in their respective point clouds from the multiple pairs of available matching point pairs in the matching point pair set, and calculate the transformation matrix based on the target matching point pairs and the singular value decomposition algorithm. S511. Determine the optimal transformation matrix based on all the transformation matrices, control the source point cloud data to perform pose transformation based on the optimal transformation matrix to obtain the initial registration result, and adjust the initial registration result based on the transformation matrix to obtain the target registration result.
[0074] According to the technical solution of the embodiment of the present invention, the registration between the source point cloud data and the target point cloud data with a low overlap rate is realized through the concavity-convex feature matching between the source point cloud data and the target point cloud data. The transformation matrix generated by the target matching point pairs obtained based on the concavity-convex descriptor is used to control the pose transformation of the source point cloud data to realize the large-angle deflection of the source point cloud data, thereby improving the three-dimensional point cloud registration accuracy of the rock body with a low overlap rate, a large angle deflection, and a rough surface.
[0075] As Figure 6 shown, Figure 6 is the structural diagram of a rock body point cloud registration device provided by an embodiment of the present invention. The present invention also provides a rock body point cloud registration device, including: A processor 601, which can be implemented by using a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, etc., and is used to execute relevant programs to implement the technical solutions provided by the embodiments of the present application. The memory 602 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM), etc. The memory 602 can store an operating system and other application programs. When implementing the technical solutions provided in the embodiments of this specification through software or firmware, the relevant program codes are stored in the memory 602, and the processor 601 is used to call and execute the rock mass point cloud registration method of the embodiments of this application; The input / output interface 603 is used to implement information input and output; The communication interface 604 is used to implement communication interaction between this device and other devices. Communication can be achieved through wired means (such as USB, network cable, etc.) or through wireless means (such as mobile network, WIFI, Bluetooth, etc.); The bus 605 transmits information between various components of the device (such as the processor 601, the memory 602, the input / output interface 603, and the communication interface 604); Among them, the processor 601, the memory 602, the input / output interface 603, and the communication interface 604 achieve communication connections with each other inside the device through the bus 605.
[0076] The embodiments of this application also provide an electronic device, including the rock mass point cloud registration device as described above.
[0077] The embodiments of this application also provide a storage medium. The storage medium is a computer-readable storage medium. This storage medium stores a computer program, and when the computer program is executed by a processor, it implements the above-mentioned rock mass point cloud registration method.
[0078] As a non-transitory computer-readable storage medium, the memory can be used to store non-transitory software programs and non-transitory computer-executable programs. In addition, the memory can include high-speed random access memory, and can also include non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some embodiments, the memory optionally includes a memory remotely set relative to the processor, and these remote memories can be connected to the processor through a network. Examples of the above networks include but are not limited to the Internet, enterprise intranets, local area networks, mobile communication networks, and their combinations. The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and may be located in one place, or may be distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solutions of this embodiment.
[0079] Those of ordinary skill in the art will understand that all or some of the steps and systems disclosed above can be implemented as software, firmware, hardware, and their appropriate combinations. Some physical components or all physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or can be implemented as hardware, or can be implemented as an integrated circuit, such as an application specific integrated circuit. Such software can be distributed on a computer-readable medium, which can include a computer storage medium (or non-transitory medium) and a communication medium (or transitory medium). As is well known to those of ordinary skill in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes but is not limited to RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be accessed by a computer. In addition, as is well known to those of ordinary skill in the art, communication media typically includes computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and can include any information delivery medium.
[0080] The above is a specific description of the preferred embodiments of the present invention, but the present invention is not limited to the above embodiments. Those skilled in the art can also make various equivalent deformations or substitutions without departing from the spirit of the present invention, and these equivalent deformations or substitutions are all included within the scope defined by the claims of the present invention.
Claims
1. A rock point cloud registration method, characterized in that: include: Acquire source point cloud data and target point cloud data, wherein the source point cloud data and the target point cloud data each include a plurality of point cloud points; Performing a target operation based on the source point cloud data to obtain a plurality of source concave-convex descriptors, and performing the target operation based on the target point cloud data to obtain a plurality of target concave-convex descriptors, wherein the target operation includes: determining a corresponding geometric center, determining a normal vector based on a KD tree, unifying the direction of the normal vector, adjusting the orientation of the normal vector based on the geometric center, selecting a plurality of concave-convex feature points from the corresponding point cloud points based on the normal vector, and filtering out noise points in the concave-convex feature points by clustering; Determine, from the source concave-convex descriptor and the target concave-convex descriptor, a plurality of available matching point pairs whose edit distances satisfy a first preset threshold; Select three target matching point pairs from all the available matching point pairs that can construct congruent triangles in their respective point clouds, and calculate a transformation matrix based on the target matching point pairs and a singular value decomposition algorithm, wherein the transformation matrix is used to indicate a mapping from the source point cloud data to the target point cloud data; An optimal transformation matrix is determined based on all the transformation matrices, and the source point cloud data is controlled to perform posture transformation based on the optimal transformation matrix to obtain an initial registration result, and the initial registration result is adjusted based on the transformation matrix to obtain a target registration result.
2. The rock point cloud registration method according to claim 1, characterized in that: Filtering a plurality of concave-convex feature points from the corresponding point cloud points based on the normal vector includes: Obtaining the point cloud point and the centroid of a local area of the point cloud point, and determining a first eigenvector based on the point cloud point and the centroid, wherein the local area includes a plurality of neighboring points of the point cloud point; Acquire the normal vector of the point cloud point, wherein the first eigenvector is decomposed into a first vertical component and a first horizontal component along the normal vector; Based on any of the neighboring points, determine a first vector, decompose the first vector in the vertical direction and the horizontal direction respectively to obtain a second vertical component and a second horizontal component respectively, add the first vertical component to the second vertical component to obtain a third vertical component, add the first horizontal component to the second horizontal component to obtain a third horizontal component, and obtain a second eigenvector based on the third vertical component and the third horizontal component; Obtain multiple second eigenvectors, perform dot products on all of the second eigenvectors and the normal vector, and obtain multiple first dot product values respectively; when the absolute value of the first dot product value is greater than a second preset threshold and the length of the second eigenvector is greater than a third preset threshold, the point cloud point corresponding to the first dot product value is the concave-convex feature point.
3. The rock point cloud registration method according to claim 2, characterized in that: Before decomposing the first vector along the vertical direction and the horizontal direction respectively, the method further includes: Perform dot products of all the first vectors with the normal vector respectively to obtain a plurality of second dot product values, and divide all the first vectors into a first vector group and a second vector group based on the positive and negative signs of all the second dot product values; Obtaining a first proportion and a second proportion, wherein the first proportion is the proportion of the number of the first vectors in the first vector group to the total number of the first vectors, and the second proportion is the proportion of the number of the first vectors in the second vector group to the total number of the first vectors; Substitute the first proportion and the second proportion into the first formula to obtain a first weight and a second weight, respectively, and assign the first weight and the second weight to each of the first vectors in the first vector group and the second vector group, respectively, wherein the first formula is: , e is the natural exponent, and β is the noise suppression coefficient.
4. The rock point cloud registration method according to claim 1, characterized in that: Filtering out noise points in the concave-convex feature points by clustering includes: Acquire all the concave-convex feature points, and obtain a point cloud cluster based on all the concave-convex feature points; Setting the domain radius, the minimum number of sample points, and the maximum number of sample points of the DBSCAN algorithm, and performing point cloud clustering on the point cloud cluster based on the domain radius by the DBSCAN algorithm to obtain multiple initial clusters; Acquire the number of the concave-convex feature points in the initial cluster, and when the number of the concave-convex feature points in the initial cluster is less than the minimum number of sample points, delete the initial cluster, wherein the concave-convex feature points in the initial cluster are the noise points; Alternatively, when the number of the concave-convex feature points in the initial cluster is greater than the minimum number of sample points and less than the maximum number of sample points, the initial cluster is retained; Alternatively, when the number of the concave-convex feature points in the initial cluster is greater than the maximum number of sample points, the curvature of the initial cluster is obtained based on the KD tree, and the initial cluster whose curvature does not meet the first preset condition is deleted, wherein the concave-convex feature points in the initial cluster whose curvature does not meet the first preset condition are the noise points.
5. The rock point cloud registration method according to claim 1, characterized in that: After filtering out noise points in the concave-convex feature points by clustering, the method further comprises: Acquire k neighboring points of the concave-convex feature point through a KD tree, acquire the concave-convexity of the concave-convex feature point, and characterize the concave-convexity of the concave-convex feature point through a first concave-convex code; Calculate the Euclidean distance between each of the neighboring points and the concave-convex feature point respectively, and obtain a plurality of second concave-convex codes based on all the concave-convex feature points and all the corresponding Euclidean distances respectively, wherein when the concave-convex feature point is a concave feature point, the second concave-convex code is equal to the inverse of the numerical value of the Euclidean distance between the neighboring point and the concave-convex feature point, and when the concave-convex feature point is a convex feature point, the second concave-convex code is equal to the numerical value of the Euclidean distance between the neighboring point and the concave-convex feature point; A concave-convex descriptor is obtained based on the first concave-convex code and k second concave-convex codes, wherein the expression of the concave-convex descriptor is: , is the concave-convex descriptor of the i-th concave-convex feature point, is the first concave-convex code corresponding to the concave-convex feature point, is the second concave-convex code corresponding to the first neighboring point of the i-th concave-convex feature point, is the second concave-convex code corresponding to the second neighboring point of the i-th concave-convex feature point, is the second concave-convex code corresponding to the kth neighboring point of the i-th concave-convex feature point, where i is a positive integer and k is a positive integer.
6. The rock point cloud registration method according to claim 5, characterized in that: Determining a plurality of available matching point pairs whose edit distances satisfy a first preset threshold from the source concave-convex descriptor and the target concave-convex descriptor comprises: The data types of the source concave-convex descriptor and the target concave-convex descriptor are changed to strings, and a source string and a target string are obtained respectively, wherein the expression of the source string is: , is the source string, is the character form of the first bump code of the source bump descriptor, is the character form of the first second concave-convex code of the source concave-convex descriptor, is the character form of the second concave-convex code of the second source concave-convex descriptor, is the character form of the kth second concave-convex code of the source concave-convex descriptor, and the expression of the target character string is: , is the target string, is the character form of the first bump code of the target bump descriptor, is the character form of the first second concave-convex code of the target concave-convex descriptor, is the character form of the second concave-convex code of the target concave-convex descriptor, is the character form of the kth second concave-convex code of the target concave-convex descriptor, the second concave-convex code of the source character string is determined based on source concave-convex feature points and source adjacent points, the source concave-convex feature points are the concave-convex feature points obtained by performing the target operation based on the source point cloud data, the source adjacent points are the adjacent points of the source concave-convex feature points, the second concave-convex code of the target character string is determined based on target concave-convex feature points and target adjacent points, the target concave-convex feature points are the concave-convex feature points obtained by performing the target operation based on the target point cloud data, and the target adjacent points are the adjacent points of the target concave-convex feature points; when The second preset condition is met, and the corresponding source neighboring point and the target neighboring point are corresponding points. If the second preset condition is not met, the corresponding source neighboring point and the target neighboring point are invalid points, wherein the second preset condition is and , is a fourth preset threshold; When the edit distance satisfies the first preset threshold, the source character string and the target character string are respectively adjusted based on the corresponding points or the invalid points by using an edit distance algorithm, and a neighboring point set of the corresponding source concave-convex feature point and a neighboring point set of the target concave-convex feature point are obtained based on the adjusted source character string and the adjusted target character string, wherein the neighboring point set of the source concave-convex feature point and the neighboring point set of the target concave-convex feature point together constitute a matching point pair set, and the matching point pair set includes a plurality of pairs of the available matching point pairs.
7. The rock point cloud registration method according to claim 6, characterized in that: Select three target matching point pairs that can construct congruent triangles in their respective point clouds from all the available matching point pairs, and calculate a transformation matrix based on the target matching point pairs and a singular value decomposition algorithm, including: Randomly obtain two available matching point pairs in the matching point pair set. If the two available matching point pairs meet a third preset condition, the available matching point pairs are the target matching point pairs. A candidate line segment pair is constructed based on the two target matching point pairs. The third preset condition is , is the rth source concave-convex feature point, is the sth source concave-convex feature point, is the rth target concave-convex feature point, is the sth target concave-convex feature point, r is a positive integer, and s is a positive integer; An available matching point pair is randomly obtained from the matching point pair set. If the available matching point pair and the two target matching point pairs satisfy a fourth preset condition, the available matching point pair is the target matching point pair. A congruent triangle is constructed based on the available matching point pair and the candidate line segment pair. The fourth preset condition is , is the tth source concave-convex feature point, is the t-th target concave-convex feature point, where t is a positive integer; All the congruent triangles are obtained, and a plurality of transformation matrices are generated based on all the congruent triangles respectively through a singular value decomposition algorithm.
8. A rock point cloud registration device, characterized in that: It comprises at least one control processor and a memory for communicating with the at least one control processor; the memory stores instructions executable by the at least one control processor, and the instructions are executed by the at least one control processor so that the at least one control processor can execute the rock body point cloud registration method as described in any one of claims 1 to 7.
9. An electronic device, characterized in that: It includes the rock body point cloud registration device as described in claim 8.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute the rock body point cloud registration method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Point cloud coarse registration method based on fast triangular feature histogram
CN116309759A
Point cloud registration method based on key point and neighborhood point pair feature description, electronic equipment and storage medium
CN116416287A
Three-dimensional point cloud registration method based on rotation invariant feature
CN117710426A
Cited By
ICP (Inductively Coupled Plasma) matching method and system based on concave-convex characteristics of mine cave
CN120375020A
Multi-scale fusion point cloud feature extraction and adaptive matching method
CN120431342A
