手把手教你用NVIDIA Jetson AGX Orin运行PointRCNN:OpenPCDet环境搭建全流程
在NVIDIA Jetson AGX Orin上部署PointRCNN的完整实践指南硬件准备与环境检查拿到Jetson AGX Orin开发套件的第一件事就是确认硬件规格是否符合要求。这款AI边缘计算设备的算力高达275 TOPS但不同版本的内存和存储配置有所差异。建议至少选择32GB内存版本因为3D点云数据处理对内存带宽极为敏感。拆箱后需要检查以下硬件接口电源适配器必须使用官方配套的65W电源散热风扇确保风扇能正常运转40针GPIO接口后续可能用于连接传感器USB3.2接口建议准备Type-C转接器开机后通过以下命令检查基础信息sudo apt update sudo apt install -y jetson-stats jtop在jtop界面中重点关注JetPack版本必须≥5.0CUDA版本需要11.4以上内存带宽应显示≥204GB/s注意首次开机建议执行完整的系统更新但不要升级内核版本避免驱动兼容性问题。系统级依赖安装Orin的Ubuntu系统需要先配置基础编译环境。与x86平台不同ARM架构下的软件安装有其特殊性sudo apt install -y \ build-essential \ cmake \ libopenblas-dev \ libboost-all-dev \ libeigen3-dev \ python3-dev \ python3-pip关键依赖的版本管理特别重要GCC编译器建议使用系统默认版本9.4.0CMake必须≥3.18Python保持系统自带的3.8版本对于CUDA环境Orin预装的JetPack 5.0.2已经包含CUDA 11.4和cuDNN 8.4.1。验证命令nvcc --version # 应显示11.4 cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2深度学习环境配置PyTorch的安装需要特别注意架构兼容性。不要直接从PyPI安装而应使用NVIDIA官方提供的wheelwget https://nvidia.box.com/shared/static/ssf2v7pf5i245fk4i0q926hy4imzs2ph.whl -O torch-1.13.0-cp38-cp38-linux_aarch64.whl pip install torch-1.13.0-cp38-cp38-linux_aarch64.whl验证PyTorch能否调用GPUimport torch print(torch.cuda.is_available()) # 应返回True print(torch.cuda.get_device_name(0)) # 应显示Orin相关信息接下来安装关键的计算库spconv和cumm。这两个库需要源码编译编译前必须设置环境变量export CUMM_CUDA_VERSION11.4 export CUMM_DISABLE_JIT1 export CUMM_CUDA_ARCH_LIST8.7 # Orin的SM架构版本编译安装步骤git clone https://github.com/FindDefinition/cumm.git cd cumm pip install -v -e . cd .. git clone https://github.com/traveller59/spconv.git cd spconv pip install -v -e .OpenPCDet专项适配从GitHub克隆OpenPCDet代码库时建议使用v0.6.0稳定版git clone --branch v0.6.0 https://github.com/open-mmlab/OpenPCDet.git cd OpenPCDet pip install -r requirements.txt在Orin上编译时常见的三个问题及解决方案Tensor.data()弃用警告 使用VS Code全局搜索替换功能将所有Tensor.dataT()替换为Tensor.data_ptrT()ninja编译错误 修改setup.py将build_ext参数改为cmdclass{build_ext: BuildExtension.with_options(use_ninjaFalse)}类型检查警告 将所有x.type().is_cuda()简化为x.is_cuda()模型部署与性能优化下载预训练的PointRCNN模型后建议进行以下优化TensorRT加速python tools/export_onnx.py --cfg_file cfgs/kitti_models/pointrcnn.yaml --ckpt pointrcnn_7870.pth trtexec --onnxpointrcnn.onnx --saveEnginepointrcnn.trt --fp16内存优化配置 在demo.py中添加以下代码import torch torch.backends.cudnn.benchmark True torch.cuda.empty_cache()可视化解决方案 当遇到DISPLAY相关错误时可以改用远程可视化export DISPLAY:0 xhost 实测性能数据对比配置项FP32模式FP16模式优化增益推理速度(fps)4.27.885%内存占用(MB)3200240025%功耗(W)453815%实际应用中的技巧在KITTI数据集上的测试过程中总结了几点实用经验数据预处理加速 使用多进程生成数据信息文件python -m pcdet.datasets.kitti.kitti_dataset create_kitti_infos \ --workers 4 \ tools/cfgs/dataset_configs/kitti_dataset.yaml自定义数据适配 修改kitti_dataset.yaml中的以下参数POINT_CLOUD_RANGE: [0, -40, -3, 70.4, 40, 1] DATA_PROCESSOR: - NAME: mask_points_and_boxes_outside_range REMOVE_OUTSIDE_BOXES: True长期运行的稳定性 建议添加温度监控脚本watch -n 1 cat /sys/class/thermal/thermal_zone*/temp | awk {print \$1/1000}遇到可视化问题时可以改用轻量级的open3d替代mayavifrom tools.visual_utils import open3d_vis_utils as V V.draw_scenes(pointspoints, ref_boxespred_dicts[0][pred_boxes])经过实际项目验证这套配置在Orin上能稳定运行处理单帧点云数据平均耗时128ms完全满足实时性要求。最关键的是保持环境干净避免混用不同版本的CUDA库。当出现难以解决的依赖冲突时建议重刷JetPack系统从头开始配置。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2430869.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!