Calibration pipeline for estimating autonomous vehicle six degrees of freedom (6dof) localization parameters
By using autonomous driving controller and filter technology, the problem of noisy point cloud calibration of radar sensors in autonomous vehicles has been solved, enabling accurate six-degree-of-freedom positioning calibration of autonomous vehicles and improving their positioning accuracy and stability.
Patent Information
- Application Number
- CN202211246461.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-10-27
- Filing Date
- 2022-10-12
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2042-10-12
AI Technical Summary
Existing autonomous vehicles require a manual and cumbersome calibration process after cameras or radars are removed from their installation locations. This is especially true when the vehicle's wheel alignment changes, which necessitates recalibrating the cameras and radars. Furthermore, radar point cloud data based on low-cost millimeter-wave radars is too noisy and sparse to be used for robust and accurate pose estimation required for dynamic calibration.
The system receives data from the inertial measurement unit (IMU) and radar sensors via the autopilot controller. Using a moving average filter and a nonlinear optimization algorithm, combined with an iterative solver and filters, the system determines the radar-IMU relative pose pair and performs nonlinear minimization to accurately calculate the six-degree-of-freedom positioning parameters, including smoothing the alignment and time offset calibration of the IMU and radar poses.
It enables automatic and accurate calibration of the six-degree-of-freedom positioning parameters between the radar sensor and the center of gravity of the autonomous vehicle under noisy and sparse radar point cloud conditions, thereby improving the positioning accuracy and stability of the autonomous vehicle.
Smart Images

Figure CN116026359B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to a calibration pipeline for estimating six degrees of freedom (6DoF) localization parameters between a radar sensor and a center of mass of an autonomous vehicle. BACKGROUND
[0002] Autonomous vehicles can use various on-board technologies and sensors to travel from a starting point to a predetermined destination with limited or no human intervention. Autonomous vehicles include various autonomous sensors such as, but not limited to, cameras, radars, lidar, global positioning systems (GPS), and inertial measurement units (IMU) for detecting the environment and state outside the vehicle. However, if a camera or radar is moved from its installed position when the autonomous vehicle is being serviced, is in an accident, or encounters a large pothole or obstacle while driving, the camera or radar needs to be recalibrated, which is a manual and often tedious process. Furthermore, if the autonomous vehicle is wheel aligned, the camera and radar also need to be recalibrated. This is because the vehicle wheels determine the direction of travel, which also affects the aim of the camera and radar.
[0003] Millimeter wave (mmWave) radar is a particular technology that can be used in autonomous vehicles. For example, mmWave radar can be used for forward and rear collision warning, adaptive cruise control and automatic parking, and autonomous driving on streets and highways. It should be understood that mmWave radar has an advantage over other sensor systems because mmWave radar can work in most types of weather and in light and dark environments. MmWave radar can measure the distance, angle, and Doppler (radial velocity) of moving objects. Based on the data collected by mmWave radar, radar point clouds can be determined according to various clustering and tracking algorithms, which can be used to determine the position, velocity, and trajectory of objects. However, radar point clouds based on data collected by mmWave radar, especially mmWave radar based on low-cost system-on-a-chip (SoC), can be too noisy and sparse to be used for robust and accurate pose estimation required for dynamic calibration.
[0004] Therefore, while current autonomous vehicles achieve their intended purpose, there is a need in the art for a system and method for estimating six degrees of freedom localization parameters between a radar sensor and a center of mass of an autonomous vehicle based on noisy and sparse radar point clouds. SUMMARY
[0005] According to aspects, a calibration pipeline for estimating six degrees of freedom (6DoF) localization parameters of an autonomous vehicle is disclosed. The calibration pipeline includes an autonomous driving controller instructed to receive inertial measurement device (IMU) poses and final radar poses. The IMU poses are based on data collected by an IMU and a global positioning system (GPS) of the autonomous vehicle, and the final radar poses are based on data collected by a radar sensor of the autonomous vehicle. The autonomous driving controller is instructed to determine smoothed IMU poses from the IMU poses and final smoothed radar poses from the final radar poses according to a moving average filter or a moving median filter. The autonomous driving controller is instructed to align the smoothed IMU poses and the final smoothed radar poses to each other to create a plurality of radar-IMU A, B relative pose pairs. The autonomous driving controller is instructed to determine a solution of an inlier threshold number of further filtered radar-IMU A, B relative pose pairs from the plurality of radar-IMU A, B relative pose pairs. The autonomous driving controller is instructed to replace a number of times the further filtered radar-IMU A, B relative pose pairs with a number of times to determine a stream of filtered radar-IMU A, B relative pose pairs. Finally, the autonomous driving controller is instructed to solve for X of the stream of filtered radar-IMU A, B relative pose pairs, where the solution X represents the 6DoF localization parameters.
[0006] In an aspect, the autonomous driving controller is instructed to further refine the solution X by performing a nonlinear minimization of an error term based on a nonlinear optimization routine, where the nonlinear optimization routine is performed until the error term converges.
[0007] In another aspect, the nonlinear optimization routine is a nonlinear least squares routine.
[0008] In yet another aspect, the error term is a sum of an orthogonality measure of a current estimate rotation portion of the solution X from a previous iteration, a norm of a rotation portion of the solution X from the previous iteration, and a Mahalanobis distance of an {AX-XB} term.
[0009] In an aspect, the smoothed IMU poses and the final smoothed radar poses are aligned to each other based on a time offset correlation coefficient.
[0010] In another aspect, the time offset correlation coefficient indicates a system time offset between the smoothed IMU poses and the final smoothed radar poses.
[0011] In yet another aspect, the time offset correlation coefficient is determined by correlating an angular velocity magnitude determined based on the smoothed IMU poses with an angular velocity magnitude determined based on the final smoothed radar poses.
[0012] In one aspect, a kth nearest neighbor (kNN) technique is used to determine all possible A, B relative pose pairs of the solution, resulting in an inlier threshold number of further filtered radar-IMU A, B relative pose pairs.
[0013] In another aspect, the all possible A, B relative pose pairs are filtered by a random sample consensus (RANSAC) filter based on a hand-eye calibration problem that is solved based on an AX = XB solver.
[0014] In yet another aspect, the solution X of the filtered radar-IMU A, B relative pose pairs is determined by an iterative solver.
[0015] In one aspect, the iterative solver is an unscented Kalman filter.
[0016] In another aspect, a spherical linear interpolation (SLERP) based moving average filter determines the smoothed IMU poses and the final smoothed radar poses.
[0017] In one aspect, a method for estimating 6DoF localization parameters of an autonomous vehicle is disclosed. The method includes receiving, by an autonomous driving module, IMU poses and final radar poses, wherein the IMU poses are based on data collected by an IMU and a GPS of the autonomous vehicle, and the final radar poses are based on data collected by a radar sensor of the autonomous vehicle. The method further includes determining, by the autonomous driving module, smoothed IMU poses from the IMU poses and final smoothed radar poses from the final radar poses according to a moving average filter or a moving median filter. The method further includes aligning the smoothed IMU poses and the final smoothed radar poses to each other to create a plurality of radar-IMU A, B relative pose pairs. The method further includes determining, from the plurality of radar-IMU A, B relative pose pairs, a solution that results in an inlier threshold number of further filtered radar-IMU A, B relative pose pairs. The method includes performing several replacement random samplings on the further filtered radar-IMU A, B relative pose pairs to determine a stream of filtered radar-IMU A, B relative pose pairs. Finally, the method includes solving X for the stream of filtered radar-IMU A, B relative pose pairs, wherein the solution X represents the 6DoF localization parameters.
[0018] In one aspect, the method includes further refining the solution X by performing a non-linear minimization on an error term based on a non-linear optimization routine. The non-linear optimization routine is performed until the error term converges.
[0019] In another aspect, the method includes determining an error term, wherein the error term is a sum of an orthogonality measure of a current estimate of the rotation part of the solution X in the last iteration, a norm of the rotation part of the solution X in the last iteration, and a Mahalanobis distance of the {AX-XB} term.
[0020] In yet another aspect, the method includes aligning the smoothed IMU poses and the final smoothed radar poses to each other based on a time offset correlation coefficient. The time offset correlation coefficient indicates a system time offset between the smoothed IMU poses and the final smoothed radar poses.
[0021] In one aspect, the method includes determining all possible A, B relative pose pairs of the solution based on a kNN technique, resulting in an inlier threshold number of further filtered radar-IMU A, B relative pose pairs, and filtering the all possible A, B relative pose pairs through two RANSAC filters based on a hand-eye calibration problem that is solved based on an AX=XB solver form.
[0022] In another aspect, the method includes determining a filtered radar-IMU A, B relative pose pairs flow solution X through an iterative solver.
[0023] In yet another aspect, the method includes determining the smoothed IMU poses and the final smoothed radar poses from a SLERP-based moving average filter.
[0024] On the other hand, a calibration pipeline for estimating six-degree-of-freedom (6DoF) localization parameters of an autonomous vehicle is disclosed. The calibration pipeline includes an autopilot controller instructed to receive IMU poses and a final radar pose. The IMU pose is based on data collected by the autonomous vehicle's IMU and GPS, and the final radar pose is based on data collected by the autonomous vehicle's radar sensors. The autopilot controller is instructed to determine a smoothed IMU pose using the IMU pose and a final smoothed radar pose using the final radar pose, based on a moving average filter or a moving median filter. The autopilot controller is instructed to align the smoothed IMU pose and the final smoothed radar pose with each other to create multiple radar-IMU A,B relative pose pairs. The autopilot controller is instructed to determine a solution for generating an inlier threshold number for further filtered radar-IMU A,B relative pose pairs based on the multiple radar-IMU A,B relative pose pairs. The autopilot controller is instructed to perform several replacement random samplings on the further filtered radar-IMU A,B relative pose pairs to determine a flow of filtered radar-IMU A,B relative pose pairs. The autopilot controller is instructed to perform a flow solution X for the filtered radar-IMU A, B relative pose pair, where the solution X represents the 6DoF localization parameters. Finally, the autopilot controller is instructed to further refine the solution X by nonlinearly minimizing an error term based on a nonlinear optimization routine, wherein the nonlinear optimization routine is executed until the error term converges.
[0025] Further applicability will become apparent from the description provided herein. It should be understood that the descriptions and specific examples are for illustrative purposes only and are not intended to limit the scope of this disclosure. Attached Figure Description
[0026] The accompanying drawings described herein are for illustrative purposes only and are not intended to limit the scope of this disclosure in any way.
[0027] Figure 1 The present invention is a schematic diagram of an autonomous vehicle including multiple radar sensors and an autonomous driving controller according to an exemplary embodiment, wherein the autonomous driving controller includes a pose estimation pipeline for determining calibration coordinates.
[0028] Figure 2 A block diagram illustrating a calibration pipeline for estimating six-degree-of-freedom (6DoF) positioning parameters according to an exemplary embodiment; and
[0029] Figure 3 A flowchart illustrating a method for estimating 6DoF positioning parameters according to an exemplary embodiment. Detailed Implementation
[0030] The following description is merely exemplary in nature and is not intended to limit the present disclosure, application, or uses.
[0031] Referring to Figure 1 FIG. 1 shows an example autonomous vehicle 10. The autonomous vehicle 10 has an autonomous driving system 12 that includes an autonomous driving controller 20 in electronic communication with a plurality of on-board autonomous sensors 22 and a plurality of vehicle systems 24. In the example shown in FIG. 1, the autonomous driving system 12 is implemented as a system-on-a-chip (SoC) 26. The SoC 26 includes the autonomous driving controller 20, the plurality of on-board autonomous sensors 22, and the plurality of vehicle systems 24. The SoC 26 is mounted on a printed circuit board (PCB) 28 that is mounted on the autonomous vehicle 10. Figure 1 In the example shown in FIG. 1, the plurality of on-board autonomous sensors 22 includes one or more radar sensors 30, one or more video cameras 32, an inertial measurement device (IMU) 34, a global positioning system (GPS) 36, and a lidar 38 mounted on the autonomous vehicle 10. However, it should be understood that other sensors can also be used. The plurality of radar sensors 30 can be mounted on the front 14, rear 16, and / or sides 18 of the autonomous vehicle 10 to detect objects in the environment surrounding the autonomous vehicle 10. Each radar sensor 30 makes a plurality of individual scans of the environment surrounding the autonomous vehicle 10 to obtain data in the form of a radar point cloud that includes a plurality of detected points. The IMU 34 and the GPS 36 both directly measure vehicle states. Specifically, the IMU 34 determines the angular rotation rate, acceleration, and heading of the autonomous vehicle 10, while the GPS 36 determines the position, velocity, and time of the autonomous vehicle 10.
[0032] The autonomous driving controller 20 includes a pose estimation pipeline 40 that includes a scan aggregator and filter 42, an inertial navigation system (INS) module 44, a scan matching and radar pose estimation module 46, and a calibration module 48. The scan aggregator and filter 42 determines an aggregated filtered data point cloud 50 that is sent to the scan matching and radar pose estimation module 46. The timestamps of the scans associated with the aggregated filtered data point cloud 50 are sent to the INS module 44. The INS module 44 determines time-matched IMU poses 52 and corresponding radar poses that are sent to the calibration module 48. The scan matching and radar pose estimation module 46 estimates a final radar pose that is sent to the calibration module 48.
[0033] The calibration module 48 determines six degrees of freedom (6DoF) localization parameters 56 between the radar sensors 30 and the center of gravity G of the autonomous vehicle 10 from the corresponding IMU poses 52 and the final radar pose 54. The 6DoF localization parameters 56 include the x, y, and z coordinates of the autonomous vehicle 10 and the roll angle pitch angle Θ, and yaw angle Ψ. In one embodiment, the 6DoF localization parameters 56 are radar-vehicle calibration parameters that automatically align the radar sensors 30 with the center of gravity G of the autonomous vehicle 10. In another embodiment, the 6DoF localization parameters 56 are vehicle-radar calibration parameters.
[0034] It should be appreciated that the radar point cloud obtained by the radar sensor 30 can be sparse and in many cases include noisy and jittery data, ghosting detections, reflections, and clutter. The scan aggregator and filter 42 filters and aggregates the radar point cloud obtained by the radar sensor 30 to reduce the effects of various noise sources while also increasing the density of the point cloud scans. However, the scan aggregator and filter 42 can reduce but not completely eliminate the noise in the radar point cloud. As described below, the calibration module 48 of the pose estimation pipeline 40 determines the 6DoF localization parameters 56 from a pose estimation that is determined with sufficient accuracy from the noisy point cloud obtained by the radar sensor 30 to automatically align the radar sensor 30 with the center of gravity G of the autonomous vehicle 10.
[0035] The autonomous vehicle 10 can be any type of vehicle such as, but not limited to, a car, a truck, a sport utility vehicle, a van, or a recreational vehicle. In one non-limiting embodiment, the autonomous vehicle 10 is a fully autonomous vehicle that includes an automated driving system (ADS) that performs all driving tasks. Alternatively, in another embodiment, the autonomous vehicle 10 is a semi-autonomous vehicle that includes an advanced driver assistance system (ADAS) that assists a driver with steering, braking, and / or acceleration. The automated driving controller 20 determines the automated driving characteristics of the autonomous vehicle 10 such as perception, planning, localization, mapping, and control. Although the automated driving controller 20 is shown as a single controller, it should be appreciated that it can also include multiple controllers. Figure 1 The multiple vehicle systems 24 include, but are not limited to, a braking system 70, a steering system 72, a power system 74, and a suspension system 76. The automated driving controller 20 sends vehicle control instructions to the multiple vehicle systems 24 to guide the autonomous vehicle 10.
[0036] The radar sensor 30 can be a short-range radar for detecting objects about 1 to 20 meters from the autonomous vehicle 10, a mid-range radar for detecting objects about 1 to 60 meters from the autonomous vehicle 10, or a long-range radar for detecting objects up to about 260 meters from the autonomous vehicle 10. In one embodiment, the one or more radar sensors 30 include a millimeter wave (mmWave) radar sensor, particularly a low-cost system-on-a-chip (SoC) based mmWave radar sensor with a limited field of view. In another embodiment, the radar sensor 30 includes one or more 360-degree rotating radar sensors.
[0037] Reference is now made to Figure 2, showing a block diagram illustrating the calibration module 48, which includes a calibration pipeline 78 having a smoothing submodule 80, a time alignment submodule 82, a pose filtering submodule 88, and a pose pair submodule 86, an iterative solver submodule 88, and an optimization submodule 90. The calibration pipeline 78 begins with the smoothing submodule 80. The smoothing submodule 80 receives the IMU poses 52 from the INS module 44 and the final radar poses 54 from the scan matching and radar pose estimation module 46. As described above, the IMU poses 52 are based on data collected by the IMU 34 and the GPS 36 Figure 1 ) and the final radar poses 54 are based on data collected by one of the radar sensors Figure 1 ). The smoothing submodule 80 determines smoothed IMU poses 92 and final smoothed radar poses 94 according to a moving average filter or a moving median filter.
[0038] The moving average filter or the moving median filter reduces multipath noise in the final radar poses 54. It should be appreciated that multipath noise is inherent in radar-based sensing applications. In a particular embodiment, the smoothing submodule 80 determines the smoothed IMU poses 92 and the final smoothed radar poses 94 according to a spherical linear interpolation-based (SLERP) moving average filter. However, it should be appreciated that other moving average filters or moving median filters can also be used.
[0039] The smoothed IMU poses 92 and the final smoothed radar poses 94 are received by the time alignment submodule 82, which determines a time offset correlation coefficient. The time offset correlation coefficient indicates a system time offset between the smoothed IMU poses 92 and the final smoothed radar poses 94. The system time offset between the smoothed IMU poses 92 and the final smoothed radar poses 94 thus increases an error in the 6DoF localization parameters 56. The time offset correlation coefficient is determined by correlating an angular velocity magnitude determined based on the smoothed IMU poses 92 with an angular velocity magnitude determined based on the final smoothed radar poses 94. The smoothed IMU poses 92 and the final smoothed radar poses 94 are then aligned with each other based on the time offset correlation coefficient to create a plurality of radar-IMU A, B relative pose pairs 96. In the AX = XB solver, variable A represents a transformation between two relative radar poses based on the radar sensors 30 Figure 1 ), variable B represents a transformation between two relative IMU poses determined by the IMU 34 Figure 1 ), and variable X represents a transformation between the radar sensors 30 and the IMU 34.
[0040] Even after time alignment is performed by the time alignment submodule 82, the plurality of radar-IMU A, B relative pose pairs 96 can still be too noisy to meet the accuracy requirements for calibration. Thus, the time alignment submodule 82 filters the plurality of radar-IMU A, B relative pose pairs to determine an inlier threshold number of radar-IMU A, B relative pose pairs that produce a further filtered solution. It should be understood that the inlier threshold number N depends on the density of the radar point cloud. However, the inlier threshold number N results in at least about five detected points being selected. The inlier threshold number N can range from about fifty percent of the filtered detected points to about ninety-nine percent of the filtered detected points. In one example, the inlier threshold number N results in about ninety percent of the detected points being filtered. The inlier threshold number N is determined based on the particular application, where the higher the percentage of inliers, the more accurate the resulting data, but the fewer detected points that are considered.
[0041] In one embodiment, a kth nearest neighbor (kNN) technique is used to determine all possible further filtered radar-IMU A, B relative pose pairs 98. It should be understood that A is computed based on two radar poses (i.e., a relative radar pose pair), where the relative radar poses are the kth nearest neighbors to each other in time. For example, if k = 3, then the relative radar poses A are determined as P R (i-3) -1 P R (i) determines relative radar poses, where i represents a sample designator in time (e.g., sample 1, sample 2), P R represents a radar pose, P R (i-3) -1 represents the inverse of P R (i-3). Likewise, B is computed based on two IMU poses (i.e., a relative IMU pose pair), where the relative IMU pose pair are the kth nearest neighbors to each other in time. If k = 3, then the relative IMU poses B are determined as P I (i-3) -1 P I (i), where P I (i-3) -1 represents the inverse of P I (i-3), P I represents an IMU pose. In yet another embodiment, multiple values of the variable k can also be used. The A, B relative pose pairs are then filtered by two random sample consensus (RANSAC) filters that are based on a hand-eye calibration problem that is based on an AX = XB solver form, where the RANSAC filters determine which A, B relative pose pairs can be used for calibration. In one embodiment, the two RANSAC filters are based on Tsai and Andreff techniques.
[0042] Once the inlier threshold number N of further filtered radar-IMU A, B relative pose pairs 98 has been determined by the pose filtering sub-module 84, the pose pair sampling sub-module 86 performs multiple replacement random samplings of the further filtered radar-IMU A, B relative pose pairs 98 to determine a stream of filtered radar-IMU A, B relative pose pairs 100. The specific number of times the pose pair sampling sub-module 86 performs multiple replacement random samplings of the further filtered radar-IMU A, B relative pose pairs 98 depends on the application. In one embodiment, the pose pair sampling sub-module 86 performs ten replacement random samplings of the further filtered radar-IMU A, B relative pose pairs 98. Thus, if there are 250 further filtered radar-IMU A, B relative pose pairs 98, the pose pair sampling sub-module 86 would perform 2500 random samplings of the further filtered radar-IMU A, B relative pose pairs 98.
[0043] The stream of filtered radar-IMU A, B relative pose pairs 100 is then sent to the iterative solver sub-module 88, which solves each of the filtered, randomly sampled radar-IMU A, B relative pose pairs 100 for X. The iterative solver sub-module 88 can employ any iterative solver to determine the solution X. However, in one embodiment, the iterative solver is an unscented Kalman filter. The solution X for each of the filtered radar-IMU A, B relative pose pairs 100 is then sent to the refinement sub-module 90. The refinement sub-module 90 further refines the solution X by performing a non-linear minimization of an error term based on a non-linear optimization routine, where the non-linear optimization routine is performed until the error term converges. In one embodiment, the non-linear optimization routine is a non-linear least squares routine, such as but not limited to the Levenberg-Marquardt algorithm. The solution X indicates the 6DoF localization parameters 56 (x, y, z, and roll angle pitch angle Θ, and yaw angle Ψ) of the autonomous vehicle 10. Specifically, the solution X is represented as a matrix that indicates the 6DoF localization parameters 56 or the solution X is represented in a form that can be converted to the 6DoF localization parameters 56.
[0044] The error term is the sum of the orthogonality measure of the current estimated rotation portion of the solution X from the previous iteration, the norm of the rotation portion of the solution X from the previous iteration, and the Mahalanobis distance of the {AX-XB} term, where {AX-XB} is determined from the product between A and X minus the product between B and X. It should be understood that the current estimated rotation portion of the solution X is always orthogonal, and the norm of the rotation portion of the solution X is always 1. The A, B pair of the {AX-XB} term represents a pair of poses relative to A, B, which is output by the pose pair acquisition module 86. The Mahalanobis distance of the {AX-XB} term is determined from a covariance matrix that is acquired from changes in {AX-XB} over time. In an embodiment, the covariance matrix is acquired during a factory calibration or test run of the autonomous vehicle 10 Figure 1 ).
[0045] Figure 3 A flowchart of a method 200 for determining 6DoF localization parameters 56( Figure 1 ) via the calibration module 48( Figure 1 ). Generally, referring to Figures 1-3 , the method 200 begins at block 202. At block 202, the smoothing submodule 80 of the calibration module 48 (part of the autonomous driving controller 20) receives the IMU poses 52 from the INS module and the final radar poses from the scan matching and radar pose estimation module 46. Then, the method 200 can proceed to block 204.
[0046] At block 204, the smoothing submodule 80 determines the smoothed IMU poses 92 and the final smoothed radar poses 94 from a moving average filter or a moving median filter. In a particular embodiment, a SLERP-based moving average filter is employed.
[0047] At block 206, the time alignment submodule 82 aligns the smoothed IMU poses 92 and the final smoothed radar poses 94 according to the time offset correlation coefficients to create a plurality of radar-IMU A, B relative pose pairs 96. Then, the method 200 can proceed to block 208.
[0048] At block 208, the pose filtering submodule 84 filters the plurality of radar-IMU A, B relative pose pairs 96 to determine a solution of an inlier threshold number N of further filtered radar-IMU A, B relative pose pairs. Specifically, as described above, all possible A, B relative pose pairs are determined using a kNN technique. Then, all possible A, B relative pose pairs are filtered by two RANSAC filters, which are based on a hand-eye calibration problem that is solved based on an AX=XB solver form, where the RANSAC filters determine which A, B relative pose pairs can be used for calibration. Then, the method 200 can proceed to block 210.
[0049] At block 210, the pose pair subsampling module 86 performs multiple replacement resampling of the further filtered radar-IMU A, B relative pose pairs 98 to determine a stream of filtered radar-IMU A, B relative pose pairs 100. Then, the method 200 can proceed to block 212.
[0050] At block 212, the iterative solver submodule 88 solves X for each stream of filtered radar-IMU A, B relative pose pairs 100. As described above, the iterative solver submodule 88 can employ any iterative solver to determine the solution X. However, in one embodiment, the iterative solver is an unscented Kalman filter. Then, the method 200 can proceed to block 214.
[0051] At block 214, the refinement submodule 90 further refines the solution X by performing a non-linear minimization of an error term based on a non-linear optimization routine. The non-linear optimization routine is performed until the error term converges. In one embodiment, the non-linear optimization routine is a non-linear least squares routine such as, but not limited to, a Levenberg-Marquardt algorithm. The solution X indicates the six degree of freedom positioning parameters 56 (x, y, z, and roll angle pitch angle Θ, and yaw angle Ψ) of the autonomous vehicle 10. Then, the method 200 can end.
[0052] In general, and with reference to the figures, the disclosed calibration pipeline for an autonomous vehicle provides various technical effects and advantages. Specifically, the disclosed pose estimation calibration pipeline determines six degree of freedom (6DoF) positioning parameters between a particular radar sensor and the center of gravity G of the autonomous vehicle from a noisy point cloud obtained by the radar sensor and the center of gravity of the autonomous vehicle. It should be appreciated that the 6DoF positioning parameters are accurate enough to automatically align the radar sensor with the center of gravity of the autonomous vehicle.
[0053] The controller can be an electronic circuit, a combinational logic circuit, a field programmable gate array (FPGA), a processor executing code (shared, dedicated, or group), or a combination of some or all of the above, such as in a system-on-a-chip, or a portion thereof. Further, the controller can be a microprocessor-based controller, such as a computer having at least one processor, memory (RAM and / or ROM), and associated input and output buses. The processor can operate under the control of an operating system resident in the memory. The operating system can manage computer resources so that computer program code, such as applications resident in the memory, can have instructions executed by the processor. In an alternative embodiment, the processor can execute applications directly, in which case the operating system can be omitted.
[0054] The description of the present disclosure is merely exemplary in nature and variations that do not depart from the spirit of the present disclosure are intended to be within the scope of the present disclosure. Such variations are not to be regarded as a departure from the spirit and scope of the present disclosure.
Claims
1. A calibration pipeline for estimating six degrees of freedom (6DoF) localization parameters of an autonomous vehicle, the calibration pipeline comprising: one or more radar sensors; an autonomous driving controller in electronic communication with the one or more radar sensors, the autonomous driving controller being instructed to: receive an inertial measurement unit (IMU) pose and a final radar pose, wherein the IMU pose is based on data collected by an IMU and a global positioning system (GPS) of the autonomous vehicle, and the final radar pose is based on data collected by one or more radar sensors of the autonomous vehicle; determine a smoothed IMU pose from the IMU pose according to a moving average filter or a moving median filter, and determine a final smoothed radar pose from the final radar pose; align the smoothed IMU pose and the final smoothed radar pose to each other to create a plurality of radar-IMU A, B relative pose pairs; determine, from the plurality of radar-IMU A, B relative pose pairs, a solution that yields an inlier threshold number of further filtered radar-IMU A, B relative pose pairs; perform multiple replacement random sampling on the further filtered radar-IMU A, B relative pose pairs to determine a stream of filtered radar-IMU A, B relative pose pairs; solve for X from the stream of filtered radar-IMU A, B relative pose pairs, wherein the solution X represents the 6DoF localization parameters, wherein the solution X represents the 6DoF localization parameters of the autonomous vehicle, the 6DoF localization parameters representing radar-vehicle calibration parameters; and align the one or more radar sensors to a center of gravity of the autonomous vehicle based on the 6DoF localization parameters.
2. The calibration line of claim 1, wherein, the autonomous driving controller being instructed to: further refine the solution X by performing a non-linear minimization on an error term based on a non-linear optimization routine, wherein the non-linear optimization routine is performed until the error term converges.
3. The calibration line of claim 2, wherein, the non-linear optimization routine is a non-linear least squares routine.
4. The calibration line of claim 2, wherein, the error term is a sum of an orthogonality measure of a current estimate of a rotational portion of the solution X from a previous iteration, a norm of a rotational portion of the solution X from the previous iteration, and a Mahalanobis distance of an {AX-XB} term.
5. The calibration line of claim 1, wherein, align the smoothed IMU pose and the final smoothed radar pose to each other based on a time offset correlation coefficient.
6. The calibration line of claim 5, wherein, the time offset correlation coefficient indicates a system time offset between the smoothed IMU pose and the final smoothed radar pose.
7. The calibration line of claim 5, wherein, the time offset correlation coefficient is determined by correlating an angular velocity magnitude determined based on the smoothed IMU pose with an angular velocity magnitude determined based on the final smoothed radar pose.
8. The calibration line of claim 1, wherein, use a kth nearest neighbor (kNN) technique to determine all possible A, B relative pose pairs of the solution, thereby yielding an inlier threshold number of further filtered radar-IMU A, B relative pose pairs.
9. The calibration line of claim 8, wherein, the all possible A, B relative pose pairs are filtered by a random sample consensus (RANSAC) filter based on a hand-eye calibration problem that is based on an AX=XB solver.
10. The calibration line of claim 8, wherein, The solution X of the filtered radar-IMU A, B relative pose pair stream is determined by an iterative solver.
Citation Information
Patent Citations
Method for extracting and encoding motion characteristics of digital retina of mobile camera
CN110009739A
Radar-IMU calibration method based on hand-eye calibration
CN111443337A