Enhancing the Distortion Corrector Module #4163
Replies: 2 comments
-
As I know, distortion corrector, undistorts the point cloud by using the linear velocity x and yaw rate. To get better results on speedbumps, I think we should also consider using the pitch rate in the undistort process. In the current implementation, it only undistorts on the X-Y Plane, to be able to undistort on the Z axis, we should also include the pitch rate (and also roll rate) in the calculation side. |
Beta Was this translation helpful? Give feedback.
-
@batuhanbeytekin Hello, I'm sorry to bother you, but I had such a problem (https://github.com/orgs/autowarefoundation/discussions/5328) when compiling the autoware_pointcloud_preprocessor function package. Could you please help me solve it? Thank you in advance. |
Beta Was this translation helpful? Give feedback.
-
Hello Autoware Community,
I've been working with the point cloud preprocessing tools in Autoware and have proposed an enhancement to the distortion correction process, specifically aimed at improving the handling of Z-axis distortions. This enhancement focuses on incorporating vehicle's linear Z velocity to correct for vertical displacements in the point cloud data, which can be particularly useful in varied terrain or when encountering obstacles like speed bumps.
Current Implementation:
The current distortion corrector module effectively compensates for distortions in the X and Y axes, leveraging vehicle twist data. However, corrections in the Z-axis are not explicitly addressed, potentially affecting the accuracy of vertical measurements in the processed point cloud.
Proposed Enhancement:
To address this, I propose an update to include Z-axis distortion correction by utilizing the linear Z velocity (
twist.linear.z
) from vehicle odometry data. The key idea is to adjust point cloud Z positions based on the time offset and the vehicle's vertical movement, providing a more accurate representation of the environment.Technical Details:
undistortPointCloud
function to calculate Z displacement using the formulaz += time_offset * u
, whereu
represents the linear Z velocity.*it_z += z
), ensuring that vertical displacements due to vehicle motion are accurately reflected in the point cloud.Following the distortion correction, here's the output from the ground remover:
Ground Remover Output Before Changes (Non-ground points are shown)
Ground Remover Output After Changes (Non-ground points are shown)
Objective and Benefits:
Seeking Community Feedback:
I believe this straightforward yet impactful enhancement could significantly improve the utility of the distortion corrector, especially in complex driving environments. I'm eager to hear your feedback and engage in discussions on how we can further refine and integrate this improvement.
Thank you for considering this proposal. I look forward to your insights and suggestions!
Beta Was this translation helpful? Give feedback.
All reactions