-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Incorrect unreal_transform for Lidar sensor #392
Comments
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Hello, For those who are working on 0.9.6 and are integrating several lidar sweeps into one here is some hints/advice to help you with it. So basically the first thing is to get the transformations in the world's coordinate by
After doing the dot product, between the transformation matrix and the transpose of lidar.raw_data, you will notice (by plotting) that the axis of the point cloud is not quite right. Changing the order of the point cloud array from (x,y,z) to (y,x,-z) will do the job. Please note that this walkaround will work only for straight roads (no slopes) as pitch and roll are not accounted for in lidar. That is why they are zeroed out in the get_matrix(). However, if someone finds a solution to that then I will be happy to know it. Thanks. Hope this is helpful. |
After some experiments following a new comment in #314 , I found the unreal_transform is incorrect for Lidar sensors.
An overridden function should be added to
carla.sensor.Lidar
as:e.g. A Lidar is installed on
(x=0,y=0,z=0,p=0,y=0,r=0)
. This will convert a Lidar data point(x,y,z)
to(-y,x,-z)
, which should match the meaning of such data point in the car coordinate.The issue should occur since Lidar sensor was added
The text was updated successfully, but these errors were encountered: