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

Camera conventions & Num objects in the processed GObjaverse #8

Open
mengxuyiGit opened this issue Aug 15, 2024 · 8 comments
Open

Camera conventions & Num objects in the processed GObjaverse #8

mengxuyiGit opened this issue Aug 15, 2024 · 8 comments

Comments

@mengxuyiGit
Copy link

mengxuyiGit commented Aug 15, 2024

Hi Anpei, thanks for the great work and your effort in processing the GOBjaverse!

I have following questions on the processed data:

  1. Camera convention: the original GObjaverse seems to use a complex left hand system under camera view / world view, do you transform it to another system so that can be directly used for 2DGS rendering?
  2. Normal type: GOBjaverse provides 2 types of normals: ng.exr is the ground truth normal map. on the other hand, nd.exr is the normal map adding bump to enhance the detail of geometry surface. Which one is in your processed data?
  3. Dataset size: the original GObjaverse seems to have 3T, while your processed data is about 1.3T. Do you sample a subset from it?

Thanks!

@apchenstu
Copy link
Collaborator

Thank you! Regarding the date preprocessing, we use this script to download and convert the format: prepare_dataset_objaverse.

For the size, we only store RGB and normal maps, so it's a little bit smaller than the Gobjaverse.

@mengxuyiGit
Copy link
Author

mengxuyiGit commented Aug 16, 2024

Thanks for prompt reply!

I have downloaded the processed h5 file part 1 from the hub, but the loaded c2w are all 0s:

def read_cam(self, scene, view_idx):
c2w = np.array(scene[f'c2w_{view_idx}'], dtype=np.float32)

I have confirmed that the h5 file is not empty and containing 264755 keys, and the idx are valid integers within a reasonable range.

Is there any hint on how to solve this?

@apchenstu
Copy link
Collaborator

Oh, if you want to download part of the dataset, you have to download the root file "gobjaverse.h5" and the "gobjaverse_part_xx.h5". Please also refer to gobjaverse.h5 for the dataloader. The gobjaverse.h5 contains camera poses and part_xx contains rendering information.

@mengxuyiGit
Copy link
Author

Yes, both are present under the ./dataset. I manually changed the range(30) inside the downloading script.

The eval_all.py works fine on my own processed h5 data. But the downloaded part doesn't.

@mengxuyiGit
Copy link
Author

Is it because the dataloader assumes all the meta information contained in "gobjaverse.h5" are available, which is not true when I have downloaded only partial data?

@apchenstu
Copy link
Collaborator

Is it because the dataloader assumes all the meta information contained in "gobjaverse.h5" are available, which is not true when I have downloaded only partial data?

Yes, could be, could you please try the first 10 keys of your download data? they are stored in the first part.

@apchenstu
Copy link
Collaborator

I just checked there are 8275 samples in part one, please try this scenes_name = np.array(sorted(self.metas.keys()))[:8275] at here .

@mengxuyiGit
Copy link
Author

I tried the first 1000 and it works. Appreciated!

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

2 participants