Point cloud registration method, device, electronic device and storage medium

By randomly selecting the focus points in point cloud registration and generating the region of interest based on this, the problems of high computational complexity and insufficient robustness of traditional point cloud registration methods are solved, efficient and robust point cloud registration is achieved, and refined registration for specific regions is supported.

CN119180849BActive Publication Date: 2025-03-18MANTEIA TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411703508.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2025-03-18
Estimated Expiration
2044-11-26

AI Technical Summary

Technical Problem

Traditional point cloud registration methods have high computational complexity, low efficiency, and insufficient robustness when processing large-scale point cloud data, which cannot effectively meet the refined registration requirements for specific regions in actual applications.

Method used

By randomly determining a focus point, the point closest to the focus point in the target point data is used as the key point, the target area is determined based on the key point, and the target point cloud data and source point cloud data are registered according to the target area.

Benefits of technology

It reduces the amount of registration calculation, improves registration efficiency and robustness, is suitable for large-scale point cloud data processing, and achieves refined registration of specific regions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119180849B_ABST
    Figure CN119180849B_ABST
Patent Text Reader

Abstract

The present application discloses a point cloud registration method, device, electronic device and storage medium, which relate to the field of image processing. The method comprises: randomly determining a focus point; taking the point closest to the focus point in the target point cloud data as a key point; determining a target area in the target point cloud data based on the key point, wherein the key point is located in the target area; registering the target point cloud data and the source point cloud data according to the target area, wherein the source point cloud data and the target point cloud data are located in different point cloud images. The present application solves the technical problems of low computational efficiency and insufficient robustness caused by redundancy and noise in point cloud data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of image processing, and more specifically, to a point cloud registration method, device, electronic device, and storage medium. Background Art

[0002] Point cloud technology plays an important role in fields such as 3D reconstruction, autonomous driving, robot navigation, and computer vision. Point cloud registration refers to aligning two or more point cloud data to obtain a unified coordinate system.

[0003] Traditional point cloud registration methods rely primarily on global feature matching and optimization algorithms. These methods are computationally complex and often inefficient when processing large-scale point cloud data. Furthermore, in practical applications, point cloud data often contains a large amount of noise and redundant information, making these traditional registration methods less robust.

[0004] In addition, in many practical applications, there is usually a need to be interested in specific areas, and traditional point cloud registration methods are usually unable to effectively meet such refined registration requirements. In practical applications, they have relatively poor flexibility and practicality.

[0005] To address the above-mentioned problems, no effective solutions have been proposed so far. Summary of the Invention

[0006] The present application provides a point cloud registration method, device, electronic device and storage medium to at least solve the technical problems of low computational efficiency and insufficient robustness caused by redundancy and noise in point cloud data and to meet the technical needs of interest in specific areas in practical applications.

[0007] According to one aspect of the present application, a point cloud registration method is provided, comprising: randomly determining a focus point; taking the point in the target point cloud data that is closest to the focus point as a key point; determining a target area in the target point cloud data based on the key point, wherein the key point is located within the target area; and registering the target point cloud data and source point cloud data according to the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images.

[0008] Optionally, taking the point in the target point cloud data that is closest to the focus point as the key point, including: calculating the Euclidean distance between each point in the target point cloud data and the focus point; and taking the point in the target point cloud data that is closest to the Euclidean distance between the focus point and the key point.

[0009] Optionally, determining a target area in the target point cloud data based on the key point includes: calculating the distance between each point in the target point cloud data except the key point and the key point; determining a target number of points of interest from the target point cloud data based on the distance between each point in the target point cloud data except the key point and the key point, wherein the distance between the point of interest and the key point is less than the distance between the non-interest point and the key point; and taking the area covered by the target number of points of interest as the target area.

[0010] Optionally, before determining a target number of points of interest from the target point cloud data based on the distance between each point in the target point cloud data except the key point and the key point, the point cloud registration method further includes: obtaining the number of points in the target point cloud data; calculating the product of a preset value and the number of points to obtain first data, wherein the preset value is a value greater than 0 and less than 1; performing rounding calculation on the first data, and using the calculation result of the rounding calculation as the target number.

[0011] Optionally, a target number of points of interest are determined from the target point cloud data based on the distance between each point in the target point cloud data except the key point and the key point, including: constructing a point cloud tree based on the target point cloud data, wherein the point cloud tree is a data structure in the form of a binary tree, used to represent the target point cloud data in the form of the binary tree; by calculating the Euclidean distance between the points in the point cloud tree and the key point, a nearest neighbor search algorithm is used to determine a preset number of points in the target point cloud data that are closest to the key point, so as to obtain the preset number of points of interest.

[0012] Optionally, the target point cloud data and the source point cloud data are registered based on the target area, including: performing a registration operation on the target area and the source point cloud data to obtain an affine transformation matrix; based on the affine transformation matrix, performing a transformation operation on the source point cloud data to obtain a registration result of the target point cloud data and the source point cloud data.

[0013] Optionally, determining the target area in the target point cloud data based on the key point includes: calculating the distance between each point in the target point cloud data and the key point; taking the point in the target point cloud data whose distance from the key point is less than a preset distance as the target point; and taking the area covered by the target point as the target area.

[0014] According to another aspect of an embodiment of the present application, a point cloud registration device is also provided, including: a first determination unit for randomly determining a focus point; a first processing unit for taking the point in the target point cloud data that is closest to the focus point as a key point; a second determination unit for determining a target area in the target point cloud data based on the key point, wherein the key point is located within the target area; a second processing unit for aligning the target point cloud data and the source point cloud data based on the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images.

[0015] According to another aspect of the present application, a computer-readable storage medium is also provided, wherein a computer program is stored in the computer-readable storage medium, wherein when the computer program is run, the device where the computer-readable storage medium is located executes the above-mentioned point cloud registration method.

[0016] According to another aspect of the present application, an electronic device is also provided, wherein the electronic device includes one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the above-mentioned point cloud registration method.

[0017] In the present application, a focus point is first randomly determined, and then the point in the target point cloud data that is closest to the focus point is taken as a key point. Then, based on the key point, a target area is determined in the target point cloud data, wherein the key point is located within the target area. Finally, the target point cloud data and the source point cloud data are aligned based on the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images.

[0018] As can be seen from the above, the present application reduces the amount of registration calculations and improves the registration efficiency by randomly selecting a point of interest and generating a region of interest (i.e., the target region in the target point cloud data) based on the diffusion of this point of interest, thereby solving the technical problems of high computational complexity and low efficiency of traditional point cloud registration algorithms when processing large-scale point cloud data. The technical solution of the present application can significantly reduce the amount of calculations for point cloud registration, improve the registration speed, and is suitable for large-scale point cloud data processing. Secondly, in practical applications, point cloud data often contains a large amount of noise and redundant information, which makes traditional registration methods insufficient in terms of robustness. However, the present application determines the region of interest and realizes the registration of the target point cloud data and the source point cloud data based on the region of interest, thereby minimizing the interference of noise and redundant information (noise and redundant information are defined as data in the non-region of interest), thereby improving the robustness of the registration.

[0019] Furthermore, this application allows users to perform point cloud registration based on regions of interest, enabling more refined and customized point cloud registration. In many practical applications, users are only interested in specific regions of a point cloud, rather than requiring registration of all the information in the point cloud. The technical solution of this application allows users to specify regions of interest for point cloud registration, thus meeting the user's need for precise alignment of specific regions and providing greater application flexibility and practicality.

[0020] It can be seen that through the technical solution of the present application, the purpose of randomly selecting a point and generating a region of interest based on the diffusion of this point and performing alignment according to the region of interest is achieved, thereby achieving the technical effect of reducing the amount of alignment calculation, improving the alignment efficiency and alignment robustness, and thus solving the technical problems of low computational efficiency and insufficient robustness caused by the redundancy and noise of point cloud data. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0022] Figure 1 is a flowchart of an optional point cloud registration method according to an embodiment of the present application;

[0023] Figure 2 This is a schematic diagram of an optional point cloud registration device according to an embodiment of the present application. DETAILED DESCRIPTION

[0024] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.

[0025] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in a sequence other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0026] It should also be noted that the information and data collected by this application are information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with the relevant laws, regulations and standards of the relevant regions, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation portals for users to choose to authorize or refuse. For example, an interface is set up between this system and the relevant users or institutions. Before obtaining relevant information, it is necessary to send an acquisition request to the aforementioned user or institution through the interface, and obtain the relevant information after receiving the consent information fed back by the aforementioned user or institution.

[0027] According to an embodiment of the present application, a method embodiment of a point cloud registration method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0028] It should be noted that a point cloud registration system is used as the execution subject of the point cloud registration processing method of the embodiment of the present application. It is understandable that the point cloud registration processing method provided in the embodiment of the present application can also be executed by other systems or devices as the execution subject, and the embodiment of the present application does not specifically limit this.

[0029] Figure 1 is a flow chart of an optional point cloud registration method according to an embodiment of the present application, such as Figure 1 As shown, the method includes the following steps:

[0030] Step S101: randomly determine a focus point.

[0031] Optionally, the focus point exists in three-dimensional space, and each point contains three coordinate values ​​(usually X, Y, Z), which describe the specific location of the point in space. The user can randomly select or enter a focus point, and the determined focus point is recorded as .

[0032] Optionally, the point cloud registration system may also acquire a set of three-dimensional point cloud data as target point cloud data.

[0033] Step S102: taking the point in the target point cloud data that is closest to the focus point as a key point.

[0034] Optionally, the point cloud registration system may calculate the distance (such as the Euclidean distance) between each point in the target point cloud data and the focus point, and select the point in the target point cloud data that is closest to the focus point as the key point based on the calculation result.

[0035] Optionally, the key point exists in three-dimensional space, that is, there is a corresponding three-dimensional coordinate. In this application, the key point can be recorded as .

[0036] Step S103 : determining a target area in the target point cloud data based on the key point, wherein the key point is located within the target area.

[0037] Optionally, the point cloud registration system can compute keypoints In the target point cloud data The N nearest points in , thereby forming a specific region of interest based on key points (corresponding to the target area above), where the specific area of ​​interest contains the N nearest points .

[0038] Optionally, a larger value of N indicates a larger region of interest, and a smaller value of N indicates a smaller region of interest. By determining the region of interest, the amount of registration calculations can be significantly reduced, improving registration efficiency, because registration can be performed only on the region of interest, without having to perform registration on the entire target point cloud data.

[0039] For example, a method for determining a target area in the target point cloud data based on the key points includes: a point cloud registration system constructing a target point cloud data based on the key points The KD (K-dimensional tree) tree is then used to search the nearest neighbor algorithm based on Euclidean distance in the target point cloud data. Search and key points The N nearest points Composition of specific regions of interest .

[0040] Step S104 : registering the target point cloud data and the source point cloud data according to the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images.

[0041] Optionally, the point cloud registration system can replace the target point cloud data with the target area, and then perform rigid registration on the target area and the source point cloud data, wherein, by focusing on the area of ​​interest, the noise and redundant information that need to be processed during the registration process are reduced, thereby improving the processing efficiency of the point cloud data.

[0042] It can be seen from the contents of steps S101 to S104 that in an embodiment of the present application, a focus point is first randomly determined, and then the point in the target point cloud data that is closest to the focus point is used as a key point, and then a target area is determined in the target point cloud data based on the key point, wherein the key point is located in the target area, and finally the target point cloud data and the source point cloud data are aligned based on the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images.

[0043] As can be seen from the above, the present application reduces the amount of registration calculations and improves the registration efficiency by randomly selecting a point of interest and generating a region of interest (i.e., the target region in the target point cloud data) based on the diffusion of this point of interest, thereby solving the technical problems of high computational complexity and low efficiency of traditional point cloud registration algorithms when processing large-scale point cloud data. The technical solution of the present application can significantly reduce the amount of calculations for point cloud registration, improve the registration speed, and is suitable for large-scale point cloud data processing. Secondly, in practical applications, point cloud data often contains a large amount of noise and redundant information, which makes traditional registration methods insufficient in terms of robustness. However, the present application determines the region of interest and realizes the registration of the target point cloud data and the source point cloud data based on the region of interest, thereby minimizing the interference of noise and redundant information (noise and redundant information are defined as data in the non-region of interest), thereby improving the robustness of the registration.

[0044] Furthermore, this application allows users to perform point cloud registration based on regions of interest, enabling more refined and customized point cloud registration. In many practical applications, users are only interested in specific regions of a point cloud, rather than requiring registration of all the information in the point cloud. The technical solution of this application allows users to specify regions of interest for point cloud registration, thus meeting the user's need for precise alignment of specific regions and providing greater application flexibility and practicality.

[0045] It can be seen that through the technical solution of the present application, the purpose of randomly selecting a point and generating a region of interest based on the diffusion of this point and performing alignment according to the region of interest is achieved, thereby achieving the technical effect of reducing the amount of alignment calculation, improving the alignment efficiency and alignment robustness, and thus solving the technical problems of low computational efficiency and insufficient robustness caused by the redundancy and noise of point cloud data.

[0046] In an optional embodiment, the point cloud registration system first calculates the Euclidean distance between each point in the target point cloud data and the focus point, and then uses the point in the target point cloud data with the shortest Euclidean distance to the focus point as the key point.

[0047] Alternatively, Euclidean distance is a common method for measuring the distance between two points in multidimensional space. Based on the distance definition in a rectangular coordinate system, Euclidean distance is determined by taking the square root of the sum of the squared differences between the two points' coordinates. This reflects the direct separation between the two points in space.

[0048] Optionally, first, the point cloud registration system can be used to register the target point cloud data. Determine and focus Euclidean distance to the nearest point Then, the point cloud registration system can Keypoints mapped as points of interest in the target point cloud As shown in formula (1):

[0049]

[0050] From the above content, we can see that the Euclidean distance is used to calculate the distance between the target point cloud data and the focus point. This method is intuitive and geometrically intuitive, ensures the accuracy of the search results, and can accurately identify the point closest to the focus point in the target point cloud data, that is, the key point.

[0051] In an optional embodiment, the point cloud registration system first calculates the distance between each point in the target point cloud data except the key point and the key point, and then determines a target number of points of interest from the target point cloud data based on the distance between each point in the target point cloud data except the key point and the key point, wherein the distance between the point of interest and the key point is less than the distance between the non-interest point and the key point, and then the area covered by the target number of points of interest is used as the target area.

[0052] Optionally, the point cloud registration system calculates the N interest points closest to the key point in the target point cloud data, and then determines a specific region of interest (i.e., target region) in the target point cloud data based on the N interest points and the key point, wherein the target region includes the key point and the N interest points closest to the key point.

[0053] Optionally, the larger the value of N, the larger the range of the region of interest. If the value of N is smaller, the smaller the range of the region of interest, which significantly reduces the amount of registration calculation and improves processing efficiency.

[0054] Optionally, by judging the distance between the key point and each point in the target point cloud data, the point in the target point cloud data that is shorter than the key point can be selected as the point of interest. In other words, the distance between the point of interest and the key point is smaller than the distance between the non-interest point and the key point, and then the area covered by the target number of points of interest is taken as the target area.

[0055] As can be seen from the above, using the distance from key points to determine points of interest ensures that each identified point of interest is highly correlated with a key point, and also ensures that the subsequently generated target area is connected. In addition, the number of targets can be customized, allowing users to customize the size of the target area.

[0056] In an optional embodiment, before determining a target number of points of interest from the target point cloud data based on the distance between each point in the target point cloud data except the key point and the key point, the point cloud registration system first obtains the number of points in the target point cloud data, and then calculates the product of a preset value and the number of points to obtain first data, wherein the preset value is a value greater than 0 and less than 1, and then rounds the first data, and uses the result of the rounding calculation as the target number.

[0057] Optionally, the number of assumed targets is recorded as N. The larger the value of N is, the larger the range of the region of interest is, and the smaller the value of N is, the smaller the range of the region of interest is.

[0058] Optionally, the point cloud registration system can be based on the target point cloud data Determine the value of N, as shown in formula (2):

[0059]

[0060] in, Represents target point cloud data The number of points, K represents the number of segments to be segmented, which means taking the previous points as points of interest. Corresponds to the above preset value.

[0061] In order to ensure that N is an integer, and After the product is calculated, the product result (ie, the first data) needs to be rounded off, and the rounded result is used as the target number.

[0062] From the above content, we can see that combined with the target point cloud data By determining the value of N, we can more accurately select the appropriate number of points of interest, that is, determine a more appropriate size of the region of interest. By selecting an appropriate value for N, we can significantly reduce the amount of registration calculations and improve the processing efficiency of the point cloud.

[0063] In an optional embodiment, the point cloud registration system first constructs a point cloud tree based on the target point cloud data, wherein the point cloud tree is a data structure in the form of a binary tree, which is used to represent the target point cloud data in the form of the binary tree, and then calculates the Euclidean distance between the points in the point cloud tree and the key points, and uses a nearest neighbor search algorithm to determine a preset number of points in the target point cloud data that are closest to the key points, thereby obtaining the preset number of points of interest.

[0064] Optionally, a KD tree is a data structure for storing and searching points in a multidimensional space. It is particularly suitable for operations such as fast nearest neighbor search and range search. Its main purpose is to efficiently search and compare points in a high-dimensional space, avoiding the high complexity of direct linear search on large data sets. In the processing of three-dimensional point cloud data, the application of KD trees can greatly improve the efficiency of searching for nearest neighbor points.

[0065] Alternatively, Euclidean distance is a common method for measuring the distance between two points in multidimensional space. Based on the distance definition in a rectangular coordinate system, Euclidean distance is determined by taking the square root of the sum of the squared differences between the two points' coordinates. This reflects the direct separation between the two points in space.

[0066] Optionally, the point cloud registration system can be constructed based on the target point cloud data The KD tree is then used to search the target point cloud data using the nearest neighbor search algorithm based on Euclidean distance. Search and key points The N nearest points Composition of specific regions of interest based on keypoints ; As shown in formula (3):

[0067]

[0068] In formula (3), Represents target point cloud data; Indicates that the target point cloud data Constructed KD tree; Indicates that the key point is searched based on the Euclidean distance in the KD tree The set of the nearest N points; R represents the and key points A specific region of interest is formed.

[0069] From the above content, it can be seen that by constructing a point cloud tree, the huge target point cloud data can be represented as a tree structure, which greatly improves the efficiency of searching for the nearest neighbor point. The Euclidean distance is used to calculate the distance between each point in the point cloud tree and the second target point. This method is intuitive and conforms to geometric intuition, ensuring the accuracy of the search results. Combined with the nearest neighbor search algorithm, it can accurately identify the point closest to the key point, significantly improve the calculation efficiency of the matching, reduce the complexity of manual adjustment, and simplify the data processing process while improving data processing efficiency.

[0070] In an optional embodiment, the point cloud registration system first performs a registration operation on the target area and the source point cloud data to obtain an affine transformation matrix, and then performs a transformation operation on the source point cloud data based on the affine transformation matrix to obtain a registration result of the target point cloud data and the source point cloud data.

[0071] Alternatively, rigid registration is a technique commonly used in fields such as image processing, computer vision, and 3D modeling. Its goal is to align one image or point cloud with another using rigid transformations such as translation and rotation. In rigid registration, the shape and size of the objects remain unchanged, only their position and orientation.

[0072] Alternatively, if you need to obtain the affine transformation matrix of the rigid transformation, you can first select the corresponding points of the two point cloud data, and then use these corresponding points to calculate a The affine transformation matrix includes rotation and translation components. Then consider applying transformation, optimizing transformation, scaling and other steps to obtain the required affine transformation matrix and apply it to image processing tasks.

[0073] Optionally, the point cloud registration system obtains keypoints based on After the specific region of interest R (i.e., target area) is obtained, the target point cloud data can be The target area is replaced with the region of interest R, and then the target area and the source point cloud data are rigidly registered. In the registration process, the affine transformation matrix is ​​obtained to obtain the registration result of the target point cloud data and the source point cloud data.

[0074] From the above content, it can be seen that using the region of interest R and the source point cloud data for rigid registration can focus on the region of interest of the target point cloud data to complete the registration process, thereby reducing the interference of noise and redundant information on the registration, which not only improves the registration accuracy, but also improves the processing efficiency of point cloud data.

[0075] In an optional embodiment, the present application also provides another method for determining the target area in the target point cloud data based on the key point, including: the point cloud registration system first calculates the distance between each point in the target point cloud data and the key point, and then takes the point in the target point cloud data whose distance from the key point is less than a preset distance as the target point, and then takes the area covered by the target point as the target area.

[0076] Optionally, the distance (e.g., Euclidean distance or straight-line distance) between each point in the target point cloud and the key point is first calculated. Then, the points in the target point cloud are directly filtered based on a preset distance. If the distance between a point in the target point cloud and the key point is less than the preset distance, the point is considered a target point. If the distance between a point in the target point cloud and the key point is greater than or equal to the preset distance, the point is considered a non-target point. Finally, the point cloud registration system considers all target points and the area covered by the key points as the target area.

[0077] It should be noted that, by taking the points in the target point cloud data whose distance from the key point is less than the preset distance as the target point; and taking the area covered by the target point as the target area, it can be ensured that each point in the target area has a sufficiently strong correlation with the key point, wherein this strong correlation is calibrated by the preset distance. In other words, if the distance between a point and the key point is greater than or equal to the preset distance, it means that the point does not have the set sufficiently strong correlation with the key point; if the distance between a point and the key point is less than the preset distance, it means that the point has the set sufficiently strong correlation with the key point.

[0078] In an optional embodiment, the point cloud registration method described in the present invention can be applied to an optical surface scanning system. Optical surface scanning systems are important auxiliary tools in radiotherapy. They utilize optical technologies such as lasers and structured light to accurately detect and monitor patient surface information. Combined with registration algorithms, they enable real-time monitoring of patient position, respiratory synchronization monitoring, and non-invasive positioning, thereby improving treatment efficacy and patient comfort. In practical applications, the acquired three-dimensional point cloud data of the human body surface often contains a certain amount of redundant data or uneven data distribution. Therefore, users often need to manipulate specific local areas, but traditional methods cannot effectively meet this refined requirement. However, the present invention provides a point cloud registration method based on randomly selected points and diffused to form a region of interest. This method minimizes interference from noise and redundant information (noise and redundant information are demarcated as data outside the region of interest), improving the robustness of the registration. Furthermore, the present invention allows users to perform point cloud registration based on the region of interest, achieving more refined and customized point cloud registration, thus meeting users' needs for precise alignment of specific areas and providing greater application flexibility and practicality.

[0079] It should be noted that the application of the above-mentioned optical surface scanning system is only an example. Those skilled in the art will understand that, in addition to the field of radiotherapy technology, any other scenario that requires point cloud processing or point cloud registration is applicable to the technical solution of the embodiment of this application.

[0080] According to an embodiment of the present application, an embodiment of a point cloud registration device is also provided. Figure 2 is a schematic diagram of an optional point cloud registration device according to an embodiment of the present application, such as Figure 2 As shown, the point cloud registration device includes: a first determining unit 201 , a first processing unit 202 , a second determining unit 203 and a second processing unit 204 .

[0081] Optionally, the first determination unit 201 is used to randomly determine a focus point; the first processing unit 202 is used to take the point in the target point cloud data that is closest to the focus point as a key point; the second determination unit 203 is used to determine a target area in the target point cloud data based on the key point, wherein the key point is located within the target area; the second processing unit 204 is used to align the target point cloud data and the source point cloud data based on the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images.

[0082] As can be seen from the above, the present application reduces the amount of registration calculations and improves the registration efficiency by randomly selecting a point of interest and generating a region of interest (i.e., the target region in the target point cloud data) based on the diffusion of this point of interest, thereby solving the technical problems of high computational complexity and low efficiency of traditional point cloud registration algorithms when processing large-scale point cloud data. The technical solution of the present application can significantly reduce the amount of calculations for point cloud registration, improve the registration speed, and is suitable for large-scale point cloud data processing. Secondly, in practical applications, point cloud data often contains a large amount of noise and redundant information, which makes traditional registration methods insufficient in terms of robustness. However, the present application determines the region of interest and realizes the registration of the target point cloud data and the source point cloud data based on the region of interest, thereby minimizing the interference of noise and redundant information (noise and redundant information are defined as data in the non-region of interest), thereby improving the robustness of the registration.

[0083] Furthermore, this application allows users to perform point cloud registration based on regions of interest, enabling more refined and customized point cloud registration. In many practical applications, users are only interested in specific regions of a point cloud, rather than requiring registration of all the information in the point cloud. The technical solution of this application allows users to specify regions of interest for point cloud registration, thus meeting the user's need for precise alignment of specific regions and providing greater application flexibility and practicality.

[0084] It can be seen that through the technical solution of the present application, the purpose of randomly selecting a point and generating a region of interest based on the diffusion of this point and performing alignment according to the region of interest is achieved, thereby achieving the technical effect of reducing the amount of alignment calculation, improving the alignment efficiency and alignment robustness, and thus solving the technical problems of low computational efficiency and insufficient robustness caused by the redundancy and noise of point cloud data.

[0085] Optionally, the first processing unit 202 includes: a first calculation subunit and a first processing subunit. The first calculation subunit is configured to calculate the Euclidean distance between each point in the target point cloud data and the focus point; and the first processing subunit is configured to select the point in the target point cloud data that has the shortest Euclidean distance to the focus point as the key point.

[0086] Optionally, the second determination unit 203 includes: a second calculation subunit, a first determination subunit, and a second processing subunit. The second calculation subunit is configured to calculate the distance between each point in the target point cloud data, excluding the key point, and the key point; the first determination subunit is configured to determine a target number of points of interest from the target point cloud data based on the distance between each point in the target point cloud data, excluding the key point, and the key point, wherein the distance between the point of interest and the key point is less than the distance between a non-point of interest and the key point; and the second processing subunit is configured to use the area covered by the target number of points of interest as the target area.

[0087] Optionally, the point cloud registration device further includes: a first acquisition subunit, a third calculation subunit, and a fourth calculation subunit. The first acquisition subunit is configured to acquire the number of points in the target point cloud data before determining a target number of points of interest from the target point cloud data based on the distance between each point in the target point cloud data, excluding the key point, and the key point; the third calculation subunit is configured to calculate the product of a preset value and the number of points to obtain first data, wherein the preset value is a value greater than 0 and less than 1; and the fourth calculation subunit is configured to perform rounding calculation on the first data and use the result of the rounding calculation as the target number.

[0088] Optionally, the first determination subunit includes: a first processing module and a second processing module. The first processing module is configured to construct a point cloud tree based on the target point cloud data, wherein the point cloud tree is a binary tree data structure for representing the target point cloud data in the form of the binary tree; and the second processing module is configured to determine a preset number of points in the target point cloud data that are closest to the key point by calculating the Euclidean distance between the points in the point cloud tree and the key point, using a nearest neighbor search algorithm to obtain the preset number of points of interest.

[0089] Optionally, the second processing unit 204 includes a third processing subunit and a fourth processing subunit. The third processing subunit is configured to perform a registration operation on the target area and the source point cloud data to obtain an affine transformation matrix; and the fourth processing subunit is configured to perform a transformation operation on the source point cloud data based on the affine transformation matrix to obtain a registration result between the target point cloud data and the source point cloud data.

[0090] Optionally, the second determination unit 203 includes: a fifth calculation subunit, a fifth processing subunit, and a sixth processing subunit. The fifth calculation subunit is configured to calculate the distance between each point in the target point cloud data and the key point; the fifth processing subunit is configured to select points in the target point cloud data whose distance from the key point is less than a preset distance as target points; and the sixth processing subunit is configured to select an area covered by the target point as the target area.

[0091] According to another aspect of the present application, a computer-readable storage medium is also provided, wherein a computer program is stored in the computer-readable storage medium, wherein when the computer program is run, the device where the computer-readable storage medium is located executes the above-mentioned point cloud registration method.

[0092] According to another aspect of the present application, an electronic device is also provided, wherein the electronic device includes one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the above-mentioned point cloud registration method.

[0093] The above-mentioned embodiments or examples disclosed in this application are not exhaustive, but are only illustrations of some embodiments or examples, and are not intended to be specific limitations on the scope of protection disclosed in this application. In the absence of contradiction, each step in a certain embodiment or example in this application can be implemented as an independent example, and the steps can be arbitrarily combined. For example, the solution after removing some steps in a certain embodiment or example can also be implemented as an independent example, and the order of the steps in a certain embodiment or example can be arbitrarily exchanged. In addition, the optional methods or optional examples in a certain embodiment or example can be arbitrarily combined; in addition, the various embodiments or examples can be arbitrarily combined. For example, some or all of the steps in different embodiments or examples can be arbitrarily combined, and a certain embodiment or example can be arbitrarily combined with the optional methods or optional examples of other embodiments or examples.

[0094] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0095] In the above embodiments of the present application, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.

[0096] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only exemplary. For example, the division of the units can be a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0097] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0098] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0099] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for enabling a computer device (which can be a personal computer, server or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, magnetic disk or optical disk, etc. Various media that can store program code.

[0100] The above is only a preferred embodiment of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.

Claims

1. A point cloud registration method, characterized in that: include: Randomly determine a focus point; The point in the target point cloud data that is closest to the focus point is taken as a key point; Determine a target area in the target point cloud data based on the key point, wherein the key point is located in the target area, and the target area is an area covered by a target number of points of interest; Registering the target point cloud data and the source point cloud data according to the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images; Wherein, determining the target area in the target point cloud data based on the key point includes: calculating the distance between each point in the target point cloud data except the key point and the key point; determining the target number of points of interest from the target point cloud data according to the distance between each point in the target point cloud data except the key point and the key point, wherein the distance between the point of interest and the key point is less than the distance between the non-interest point and the key point; and taking the area covered by the target number of points of interest as the target area.

2. The point cloud registration method according to claim 1, characterized in that: The point in the target point cloud data that is closest to the focus point is taken as a key point, including: Calculating the Euclidean distance between each point in the target point cloud data and the focus point; The point in the target point cloud data with the closest Euclidean distance to the focus point is taken as the key point.

3. The point cloud registration method according to claim 1, characterized in that: Before determining a target number of points of interest from the target point cloud data according to the distance between each point in the target point cloud data except the key point and the key point, the point cloud registration method further includes: Obtaining the number of points in the target point cloud data; Calculate the product of a preset value and the number of points to obtain first data, wherein the preset value is a value greater than 0 and less than 1; A rounding calculation is performed on the first data, and a calculation result of the rounding calculation is used as the target number.

4. The point cloud registration method according to claim 1, characterized in that: Determining a target number of points of interest from the target point cloud data according to the distance between each point in the target point cloud data except the key point and the key point, comprising: Constructing a point cloud tree based on the target point cloud data, wherein the point cloud tree is a data structure in the form of a binary tree, and is used to represent the target point cloud data in the form of the binary tree; By calculating the Euclidean distance between the points in the point cloud tree and the key points, a nearest neighbor search algorithm is used to determine a preset number of points in the target point cloud data that are closest to the key points, and the preset number of points of interest are obtained.

5. The point cloud registration method according to claim 1, characterized in that: The target point cloud data and the source point cloud data are registered according to the target area, including: Performing a registration operation on the target area and the source point cloud data to obtain an affine transformation matrix; Based on the affine transformation matrix, the source point cloud data is transformed to obtain a registration result of the target point cloud data and the source point cloud data.

6. The point cloud registration method according to claim 1, characterized in that: Determining a target area in the target point cloud data based on the key point includes: Calculate the distance between each point in the target point cloud data and the key point; Taking a point in the target point cloud data whose distance from the key point is less than a preset distance as a target point; The area covered by the target point is taken as the target area.

7. A point cloud registration device, characterized in that: include: A first determining unit, used to randomly determine a focus point; A first processing unit, configured to take the point in the target point cloud data that is closest to the focus point as a key point; A second determining unit is used to determine a target area in the target point cloud data based on the key point, wherein the key point is located in the target area, and the target area is an area covered by a target number of points of interest; A second processing unit is used to register the target point cloud data with the source point cloud data according to the target area, wherein the source point cloud data and the target point cloud data are respectively located in different point cloud images; Wherein, the second determination unit includes: a second calculation subunit, used to calculate the distance between each point in the target point cloud data except the key point and the key point; a first determination subunit, used to determine a target number of points of interest from the target point cloud data according to the distance between each point in the target point cloud data except the key point and the key point, wherein the distance between the point of interest and the key point is less than the distance between the non-interest point and the key point; a second processing subunit, used to take the area covered by the target number of points of interest as the target area.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein when the computer program is executed, the device where the computer-readable storage medium is located executes the point cloud registration method according to any one of claims 1 to 6.

9. An electronic device, characterized in that: It includes one or more processors and a memory, wherein the memory is used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the point cloud registration method described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Target distance measurement method and device, electronic equipment and storage medium

    CN112862882A