Transfusion模型复现

Transfusion论文开源代码编译,总是报错,有遇到相同情况的同学吗?
论文标题:TransFusion: Robust LiDAR-Camera Fusion for 3D Object Detection with Transformers
源码地址:https://github.com/XuyangBai/TransFusion/tree/master

报错内容:1 error detected in the compilation of "mmdet3d/ops/voxel/src/scatter_points_cuda.cu".
error: command '/usr/local/cuda-11.3/bin/nvcc' failed with exit status 1

img

GitHub上issue有这个报错的回答,是我的问题,没看到

这是比较复杂的深度学习模型,编译会有难度。具体报错:

  1. 首先检查CUDA和CUDNN的版本,模型要求CUDA 10.1以上,CUDNN 7.6以上。如果你的版本低于这个,需要升级。
  2. CUDA编译器nvcc版本也要对应,这里要求CUDA 10.1 Toolkit对应的nvcc,如果你安装的是CUDA 11.3,需要设置PATH或者软链接到正确的nvcc。
  3. 环境变量设置,确保CUDA, CUDNN, OpenCV的环境变量都设置正确。
  4. mmdet3d框架依赖比较复杂,建议在conda环境中安装,安装命令:
    conda create -n open-mmlab python=3.7 -y
    conda activate open-mmlab
    pip install mmcv-full
    pip install mmdet
    git clone https://github.com/open-mmlab/mmdetection3d.git
    cd mmdetection3d
    pip install -r requirements.txt
    pip install -v -e .
    如果在conda环境中还报错,可以尝试在官方docker镜像中运行,减少环境问题的影响。
  5. 如果编译依然报错,可以给开源代码的作者提issue,附上具体的报错信息和环境配置,他们可以针对你的环境给出更准确的解决方案。