slothfulxtx / MBPTrack3D

[ICCV2023] MBPTrack: Improving 3D Point Cloud Tracking with Memory Networks and Box Priors
24 stars 6 forks source link

Reproduction of MBPTrack #1

Closed IzhiSu closed 1 year ago

IzhiSu commented 1 year ago

Dear authors,

I am not able to reproduce the results reported in the paper using the given config at config/mbptrackkitti*_cfg.yaml.

I wonder if the same config used for generating the results in the paper is provided. Or is there anything else we can take note of the reproduce the results?

Thanks!

MaxTeselkin commented 1 year ago

Hi @suyzhi ! Can you please share how did you manage to install all dependencies required for running MBPTrack? I am struggling with pointnet2_ops installation, it looks like it does not complile with modern CUDA versions (11+)

IzhiSu commented 1 year ago

Firstly offline download thehttps://github.com/erikwijmans/Pointnet2_PyTorch, then cd to pointnet2_ops_lib/, execute python setup.py install(My torch version is 1.9 and CUDA version is 11.1). We can communicate at any time if you have any other questions.

learnuser1 commented 1 year ago

I am not able to reproduce the results reported in the paper using the given config at config/mbptrackkitti*_cfg.yaml.

I wonder if the same config used for generating the results in the paper is provided. Or is there anything else we can take note of the reproduce the results?

Hi, Can you please share how did you manage to install all dependencies required for running MBPTrack?, I an struggling with pytorch3d installation,ImportError: libcudart.so.10.1: cannot open shared object file: No such file or dire

MaxTeselkin commented 1 year ago

Hi @learnuser1 , here is my Dockerfile:

FROM nvidia/cuda:11.1.1-cudnn8-devel-ubuntu20.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt update && apt install python3-pip -y
RUN apt-get install -y git

RUN pip3 install torch==1.11.0+cu113 --extra-index-url https://download.pytorch.org/whl/cu113
RUN pip3 install torchvision==0.12.0+cu113 --extra-index-url https://download.pytorch.org/whl/cu113

RUN pip3 install pytorch-lightning==1.5.10
RUN pip3 install -U 'git+https://github.com/facebookresearch/fvcore'
RUN pip3 install --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py38_cu113_pyt1110/download.html
RUN git clone https://github.com/erikwijmans/Pointnet2_PyTorch.git
WORKDIR Pointnet2_PyTorch
RUN pip3 install pointnet2_ops_lib/.
WORKDIR /
RUN pip3 install shapely==1.8.1

RUN pip3 install addict
RUN pip3 install pyquaternion
RUN pip3 install nuscenes-devkit

Note that you will have to rename _LinearWithBias to NonDynamicallyQuantizableLinear in source code of the project to make it work with torch 1.11 or install older version of torch (1.8), but with older version of torch I was not able to install pytorch3d, so I used the first option (replaced _LinearWithBias with NonDynamicallyQuantizableLinear).

MaxTeselkin commented 1 year ago

@suyzhi thanks, in my case the issue was caused by the fact that I tried to run it on my Mac, but pointnet2_ops_lib supports only GPU inference. So I switched to remote ssh + dev container development and after several hours of experiments I installed everything correctly

learnuser1 commented 1 year ago

@MaxTeselkin thanks, Can you provide the position of _LinearWithBias in which file,and the project need pomegranate, I noticed that the pomegranate library is not present in the environment you mentioned earlier.

MaxTeselkin commented 1 year ago

@learnuser1 you do not need pomegranate for running MBPTrack in test mode - I have just commented pomegranate import. If you think that this library is necessary for you, you can easily install it by running pip install pomegranate. Regarding _LinearWithBias - you can find all usages of this code by yourself. Any IDE allows to search through repository code and find all places where specific code is used (GitHub also allows to do that).

wslbby commented 1 year ago

@learnuser1 You can find the corresponding Pytorch3D version (according to the Pytorch and CUDA version of your env) here and locally install it with:conda install --use-local xxx.tar.bz2.

slothfulxtx commented 1 year ago

Hi, everyone. If you struggle to install https://github.com/erikwijmans/Pointnet2_PyTorch, you can replace these code with pytorch3d. All these operator on point clouds have been implemented in pytorch3d. image

slothfulxtx commented 1 year ago

Hi, everyone! I've just update our repo with conda freeze.yml and pointnet-ops copied from our conda env. Thanks for your discussion