A multi-task agent aided optimization method for point cloud registration

By using a multi-task agent-assisted optimization method, and employing farthest point sampling and genetic algorithms to optimize point cloud registration, the problems of high time cost and computational complexity in point cloud registration are solved, achieving a balance between accuracy and speed and improving the registration effect.

CN118397050BActive Publication Date: 2026-08-04XIDIAN UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
XIDIAN UNIV
Filing Date
2024-05-29
Publication Date
2026-08-04

AI Technical Summary

Technical Problem

Existing point cloud registration methods suffer from high time costs and computational complexity, which are difficult to reduce effectively, especially when processing large-scale point cloud data. Furthermore, traditional methods are prone to getting trapped in local optima, leading to registration failure.

Method used

A multi-task proxy-assisted optimization method is adopted. Multiple point cloud models are generated at different sampling rates using the farthest point sampling algorithm to construct proxy tasks. Genetic algorithms are then used for iterative optimization to reduce computational complexity and storage requirements, and improve registration accuracy and speed.

Benefits of technology

It achieves an adaptive trade-off between accuracy and speed in point cloud registration, reducing computational complexity and time cost while improving registration accuracy and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118397050B_ABST
    Figure CN118397050B_ABST
Patent Text Reader

Abstract

The application discloses a kind of multi-task agent auxiliary optimization point cloud registration methods, comprising: according to successively reduced sampling rate, source point cloud model and target point cloud model are respectively sampled K times, and K first point cloud models and K second point cloud models are obtained;According to the i th first point cloud model and i second point cloud model, the corresponding sub-population i of the i th agent task is constructed, and K different sub-populations are obtained;The i th agent task is the registration task of the i th first point cloud model and i second point cloud model, the rotation matrix and translation vector of the i th first point cloud model, and the rotation matrix and translation vector of the i th second point cloud model are two different individuals in sub-population i;The value of i is 1 to K;K different sub-populations are iteratively optimized using genetic algorithm, and the source point cloud model and the target point cloud model are registered based on the target individual obtained by iteration.The application can improve the registration effect, and reduce the registration time cost.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of point cloud processing technology, specifically relating to a point cloud registration method with multi-task agent-assisted optimization. Background Technology

[0002] With advancements in 3D scanning technology and computer performance, 3D registration has been applied to fundamental problems in many fields, such as medical imaging, autonomous driving, biomedicine, shape retrieval, and industrial applications. As researchers' demands for image processing capabilities increase in practical applications, 2D images are insufficient for accurately describing complex problems. Therefore, researchers have begun to focus on the more promising field of 3D images. Current research indicates that 3D point cloud registration processing technology has been widely applied in numerous fields. Since a complete scene or object cannot be obtained, the purpose of 3D registration is to find the correspondence between two point clouds, that is, to find the rotation matrix and translation vector between the point clouds. Using the rotation matrix and translation vector, point clouds from the same scene or object can be merged into a single, complete point cloud object.

[0003] Point cloud registration, also known as point cloud matching or scan registration, defines the task of finding spatial transformations to correctly align two sets of points. Point cloud registration has wide applications in simultaneous localization and mapping, scene reconstruction, target recognition, and pose estimation. Current research indicates that methods for solving the point cloud registration problem mainly fall into two categories: local methods and global methods. Local methods primarily study how to achieve point cloud registration using local features. By extracting local features from the point cloud and registering them with the target point cloud, the correspondence between the point clouds is determined. Local features can include information such as point position, normals, and curvature.

[0004] The paper "Aligning Point Cloud Views using Persistent Feature Histograms" (Rusu RB, Blodow N, Marton ZC, et al. Aligning point cloud views using persistent feature histograms [C] / / 2008 IEEE / RSJ international conference on intelligent robots and systems. IEEE, 2008: 3384-3391) proposes a method for aligning point cloud data views using persistent feature histograms. By analyzing the persistence of features at different scales, the optimal set of features to describe a given point cloud is extracted. These persistent features are used in an initial alignment algorithm to estimate a rigid transformation to approximate the registration of the input dataset. The algorithm is invariant to pose and sampling density and handles noisy data from indoor and outdoor laser scanning well. Furthermore, the paper proposes an improved ICP algorithm that uses an approximate point-to-surface distance metric to accelerate convergence. By transforming the dataset to the convergence region, the algorithm provides a good starting point for iterative registration algorithms such as ICP. Furthermore, the paper proposes an initial alignment algorithm using geometric constraints and a method for point-to-point correspondence search using persistent feature histograms. These innovations enable the method to successfully align point cloud views in partially overlapping datasets. The paper "Fast Point Feature Histograms (FPFH) for 3D Registration" (Rusu RB, Blodow N, Beetz M. Fast point feature histograms (FPFH) for 3D registration [C] / / 2009 IEEE international conference on robotics and automation. IEEE, 2009: 3212-3217) first optimizes the computation of the point feature histogram (PFH) by caching previously calculated values ​​or revising theoretical formulas, significantly reducing computation time. Second, it introduces a fast point feature histogram (FPFH), proposing a new local feature by modifying the mathematical expression of PFH. FPFH retains most of the discriminative power of PFH while reducing the computational complexity from O(k^2) to O(k), where k is the number of neighbors. In addition, an algorithm for online computation of FPFH features for real-time applications is proposed.Finally, for the 3D registration problem, a sample consistency-based initial alignment method, SAC-IA, is proposed. This method aims to bring two datasets into the convergence region of a local nonlinear optimizer. Overall, this paper focuses on improving the efficiency and robustness of 3D registration by optimizing feature computation and selection methods. The paper "Registration for 3-D point cloud using angular-invariant feature" (Jiang J, Cheng J, Chen X. Registration for 3-D point cloud using angular-invariant feature[J]. Neurocomputing, 2009, 72(16-18): 3839-3844) proposes an angle-invariant feature for the registration process of 3D point clouds to reliably select point correspondences. The feature is a k-dimensional vector, where each element is the angle between the normal vector and its k nearest neighbors. This angular feature is invariant to scale and rotation transformations and is applicable to surfaces with small curvature. This feature improves convergence and error without requiring any assumptions about the initial transformation and without requiring a strict sampling strategy. Experiments show that the proposed angle-based algorithm is more efficient than the Iterative Closest Point (ICP) and curvature-based algorithms.

[0005] However, traditional methods using the Iterative Nearest Point (ICP) algorithm and its variants require frequent and expensive fitness function evaluations to approximate the optimal solution before each point in the source point cloud can be evaluated, leading to high time costs. In evolutionary computational registration, the results are also uncertain due to the randomness of the operations. Most evolutionary registration algorithms, or those using evolutionary computation to handle registration problems, are prone to getting trapped in local optima, resulting in registration failure. Point cloud registration typically incurs high time costs, especially for large-scale point cloud registration data. The cost of fitness evaluation during the registration process is often unacceptable. Therefore, reducing the time cost in point cloud registration is a key issue. Summary of the Invention

[0006] To address the aforementioned problems in the existing technology, this invention provides a point cloud registration method with multi-task agent-assisted optimization.

[0007] The technical problem to be solved by this invention is achieved through the following technical solution:

[0008] This invention provides a point cloud registration method with multi-task agent-assisted optimization, comprising:

[0009] Based on different sampling rates, the farthest point sampling algorithm is used to sample the source point cloud model and the target point cloud model K times respectively, resulting in K first point cloud models and K second point cloud models; wherein, the sampling rate decreases sequentially in the K sampling times; each first point cloud model and each second point cloud model has a rotation matrix and a translation vector; K is an integer greater than 1;

[0010] Based on the i-th first point cloud model and the i-th second point cloud model, construct the subpopulation i corresponding to the i-th proxy task to obtain K different subpopulations; wherein, the i-th proxy task is the registration task of the i-th first point cloud model and the i-th second point cloud model, the rotation matrix and translation vector of the i-th first point cloud model and the rotation matrix and translation vector of the i-th second point cloud model are two different individuals in the subpopulation i; i is an integer, and the value of i is from 1 to K;

[0011] A genetic algorithm is used to iteratively optimize the K different subpopulations to obtain the target individual;

[0012] Based on the target individual, the source point cloud model and the target point cloud model are registered.

[0013] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0014] This invention effectively addresses the balance between accuracy and speed in point cloud registration. Specifically, firstly, by sampling the farthest points at multiple scales of the source and target point cloud models to be registered, multiple point cloud models for the registration problem are obtained. This reduces the number of points while preserving the original features of the original models, thereby lowering computational complexity and storage requirements. Secondly, by utilizing multiple different point cloud models obtained from multi-scale sampling, proxy tasks corresponding to different registration problems are established, weakening the sensitivity between proxy tasks constructed for different registration problems. Finally, by employing a genetic algorithm to iteratively optimize the constructed multiple proxy tasks, the complexity of the original registration problem between the source and target point cloud models is reduced, and the accuracy of the solution to the original registration problem is improved. This effectively achieves an adaptive trade-off between speed and accuracy in point cloud registration, improving the registration effect and reducing registration time costs.

[0015] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Attached Figure Description

[0016] Figure 1 This is a flowchart illustrating a point cloud registration method with multi-task agent-assisted optimization provided in an embodiment of the present invention.

[0017] Figure 2This is a two-dimensional schematic diagram of a sampled point cloud model provided in an embodiment of the present invention;

[0018] Figure 3 This is a schematic diagram illustrating the principle of obtaining a target individual by iteratively optimizing K different subpopulations using a genetic algorithm, as provided in an embodiment of the present invention.

[0019] Figure 4 This is a schematic diagram of the registration results of the method of the present invention under different point cloud models provided in the embodiments of the present invention. Detailed Implementation

[0020] The present invention will be further described in detail below with reference to specific embodiments, but the implementation of the present invention is not limited thereto.

[0021] Figure 1 This is a flowchart illustrating a point cloud registration method with multi-task agent-assisted optimization provided in an embodiment of the present invention, as shown below. Figure 1 As shown, the method includes:

[0022] S101. Based on different sampling rates, the farthest point sampling algorithm is used to sample the source point cloud model and the target point cloud model K times respectively, to obtain K first point cloud models and K second point cloud models; wherein, the sampling rate decreases sequentially during the K samplings; each first point cloud model and each second point cloud model has a rotation matrix and a translation vector; K is an integer greater than 1.

[0023] Here, the sampling rate is highest during the first sampling; for example, the sampling rate during the first sampling can be 100%.

[0024] Here, both the source point cloud model and the target point cloud model include multiple points, each representing a point cloud dataset. For example, both the source point cloud model and the target point cloud model are large-scale models, with tens of thousands of points in each model.

[0025] S102. Based on the i-th first point cloud model and the i-th second point cloud model, construct the sub-population i corresponding to the i-th proxy task to obtain K different sub-populations; where the i-th proxy task is the registration task of the i-th first point cloud model and the i-th second point cloud model, the rotation matrix and translation vector of the i-th first point cloud model and the rotation matrix and translation vector of the i-th second point cloud model are two different individuals in the sub-population i; i is an integer, and the value of i is from 1 to K.

[0026] Here, each point cloud model has a rotation matrix and a translation vector. The first point cloud model and the second point cloud model construct subpopulation 1 corresponding to the first agent task. The rotation matrix and translation vector of the first point cloud model represent one individual in subpopulation 1, and the rotation matrix and translation vector of the first second point cloud model represent the other individual in subpopulation 1. This results in subpopulation 1 containing two individuals. Other subpopulations are similarly constructed and will not be elaborated further. Each individual has a skill factor, which characterizes the subpopulation to which the individual belongs. For example, the skill factor of each individual in population 1 characterizes that individual belongs to subpopulation 1, and the skill factor of each individual in population 2 characterizes that individual belongs to subpopulation 2.

[0027] S103. Use a genetic algorithm to iteratively optimize K different subpopulations to obtain the target individual.

[0028] Here, there are multiple target individuals, which are multiple sets of target registration parameters. Each set of registration parameters includes a rotation matrix and a translation vector.

[0029] S104. Based on the target individual, register the source point cloud model and the target point cloud model.

[0030] In this invention, S101 can be implemented by S1011 to S1013:

[0031] S1011. During the i-th sampling, the first distance threshold for the i-th sampling is determined based on the maximum distance, i, and K between the two point clouds in the source point cloud model, and the second distance threshold for the i-th sampling is determined based on the maximum distance, i, and K between the two point clouds in the target point cloud model.

[0032] For example, the expression for the first distance threshold in the i-th iteration is:

[0033]

[0034] Where res represents the first distance threshold for the i-th time, l max This represents the maximum distance between two point clouds in the source point cloud model.

[0035] Here, the calculation principle of the first distance threshold in the i-th iteration is the same as that in the i-th iteration, and will not be repeated here.

[0036] The distance described in this invention is Euclidean distance. This invention controls the sampling rate when sampling at the farthest point by using the first distance threshold and the second distance threshold mentioned above.

[0037] S1012. Based on the first distance threshold of the i-th time, the farthest point sampling algorithm is used to sample the source point cloud model for the i-th time to obtain the i-th first point cloud model.

[0038] Specifically, a point is selected from the source point cloud model as the first sampling point; then, when sampling the j-th sampling point from the source point cloud model, the distance between the (j-1)-th sampling point and each unsampled point in the source point cloud model is calculated; j is an integer, and the value of j ranges from 2 to J; from the unsampled points whose distance is less than or equal to the first distance threshold of the i-th sampling, the j-th sampling point is selected according to the farthest point sampling algorithm, and the i-th first point cloud model can be obtained at the end of the i-th sampling.

[0039] The Farthest Point Sampling (FPS) method is a maxima process. When sampling at the farthest point, an initial point must be provided first, for example, Figure 2 This is a two-dimensional schematic diagram of a sampled point cloud model, and Figure 2 The point cloud model contains points ①, ②, ③, ④, ⑤, and ⑥. Figure 2 Midpoint ① is the initial point, located at (0,0). Then, based on the position of each point, the Euclidean distance between ① and each other is calculated, as shown in the second row of Table 1. By comparison, the Euclidean distance between point ③ and point ① is the largest, therefore ③ is selected as the second sampling point. Then, the Euclidean distance between ③ and other points is calculated, as shown in the third row of Table 1. According to the second and third rows of Table 1, since the distances between point ③ and points ②, ④, ⑤, and ⑥ are not all less than the distances between point ① and points ②, ④, ⑤, and ⑥, no distance update is performed (i.e., after selecting the third sampling point, the distance between this third sampling point and each of the remaining unsampled points is compared with the distances between point ① and each of the remaining unsampled points). Simultaneously, since the Euclidean distance between point ③ and points ②, ④, ⑤, and ⑥ is the largest, ② is selected as the third sampling point. This principle is then used to continue sampling the next point. It should be noted that if the distances between point ③ and points ②, ④, ⑤, and ⑥ are all less than the distances between point ① and points ②, ④, ⑤, and ⑥, then the distances are updated (that is, after selecting the third sampling point, the distances between the third sampling point and each of the remaining unsampled points are compared with the distances between point ③ and each of the remaining unsampled points).

[0040] Table 1. Sampling table of farthest points

[0041]

[0042] S1013. Based on the second distance threshold of the i-th time, the farthest point sampling algorithm is used to sample the target point cloud model for the i-th time to obtain the i-th second point cloud model.

[0043] Here, the principle for obtaining the i-th second point cloud model is the same as the principle for obtaining the i-th first point cloud model, and will not be repeated here.

[0044] In this invention, we employ a farthest-point sampling method, which enables the sampled point cloud module to reflect the original features of the registration problem and reduces the number of points, thereby lowering computational complexity and storage requirements. Compared to random sampling, farthest-point sampling effectively ensures the extraction of boundary points, preserves the geometric details of complex models, and fully utilizes the point location information of local surfaces, thus significantly improving the accuracy of the solution to the original registration problem.

[0045] In this invention, S103 can be achieved through the following steps:

[0046] S1031. In the t-th iteration, obtain the N individuals obtained in the (t-1)-th iteration; t is an integer, and the value of t ranges from 1 to T, where T represents the preset maximum number of iterations, and T is an integer greater than 1; when t is 1, the N individuals obtained in the (t-1)-th iteration are all individuals in K different subpopulations, and each individual in the K different subpopulations has fitness; each individual has a skill factor, which is used to characterize the subpopulation to which the individual belongs.

[0047] Here, in the first iteration, the population consisting of subpopulation 1, subpopulation 2, ..., subpopulation K is used as the population for the first iteration, thus obtaining the initial N individuals, where N = 2*K, and the fitness of each individual in the initial N individuals is calculated; in each iteration from the second to the Tth iteration, the population consisting of the N individuals obtained in the previous iteration is used as the population for the current iteration, and the population for the current iteration is iteratively optimized.

[0048] Specifically, for example, the fitness of each individual can be calculated using the following formula:

[0049]

[0050] Where v represents the average density between the first and second point cloud models corresponding to the individual, and r represents the average distance between the two point clouds corresponding to the first and second point cloud models.

[0051]

[0052] Where, N s N represents the total number of points in the first point cloud model corresponding to this individual.d s represents the total number of points in the second point cloud model corresponding to this individual. i N represents s The point d in i N represents d The point s in i ` Represents distance and s i The closest point, d ` i Represents distance and d i The closest point.

[0053] S1032. Use the N individuals obtained in the (t-1)th iteration to generate new individuals in the tth iteration, as well as the skill factor of each new individual, and calculate the fitness of each new individual.

[0054] Specifically, S1032 can be implemented through the following steps:

[0055] S1. Divide the N individuals obtained in the (t-1)th iteration into a first part and a second part.

[0056] S2. Each time, select one individual from the first part and the second part as the two parents.

[0057] For example, each time an individual is selected from the first part and the second part, the selection can be made in the following way: when the nth individual is selected from the first part, the (n+N / 2)th individual is selected from the second part, where n is a value from 1 to N / 2. In this way, every individual in the first part and the second part can be selected.

[0058] S3. When the skill factors of two parents are the same, perform gene cross-processing on the two parents to generate two new individuals. The skill factor of each new individual is the skill factor of one of the two parents.

[0059] In this invention, each parent consists of a rotation matrix and a translation vector. Therefore, gene crossover processing of two parents can be achieved by exchanging the rotation matrices or translation vectors of these two parents. By exchanging the rotation matrices or translation vectors of these two parents, two new combinations of rotation matrices and translation vectors can be generated, thus obtaining two new individuals. The skill factors of these two new individuals can be inherited from the parent parents. For example, parent 1 consists of rotation matrix 1 and translation vector 1, and parent 2 consists of rotation matrix 2 and translation vector 2. When gene crossover is achieved by exchanging the rotation matrices of these two parents, a new individual 1 and a new individual 2 can be obtained. New individual 1 consists of rotation matrix 2 and translation vector 1, and the skill factor of new individual 1 is the same as that of parent 1. New individual 2 consists of rotation matrix 1 and translation vector 2, and the skill factor of new individual 2 is the same as that of parent 2.

[0060] S4. When the skill factors of the two parents are different, generate two new individuals and the skill factors of each new individual based on the two parents, the preset random mating probability and the preset probability threshold.

[0061] Specifically, when the skill factors of the two parents are different, a first random number between 0 and 1 is generated. When the first random number is less than the preset random mating probability Rmp, gene cross-pollination is performed on the two parents to generate two new individuals. A second random number between 0 and 1 is then generated. When the second random number is less than a preset probability threshold (e.g., 0.5), the skill factor of the first parent is used as the skill factor of the two new individuals. When the second random number is greater than or equal to the preset probability threshold, the skill factor of the second parent is used as the skill factor of the two new individuals. When the first random number is greater than or equal to the preset random mating probability Rmp, gene mutation is performed on both parents to generate two new individuals, and the skill factor of each new individual is the skill factor of one of the two parents.

[0062] Here, when performing gene mutation treatment on each parent, the rotation matrix or translation vector constituting that parent can be randomly changed to obtain a new individual, and the skill factor of the new individual is the skill factor of the parent.

[0063] S1033. From the population consisting of the new individual in the t-th iteration and the N individuals obtained in the (t-1)-th iteration, select the best N individuals to obtain N selected individuals.

[0064] Here, when selecting the optimal N individuals, an elite strategy can be used.

[0065] S1034. Based on the N selected individuals and the N individuals obtained in the (t-1)th iteration, determine the N individuals obtained in the tth iteration.

[0066] Specifically, S1034 can be implemented through the following steps:

[0067] S11. Based on the fitness of the N selected individuals and the N individuals obtained in the (t-1)th iteration, calculate the change similarity of each subpopulation in the K different subpopulations.

[0068] Specifically, based on the skill factor, individuals belonging to subpopulation 1, subpopulation 2, ..., subpopulation K are selected from the N selected individuals and the N individuals obtained in the (t-1)th iteration. Then, the change similarity of subpopulation 1 is calculated based on the fitness of the individuals belonging to subpopulation 1 among the N selected individuals and the N individuals obtained in the (t-1)th iteration. Similarly, the change similarity of subpopulation 2 is calculated based on the fitness of the individuals belonging to subpopulation 2 among the N selected individuals and the N individuals obtained in the (t-1)th iteration. In this way, the change similarity of each subpopulation can be obtained.

[0069] For example, the expression for the change in similarity of subpopulation i is as follows:

[0070]

[0071] Where ls(Px,Py) represents the change similarity of subpopulation i, Px represents the N individuals obtained in the (t-1)th iteration, and Py represents the N selected individuals obtained in the t-th iteration. Let represent the fitness of the i′-th individual in Px belonging to subpopulation i. Let represent the fitness of the i′-th individual in Py belonging to subpopulation i.

[0072] S12. When the change similarity of each subpopulation in the K different subpopulations is less than or equal to the preset similarity threshold α, the N selected individuals are taken as the N individuals obtained in the t-th iteration.

[0073] Here, when the change similarity of each of the K different subpopulations is less than or equal to the preset similarity threshold α, it means that it is not necessary to update all the sampled point cloud models.

[0074] S13. When the change similarity of subpopulation p is greater than the preset similarity threshold, the source point cloud model and the target point cloud model are sampled again according to the sampling rate of the p-th sampling to obtain a new p-th first point cloud model and a new p-th second point cloud model; p is an integer and the value of p is at least one from 1 to K.

[0075] S14. Based on the new p-th first point cloud model and the new p-th second point cloud model, construct a new subpopulation p corresponding to the new p-th proxy task; wherein, the new p-th proxy task is the registration task between the new p-th first point cloud model and the new p-th second point cloud model; wherein, the rotation matrix and translation vector of the new p-th first point cloud model and the rotation matrix and translation vector of the new p-th second point cloud model are two different individuals in the new subpopulation p.

[0076] Here, if the change similarity of a certain subpopulation is less than or equal to the preset similarity threshold α, it means that the point cloud model corresponding to the subpopulation needs to be updated so that the updated point cloud model can be used to generate a new agent task, thereby obtaining a new subpopulation.

[0077] S15. Replace subpopulation p in the K different subpopulations with a new subpopulation p, and take all individuals in the K different subpopulations after the replacement as the N individuals obtained in the t-th iteration.

[0078] In this invention, point clouds with different sampling rates represent different surrogate models (i.e., the aforementioned sampled point cloud models). The lower the sampling rate, the lower the registration accuracy of the surrogate model. Updating the surrogate model involves resampling the original point cloud model to introduce new information about the target problem, thereby improving the registration accuracy of the surrogate model. The timing and method of updating the surrogate model are determined based on the degree of change in the corresponding subpopulation; the greater the degree of change, the more frequently the surrogate model is updated. By dynamically updating the surrogate model, new surrogate tasks can be generated to achieve reasonable resource allocation and guide evolutionary search. By constructing the surrogate model, an adaptive trade-off between point cloud registration speed and accuracy is achieved, reducing resource consumption. In this invention, the purpose of dynamically updating the surrogate model is to better search for the target problem. To prevent the subpopulation from converging or stagnating prematurely during iterative evolution, the surrogate model needs to be dynamically updated using changes in similarity ALS to generate new auxiliary tasks. By using changes in similarity ALS, reasonable resource allocation can be achieved.

[0079] S1035. Based on the N individuals obtained in the t-th iteration, perform the (t+1)-th iteration until the T-th iteration is completed, and then use the N individuals obtained in the T-th iteration as the target individuals.

[0080] For example, Figure 3 This is a schematic diagram illustrating the principle of using a genetic algorithm to iteratively optimize K different subpopulations to obtain the target individual. (Example:) Figure 3 As shown, the source point cloud model and the target point cloud model are sampled K times at different resolutions to obtain K different first point cloud models (i.e., Figure 3The blue dots in "Agent Task 1" to "Agent Task K" and K different second point cloud models (i.e. Figure 3 The red dots in “Agent Task 1” to “Agent Task K” are used to construct Agent Task 1, Agent Task 2, ..., Agent Task K using K different first point cloud models and K different second point cloud models, resulting in K different agent tasks. The i-th agent task corresponds to the i-th first point cloud model and the i-th second point cloud model. Based on the i-th first point cloud model and the i-th second point cloud model, the subpopulation i corresponding to the i-th agent task is constructed, resulting in subpopulations P1, P2, ..., PK. Then, a genetic algorithm is used to iteratively optimize the population composed of subpopulations P1, P2, ..., PK until a preset standard is met, at which point the iteration stops, and the target individual is finally obtained.

[0081] In this invention, S104 can be implemented through the following steps:

[0082] S1041. Based on the skill factor, find individuals belonging to subpopulation 1 from the target individuals.

[0083] S1042. Use individuals belonging to subpopulation 1 from the target individuals to register the source point cloud model and the target point cloud model.

[0084] Point cloud registration is divided into local point cloud registration and global point cloud registration. This invention belongs to global point cloud registration. Generally speaking, and These represent the source point cloud model and the target point cloud model, respectively. Registration between the source point cloud S and the target point cloud D can be achieved using a rotation matrix and a translation vector (R,t), where R is the rotation matrix and t is the translation vector.

[0085] Here, since the sampling rate is highest during the first sampling, the proxy task 1 corresponding to subpopulation 1 represents the registration task of the two point cloud models obtained by performing the first sampling on the source point cloud model and the target point cloud model respectively. Therefore, the individuals belonging to subpopulation 1 in the target individuals are actually the solutions with the highest accuracy. Thus, the individuals belonging to subpopulation 1 in the target individuals are used to register the source point cloud model and the target point cloud model. That is, the rotation matrix in the individuals belonging to subpopulation 1 in the target individuals is used as the rotation matrix R when registering the source point cloud model and the target point cloud model, and the translation vector in the individuals belonging to subpopulation 1 in the target individuals is used as the translation vector t when registering the source point cloud model and the target point cloud model.

[0086] This invention improves the efficiency and accuracy of point cloud registration by utilizing multiple point cloud models with varying degrees of precision. It employs evolutionary multi-task generation to create K different registration tasks, including a main task (proxy task 1) and K-1 auxiliary tasks (proxy tasks 2 to K). Knowledge transfer occurs between the K tasks, and the point cloud models are updated. After the iteration ends, the rotation matrix and translation vector of proxy task 1 are used to register the original point cloud model.

[0087] This invention effectively addresses the balance between accuracy and speed in point cloud registration. Specifically, firstly, by sampling the farthest points at multiple scales of both the source and target point cloud models to be registered, multiple point cloud models for the registration problem are obtained. This reduces the number of points while preserving the original features of the original models, thereby lowering computational complexity and storage requirements. Secondly, by utilizing multiple different point cloud models obtained from multi-scale sampling, proxy tasks corresponding to different registration problems are established, weakening the sensitivity between proxy tasks constructed for different registration problems. Finally, by employing a genetic algorithm to iteratively optimize the constructed proxy tasks, the complexity of the original registration problem between the source and target point cloud models is reduced, and the accuracy of the solution to the original registration problem is improved. This effectively achieves an adaptive trade-off between speed and accuracy in point cloud registration, improving registration results and reducing registration time costs.

[0088] The technical effects of the present invention will be illustrated through simulation experiments below.

[0089] Experiment 1

[0090] This invention addresses the time-consuming point cloud registration problem using the proposed method. To demonstrate the effectiveness of the proposed method, results are analyzed using a multi-task-assisted framework (i.e., the method of this invention) and without (i.e., other methods). Seven sets of real-world scanned point cloud data are used as experiments. The effectiveness of the multi-task-assisted framework is verified by analyzing the various time costs.

[0091] In this simulation, the population size Pop = 100, the maximum number of iterations MaxIter = 60, the random mating probability Rmp = 0.5, the simulated binary crossover index Mu = 10, the standard deviation of the Gaussian mutation model Sigma = 0.02, the upper threshold KMax of the registration loss function is set to the maximum bounding box length of the point cloud, and the lower threshold KMin of the loss function is set to twice the point cloud resolution.

[0092] In this simulation, the registration results of the method of this invention under different point cloud models are as follows: Figure 4 As shown, it is obvious that when using the method of the present invention for registration, not only is the time shorter, but the registration accuracy is also very high.

[0093] Experiment 2

[0094] To verify the effectiveness of the registration method of this invention, we compared the method of this invention (MICP) with currently popular point cloud registration methods (ICP, FDCP, EMTR-SSC, TrICP), taking δ values ​​of 0.01, 0.02, 0.03, 0.04, and 0.05. To simulate the real-world situation of noisy point cloud data, different levels of white noise were added to both the source and target point cloud models. The table below shows the E values ​​under different Gaussian noise biases. R Error, E t Error, RMSE error.

[0095] In this simulation, the population size Pop = 100, the maximum number of iterations MaxIter = 60, the random mating probability Rmp = 0.5, the simulated binary crossover index Mu = 10, the standard deviation of the Gaussian mutation model Sigma = 0.02, the upper threshold KMax of the registration loss function is set to the maximum bounding box length of the point cloud, and the lower threshold KMin of the loss function is set to twice the point cloud resolution.

[0096] Table 2E R error

[0097] ICP 1.588(0.822) 0.655(0.388) 5.012(0.455) 1.993(0.477) 3.257(0.755) FDCP 0.655(0.299) 1.241(0.523) 3.776(0.455) 1.135(0.135) 1.775(0.114) EMTR-SSC 0.287(0.077) 0.448(0.102) 0.1278(0.367) 1.488(0.244) 2.102(1.883) TrICP 0.145(0.254) 0.444(0.118) 1.288(0.099) 1.112(0.052) 2.491(0.043) MICP 0.098(0.034) 0.535(0.211) 0.082(0.043) 1.001(0.056) 1.212(0.201)

[0098] Table 3E t error

[0099] ICP 0.118(0.011) 0.198(0.052) 0.188(0.049) 0.344(0.024) 0.362(0.015) FDCP 0.028(0.099) 0.062(0.005) 0.066(0.006) 0.122(0.043) 0.091(0.082) EMTR-SSC 0.008(0.004) 0.053(0.011) 0.098(0.005) 0.110(0.047) 0.023(0.005) TrICP 0.012(0.008) 0.046(0.007) 0.055(0.005) 0.091(0.006) 0.142(0.032) MICP 0.011(0.004) 0.034(0.021) 0.099(0.032) 0.045(0.003) 0.024(0.004)

[0100] Table 4 RMSE Error

[0101] ICP 0.138(0.009) 0.194(0.071) 0.256(0.019) 0.344(0.052) 0.335(0.045) FDCP 0.035(0.009) 0.077(0.005) 0.152(0.034) 0.133(0.032) 0.121(0.022) EMTR-SSC 0.014(0.003) 0.062(0.010) 0.070(0.007) 0.125(0.011) 0.078(0.008) TrICP 0.013(0.002) 0.045(0.008) 0.067(0.008) 0.102(0.008) 0.145(0.010) MICP 0.008(0.004) 0.070(0.004) 0.050(0.040) 0.098(0.004) 0.011(0.005)

[0102] Obviously, as shown in Tables 2 to 4, the E of the method of the present invention under different Gaussian noise deviations... R Error, E t The error and RMSE error are both minimal, thus verifying the high effectiveness of the method of this invention in registration.

[0103] It should be noted that the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, features defined as "first" or "second" may explicitly or implicitly include one or more features. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified.

[0104] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Furthermore, those skilled in the art can combine and integrate the different embodiments or examples described in this specification.

[0105] In this specification, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude multiple instances. While different embodiments may describe certain measures, this does not mean that these measures cannot be combined to produce a good effect.

[0106] The above description, in conjunction with specific preferred embodiments, provides a further detailed explanation of the present invention. It should not be construed that the specific implementation of the present invention is limited to these descriptions. For those skilled in the art, various simple deductions or substitutions can be made without departing from the concept of the present invention, and all such modifications and substitutions should be considered within the scope of protection of the present invention.

Claims

1. A point cloud registration method with multi-task agent-assisted optimization, characterized in that, include: Based on different sampling rates, the farthest point sampling algorithm is used to sample the source point cloud model and the target point cloud model K times respectively, resulting in K first point cloud models and K second point cloud models; wherein, the sampling rate decreases sequentially in the K sampling times; each first point cloud model and each second point cloud model has a rotation matrix and a translation vector; K is an integer greater than 1; Based on the i-th first point cloud model and the i-th second point cloud model, construct the subpopulation i corresponding to the i-th proxy task to obtain K different subpopulations; wherein, the i-th proxy task is the registration task of the i-th first point cloud model and the i-th second point cloud model, the rotation matrix and translation vector of the i-th first point cloud model and the rotation matrix and translation vector of the i-th second point cloud model are two different individuals in the subpopulation i; i is an integer, and the value of i is from 1 to K; A genetic algorithm is used to iteratively optimize the K different subpopulations to obtain the target individual; Based on the target individual, the source point cloud model and the target point cloud model are registered. In this process, during the t-th iteration, N individuals obtained from the (t-1)-th iteration are acquired. Based on the fitness of the N selected individuals and the N individuals obtained from the (t-1)-th iteration, the change similarity of each subpopulation in the K different subpopulations is calculated. When the change similarity of each subpopulation in the K different subpopulations is less than or equal to a preset similarity threshold, the N selected individuals are taken as the N individuals obtained from the t-th iteration. When the change similarity of subpopulation p is greater than the preset similarity threshold, the source point cloud model and the target point cloud model are resampled for the p-th time according to the sampling rate of the p-th sampling, resulting in a new p-th first point cloud model and a new p-th second point cloud model. p is an integer, and the value of p is from 1 to K. One less; based on the new p-th first point cloud model and the new p-th second point cloud model, construct a new subpopulation p corresponding to the new p-th proxy task; wherein, the new p-th proxy task is the registration task of the new p-th first point cloud model and the new p-th second point cloud model; wherein, the rotation matrix and translation vector of the new p-th first point cloud model and the rotation matrix and translation vector of the new p-th second point cloud model are two different individuals in the new subpopulation p; replace the subpopulation p in the K different subpopulations with the new subpopulation p, and take all individuals in the replaced K different subpopulations as the N individuals obtained in the t-th iteration, wherein, the expression for the change similarity of the subpopulation i is as follows: ; in, Indicates the change similarity of subpopulation i. This represents the N individuals obtained in the (t-1)th iteration. This represents the N selected individuals obtained during the t-th iteration. express The first subpopulation i belongs to the first subpopulation. The fitness of an individual express The first subpopulation i belongs to the first subpopulation. The fitness of an individual.

2. The multi-task agent-assisted optimization method of point cloud registration according to claim 1, characterized in that, The sampling rate is highest during the first sampling; each individual has a skill factor, which is used to characterize the subpopulation to which the individual belongs; The registration of the source point cloud model and the target point cloud model based on the target individual includes: Based on the skill factor, identify individuals belonging to subpopulation 1 from the target individuals; The source point cloud model and the target point cloud model are registered using individuals belonging to subpopulation 1 from the target individuals.

3. The multi-task agent-assisted optimization method of point cloud registration according to claim 1, wherein, The method involves sampling the source point cloud model and the target point cloud model K times each using the farthest point sampling algorithm, based on different sampling rates, to obtain K first point cloud models and K second point cloud models, including: During the i-th sampling, the first distance threshold for the i-th sampling is determined based on the maximum distance between the two point clouds in the source point cloud model, i, and K, and the second distance threshold for the i-th sampling is determined based on the maximum distance between the two point clouds in the target point cloud model, i, and K. Based on the first distance threshold of the i-th time, the source point cloud model is sampled for the i-th time using the farthest point sampling algorithm to obtain the i-th first point cloud model; Based on the second distance threshold of the i-th time, the farthest point sampling algorithm is used to sample the target point cloud model for the i-th time to obtain the i-th second point cloud model.

4. The multi-task agent-assisted optimization method of point cloud registration according to claim 3, characterized in that, The source point cloud model contains J points; J is an integer greater than 1; the step of sampling the source point cloud model for the i-th time using the farthest point sampling algorithm according to the i-th first distance threshold to obtain the i-th first point cloud model includes: Select one point from the source point cloud model as the first sampling point; When sampling the j-th sampling point from the source point cloud model, calculate the distance between the (j-1)-th sampling point and each unsampled point in the source point cloud model; j is an integer, and the value of j ranges from 2 to J; From the unsampled points whose distance is less than or equal to the first distance threshold of the i-th sampling, the j-th sampling point is selected according to the farthest point sampling algorithm, and the i-th first point cloud model is obtained at the end of the i-th sampling.

5. The multi-task agent-assisted optimization method of point cloud registration according to claim 3, wherein, The expression for the first distance threshold in the i-th iteration is: ; wherein, denotes the first distance threshold value of the i-th iteration, denotes the maximum distance between two point clouds in the source point cloud model.

6. The multi-task agent-assisted optimization method of point cloud registration according to claim 1, wherein, The step of using a genetic algorithm to iteratively optimize the K different subpopulations to obtain the target individual includes: t is an integer, and the value of t ranges from 1 to T, where T represents the preset maximum number of iterations, and T is an integer greater than 1; when t is 1, the N individuals obtained in the (t-1)th iteration are all individuals in the K different subpopulations, and each individual in the K different subpopulations has fitness; each individual has a skill factor, which is used to characterize the subpopulation to which the individual belongs; The N individuals obtained in the (t-1)th iteration are used to generate new individuals in the tth iteration, along with the skill factor of each new individual, and the fitness of each new individual is calculated. From the population consisting of the new individuals from the t-th iteration and the N individuals obtained from the (t-1)-th iteration, select the best N individuals to obtain N selected individuals; Based on the N selected individuals and the N individuals obtained in the (t-1)th iteration, determine the N individuals obtained in the tth iteration; Based on the N individuals obtained in the t-th iteration, the (t+1)-th iteration is performed until the T-th iteration is completed, and then the N individuals obtained in the T-th iteration are taken as the target individual.

7. The multi-task agent-assisted optimization method of point cloud registration according to claim 6, wherein, The process of generating a new individual for the t-th iteration from the N individuals obtained in the (t-1)th iteration, and the skill factor of each new individual, includes: The N individuals obtained in the (t-1)th iteration are equally divided into a first part and a second part; Each time, one individual is selected from both the first and second parts to serve as the two parents; When the skill factors of the two parents are the same, the two parents are subjected to gene crossover to generate two new individuals, and the skill factor of each new individual is the skill factor of one of the two parents. When the skill factors of the two parents are different, two new individuals are generated based on the two parents, the preset random mating probability and the preset probability threshold, as well as the skill factor of each new individual.

8. The multi-task agent-assisted optimization method of point cloud registration according to claim 7, characterized in that, When the skill factors of the two parents are different, two new individuals are generated based on the two parents, a preset random mating probability, and a preset probability threshold, along with the skill factors of each new individual, including: When the skill factors of the two parents are different, a first random number is generated; When the first random number is less than the preset random mating probability, the two parents are subjected to gene cross-processing to generate two new individuals and a second random number is generated. When the second random number is less than the preset probability threshold, the skill factor of the first parent of the two parents is used as the skill factor of the two new individuals generated. When the second random number is greater than or equal to the preset probability threshold, the skill factor of the second parent in the two parent lines is used as the skill factor of the two new individuals generated. When the first random number is greater than or equal to the preset random mating probability, both parents undergo gene mutation processing to generate two new individuals. The skill factor of each new individual is the skill factor of one of the two parents.