ROCA
ROCA copied to clipboard
Question about demo
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
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
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.
Closing due to inactivity, feel free to re-open it if you still have this problem.