ubuntu1804LTS run PointRCNN預訓練模型 踩雷記錄

一、安裝NVIDIA驅(qū)動、cuda、cudnn

  1. 在nvidia官網(wǎng)根據(jù)自己的設別下載對應版本的NVIDIA驅(qū)動、cuda、cudnn 例如:64位pc、RTX2080 -> cuda10.2
    1)cuda版本選擇

    lshw -numeric -C display  ///>   查看顯卡型號
    lspci | grep -i nvidia    ///> 或 查看本機顯卡
    
  2. 安裝nvidia
    1)舊驅(qū)動卸載以及禁用自帶的 nouveau

    sudo apt-get purge nvidia*                       ///>   卸載舊的驅(qū)動   
    sudo apt-get autoremove
    sudo vi /etc/modprobe.d/blacklist-nouveau.conf   ///>  禁用自帶的 nouveau nvidia驅(qū)動
    

    加入一下內(nèi)容:

    blacklist nouveau 
    options nouveau modeset=0
    
    sudo update-initramfs -u    ///> 更新一下
    lsmod | grep nouveau        ///> 無輸出表示禁用生效
    



    2)顯示器設置
    臺式pc:將顯示器接口插入到主機集成顯卡接口
    筆記本pc:進入bios目錄,關掉獨立顯卡顯示

    3)進入系統(tǒng)文本編輯

    sudo telinit 3
    

    4)安裝驅(qū)動

    sudo chmod a+x NVIDIA-Linux-x86_64-450.80.02.run       ///>  切換到驅(qū)動文件路徑下,并給驅(qū)動文件增加可執(zhí)行權限
    ./NVIDIA-Linux-x86_64-450.80.02.run --no-opengl-files  ///>  執(zhí)行  默認執(zhí)行即可
    nvidia-smi
    

    顯示如下:

    image


  3. 安裝cuda
    1)卸載舊版本的cuda

    sudo /usr/local/cuda-8.0/bin/cuda_uninstall    ///> 根據(jù)老版本的cuda名卸載
    sudo rm -rf /usr/local/cuda-8.0
    

    2)安裝新版的cuda

    sudo sh cuda_10.0.130_410.48_linux.run        ///> 安裝cuda
    sudo /etc/init.d/lightdm start                ///> 安裝好后,打開圖形界面     
    sudo gedit ~/.bashrc                          ///> 更改環(huán)境變量
    

    添加如下內(nèi)容:

     export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}       
     export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}   
     export CUDA_HOME=/usr/local/cuda-10.0
    
    source ~/.bashrc    ///> 環(huán)境變量生效
    nvcc -V             ///>  查看cuda是否安裝成功
    
  4. 安裝cudnn

    sudo dpkg -i  libcudnn8-samples_ 
    sudo dpkg -i  libcudnn8_   
    sudo dpkg -i  libcudnn8-dev
    

二、下載PointRCNN ,其基于pytorch1.0,修改適應ubuntu1804LTS pytorch1.7

  1. 下載pointRCNN:參考pointRCNN中readme
    git clone --recursive https://github.com/sshaoshuai/PointRCNN.git
    pip install easydict tqdm tensorboardX -i https://pypi.tuna.tsinghua.edu.cn/simple
    

  2. pointRCNN源碼解決pytorch版本不匹配問題
    1)修改cuda支持問題
    image
    grep AT_CHECK -rn .  ///> 在pointRCNN源碼路徑下搜索,并依次替換
    grep THCState_getCurrentStream(state) -rn .   ///> 在pointRCNN源碼路徑下搜索,并依次替換
    
    2)預訓練模型(提供了car的預訓練模型)直接受三個通道,因此需要將intensity排除
    __C.RPN.USE_INTENSITY = False   ///> pointRCNN/lib/config.py中
    
  3. 安裝一些庫
    sh build_and_install.sh
    
  4. 評估預訓練模型:github預訓練模型與評估代碼
    1)將下載的KITTI數(shù)據(jù)集安裝以下結(jié)構,放入pointRCNN源碼源碼目錄中
    image



    2)輸出預測結(jié)果:data文件夾
    運行以下語句將在/PointRCNN/output/rcnn/default/eval/epoch_no_number/val/final_result 路徑下輸出
    python eval_rcnn.py --cfg_file cfgs/default.yaml --ckpt PointRCNN.pth --batch_size 1 --eval_mode rcnn --set RPN.LOC_XZ_FINE False
    
    3)評估預測結(jié)果
    ?? a. write the CmakeLists.txt
        ///  CmakeLists.txt
        cmake_minimum_required(VERSION 3.0)
        project(evaluate_detect_3d_offline)
        add_executable(evaluate_detect_3d_offline evaluate_object_3d_offline.cpp)
    
    ?? b. make generate evaluate_detect_3d_offline
    ?? c. ./evaluate_detect_3d_offline gt_dir result_dir
    ???? 其中, gt_dir = Dataset/KITTI/data_object_label_2/training/label_2;
    ????result_dir = /home/zc/MyFile/git/dataset/kitti_eval/pred;
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容