GDAOSU / vis2mesh

Vis2Mesh: Efficient Mesh Reconstruction from Unstructured Point Clouds of Large Scenes with Learned Virtual View Visibility ICCV2021
100 stars 16 forks source link

How to use cam*.json for self-defined cameras? #13

Closed Sapium59 closed 2 years ago

Sapium59 commented 2 years ago

Environments and example: all installation are done, environment configured properly, and the demo (example1.ply) can be played properly.

I have tried your interactive mode for adding new virtual views through an open3d GUI on linux. That works well. But I expect a more automatic pipeline, such as writing some cam1.json with scripts and use these json for my own dataset. When I do so, I face

Failed to find match for field 'y'.
Failed to find match for field 'x'.
*** Generation Failed ***

Do you have any recommendation about how I should do to use self-defined cams?

Sapium59 commented 2 years ago

SOLUTION:

  1. created an empty directory named after the *.ply file (just like in example1)
  2. put your cam1.json in that folder
  3. run inference.py with --cam cam1

In my case, the FATAL ERROR was that my .ply contains double-precision data, which is not handable here. Many other programs cannot handle double-precision polygen format files too. The double-precision is introduced when, in my case, converting .pcd to *.ply through open3d functions. ONE SOLUTION for this problem is to save the pcd as ply with CloudCompare, a software for poibt cloud process. This "save as" action can be slow and unautomated, so I look forward to hearing some better alternative solution.

sxsong1207 commented 2 years ago

Thank you for providing your solution! Appreciate it!