Skip to content
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

how to get the RGBD map like the video shows #45

Open
heroacool opened this issue Feb 22, 2022 · 2 comments
Open

how to get the RGBD map like the video shows #45

heroacool opened this issue Feb 22, 2022 · 2 comments

Comments

@heroacool
Copy link

heroacool commented Feb 22, 2022

the demo video demo shows the rgbd map.
image

I'm currious about how to get this rgbd map.
A possible method is depth image + intrinsic -> pointcloud -> aggragate all pointclouds with poses -> voxelization -> rgbd map.
Could anybody know how to generate this rgbd map?

@ChauChorHim
Copy link

the demo video demo shows the rgbd map. image

I'm currious about how to get this rgbd map. A possible method is depth image + intrinsic -> pointcloud -> aggragate all pointclouds with poses -> voxelization -> rgbd map. Could anybody know how to generate this rgbd map?

Hi, I don't know if you solve it or not, but the pipeline you mentioned is basically correct. The difficult point here is how to concatenate pointclouds. So, the first stuffs you need to prepare are the pointcloud of each depth in the camera coordinate.
At the same time, you should have the absolute pose for each camera. I don't use the pose generated by the pose encoder. In my dataset, I use the pose generated by the antenna gps. Anyway, if you don't have a more accurate pose source, maybe the pose from pose encoder is an option.
Then, you'd better set the first camera's pose as the initial pose and then transform the other pose into this coordinate system. Here are the mathematical computation.

R_ac = R_ab * R_bc
R_bc = inverse(R_ab) * R_ac

T_ac = T_ab + R_ab * T_bc
T_bc = inverse(R_ab) * (T_ac - T_ab)

where a is the absolute coordinate, b is the first frame's coordinate and c is the other coordinate.

Use R_bc and T_bc, you could transform all other pointcloud into the same coordinate of the first camera coordinate.

@iariav
Copy link

iariav commented Apr 28, 2022

Has anyone managed to produce the RGBD point cloud as in the demo and can share a script on how to achieve this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants