happinesslz / LION

Official repository of ”LION: Linear Group RNN for 3D Object Detection in Point Clouds“
https://happinesslz.github.io/projects/LION/
Apache License 2.0
104 stars 9 forks source link

Dependency problem #4

Closed YoushaaMurhij closed 1 month ago

YoushaaMurhij commented 1 month ago

Thanks for sharing this great work! I tried to launch training stage on waymo dataset and met this error:

root@pc:/home/user/lion/tools# bash run_train_lion_for_waymo.sh 
Traceback (most recent call last):
  File "train.py", line 7, in <module>
    from test import repeat_eval_ckpt
  File "/home/user/lion/tools/test.py", line 14, in <module>
    from eval_utils import eval_utils
  File "/home/user/lion/tools/eval_utils/eval_utils.py", line 8, in <module>
    from pcdet.models import load_data_to_gpu
  File "/home/user/lion/tools/../pcdet/models/__init__.py", line 6, in <module>
    from .detectors import build_detector
  File "/home/user/lion/tools/../pcdet/models/detectors/__init__.py", line 12, in <module>
    from .mppnet import MPPNet
  File "/home/user/lion/tools/../pcdet/models/detectors/mppnet.py", line 9, in <module>
    from pcdet.datasets.augmentor import augmentor_utils, database_sampler
  File "/home/user/lion/tools/../pcdet/datasets/__init__.py", line 14, in <module>
    from .argo2.argo2_dataset import Argo2Dataset
  File "/home/user/lion/tools/../pcdet/datasets/argo2/argo2_dataset.py", line 21, in <module>
    from .argo2_utils.so3 import yaw_to_quat, quat_to_yaw
  File "/home/user/lion/tools/../pcdet/datasets/argo2/argo2_utils/so3.py", line 10, in <module>
    def quat_to_mat(quat_wxyz: Tensor) -> Tensor:
  File "/usr/local/lib/python3.8/dist-packages/torch/jit/_script.py", line 1381, in script
    fn = torch._C._jit_script_compile(
  File "/usr/local/lib/python3.8/dist-packages/torch/jit/_recursive.py", line 1010, in try_compile_fn
    return torch.jit.script(fn, _rcb=rcb)
  File "/usr/local/lib/python3.8/dist-packages/torch/jit/_script.py", line 1381, in script
    fn = torch._C._jit_script_compile(
RuntimeError: 
cannot statically infer the expected size of a list in this context:
  File "/usr/local/lib/python3.8/dist-packages/kornia/geometry/conversions.py", line 556

    # this slightly awkward construction of the output shape is to satisfy torchscript
    output_shape = [*list(quaternion.shape[:-1]), 3, 3]
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
    matrix = matrix_flat.reshape(output_shape)
'quaternion_to_rotation_matrix' is being compiled since it was called from 'quat_to_mat'
  File "/home/user/lion/tools/../pcdet/datasets/argo2/argo2_utils/so3.py", line 19
        (...,3,3) 3D rotation matrices.
    """
    return C.quaternion_to_rotation_matrix(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        quat_wxyz, order=C.QuaternionCoeffOrder.WXYZ
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
    )

I have tried serveral versions but still getting the same error. Any suggesstions? It would be very helpful to add a Dockerfile or conda environment.

Thanks!

AlmoonYsl commented 1 month ago

Thanks for sharing this great work! I tried to launch training stage on waymo dataset and met this error:

root@pc:/home/user/lion/tools# bash run_train_lion_for_waymo.sh 
Traceback (most recent call last):
  File "train.py", line 7, in <module>
    from test import repeat_eval_ckpt
  File "/home/user/lion/tools/test.py", line 14, in <module>
    from eval_utils import eval_utils
  File "/home/user/lion/tools/eval_utils/eval_utils.py", line 8, in <module>
    from pcdet.models import load_data_to_gpu
  File "/home/user/lion/tools/../pcdet/models/__init__.py", line 6, in <module>
    from .detectors import build_detector
  File "/home/user/lion/tools/../pcdet/models/detectors/__init__.py", line 12, in <module>
    from .mppnet import MPPNet
  File "/home/user/lion/tools/../pcdet/models/detectors/mppnet.py", line 9, in <module>
    from pcdet.datasets.augmentor import augmentor_utils, database_sampler
  File "/home/user/lion/tools/../pcdet/datasets/__init__.py", line 14, in <module>
    from .argo2.argo2_dataset import Argo2Dataset
  File "/home/user/lion/tools/../pcdet/datasets/argo2/argo2_dataset.py", line 21, in <module>
    from .argo2_utils.so3 import yaw_to_quat, quat_to_yaw
  File "/home/user/lion/tools/../pcdet/datasets/argo2/argo2_utils/so3.py", line 10, in <module>
    def quat_to_mat(quat_wxyz: Tensor) -> Tensor:
  File "/usr/local/lib/python3.8/dist-packages/torch/jit/_script.py", line 1381, in script
    fn = torch._C._jit_script_compile(
  File "/usr/local/lib/python3.8/dist-packages/torch/jit/_recursive.py", line 1010, in try_compile_fn
    return torch.jit.script(fn, _rcb=rcb)
  File "/usr/local/lib/python3.8/dist-packages/torch/jit/_script.py", line 1381, in script
    fn = torch._C._jit_script_compile(
RuntimeError: 
cannot statically infer the expected size of a list in this context:
  File "/usr/local/lib/python3.8/dist-packages/kornia/geometry/conversions.py", line 556

    # this slightly awkward construction of the output shape is to satisfy torchscript
    output_shape = [*list(quaternion.shape[:-1]), 3, 3]
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
    matrix = matrix_flat.reshape(output_shape)
'quaternion_to_rotation_matrix' is being compiled since it was called from 'quat_to_mat'
  File "/home/user/lion/tools/../pcdet/datasets/argo2/argo2_utils/so3.py", line 19
        (...,3,3) 3D rotation matrices.
    """
    return C.quaternion_to_rotation_matrix(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        quat_wxyz, order=C.QuaternionCoeffOrder.WXYZ
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
    )

I have tried serveral versions but still getting the same error. Any suggesstions? It would be very helpful to add a Dockerfile or conda environment.

Thanks!

Did you try kornia==0.5.8?

YoushaaMurhij commented 1 month ago

@AlmoonYsl, Thank you! It worked!