在Jetson TX2上安装caffe和PyCaffe

Posted gezhuangzhuang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Jetson TX2上安装caffe和PyCaffe相关的知识,希望对你有一定的参考价值。

参考文章:How to Install Caffe and PyCaffe on Jetson TX2

与参考文章大部分都是相似的,如果不习惯看英文,可以看看我下面的描述

 

caffe是Nvidia TensorRT最支持的深度学习框架,因此在Jetson TX2上安装caffe很有必要。顺便说一句,下面的安装是支持python3的。

 

先决条件

  在Jetson TX2上完成JetPack-3.1的安装。

  构建并安装OpenCV-3.4.0,并确保其在python3下正常工作。参考:在Jetson TX2上安装OpenCV(3.4.0)

 

安装步骤

安装依赖项

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev                        libhdf5-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install libatlas-base-dev libopenblas-dev

接下来,需要从github上获取caffe的源代码。配置Jetson TX2,实际上从Makefile.config.example中修改了以下内容

  设置 USE_CUDNN := 1

  设置 OPENCV_VERSION := 3

  在 CUDA_ARCH 中添加 compute_62(for TX2) 和 compute_53(for TX1)

  用 python3.5 代替python2.7

  在 PYTHON_LIBRARIES 中用 boost_python-py35 代替 boost_python3

  在 PYTHON_INCLUDE 中用 /usr/local/lib/python3.5/dist-packages/numpy/core/include 代替

          /usr/lib/python3.5/dist-packages/numpy/core/include

  设置 WITH_PYTHON_LAYER := 1

  在 INCLUDE_DIRS 添加 /usr/include/hdf5/serial

  在 LIBRARY_DIRS 添加 /usr/lib/aarch64-linux-gnu /usr/lib/aarch64-linux-gnu/hdf5/serial

结果生成的Makefile.config,可以从这里下载

cd ~
git clone https://github.com/BVLC/caffe
cd caffe
cp Makefile.config.example Makefile.config

将下载好的Makefile.config拷贝到caffe文件夹下。/home/nvidia/caffe 是我的caffe所在目录

cp ~/Download/Makefile.config /home/nvidia/caffe
make -j4 all
make -j4 test
### Test and verify the caffe build
make runtest

 

剩下的步骤是为了python3准备的。注意,我必须从源代码中安装 leveldb-0.20 才能使其正常工作

为python3手动构建并安装 leveldb-0.20,因为默认版本0.194无法在Jetson TX2上编译

mkdir -p ~/src
cd ~/src
wget https://pypi.python.org/packages/03/98/1521e7274cfbcc678e9640e242a62cbcd18743f9c5761179da165c940eac/leveldb-0.20.tar.gz
tar xzvf leveldb-0.20.tar.gz
cd leveldb-0.20
python3 setup.py build
sudo python3 setup.py install

接下来需要安装 ~/caffe/python/requirements.txt 里面的一些工具包

pkgs=`sed s/[>=<].*$// ~/caffe/python/requirements.txt`
for pkg in $pkgs; do sudo pip3 install $pkg; done
### build pycaffe
cd ~/caffe
make pycaffe

在 ~/.bashrc 中添加下列行

export PYTHONPATH=/home/nvidia/caffe/python

验证安装是否成功

python3
>>> import numpy as np
>>> import caffe

 

此外,我还对caffe在Jetson TX2上的性能进行了基准测试。使用nvpmodel和~/ Jetson -clock .sh将Jetson TX2设置为最大性能模式。

参考连接

 

以上是关于在Jetson TX2上安装caffe和PyCaffe的主要内容,如果未能解决你的问题,请参考以下文章

Jetson TX2安装Jetpack 3.0注意事项

在Jetson TX2上安装OpenCV(3.4.0)

Jetson TX2安装TensorFlow注意事项

NVIDIA Jetson TX2 通过vnc 桌面控制

jetson TX2

ROS小车打造--Jetson TX2安装与调试