otaheri / GrabNet

GrabNet: A Generative model to generate realistic 3D hands grasping unseen objects (ECCV2020)
https://grab.is.tue.mpg.de
Other
238 stars 30 forks source link

'Select' object has no attribute 'astype' #1

Closed pgrady3 closed 4 years ago

pgrady3 commented 4 years ago

Hello,

In case this helps anyone else, when running this I got the following error

> python grabnet/tests/grab_new_objects.py --obj-path models/toothpaste.ply --rhm-path .

2020-10-13 01:13:51,159 - root - INFO - Restored CoarseNet model from grabnet/models/coarsenet.pt
2020-10-13 01:13:51,167 - root - INFO - Restored RefineNet model from grabnet/models/refinenet.pt
Traceback (most recent call last):
  File "grabnet/tests/grab_new_objects.py", line 230, in <module>
    grab_new_objs(grabnet,obj_path, rot=True, n_samples=10)
  File "grabnet/tests/grab_new_objects.py", line 100, in grab_new_objs
    flat_hand_mean=True).to(grabnet.device)
  File "/home/patrick/miniconda3/envs/grab/lib/python3.7/site-packages/mano/model.py", line 74, in load
    return MANO(model_path, is_rhand, **kwargs)
  File "/home/patrick/miniconda3/envs/grab/lib/python3.7/site-packages/mano/model.py", line 220, in __init__
    self.register_buffer('shapedirs', to_tensor(to_np(shapedirs), dtype=dtype))
  File "/home/patrick/miniconda3/envs/grab/lib/python3.7/site-packages/mano/utils.py", line 44, in to_np
    return array.astype(dtype)
AttributeError: 'Select' object has no attribute 'astype'

Modifying the custom MANO package by inserting the following snippet at line 40 of lib/python3.7/site-packages/mano/utils.py works for me. Coverts the chumpy array to numpy

    if 'chumpy.reordering.Select' in str(type(array)):
        array = array.r
otaheri commented 4 years ago

Thanks for reporting the bug, I added the line to the code, so It should be fine now.