Jetson Nano 系统刻录

2024-03-05 07:10
文章标签 系统 jetson nano 刻录

本文主要是介绍Jetson Nano 系统刻录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Jetson Nano 系统刻录

简介

NVIDIA® Jetson Nano™ 开发者套件是一款专为创客、学习者和开发者打造的小型 AI 计算机。学习此简要指南后,您将能开始构建实用 AI 应用程序、炫酷的 AI 机器人以及其他精彩作品。

必备硬件:

Jetson Nano板:

 

MicroSD卡:Jetson Nano 开发者套件将 microSD 卡用作启动设备和主存储器。请务必为项目准备一个至少 32GB UHS-I 卡。并根据您使用的计算机类型(Windows、Mac 或 Linux)以刷写形式向您的 microSD 卡写入镜像。

 

网线,读卡器

1、工具下载

1.1、Nano系统下载和解压缩:

1.1.1、NVIDIA DLI Jetson Nano SD卡镜像下载

路径:NVIDIA DLI Jetson Nano SD卡镜像 或:\192.168.1.251\1项目-0教育-1机器视觉\Nano实验板\0_实验系统\jetson-nano-jp451-sd-card-image.zip

选择自己的Nano板所需的NVIDIA DLI Jetson Nano SD卡镜像系统。

 

1.1.2、Nano解压缩

 

1.2、在Windows上格式化MicroSD卡

使用 SD 协会的 SD Memory Card Formatter 格式化 microSD 卡。

 

a、下载安装并启动Windows 版 SD Memory Card Formatter

b、选择卡驱动器

c、选择”Quick format“(快速格式化)

d、将“Volume label”(卷标)留空

e、单击”Format“(格式化)开始格式化,然后在警告对话框中单击Yes(是)

1.3、balenaEtcher刻录系统工具下载安装

a、下载路径:balenaEtcher  或:\192.168.1.251\1项目-0教育-1机器视觉\Nano实验板\0_实验系统\balenaEtcher-Setup-1.5.45.exe

点击下载并安装:

 

b、安装:

点击我同意后一路安装成功。

 

1.4、刻录系统

双击打开balenaEtcher依次选择如下步骤:

 

第一步选择.img文件

 

第二步选择需要刻录的SD卡

 

第三步点击Flash:

烧录过程开始:

 

正在烧录进SD卡

 

等待一会后完成,Etcher 操作完成后,Windows 可能会提示您它不知如何读取 SD 卡。此时只需单击“Cancel”(取消),然后删除 microSD 卡。

 

1.5、首次启动

a、接通电源和插入网线

b、将MicroSD卡插入Jetson Nano板子

 

c、使用HDMI连接显示器,将鼠标、键盘插入Jetson Nano板页面显示如下:

 

d、下载NoMachine 或 \192.168.1.251\1项目-0教育-1机器视觉\Nano实验板\0_实验系统\nomachine_6.11.2_1_arm64_ubuntu.deb 并安装

2、开始使用Jetson Nano(B01)

2.1、删除无用的一些软件,依次在终端执行以下命令:

sudo apt-get purge libreoffice*
sudo apt-get clean
sudo apt autoremove

2.2、更换下载源为国内源

2.2.1、备份source.list

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2.2.2、修改

sudo gedit /etc/apt/sources.list

2.2.3、替换

弹出如上窗口后替换为如下内容后点击右上角Save。

(若出现无法更新情况,点击链接copy后,重新写入:【Jetson-Nano】jetson_nano安装环境配置及tensorflow和pytorch的安装_牛andmore牛的博客-CSDN博客)

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe

2.2.4、更新

在终端输入如下命令:

sudo apt-get update 

 

结束后接着输入如下命令:

sudo apt-get full-upgrade

 

2.3、CUDA

输入nvcc -V 查看是否具备CUDA

 

此时是查询不到CUDA的(实际jetson nano 是已经具备CUDA的,但需要把CUDA的路径写入环境变量),需要依次进行以下操作:

2.3.1、编辑CUDA路径

通过如下命令编辑文件:

sudo gedit ~/.bashrc

在弹出的文件夹的最后面添加如下内容:

 

弹出如上窗口后替换为如下内容后点击右上角Save。

export CUDA_HOME=/usr/local/cuda-10.2
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.2/bin:$PATH

如上内容需要根据自己Nano板子来,在路径/usr/local中查看:

 

最后执行如下语句激活该文件:

source ~/.bashrc

 

验证cuda是否已添加进环境路径:

nvcc -V

 

出现以上内容说明CUDA已经添加进环境路径

2.3.2、运行cudnn例子验证CUDA

cd /usr/src/cudnn_samples_v8/mnistCUDNN   #进入例子目录 cudnn_samples_v8需要进行路径/usr/src中查看
sudo make     #编译一下例子
sudo chmod a+x mnistCUDNN # 为可执行文件添加执行权限
./mnistCUDNN # 执行

依次输入如上指令进行验证:

 出现如下结果表示CUDA和cudnn环境变量安装成功:

2.4、安装TensorFlow-GPU

2.4.1、安装pip

sudo apt-get install python3-pip

输入如上命令后等待完成

 完成后对pip进行升级:

sudo pip3 install -U pip testresources setuptools==49.6.0 

 2.4.2、依次安装tensorflow依赖库和python依赖库

# 此处需要按这个TensorFlow到python的依赖库顺序安装
# TensorFlow依赖库
sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran
# python依赖库
sudo pip3 install -U numpy==1.16.1 future==0.18.2 mock==3.0.5 h5py==2.10.0 keras_preprocessing==1.1.1 keras_applications==1.0.8 gast==0.2.2 futures protobuf pybind11

依次输入如上命令进行安装:

 

 2.4.3、安装TensorFlow2.X版本或者1.15.版本

# TF-2.x
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v45 tensorflow
# TF-1.15
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v45 ‘tensorflow<2’

 此处可能长达半个小时到一个小时!!!!!

漫长的等待之后,所有的安装包完成,开始验证TensorFlow是否完整安装:

 出现如下错误:

Illegal instruction (core dumped)

解决方案如下

第一种方案:
可以使用临时添加方法,在运行Python指令前运行:export OPENBLAS_CORETYPE=ARMV8
第二种方案:
将“export OPENBLAS_CORETYPE=ARMV8”加入到“~/.bashrc”中

第一种方案操作如下:

第二种解决方案如下:

sudo gedit ~/.bashrc

 

 输入如上命令在弹出的文件添加如下内容:

export OPENBLAS_CORETYPE=ARMV8

点击右上角保存后按如下命令更新文件:

source ~/.bashrc

验证如下:

 2.5、安装PyTorch和Torchvision

2.5.1、安装PyTorch

# 能科学上网的情况下使用以下命令行
wget https://nvidia.box.com/shared/static/p57jwntv436lfrd78inwl7iml6p13fzh.whl -O torch-1.8.0-cp36-cp36m-linux_aarch64.whl

或者:

在官网提供的路径下,下载自己所需要的PyTorch版本,注意系统能够支撑的PyTorch版本。

 

将文件传入Nano板后在该文件夹下右击打开终端输入以下命令:

pip install torch-1.6.0-cp36-cp36m-linux_aarch64.whl

安装后输入一下程序验证:

import torch
print(torch.__version__)
print('CUDA available: ' + str(torch.cuda.is_available()))
a = torch.cuda.FloatTensor(2).zero_()
print('Tensor a = ' + str(a))
b = torch.randn(2).cuda()
print('Tensor b = ' + str(b))
c = a + b
print('Tensor c = ' + str(c))

接着依次输入以下命令:

sudo apt-get install python3-pip libopenblas-base libopenmpi-dev
# pip3 install Cython
# pip3 install numpy torch-1.8.0-cp36-cp36m-linux_aarch64.whl

安装Torchvision

$ sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
$ git clone --branch  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  
$ python3 setup.py install --user
$ cd ../  # attempting to load torchvision from build dir will result in import error
$ pip install 'pillow<7' # always needed for Python 2.7, not needed torchvision v0.5.0+ with Python 3.6
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
PyTorch v1.8 - torchvision v0.9.0

依次输上命令行获得以下结果:

 

 

 2.6、Jupyter Lab

安装一些依赖

sudo apt install nodejs npm

安装另一些依赖

sudo apt install libffi-dev

安装jupyterLab

pip3 install jupyter jupyterlab

这篇关于Jetson Nano 系统刻录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/775684

相关文章

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作