Closed Tycho-Xue closed 1 year ago
hi @Tycho-Xue ,
I just cleaned the code for extracting colorful point clouds. You can refer to extract_pointcloud.py
and npz2ply.py
in https://github.com/crockwell/Cap3D/tree/main/text-to-3D/shap-e.
It is implemented based on the code of shap-E, and thus, you need to compile shapE codes (plz cite shapE if you use this part of codes !).
Plz feel free to let me know if you need further assistance.
@tiangeluo, thanks for the quick response! Let me try it
@tiangeluo , Hi, thanks for the pointers! it seems a bit slow, just curious, have you figured out a way to speed this process up?
Hi @Tycho-Xue,
First, I'd like to kindly mention that our dataset provides 660k colorful point clouds for Objaverse shapes: https://huggingface.co/datasets/tiange/Cap3D/tree/main/PointCloud_zips along with the point clouds stored as .pt files, which provide faster loading speed: https://huggingface.co/datasets/tiange/Cap3D/tree/main/PointCloud_pt_zips.
The slow speed is mainly caused by the farthest point sampling (https://github.com/crockwell/Cap3D/blob/37a47fd2f1312f874398c30893c7f5898dc443b2/text-to-3D/shap-e/shap_e/rendering/point_cloud.py#L155-L207). You can install a cuda version FPS to accelerate (https://github.com/crockwell/Cap3D/blob/37a47fd2f1312f874398c30893c7f5898dc443b2/text-to-3D/shap-e/shap_e/rendering/point_cloud.py#L13-L19).
Impressive Work I want to ask, from Objaverse mesh to point cloud. You first render the mesh to image and then get the point cloud instead of getting the point cloud from mesh directly? Thanks
Hi @Qi-Zhangyang , yes, you understand is correct. More precisely, the program will render objects into multiple rgbd images and use camera rays to gather colorful visible points.
@crockwell Hi, thanks for the excellent work! Do you mind sharing your script for extracting the colored point cloud for Objaverse?