An Efficient Interactive Point Cloud Offset Correction Method and System
By dynamically loading and processing point cloud data and automatically obtaining and applying deviation correction parameters, efficient point cloud offset correction is achieved, solving the problem of low manual operation efficiency in the existing technology, and improving the accuracy and efficiency of deviation correction.
Patent Information
- Application Number
- CN202211518075.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-29
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2042-11-29
AI Technical Summary
In the prior art, offset correction of point cloud data relies on manual operations, is inefficient and prone to omissions and errors.
By obtaining the point cloud data control point information of the entire trajectory, dynamically load the reference point cloud and the original point cloud to be corrected, save the correspondence between the index of each control point and the original point cloud, select the control point of the same name to obtain the deviation correction parameters, generate the deviation correction task and update the point cloud cache data, and finally correct the deviation of the deviation correction point cloud according to the deviation correction task.
It significantly improves the efficiency and accuracy of point cloud deviation correction, reduces manual operation time and errors, can view the effects before and after correction in real time, and supports repeated deviation correction for the same point cloud.
Smart Images

Figure CN116071252B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical fields of high-precision maps and autonomous driving, and more specifically, to an efficient interactive point cloud offset correction method, system, electronic device, and storage medium. Background Art
[0002] Point cloud is one of the important comparison standards for making high-precision maps, and the accuracy of point cloud data is of great significance for the production of high-precision maps. In the actual process of point cloud data acquisition, due to different installation positions of sensors and various factors such as vibration during the acquisition process, the point cloud data collected at different times has offsets. Therefore, these offsets need to be corrected before making a high-precision map. Currently, the offsets are mainly corrected by loading two corresponding point cloud files and then manually selecting the same-name control points. This method requires constantly opening and closing the point cloud files to be corrected. For a large amount of point cloud data, manual operations may be omitted and the efficiency is very low. Summary of the Invention
[0003] In view of the technical problems existing in the prior art, the present invention provides an efficient interactive point cloud offset correction method and system, which reduce the time for manually opening and closing point clouds and the omissions and errors caused by human errors, and greatly improve the efficiency and accuracy of point cloud offset correction.
[0004] According to a first aspect of the present invention, there is provided an efficient interactive point cloud offset correction method, including:
[0005] Obtaining the control point information of the point cloud data of the entire trajectory, dynamically loading the reference point cloud and the original point cloud to be corrected according to the control point information, and saving the corresponding relationship between each control point index and the original point cloud;
[0006] Selecting the same-name control points of the currently displayed reference point cloud and the original point cloud, obtaining the offset correction parameters between the same-name control points, generating an offset correction task for the corresponding control points according to the offset correction parameters; updating the point cloud cache data to be corrected corresponding to the same-name control points according to the control point index;
[0007] Correcting the point cloud cache data to be corrected according to the offset correction task, and updating the currently displayed original point cloud with the corrected point cloud data.
[0008] Based on the above technical solutions, the present invention can also be improved as follows.
[0009] Optionally, before reading the control point information of the point cloud data of the entire trajectory, parameter configuration is further included, including:
[0010] Setting the maximum number of point clouds to be corrected for display, the maximum number of point cloud caches in a single point cloud cache thread, the number of point cloud cache threads, and the number of point cloud offset correction threads.
[0011] Optionally, select the corresponding control points of the currently displayed reference point cloud and the original point cloud, obtain the rectification parameters between the corresponding control points, generate rectification tasks for the corresponding control points according to the rectification parameters; update the point cloud data cache to be rectified corresponding to the corresponding control points according to the control point index; further include:
[0012] If the number of point clouds to be rectified currently displayed is greater than the maximum point cloud cache quantity in a single point cloud cache thread, cache the point cloud data to be rectified corresponding to the rectification tasks in multiple point cloud cache threads.
[0013] Optionally, the updating the point cloud data cache to be rectified corresponding to the corresponding control points according to the control point index includes:
[0014] Calculate all the names of the point clouds to be rectified that need to be cached currently according to the index of the corresponding control points currently displayed, match them with the names of the point clouds to be rectified that have been cached currently in the point cloud cache thread, and according to the name matching result, in the point cloud cache thread:
[0015] Retain the point cloud data to be rectified with the same name;
[0016] Remove the point cloud data other than the names of the point clouds to be rectified that need to be cached currently;
[0017] Load the point cloud data that is included in the names of the point clouds to be rectified that need to be cached currently and not included in the names of the point clouds to be rectified that have been cached currently.
[0018] According to the second aspect of the present invention, there is provided an efficient interactive point cloud offset correction system, including:
[0019] A comparison module, configured to obtain the control point information of the point cloud data of the entire trajectory, load the reference point cloud and the original point cloud to be rectified according to the control point information, and further configured to save the corresponding relationship between each control point index and the original point cloud;
[0020] A cache and task generation module, configured to select the corresponding control points of the currently displayed reference point cloud and the original point cloud, obtain the rectification parameters between the corresponding control points, generate rectification tasks for the corresponding control points according to the rectification parameters; and further configured to update the point cloud data cache to be rectified corresponding to the corresponding control points according to the control point index;
[0021] An update module, configured to rectify the point cloud data cache to be rectified according to the rectification tasks, and update the currently displayed original point cloud with the rectified point cloud data.
[0022] Optionally, the system further includes:
[0023] A configuration module, configured to set the maximum number of point clouds to be rectified displayed, the maximum point cloud cache quantity in a single point cloud cache thread, the number of point cloud cache threads, and the number of point cloud rectification threads.
[0024] According to a third aspect of the present invention, there is provided an electronic device including a memory and a processor. When the processor executes a computer management program stored in the memory, the steps of the above-mentioned efficient interactive point cloud offset correction method are implemented.
[0025] According to a fourth aspect of the present invention, there is provided a computer-readable storage medium on which a computer management program is stored. When the computer management program is executed by a processor, the steps of the above-mentioned efficient interactive point cloud offset correction method are implemented.
[0026] An efficient interactive point cloud offset correction method, system, electronic device and storage medium provided by the present invention can dynamically load all point clouds on a trajectory, display the point cloud files that need to be corrected according to needs, and at the same time can view the effects before and after correction in real time. It is also possible to repeatedly correct the point cloud at the same location. When all the point clouds on the entire trajectory are corrected, all the point cloud data on the entire trajectory is saved. The present invention can complete the inspection and correction of the point cloud data on the entire trajectory through one operation, reducing the time for manually opening the point cloud files to be corrected one by one and the omissions and errors caused by human errors. By inspecting the entire trajectory, the accuracy of the data can also be guaranteed, significantly improving the efficiency and accuracy of manual correction. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 It is a flowchart of an efficient interactive point cloud offset correction method provided by the present invention;
[0028] Figure 2 It is a schematic diagram of the composition structure of an efficient interactive point cloud offset correction system provided by the present invention;
[0029] Figure 3 It is a schematic diagram of the hardware structure of a possible electronic device provided by the present invention;
[0030] Figure 4 It is a schematic diagram of the hardware structure of a possible computer-readable storage medium provided by the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0031] The following will further describe in detail the specific embodiments of the present invention in conjunction with the drawings and embodiments. The following embodiments are used to illustrate the present invention but are not intended to limit the scope of the present invention.
[0032] Figure 1 It is a flowchart of an efficient interactive point cloud offset correction method provided by the present invention, as Figure 1 shown, the method includes:
[0033] Obtain the control point information of the point cloud data of the entire trajectory, dynamically load the reference point cloud and the original point cloud to be corrected according to the control point information, and save the corresponding relationship between each control point index and the original point cloud;
[0034] Select the same-named control points of the currently displayed reference point cloud and the original point cloud, obtain the correction parameters between the same-named control points, and generate a correction task for the corresponding control points according to the correction parameters; update the point cloud cache data to be corrected corresponding to the same-named control points according to the control point index;
[0035] Correct the point cloud cache data to be corrected according to the correction task, and update the currently displayed original point cloud with the corrected point cloud data.
[0036] It can be understood that based on the defects in the background technology, the embodiments of the present invention propose an efficient interactive point cloud offset correction method.
[0037] The method of the present invention can dynamically load all the point cloud data on the entire trajectory during operation, compare all the original point cloud data to be corrected with the reference point cloud data, display the point cloud files to be corrected as needed, and at the same time, the effects before and after correction can be viewed in real time. The same point cloud can also be corrected repeatedly. When the point cloud of the entire trajectory is corrected, all the point cloud data on the entire trajectory is saved. The method of the present invention can complete the inspection and correction of the point cloud data of the entire trajectory through one operation, reducing the time for manually opening the point cloud files to be corrected one by one and the omissions and errors caused by human mistakes. The accuracy of the data can also be guaranteed by checking the entire trajectory, significantly improving the efficiency and accuracy of manual correction.
[0038] In a possible embodiment, before reading the control point information of the point cloud data of the entire trajectory, parameter configuration is also included, including:
[0039] Set the maximum number of point clouds to be corrected displayed, the maximum number of point cloud caches in a single point cloud cache thread, the number of point cloud cache threads, and the number of point cloud correction threads.
[0040] It can be understood that when comparing and checking the reference point cloud and the original point cloud to be corrected, multiple reference point clouds and the original point cloud corresponding to the same-named control points can be simultaneously displayed on the display unit. When the original point cloud corresponding to a certain control point is updated, the point cloud data corresponding to the next control point can be processed according to the moving direction of the trajectory; multiple point cloud cache threads can be set to cache multiple point cloud data to improve the point cloud cache efficiency; one correction task can correspond to the point cloud correction of one control point, and multiple point cloud cache threads and point cloud correction threads can be synchronized to simultaneously complete the correction tasks corresponding to multiple control points, greatly improving the point cloud correction efficiency.
[0041] In a possible embodiment, the method further includes:
[0042] If the number of point clouds to be corrected currently displayed is greater than the maximum number of point cloud caches in a single point cloud cache thread, the point clouds to be corrected corresponding to the correction task are cached in multiple point cloud cache threads.
[0043] For example, if 5 homologous control points are currently displayed, point cloud caching can be performed simultaneously in 5 point cloud cache threads; if the correction task includes correcting the original point clouds corresponding to these 5 or less than 5 homologous control points, the point clouds to be corrected are found from the cached point cloud data according to the control point index for correction operations. If the storage capacity of a single point cloud cache thread is not sufficient to store these 5 point cloud files to be cached, caching can be performed through multiple point cloud cache threads.
[0044] In a possible embodiment, the updating of the point cloud cache data to be corrected corresponding to the homologous control points according to the control point index includes:
[0045] Calculate all the names of the point clouds to be corrected that need to be cached currently according to the index of the homologous control points currently displayed, form a set of point cloud names to be cached, match all the point cloud names in the set of point cloud names to be cached with the names of the point clouds to be corrected that have been cached currently in the point cloud cache thread, and perform the following operations in the point cloud cache thread according to the name matching result:
[0046] Retain the point cloud data to be corrected with the same name;
[0047] Remove the point cloud data other than the names of the point clouds to be corrected that need to be cached currently, that is, release / delete the point clouds that have been cached but are not included in the set of point cloud names to be cached;
[0048] Load the point cloud data that is included in the names of the point clouds to be corrected that need to be cached currently and not included in the names of the point clouds to be corrected that have been cached currently, that is, cache the point cloud data that is included in the set of point cloud names to be cached but has not been cached yet.
[0049] Through the above steps, the update of the point cloud cache in the point cloud cache thread is realized, and the point cloud correction thread can directly call the cached point cloud data for correction operations according to the correction task.
[0050] As Figure 1 shown, during the implementation processes of the above embodiments, the main thread, the point cloud cache thread, and the point cloud correction thread can be synchronized, and multiple point cloud cache threads and point cloud correction threads can be run simultaneously according to the number of point clouds to be corrected, significantly improving the efficiency of point cloud correction; the point clouds with unsatisfactory correction results can also be repeatedly corrected by moving the point clouds, improving the correction accuracy.
[0051] Now, the present invention is illustrated by a specific operation case.
[0052] (1) Set the maximum number of point clouds to be displayed on the operation interface (max_display_cloud), and set the maximum number of cached point clouds (max_cache_cloud > max_display_cloud).
[0053] (2) Read control point information: Save all control point information on the trajectory, and save the correspondence between control points and the names of point clouds to be rectified (map_index_to_cloud) and the set of all point cloud names (vec_all_cloud_names).
[0054] (3) Perform interface display control: After loading the point cloud for the first time, record the central control point (center_index) of the currently displayed point cloud, the names of the currently displayed point clouds (vec_display_names), and the names of the currently cached point clouds (vec_cache_names). When the point cloud moves, the central control point center_index of the currently displayed point cloud will change. Based on the changed central control point index (new_center_index), the name of the central point cloud can be found. Combining with the maximum number of displayed point clouds (max_display_cloud), the new names of the displayed point clouds can be found in the set of all point cloud names (vec_all_cloud_names). By comparing with the currently displayed point cloud names (vec_display_names), the names of the point clouds that need to be loaded in the point cloud caching thread and the names of the point clouds that need to be unloaded can be found. Through the point cloud names, the corresponding point clouds can be found in the cached point clouds and then the point clouds to be displayed can be loaded. At the same time, the corresponding point clouds are unloaded according to the point cloud names to achieve the update of the cached point clouds.
[0055] (4) Manage cached point clouds: To ensure that the loaded point clouds are in the cache, we always ensure that the currently displayed point cloud is at the center of the cached point clouds. In this way, when the currently displayed point cloud changes, all the point clouds that should be cached can be found according to the name of the central point cloud being displayed. Then, by comparing with the currently cached point clouds (vec_cache_names), the names of the point clouds that need to be read and the names of the point clouds that need to be released can be found.
[0056] (5) Manage point cloud rectification / updating: Maintain a point cloud rectification / updating task queue. When a rectification task is detected, take out the task parameters, call the point cloud update algorithm to adjust and rectify the cached point cloud data, and send the rectified point cloud data to the interface for display to replace the original point cloud data displayed on the interface in real time, so that the operator can check whether the update effect is satisfactory. If the rectification effect is not satisfactory, rectification can be performed again.
[0057] Figure 2 The structure diagram of an efficient interactive point cloud offset correction system provided by an embodiment of the present invention is as follows. Figure 2 As shown in the figure, an efficient interactive point cloud offset correction system includes a configuration module, a comparison module, a cache and task generation module, and an update module, where:
[0058] The configuration module is used to set the maximum number of point clouds to be corrected for display, the maximum number of point cloud caches in a single point cloud cache thread, the number of point cloud cache threads, and the number of point cloud correction threads.
[0059] The comparison module is used to obtain the control point information of the point cloud data of the entire trajectory, load the reference point cloud and the original point cloud to be corrected according to the control point information, and is also used to save the corresponding relationship between each control point index and the original point cloud.
[0060] The cache and task generation module is used to select the same-name control points of the currently displayed reference point cloud and the original point cloud, obtain the offset correction parameters between the same-name control points, and generate offset correction tasks for the corresponding control points according to the offset correction parameters; it is also used to update the point cloud cache data to be corrected corresponding to the same-name control points according to the control point index.
[0061] The update module is used to correct the point cloud cache data to be corrected according to the offset correction task, and update the currently displayed original point cloud with the corrected point cloud data.
[0062] It can be understood that an efficient interactive point cloud offset correction system provided by the present invention corresponds to the efficient interactive point cloud offset correction method provided by the foregoing embodiments. The relevant technical features of the efficient interactive point cloud offset correction system can refer to the relevant technical features of the efficient interactive point cloud offset correction method, which will not be elaborated here.
[0063] Please refer to Figure 3 , Figure 3 which is the schematic diagram of an embodiment of an electronic device provided by an embodiment of the present invention. As Figure 3 shown, an embodiment of the present invention provides an electronic device 300, including a memory 310, a processor 320, and a computer program 311 stored on the memory 310 and executable on the processor 320. When the processor 320 executes the computer program 311, the following steps are implemented:
[0064] Obtain the control point information of the point cloud data of the entire trajectory, dynamically load the reference point cloud and the original point cloud to be corrected according to the control point information, and save the corresponding relationship between each control point index and the original point cloud.
[0065] Select the corresponding control points of the currently displayed reference point cloud and the original point cloud, obtain the rectification parameters between the corresponding control points, generate rectification tasks for the corresponding control points according to the rectification parameters; update the point cloud cache data to be rectified corresponding to the corresponding control points according to the control point index;
[0066] Rectify the point cloud cache data to be rectified according to the rectification tasks, and update the original point cloud currently displayed with the rectified point cloud data.
[0067] Please refer to Figure 4 , Figure 4 which is a schematic diagram of an embodiment of a computer-readable storage medium provided by the present invention. As Figure 4 shown, this embodiment provides a computer-readable storage medium 400, on which a computer program 411 is stored. When the computer program 411 is executed by a processor, the following steps are implemented:
[0068] Obtain the control point information of the point cloud data of the entire trajectory, dynamically load the reference point cloud and the original point cloud to be rectified according to the control point information, and save the corresponding relationship between each control point index and the original point cloud;
[0069] Select the corresponding control points of the currently displayed reference point cloud and the original point cloud, obtain the rectification parameters between the corresponding control points, generate rectification tasks for the corresponding control points according to the rectification parameters; update the point cloud cache data to be rectified corresponding to the corresponding control points according to the control point index;
[0070] Rectify the point cloud cache data to be rectified according to the rectification tasks, and update the original point cloud currently displayed with the rectified point cloud data.
[0071] An efficient interactive point cloud offset correction method, system, electronic device and storage medium provided by the embodiments of the present invention can dynamically load all the point clouds on a trajectory, display the point cloud files to be rectified according to needs, and at the same time can view the effects before and after rectification in real time, and can also rectify the same point cloud repeatedly. When all the point clouds on the entire trajectory are rectified, save all the point cloud data on the entire trajectory. The present invention can complete the inspection and rectification of the point cloud data of the entire trajectory through one operation, reduce the time for manually opening the point cloud files to be rectified one by one and the omissions and errors caused by human errors, and can also ensure the accuracy of the data through the inspection of the entire trajectory, significantly improving the efficiency and accuracy of manual rectification.
[0072] It should be noted that in the above embodiments, the descriptions of each embodiment have their own emphases. For the parts not detailedly described in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0073] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memory, CD-ROM, optical memory, etc.) that contain computer-usable program code.
[0074] The present invention is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present invention. It should be understood that each flow and / or block in the flowchart and / or block diagram, and the combination of flows and / or blocks in the flowchart and / or block diagram, can be realized by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded computer, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate means for realizing the functions specified in one Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.
[0075] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing devices to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including instruction means that realizes the functions specified in one Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.
[0076] These computer program instructions can also be loaded onto a computer or other programmable data processing devices, such that a series of operation steps are executed on the computer or other programmable devices to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable devices provide steps for realizing the functions specified in one Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.
[0077] Although the preferred embodiments of the present invention have been described, those skilled in the art can make additional changes and modifications to these embodiments once they learn the basic creative concepts. Therefore, the appended claims are intended to be construed as including the preferred embodiments and all changes and modifications that fall within the scope of the present invention.
[0078] Obviously, those skilled in the art can make various modifications and variations to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention is also intended to include these modifications and variations.
Claims
1. An efficient interactive point cloud offset correction method, characterized in that Including: Obtain the point cloud data control point information of the entire trajectory, dynamically load the reference point cloud and the original point cloud to be corrected according to the control point information, and save the corresponding relationship between each control point index and the original point cloud; Select the homologous control points of the currently displayed reference point cloud and the original point cloud, obtain the correction parameters between the homologous control points, and generate correction tasks for the corresponding control points according to the correction parameters; Update the point cloud cache data to be corrected corresponding to the homologous control points according to the control point index; Correct the point cloud cache data to be corrected according to the correction task, and update the currently displayed original point cloud with the corrected point cloud data.
2. An efficient interactive point cloud offset correction method according to claim 1, characterized in that Before reading the point cloud data control point information of the entire trajectory, parameter configuration is also included, including: Set the maximum number of point clouds to be corrected for display, the maximum number of point cloud caches in a single point cloud cache thread, the number of point cloud cache threads, and the number of point cloud correction threads.
3. An efficient interactive point cloud offset correction method according to claim 1 or 2, characterized in that, The step of selecting the homologous control points of the currently displayed reference point cloud and the original point cloud, obtaining the correction parameters between the homologous control points, and generating correction tasks for the corresponding control points according to the correction parameters; Update the point cloud cache data to be corrected corresponding to the homologous control points according to the control point index; Also including: If the number of point clouds to be corrected currently displayed is greater than the maximum number of point cloud caches in a single point cloud cache thread, then cache the point cloud data to be corrected corresponding to the correction task in multiple point cloud cache threads.
4. An efficient interactive point cloud offset correction method according to claim 1, characterized in that, The step of updating the point cloud cache data to be corrected corresponding to the homologous control points according to the control point index includes: Calculate all the names of the point clouds to be corrected that need to be cached currently according to the currently displayed homologous control point index, match them with the names of the point clouds to be corrected that have been cached in the point cloud cache thread currently, and according to the name matching result, in the point cloud cache thread: Retain the point cloud data to be corrected with the same name; Remove the point cloud data other than the names of the point clouds to be corrected that need to be cached currently; Load the point cloud data that is included in the names of the point clouds to be corrected that need to be cached currently and not included in the names of the point clouds to be corrected that have been cached currently.
5. An efficient interactive point cloud offset correction system, characterized in that, Including: A comparison module, used to obtain the point cloud data control point information of the entire trajectory, load the reference point cloud and the original point cloud to be corrected according to the control point information, and also used to save the corresponding relationship between each control point index and the original point cloud; A cache and task generation module, used to select the homologous control points of the currently displayed reference point cloud and the original point cloud, obtain the correction parameters between the homologous control points, and generate correction tasks for the corresponding control points according to the correction parameters; also used to update the point cloud cache data to be corrected corresponding to the homologous control points according to the control point index; An update module, used to correct the point cloud cache data to be corrected according to the correction task, and update the currently displayed original point cloud with the corrected point cloud data.
6. An efficient interactive point cloud offset correction system according to claim 5, characterized in that, Also including: A configuration module, used to set the maximum number of point clouds to be corrected for display, the maximum number of point cloud caches in a single point cloud cache thread, the number of point cloud cache threads, and the number of point cloud correction threads.
7. An electronic device, characterized in that, Including a memory and a processor, when the processor executes the computer management type program stored in the memory, it realizes the steps of an efficient interactive point cloud offset correction method as described in any one of claims 1-4.
8. A computer-readable storage medium, characterized in that, A computer management program is stored thereon, and when the computer management program is executed by a processor, the steps of an efficient interactive point cloud offset correction method as described in any one of claims 1-4 are implemented.
Citation Information
Patent Citations
Point cloud correction method and device of laser scanner and storage medium
CN113487494A
Full-automatic point cloud data offset correction method and system
CN114155168A