nv-nguyen / gigapose

[CVPR 2024] PyTorch implementation of GigaPose: Fast and Robust Novel Object Pose Estimation via One Correspondence
https://nv-nguyen.github.io/gigaPose/
MIT License
144 stars 12 forks source link

:loader(error): when I run "python -m src.scripts.render_bop_templates test_dataset_name=hope" #21

Open Musa1088 opened 1 month ago

Musa1088 commented 1 month ago

I installed the code for BOP 2024, then I run the code by python -m src.scripts.render_bop_templates test_dataset_name=hope. However, I got the following error:

:loader(error): Couldn't load file gigaPose_datasets/datasets/hope/models/obj_000026.ply: not found on model path (currently: "/home/musa/Dev/gigapose/src/custom_megapose:/home/musa/anaconda3/envs/gigapose/lib/python3.9/site-packages/panda3d/etc/..:/home/musa/anaconda3/envs/gigapose/lib/python3.9/site-packages/panda3d/etc/../models")
Traceback (most recent call last):
  File "/home/musa/anaconda3/envs/gigapose/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/musa/anaconda3/envs/gigapose/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/musa/Dev/gigapose/src/custom_megapose/call_panda3d.py", line 74, in <module>
    renderings = renderer.render_scene(
  File "/home/musa/Dev/gigapose/src/megapose/panda3d_renderer/panda3d_scene_renderer.py", line 319, in render_scene
    object_nodes = self.setup_scene(root_node, object_datas)
  File "/home/musa/Dev/gigapose/src/megapose/panda3d_renderer/panda3d_scene_renderer.py", line 231, in setup_scene
    self.get_object_node(label).instanceTo(obj_node)
  File "/home/musa/Dev/gigapose/src/megapose/panda3d_renderer/panda3d_scene_renderer.py", line 207, in get_object_node
    node = self._app.loader.load_model(str(asset.mesh_path), noCache=True)
  File "/home/musa/anaconda3/envs/gigapose/lib/python3.9/site-packages/direct/showbase/Loader.py", line 308, in loadModel
    raise IOError(message)
OSError: Could not load model file(s): ['gigaPose_datasets/datasets/hope/models/obj_000026.ply']

[2024-09-27 14:19:57,338][__main__][INFO] - Found only 0 for  gigaPose_datasets/datasets/hope/models/obj_000012.ply gigaPose_datasets/datasets/templates/hope/object_poses/000012.npy
.
.
.

Also, I got this information:

1 1
Known pipe types:
  glxGraphicsPipe
(1 aux display modules not yet loaded.)
3 3
Known pipe types:
  glxGraphicsPipe
(1 aux display modules not yet loaded.)
0 0
Known pipe types:
  glxGraphicsPipe
(1 aux display modules not yet loaded.)

and I dont know what that means. Can you help me about this?

mmkolbe commented 1 month ago

Hi @Musa1088! Did you get any update on this? I'm also trying to figure out how this path is set properly.

mmkolbe commented 1 month ago

I managed this setting this variable (in your setup): export MAIN_DIR=/home/musa/Dev/gigapose/ This variable is listed here (in my setup): /home/marcel/anaconda3/envs/gigapose/lib/python3.9/site-packages/panda3d/etc/Config.prc. When looking for the file, the script consider that MAIN_DIR as a base to join to the relative path, like yours gigaPose_datasets/datasets/hope/models/obj_000026.ply

Worked for me and the rendering was done correctly.

hiyyg commented 4 weeks ago

Another method is to make sure the paths are absolute.