A point cloud data processing method, device and electronic equipment
By acquiring feature points from low-precision and high-precision point cloud data, determining the rotation and translation matrices, and using the iterative nearest point algorithm for matching, the complexity and large data volume of converting low-precision point cloud data into high-precision point cloud data are solved, achieving efficient conversion.
Patent Information
- Application Number
- CN202210885738.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-26
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2042-07-26
AI Technical Summary
In existing technologies, algorithms for converting low-precision point cloud data into high-precision point cloud data are complex and involve large amounts of data. Traditional methods are not effective in complex environments, and deep learning matching schemes are slow to iterate and involve large amounts of data.
By acquiring specific feature points from low-precision and high-precision point cloud data, determining the rotation and translation matrices, using the iterative nearest point algorithm for matching, and combining the rotation and translation matrices to transform the low-precision point cloud data, high-precision point cloud data is generated.
This invention enables the simple and efficient conversion of low-precision point cloud data into high-precision point cloud data, solving the problems of complex algorithms and large data volume, and improving the efficiency of point cloud data processing.
Smart Images

Figure CN115272635B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data processing technology, and in particular to a method, apparatus, and electronic device for processing point cloud data. Background Technology
[0002] With the informatization reform of the power grid and the continuous advancement of the "human patrol + machine patrol" operation and maintenance inspection mode, the workload of data processing is increasing. The accumulated point cloud models for reconstructing related line corridors are also diverse. How to reuse point cloud models with varying quality has become an increasingly serious problem. At the same time, the accuracy of point cloud models is also different. To address this, high-quality point clouds are matched with low-quality point clouds.
[0003] Currently, most matching methods employ iterative nearest-point matching, feature point extraction matching, and deep learning matching. Traditional methods such as ICP matching and feature point extraction matching are not very effective for complex railway corridors, while deep learning matching methods suffer from slow iterative models and require large amounts of data for complex railway corridors. Summary of the Invention
[0004] This invention provides a method, apparatus, and electronic device for processing point cloud data, so as to convert low-precision point cloud data into high-precision point cloud data.
[0005] According to one aspect of the present invention, a method for processing point cloud data is provided, the method comprising:
[0006] Acquire the point cloud data of the first insulator and the first tower from the low-precision point cloud data, and the point cloud data of the second insulator and the second tower from the high-precision point cloud data;
[0007] Based on the point cloud data of the first insulator, the point cloud data of the first tower, the point cloud data of the second insulator, and the point cloud data of the second tower, the rotation matrix and the translation matrix are determined, and the low-precision point cloud data are processed based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected.
[0008] The rotation and translation matrix is determined based on the matching result between the point cloud data to be corrected and the high-precision point cloud data, and the point cloud data to be corrected is processed based on the rotation and translation matrix to obtain the target point cloud data.
[0009] According to another aspect of the present invention, a point cloud data processing apparatus is provided, the apparatus comprising:
[0010] The point cloud acquisition module is used to acquire point cloud data of the first insulator and the first tower from low-precision point cloud data, and point cloud data of the second insulator and the second tower from high-precision point cloud data.
[0011] The point cloud to be corrected determination module is used to determine the rotation matrix and translation matrix based on the first insulator point cloud data, the first tower point cloud data, the second insulator point cloud data and the second tower point cloud data, and to process the low-precision point cloud data based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected.
[0012] The target point cloud determination module is used to determine the rotation and translation matrix based on the matching result between the point cloud data to be corrected and the high-precision point cloud data, and to process the point cloud data to be corrected based on the rotation and translation matrix to obtain the target point cloud data.
[0013] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:
[0014] At least one processor;
[0015] and a memory communicatively connected to the at least one processor;
[0016] The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to perform the point cloud data processing method according to any embodiment of the present invention.
[0017] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the point cloud data processing method according to any embodiment of the present invention.
[0018] The technical solution of this invention acquires first insulator point cloud data and first tower point cloud data from low-precision point cloud data, and second insulator point cloud data and second tower point cloud data from high-precision point cloud data. Based on these data, a rotation matrix and a translation matrix are determined. The low-precision point cloud data are then processed using the translation and rotation matrices to obtain point cloud data to be corrected. Finally, a rotation and translation matrix is determined based on the matching result between the point cloud data to be corrected and the high-precision point cloud data. This process is then used to process the point cloud data to be corrected to obtain the target point cloud data. This solves the problems of complex algorithms and large data volumes in existing technologies for converting low-precision point clouds to high-precision point clouds, and achieves a simple method for converting low-precision point clouds to high-precision point clouds.
[0019] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0020] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 This is a flowchart illustrating a point cloud data processing method provided in Embodiment 1 of the present invention;
[0022] Figure 2 This is a schematic diagram of the structure of a point cloud data processing device provided in Embodiment 2 of the present invention;
[0023] Figure 3 A schematic diagram of an electronic device that can be used to implement embodiments of the present invention is shown. Detailed Implementation
[0024] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0025] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0026] Example 1
[0027] Figure 1This is a flowchart illustrating a point cloud data processing method according to Embodiment 1 of the present invention. This embodiment is applicable to any situation requiring the conversion of low-precision point cloud data into high-precision point cloud data. The method can be executed by a point cloud data processing device, which can be implemented in hardware and / or software. This point cloud device can be configured on a mobile terminal or a PC. Figure 1 As shown, the method includes:
[0028] S110. Acquire the point cloud data of the first insulator and the first tower from the low-precision point cloud data, and the point cloud data of the second insulator and the second tower from the high-precision point cloud data.
[0029] Among them, low-precision point cloud data can be understood as a low-precision point cloud dataset of the line corridor, the first insulator point cloud data can be understood as the low-precision point cloud data corresponding to the insulator, and the first tower point cloud data can be understood as the low-precision point cloud data corresponding to the tower; high-precision point cloud data can be understood as a high-precision point cloud dataset of the line corridor, the second insulator point cloud data can be understood as the high-precision point cloud data corresponding to the insulator, and the second tower point cloud data can be understood as the high-precision point cloud data corresponding to the tower.
[0030] It is understandable that the line corridor includes poles and insulators. Both low-precision point cloud data and high-precision point cloud data are point cloud data corresponding to the line corridor. Accordingly, the low-precision point cloud data contains low-precision point cloud data corresponding to insulators and poles, and the high-precision point cloud data contains high-precision point cloud data corresponding to insulators and poles.
[0031] Specifically, point cloud extraction algorithms can be used to extract low-precision point cloud data for the first insulator and the first tower from low-precision point cloud data, and to extract point cloud data for the second insulator and the second tower from high-precision point cloud data. Optionally, a corresponding deep learning semantic analysis model can be pre-trained to segment and extract point cloud data, thereby extracting point cloud data for the first insulator, the first tower, the second insulator, and the second tower from both low-precision and high-precision point cloud data.
[0032] Based on the above technical solution, before acquiring the first insulator point cloud data and the first tower point cloud data in the low-precision point cloud data and the second insulator point cloud data and the second tower point cloud data in the high-precision point cloud data, the method further includes: acquiring low-precision point cloud data based on oblique photography technology and pre-acquiring high-precision point cloud data corresponding to the low-precision point cloud data.
[0033] Among them, oblique photography can be understood as a technique used to acquire point cloud data.
[0034] Specifically, the image data of the route corridor collected by the drone can be reconstructed into low-precision 3D point cloud data through oblique photography technology; high-precision point cloud data of the route corridor can be obtained from pre-stored data. This point cloud data is obtained by relevant personnel through previous shooting with cameras equipped with real-time kinematic (RTK) positioning.
[0035] S120. Determine the rotation matrix and translation matrix based on the point cloud data of the first insulator, the point cloud data of the first tower, the point cloud data of the second insulator, and the point cloud data of the second tower. Process each low-precision point cloud data based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected.
[0036] Among them, the point cloud data to be calibrated can be understood as the point cloud data that needs to be calibrated for accuracy.
[0037] Specifically, based on the point cloud data of the first insulator, the point cloud data of the first tower, the point cloud data of the second insulator, and the point cloud data of the second tower, the rotation matrix and translation matrix can be determined by the corresponding algorithm. The low-precision point cloud data can then be transformed based on the rotation matrix and translation matrix, and the transformed low-precision point cloud data can be used as the point cloud data to be corrected.
[0038] Based on the above technical solution, the step of determining the rotation matrix and translation matrix according to the first insulator point cloud data, the first tower point cloud data, the second insulator point cloud data, and the second tower point cloud data includes: determining the rotation matrix based on the first tower point cloud data and the second tower point cloud data; and determining the translation matrix based on the first insulator point cloud data, the second insulator point cloud data, and the rotation matrix.
[0039] Among them, the rotation matrix can be understood as a mathematical matrix, and the translation matrix can also be understood as a mathematical matrix.
[0040] Specifically, based on the point cloud data of the first and second towers, the rotation matrix of the two point cloud data sets can be determined, which represents the difference between the first tower point cloud data (with lower accuracy) and the second tower point cloud data (with higher accuracy) in the rotation direction. Furthermore, based on the first insulator point cloud data, the second insulator point cloud data, and the rotation matrix obtained above, a translation matrix is determined using a corresponding algorithm.
[0041] Based on the above technical solution, determining the rotation matrix based on the first tower point cloud data and the second tower point cloud data includes: obtaining a first tower image based on the projection of the first tower point cloud data onto a first preset plane; obtaining a second tower image based on the projection of the second tower point cloud data onto the first preset plane; and determining the rotation matrix based on feature matching between the first tower image and the second tower image.
[0042] It should be noted that the point cloud data in the embodiments of the present invention includes color values of three colors: red (R), green (G), and blue (B).
[0043] Wherein, the first preset plane is the XOY plane in the spatial rectangular coordinate system, the first tower image can be understood as the image corresponding to the first tower point cloud data, and the second tower image can be understood as the image corresponding to the second tower point cloud data.
[0044] Specifically, the point cloud data of the first tower, containing color value information, can be projected onto the XOY plane in a spatial rectangular coordinate system to obtain an image, namely the first tower image; the point cloud data of the second tower, containing color information, can be projected onto the XOY plane in a spatial rectangular coordinate system to obtain another image, namely the second tower image. Feature points are extracted from the first and second tower images, and similarity analysis is performed to determine multiple corresponding feature points in the first and second tower images. Based on the coordinates and vector information of these feature points, a rotation matrix is determined.
[0045] Based on the above technical solution, determining the translation matrix based on the first insulator point cloud data, the second insulator point cloud data, and the rotation matrix includes: obtaining the first insulator point cloud data to be used based on the product of the first insulator point cloud data and the rotation matrix; and determining the translation matrix based on the projection image of the first insulator point cloud data to be used on a second preset plane and the projection image of the second insulator point cloud data on the second preset plane.
[0046] Wherein, the first preset plane is the XOZ plane in the spatial rectangular coordinate system, and the point cloud data of the first insulator to be used can be understood as the point cloud data obtained by multiplying the point cloud data of the first insulator by the rotation matrix.
[0047] Specifically, based on the rotation matrix determined above, multiplying the low-precision first insulator point cloud data by the rotation matrix yields new point cloud data, which is used as the first insulator point cloud data to be used. Further, the first and second insulator point cloud data to be used are projected onto the XOZ plane in a Cartesian coordinate system, respectively, to obtain two images: one corresponding to the first insulator point cloud data and the other corresponding to the second insulator point cloud data. By extracting feature points from the two images and performing similarity analysis, multiple corresponding feature points in the two images are identified. Based on the coordinates and vector information of these multiple feature points, a translation matrix is determined.
[0048] Based on the above technical solution, the step of processing the low-precision point cloud data based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected includes: multiplying the low-precision point cloud data by the translation matrix and the rotation matrix to obtain the point cloud data to be corrected.
[0049] Specifically, the low-precision point cloud data can be multiplied by a translation matrix and then by a rotation matrix to convert the low-precision point cloud data and obtain new point cloud data, which can then be used as the point cloud data to be corrected.
[0050] S130. Determine the rotation and translation matrix based on the matching result between the point cloud data to be corrected and the high-precision point cloud data, and process the point cloud data to be corrected based on the rotation and translation matrix to obtain the target point cloud data.
[0051] The rotation and translation matrix can be understood as the mathematical matrix obtained through the point cloud matching algorithm, and the target point cloud data can be understood as the high-precision point cloud data that is finally obtained and corresponds to the low-precision point cloud data.
[0052] Specifically, a point cloud matching algorithm can be used to match the point cloud data to be corrected with high-precision point cloud data to determine the rotation and translation matrix between them. Further, the point cloud data to be corrected is multiplied by the rotation and translation matrix to obtain new point cloud data, i.e., the target point cloud data. The advantage of this is that it can convert low-precision point cloud data into high-precision point cloud data.
[0053] Based on the above technical solution, the step of determining the rotation and translation matrix according to the matching result of the point cloud data to be corrected and the high-precision point cloud data, and processing the point cloud data to be corrected based on the rotation and translation matrix to obtain the target point cloud data, includes: matching the point cloud data to be corrected and the high-precision point cloud data based on the iterative nearest point algorithm to determine the rotation and translation matrix; decomposing the rotation and translation matrix to obtain the rotation angle and translation amount of the rotation matrix; if the rotation angle or the translation amount is consistent with the corresponding preset threshold, then the rotation matrix is determined as the target rotation and translation matrix; multiplying the point cloud data to be corrected and the target rotation matrix to obtain the target point cloud data.
[0054] Among them, the Iterative Closest Point (ICP) algorithm is a point cloud matching algorithm. The preset threshold may include a pre-set angle threshold and translation threshold. The target rotation and translation matrix can be understood as a matrix used to convert the point cloud data to be corrected into high-precision point cloud data.
[0055] Specifically, the ICP algorithm can be used to match the point cloud data to be corrected with high-precision point cloud data to obtain a rotation and translation matrix. This matrix is then converted into a corresponding vector, and its rotation angles along the X, Y, and Z axes are decomposed. Simultaneously, its translation amounts in the X, Y, and Z directions are analyzed. If the rotation angles along the X, Y, and Z axes are all less than preset angle thresholds, and the translation amounts in the X, Y, and Z directions are all less than preset translation thresholds, then isomorphizing this matrix can convert the point cloud data to be corrected into high-precision point cloud data, and this matrix can be used as the target matrix. Based on this, multiplying the point cloud data to be corrected by the target rotation and translation matrix yields the target point cloud data.
[0056] For example, the preset thresholds include a pre-set angle threshold and a translation threshold, where the angle threshold is 1° and the translation threshold is 0.1. The point cloud data to be calibrated, IorT, and the high-precision point cloud data, In, are matched using the ICP matching method to obtain a 16-bit rotation and translation matrix Mtr. The rotation and translation matrix Mtr is then decomposed to extract the corresponding rotation angles θ of the model along the X, Y, and Z axes. x θ y θ z The value is analyzed, and the translation Δ in the X, Y, and Z directions is also determined. x Δ y Δ z If Δ x Δ y Δ z If the value is less than 0.1, θ x θ y θ zIf the value is less than 1°, then the rotation and translation matrix Mtr is the target rotation and translation matrix. Furthermore, multiplying the point cloud data IorT to be calibrated by the matrix Mtr yields new point cloud data, i.e., the target point cloud data.
[0057] Based on the above technical solution, if the rotation angle or the translation amount is inconsistent with the corresponding preset threshold, the determination frequency of the rotation and translation matrix is obtained, and the target point cloud data is determined based on the determination frequency.
[0058] Here, the determined frequency can be understood as the determined frequency of the rotation and translation matrix.
[0059] Specifically, if the rotation angle or the translation amount is inconsistent with the corresponding preset threshold (i.e., the rotation angle is greater than the preset angle or the translation amount is greater than the preset translation amount), it indicates that the obtained rotation and translation matrix does not meet the requirements, and a new rotation and translation matrix needs to be determined, i.e., ICP matching needs to be performed again. Based on this frequency, it is determined whether ICP matching needs to continue or other operations need to be performed to obtain the target point cloud data.
[0060] Based on the above technical solution, if the determination frequency of the rotation and translation matrix is less than a preset value, the point cloud data to be corrected is re-matched with the high-precision point cloud to obtain the target point cloud data; if the determination frequency of the rotation and translation matrix is greater than a preset number, the low-precision point cloud data and the high-precision point cloud data are downsampled or denoised, and the target point cloud data is obtained based on the processed low-precision point cloud data to be used and the high-precision point cloud data to be used.
[0061] Here, "low-precision point cloud data to be used" can be understood as point cloud data obtained after downsampling or noise reduction of the point cloud data to be calibrated, and "high-precision point cloud data to be used" can be understood as point cloud data obtained after downsampling or noise reduction of the high-precision point cloud data. The preset number of iterations can be a pre-set number, such as 3 or 10.
[0062] Specifically, if the rotation and translation matrix, after decomposition, is inconsistent with a preset threshold, the matching of the point cloud data to be corrected and the high-precision point cloud data is repeated. If the number of matching attempts reaches a preset value and a suitable target rotation and translation matrix is still not determined, it indicates that there is a problem with both the low-precision and high-precision point cloud data, requiring noise reduction or sampling to remove discrete points and reduce the data volume. The processed low-precision point cloud data is used as the low-precision point cloud data to be used, and the processed high-precision point cloud data is used as the high-precision point cloud data to be used. Further, the low-precision point cloud data to be used and the high-precision point cloud data to be used are processed in the same way as the low-precision point cloud data and high-precision point cloud data described above to determine the rotation matrix, translation matrix, and rotation and translation matrix, finally obtaining the target point cloud data. The specific implementation method is not described in detail here, as it is the same as the processing method for the low-precision point cloud data and high-precision point cloud data described above.
[0063] The technical solution of this invention acquires first insulator point cloud data and first tower point cloud data from low-precision point cloud data, and second insulator point cloud data and second tower point cloud data from high-precision point cloud data. Based on these data, a rotation matrix and a translation matrix are determined. The low-precision point cloud data are then processed using the translation and rotation matrices to obtain point cloud data to be corrected. Finally, a rotation and translation matrix is determined based on the matching result between the point cloud data to be corrected and the high-precision point cloud data. This process is then used to process the point cloud data to be corrected to obtain the target point cloud data. This solves the problems of complex algorithms and large data volumes in existing technologies for converting low-precision point clouds to high-precision point clouds, and achieves a simple method for converting low-precision point clouds to high-precision point clouds.
[0064] Example 2
[0065] Figure 2 This is a schematic diagram of a point cloud data processing device provided in Embodiment 2 of the present invention. Figure 2 As shown, the device includes:
[0066] The point cloud acquisition module 210 is used to acquire point cloud data of the first insulator and the first tower from low-precision point cloud data, and point cloud data of the second insulator and the second tower from high-precision point cloud data.
[0067] The point cloud to be corrected determination module 220 is used to determine the rotation matrix and translation matrix based on the first insulator point cloud data, the first tower point cloud data, the second insulator point cloud data and the second tower point cloud data, and to process the low-precision point cloud data based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected.
[0068] The target point cloud determination module 230 is used to determine the rotation and translation matrix based on the matching result between the point cloud data to be corrected and the high-precision point cloud data, and to process the point cloud data to be corrected based on the rotation and translation matrix to obtain the target point cloud data.
[0069] Optionally, the point cloud data processing device further includes:
[0070] The oblique photography module is used to acquire low-precision point cloud data based on oblique photography technology, as well as to pre-acquire high-precision point cloud data corresponding to the low-precision point cloud data.
[0071] Optionally, the point cloud determination module 220 includes:
[0072] A rotation matrix determination module is used to determine the rotation matrix based on the first tower point cloud data and the second tower point cloud data;
[0073] The translation matrix determination module is used to determine the translation matrix based on the first insulator point cloud data, the second insulator point cloud data, and the rotation matrix.
[0074] Optionally, the rotation matrix determination module includes:
[0075] The first tower image acquisition unit is used to obtain a first tower image based on the projection of the first tower point cloud data onto a first preset plane; wherein, the first preset plane is the XOY plane in a spatial rectangular coordinate system;
[0076] The second tower image acquisition unit is used to obtain the second tower image based on the projection of the second tower point cloud data onto a first preset plane;
[0077] The rotation matrix determination unit is used to determine the rotation matrix based on feature matching between the first tower image and the second tower image.
[0078] Optionally, the translation matrix determination module includes:
[0079] The first insulator point cloud data determination unit is used to obtain the first insulator point cloud data to be used based on the product of the first insulator point cloud data and the rotation matrix;
[0080] The translation matrix determination unit is used to determine the translation matrix based on the projection image of the first insulator point cloud data to be used on a second preset plane and the projection image of the second insulator point cloud data on the second preset plane; wherein, the first preset plane is the XOZ plane in a spatial rectangular coordinate system.
[0081] Optionally, the point cloud determination module 220 further includes:
[0082] The point cloud data determination unit is used to multiply the low-precision point cloud data by the translation matrix and the rotation matrix to obtain the point cloud data to be corrected.
[0083] Optionally, the target point cloud determination module 230 includes:
[0084] The rotation and translation matrix determination module is used to match the point cloud data to be corrected with the high-precision point cloud data based on the iterative nearest point algorithm to determine the rotation and translation matrix.
[0085] The target rotation and translation moment determination module is used to decompose the rotation and translation matrix to obtain the rotation angle and translation amount of the rotation matrix. If the rotation angle or the translation amount is consistent with the corresponding preset threshold, the rotation matrix is determined as the target rotation and translation matrix.
[0086] The target point cloud data determination module is used to multiply the point cloud data to be corrected by the target rotation matrix to obtain the target point cloud data.
[0087] Optionally, the target point cloud determination module 230 further includes:
[0088] The frequency acquisition module is used to acquire the determined frequency of the rotation and translation matrix if the rotation angle or the translation amount is inconsistent with the corresponding preset threshold, and to determine the target point cloud data based on the determined frequency.
[0089] Optionally, the frequency acquisition module includes:
[0090] The frequency comparison unit is used to re-match the point cloud data to be corrected with the high-precision point cloud if the determination frequency of the rotation and translation matrix is less than a preset value, so as to obtain the target point cloud data.
[0091] The processing unit is configured to perform downsampling or noise reduction processing on the low-precision point cloud data and high-precision point cloud data if the determination frequency of the rotation and translation matrix is greater than a preset number, and obtain the target point cloud data based on the processed low-precision point cloud data to be used and high-precision point cloud data to be used.
[0092] The technical solution of this invention acquires first insulator point cloud data and first tower point cloud data from low-precision point cloud data, and second insulator point cloud data and second tower point cloud data from high-precision point cloud data. Based on these data, a rotation matrix and a translation matrix are determined. The low-precision point cloud data are then processed using the translation and rotation matrices to obtain point cloud data to be corrected. Finally, a rotation and translation matrix is determined based on the matching result between the point cloud data to be corrected and the high-precision point cloud data. This process is then used to process the point cloud data to be corrected to obtain the target point cloud data. This solves the problems of complex algorithms and large data volumes in existing technologies for converting low-precision point clouds to high-precision point clouds, and achieves a simple method for converting low-precision point clouds to high-precision point clouds.
[0093] The point cloud data processing apparatus provided in the embodiments of the present invention can execute the point cloud data processing method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the method.
[0094] Example 3
[0095] Figure 3 A schematic diagram of an electronic device 30 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0096] like Figure 3 As shown, the electronic device 30 includes at least one processor 31 and a memory, such as a read-only memory (ROM) 32 or a random access memory (RAM) 33, communicatively connected to the at least one processor 31. The memory stores computer programs executable by the at least one processor. The processor 31 can perform various appropriate actions and processes based on the computer program stored in the ROM 32 or loaded from storage unit 38 into the RAM 33. The RAM 33 can also store various programs and data required for the operation of the electronic device 30. The processor 31, ROM 32, and RAM 33 are interconnected via a bus 34. An input / output (I / O) interface 35 is also connected to the bus 34.
[0097] Multiple components in electronic device 30 are connected to I / O interface 35, including: input unit 36, such as keyboard, mouse, etc.; output unit 37, such as various types of monitors, speakers, etc.; storage unit 38, such as disk, optical disk, etc.; and communication unit 39, such as network card, modem, wireless transceiver, etc. Communication unit 39 allows electronic device 30 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0098] Processor 31 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 31 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 31 performs the various methods and processes described above, such as point cloud data processing methods.
[0099] In some embodiments, the point cloud data processing method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 38. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 30 via ROM 32 and / or communication unit 39. When the computer program is loaded into RAM 33 and executed by processor 31, one or more steps of the point cloud data processing method described above may be performed. Alternatively, in other embodiments, processor 31 may be configured to perform the point cloud data processing method by any other suitable means (e.g., by means of firmware).
[0100] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0101] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0102] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0103] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0104] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0105] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0106] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0107] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A method for processing point cloud data, characterized in that, include: Acquire the point cloud data of the first insulator and the first tower from the low-precision point cloud data, and the point cloud data of the second insulator and the second tower from the high-precision point cloud data; The first tower image is obtained by projecting the first tower point cloud data onto a first preset plane; wherein, the first preset plane is the XOY plane in a spatial rectangular coordinate system; the point cloud data contains color values of three colors: red, green and blue; The image of the second tower is obtained by projecting the second tower point cloud data onto the first preset plane; Based on feature matching between the first tower image and the second tower image, the rotation matrix is determined; Based on the product of the first insulator point cloud data and the rotation matrix, the first insulator point cloud data to be used is obtained; The translation matrix is determined based on the projection image of the first insulator point cloud data to be used on the second preset plane and the projection image of the second insulator point cloud data on the second preset plane; wherein, the second preset plane is the XOZ plane in the spatial rectangular coordinate system; The low-precision point cloud data are processed based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected. Based on the iterative nearest point algorithm, the point cloud data to be corrected is matched with the high-precision point cloud data to determine the rotation and translation matrix; The rotation and translation matrix is decomposed to obtain the rotation angle and translation amount of the rotation and translation matrix. If the rotation angle or the translation amount is consistent with the corresponding preset threshold, the rotation and translation matrix is determined as the target rotation and translation matrix. The target point cloud data is obtained by multiplying the point cloud data to be corrected by the target rotation and translation matrix; If the rotation angle or the translation amount is inconsistent with the corresponding preset threshold, then the determined frequency of the rotation and translation matrix is obtained; If the determination frequency of the rotation and translation matrix is less than a preset value, the point cloud data to be corrected and the high-precision point cloud data are re-matched to obtain the target point cloud data. If the determination frequency of the rotation and translation matrix is greater than a preset value, then the low-precision point cloud data and the high-precision point cloud data are downsampled or denoised, and the target point cloud data is obtained based on the processed low-precision point cloud data to be used and the high-precision point cloud data to be used.
2. The method according to claim 1, characterized in that, Before acquiring the first insulator point cloud data and the first tower point cloud data from the low-precision point cloud data, and the second insulator point cloud data and the second tower point cloud data from the high-precision point cloud data, the method further includes: Low-precision point cloud data is acquired using oblique photogrammetry, and high-precision point cloud data corresponding to the low-precision point cloud data is acquired in advance.
3. The method according to claim 1, characterized in that, The process of processing the low-precision point cloud data based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected includes: The low-precision point cloud data is multiplied by the translation matrix and the rotation matrix to obtain the point cloud data to be corrected.
4. A point cloud data processing device, characterized in that, The apparatus is used to implement the method as described in any one of claims 1-3, comprising: The point cloud acquisition module is used to acquire the point cloud data of the first insulator and the first tower in the low-precision point cloud data, as well as the point cloud data of the second insulator and the second tower in the high-precision point cloud data. The point cloud to be corrected determination module is used to determine the rotation matrix and translation matrix based on the first insulator point cloud data, the first tower point cloud data, the second insulator point cloud data and the second tower point cloud data, and to process each low-precision point cloud data based on the translation matrix and the rotation matrix to obtain the point cloud data to be corrected. The target point cloud determination module is used to determine the rotation and translation matrix based on the matching result between the point cloud data to be corrected and the high-precision point cloud data, and to process the point cloud data to be corrected based on the rotation and translation matrix to obtain the target point cloud data.
Citation Information
Patent Citations
electric power line patrol LiDAR data automatic registration method based on tower characteristic points
CN109872352A
Point cloud automatic registration method based on a local feature descriptor
CN109919984A
Hub point cloud registration method and device, electronic equipment and storage medium
CN113470091A
Point cloud registration method and device, equipment and storage medium
CN114387319A