Openpcdet 安装过程

Openpcdet 安装过程

硬件配置3060+5800h

需要安装的工具

Anaconda3
cuda_11.1.1_455.32.00_linux.run(安装cuda)
cudnn-11.2-linux-x64-v8.1.1.33.tgz(安装cudann)

安装cuda 和cudann请参考这篇博客

https://blog.csdn.net/w1520039381/article/details/120726135#t5

一、建立Oenpcdet的环境:准备工作

安装pytorch

torch1.9.1
torchaudio0.9.1
torchvision0.10.1
cudatoolkit11.1
1.1建立名为Openpcdet的新环境
conda create -n Openpcdet python=3.8
1.2环境建好后激活
conda activate Openpcdet
1.3安装pytorch

1.3.1 在线安装

conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge 

注意:安装pytorch1.90或者1.90以上清华源是没有的需要自行添加来源,加入-c pytorch是官方源可能导致下载变慢

例如pytorch1.9.1

pip3 install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio==0.9.1 -f https://download.pytorch.org/whl/torch_stable.html
conda install cudatoolkit=11.1 

#以清华源为例,下载的时候会报错,因为cudatoolkit=11.1的版本在清华源上是没有的。尝试用北外的源下载11.1版本的cudatoolkit。
conda install cudatoolkit=11.1 -c https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge

1.3.2离线安装
个人认为离线安装比较方便
首先要确认你的cuda 版本和要安装的python版本
在这里插入图片描述

pytorch离线下载网址
图神经网络对应的版本包:https://pytorch-geometric.com/whl/
选择你的离线包

在这里插入图片描述
三个文件pip安装

在这里插入图片描述

注意(pytorch与torchvision、python、torchaudio、cudatoolkit的对应关系)

cudatoolkittorch1.5torch1.6torch1.7torch1.8torch1.9torch1.10torch1.11
9.2111
10.11111
10.2111111
11.01
11.1111
11.31111

PyTorch与torchvision、python 对应关系
在这里插入图片描述
torch与torchaudio、python对应关系
在这里插入图片描述

1.4测试pytorch是否可用
python
import torch as t
device = t.device('cuda' if t.cuda.is_available() else 'cpu')
print(device) 

如果不是cuda请检查pytorch是否安装为cpu版本(检查很重要!!!!)

1.5安装spconv
pip install spconv-cu111   #我的cuda是11.1,根据cuda版本来选择spconv版本
注意:不添加清华园会导致下载失败
亲 使用pip install spconv-cu111 -i https://pypi.tuna.tsinghua.edu.cn/simple

在这里插入图片描述

1.5.1更新cmake版本工作

查看版本

cmake --version

没有的话

pip install Cmake
1.5.2验证spconv
import spconv.pytorch as spconv

二、下载安装Openpcdet

2.1安装

我保存的位置是在我创建的环境中的

(Open3d) huangmang@huangmang-Lenovo-ThinkBook-16p-Gen-2:~/anaconda3/envs/Open3d$

#1.选择你要保存的路径
#2.cd 进去
#3.安装所需的包

git clone https://github.com/open-mmlab/OpenPCDet.git
cd OpenPCDet
pip install -r requirements.txt 

安装需要的包后

cd OpenPCDet
sudo python setup.py develop

是不是以为大功告成?

不会的接下来是解决报错的过程

2.2安装报错问题

2.2.1[subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1]

解决办法:

anaconda环境下的 lib/python3.8/site-packages/torch/utils/cpp_extension.py文件

将**[‘ninja’,’-v’]改成[‘ninja’,’- -version’]** 注意是两条杠

如果你是python3.9也在相应路径去找

2.2.2fatal error: cuda_runtime.h: No such file or directory
验证nvcc -V
如果没有,可能是cuda路径设置有问题
查看你的~/.bashrc 文件

sudo gedit ~/.bashrc

看是否有以下路径(我的是cuda11.1)

export PATH=$PATH:/usr/local/cuda-11.1.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.1/lib64

或者没有就添加以下路径:

export CUDA_HOME=/usr/local/cuda-11.1
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}

然后添加软连接

sudo ln -s /usr/local/cuda-11.1 /usr/local/cuda

如果还不行,并且locate cuda_runtime.h 能找到正确位置


**2.2.3没有mayavi或着Open3d**

**mayavi安装失败,卡在Building wheel for mayavi (setup.py)**

使用pip安装mayavi的依赖库vtk的时候,如果没有指定vtk的版本号,就自动安装了 最新版本,最新的版本好像和mayavi不兼容。注意:vtk版本maya版本python版本不一致都会导致mayavi安装失败

**安装open3d**

直接安装open3d也会失败后面添加网址则成功

pip install open3d -i https://pypi.tuna.tsinghua.edu.cn/simple



安装完后Openpcdet后测试

```python
# 命令行输入
python
import pcdet
# 如果可以import说明安装成功

三、使用KITTI数据集进行演示

3.1下载数据集

klitti官网:

http://www.cvlibs.net/datasets/kitti/eval_object.php?obj_benchmark=3d

kitti官网下载数据集速度很慢这里我贴出我的云盘供下载

https://pan.baidu.com/s/1YxUnfZoWNEn_nGCq012RXQ

提取码:g5n5

文件内容如下

  • data_object_calib

  • data_object_image_2

  • data_object_label_2

  • data_object_velodyne

  • data_load

  • devkit_object

    使用说明

1、这里每个文件的内容被分成多个压缩包主要是因为百度云对上传文件的大小有限制,另外一方面压缩后的文件确实比原始文件小很多。以雷达数据(data_object_velodyne)为例,解压后的实际大小为26.7G,实际上传的文件大小只有15.77G。
2、对于不同内容的压缩包,只需要解压对应的xxx.zip文件。
3、若出现解压后文件被损坏,可能是下载的时候数据被破坏了,或者使用的解压软件不对,我这里使用的是Bandizip软件,大家可以参考。

3.2 demo演示

在openpcdet文件夹下进入 tools

python demo.py --cfg_file cfgs/kitti_models/pv_rcnn.yaml     --ckpt pv_rcnn_8369.pth     --data_path data/kitti/training/velodyne/000008.bin

其中:

–cfg_file: .yaml配置文件
–ckpt:为训练好的.path 模型文件
–data_path:为检测的数据.bin文件

报错问题1

 File "demo.py", line 103, in <module>
    main()
  File "demo.py", line 83, in main
 model.load_params_from_file(filename=args.ckpt, logger=logger, to_cpu=True)
  File "/home/xie/OpenPCDet/pcdet/models/detectors/detector3d_template.py", line 325, in load_params_from_file
    raise FileNotFoundError
FileNotFoundError

原因是缺少pv_rcnn_8369.pth预训练模型文件
pv_rcnn_8369.pth模型下载链接:https://pan.baidu.com/s/1MmybKnxtgMXO321056TerQ 提取码:fvm5

报错问题2

找不到bin文件

我们把下载好的velodyne点云文件放到/home/huangmang/anaconda3/envs/Open3d/OpenPCDet/data文件夹下

官方提供路径:–data_path data/kitti/training/velodyne/000008.b

经测试使用相对文件路径会报错要使用绝对路径,将上面的–data_path data/kitti/training/velodyne/000008.bin改为下面的路径

-data_path /home/huangmang/anaconda3/envs/Open3d/OpenPCDet/data/kitti/training/velodyne/000050.bin

耗费四天终于成功了!!!
在这里插入图片描述
在这里插入图片描述
3.3训练准备

OpenPCDet
├── data
│   ├── kitti
│   │   │── ImageSets
│   │   │── training
│   │   │   ├──calib & velodyne & label_2 & image_2 & (optional: planes)
│   │   │── testing
│   │   │   ├──calib & velodyne & image_2
├── pcdet
├── tools

运行以下命令生成真实框和五个字典信息

python -m pcdet.datasets.kitti.kitti_dataset create_kitti_infos tools/cfgs/dataset_configs/kitti_dataset.yaml

在这里插入图片描述

四、一些命令

conda指令
conda create -n myenv python=3 # 创建一个名为myenv的环境并指定python版本为3
conda remove -n myenv --all  # 删除环境及下属所有包

activate myenv # 切换到myenv环境
deactivate myenv # 推出环境myenv
activate # 进入默认的base环境

conda env list # 列出所有环境
conda list # 列出当前环境的所有包

# 以pandas为例,安装,卸载,更新
conda search pandas # 查找可安装的包
conda install pandas # 安装包
conda remove pandas # 卸载包
conda update pandas # 更新包

#cuda,cudnn 在conda环境里
conda install cudatoolkit=11.1 
conda install cudnn=8.1.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge

# 删除环境
conda env remove --name 环境名


删除cuda 和cudann
#删除cuda
cd /usr/local/cuda-11.0/bin/
sudo ./cuda-uninstaller
sudo rm -rf /usr/local/cuda-11.0

# 删除cudann
sudo rm -rf /usr/local/cuda/include/cudnn.h
sudo rm -rf /usr/local/cuda/lib64/libcudnn*
sudo rm -rf /usr/include/cudnn.h
sudo rm -rf /usr/lib/x86_64-linux-gnu/libcudnn*

2、gcc降级

Ubuntu20.04自带的gcc版本为9.7.0,需要添加gcc7才可安装cuda10.2,输入命令安装gcc7
sudo apt-get install gcc-7 g++-7
查看gcc版本,可以看到目前系统中存在7和9两个版本

使用update-alternatives进行版本切换,输入以下命令:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 50
此时输入sudo update-alternatives --config gcc命令查看gcc的默认版本,可以看到当前默认gcc版本为7,即切换成功。

参考文章
https://blog.csdn.net/weixin_42423743/article/details/111173137
https://blog.csdn.net/weixin_43678195/article/details/117352908
https://blog.csdn.net/u013086672/article/details/103910266
https://blog.csdn.net/sini2018/article/details/120820407
https://blog.csdn.net/uzwuzw/article/details/116091495
https://blog.csdn.net/jin15203846657/article/details/122735375

  • 10
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
对于在Windows上安装OpenPCDet,您可以按照以下步骤进行操作: 1. 首先,确保您已经安装Python环境。建议使用Anaconda来管理Python环境,您可以从Anaconda官网下载安装程序并按照提示进行安装。 2. 打开Anaconda Prompt(或者其他的命令行工具),创建一个新的虚拟环境。您可以使用以下命令创建一个名为"openpcdet"的虚拟环境: ``` conda create -n openpcdet python=3.7 ``` 3. 激活虚拟环境。在Anaconda Prompt中使用以下命令激活"openpcdet"环境: ``` conda activate openpcdet ``` 4. 安装PyTorch和CUDA。您可以根据自己的硬件和CUDA版本选择合适的PyTorch和CUDA版本。例如,如果您的电脑上安装了CUDA 10.2,则可以使用以下命令安装相应的PyTorch版本: ``` conda install pytorch==1.7.0 torchvision==0.8.0 cudatoolkit=10.2 -c pytorch ``` 5. 下载OpenPCDet源代码。您可以从OpenPCDet的GitHub仓库(https://github.com/open-mmlab/OpenPCDet)中下载最新的源代码。 6. 安装依赖库。在虚拟环境中,使用以下命令安装OpenPCDet所需的依赖库: ``` pip install -r requirements.txt ``` 7. 编译CUDA扩展。在OpenPCDet源代码的根目录下,运行以下命令编译CUDA扩展: ``` python setup.py develop ``` 8. 配置数据集和预训练模型。根据您的需求,将数据集放置在合适的位置,并下载相应的预训练模型。 9. 运行OpenPCDet。您可以按照OpenPCDet的文档和示例进行使用和测试。 请注意,以上步骤仅提供了一个大致的安装指南,具体的安装过程可能会因您的环境和需求而有所不同。强烈建议您参考OpenPCDet的官方文档和GitHub仓库中的说明进行安装和配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值