Jetson Xavier nx烧录(适用于NVIDIA的板子,烧录ubuntu系统到emmc后进行系统迁移到固态NVME的所有板子)

刷机总流程:

下载sdk-manager,进入烧录系统,进行烧录(不烧录组件),初始化硬盘并创建卷,挂载,迁移系统,设置nvme启动,最后通过指令安装未下载的组件。

注意:nvidia的板子大可分为两种,有emmc内置存储,需要先烧录后迁移如xavier nx,没有内置存储直接烧录在NVMe如orin nx。

一、刷机准备

1,一台装有 Ubuntu18.04 或 20.04 的主机,剩余空间至少40G(不太建议虚拟机,容易识别不到)

注意: Jetpack5.1.3版本,刷机 PC Ubuntu 版本必须是 20.04 的,jetpack5.1.2 及以 下版本,刷机 PC Ubuntu 版本必须是 18.04 的。其中Jetpack5.x.x对应为ubuntu20.04,Jetpack4.x.x对应为ubuntu18.04

2,下载英伟达官方烧录软件sdk-manager(需要注册账号)

    网址:https://developer.nvidia.com/sdk-manager

3,准备显示器,鼠标,键盘

二、系统烧录

1.打开SDK-manager,选择LOGIN进行登录。点击LOGIN之后会跳转到网页登录,检查网络状态,输入在下载SDK时用来注册会员的邮箱,点击Sign in,输入密码,进行登录,注意,在新设备第一次登录时,会进行安全验证,注册邮箱会有验证邮件。

2.进入烧录模式,将NXFC REC引脚和GND引脚短接(第二个和第三个引脚)让NX进入烧写模式(一般来讲保持烧录模式并接入电源的瞬间就开始了,烧写模式,有的板子则不是短接而是需要按住rec按键不松手然后接入电源以进入该模式)连接USB到自己的电脑,接入电源开始系统的烧录。

3选择设备,进入烧录模式成功后,会进行设备的选择如下图, 一般选择不带develop kit,也就是第二个。


4,进行烧录系统的选择如下图,Target Hardware 为设备选择(刚刚选择过了)Host Machine 非必要不勾选,Jetpack版本,一般5.X.X开头为ubuntu20.044.x.x开头为18.04;点击下一步

5.STEP2,选择如下,只选择第一个也就是镜像系统,因为NX默认emmc烧录,emmc大小不足以全部下载,需要现在emmc中烧录后将系统迁移到nvme也就是固态中。然后continue。

会弹出输入该电脑sudo密码,输入后继续就行了

6,下一步后会弹出如下图,选择烧录位置,方法之类的,默认即可,并进行预设nx板子的账号密码,完成后点击flash。(期间可能多次提示板子移除与连接,无所谓等到flash完成就行)

7. 烧录完成,点击FINISH,然后关闭软件。此时就可以将短接线拔掉了,此时给板子接入显示器键盘鼠标,应该就会看到界面,输入账户密码进行登录即可。

三、在板子上对固态,初始化固态,并进行分区挂载。

1,打开ubuntu自带软件disks,可以使用软件搜索

2,选择固态格式化并初始化为GPT格式(都是默认的),点击右上角三个点,一路format下去。

3,点击加号,新建卷,默认就好,next后给它取个名字如:ssd,最后Create创建就行。

4,挂载,点击类似播放按键的三角箭头效果如下:

四、系统迁移,并设置默认nvme启动

1,进入home目录

cd ~

2,下载迁移系统脚本(网络不好下载不了,可以pc下载u盘拷贝过去)

git clone https://github.com/jetsonhacks/rootOnNVMe.git
cd rootOnNVMe

3,将 eMMC 的 rootfs 复制到 SSD 硬盘,执行下面的命令如图 3.1-4,复制的过程比较长,请耐心等待。

sudo ./copy-rootfs-ssd.sh

4,复制完成后,设置启动方式,执行下面的命令,执行命令后在弹出提示后输入系统密码,

sudo ./ setup-service.sh

5,重启 sudo reboot

7,查看系统挂载,/应该挂载在nvme上。
df -h

五、下载系统组件(因为之前只下载了系统)

sudo apt update

sudo apt install nvidia-jetpack

等待时间结束即可!!

### 在 Jetson Xavier NX 设备上通过 eMMC 部署 YOLOv5 模型 #### 准备工作 为了在 Jetson Xavier NXeMMC 上成功部署 YOLOv5 模型,需要确保设备已正确设置并具备必要的开发环境。Jetson Xavier NX 支持所有热门 AI 框架,并具有高达 21 TOPS 加速计算能力,能够并行运行现代神经网络并处理来自多个高分辨率传感器的数据[^1]。 #### 安装依赖库和工具链 首先,在 Jetson Xavier NX 上安装所需的 Python 库和其他依赖项。这可以通过更新包管理器并安装特定版本的 PyTorch 和 torchvision 来完成,这些库对于加载预训练模型至关重要。此外,还需要安装 OpenCV 等图像处理库来辅助检测任务。 ```bash sudo apt-get update && sudo apt-get upgrade -y pip3 install torch==1.7.0+cu110 torchvision==0.8.1+cu110 torchaudio===0.7.0 -f https://download.pytorch.org/whl/torch_stable.html pip3 install opencv-python numpy matplotlib Pillow scikit-image ``` #### 下载 YOLOv5 源码及权重文件 获取官方发布的 YOLOv5 GitHub 仓库中的最新源代码,并下载对应的预训练权重文件。此操作可以直接克隆远程存储库或者手动上传本地保存好的 .pt 文件至目标机器。 ```bash git clone https://github.com/ultralytics/yolov5.git cd yolov5/ wget https://github.com/ultralytics/yolov5/releases/download/v6.0/yolov5s.pt ``` #### 修改配置适应硬件特性 考虑到 Jetson Xavier NX 特有的架构特点以及性能优化需求,建议调整部分参数以更好地适配该平台。例如,降低 batch size 或者启用 TensorRT 进行推理加速等措施均有助于提高效率。 编辑 `detect.py` 中的相关选项: ```python import torch from models.experimental import attempt_load from utils.general import non_max_suppression, scale_coords from utils.torch_utils import select_device weights = 'path/to/best.pt' # 替换成实际路径 imgsz = (640, 640) device = select_device('') # 使用默认 GPU/CPU 自动选择 half = device.type != 'cpu' model = attempt_load(weights, map_location=device) # 载入模型 if half: model.half() # 半精度浮点数转换 ``` #### 执行检测命令 最后一步是在终端执行检测脚本,验证整个过程是否顺利无误。如果一切正常,则可以在 Jetson Xavier NX 上看到实时物体识别的结果展示出来。 ```bash python3 detect.py --source 0 --weights ./yolov5s.pt --conf-thres 0.4 --iou-thres 0.5 ``` 上述方法适用于大多数情况下的标准部署流程;然而针对某些特殊应用场景可能还需进一步定制化改造。值得注意的是,尽管 eMMC 存储空间有限,但对于常规规模的应用来说通常足够满足需求[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值