ROCA icon indicating copy to clipboard operation
ROCA copied to clipboard

Question about demo

Open supriya-gdptl opened this issue 2 years ago • 2 comments

Hello @cangumeli ,

Thank you for sharing the code.

I have a question about the code written in demo.py. On line 25, why do you use scene names from ScanNet dataset?

I want to try the demo code for images taken by phone camera. Could you please tell what steps I need to follow for preprocessing? What scene names I need to choose to write on line 25 of demo.py to work on such not-in-dataset images?

Thank you, Supriya

supriya-gdptl avatar Sep 07 '22 21:09 supriya-gdptl

If I use option --wild as suggested in #1 and write scene names on line 25 as

for name, scene in zip(
        ('3m', 'sofa', 'lab', 'desk'),
        (None, None, None, None)
        ): 

I get following error:

Traceback (most recent call last):
  File "D:/research/code/roca/network/demo.py", line 74, in <module>
    main(args)
  File "D:/research/code/roca/network/demo.py", line 31, in main
    instances, cad_ids = predictor(img, scene=scene)
  File "C:\Users\Anaconda3\envs\roca\lib\site-packages\torch\autograd\grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "D:\research\code\roca\network\roca\engine\predictor.py", line 109, in __call__
    outputs = self.model([inputs])[0]
  File "C:\Users\Anaconda3\envs\roca\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "D:\research\code\roca\network\roca\modeling\meta_arch\meta_arch.py", line 40, in forward
    return self.inference(batched_inputs)
  File "D:\research\code\roca\network\roca\modeling\meta_arch\meta_arch.py", line 124, in inference
    results, extra_outputs = self.roi_heads(
  File "C:\Users\Anaconda3\envs\roca\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "D:\research\code\roca\network\roca\modeling\roi_heads\roi_heads.py", line 132, in forward
    pred_instances, alignment_outputs = self._forward_alignment(
  File "D:\research\code\roca\network\roca\modeling\roi_heads\roi_heads.py", line 180, in _forward_alignment
    return self._forward_alignment_inference(
  File "D:\research\code\roca\network\roca\modeling\roi_heads\roi_heads.py", line 282, in _forward_alignment_inference
    predictions, extra_outputs = self.alignment_head(
  File "C:\Users\Anaconda3\envs\roca\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "D:\research\code\roca\network\roca\modeling\alignment_head\alignment_head.py", line 137, in forward
    return self.forward_inference(*args, **kwargs)
  File "D:\research\code\roca\network\roca\modeling\alignment_head\alignment_head.py", line 333, in forward_inference
    predictions, extra_outputs = self._forward_retrieval_inference(
  File "D:\research\code\roca\network\roca\modeling\alignment_head\alignment_head.py", line 803, in _forward_retrieval_inference
    cad_ids, pred_indices = self.retrieval_head(
  File "C:\Users\Anaconda3\envs\roca\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "D:\research\code\roca\network\roca\modeling\retrieval_head\retrieval_head.py", line 201, in forward
    return self._embedding_lookup(
  File "D:\research\code\roca\network\roca\modeling\retrieval_head\retrieval_head.py", line 373, in _embedding_lookup
    indices = self.indices_by_scene[scene]
KeyError: None

supriya-gdptl avatar Sep 07 '22 21:09 supriya-gdptl

Interesting, the wild retrieval is kind of hacky, so I recommend you to keep the scene names as dummy arguments. Wild retrieval shouldn't be affected by those arguments.

cangumeli avatar Sep 26 '22 21:09 cangumeli

Closing due to inactivity, feel free to re-open it if you still have this problem.

cangumeli avatar Feb 03 '23 10:02 cangumeli