【点云语义分割】Ubuntu20.04配置运行RangeNet++

本文详细介绍了在Ubuntu20.04系统中,如何配置Cuda11.6、cudnn8.4.1和TensorRT-8.4.1.5的环境,包括下载、安装和验证过程。接着,文章提供了RangeNet++的源码编译步骤,以及如何使用预训练模型运行演示示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文代码Github地址:GitHub - PRBonn/rangenet_lib: Inference module for RangeNet++ (milioto2019iros, chen2019iros)
原文地址:https://www.ipb.uni-bonn.de/wp-content/papercite-data/pdf/milioto2019iros.pdf

目录

一、环境配置

1.Cuda11.6

2.cudnn安装

3.TensorRT安装

二、RangeNet++源码编译

运行demo


一、环境配置

Ubuntu20.04+Cuda11.6+cudnn8.4.1+TensorRT-8.4.1.5

1.Cuda11.6

官网下载:CUDA Toolkit Archive | NVIDIA Developer

wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda_11.6.0_510.39.01_linux.run
sudo sh cuda_11.6.0_510.39.01_linux.run

开始安装,取消安装驱动,其余默认(y)安装

环境变量配置

gedit ~/.bashrc

 变量生效

source ~/.bashrc

验证版本

nvcc -V

2.cudnn安装

官网下载(需要登陆):CUDA Deep Neural Network (cuDNN) | NVIDIA Developer

选择Archived cuDNN Releases

 下载后解压:

将解压出的文件,移动到/usr/local/cuda文件夹下:(根据自己的路径进行修改)

sudo cp -P /home/yang/下载/cudnn-linux-x86_64-8.4.1.50_cuda11.6-archive/lib/libcudnn* /usr/local/cuda-11.6/lib64/
sudo cp  /home/yang/下载/cudnn-linux-x86_64-8.4.1.50_cuda11.6-archive/include/cudnn.h /usr/local/cuda-11.6/include/

赋予所有用户权限,cudnn安装完成

sudo chmod a+r /usr/local/cuda-11.6/include/cudnn.h
sudo chmod a+r /usr/local/cuda-11.6/lib64/libcudnn*

验证cudnn

cat /usr/local/cuda-11.6/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

3.TensorRT安装

官网下载地址:https://developer.nvidia.com/nvidia-tensorrt-download

 如果Cuda下载用的是deb(local),则TensorRT也需要下载Debian包本地安装;而Cuda用runfile安装,就得下载tar压缩安装;两者需要对应,否则安装会报错。

下载完成后,解压到本地

把 TensorRT 的库和头文件添加到系统路径下:

# TensorRT目录下
sudo cp -r ./lib/* /usr/lib
sudo cp -r ./include/* /usr/include

添加路径到环境变量

gedit ~/.bashrc
export LD_LIBRARY_PATH=/home/yang/tensorrt/TensorRT-8.4.1.5/lib:$LD_LIBRARY_PATH
export LIBRARY_PATH=/home/yang/tensorrt/TensorRT-8.4.1.5/lib::$LIBRARY_PATH

source ~/.bashrc

 测试

#在TensorRt目录文件夹下,cd到sample文件夹下
sudo make
cd ../bin
./sample_mnist

 如果还要用Python接口:

#在下载的TensorRT目录文件夹下
cd TensorRT-8.4.1.5/python
pip install tensorrt-8.4.1.5/-py2.py3-none-any.whl
 
# 安装UFF,支持tensorflow模型转化
cd TensorRT-8.4.1.5//uff
pip install uff-0.5.5-py2.py3-none-any.whl
 
# 安装graphsurgeon,支持自定义结构
cd TensorRT-8.4.1.5//graphsurgeon
pip install graphsurgeon-0.3.2-py2.py3-none-any.whl

python接口验证

python3
import tensorrt
tensorrt.__version__
#输出'8.4.1.5'则安装成功!

二、RangeNet++源码编译

相关依赖安装

sudo apt-get update 
sudo apt-get install -yqq  build-essential python3-dev python3-pip apt-utils git cmake libboost-all-dev libyaml-cpp-dev libopencv-dev
sudo apt install python3-empy
sudo pip install catkin_tools trollius numpy

使用 catkin 工具来构建库,终端打开:

mkdir -p ~/catkin_rangenet/src
cd ~/catkin_rangenet/src
git clone https://github.com/ros/catkin.git 
git clone https://github.com/PRBonn/rangenet_lib.git
cd .. && catkin init
catkin build rangenet_lib

运行demo

预训练模型下载:https://www.ipb.uni-bonn.de/html/projects/semantic_suma/darknet53.tar.gz

# cd到catkin workspace下
cd ~/catkin_rangenet
# -p后是预训练模型路径、-s后是要预测点云.bin demo路径
./devel/lib/rangenet_lib/infer -p /path/to/the/pretrained/model -s /path/to/the/scan.bin --verbose

需要花点时间,请耐心等待。

### 安装和配置 RangeNet 的全流程 #### 1. 环境准备 为了成功安装和配置 RangeNet,需要先搭建好基础环境。以下是所需的主要组件及其版本建议: - **操作系统**: Ubuntu 20.04 LTS[^1] - **CUDA 版本**: CUDA 11.x 推荐使用 CUDA 11.6[^3] - **cuDNN 版本**: cuDNN 8.4.1 对应于 CUDA 11.6 - **TensorRT**: TensorRT-8.4.1.5 可选用于优化推理性能 #### 2. 安装 NVIDIA 显卡驱动程序 确保已正确安装适用于 GPU 的最新 NVIDIA 驱动程序。可以通过以下命令检查当前驱动状态: ```bash nvidia-smi ``` 如果未安装或版本过旧,则需更新至支持 CUDA 11.6 的驱动版本。 #### 3. 安装 CUDA 和 cuDNN ##### (1)安装 CUDA 访问官方 NVIDIA CUDA 下载页面并选择适合的操作系统版本(Ubuntu 20.04)。推荐采用 `.deb` 文件方式进行安装[^2],具体操作如下: ```bash wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb sudo dpkg -i cuda-keyring_1.0-1_all.deb sudo apt-get update sudo apt-get install -y cuda-11-6 ``` 完成安装后,设置环境变量以便后续调用: ```bash echo 'export PATH=/usr/local/cuda-11.6/bin:$PATH' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc source ~/.bashrc ``` 验证安装是否正常工作: ```bash nvcc --version ``` ##### (2)安装 cuDNN 下载对应 CUDA 11.6 的 cuDNN 库文件,并解压到指定路径下。通常情况下将其放置在 `/usr/local/cuda-11.6/` 中即可满足需求: ```bash tar -xzvf cudnn-linux-x86_64-8.4.1.50_cuda11-archive.tar.xz sudo cp cuda/include/cudnn*.h /usr/local/cuda-11.6/include/ sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.6/lib64/ sudo chmod a+r /usr/local/cuda-11.6/lib64/libcudnn* ``` #### 4. 安装 PyTorch 或 TensorFlow RangeNet++ 支持多种深度学习框架实现,其中最常见的是基于 PyTorch 构建的模型。因此可以优先考虑安装 PyTorch 并测试其兼容性。 通过 pip 工具快速部署稳定版 PyTorch: ```bash pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu116 ``` #### 5. 获取与编译 Rangenet++ 从 GitHub 存储库克隆项目源码,并依据文档说明执行依赖项构建过程: ```bash git clone https://github.com/hshustc/CVPR19_RangeNet.git cd CVPR19_RangeNet pip install -r requirements.txt ``` 随后针对特定硬件架构调整 Makefile 参数重新编译核心模块部分代码片段示例如下所示: ```cpp // example.cpp #include <iostream> int main() { std::cout << "Compiled successfully!" << std::endl; return 0; } ``` 最后利用 CMakeLists.txt 自定义选项生成可执行二进制目标文件: ```bash mkdir build && cd build cmake .. make -j$(nproc) ``` #### 6. 测试 SumA++ 运行状况 当上述步骤均顺利完成之后便能够尝试加载预训练权重参数评估实际效果如何。 --- ###
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值