【Jetson-Nano】2.Tensorflow object API和Pytorch的安装
文章目录
- 1、Tensorflow多版本安装
- 1.1 Protobuf 安装
- 1.2 安装依赖包及tensorflow1.15
- 1.3 安装其它常用库
- 1.4 测试python包是否安装成功
- 1.5 TensorRT和Opencv的安装
- 1.6 pycuda和onnx安装
- 1.7 Tensorflow2.3安装
- 2、Pytorch安装
- 2.1 安装pytroch和torchvision
- 2.2 安装环境验证
- 参考内容
首先按照我的其它 博客完成jetson nano 基础环境的配置。然后就可以对深度学习框架进行安装。要注意的是,nano每次断电再开机后,系统时间是错误的,要先手动进行设置。
1、Tensorflow多版本安装
创建虚拟环境并激活:
mkvirtualenv nano
workon nano
Tensorflow不同的版本将安装在不同的虚拟环境中。
1.1 Protobuf 安装
退出虚拟环境,在系统中安装Protobuf。
首先配置protobuf
,这样可以使tensorflow运行更快。如果protobuf
和libprotobuf
没有安装,Tensorflow的性能会被大打折扣。当然,使用pip来安装tensorflow 的时候,会自动安装一个protobuf的版本,但是可能不是很合适。关于这部分性能的影响参见Nvidia的论坛
安装命令脚本sh内容如下:
#!/bin/bashset -efolder=${HOME}/src
mkdir -p $folderecho "** Install requirements"
sudo apt-get install -y autoconf libtoolecho "** Download protobuf-3.8.0 sources"
cd $folder
if [ ! -f protobuf-python-3.8.0.zip ]; thenwget https://github.com/protocolbuffers/protobuf/releases/download/v3.8.0/protobuf-python-3.8.0.zip
fi
if [ ! -f protoc-3.8.0-linux-aarch_64.zip ]; thenwget https://github.com/protocolbuffers/protobuf/releases/download/v3.8.0/protoc-3.8.0-linux-aarch_64.zip
fiecho "** Install protoc"
unzip protobuf-python-3.8.0.zip
unzip protoc-3.8.0-linux-aarch_64.zip -d protoc-3.8.0
sudo cp protoc-3.8.0/bin/protoc /usr/local/bin/protocecho "** Build and install protobuf-3.8.0 libraries"
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=cpp
cd protobuf-3.8.0/
./autogen.sh
./configure --prefix=/usr/local
make -j$(nproc)
make check
sudo make install
sudo ldconfigecho "** Update python3 protobuf module"
# remove previous installation of python3 protobuf module
sudo pip uninstall -y protobuf
sudo pip install Cython
cd python/
python3 setup.py build --cpp_implementation
sudo python3 setup.py install --cpp_implementationecho "** Build protobuf-3.8.0 successfully"
也可以将命令逐行在终端中执行。
然后激活虚拟环境,装protobuf装到虚拟环境中:
workon nano
cd ~
cp -r ~/src/protobuf-3.8.0/python/ .
cd python
python setup.py install --cpp_implementation
1.2 安装依赖包及tensorflow1.15
安装好protobuf以后,在虚拟环境中安装numpy和cython:
pip install cython
pip install numpy==1.16.1
因为需要编译,用时大约20分钟。
同时安装numpy时可能会报错:
numpy/core/src/multiarray/numpyos.c:18:10: fatal error: xlocale.h: No such file or directory
需要退出虚拟环境,为系统安装numpy,然后将其通过软链接使虚拟环境可以使用:
sudo pip install numpy=1.16.1
cd ~/.virtualenvs/nano/lib/python3.6/site-packages/
ln -s /usr/local/lib/python3.6/dist-packages/numpy numpy
然后再进入虚拟环境中进行numpy安装
pip install numpy==1.16.1
sudo apt-get install libfreetype6-dev
pip3 uninstall -y pillow
pip3 install --no-cache-dir pillow
安装其它依赖包:
pip install -U testresources setuptools
pip install -U future mock h5py keras_preprocessing keras_applications gast futures pybind11
安装过程中建议那个包的安装报错时,可以先把不报错的安装完成,然后报错的单独安装,整个用时也较长。
在写本博客时(2020年11月11日),官方提供了1.15和2.3版本的安装。当前1.15的版本更加稳定,在这个虚拟环境中安装tensorflow1.15.2:
pip install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v44 tensorflow==1.15.2
安装过程中有其它依赖会自动安装。
更多安装过程的理解请参考官方论坛和官方安装指导.
通过以上步骤,完成Tensorflow的安装。
安装时间较长,耐心等待。
1.3 安装其它常用库
每个包都很耗时,耐心等待,若不成功,多次尝试,考虑到安装太慢,可以多开几个shell来实现(keras还有scikit-learn jupyter是需要先安装scipy的,所以可以先安装时注意顺序;另外最新版本的keras要求tensorflow>2,所以要指定较早版本)
pip install scipy
pip install keras==2.3.0
pip install pillow
pip install matplotlib
pip install scikit-learn
pip install scikit-image
pip install jupyter
1.4 测试python包是否安装成功
python -c 'import numpy; print(numpy.__version__)'
python -c 'import jupyter; print(jupyter.__version__)'
python -c 'import PIL; print(PIL.__version__)'
python -c 'import matplotlib; print(matplotlib.__version__)'
python -c 'import tensorflow; print(tensorflow.__version__)'
python -c 'import keras; print(keras.__version__)'
python -c 'import scipy; print(scipy.__version__)'
同时可以验证一下tensorflow是否支持GPU:
1.5 TensorRT和Opencv的安装
系统中已将tensorrt和opencv的相关组件安装完成,如下图:
可以看到有uff,tensorrt,graphsurgeon,cv2模块,只需要将这些包的路径填加到虚拟环境的环境变量中即可。
workon nano
add2virtualenv /usr/lib/python3.6/dist-packages
lssitepackages #列出所有的包
1.6 pycuda和onnx安装
要使用tensorrt对各种主流框架(tensorflow,pytorch,caffe)的模型时行转换和加速,还要安装pycuda和onnx
pip install pycuda
pip install onnx==1.4.1
关于onnx的版本也选择了较低的,也可以安装最新的,可能会报错,这时也可以再降级。
1.7 Tensorflow2.3安装
tensorflow1.15.2己在nano虚拟环境中完成安装,大多数包也都是tensorflow2.3的安装依赖,所以进行如下操作。
复制nano环境:
cpvirtualenv nano nano_tf2
这样创建一个叫nano_tf2与nano一样的环境
安装tensorflow2.3
#先卸载tensorflow1.15及keras
pip uninstall keras
pip uninstall tensorflow
#然后再安装
pip install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v44 tensorflow==2.3.1
验证安装:
到此,tensorflow的安装完成。随着jetson系列的更新,可以参照本文去官网查看命令来安装。
2、Pytorch安装
本节主要参考 https://forums.developer.nvidia.com/t/pytorch-for-jetson-version-1-7-0-now-available/72048 内容。
在按照博客完成基础配置后可以执行以下安装步骤。
2.1 安装pytroch和torchvision
复制nano环境:
cpvirtualenv nano nano_ptch
这样创建一个叫nano_ptch与nano一样的环境
#先卸载tensorflow1.15及keras
pip uninstall keras
pip uninstall tensorflow
执行jtop
命令,按6
,查看当前jetpack版本,选择合适的pytorch版本进行安装。
可以看来系统版本是jetpack4.4.1,是当前(2020年11月13日)最新的。
下面列举几个版本的要求:
选择安装最新版本pytorch1.7
wget https://nvidia.box.com/shared/static/wa34qwrwtk9njtyarwt5nvo6imenfy26.whl -O torch-1.7.0-cp36-cp36m-linux_aarch64.whl #需要科学上网
workon nano_ptch
pip install torch-1.7.0-cp36-cp36m-linux_aarch64.whl
鉴于网络原因,我把pytorch1.7上传到CSDN中,免费下载。
接着安装torchvision,由于torchvision的版本要与pytorch的版本对应,所以要选择合适版本,版本对应关系如下:
PyTorch v1.0 - torchvision v0.2.2
PyTorch v1.1 - torchvision v0.3.0
PyTorch v1.2 - torchvision v0.4.0
PyTorch v1.3 - torchvision v0.4.2
PyTorch v1.4 - torchvision v0.5.0
PyTorch v1.5 - torchvision v0.6.0
PyTorch v1.6 - torchvision v0.7.0
PyTorch v1.7 - torchvision v0.8.1
安装命令为:
git clone --branch <version> https://github.com/pytorch/vision torchvision # see below for version of torchvision to download
cd torchvision
export BUILD_VERSION=0.x.0 # where 0.x.0 is the torchvision version
sudo python setup.py install # use python3 if installing for Python 3.6
cd ../ # attempting to load torchvision from build dir will result in import error
具体对应pytorch1.7时:
git clone --branch v0.8.1 https://github.com/pytorch/vision torchvision # see below for version of torchvision to download
cd torchvision
export BUILD_VERSION=0.8.1 # where 0.x.0 is the torchvision version
sudo python setup.py install # use python3 if installing for Python 3.6
cd ../ # attempting to load torchvision from build dir will result in import error
2.2 安装环境验证
要验证一下pytorch和torchvision是否安装成功,如下:
使用命令为如图4条:
import torch
print(torch.__version__)
print('cuda available:'+str(torch.cuda.is_available()))
print('cuDNN version:'+str(torch.backends.cudnn.version()))
到此,完成主流深度学习框架tensorflow和pytorch在jetson nano上的安装。
【Jetson-Nano】2.Tensorflow object API和Pytorch的安装相关推荐
- Jetson Nano目标检测手把手实战教程(pytorch训练、tensorrt推理,含完整代码和数据)
目录 一.概述 1.1 深度学习和边缘计算 1.2 Jetson Nano简介 二.深度学习环境安装 2.1 Pytorch框架 2.2 在Jetson Nano上安装Pytorch 三.算法原理 四 ...
- Jetson Nano 踩坑记
SD卡安装好镜像后,插入到板子中,启动板子 启动ubuntu后,第一件事情就是更改源,以前每次都是再界面上修改的,这次界面上没有其他源的选项,只能用命令行修改,用了很多方法都不行,无意中使用了这个博客 ...
- Jetson Nano编译opencv-python和opencv-contrib-python
基于Jetson Nano编译opencv以及opencv-contrib,网上说的可以直接用pip install opencv-python pip install opencv-contrib ...
- Jetson nano无法中文输入
Jetson nano无法中文输入 1.检查是否安装了ibus 2.进入ibus设置 3.在输入法中添加汉语拼音 4.打开文本输入设置,添加汉语拼音ibus
- 零基础入门Jetson Nano——远程连接
Jetson Nano学习--远程连接 前言 一.远程登录Jetson Nano 1.获取Jetson Nano的IP地址 2.在PC端安装远程连接软件 3.与Jetson Nano建立远程连接 二. ...
- [JetBot] Jetson Nano安装COMFAST 5G双频无线网卡
文章目录 前言 操作环境 一.获取网卡信息 1. 获取无线网卡驱动 二.编译并安装驱动 1. 配置编译 三.连接无线网络 四.测试网速(可选) 总结 前言 Jetson联网方法包含以下两种: 以太网 ...
- jetson xiaver NX 安装tensorflow object detection api 遇到的tensorflow-addons 不能安装问题
问题:Doing a pip3 install tensorflow-addons from an Nvidia TX2 produce No matching distribution found ...
- TensorFlow对象检测-1.0和2.0:训练,导出,优化(TensorRT),推断(Jetson Nano)
作者|Abhishek 编译|Flin 来源|analyticsvidhya 第1部分 从在自定义数据集中训练检测器到使用TensorFlow 1.15在Jetson纳米板或云上进行推理的详细步骤 完 ...
- jetson nano 环境配置(pytorch+ros+rartographer)
1. ,把系统烧录至SD卡后进入系统中依次完成:语言选择.键盘布局选择.WIFI连接.地区选择.用户设置.内存设置(0或者留空). 2. 进入系统设置完成语言的完整下载以及等待系统完成更新.设置系统休 ...
最新文章
- IntelliJ IDEA 的Project structure说明
- 取石头游戏 c语言,[HNOI2010]取石头游戏(博弈论+贪心)
- 微信小程序尝鲜一个月现状分析
- 静态类型检查—Flow入门
- boost的multi_index性能测试
- 本地修改指向服务器,本地修改指向服务器
- pytorch1.7教程实验——对抗示例生成FGSM
- Windows Phone开发(11):常用控件(下)
- Flash助手推荐广告删除方法
- Unity 边缘发光HighlightingSystem的使用
- Maven安装教程配置
- HP EVA4400简介
- FPGA之复数乘法器的设计
- 机器学习实战|决策树
- 数据挖掘十大经典算法 整理
- 开放银行布局加速 敏捷迭代小程序生态技术开放平台打造迫在眉睫
- 常用搜索引擎链接及参数
- Autohotkey window 下宏键盘、宏命令开发入门
- php正则匹配标点符号,js实现正则匹配中文标点符号的方法
- mysql 函数权限控制_MySql授权和撤销权限操作