tangjiapeng / DiffuScene

[CVPR 2024] DiffuScene: Denoising Diffusion Models for Generative Indoor Scene Synthesis
Other
188 stars 15 forks source link

Question about data processing #32

Open RuihanLu opened 1 week ago

RuihanLu commented 1 week ago

Thanks for this interesting work.

Every script encounters the following reported error:

(diffuscene) (base) ryanlu@uq-04:~/DiffuScene/scripts$ PATH_TO_SCENES="/cluster/balrog/jtang/3d_front_processed//threed_future_model_livingroom.pkl" python pickle_threed_future_pointcloud.py /cluster/balrog/jtang/3d_front_processed/ /cluster/balrog/jtang/3D-FRONT/ /cluster/balrog/jtang/3D-FUTURE-model /cluster/balrog/jtang/3D-FUTURE-model/model_info.json  --dataset_filtering threed_front_livingroom --annotation_file ../config/livingroom_threed_front_splits.csv
Applying threed_front_livingroom filtering
loading pickled 3d front scenes from : /cluster/balrog/jtang/3d_front_processed//threed_future_model_livingroom.pkl
Traceback (most recent call last):
  File "pickle_threed_future_pointcloud.py", line 193, in <module>
    main(sys.argv[1:])
  File "pickle_threed_future_pointcloud.py", line 109, in main
    scenes_dataset = ThreedFront.from_dataset_directory(
  File "/home/ryanlu/DiffuScene/scene_synthesis/datasets/threed_front.py", line 232, in from_dataset_directory
    return cls([s for s in map(filter_fn, scenes) if s], bounds)
  File "/home/ryanlu/DiffuScene/scene_synthesis/datasets/threed_front.py", line 232, in <listcomp>
    return cls([s for s in map(filter_fn, scenes) if s], bounds)
  File "/home/ryanlu/DiffuScene/scene_synthesis/datasets/common.py", line 208, in inner
    s = next(fs)(s)
  File "/home/ryanlu/DiffuScene/scene_synthesis/datasets/common.py", line 96, in inner
    return scene if scene_type in scene.scene_type else False
AttributeError: 'ThreedFutureModel' object has no attribute 'scene_type'

At line 95, the type of scene is <class 'scene_synthesis.datasets.threed_front_scene.ThreedFutureModel'>.

I have carefully checked the relevant code and confirmed that scene does not have scene_type, bbox, and other attributes, which are heavily used between lines 94-200.

How should I fix this bug? I have already tried downloading preprocessed data and pretrained models. I would like to know if the preprocessed data still needs manual Pickle Latent Shape Code and Preprocess 3D-Front dataset with latent shape codes to generate npz files? If so, Pickle Latent Shape Code and Preprocess 3D-Front dataset with latent shape codes also encounter the AttributeError: 'ThreedFutureModel' object has no attribute 'scene_type' issue.

Thanks for any help, that means a lot for me.