复现PointRcnn记录

本文详细记录了复现PointRcnn过程中遇到的问题及解决方法,包括sh build_and_install.sh错误的修复、plane数据集问题的处理、GPU资源限制的应对策略,以及复现步骤,包括环境搭建、数据集下载、模型训练和结果的可视化。在可视化部分,介绍了将预测结果与KITTI数据集结合,以及使用kitti_object_vis进行显示的方法。

1. 复现报错解决

1.1 sh build_and_install.sh错误

复现PointRcnn时,安装 sh build_and_install.sh时出现Fatal error: cuda.h, No such file or directory,以下方法解决。

1.在~/.bashrc中设置环境变量

export CUDA_HOME=/home/usr/local/cuda-10.0
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

2.查看makefile文件是否对cuda的地址是/usr/local/cuda-10.0 有的默认是/usr/local/cuda

ln -s /usr/local/cuda-10.0 /usr/local/cuda

3.如果以上情况都不是,并且locate  cuda.h 能找到正确位置,在terminal中如下操作

sudo apt-get install nvidia-cuda-toolkit

4.重启reboot。

1.2 plane数据集问题?

将lib\datasets\kitti_rcnn_dataset.py文件里的279~282行注释掉了,不让他调用数据增强函数apply_gt_aug_to_one_scene(...)。plane数据集也是可选的。

1.3 GPU不够

减小减小batch_size值。

2. 复现过程

pointRCNN原理与复现pointrcnn复现+可视化

2.1 安装anaconda

2.2 环境搭建

  • 创建虚拟环境/进入
conda create -n pointrcnn python=3.6 
#官方要求版本3.6以上
conda activate pointrcnn
  • 安装pytorch 1.0
conda install pytor
### POINTRCNN 训练教程及资源 #### 1. 安装依赖库 为了顺利训练POINTRCNN模型,首先需要安装必要的Python包以及配置CUDA环境。通常推荐使用Anaconda创建虚拟环境来管理这些依赖。 ```bash conda create -n point_rcnn python=3.7 conda activate point_rcnn pip install numpy matplotlib tensorboardX easydict opencv-python mayavi nvidia-ml-py3 torch torchvision torchnet spconv numba plyfile pyyaml scikit-image scipy h5py pandas tqdm ``` 以上命令会设置好所需的软件栈[^2]。 #### 2. 数据集准备 对于KITTI数据集而言,需下载并解压至指定文件夹内。接着执行预处理脚本以生成适合POINTRCNN使用的格式: ```python from tools import prepare_data as prep prep.create_kitti_info_file(data_path='./data/kitti', save_path='./data') prep.create_groundtruth_database(data_path='./data/kitti', info_paths=['kitti_infos_train.pkl'], used_classes=['Car']) ``` 此过程将构建索引信息并建立ground truth数据库以便后续训练时快速加载实例样本。 #### 3. 配置参数调整 编辑`tools/cfgs/dataset_configs/KITTI_DATASET.yaml` 和 `tools/cfgs/rcnn_training/point_rcnn_car.yaml` 文件中的超参设定,比如batch size, learning rate等,依据实际硬件条件和个人需求作适当修改。 #### 4. 开始训练流程 当一切准备工作完成后,可以通过简单的命令启动训练: ```bash cd /path/to/PointRCNN/tools/ ./train.py --cfg_file cfgs/rcnn_training/point_rcnn_car.yaml --ckpt_save_interval 5 --max_epochs 80 ``` 上述指令指定了具体实验配置文件路径,并设置了每五轮保存一次checkpoint权重文件的最大迭代次数为八十次。 #### 5. 测试评估性能 完成一轮完整的训练周期后,可以利用已学得的最佳模型对验证集合进行评测分析: ```bash ./eval.py --cfg_file cfgs/rcnn_training/point_rcnn_car.yaml --ckpt ./output/point_rcnn/default/ckpt/checkpoint_epoch_80.pth --eval_mode val ``` 这里选择了第80epoch结束后的checkpoint来进行最终效果衡量。
评论 10
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值