Jetson TX1 从零开始配置教程

姓名:张猛

【嵌牛导读】:把最初学习GPU过程中对TX1的配置总结一下

 引用:http://blog.csdn.net/jalong_ma/article/details/52743923

【嵌牛鼻子】:NVIDIA  Jetpack

【嵌牛提问】:JETson tx1 配置以及刷系统 

【嵌牛正文】

JetPack 2.3 是NVIDIA最新发布的用于在Jetson系列嵌入式平台上部署开发环境的开发包,它包含 64bit 的 Ubuntu16.04 操作系统,CUDA 8.0,cuDNN 5.1,以及用来加速CNN推断速度的TensorRT. 对于JetPack 2.3更详细的介绍参见NVIDIA JetPack 2.3 介绍

配置 JetPack 2.3 需要:

一台装有 Ubuntu 64位操作系统的主机:由于 JetPack 是先在主机上下载并安装相关的包,然后刷到 TX 1上,所以需要一台主机。本人在14.04上测试没有问题,其它系统没有测试。

一根网线:连接 TX 1 与路由器

显示器,键鼠 等

1. 下载 JetPack 2.3

在主机上通过NVIDIA 官方链接下载 JetPack 2.3,并新建一个文件夹存放下载下来的文件,文件名大概为JetPack-L4T-2.3-linux-x64.run

在/home/usrname/目录下新建文件夹,可以命名为 JetPack :

cd~mkdir JetPackcp ~/Downloads/JetPack-L4T-2.3-linux-x64.run ~/JetPack

1  cd~

2  mkdir JetPack

3  cp ~/Downloads/JetPack-L4T-2.3-linux-x64.run ~/JetPack

2. 安装 JetPack 2.3

2.1 为JetPack-L4T-2.3-linux-x64.run增加执行权限

1  cd~/JetPack

2  chmod +x JetPack-L4T-2.3-linux-x64.run

2.2 执行JetPack-L4T-2.3-linux-x64.run,点击Next

./JetPack-L4T-2.3-linux-x64.run

2.3 指明安装路径后选择部署的开发平台

此处我们选择 Jetson TX1,同样也支持 TK 1的部署

2.4 弹出 JetPack L4T Component Manager 对话框

由于我已经安装好了所有的包,所以这边的Action一栏是no action,如果没有安装过的话,会显示install xxx。

这里点击Next后,接受所有的申明,就开始了漫长的下载与安装…(我等了10多个小时)

这里大家可以选择不安装OpenCV for Tegra,因为这个版本是2.4.13,对于USB摄像头的读取支持不是很好,另外对于CUDA静态库的读取也有些问题,所以不推荐安装,稍后会提示大家安装 OpenCV 3.1

2.5 网络配置和端口选择

安装完成后进入网络配置选项,选择通过路由器连接互联网,同时将TX1连接到与主机同一个路由器上

选择eth0端口,点击Next

2.6 设置 TX 1 为 Force USB Recovery Mode (强制USB恢复模式)

弹出如图所示终端窗口:

按照提示,将TX1设置为强制USB恢复模式

关闭设备,移除电源适配器

用自带的Micro USB 转 USB 数据线连接主机与TX1

连接电源适配器

按下POWER按钮

按住FORCE RECOVERY按钮不放开,同时按一下RESET按钮,等待两秒钟,松开FORCE RECOVERY按钮

完成上述步骤后,可以在主机上通过lsusb命令查看是否含有Nvidia Corp设备,确认存在后敲击Enter,开始将操作系统以及开发包拷贝到TX1,中途连接TX1的显示器会显示Ubuntu 16.04 桌面系统

待安装部署完成后,在主机上退出 JetPack L4T 即可,这样就完成了 JetPack 2.3 的配置

2.7 运行示例

我们可以在TX1上运行几个示例,验证下 CUDA 8.0 是否安装成功

./NVIDIA_CUDA-8.0_Samples/bin/aarch64/linux/release/smokeParticles

1

配置 OpenCV 3.1

OpenCV 3.1 是目前较为稳定的版本,因此推荐大家在TX1上安装OpenCV 3.1

1. 下载 OpenCV 3.1

下载OpenCV for Linux/Mac (Version 3.1)

2. 安装依赖库

sudoapt-add-repository universesudoapt-get updatesudoapt-get install -y build-essential make cmake cmake-curses-gui g++sudoapt-get install -y libavformat-dev libavutil-dev libswscale-devsudoapt-get install -y libv4l-dev libeigen3-dev libglew1.6-dev libgtk2.0-dev

3. 编译安装OpenCV 3.1

cd~unzip opencv-3.1.0.zipcdopencv-3.1.0mkdir buildcdbuildcmake -DWITH_CUDA=ON -DCUDA_ARCH_BIN="5.3"-DCUDA_ARCH_PTX=""-DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DCUDA_FAST_MATH=ON ..sudomake -j4 install

编译好的OpenCV库会默认安装到/usr/local/文件夹下

注意:

由于CUDA 8.0不支持OpenCV的 GraphCut 算法,可能出现以下错误:

/home/usrname/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp:120:54:error: ‘NppiGraphcutState’ hasnotbeen declared    typedef NppStatus (*init_func_t)(NppiSize oSize, NppiGraphcutState** ppStat                                                      ^/home/usrname/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp:135:18:error: ‘NppiGraphcutState’ doesnotname atypeoperator NppiGraphcutState*()                  ^/home/usrname/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp:141:9:error: ‘NppiGraphcutState’ doesnotname atypeNppiGraphcutState* pState;.......


此时需要修改OpenCV源码,使其不编译graphcuts.cpp即可

进入opencv-3.1.0/modules/cudalegacy/src/目录,修改graphcuts.cpp文件,将:

#include "precomp.hpp"#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)

#include "precomp.hpp"#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)  || (CUDART_VERSION >= 8000)

重新编译即可

配置 Caffe 开发环境

此处有很详细的指导,复制过来

1. 安装依赖库

sudoadd-apt-repository universesudoapt-get update -ysudoapt-get install cmake -y# General Dependenciessudoapt-get install libprotobuf-dev libleveldb-dev libsnappy-dev \libhdf5-serial-dev protobuf-compiler -ysudoapt-get install --no-install-recommends libboost-all-dev -y# BLASsudoapt-get install libatlas-base-dev -y# Remaining Dependenciessudoapt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev -ysudoapt-get install python-dev python-numpy -y

2. 编译 Caffe

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

1  git clone https://github.com/BVLC/caffe.git

2  cdcaffe

3  cp Makefile.config.example Makefile.config

修改Makefile.config:

# cuDNN acceleration switch (uncomment to build with cuDNN).USE_CUDNN :=1# Uncomment if you're using OpenCV 3OPENCV_VERSION :=3# Uncomment to support layers written in Python (will link against Python libs)WITH_PYTHON_LAYER :=1

1  # cuDNN acceleration switch (uncomment to build with cuDNN).

2  USE_CUDNN :=1

3

4  # Uncomment if you're using OpenCV 3

5  OPENCV_VERSION :=3

6

7  # Uncomment to support layers written in Python (will link against Python libs)

8  WITH_PYTHON_LAYER :=1

由于hdf5库目录更改,所以需要单独添加:

INCLUDE_DIRS:=$(PYTHON_INCLUDE) /usr/local/include/usr/include/hdf5/serial/LIBRARY_DIRS:=$(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/aarch64-linux-gnu/hdf5/serial/

1  make-j4all

2  make-j4runtest

之后编辑即可

make-j4allmake-j4runtest

为了更好地使用pycaffe,建议安装:

sudoapt-get install python-numpy python-setuptools python-pip cython python-skimage python-protobufmake pycaffe

1  sudoapt-get install python-numpy python-setuptools python-pip cython python-skimage python-protobuf

2  

3  make pycaffe

到这里Caffe开发环境就配置好了!

可以测试一下,输出AlexNet的时间测试结果:

1. cd~/caffe

2. ./build/tools/caffe time --gpu0--model ./models/bvlc_alexnet/deploy.prototxt

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 198,932评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,554评论 2 375
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 145,894评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,442评论 1 268
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,347评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,899评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,325评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,980评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,196评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,163评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,085评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,826评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,389评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,501评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,753评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,171评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,616评论 2 339

推荐阅读更多精彩内容