paulguerrero / pcpnet

Pytorch implementation of PCPNet
Other
171 stars 42 forks source link

Could anyone share the ground truth generation steps? #11

Closed ivchgr01 closed 2 years ago

ivchgr01 commented 2 years ago

Can anyone share the details steps how we could generate the ground truth normal from point cloud? I have referred to the previous issue #5, but I don't think I know the exact step to do it. I have tried to use CloudCompare to calculate the normal, but it doesn't look right.

paulguerrero commented 2 years ago

Hi Ivan, we compute the ground truth normals from the mesh that the points were sampled from, not directly from the point cloud. The original meshes we used to compute the normals are available here: https://drive.google.com/file/d/14UncfzTN2FgZB_A5NMkAF6aOv_JKDGoR/view?usp=sharing

ivchgr01 commented 2 years ago

image Thanks for reply! I am processing some point cloud data e.g. sphere. Base on what you said, I am trying to convert it to mesh and find their normal by using CloudCompare. Did you use CloudCompare too? Or did you use some other way to do it?

paulguerrero commented 2 years ago

Hi Ivan, we started out with a mesh, so we did not have to convert a point cloud to a mesh. Computing the normal from a point cloud is not trivial and is one of the reasons we developed PCPNet. To create our ground truth, we randomly sampled points on the mesh surface and used the normal of the face that contains a point as the point normal.

ivchgr01 commented 2 years ago

Hi Ivan, we started out with a mesh, so we did not have to convert a point cloud to a mesh. Computing the normal from a point cloud is not trivial and is one of the reasons we developed PCPNet. To create our ground truth, we randomly sampled points on the mesh surface and used the normal of the face that contains a point as the point normal.

Thanks for the reply!