Radar calibration method, apparatus, device, storage medium, and computer program product
Patent Information
- Application Number
- CN202611379019.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-07
- Publication Date
- 2026-10-30
AI Technical Summary
[0003]本申请的主要目的在于提供一种雷达标定方法、装置、设备、存储介质及计算机程序产品,旨在解决时间同步与空间标定两步骤误差易累积导致整体标定精度受限的技术问题
在本申请中,公开了基于多个惯性测量单元的角速度数据,获取各惯性测量单元的角速度模值;基于各惯性测量单元的角速度模值,获取各惯性测量单元之间的时间偏移信息;基于时间偏移信息,对各惯性测量单元的角速度数据进行时间归算,得到目标角速度数据;基于目标角速度数据,选取非共线的角速度矢量对进行姿态解算,得到各惯性测量单元之间的旋转矩阵;基于时间偏移信息和旋转矩阵,对激光雷达进行时空标定;由于本申请通过利用多个内置惯性测量单元的角速度模值直接估计时间偏移信息,无需任何外部时钟源或同步线缆,从而摆脱对外部同步硬件的依赖,将标定流程压缩至分钟级,并利用基于时间偏移信息进行时间对齐后的角速度矢量对解算旋转矩阵,无需转台或标定物,进而使更换雷达后仅需手持晃动采集即可分钟级完成重新标定,且整个标定流程中时间同步与空间标定协同完成,避免了两个步骤独立标定的误差串联累积,实现了点云融合精度需求的高精度时空标定。
Smart Images

Figure CN123009899A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of radar calibration technology, and in particular to a radar calibration method, apparatus, equipment, storage medium, and computer program product. Background Technology
[0002] Currently, time synchronization and spatial calibration of multi-LiDAR systems rely on external hardware devices. The introduction of external references such as PTP servers, GPS modules, or turntables leads to high system hardware costs, complex deployment, and difficulty in rapid on-site deployment. There is also a technical problem that errors in the two steps of time synchronization and spatial calibration can easily accumulate, resulting in limited overall calibration accuracy. Summary of the Invention
[0003] The main purpose of this application is to provide a radar calibration method, apparatus, equipment, storage medium, and computer program product, which aims to solve the technical problem that the accumulation of errors in the two steps of time synchronization and spatial calibration leads to limited overall calibration accuracy.
[0004] To achieve the above objectives, this application provides a radar calibration method, the radar calibration method comprising: Based on the angular velocity data of multiple inertial measurement units, the angular velocity magnitude of each inertial measurement unit is obtained; Based on the angular velocity magnitude of each inertial measurement unit, the time offset information between each inertial measurement unit is obtained; Based on the time offset information, the angular velocity data of each inertial measurement unit are time-reduced to obtain the target angular velocity data; Based on the target angular velocity data, non-collinear angular velocity vector pairs are selected for attitude calculation to obtain the rotation matrix between each inertial measurement unit; Based on the time offset information and the rotation matrix, the lidar is spatiotemporally calibrated.
[0005] Optionally, the step of obtaining the time offset information between inertial measurement units based on the angular velocity magnitude of each inertial measurement unit includes: Based on the angular velocity magnitude of each inertial measurement unit, a sequence of magnitude values corresponding to each inertial measurement unit is generated; Each modulus sequence is resampled to a unified time axis to obtain multiple resampled modulus sequences; Based on multiple resampled modulus sequences, the peak position of the cross-correlation function is determined through correlation analysis; The time offset information between each inertial measurement unit is determined based on the peak position.
[0006] Optionally, the step of determining the time offset information between each inertial measurement unit based on the peak position includes: Based on the peak position, determine the time offset information to be determined between each inertial measurement unit; Subsampling point interpolation is performed on the peak value of the cross-correlation function to obtain the hysteresis correction. Based on the hysteresis correction amount, the time offset information to be determined is corrected to obtain the time offset information.
[0007] Optionally, the step of selecting non-collinear angular velocity vector pairs based on the target angular velocity data to perform attitude calculation and obtain the rotation matrix between each inertial measurement unit includes: Based on the preset window length and preset sliding step size, the target angular velocity data is divided into multiple windows; The multiple windows are traversed, and the traversed window is taken as the current window; The target angular velocity data within the current window are sampled to obtain non-collinear angular velocity vector pairs; Based on the non-collinear angular velocity vector pairs, the window rotation matrix corresponding to the current window is obtained through orientation determination; After the traversal is completed, the window rotation matrices corresponding to each window are merged to obtain the rotation matrix between each inertial measurement unit.
[0008] Optionally, the step of obtaining the window rotation matrix corresponding to the current window through pose determination based on the non-collinear angular velocity vector pairs includes: Based on the non-collinear angular velocity vector pairs, orthogonal bases are constructed in the coordinate systems of each inertial measurement unit, and the orthogonal bases include a first orthogonal base and a second orthogonal base; Construct a first matrix based on the first orthogonal basis, and construct a second matrix based on the second orthogonal basis; Based on the first matrix and the second matrix, determine the window rotation matrix corresponding to the current window.
[0009] Optionally, the step of obtaining the angular velocity magnitude of each inertial measurement unit based on the angular velocity data of multiple inertial measurement units includes: Based on the three-axis angular velocity data of each inertial measurement unit during the stationary period, the arithmetic mean of the angular velocity of each axis is determined as the gyroscope zero bias estimate for the corresponding axis. Based on the gyroscope zero-bias estimate, the three-axis angular velocity data of each inertial measurement unit during the stationary period are zero-biased to obtain the angular velocity magnitude of each inertial measurement unit.
[0010] Furthermore, to achieve the above objectives, this application also proposes a radar calibration device, which includes: The modulus calculation module is used to obtain the angular velocity modulus of each inertial measurement unit based on the angular velocity data of multiple inertial measurement units. The time synchronization module is used to obtain the time offset information between each inertial measurement unit based on the angular velocity magnitude of each inertial measurement unit; The time reduction module is used to perform time reduction on the angular velocity data of each inertial measurement unit based on the time offset information to obtain the target angular velocity data. The spatial alignment module is used to select non-collinear angular velocity vector pairs based on the target angular velocity data to perform attitude calculation and obtain the rotation matrix between each inertial measurement unit. The spatiotemporal calibration module is used to perform spatiotemporal calibration of the lidar based on the time offset information and the rotation matrix.
[0011] In addition, to achieve the above objectives, this application also proposes a radar calibration device, which includes a memory, a processor, and a radar calibration program stored in the memory and executable on the processor, the radar calibration program being configured to implement the radar calibration method described above.
[0012] In addition, to achieve the above objectives, this application also proposes a storage medium storing a radar calibration program, which, when executed by a processor, implements the radar calibration method as described above.
[0013] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a radar calibration program, and when the radar calibration program is executed by a processor, it implements the radar calibration method as described above.
[0014] One or more technical solutions proposed in this application have at least the following technical effects: This application discloses a method for obtaining the angular velocity magnitude of each inertial measurement unit (IMU) based on angular velocity data from multiple IMUs; obtaining time offset information between IMUs based on the angular velocity magnitudes of each IMU; performing time reduction on the angular velocity data of each IMU based on the time offset information to obtain target angular velocity data; selecting non-collinear angular velocity vector pairs for attitude calculation based on the target angular velocity data to obtain the rotation matrix between IMUs; and performing spatiotemporal calibration of the lidar based on the time offset information and the rotation matrix. Because this application utilizes... The angular velocity magnitudes of multiple built-in inertial measurement units directly estimate time offset information without any external clock source or synchronization cable, thus eliminating dependence on external synchronization hardware and compressing the calibration process to the minute level. The rotation matrix is calculated using angular velocity vectors aligned with time offset information, eliminating the need for turntables or calibration objects. This allows for recalibration to be completed in minutes with just handheld shaking data acquisition after radar replacement. Furthermore, time synchronization and spatial calibration are completed collaboratively throughout the entire calibration process, avoiding the cumulative error of two independent calibration steps and achieving high-precision spatiotemporal calibration to meet the accuracy requirements of point cloud fusion. Attached Figure Description
[0015] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0016] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0017] Figure 1 This is a flowchart illustrating the first embodiment of the radar calibration method of this application; Figure 2 This is a flowchart illustrating the second embodiment of the radar calibration method of this application; Figure 3 This is a flowchart illustrating the third embodiment of the radar calibration method of this application; Figure 4 This is a physical image of a dual-radar system; Figure 5 Timing diagram of the IMU three-axis gyroscope modulus; Figure 6 This is a diagram showing the effect of time alignment. Figure 7 This is a diagram showing the effect after installing angle compensation; Figure 8 This is a schematic diagram of the module structure of the radar calibration device according to an embodiment of this application; Figure 9 This is a schematic diagram of the hardware operating environment involved in the radar calibration method in this application embodiment.
[0018] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0019] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.
[0020] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.
[0021] This application provides a radar calibration method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the radar calibration method of this application.
[0022] In the first embodiment, the radar calibration method includes: Step S10: Based on the angular velocity data of multiple inertial measurement units, obtain the angular velocity magnitude of each inertial measurement unit.
[0023] It should be noted that the execution subject of this embodiment can be a radar calibration device with data processing, network communication and program running functions, such as multiple lidar, or other electronic devices that can achieve the same or similar functions. This embodiment does not limit this.
[0024] It should be understood that an inertial measurement unit (IMU) can be an inertial sensor assembly integrated inside a lidar unit for measuring the angular velocity and acceleration of a carrier.
[0025] It should be understood that angular velocity data can be a time-series signal output by the three-axis gyroscope in the IMU, representing the angular velocity of the carrier rotating around three orthogonal axes. For example, the three-axis gyroscope can output angular velocity components around the X-axis, Y-axis, and Z-axis, with each sampling point corresponding to a set of three-dimensional angular velocity vectors.
[0026] It should be understood that the magnitude of angular velocity can be a scalar value obtained by calculating the L2 norm of the three-axis angular velocity components at a single sampling point, that is, the arithmetic square root of the sum of squares of the three-axis angular velocity components. This magnitude remains unchanged in different spatial coordinate systems and has rotation invariance. The L2 norm, also known as the Euclidean norm, is the square root of the sum of squares of vector elements and is used to measure the magnitude and distance of a vector.
[0027] In the specific implementation, the angular velocity data of each sampling point of each IMU is first acquired. This can be done by establishing a data connection with each radar via wired communication (such as Ethernet or CAN bus) or wireless communication (such as Wi-Fi or Bluetooth), receiving the angular velocity data stream of each IMU in real time or reading it periodically. Alternatively, pre-acquired and stored angular velocity data files can be read from local memory; this embodiment does not impose specific limitations on this. Subsequently, for each sampling point of each IMU, the three-axis angular velocity components of the sampling point are extracted, and the arithmetic square root of the sum of squares of the three-axis components is calculated according to the definition of the L2 norm. This calculation result is used as the angular velocity magnitude corresponding to that sampling point.
[0028] Step S20: Based on the angular velocity magnitude of each inertial measurement unit, obtain the time offset information between each inertial measurement unit.
[0029] It should be noted that the time offset information can be the data timestamp deviation caused by different inertial measurement units operating independently of their respective clock sources, different sampling trigger times, or differences in data transmission link delays.
[0030] In the specific implementation, firstly, for each IMU, the angular velocity magnitudes of its sampling points are arranged in chronological order according to the sampling timestamps, forming a one-dimensional magnitude sequence for that IMU. The length of the magnitude sequence is equal to the total number of valid sampling points of that IMU during the acquisition period. Since there may be slight differences in the sampling start time and sampling frequency of each IMU, the time axes of the magnitude sequences are not consistent, and it is necessary to resample each magnitude sequence to a unified time axis. After resampling, multiple magnitude sequences with the same time axis are obtained. Then, two sequences are selected from the multiple resampled magnitude sequences as the sequences to be matched, and the normalized cross-correlation values of the two sequences under different hysteresis are calculated to form a cross-correlation function curve. The peak position of the cross-correlation function curve is then determined by searching for the maximum value of the function, and the physical time difference corresponding to the peak position is used as the time offset information between the two IMUs.
[0031] Step S30: Based on the time offset information, perform time reduction on the angular velocity data of each inertial measurement unit to obtain the target angular velocity data.
[0032] In the specific implementation, firstly, one IMU is selected from multiple IMUs as the reference measurement unit, and the time axis of the reference measurement unit is used as the unified time reference. The reference inertial measurement unit can be selected as the one with the earliest data acquisition start time, or it can be selected as the master inertial measurement unit pre-designated in the system. For the selected reference IMU, the timestamp of its angular velocity data remains unchanged and is used as part of the target angular velocity data. For other non-reference IMUs, the timestamp of each sampling point of its angular velocity data is adjusted according to the time offset information of the IMU relative to the reference IMU. Specifically, if the time offset information indicates that the angular velocity data of the IMU is generally lagging behind the reference IMU, the original timestamp of each sampling point is subtracted from the time offset, so that it is shifted forward on the time axis; if the time offset information indicates that the angular velocity data of the IMU is generally ahead of the reference IMU, the original timestamp of each sampling point is added to the time offset, so that it is shifted backward on the time axis. The above timestamp adjustment operation is performed on all sampling points of all non-reference IMUs in sequence, and the angular velocity data of each IMU after adjustment is used as the target angular velocity data.
[0033] Step S40: Based on the target angular velocity data, select non-collinear angular velocity vector pairs to perform attitude calculation and obtain the rotation matrix between each inertial measurement unit.
[0034] It should be noted that an angular velocity vector pair can be a combination of two angular velocity vectors from two inertial measurement units (IMUs) at the same time or within the same time window, or it can be a combination of angular velocity vectors from three IMUs. This embodiment does not impose any restrictions on this. For example, after time alignment, the angular velocity vector of the first IMU at time t and the angular velocity vector of the second IMU at time t constitute an angular velocity vector pair.
[0035] It should be noted that the rotation matrix can be the relative installation angles between the inertial measurement units.
[0036] In the specific implementation, for any two IMUs, angular velocity data at two different times are selected from the time-aligned data. At each time moment, an angular velocity vector is obtained from both the first and second IMUs, forming two pairs of angular velocity vectors. To ensure the numerical stability of the dual-vector attitude determination algorithm, it is required that the directions of the angular velocity vectors at the two different times are not collinear within the coordinate system of the first IMU itself. The determination method is as follows: after normalizing the angular velocity vectors of the first IMU at the two times, the dot product is calculated. If the absolute value of the dot product is less than a preset threshold (e.g., 0.95), the two vectors are considered to satisfy the non-collinearity condition. If not, the time moment is changed and a new selection is made until a vector pair that satisfies the condition is found. One or more pairs of angular velocity vectors that satisfy the non-collinearity condition can be selected, and the rotation matrix of the second IMU coordinate system relative to the first IMU coordinate system is jointly solved using the TRIAD algorithm or the least squares optimization method. This rotation matrix is the installation matrix between the two IMUs.
[0037] Step S50: Based on the time offset information and the rotation matrix, perform spatiotemporal calibration of the lidar.
[0038] In practical implementation, the time axis of the reference lidar can be used as a benchmark. The timestamps of each frame of point cloud data from other non-reference lidars are subtracted by the corresponding time offset to ensure temporal synchronization of the point cloud data from all lidars. Then, the spatial coordinates of the point clouds of each lidar are transformed according to a rotation matrix. Specifically, the point cloud coordinates of the non-reference lidars are left-multiplied by the rotation matrix, transforming each point cloud from its original coordinate system to the reference lidar coordinate system. This timestamp adjustment and coordinate transformation operation is performed sequentially on each 3D point of each frame of point cloud data to obtain the spatiotemporally unified point cloud data of each lidar, thus completing the spatiotemporal calibration of the lidars.
[0039] Furthermore, to achieve numerically stable and noise-resistant multi-window fusion installation angle estimation, the step of selecting non-collinear angular velocity vector pairs for attitude calculation based on the target angular velocity data to obtain the rotation matrix between each inertial measurement unit includes: dividing the target angular velocity data into multiple windows according to a preset window length and a preset sliding step size; traversing the multiple windows and taking the traversed window as the current window; sampling the target angular velocity data within the current window to obtain non-collinear angular velocity vector pairs; obtaining the window rotation matrix corresponding to the current window through attitude determination based on the non-collinear angular velocity vector pairs; and fusing the window rotation matrices corresponding to each window after traversal to obtain the rotation matrix between each inertial measurement unit.
[0040] It should be understood that window length can be the time span covered by a single window on the timeline or the corresponding number of data points.
[0041] It should be understood that the sliding step size can be the time interval between the starting positions of two adjacent windows or the data point interval.
[0042] In the specific implementation, firstly, multiple windows are divided in the target angular velocity data according to a preset window length and a preset sliding step size. The preset window length and preset sliding step size can be configured according to the sampling rate, motion change rate, and accuracy requirements of the inertial measurement units (IMUs). For example, the window length can be set to 100 sampling points, and the sliding step size can be set to 20 sampling points. Then, the multiple windows are traversed, and the traversed window is used as the current window. Within the current window, since the target angular velocity data is aligned in time, angular velocity data from two different times can be selected. At each time step, the two IMUs provide their respective angular velocity vectors, resulting in two pairs of angular velocity vectors. For the first IMU, the directions of its angular velocity vectors at the first and second times are calculated. If the two vectors are not collinear, i.e., their directions are significantly different, then the pair of vectors is considered to satisfy the non-collinearity condition and can be used for subsequent calculations. If not, the time step is changed and a new pair is selected until a pair of vectors that meets the condition is found. After obtaining one or more pairs of angular velocity vectors that satisfy the non-collinearity condition, the rotation matrix of the second inertial measurement unit relative to the first inertial measurement unit is solved using a two-vector attitude determination method (such as the TRIAD algorithm) or a least-squares optimization method based on constraint equations. This rotation matrix is then used as the window rotation matrix corresponding to the current window. After traversing all windows, the rotation matrices of each window are merged to obtain the final installation matrix.
[0043] Furthermore, to achieve the effects of stability and computational feasibility in analytical solutions, the step of obtaining the window rotation matrix corresponding to the current window through attitude determination based on the non-collinear angular velocity vector pairs includes: constructing orthogonal bases in each inertial measurement unit coordinate system based on the non-collinear angular velocity vector pairs, wherein the orthogonal bases include a first orthogonal base and a second orthogonal base; constructing a first matrix based on the first orthogonal base and constructing a second matrix based on the second orthogonal base; and determining the window rotation matrix corresponding to the current window based on the first matrix and the second matrix.
[0044] In the specific implementation, the two selected pairs of non-collinear angular velocity vectors are denoted as the first vector pair and the second vector pair, respectively. In the coordinate system of the first inertial measurement unit, the angular velocity vector in the first vector pair is used as the first basis vector and normalized. The angular velocity vector in the second vector pair is cross-producted with the first basis vector and normalized to obtain the second basis vector. The first basis vector is then cross-producted with the second basis vector to obtain the third basis vector. The first, second, and third basis vectors constitute the first orthogonal basis. In the coordinate system of the second inertial measurement unit, the same method is used to construct the second orthogonal basis based on the corresponding angular velocity vector pairs. Then, the three unit vectors of the first orthogonal basis are used as the first, second, and third column vectors of the first matrix, forming a 3×3 first matrix. The three unit vectors of the second orthogonal basis are used as the first, second, and third column vectors of the second matrix, forming a 3×3 second matrix. Multiplying the first matrix by the transpose of the second matrix yields the window rotation matrix corresponding to the current window.
[0045] This embodiment directly estimates time offset information by utilizing the angular velocity magnitudes of multiple built-in inertial measurement units, eliminating the need for any external clock source or synchronization cables. This frees the system from dependence on external synchronization hardware, compressing the calibration process to the minute level. The rotation matrix is calculated using angular velocity vectors aligned with the time offset information, eliminating the need for a turntable or calibration object. Consequently, after replacing the radar, recalibration can be completed in minutes simply by hand-held shaking data acquisition. Furthermore, time synchronization and spatial calibration are completed collaboratively throughout the entire calibration process, avoiding the cumulative error of two independent calibration steps. This achieves high-precision spatiotemporal calibration that meets the accuracy requirements of point cloud fusion.
[0046] Reference Figure 2 , Figure 2 This is a flowchart illustrating the second embodiment of the radar calibration method of this application, based on the above. Figure 1 The first embodiment shown illustrates a second embodiment of the radar calibration method of this application.
[0047] In the second embodiment, step S20 includes: Step S201: Based on the angular velocity magnitude of each inertial measurement unit, generate the magnitude sequence corresponding to each inertial measurement unit.
[0048] In the specific implementation, for each inertial measurement unit (IMU), the angular velocity magnitudes of the IMU at each sampling point are arranged in chronological order according to the sampling timestamps, forming a one-dimensional magnitude sequence corresponding to that IMU. The length of the magnitude sequence is equal to the total number of valid sampling points of that IMU during the acquisition period.
[0049] Step S202: Resample each modulus sequence to a unified time axis to obtain multiple resampled modulus sequences.
[0050] It should be noted that a unified timeline can be a common timeline with a unified start time, end time, and time resolution.
[0051] In the specific implementation, the time range and resolution of the unified time axis are first determined. The start time of the time range can be selected as the earliest sampling time in each modulus sequence, and the end time can be selected as the latest sampling time in each modulus sequence, so that the unified time axis can cover the complete time span of all modulus sequences. The time resolution can be set to an equivalent frequency not lower than the original sampling rate of each modulus sequence, or it can be set according to the accuracy requirements of subsequent cross-correlation calculations. Then, interpolation operations are performed on each modulus sequence to map each modulus sequence onto the unified time axis. Specifically, for each time point on the unified time axis, the adjacent sampling points before and after that time point are found in the original modulus sequence, and the modulus corresponding to that time point is calculated by interpolation. The interpolation method can be a conventional time series data interpolation method, such as linear interpolation, or other interpolation methods such as spline interpolation. After the above interpolation operations, each modulus sequence has the same time point and the same number of data points on the unified time axis, resulting in multiple resampled modulus sequences.
[0052] Step S203: Based on the multiple modulus sequences after resampling, determine the peak position of the cross-correlation function through correlation analysis.
[0053] In the specific implementation, two sequences are selected from the multiple resampled modulus sequences as the sequences to be matched, denoted as the first modulus sequence and the second modulus sequence, respectively. The correlation function values of the first and second modulus sequences under different lags are calculated to obtain the cross-correlation function curve. A larger correlation function value indicates a higher degree of waveform similarity between the two modulus sequences under that lag. The position corresponding to the maximum value is searched on the cross-correlation function curve, and this position is taken as the peak position of the cross-correlation function.
[0054] Step S204: Determine the time offset information between each inertial measurement unit based on the peak position.
[0055] In practical implementation, the hysteresis corresponding to the peak position of the cross-correlation function is determined as the time offset information between each inertial measurement unit. The hysteresis can be directly represented by the number of sampling points, or it can be converted into a time unit based on the sampling period of a unified time axis.
[0056] Furthermore, in order to overcome the limitation of the original sampling interval on the estimation resolution and achieve sub-millisecond time alignment accuracy, step S204 includes: determining the time offset information to be determined between each inertial measurement unit based on the peak position; performing sub-sampling point interpolation on the peak of the cross-correlation function to obtain the hysteresis correction amount; and correcting the time offset information to be determined based on the hysteresis correction amount to obtain the time offset information.
[0057] It should be understood that the time offset information to be determined can be an initial time offset estimate obtained directly from the peak position of the cross-correlation function, which has not yet undergone fine correction at the subsampling level and has an accuracy at the level of integer sampling points.
[0058] In the specific implementation, firstly, based on the determined peak position of the cross-correlation function, the time offset information to be determined between each inertial measurement unit is obtained. This time offset information corresponds to the hysteresis of the integer sampling point where the peak position is located, with an accuracy of one sampling interval. Then, multiple discrete points are selected near the peak of the cross-correlation function, and a continuous curve is fitted using an interpolation method. The precise position corresponding to the maximum value is searched on this continuous curve to obtain the hysteresis correction amount with sub-sampling point accuracy. The interpolation method can be parabolic interpolation, Gaussian interpolation, spline interpolation, etc. Finally, the time offset information to be determined is superimposed with the hysteresis correction amount to obtain the time offset information.
[0059] This embodiment generates the magnitude sequence of each IMU based on the angular velocity magnitude and resamples it to a unified time axis. Then, it determines the peak position of the cross-correlation function through normalized cross-correlation calculation to obtain the time offset. Thus, reliable estimation of the time offset can be achieved without an external clock source, thereby providing accurate offset parameters for subsequent time reduction.
[0060] Reference Figure 3 , Figure 3 This is a flowchart illustrating the third embodiment of the radar calibration method of this application. Based on the above embodiments, the third embodiment of the radar calibration method of this application is proposed.
[0061] In the third embodiment, step S10 includes: Step S101: Based on the three-axis angular velocity data of each inertial measurement unit during the stationary period, determine the arithmetic mean of the angular velocity of each axis as the gyroscope zero bias estimate for the corresponding axis.
[0062] In practical implementation, for a given inertial measurement unit, the X-axis angular velocity data of all sampling points during the stationary period are averaged to obtain the gyro zero-bias estimate for the X-axis. Similarly, the Y-axis and Z-axis angular velocity data are averaged separately to obtain the gyro zero-bias estimates for the Y-axis and Z-axis, respectively.
[0063] Step S102: Based on the zero-bias estimate of the gyroscope, perform zero-bias subtraction on the three-axis angular velocity data of each inertial measurement unit during the stationary period to obtain the angular velocity magnitude of each inertial measurement unit.
[0064] In the specific implementation, for a given sampling point, the X-axis angular velocity value of that sampling point is subtracted from the X-axis gyroscope zero-bias estimate of the IMU to obtain the corrected X-axis angular velocity data. Similarly, the same subtraction operation is performed on the Y-axis and Z-axis. The above operation is performed on each sampling point during the stationary period. After the zero-bias subtraction is completed, based on the three-axis angular velocity data after zero-bias subtraction, the instantaneous magnitude of the three-axis angular velocity components of each sampling point is calculated as the angular velocity magnitude.
[0065] This embodiment calculates the arithmetic mean of each axis based on the three-axis angular velocity data during the stationary period as the gyroscope zero bias estimate and performs zero bias subtraction, thereby eliminating the systematic error influence of the gyroscope's inherent zero bias on the calibration accuracy and improving the accuracy of subsequent modulus sequence correlation analysis and attitude calculation.
[0066] For ease of understanding, the following references Figure 4 To illustrate, Figure 4 This is a physical diagram of a dual-radar system, but it is not intended to limit this application. As an example, suppose... Figure 4 As shown, two lidar units with integrated IMUs (hereinafter referred to as LiDAR-A and LiDAR-B) are fixed together, and their relative position and attitude remain unchanged during the measurement process. Both lidar units are simultaneously activated for data acquisition. First, the entire system is kept still for approximately 10-30 seconds for subsequent IMU zero-bias estimation. Then, the entire system is handheld and subjected to sufficient shaking, including single-axis rotations around the pitch, roll, and yaw axes, as well as three-axis composite motions (such as figure-eight shaking), to ensure rich angular velocity excitation during the motion phase. In this example, the IMU sampling rate is 200Hz, and approximately 180 seconds of data are collected, with the first 20 seconds being the stationary phase and 20-180 seconds being the motion phase (see [reference]). Figure 5 Then, the triaxial angular velocity data of the two IMUs were extracted separately. Let the triaxial angular velocity sequence of IMU-A be:
[0067] in, This indicates the timestamp of the IMU-A, representing the sampling time corresponding to this set of angular velocity data; To represent the three-dimensional angular velocity vector of the IMU-A at time tA, it can be a 3×1 column vector; This represents the angular velocity component of IMU-A about the X-axis at time tA. Correspondingly, , These represent the angular velocity components of the IMU-A around the X and Y axes at time tA, respectively.
[0068] The triaxial angular velocity sequence of the IMU-B is as follows:
[0069] Subsequently, the stationary segment of data is extracted, and the arithmetic mean of the angular velocities of each axis is determined as the zero-bias estimate for that axis, which is then subtracted from the corresponding axis in the entire data sequence. For each sampling point after zero-bias subtraction, the L2 norm (i.e., the square root of the sum of squares) of the three-axis angular velocities is calculated, forming a one-dimensional modulus sequence:
[0070]
[0071] in, This represents the magnitude of the angular velocity of the IMU-A at time tA. This represents the magnitude of the angular velocity of the IMU-B at time tB.
[0072] set up Let be the rotation matrix between the two coordinate systems, then it satisfies:
[0073] Take the L2 norm on both sides:
[0074] The rotation matrix does not change the magnitude of the vector. Therefore, even if the installation angle between two IMUs is completely unknown, their angular velocity magnitude sequences are theoretically consistent after time alignment.
[0075] Then, since the sampling times of the two IMUs are usually not perfectly aligned, the two magnitude sequences must first be resampled onto a unified high-resolution time axis using linear interpolation to obtain... and Normalized cross-correlation is calculated for the two resampled sequences. The discrete form of the normalized cross-correlation function is:
[0076] in, This represents the normalized cross-correlation function in the lag. The value at this lag is [-1, 1]. The closer the value is to 1, the more similar the waveforms of the two sequences are under this lag. This represents the offset of the second sequence relative to the first sequence on the time axis, expressed in units of sampling points. Find the value that makes... Maximum lag ; As a reference sequence, the magnitude sequence of the first inertial measurement unit is in the... The value of each sampling point; The magnitude sequence of the second inertial measurement unit is represented in the th... The value of each sampling point, that is, relative to Offset The corresponding value after each sampling point; The sampling point index is the cumulative variable in the summation formula, and its value range covers the overlapping part of the two sequences; It refers to the energy of the first modulus sequence within the overlapping region (the sum of the squares of the moduli at each point); It refers to the energy of the second modulus sequence within the overlapping region (the sum of the squares of the moduli at each point).
[0077] To further improve temporal resolution, three-point parabolic interpolation is performed on the cross-correlation peaks to obtain the hysteresis correction for subsampling point accuracy. The peak coordinates can be set as follows: The left and right neighboring points are and Subsampling point correction for:
[0078] in, This represents the value of the cross-correlation function at the peak position of the integer sampling point; For the cross-correlation function, the points adjacent to the left of the peak position The value at that location, The correlation function is located at the point adjacent to the right of the peak position. The value at; The difference between the relevant values on the left and right sides reflects the symmetry of the peak. For example, if the value on the left is greater than the value on the right, the true peak is biased to the left, and δ is positive; otherwise, δ is negative. (The formula contains...) The fixed coefficients for parabolic interpolation can be derived from the parabola vertex formula and are used to normalize the deviation between the vertex position (i.e. the true peak position) and the discrete peak position to a scale in units of sampling intervals.
[0079] Furthermore, fine lag quantity for:
[0080] Corresponding time offset for:
[0081] in, This is the equivalent sampling rate after interpolation.
[0082] Furthermore, the theoretical accuracy of time delay estimation is limited by the Cramer-Rao lower bound. For a baseband real signal, if the effective bandwidth of the signal is... (Root mean square bandwidth), with cross-correlation equivalent signal-to-noise ratio (SNR) as , then the theoretical lower bound of the standard deviation of the time delay estimate is:
[0083] Among them, the root mean square bandwidth The power spectral density can be obtained from the modulus sequence calculate:
[0084] According to the above formula, we obtain... By combining this with the equivalent SNR estimated from the cross-correlation peak value, the theoretical upper limit of the calibration can be quantitatively predicted, providing a theoretical basis for judging the reliability of the calibration results. For example, when At 15 Hz and SNR=50, the theoretical accuracy can reach approximately 0.15 milliseconds.
[0085] Then, using The timestamps of IMU-B are mapped to the timeline of IMU-A, and the alignment effect is as follows: Figure 6 As shown. Let the start time of IMU-A be... The start time of IMU-B is Then the time after IMU-B alignment is:
[0086] The time-aligned angular velocity data from the two IMUs are resampled onto a common uniform time axis through interpolation. A segment of motion data (70-160 seconds in this example) is extracted to obtain the angular velocity matrix of the IMU-A. Angular velocity matrix of IMU-B The two correspond one-to-one in time. They satisfy the following:
[0087] in This is the installation rotation matrix to be determined. This is the original timestamp of the IMU-B.
[0088] Then, a sliding window combined with the TRIAD two-vector attitude determination algorithm is used to calculate the installation angle. Specifically, the window size is set to W sampling points (e.g., W=100), and the sliding step size is S sampling points (e.g., S=20). For each window: (a) Optimal Vector Pair Selection: Sample several point pairs within the window (maximum 30 points to reduce computational load), calculate the angle between the two angular velocity vectors, and select the vector pair with the largest angle. The cosine of the angle between the two vectors is:
[0089] The TRIAD algorithm exhibits optimal numerical stability when θ approaches 90°.
[0090] (b) TRIAD attitude determination: using selected vector pairs and Construct orthogonal bases in series A and B respectively:
[0091]
[0092] in, Let be the first unit vector of the first orthogonal basis, by Normalization yields the direction and same; Let be the second unit vector of the first orthogonal basis, by and The cross product is normalized to obtain the direction perpendicular to the direction. and On the plane; Let be the third unit vector of the first orthogonal basis, by and The cross product is obtained, and the direction is perpendicular to both. and The first set of angular velocity vectors selected in the A system, such as the angular velocity measured by the IMU-A at a certain moment; The second set of angular velocity vectors selected in frame A, and... Non-collinear, such as the angular velocity measured by the IMU-A at another moment.
[0093] The rotation matrix corresponding to this window is:
[0094] (c) Multi-window fusion: After traversing all windows, a series of rotation matrix estimates are obtained. Each Convert to quaternion The average of all quaternions is obtained And normalized to obtain :
[0095] Will Convert back to rotation matrix to obtain installation matrix. .Will Converted to Euler angles (ZXY order), the results in this example are: Yaw -179.1932°, Pitch -66.3505°, Roll 4.4625°.
[0096] Finally, as a truth reference, a post-processing algorithm was used to precisely calibrate the same dual-LiDAR system, and the results were: Yaw -178.955°, Pitch -66.49°, Roll 4.27°.
[0097] The comparison between this example method and the turntable truth is shown in the table below:
[0098] The triaxial deviations Yaw (Z), Pitch (X), and Roll (Y) are all less than 0.3°, which meets the accuracy requirements for engineering applications.
[0099] Furthermore, the angular velocity data of the IMU-B is transmitted through... Rotating to the IMU-A coordinate system and plotting it in the same coordinate system as the original IMU-A angular velocity, the three-axis curves highly coincide, verifying the correctness of the calibration results (see [link]). Figure 7 ).
[0100] Finally, the time offset is... and installation matrix Point cloud data applied to LiDAR-B: Point cloud timestamps are uniformly subtracted. left multiplication of point cloud coordinates Transform to LiDAR-A coordinate system:
[0101] in , These are the coordinates of the same point in the LiDAR-A and LiDAR-B coordinate systems, respectively. The processed dual radar point clouds can be directly used in subsequent fusion algorithms without obvious ghosting or layering.
[0102] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the radar calibration method of this application. Any simple modifications based on this technical concept are within the protection scope of this application.
[0103] This application also provides a radar calibration device, please refer to... Figure 8 The radar calibration device includes: The modulus calculation module 10 is used to obtain the angular velocity modulus of each inertial measurement unit based on the angular velocity data of multiple inertial measurement units. The time synchronization module 20 is used to obtain the time offset information between each inertial measurement unit based on the angular velocity magnitude of each inertial measurement unit; The time reduction module 30 is used to perform time reduction on the angular velocity data of each inertial measurement unit based on the time offset information to obtain the target angular velocity data. The spatial alignment module 40 is used to select non-collinear angular velocity vector pairs based on the target angular velocity data to perform attitude calculation and obtain the rotation matrix between each inertial measurement unit. The spatiotemporal calibration module 50 is used to perform spatiotemporal calibration on the lidar based on the time offset information and the rotation matrix.
[0104] The radar calibration device provided in this application, employing the radar calibration method described in the above embodiments, can solve the technical problem that the accumulation of errors in the time synchronization and spatial calibration steps leads to limited overall calibration accuracy. Compared with the prior art, the beneficial effects of the radar calibration device provided in this application are the same as those of the radar calibration method provided in the above embodiments, and other technical features in the radar calibration device are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.
[0105] This application provides a radar calibration device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which are executed by the at least one processor to enable the at least one processor to perform the radar calibration method in Embodiment 1 above.
[0106] The following is for reference. Figure 9 The diagram illustrates a structural schematic of a radar calibration device suitable for implementing embodiments of this application. The radar calibration device in these embodiments may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 9 The radar calibration device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0107] like Figure 9As shown, the radar calibration device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in ROM (Read Only Memory) 1002 or a program loaded from storage device 1003 into RAM (Random Access Memory) 1004. RAM 1004 also stores various programs and data required for the operation of the radar calibration device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via bus 1005. Input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to I / O interface 1006: input devices 1007 including, for example, touch screens, touchpads, keyboards, mice, image sensors, microphones, accelerometers, gyroscopes, etc.; output devices 1008 including, for example, LCDs (Liquid Crystal Displays), speakers, vibrators, etc.; storage devices 1003 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1009. Communication device 1009 allows the radar calibration equipment to communicate wirelessly or wiredly with other equipment to exchange data. Although radar calibration equipment with various systems is shown in the figures, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.
[0108] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.
[0109] The radar calibration device provided in this application, employing the radar calibration method described in the above embodiments, can solve the technical problem that the accumulation of errors in the time synchronization and spatial calibration steps leads to limited overall calibration accuracy. Compared with the prior art, the beneficial effects of the radar calibration device provided in this application are the same as those of the radar calibration method provided in the above embodiments, and other technical features of this radar calibration device are the same as those disclosed in the previous embodiment method, and will not be repeated here.
[0110] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.
[0111] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0112] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the radar calibration method in the above embodiments.
[0113] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable Read Only Memory), or flash memory, optical fiber, CD-ROM (CD-Read Only Memory), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.
[0114] The aforementioned computer-readable storage medium may be included in the radar calibration equipment; or it may exist independently and not be assembled into the radar calibration equipment.
[0115] The aforementioned computer-readable storage medium carries one or more programs, which, when executed by the radar calibration device, cause the radar calibration device to perform the aforementioned radar calibration method.
[0116] Computer program code for performing the operations of this application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including LAN (Local Area Network) or WAN (Wide Area Network)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0117] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0118] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.
[0119] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described radar calibration method. This solves the technical problem that the accumulation of errors in the time synchronization and spatial calibration steps can limit the overall calibration accuracy. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the radar calibration method provided in the above embodiments, and will not be repeated here.
[0120] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the radar calibration method as described above.
[0121] The computer program product provided in this application can solve the technical problem that the accumulation of errors in the time synchronization and spatial calibration steps leads to limited overall calibration accuracy. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as those of the radar calibration method provided in the above embodiments, and will not be repeated here.
[0122] The above description is only a part of the embodiments of this application and does not limit the scope of this application. All equivalent structural transformations made under the technical concept of this application and using the content of this application specification and drawings, or direct / indirect applications in other related technical fields, are included within the protection scope of this application.
[0123] It should be noted that the data collection, tag management, rule setting, and push decision-making processes involved in this application are designed to work with other technical features to solve technical problems. They do not involve or support any illegal activities. Any data processing that may violate laws and regulations (such as unauthorized collection of privacy data, generation of discriminatory tags, setting unfair rules, or pushing illegal information) is not within the scope of protection of this application's technical solution. Of course, the user data in this application will be encrypted, anonymized, or de-identified before storage to ensure user data security.
Claims
1. A radar calibration method, characterized in that, The radar calibration method includes: Based on the angular velocity data of multiple inertial measurement units, the angular velocity magnitude of each inertial measurement unit is obtained; Based on the angular velocity magnitude of each inertial measurement unit, the time offset information between each inertial measurement unit is obtained; Based on the time offset information, the angular velocity data of each inertial measurement unit are time-reduced to obtain the target angular velocity data; Based on the target angular velocity data, non-collinear angular velocity vector pairs are selected for attitude calculation to obtain the rotation matrix between each inertial measurement unit; Based on the time offset information and the rotation matrix, the lidar is spatiotemporally calibrated.
2. The radar calibration method as described in claim 1, characterized in that, The step of obtaining the time offset information between inertial measurement units based on the angular velocity magnitude of each inertial measurement unit includes: Based on the angular velocity magnitude of each inertial measurement unit, a sequence of magnitude values corresponding to each inertial measurement unit is generated; Each modulus sequence is resampled to a unified time axis to obtain multiple resampled modulus sequences; Based on multiple resampled modulus sequences, the peak position of the cross-correlation function is determined through correlation analysis; The time offset information between each inertial measurement unit is determined based on the peak position.
3. The radar calibration method as described in claim 2, characterized in that, The step of determining the time offset information between each inertial measurement unit based on the peak position includes: Based on the peak position, determine the time offset information to be determined between each inertial measurement unit; Subsampling point interpolation is performed on the peak value of the cross-correlation function to obtain the hysteresis correction. Based on the hysteresis correction amount, the time offset information to be determined is corrected to obtain the time offset information.
4. The radar calibration method according to any one of claims 1 to 3, characterized in that, The step of selecting non-collinear angular velocity vector pairs for attitude calculation based on the target angular velocity data to obtain the rotation matrix between each inertial measurement unit includes: Based on the preset window length and preset sliding step size, the target angular velocity data is divided into multiple windows; The multiple windows are traversed, and the traversed window is taken as the current window; The target angular velocity data within the current window are sampled to obtain non-collinear angular velocity vector pairs; Based on the non-collinear angular velocity vector pairs, the window rotation matrix corresponding to the current window is obtained through orientation determination; After the traversal is completed, the window rotation matrices corresponding to each window are merged to obtain the rotation matrix between each inertial measurement unit.
5. The radar calibration method as described in claim 4, characterized in that, The step of obtaining the window rotation matrix corresponding to the current window through pose determination based on the non-collinear angular velocity vector pairs includes: Based on the non-collinear angular velocity vector pairs, orthogonal bases are constructed in the coordinate systems of each inertial measurement unit, and the orthogonal bases include a first orthogonal base and a second orthogonal base; Construct a first matrix based on the first orthogonal basis, and construct a second matrix based on the second orthogonal basis; Based on the first matrix and the second matrix, determine the window rotation matrix corresponding to the current window.
6. The radar calibration method as described in claim 1, characterized in that, The step of obtaining the angular velocity magnitude of each inertial measurement unit based on the angular velocity data of multiple inertial measurement units includes: Based on the three-axis angular velocity data of each inertial measurement unit during the stationary period, the arithmetic mean of the angular velocity of each axis is determined as the gyroscope zero bias estimate for the corresponding axis. Based on the gyroscope zero-bias estimate, the three-axis angular velocity data of each inertial measurement unit during the stationary period are zero-biased to obtain the angular velocity magnitude of each inertial measurement unit.
7. A radar calibration device, characterized in that, The radar calibration device includes: The modulus calculation module is used to obtain the angular velocity modulus of each inertial measurement unit based on the angular velocity data of multiple inertial measurement units. The time synchronization module is used to obtain the time offset information between each inertial measurement unit based on the angular velocity magnitude of each inertial measurement unit; The time reduction module is used to perform time reduction on the angular velocity data of each inertial measurement unit based on the time offset information to obtain the target angular velocity data. The spatial alignment module is used to select non-collinear angular velocity vector pairs based on the target angular velocity data to perform attitude calculation and obtain the rotation matrix between each inertial measurement unit. The spatiotemporal calibration module is used to perform spatiotemporal calibration of the lidar based on the time offset information and the rotation matrix.
8. A radar calibration device, characterized in that, The radar calibration device includes: a memory, a processor, and a radar calibration program stored in the memory and executable on the processor. When the radar calibration program is executed by the processor, it implements the radar calibration method as described in any one of claims 1 to 6.
9. A storage medium, characterized in that, The storage medium stores a radar calibration program, which, when executed by a processor, implements the radar calibration method as described in any one of claims 1 to 6.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the steps of the radar calibration method as described in any one of claims 1 to 6.
