Online differential odometry and lidar parameter calibration method and system

By using an online differential odometer and lidar parameter calibration method, the problems of low efficiency and low accuracy in existing technologies are solved, enabling high-precision mapping and positioning of the robot, real-time parameter updates, and improved calibration efficiency and accuracy.

CN116295329BActive Publication Date: 2026-03-24SHANDONG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-07
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

Most existing calibration methods for differential odometers and lidar are performed offline, which is inefficient and inaccurate, and cannot meet the requirements for automated, real-time, and high-precision calibration in indoor SLAM environments.

Method used

An online differential odometer and lidar parameter calibration method is adopted. By acquiring lidar point cloud data and differential odometer data, point cloud scanning matching and timestamp alignment are performed, residual terms are added, and the transformation relationship is iteratively optimized to accurately calibrate the parameters of differential odometer and lidar.

Benefits of technology

It achieves high-precision mapping and positioning of robots, updates parameters in real time, reduces computation, improves efficiency, reduces errors, and enables unattended automated calibration.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116295329B_ABST
    Figure CN116295329B_ABST
Patent Text Reader

Abstract

The application provides an online differential odometer and laser radar parameter calibration method and system, according to a grid map and obtained laser radar current frame laser point cloud data, point cloud scanning matching is carried out, and the current pose of the laser radar is obtained; according to the time stamps of the first frame point cloud and the current frame point cloud, the differential odometer data is interpolated according to the time stamps, and the odometer data under the corresponding time stamp is obtained; based on the current pose of the laser radar and the odometer data under the corresponding time stamp, through the pose transformation relationship of the laser radar and the differential odometer, a residual term is added, the transformation relationship is iteratively optimized, and the parameter calibration result of the differential odometer and the laser radar is obtained; the application can accurately calibrate the pose transformation between the differential odometer center and the laser radar, the wheel radius and the wheel base, and realizes high-precision mapping and positioning of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of indoor environment robots, and particularly relates to a method and system for online differential odometry and laser radar parameter calibration. BACKGROUND

[0002] The statements in this section merely provide background technology related to the present application and do not necessarily constitute the prior art.

[0003] With the continuous development of sensor technology and indoor 2D SLAM (Simultaneous Localization And Mapping) technology, sensor fusion technology has gradually become a research trend of robot mapping and positioning. Robots establish data constraints through data fusion of multiple or various sensors to achieve high-precision mapping and positioning of the surrounding environment. However, due to mechanical manufacturing, installation errors, and factors such as deformation of devices and wear of wheels caused by long-term work of robots, the built-in parameters of the odometry and the external parameters between the odometry and the radar will change slightly, which will have a significant impact on robot mapping and navigation positioning. Therefore, accurate parameter configuration is of great significance to robot mapping and positioning or environmental perception.

[0004] The inventor found that in the current common calibration scheme of differential odometry and laser radar, most of them are offline or the odometry internal parameters and the external parameters of the two are calibrated separately. The existing common calibration method is that a calibration personnel manually controls a trolley to travel a certain distance, uses nonlinear solving to obtain the relative external parameters of the differential odometry and the laser odometry, and then linearly calculates the built-in parameters of the odometry through the actual measured position and angle change and the angular velocity of the two wheels of the odometry. However, the above method is carried out under offline conditions, and has low efficiency and low precision, which cannot meet the requirements of automatic real-time high-precision calibration in indoor SLAM environment. SUMMARY

[0005] In order to solve the problems of the prior art, the present application provides an online differential odometry and laser radar parameter calibration method and system, which can accurately calibrate the pose transformation, wheel radius and wheelbase between the differential odometry center and the laser radar, and realize high-precision mapping and positioning of the robot.

[0006] In order to achieve the above purpose, the present application adopts the following technical solutions:

[0007] The first aspect of the present application provides an online differential odometry and laser radar parameter calibration method.

[0008] An online differential odometry and laser radar parameter calibration method, comprising the following processes:

[0009] acquire the first frame point cloud data and the current frame laser point cloud data of the laser radar;

[0010] According to the grid map and the acquired current frame laser point cloud data of the laser radar, point cloud scanning matching is performed to obtain a current pose of the laser radar.

[0011] According to the time stamps of the first frame point cloud and the current frame point cloud, the differential odometer data is interpolated according to the time stamps to obtain odometer data corresponding to the time stamps.

[0012] Based on the current pose of the laser radar and the odometer data corresponding to the time stamps, a transformation relationship between the laser radar and the differential odometer is added with a residual term, and the transformation relationship is iteratively optimized to obtain a parameter calibration result of the differential odometer and the laser radar.

[0013] As an optional implementation manner, the point cloud scanning matching is performed to obtain the current pose of the laser radar, including:

[0014] acquire an initial pose;

[0015] transform the current frame laser point cloud data P of the laser radar to the initial pose to obtain point cloud data P0;

[0016] rotate the point cloud data P0 to obtain a point cloud set V;

[0017] perform translational transformation on the point cloud set V in a search window to obtain a new point cloud set V1;

[0018] acquire the grid coordinates of each point of each point cloud in the point cloud set V1;

[0019] acquire the score of each point cloud according to the grid coordinates;

[0020] obtain the pose corresponding to the point cloud with the highest score;

[0021] determine whether the highest score is greater than a lowest score allowed by the scanning matching, if yes, the pose corresponding to the point cloud with the highest score is the current laser radar pose, otherwise, the search window is enlarged, and the step of performing translational transformation on the point cloud set V in the search window to obtain the new point cloud set V1 is returned.

[0022] Further, the laser point cloud P0 is rotated clockwise n times with a certain angle resolution r1 as a step, and then the P0 is rotated counterclockwise n times with the certain angle resolution r1 as a step to obtain a point cloud set V containing 2n point clouds.

[0023] Further, each point cloud in the point cloud set V is respectively translated along the X axis and the Y axis for j and k times respectively at a certain step, to ensure that the translated point cloud is located within the search window, and a new point cloud set V1 containing 2n*j*k point clouds is obtained.

[0024] As an optional implementation, a residual term is added, and an iterative optimization transformation relationship is obtained to obtain the parameter calibration result of the differential odometer and the lidar, including:

[0025]

[0026]

[0027]

[0028] wherein T2 k is the pose of the robot coordinate system at time k relative to the robot coordinate system at the starting time, T3 is the installation pose of the lidar relative to the robot coordinate system, T1 k is the pose of the lidar at time k relative to the lidar coordinate system at the starting time;

[0029] to minimize the residual block ΔT odometer parameters d, r l and r r and the installation parameters X RADAR , Y RADAR and θ RADAR of the lidar relative to the center of the odometer, as the calibrated odometer parameters and the installation parameters of the lidar.

[0030] Further, θ odom =∫w(t)dt; x odom =∫v(t)cosθ(t)dt; y odom =∫v(t)sinθ(t)dt;

[0031] wherein w(t) is the robot angular velocity at time t, v(t) is the robot linear velocity at time t, and θ(t) is the robot angle at time t.

[0032] Further, discretization is performed to obtain:

[0033]

[0034]

[0035]

[0036]

[0037] wherein (x odom (i), yodom (i), θ odom (i)) is the change of the robot pose between the i-th frame data and the i+1-th frame data, n is the number of odometry data between the i-th frame data and the i+1-th frame data, (x odom , y odom , θ odom ) is the total odometry pose change from the start time to the current time, ω L i (j) and ω R i (j) is the odometry data corresponding to the time stamp of the i-th frame laser data, ΔT(j) is the interval time between the i-th frame laser data and the i+1-th frame laser data, and d represents the installation distance of the left and right wheels.

[0038] The second aspect of the present application provides an online differential odometry and laser radar parameter calibration system.

[0039] An online differential odometry and laser radar parameter calibration system comprises:

[0040] A data acquisition module is configured to acquire first frame point cloud data of a laser radar and current frame laser point cloud data of the laser radar;

[0041] A laser radar pose calculation module is configured to perform point cloud scanning matching according to a grid map and the acquired current frame laser point cloud data of the laser radar to obtain a current pose of the laser radar;

[0042] A time stamp alignment module is configured to interpolate differential odometry data according to time stamps of the first frame point cloud and the current frame point cloud to obtain odometry data corresponding to the time stamps;

[0043] A parameter calibration result generation module is configured to add a residual term to a pose transformation relationship between the laser radar and the differential odometry based on the current pose of the laser radar and the odometry data corresponding to the time stamps, and iteratively optimize the transformation relationship to obtain a parameter calibration result of the differential odometry and the laser radar.

[0044] The third aspect of the present application provides a computer readable storage medium having a program stored thereon, and the program is executed by a processor to implement the steps of the online differential odometry and laser radar parameter calibration method according to the first aspect of the present application.

[0045] The fourth aspect of the present application provides an electronic device comprising a memory, a processor, and a program stored in the memory and executable on the processor, and the processor implements the steps of the online differential odometry and laser radar parameter calibration method according to the first aspect of the present application when executing the program.

[0046] Compared with the prior art, the present application has the following advantages:

[0047] 1. The online differential odometer and laser radar parameter calibration method and system can accurately calibrate the pose transformation between the differential odometer center and the laser radar, the wheel radius and the wheelbase, and realize high-precision mapping and positioning of the robot.

[0048] 2. The online differential odometer and laser radar parameter calibration method and system calculates a prior pose from the odometer, and performs scan matching within the range near the prior pose, thereby reducing the calculation amount and time, and improving the efficiency compared with blind scan matching in the global range.

[0049] 3. The online differential odometer and laser radar parameter calibration method and system calibrates the results for subsequent map construction, can update the parameters in real time, correct the errors in real time, and solve the errors caused by inaccurate odometer parameters, wheel wear and inaccurate installation position of the radar relative to the robot center.

[0050] 4. The online differential odometer and laser radar parameter calibration method and system assumes that the nominal value of the parameter is known in advance, the estimated adjustment amount is relatively small, the linear error is small, can run without human supervision, does not need manual intervention, does not need any instrument to be calibrated in advance, does not need nominal parameters as initial guess, the global optimal solution exists in a closed form, and the trajectory of the robot can be freely selected as long as it activates all the parameters.

[0051] The advantages of the additional aspects of the application will be partially given in the following description, partially become obvious from the following description, or be understood through the practice of the application. BRIEF DESCRIPTION OF DRAWINGS

[0052] The accompanying drawings, which form a part of the specification, are included to provide a further understanding of the application and are incorporated herein by reference. The illustrations are shown to explain the application and are not intended to limit the application.

[0053] Figure 1 The flowchart of the online differential odometer and laser radar parameter calibration method provided for the embodiment 1 of the application.

[0054] Figure 2 The schematic diagram of the scan matching principle provided for the embodiment 1 of the application.

[0055] Figure 3 The flowchart of the scan matching provided for the embodiment 1 of the application.

[0056] Figure 4 The schematic diagram of the original point cloud P0 transformed to the prior pose provided for the embodiment 1 of the application.

[0057] Figure 5 This is a schematic diagram of the point cloud set V obtained by rotating P0 by a certain step size, as provided in Embodiment 1 of the present invention.

[0058] Figure 6 This is a schematic diagram of the point cloud set V1 obtained by performing a translation transformation on the point cloud set V according to Embodiment 1 of the present invention.

[0059] Figure 7 This is a simplified model diagram of the differential odometer provided in Embodiment 1 of the present invention.

[0060] Figure 8 This is a schematic diagram of the differential odometer position provided in Embodiment 1 of the present invention.

[0061] Figure 9 This is a schematic diagram of the odometer pose transformation calculation process provided in Embodiment 1 of the present invention.

[0062] Figure 10 This is a schematic diagram of the pose transformation relationship between P1, P2 and P3 provided in Embodiment 1 of the present invention. Detailed Implementation

[0063] The present invention will be further described below with reference to the accompanying drawings and embodiments.

[0064] It should be noted that the following detailed descriptions are exemplary and intended to provide further illustration of the invention. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.

[0065] It should be noted that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the scope of exemplary embodiments according to the invention. As used herein, the singular form is intended to include the plural form as well, unless the context clearly indicates otherwise. Furthermore, it should be understood that when the terms "comprising" and / or "including" are used in this specification, they indicate the presence of features, steps, operations, devices, components, and / or combinations thereof.

[0066] Where there is no conflict, the embodiments and features in the embodiments of the present invention can be combined with each other.

[0067] Example 1:

[0068] like Figure 1 As shown, Embodiment 1 of the present invention provides an online differential odometer and lidar parameter calibration method, comprising the following steps:

[0069] (1) Obtain the original laser point cloud by laser radar, match the point cloud data between the point cloud and the grid map, and obtain the pose of the current frame laser radar (also known as laser odometry or laser radar odometry);

[0070] (2) Take the timestamps T start and T end of the first frame and the current frame point cloud as the start and end times, interpolate the differential odometry data according to the timestamps, obtain the odometry data at T start and T end , and realize timestamp alignment of the two data;

[0071] (3) Through the pose transformation relationship of the laser odometry and the differential odometry, add a residual term, iteratively optimize the transformation relationship, obtain high-precision calibration parameters, and use the calibration parameters for subsequent map construction to realize real-time updating of the parameters.

[0072] More specifically, the following contents are included:

[0073] S1: Laser point cloud inter-frame matching based on scan matching

[0074] The real coordinates in the grid map are represented by grid coordinates, and each grid has a possibility of occupation. The occupation probability value of the grid where the obstacle is located is relatively high, and the occupation probability of the grid area corresponding to the open area is relatively low. The principle of scan matching is to continuously perform translation and rotation transformation of the point cloud data on the ground of the grid map, obtain the occupation probability of the grid corresponding to each point in the transformed point cloud, sum the occupation probabilities of all points, and divide the total number of points to obtain the score of the point cloud. The pose corresponding to the point cloud with the highest score is the actual pose of the point cloud.

[0075] As shown in the thick grid line, the area is an obstacle area, and the grid occupation probability of this area is relatively high. Figure 2 As shown on the left, the point cloud pose does not match the actual environment, and the score of the point cloud is relatively low. Figure 2 As shown on the right, the point cloud pose matches the actual environment more, and the score is relatively high, which can be used as the actual pose of the point cloud. Since the actual grid map can be relatively large, if scan matching is directly performed on the entire map, it will consume a lot of time, so a priori pose is calculated according to the odometry, and scan matching is performed within a range around the priori pose. If the matching is unsuccessful in the range, the search range is expanded for scan matching.

[0076] Specifically, as shown in Figure 3 the matching step includes:

[0077] S1.1: After obtaining the current frame laser point cloud P of the laser radar, the point cloud coordinates at this time are relative to the radar coordinate system. An initial pose of the radar is calculated by the wheeled odometer as the range of the search window, and the laser point cloud P is rotated to the initial pose to obtain the point cloud P0, such as Figure 4 ;

[0078] S1.2: The laser point cloud P0 is rotated clockwise n times with a certain angle resolution r1 as a step, and then P0 is rotated counterclockwise n times with a certain angle resolution r1 as a step, to obtain a point cloud set V containing 2n point clouds, such as Figure 5 ;

[0079] S1.3: Each point cloud in the point cloud set V is translated along the X axis and the Y axis with a certain step size step for j and k times respectively, to ensure that the translated point cloud is located in the search window, to obtain a new point cloud set V1 containing 2n*j*k point clouds, such as Figure 6 ;

[0080] S1.4: Obtain the grid coordinates of each point of the point cloud, and obtain the occupancy probability of the corresponding grid through the grid coordinates. The score of the point cloud is the sum of the occupancy probabilities of the corresponding grids of each point in the point cloud divided by the number of point clouds, that is:

[0081] score = ∑possibility / N;

[0082] Wherein, N is the number of points in the point cloud;

[0083] S1.5: Determine whether the highest score is greater than the minimum threshold value for determining matching success. If it is greater, the pose of the origin of the laser radar coordinate system corresponding to the point cloud with the highest score is the radar pose matched by the point cloud data and the map data of the current frame, otherwise the search window needs to be expanded to return to S1.3;

[0084] S1.6: Calculate the pose transformation T1 between the current frame laser radar pose and the initial frame laser radar pose.

[0085] S2: Odometer track calculation

[0086] According to the differential wheel model shown in Figure 7 , the calculation formula of the robot speed V and the angular velocity W is:

[0087]

[0088] Wherein, V R represents the linear speed of the right wheel, V L represents the linear speed of the left wheel, and d represents the installation distance between the left and right wheels;

[0089] It can be concluded that:

[0090]

[0091] where ω L represents the left wheel angular velocity, ω R represents the right wheel linear velocity, v represents the robot linear velocity, and ω represents the robot angular velocity.

[0092] As Figure 8 , the calculation formula of the current frame relative to the first frame odometry pose p odom = (x odom , y odom , θ odom ), p odom is as follows:

[0093]

[0094] w(t) is the robot angular velocity at time t, v(t) is the robot linear velocity at time t, θ(t) is the robot rotation angle at time t, and the odometry pose transformation calculation process is shown in Figure 9 .

[0095] Since the actual odometry data is discrete, the above formula needs to be discretized. It is assumed that the left and right wheel angular velocities between adjacent two frames of odometry data are uniform, and the following formula is obtained:

[0096]

[0097]

[0098]

[0099]

[0100]

[0101]

[0102] where (x odom (i), y odom (i), θ odom (i)) is the change of the robot pose between the i-th frame data and the i+1-th frame data, n is the number of odometry data between the i-th frame data and the i+1-th frame data; (x odom , y odom , θ odom ) is the total odometry pose change from the start time to the current time, ω L i (j) and ω R i(j) is the odometer data corresponding to the i-th frame laser data timestamp, and AT(j) is the interval time between the i-th and i+1-th frame laser data. Since the odometer data arrival time is not necessarily consistent with the laser data, in order to obtain the odometer data corresponding to the current laser data timestamp, linear interpolation is required to obtain the odometer data corresponding to the current laser data timestamp.

[0103] S3: Differential odometer calibration

[0104] After obtaining two frames of laser point cloud data, according to the time stamps t1 and t2 of the first frame point cloud and the current frame point cloud, the motor speed data obtained through the encoder is interpolated according to the time stamp to obtain the left and right wheel motor speeds (ωr1, ωl1) and (ωr2, ωl2) at t1 and t2.

[0105] The differential odometer solving model can calculate the relative pose P2=(dx, dy, dθ) of the robot center between adjacent two frames of data according to the left and right wheel speeds.

[0106] The pose of the radar in the robot center coordinate system is P3=(X RADAR , Y RADAR , θ RADAR ), and the pose transformation relationship between P1, P2 and P3 is shown in Figure 10 .

[0107] In the absence of errors in the odometer parameters d, r l , r r and the installation parameters X RADAR , Y RADAR , θ RADAR of the radar relative to the odometer center, T2*T3=T3*T1, but due to errors, there is a difference between the two sides of the equation. In order to obtain the correct odometer parameters and radar installation parameters, a residual equation can be constructed:

[0108]

[0109]

[0110]

[0111] where T2 k is the pose of the robot coordinate system at time k relative to the robot coordinate system at the start time; T3 is the installation pose of the laser radar relative to the robot coordinate system, which is not affected by time and robot pose; T1 k is the pose of the laser radar at time k relative to the laser radar coordinate system at the start time.

[0112] The odometer parameters d, rl r r and the installation parameters X of the radar relative to the center of the odometer RADAR Y RADAR and θ RADAR are true odometer parameters and laser radar installation parameters.

[0113] Embodiment 2

[0114] Embodiment 2 of the present application provides an online differential odometer and laser radar parameter calibration system, comprising:

[0115] A data acquisition module configured to acquire first frame point cloud data and current frame laser point cloud data of the laser radar;

[0116] A laser radar pose calculation module configured to perform point cloud scanning matching according to the grid map and the acquired current frame laser point cloud data of the laser radar to obtain a current pose of the laser radar;

[0117] A timestamp alignment module configured to interpolate differential odometer data according to the timestamps of the first frame point cloud and the current frame point cloud to obtain odometer data corresponding to the timestamps;

[0118] A parameter calibration result generation module configured to add a residual term to a pose transformation relationship between the laser radar and the differential odometer based on the current pose of the laser radar and the odometer data corresponding to the timestamps, and iteratively optimize the transformation relationship to obtain a parameter calibration result of the differential odometer and the laser radar.

[0119] The working method of the system is the same as the online differential odometer and laser radar parameter calibration method provided in Embodiment 1, and will not be repeated here.

[0120] Embodiment 3

[0121] Embodiment 3 of the present application provides a computer readable storage medium having a program stored thereon, which, when executed by a processor, implements the steps of the online differential odometer and laser radar parameter calibration method as described in Embodiment 1 of the present application.

[0122] Embodiment 4

[0123] Embodiment 4 of the present application provides an electronic device comprising a memory, a processor, and a program stored on the memory and executable on the processor, wherein the processor implements the steps of the online differential odometer and laser radar parameter calibration method as described in Embodiment 1 of the present application when executing the program.

[0124] Those skilled in the art will appreciate that embodiments of the application can be readily used as software, hardware, or a combination of software and hardware. In a software embodiment, the methods can be tangibly embodied in a machine-readable storage medium having stored thereon instructions that can be used to program a processing system to perform the methods. The term "processor," as used herein can refer to one or more processors capable of executing a software routine created to perform one or more processes described herein. The processor can be implemented as one or more central processing units (CPUs), one or more microprocessors, one or more microcomputers, one or more microcontrollers, one or more digital signal processors, one or more graphics processing units (GPUs), one or more processing cores, one or more processing units, one or more processing circuits, one or more processing devices, one or more processors, one or more processing means, or any combination thereof. The processor can be implemented as a single-chip processor, a multi-chip processor, a multi-core processor, or any combination thereof.

[0125] The present application is described in reference to the flowchart and / or block diagrams of the methods, apparatus (systems) and computer program products according to embodiments of the present application. It will be understood that each block of the flowchart and / or block diagrams, and combinations of blocks in the flowchart and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processing apparatus, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart and / or block diagram block or blocks. Figure 1 one or more functions specified in the flowchart and / or block diagram block or blocks. Figure 1 one or more functions specified in the flowchart and / or block diagram block or blocks.

[0126] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the function specified in the flowchart and / or block diagram block or blocks. Figure 1 one or more functions specified in the flowchart and / or block diagram block or blocks. Figure 1 one or more functions specified in the flowchart and / or block diagram block or blocks.

[0127] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart and / or block diagram block or blocks. Figure 1 one or more functions specified in the flowchart and / or block diagram block or blocks. Figure 1 one or more functions specified in the flowchart and / or block diagram block or blocks.

[0128] Those skilled in the art will appreciate that implementing all or part of the methods described above in the embodiments can be accomplished by way of computer program instructions executed on a processor-based platform, which can be implemented as a general purpose computer, a special purpose computer, an embedded processing apparatus, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor-based platform, create means for implementing the functions specified in the flowchart and / or block diagram block or blocks. The program instructions can be stored in a computer- readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the function specified in the flowchart and / or block diagram block or blocks. The program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart and / or block diagram block or blocks.

[0129] The above descriptions are only the preferred embodiments of the present application, not intended to limit the present application. Any modification, equivalent replacement and improvement made within the spirit and principle of the present application shall fall within the scope of the present application.

Claims

1. A method for calibrating parameters of an online differential odometer and lidar, characterized in that: Includes the following processes: Acquire the first frame point cloud data and the current frame laser point cloud data from the lidar; Based on the grid map and the acquired laser point cloud data of the current frame of the lidar, point cloud scanning and matching are performed to obtain the current pose of the lidar. Based on the timestamps of the first frame point cloud and the current frame point cloud, the differential odometer data is interpolated according to the timestamps to obtain the odometer data under the corresponding timestamp; Based on the current pose of the lidar and the odometer data under the corresponding timestamp, the residual term is added through the pose transformation relationship of lidar and differential odometer, and the transformation relationship is iteratively optimized to obtain the parameter calibration results of differential odometer and lidar. By adding residual terms and iteratively optimizing the transformation relationship, the parameter calibration results of the differential odometer and lidar are obtained, including: ; ; ; in, Let k be the pose of the robot's coordinate system at time k relative to the robot's coordinate system at the initial time. This represents the installation pose of the lidar relative to the robot's coordinate system. Let k be the pose of the lidar relative to the lidar coordinate system at the initial time. Make the residual block Minimum odometer parameters And the installation parameters X of the lidar relative to the center of the odometer. RADAR Y RADAR and These serve as the calibrated odometer parameters and lidar installation parameters. ; ; ; in, Let be the robot's angular velocity at time t. Let be the linear velocity of the robot at time t. Let be the robot's rotation angle at time t; Discretization yields: ; ; ; ; ; ; in, For the first i Frame data and i+1 The change in robot pose between frames of data, where n is the number of odometry data points between the i-th frame and the (i+1)-th frame. The total odometry pose change from the start time to the current time is 0. and The odometry data corresponding to the timestamp of the i-th frame of laser data. For the first i and i+1 Frame laser data interval time, d This represents the installation distance between the left and right wheels.

2. The online differential odometer and lidar parameter calibration method as described in claim 1, characterized in that: Perform point cloud scanning and matching to obtain the current pose of the LiDAR, including: Obtain the prior pose; Transform the current frame laser point cloud data P of the lidar to the prior pose to obtain point cloud data P0. Rotate the point cloud data P0 to obtain the point cloud set V; Within the search window, perform a translation transformation on the point cloud set V to obtain a new point cloud set V1; Obtain the raster coordinates of each point in each point cloud set V1; The score for each point cloud is obtained based on the raster coordinates; Find the pose of the point cloud with the highest score; Determine if the highest score is greater than the minimum score allowed by the scan matching. If so, the pose corresponding to the point cloud with the highest score is the current LiDAR pose. Otherwise, expand the search window and return to the step of performing translation transformation on the point cloud set V within the search window to obtain a new point cloud set V1.

3. The online differential odometer and lidar parameter calibration method as described in claim 2, characterized in that: Rotate the laser point cloud P0 clockwise n times with a step size of r1, and then rotate P0 counterclockwise n times with a step size of r1 to obtain a point cloud set V containing 2n point clouds.

4. The online differential odometer and lidar parameter calibration method as described in claim 2, characterized in that: Each point cloud in the point cloud set V is translated along the X-axis and Y-axis by a certain step size j and k times respectively, ensuring that the translated point cloud is within the search window, resulting in a new point cloud set V1 containing 2n*j*k point clouds.

5. An online differential odometer and lidar parameter calibration system, characterized in that: include: The data acquisition module is configured to acquire the first frame of point cloud data and the current frame of laser point cloud data from the lidar. The lidar pose calculation module is configured to perform point cloud scanning and matching based on the grid map and the acquired lidar current frame laser point cloud data to obtain the lidar current pose. The timestamp alignment module is configured to: interpolate the differential odometer data according to the timestamps of the first frame point cloud and the current frame point cloud to obtain the odometer data under the corresponding timestamp; The parameter calibration result generation module is configured to: based on the current pose of the lidar and the odometer data at the corresponding timestamp, add residual terms through the pose transformation relationship of the lidar and differential odometer, iteratively optimize the transformation relationship, and obtain the parameter calibration results of the differential odometer and lidar, including: ; ; ; in, Let k be the pose of the robot's coordinate system at time k relative to the robot's coordinate system at the initial time. This represents the installation pose of the lidar relative to the robot's coordinate system. Let k be the pose of the lidar relative to the lidar coordinate system at the initial time. Make the residual block Minimum odometer parameters And the installation parameters X of the lidar relative to the center of the odometer. RADAR Y RADAR and These serve as the calibrated odometer parameters and lidar installation parameters. ; ; ; in, Let be the robot's angular velocity at time t. Let be the linear velocity of the robot at time t. Let be the robot's rotation angle at time t; Discretization yields: ; ; ; ; ; ; in, For the first i Frame data and i+1 The change in robot pose between frames of data, where n is the number of odometry data points between the i-th frame and the (i+1)-th frame. The total odometry pose change from the start time to the current time is 0. and The odometry data corresponding to the timestamp of the i-th frame of laser data. For the first i and i+1 Frame laser data interval time, d This represents the installation distance between the left and right wheels.

6. A computer-readable storage medium having a program stored thereon, characterized in that, When executed by the processor, the program implements the steps in the online differential odometer and lidar parameter calibration method as described in any one of claims 1-4.

7. An electronic device comprising a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps in the online differential odometer and lidar parameter calibration method as described in any one of claims 1-4.

Citation Information

Patent Citations

  • Positioning and mapping method and system based on fusion of laser radar and inertial measurement unit

    CN113066105A

  • Joint calibration method of laser radar and odometer, robot, equipment and medium

    CN114440928A