手把手教你使用jetson nano運行maskrcnn-benchmark

準備工作

  1. 一塊jetson Nano
  2. 一個SD卡,我這裏是64G的
  3. 從nvidia官網上燒錄鏡像到SD卡上,然後把SD卡插到nano裏,開機

安裝pytorch

Python 2.7

wget https://nvidia.box.com/shared/static/m6vy0c7rs8t1alrt9dqf7yt1z587d1jk.whl
-O torch-1.1.0a0+b457266-cp27-cp27mu-linux_aarch64.whl pip install torch-1.1.0a0+b457266-cp27-cp27mu-linux_aarch64.whl

Python 3.6

wget https://nvidia.box.com/shared/static/veo87trfaawj5pfwuqvhl6mzc5b55fbj.whl -O torch-1.1.0a0+b457266-cp36-cp36m-linux_aarch64.whl
pip3 install numpy torch-1.1.0a0+b457266-cp36-cp36m-linux_aarch64.whl

安裝opencv

由於無法使用pip3 install opencv-python 來直接安裝,所以我們使用從源碼安裝的方法:

  1. 下載opencv release版的source.zip

  2. 運行

     cd opencv
     mkdir build
     cd build
     cmake ..
     make all
     sudo make install
    

安裝maskrcnn-benchmark

  1. cuda環境在nano的官方鏡像裏就已經有了,我們不需要關心。
  2. 這裏我沒有使用anaconda,因爲裝不上,估計是aarch64平臺的原因,這裏直接在系統的python3裏進行安裝:
pip3 install ninja yacs cython matplotlib tqdm  --user -i https://pypi.tuna.tsinghua.edu.cn/simple
(我在運行這裏的時候裝ninja出現了No module named skbuild 的錯誤,原因是沒有裝scikit-build, pip3 install scikit-build 即可)
pip3 install pycocotools --user
git clone https://github.com/NVIDIA/apex.git
cd apex/
sudo python3 setup.py install --cuda_ext --cpp_ext --user
(運行這裏的時候出現了numpy,protobuf版本太低的錯誤,升級一下即可)
cd ..
git clone https://github.com/facebookresearch/maskrcnn-benchmark.git
cd maskrcnn-benchmark
sudo python3 setup.py build develop --user

運行maskrcnn-benchmark

由於jetson nano 只有4G的內存(顯存公用),所以運行稍微大點的模型的時候,虛擬內存是有必要的:

sudo dd if=/dev/zero of=/swap bs=1M count=2048
mkswap -f /swap
swapon /swap

然後運行demo/Mask_R-CNN_demo.ipnb文件,效果如下:
記得要把cpu改成cuda):
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章