OpenPCDet v0.5版本的安装与测试

Posted 非晚非晚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenPCDet v0.5版本的安装与测试相关的知识,希望对你有一定的参考价值。

文章目录


OpenPCDet更新了最新版本v0.5,同时也支持open3d。因为之前也没怎么用过mayavi,本来还想基于openpcdet 0.3版本,自己写一个open3d的显示,看到官方更新了一个最新版,果断安装最新版使用了,效果还不错,于是写一个相关的使用教程吧。

1. 安装OpenPCDet

1.1 安装PyTorch

之前openpcdet的v0.3版本最高只支持pytorch1.5版本,现在最高支持到了pytorch1.10版本了!我这里安装的pytorch1.10。v0.5支持的pytorch为:

PyTorch 1.1 or higher (tested on PyTorch 1.1, 1,3, 1,5~1.10)

我这里安装的是1.10版本,安装方式如下:

conda install pytorch==1.9.1 torchvision==0.10.1 torchaudio==0.9.1 cudatoolkit=10.2 -c pytorch

1.2 安装spconv

openpcdet对spconv的支持也更加的友好了,最高支持到spconv2.x版本,支持版本如下:

spconv v1.0 (commit 8da6f96) or spconv v1.2 or spconv v2.x

这几个spconv版本都可以安装,但是要提醒注意的是,spconv和pytorch的版本要求对应,如果安装错误的spconv的版本,则使用openpvdet会报错,别问我怎么知道的。。。这里我使用的是spconv 1.2.1版本。

对于openpcdet v0.5版本,注意pytorch与spconv的版本问题。

(1)spconv1.2

在这介绍一下spconv v1.2.1版本的安装,安装步骤如下:

#安装libboost
sudo apt-get install libboost-all-dev

# 下载spconv,并切换分支
git clone https://github.com/traveller59/spconv.git
git checkout  -b v1.2 origin/v1.2.1 

#下载pybind11,并把pybind11放入spconv项目中的third_party对应的目录中
git clone https://github.com/pybind/pybind11

cd spconv
python3 setup.py bdist_wheel
#如setup.py这一步报错,可能需要你删掉build/ dist/ spconv.egg-info/,这几个文件夹之后再编译

cd ./dist
pip install spconv-1.2.1-cp36-cp36m-linux_x86_64.whl

测试是否安装成功

python3
import spconv

(2)spconv 2.x

pip和源码的方式都可以安装,安装方式如下:

  • pip安装
CPU (Linux Only)pip install spconv pypi
CUDA 10.2pip install spconv-cu102
CUDA 11.1pip install spconv-cu111
CUDA 11.3 (Linux Only)pip install spconv-cu113
CUDA 11.4pip install spconv-cu114
  • 源码安装
pip install spconv-cu102 -i https://pypi.tuna.tsinghua.edu.cn/simple
#cumm安装
git clone https://github.com/FindDefinition/cumm
cd ./cumm
pip install -e .

#spconv安装
git clone https://github.com/traveller59/spconv
cd ./spconv
pip install -e .

1.3 安装openPCDet v0.5

下面用到了加速!

git clone https://github.com/open-mmlab/OpenPCDet.git
cd OpenPCDet
pip install -r requirements.txt
python setup.py develop
  • 测试是否安装成功
python3 
import pcdet

2. 显示

可以在自定义点云数据上测试预训练的模型并可视化预测结果

2.1 安装可视化工具open3d

open3d和mayavi都可以使用,个人比较习惯使用open3d,使用国内源(https://pypi.tuna.tsinghua.edu.cn/simple)安装如下:

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

2.2 测试训练出来的模型效果

测试训练的命令如下:

python3 demo.py --cfg_file cfgs / kitti_models / pv_rcnn.yaml \\
    --ckpt pv_rcnn_8369.pth \\
    --data_path $ POINT_CLOUD_DATA

这$POINT_CLOUD_DATA可能是以下格式:

  • 使用单个numpy文件(如)转换的自定义数据my_data.npy。
  • 带有目录的转换后的自定义数据可用于测试多个点云数据。
  • 内的原始KITTI.bin数据data/kitti,例如data/kitti/training/velodyne/000008.bin。
  • bin数据测试
python3 demo.py --cfg_file cfgs / kitti_models / pv_rcnn.yaml \\
    --ckpt pv_rcnn_8369.pth \\
    ../data/kitti/testing/velodyne/000008.bin 
  • npy数据测试
python3 demo.py \\
	--cfg_file cfgs/kitti_models/pointpillar.yaml \\
	--ext .npy\\
	--ckpt ../pth/my.pth \\
	--data_path ../train_data/npy/498.npy 

我这里测试的npy格式和pointpillars代码,官方训练的代码只有3类,我个人训练的5类,所以显示的时候需要增加一些颜色配置,不然会报错,效果如下:


参考官方github链接:https://github.com/open-mmlab/OpenPCDet

以上是关于OpenPCDet v0.5版本的安装与测试的主要内容,如果未能解决你的问题,请参考以下文章

点云3D目标检测OpenPCDet下Spconv1.x与Spconv2.x的安装问题及解决方法

openpcdet之pointpillar代码阅读——第二篇:网络结构

openpcdet之pointpillar代码阅读——第二篇:网络结构

openpcdet之pointpillar代码阅读——第二篇:网络结构

openpcdet之pointpillar代码阅读——第三篇:损失函数的计算

openpcdet之pointpillar代码阅读——第三篇:损失函数的计算