一:刷机前准备
- 首先准备好一个显示器,一根电源线,一根视频线(视频线需要HDMI接口,没有的话可以使用HDMI转VGA接头)
- 刷机除了TX2外,还需要一台宿主机(操作系统需要是Ubuntu,我用的是Ubuntu16.04版本;也可以在Windows系统下安装带有Ubuntu系统的虚拟机)
- 一个USB Hub或者无线键盘鼠标
- 开发套间里自带的一根USB数据线
- 从官网下载JetPack刷机包,我下载的是最新版本3.2.1;安装包下载地址为JetPack刷机包,需要NVIDIA账号才能下载。
- 注意:
- 这个刷机过程中TX2和host主机都要全程联网(我就是因为TX2没有联网导致前期总是失败)
- TX2和宿主机网络必须要在同一个网段内,可以用网线将两台机器连接在同一个路由器LAN口上
- 网速好坏对刷机快慢影响很大
- JetPack包是一个x86二进制文件,不支持在ARM平台上运行
二:安装JetPack3.2.1
- 在Ubuntu系统home目录下新建一个JetPack文件夹(JetPack安装需要一个纯净的文件夹)。
- 将下载的包拷贝到新建的文件夹下,在Ubuntu终端定位到jetpack安装包所在的目录。
- 更改执行权限:$ chmod +x ./JetPack-L4T-3.2.1-linux-x64_b23.run
- 执行安装:$ sudo ./JetPack-L4T-3.2.1-linux-x64_b23.run
- 之后便开始进入正式的安装界面了
选择默认安装路径即可:
选择第一个,Jetson TX2:
下载所需数据,网络慢的话需要一两个小时:
保证TX2和host主机连接在同一个路由器或者局域网内,选择第一个:
选择下一步:
接下来的步骤很关键,注意:
- 给TX2断电,彻底断掉,拔掉连接线(切记!);
- 使用盒子里的USB数据线连接TX2和host主机(必须保证在同一个局域网内,而且两个机子都要可以上网才行);
- 给TX2接上电源,按下电源键(S4键),然后按住Recover键不松手(S3键),在此期间按一下Reset键(S1键)松开,再等两秒松开S3键;
- 在主机上新建一个终端,输入命令:lsusb,如果可以看到Nvidia Crop和Intel Crop两个说明成功进入了刷机模式;
- 在下面终端按回车键;
- 等待安装完成。
安装完成:
三:运行视频目标检测示例
经过上面两个步骤,TX2刷机成功,就可以愉快的一起玩耍了。重启 TX2,连接键盘鼠标显示器,就可以跑 示例程序 了。
- 在终端进入tegra_multimedia_api/samples/backend目录:
$cd home/nvidia/tegra_multimedia_api/samples/backend
2.执行下面命令
$./backend 1 ../../data/Video/sample_outdoor_car_1080p_10fps.h264 H264 --trt-deployfile ../../data/Model/GoogleNet_one_class/GoogleNet_modified_oneClass_halfHD.prototxt --trt-modelfile ../../data/Model/GoogleNet_one_class/GoogleNet_modified_oneClass_halfHD.caffemodel --trt-forcefp32 0 --trt-proc-interval 1 -fps 10
运行结果就可以看到下面这样一个视频检测的结果:
至此,刷机完成!