Calibration method, device and equipment of laser radar and inclinometer and medium
Through the automated calibration method of lidar and inclinometer, the circumferential rotation and optimization algorithms are used to solve the problems of low efficiency and difficult to achieve manual calibration in the prior art, and efficient and accurate calibration of lidar and inclinometer data is achieved.
Patent Information
- Application Number
- CN202411307099.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-19
- Publication Date
- 2024-12-27
AI Technical Summary
The existing lidar calibration methods are mostly manual operation, which are inefficient and difficult to achieve high accuracy, and rely on the operator's experience and technology.
By controlling the lidar and inclinometer to perform circumferential rotation at the same time, data of multiple rotation angles are obtained, attitude information and source point cloud data are extracted, coordinate system conversion, splicing and feature matching are performed, and transformation matrix is determined using optimization algorithms to achieve automated calibration.
Improve calibration efficiency, ensure the accuracy and reliability of sensor data, reduce the complexity of human operations, and realize the accurate calibration of lidar and inclinometer data.
Smart Images

Figure CN119199805A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of laser radar calibration, and in particular to a calibration method, device, equipment and medium for a laser radar and an inclinometer. Background Art
[0002] LiDAR can obtain the distance information of the target object by emitting and receiving laser beams. It is widely used in real life. For example, it can provide 360-degree all-round visibility for self-driving cars to ensure driving safety. It is one of the indispensable sensors in autonomous driving technology. In terrain mapping, LiDAR can quickly obtain high-precision terrain data. In robot navigation and obstacle avoidance systems, LiDAR can provide accurate environmental information to help robots plan paths and control motion. The measurement results of LiDAR are affected by its installation posture. During use, the measurement data of LiDAR needs to be corrected and calibrated. However, the existing calibration methods are mostly manual measurement and calibration. However, manual measurement often relies on the operator's experience and skills, and requires multiple attempts and adjustments. The calibration process is inefficient and may not achieve the required accuracy. Summary of the invention
[0003] To this end, the embodiments of the present application provide a laser radar and inclinometer calibration method, device, equipment and medium, which perform data calibration through an automated calibration process, improve calibration efficiency, and provide accurate measurement data for various applications.
[0004] In a first aspect, the present application provides a calibration method for a laser radar and an inclinometer.
[0005] This application is achieved through the following technical solutions:
[0006] A calibration method for a laser radar and an inclinometer, comprising:
[0007] Controlling the laser radar and the inclinometer to perform circular rotation simultaneously, obtaining the inclinometer data and the laser radar data at several rotation angles, and determining the initial calibration parameters of the laser radar and the inclinometer;
[0008] Extracting posture information of each rotation angle from the inclinometer data, extracting source point cloud data of each rotation angle from the laser radar data, and converting the source point cloud data from the laser radar coordinate system to the inclinometer coordinate system based on the initial calibration parameters to obtain first point cloud data;
[0009] Determine the reference point cloud data, and splice the first point cloud data of each rotation angle with the reference point cloud data to obtain the second point cloud data corresponding to each rotation angle;
[0010] Perform feature matching on the second point cloud data of each rotation angle and the corresponding posture information to obtain a transformation matrix of the laser radar data and the inclinometer data corresponding to each rotation angle;
[0011] The transformation matrix is optimized by an optimization algorithm, and after it is determined that the optimized transformation matrix meets a preset condition, the optimized transformation matrix is used as a final calibration parameter.
[0012] In a preferred example of the present application, it can be further set as follows:
[0013] The controlling the laser radar and the inclinometer to perform circular rotation at the same time to obtain inclinometer data and laser radar data at a plurality of rotation angles includes:
[0014] In the process of controlling the laser radar and the inclinometer to perform circular rotation, the rotation angle of the position where the rotation starts is taken as 0°, and the first inclinometer data and laser radar data are obtained from 0°, and the inclinometer data and the laser radar data are obtained every preset angle step θ° until the last inclinometer data and the laser radar data are obtained after the rotation reaches 360°;
[0015] The angle step θ° satisfies: 5°≤θ°≤15°, and θ° is a positive integer.
[0016] In a preferred example of the present application, it can be further set as follows:
[0017] Determine the reference point cloud data, and splice the first point cloud data of each rotation angle with the reference point cloud data to obtain the second point cloud data corresponding to each rotation angle, including:
[0018] Selecting the first point cloud data of any rotation angle as the reference point cloud data, analyzing the distribution characteristics of the reference point cloud data, and obtaining the normal distribution of the reference point cloud;
[0019] Set initial transformation parameters, stitch the first point cloud data to be stitched and the reference point cloud data by using the NDT matching method, and calculate the matching probability of the normal distribution of the first point cloud data after stitching and the reference point cloud;
[0020] Based on the matching probability, an initial transformation parameter in the NDT matching method is optimized by a gradient descent method until a preset number of iterations is reached, and the obtained transformation parameter is applied to the first point cloud data to be spliced to obtain the second point cloud data;
[0021] The above process is iterated until the first point cloud data at all rotation angles are spliced with the reference point cloud data.
[0022] In a preferred example of the present application, it can be further set as follows:
[0023] The second point cloud data of each rotation angle and the corresponding posture information are feature matched to obtain the transformation matrix of the lidar data and inclinometer data corresponding to each rotation angle, including:
[0024] Determine a plurality of feature points from the second point cloud data at each rotation angle, and obtain feature points converted to the inclinometer coordinate system by left-multiplying the feature points by the posture information of the corresponding rotation angle;
[0025] All rotation angles are converted to feature points of the inclinometer coordinate system for plane fitting to obtain the plane normal vectors of the feature points;
[0026] Calculate a conversion coefficient for converting the plane normal vector to the Z axis of the world coordinate system;
[0027] Multiply the posture information by the conversion coefficient to obtain the posture information converted to the world coordinate system;
[0028] Based on the posture information converted to the world coordinate system, the transformation matrix of the laser radar data and the inclinometer data corresponding to each rotation angle is calculated.
[0029] In a preferred example of the present application, it can be further configured that plane fitting is performed by any of the following methods: least squares method, RANSAC method or direct linear transformation method.
[0030] In a preferred example of the present application, it can be further set as follows:
[0031] The transformation matrix is optimized by an optimization algorithm, and after determining that the optimized transformation matrix meets a preset condition, the optimized transformation matrix is used as a final calibration parameter, including:
[0032] Transforming the second point cloud data at each rotation angle based on the transformation matrix to obtain predicted point cloud data, and constructing an error function using the predicted point cloud data and the posture data converted to the world coordinate system;
[0033] The error function is optimized by the Levenberg-Marquardt algorithm until the iteration stop condition is met, and the corresponding transformation matrix is used as the final calibration parameter.
[0034] In a preferred example of the present application, it can be further set that the angle step θ° is set to 10°.
[0035] In a second aspect, the present application provides a calibration device for a laser radar and an inclinometer.
[0036] This application is achieved through the following technical solutions:
[0037] A laser radar and an inclinometer calibration device, the calibration device is used to execute the calibration method described in the first aspect, comprising:
[0038] A data acquisition module, used to control the laser radar and the inclinometer to perform circular rotation at the same time, obtain the inclinometer data and the laser radar data at several rotation angles, and determine the initial calibration parameters of the laser radar and the inclinometer;
[0039] A data preprocessing module, used to extract the posture information of each rotation angle from the inclinometer data, extract the source point cloud data of each rotation angle from the laser radar data, and convert the source point cloud data from the laser radar coordinate system to the inclinometer coordinate system based on the initial calibration parameters to obtain first point cloud data;
[0040] The calibration module is used to determine the reference point cloud data, splice the first point cloud data of each rotation angle with the reference point cloud data respectively, and obtain the second point cloud data corresponding to each rotation angle; perform feature matching on the second point cloud data of each rotation angle and the corresponding posture information to obtain the transformation matrix of the lidar data and the inclinometer data corresponding to each rotation angle; optimize the transformation matrix through the optimization algorithm, and after determining that the optimized transformation matrix meets the preset conditions, use the optimized transformation matrix as the final calibration parameter.
[0041] On the third aspect, the present application is realized through the following technical solutions:
[0042] A computer device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any one of the above-mentioned laser radar and inclinometer calibration methods when executing the computer program.
[0043] In a fourth aspect, the present application provides a computer-readable storage medium.
[0044] This application is achieved through the following technical solutions:
[0045] A computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of any one of the above-mentioned laser radar and inclinometer calibration methods are implemented.
[0046] In summary, compared with the prior art, the technical solution provided in the embodiment of the present application has at least the following beneficial effects:
[0047] The present application controls the laser radar and inclinometer to perform circular rotation at the same time, obtains the inclinometer data and the laser radar data at several rotation angles, and determines the initial calibration parameters of the laser radar and the inclinometer; extracts the posture information of each rotation angle from the above-mentioned inclinometer data, extracts the source point cloud data of each rotation angle from the laser radar data, and converts the source point cloud data from the laser radar coordinate system to the inclinometer coordinate system based on the initial calibration parameters to obtain the first point cloud data; determines the reference point cloud data, and splices the first point cloud data of each rotation angle with the reference point cloud data respectively to obtain the second point cloud data corresponding to each rotation angle; performs feature matching on the second point cloud data of each rotation angle and the corresponding posture information to obtain the transformation matrix of the laser radar data and the inclinometer data corresponding to each rotation angle; optimizes the transformation matrix through an optimization algorithm, and after determining that the optimized transformation matrix meets the preset conditions, uses the optimized transformation matrix as the final calibration parameter. By accurately measuring data at different locations and aligning the data of the lidar and inclinometer in the same coordinate system, the data of the two sensors are fused together, the errors between the two sensors are identified through matching, and the errors are minimized through optimization algorithms to calibrate the lidar. The automated calibration process reduces the need for manual operation, reduces operational complexity, improves calibration efficiency, and ensures the accuracy and reliability of sensor data. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1 A schematic diagram of a flow chart of a calibration method for a laser radar and an inclinometer provided in an embodiment of the present application;
[0049] Figure 2 A schematic diagram of the structure of a calibration device for a laser radar and an inclinometer provided in one embodiment of the present application;
[0050] Description of reference numerals:
[0051] Data acquisition module-110, data preprocessing module-120, calibration module-130. DETAILED DESCRIPTION
[0052] This specific embodiment is merely an explanation of the present application and is not a limitation of the present application. After reading this specification, those skilled in the art may make modifications to the present embodiment without any creative contribution as needed. However, as long as it is within the scope of the claims of the present application, it shall be protected by the patent law.
[0053] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0054] In addition, the term "and / or" in this application is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this application, unless otherwise specified, generally indicates that the associated objects before and after are in an "or" relationship.
[0055] In this application, the terms "first", "second", etc. are used to distinguish identical or similar items with basically the same effects and functions. It should be understood that there is no logical or temporal dependency between "first", "second", and "nth", nor is there any limitation on quantity and execution order.
[0056] In order to make the present application easier to understand, some basic concepts involved in the embodiments of the present application are first explained below. It should be noted that these explanations are to make the embodiments of the present application easier to understand and should not be regarded as limiting the scope of protection claimed by the present application.
[0057] 1. LiDAR (Light Detection and Ranging) is a remote sensing technology that uses laser beams for distance measurement and detection. It measures distance by emitting laser pulses and receiving reflected light, thereby generating an accurate three-dimensional model of objects or terrain.
[0058] 2. An inclinometer, also known as an inclinometer, inclinometer, level or tilt sensor, is an instrument that detects and measures the tilt angle of an object relative to its normal position.
[0059] 3. The world coordinate system, also known as the public coordinate system, has a coordinate origin that is a fixed point in space. As an absolute coordinate system, it provides a position reference for all objects in space.
[0060] The following is a further detailed description of the embodiments of the present application in conjunction with the accompanying drawings. Figure 1 As shown, the calibration method of the present application includes:
[0061] S10: Control the laser radar and the inclinometer to perform circular rotation at the same time, obtain the inclinometer data and the laser radar data at several rotation angles, and determine the initial calibration parameters of the laser radar and the inclinometer.
[0062] In some feasible implementations, first select a stable calibration platform or calibration frame, which can be rotated under the control of a motor. Fix the laser radar and the inclinometer on the calibration platform or calibration frame, and fix the laser radar and the inclinometer by screws or other fasteners to ensure that they will not loosen or move during rotation. At the same time, keep the relative position of the laser radar and the inclinometer unchanged throughout the calibration process. Start the motor to rotate the calibration platform or calibration frame, and collect the data of the laser radar and the inclinometer with a preset rotation angle through the data acquisition device. Based on the relative position of the laser radar and the inclinometer, the relative position can be input into the calibration software such as Open Calib software or Apollo, and the initial calibration parameters of the laser radar and the inclinometer can be obtained from the calibration software. The initial calibration parameters are the conversion relationship between the laser radar coordinate system and the inclinometer coordinate system, which are the calibration parameters that need to be calibrated. In the present application, the conversion relationship can be the rotation matrix from the laser radar coordinate system to the inclinometer coordinate system.
[0063] S20: Extract the posture information of each rotation angle from the inclinometer data, extract the source point cloud data of each rotation angle from the lidar data, and convert the source point cloud data from the lidar coordinate system to the inclinometer coordinate system based on the initial calibration parameters to obtain the first point cloud data.
[0064] In some feasible implementations, posture information at each rotation angle is extracted from the acquired inclinometer data, and the posture information includes the roll angle (Roll) and the pitch angle (Pitch); source point cloud data at each rotation angle is extracted from the lidar data, including the three-dimensional coordinates of each observed point.
[0065] Apply the following transformation formula to the source point cloud data of the laser radar to transform the source point cloud data from the laser radar coordinate system to the inclinometer coordinate system:
[0066]
[0067] Where P trans Represents the point cloud data in the inclinometer coordinate system, that is, the first point cloud data, Represents the initial calibration parameters, that is, the initial rotation matrix, P lidar is the point cloud data in the laser radar coordinate system, that is, the source point cloud data.
[0068] S30: Determine the reference point cloud data, and splice the first point cloud data of each rotation angle with the reference point cloud data to obtain the second point cloud data corresponding to each rotation angle.
[0069] In some feasible implementations, the reference point cloud data is the point cloud data used as a reference in the process of point cloud stitching, and is used to align with other point cloud data. The reference point cloud data can be the first point cloud data at any rotation angle. For example, n groups of point cloud data are collected at n rotation angles, the first point cloud data of the first rotation angle θ1 is spliced with the reference point cloud data, and the splicing result is used as the second point cloud data of the first rotation angle θ1; the first point cloud data of the second rotation angle θ2 is spliced with the reference point cloud data, and the splicing result is used as the second point cloud data of the second rotation angle θ2; and so on. n The first point cloud data is spliced with the reference point cloud data, and the splicing result is used as the nth rotation angle θ n The second point cloud data.
[0070] By using the reference point cloud data, all the point cloud data of the rotation angles are spliced with the reference point cloud data, which can ensure that all the spliced point cloud data are in the same reference frame, reduce the inconsistency caused by equipment movement, and ensure data consistency. At the same time, if there are missing or incomplete parts of the point cloud data of some rotation angles, this information can be supplemented by splicing with the reference point cloud data, thereby improving the accuracy of the data and providing a more accurate data basis for subsequent analysis and application.
[0071] S40: Perform feature matching on the second point cloud data of each rotation angle and the corresponding posture information to obtain a transformation matrix of the laser radar data and the inclinometer data corresponding to each rotation angle.
[0072] In some feasible implementations, the i-th rotation angle θ i The second point cloud data is the same as the inclinometer at the i-th rotation angle θ i The posture information at the i-th rotation angle θ is matched with features to determine i The transformation matrix R of the lidar data and the inclinometer data sw-i , where i belongs to i∈(1,2,…,n), n is the number of rotation angles, and n is a positive integer.
[0073] S50: Optimize the transformation matrix through an optimization algorithm, and after determining that the optimized transformation matrix meets the preset conditions, use the optimized transformation matrix as the final calibration parameter.
[0074] The optimization algorithm is an algorithm used to seek the optimal solution or the approximate optimal solution. The optimization algorithm may adopt but is not limited to any one of the gradient descent method, Levenberg-Marquardt algorithm, Newton method, etc. The preset conditions met during the optimization process may be but are not limited to being set to: reaching a preset number of iterative optimization times, reaching a preset optimization time, and satisfying any one of the error parameters of two adjacent iterations being less than a preset threshold.
[0075] In some embodiments, when acquiring data in step S10, in the process of controlling the laser radar and the inclinometer to perform circular motion, the rotation angle of the position where the rotation starts is taken as 0°, and the first inclinometer data and laser radar data are acquired from the rotation angle of 0°, and the inclinometer data and the laser radar data are acquired once every preset angle step θ until the last inclinometer data and the laser radar data are acquired after rotating to 360°, and each set of inclinometer data and the laser radar data is marked with the corresponding rotation angle information; wherein the angle step θ° satisfies: 5°≤θ≤15°, and θ° is a positive integer. It should also be noted that the data acquisition environment can select an environment containing multiple planes, angles and edges so that the data collected by the laser radar has sufficient features. By acquiring data at different angles, it is possible to ensure detailed coverage of the surrounding environment, compensate for the movement of the sensor, and correct the measurement error caused by the change of the device posture. At the same time, controlling the angle step within the above range can make a good balance between ensuring the collection of more data and controlling the calculation efficiency.
[0076] In some embodiments, the angle step length θ° is 10°. In the actual implementation process, a set of data is collected when the rotation angle is 0°, 10°, 20°, 30°, ..., 350°, and 360°, respectively, and a total of 37 sets of inclinometer data and lidar data are obtained.
[0077] As a possible implementation method, the benchmark point cloud data is determined, and the first point cloud data of each rotation angle is spliced with the benchmark point cloud data respectively to obtain the second point cloud data corresponding to each rotation angle. The specific steps are as follows: first, the first point cloud data of a rotation angle needs to be selected as the benchmark point cloud data, and the distribution characteristics of the benchmark point cloud data are analyzed. Specifically, the mean and covariance matrix of the benchmark point cloud data are calculated, and a normal distribution model is constructed. The normal distribution model is used to describe the probability distribution of point cloud data in space. Based on the normal distribution model, the normal distribution of the reference point cloud data is obtained, which is the normal distribution of the reference point cloud; an initial transformation parameter is set, and the first point cloud data to be spliced and the reference point cloud data are spliced using the Normal Distributions Transform (NDT) matching method, and the matching probability of each point cloud in the first point cloud data after splicing in the normal distribution of the reference point cloud is calculated. Based on the matching probability, the initial transformation parameters are optimized by the gradient descent method until the preset number of iterations is reached, and the obtained transformation parameters are applied to the first point cloud data to be spliced to obtain the second point cloud data corresponding to the rotation angle. The first point cloud data at each rotation angle executes the above-mentioned splicing process until the first point cloud data at all rotation angles are spliced. In the actual operation process, in order to simplify the splicing process, the first point cloud data with a rotation angle of 0° can be selected as the reference point cloud data.
[0078] In some embodiments, the second point cloud data of each rotation angle and the corresponding posture information are feature matched to obtain the transformation matrix of the laser radar data and the inclinometer data corresponding to each rotation angle, including: determining a number of feature points from the second point cloud data of each rotation angle; performing plane fitting on a number of feature points to obtain the plane normal vector of the feature points; calculating the transformation matrix that converts the plane normal vector to the Z axis of the world coordinate system; multiplying the posture information by the transformation matrix on the left to obtain the posture information transformed to the world coordinate system. Exemplarily, the plane fitting of the above-mentioned several feature points can be performed in the following ways: the first possible implementation method is to perform plane fitting by the least squares method; the second possible implementation method is to perform plane fitting by the RANSAC method; the third possible implementation method is to perform plane fitting by the direct linear transformation method.
[0079] For example, m feature points P1 are determined in the xoy plane of the second point cloud data at the first rotation angle θ1. i , i∈(1,…,m), the feature point P1 i Multiply the inclinometer's attitude information RP1 at the first rotation angle θ1 by the left to obtain the converted feature point Iterate the above method to obtain the transformed feature points at all rotation angles and collect them together to form a feature point set in Represents the nth rotation angle θ after transformation n The mth feature point of .
[0080] The feature point set is solved by the least square method Perform plane fitting to determine the above feature point set The plane normal vector (A, B, C) is converted to the Z axis (0, 0, 1) by trigonometric function calculation. t , where A, B, and C are the components of the normal vector on the three-dimensional space coordinate axes (x-axis, y-axis, and z-axis).
[0081] In some embodiments, the transformation matrix is optimized by an optimization algorithm, and after determining that the optimized transformation matrix meets a preset condition, the optimized transformation matrix is used as a final calibration parameter, including:
[0082] The second point cloud data of each rotation angle is transformed based on the transformation matrix to obtain predicted point cloud data, and an error function is constructed using the predicted point cloud data and the posture data converted to the world coordinate system;
[0083] The above error function is optimized by the Levenberg-Marquardt algorithm until the iteration stop condition is met, and the corresponding transformation matrix is used as the final calibration parameter.
[0084] For example, the attitude information RP of the inclinometer at all rotation angles i Multiply the conversion factor R on the left t , get the attitude information RP′ of the inclinometer transformed to the world coordinate system i , RP′ i =R t ·RP i ; Based on the posture information RP′ converted to the world coordinate system i , calculate the transformation matrix R of the lidar data and inclinometer data corresponding to each rotation angle sw Specifically, several data points are selected from the second laser radar data at a rotation angle, and the laser radar data and inclinometer data corresponding to each rotation angle are aligned point by point, and the transformation matrix R is calculated by the NDT method. sw , RP′ i =R sw ·P tranc-2 , where P trans-2Represents the second point cloud data. Based on the transformation matrix, the second point cloud data of each rotation angle is transformed to obtain the predicted point cloud data, and the error function is constructed using the predicted point cloud data and the posture data converted to the world coordinate system; the error function is optimized by the Levenberg-Marquardt algorithm until the iteration stop condition is met, and the corresponding transformation matrix is used as the final calibration parameter.
[0085] Another embodiment of the present application also provides a calibration device for a laser radar and an inclinometer, and the calibration device is used to perform the above calibration method, such as Figure 2 As shown, the calibration device comprises:
[0086] The data acquisition module 110 is used to control the laser radar and the inclinometer to perform circular rotation at the same time, obtain the inclinometer data and the laser radar data at several rotation angles, and determine the initial calibration parameters of the laser radar and the inclinometer.
[0087] The data preprocessing module 120 is used to extract the posture information of each rotation angle from the inclinometer data, extract the source point cloud data of each rotation angle from the lidar data, and convert the source point cloud data from the lidar coordinate system to the inclinometer coordinate system based on the initial calibration parameters to obtain the first point cloud data.
[0088] The calibration module 130 is used to determine the reference point cloud data, splice the first point cloud data of each rotation angle with the reference point cloud data respectively, and obtain the second point cloud data corresponding to each rotation angle; perform feature matching on the second point cloud data of each rotation angle and the corresponding posture information to obtain the transformation matrix of the lidar data and the inclinometer data corresponding to each rotation angle; optimize the transformation matrix through the optimization algorithm, and after determining that the optimized transformation matrix meets the preset conditions, use the optimized transformation matrix as the final calibration parameter.
[0089] The specific definition of the calibration device provided in this embodiment can be found in the embodiment of the calibration method above, and will not be repeated here. Each module in the above calibration device can be implemented in whole or in part by software, hardware, and a combination thereof. Each of the above modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to each of the above modules.
[0090] An embodiment of the present application provides a computer device, which may include a processor, a memory, a network interface, and a database connected via a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the computer device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, the processor executes the steps of the calibration method of the laser radar and the inclinometer as in any of the above embodiments.
[0091] The working process, working details and technical effects of the computer device provided in this embodiment can be found in the above embodiments of the calibration method for the laser radar and the inclinometer, which will not be described in detail here.
[0092] The embodiment of the present application provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the laser radar and inclinometer calibration method in any of the above embodiments are implemented. The computer-readable storage medium refers to a carrier for storing data, which may include but is not limited to a floppy disk, an optical disk, a hard disk, a flash memory, a USB flash drive and / or a memory stick, etc. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
[0093] The working process, working details and technical effects of the computer-readable storage medium provided in this embodiment can be found in the embodiments of the laser radar and inclinometer calibration method described above, and will not be described in detail here.
[0094] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0095] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0096] Those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the system described in the present application is divided into different functional units or modules to complete all or part of the functions described above.
Claims
1. A calibration method for a laser radar and an inclinometer, characterized in that: include: Controlling the laser radar and the inclinometer to perform circular rotation simultaneously, obtaining the inclinometer data and the laser radar data at several rotation angles, and determining the initial calibration parameters of the laser radar and the inclinometer; Extracting posture information of each rotation angle from the inclinometer data, extracting source point cloud data of each rotation angle from the laser radar data, and converting the source point cloud data from the laser radar coordinate system to the inclinometer coordinate system based on the initial calibration parameters to obtain first point cloud data; Determine the reference point cloud data, and splice the first point cloud data of each rotation angle with the reference point cloud data to obtain the second point cloud data corresponding to each rotation angle; Perform feature matching on the second point cloud data of each rotation angle and the corresponding posture information to obtain a transformation matrix of the laser radar data and the inclinometer data corresponding to each rotation angle; The transformation matrix is optimized by an optimization algorithm, and after it is determined that the optimized transformation matrix meets a preset condition, the optimized transformation matrix is used as a final calibration parameter.
2. The calibration method of laser radar and inclinometer according to claim 1, characterized in that: The controlling the laser radar and the inclinometer to perform circular rotation at the same time to obtain inclinometer data and laser radar data at a plurality of rotation angles includes: In the process of controlling the laser radar and inclinometer to perform circular rotation, the rotation angle of the position where the rotation starts is taken as 0, and the first inclinometer data and laser radar data are obtained from 0, and the inclinometer data and laser radar data are obtained every preset angle step θ until the last inclinometer data and laser radar data are obtained after rotating to 360 degrees; The angle step length θ satisfies: 5≤θ≤15, and θ is a positive integer.
3. The calibration method of laser radar and inclinometer according to claim 1, characterized in that: Determine the reference point cloud data, and splice the first point cloud data of each rotation angle with the reference point cloud data to obtain the second point cloud data corresponding to each rotation angle, including: Selecting the first point cloud data of any rotation angle as the reference point cloud data, analyzing the distribution characteristics of the reference point cloud data, and obtaining the normal distribution of the reference point cloud; Set initial transformation parameters, stitch the first point cloud data to be stitched and the reference point cloud data by using the NDT matching method, and calculate the matching probability of the normal distribution of the first point cloud data after stitching and the reference point cloud; Based on the matching probability, an initial transformation parameter in the NDT matching method is optimized by a gradient descent method until a preset number of iterations is reached, and the obtained transformation parameter is applied to the first point cloud data to be spliced to obtain the second point cloud data; The iteration is performed until the first point cloud data of all rotation angles are spliced with the reference point cloud data.
4. The calibration method of laser radar and inclinometer according to claim 3, characterized in that: The second point cloud data of each rotation angle and the corresponding posture information are feature matched to obtain the transformation matrix of the lidar data and inclinometer data corresponding to each rotation angle, including: Determine a plurality of feature points from the second point cloud data at each rotation angle, and obtain feature points converted to the inclinometer coordinate system by left-multiplying the feature points by the posture information of the corresponding rotation angle; All rotation angles are converted to feature points of the inclinometer coordinate system for plane fitting to obtain the plane normal vectors of the feature points; Calculate a conversion coefficient for converting the plane normal vector to the Z axis of the world coordinate system; Multiply the posture information by the conversion coefficient to obtain the posture information converted to the world coordinate system; Based on the posture information converted to the world coordinate system, the transformation matrix of the laser radar data and the inclinometer data corresponding to each rotation angle is calculated.
5. The calibration method of laser radar and inclinometer according to claim 4, characterized in that: Perform plane fitting using any of the following methods: Least squares method, RANSAC method or direct linear transformation method.
6. The calibration method of laser radar and inclinometer according to claim 4, characterized in that: The transformation matrix is optimized by an optimization algorithm, and after determining that the optimized transformation matrix meets a preset condition, the optimized transformation matrix is used as a final calibration parameter, including: Transforming the second point cloud data at each rotation angle based on the transformation matrix to obtain predicted point cloud data, and constructing an error function using the predicted point cloud data and the posture data converted to the world coordinate system; The error function is optimized by the Levenberg-Marquardt algorithm until the iteration stop condition is met, and the corresponding transformation matrix is used as the final calibration parameter.
7. The calibration method of laser radar and inclinometer according to claim 2, characterized in that: The angle step length θ is set to 10.
8. A laser radar and inclinometer calibration device, characterized in that: Used to perform the calibration method according to any one of claims 1 to 7, comprising: A data acquisition module, used to control the laser radar and the inclinometer to perform circular rotation at the same time, obtain the inclinometer data and the laser radar data at several rotation angles, and determine the initial calibration parameters of the laser radar and the inclinometer; A data preprocessing module, used to extract the posture information of each rotation angle from the inclinometer data, extract the source point cloud data of each rotation angle from the laser radar data, and convert the source point cloud data from the laser radar coordinate system to the inclinometer coordinate system based on the initial calibration parameters to obtain first point cloud data; The calibration module is used to determine the reference point cloud data, splice the first point cloud data of each rotation angle with the reference point cloud data respectively, and obtain the second point cloud data corresponding to each rotation angle; perform feature matching on the second point cloud data of each rotation angle and the corresponding posture information to obtain the transformation matrix of the lidar data and the inclinometer data corresponding to each rotation angle; optimize the transformation matrix through the optimization algorithm, and after determining that the optimized transformation matrix meets the preset conditions, use the optimized transformation matrix as the final calibration parameter.
9. A computer device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Cited By
Engineering equipment angle measurement method and system based on inclinometer
CN119642775A
Point cloud splicing method and system, computer equipment and readable storage medium
CN121544459A
