Jetson nano (4GB B01) 系统安装,官方Demo测试 (目标检测、手势识别)

本文指导如何安装Jetson Nano系统,并通过官方提供的HelloAIWorld demo进行目标检测及手势识别测试。涵盖硬件准备、镜像安装及jetson-inference API使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Jetson nano (4GB B01) 系统安装,官方Demo测试 (目标检测、手势识别)

此文确保你可以正确搭建jetson nano环境,并跑通官方”hello AI world” demo. 核心的步骤都来自一手官方教程,如果访问不了可以使用代理或者把com域名修改为cn域名:

Getting Started With Jetson Nano Developer Kit

注意:官方”hello AI world“ demo 来自jetson-inference这个API仓库,它没有deepstream复杂,但同样基于tensorrt加速,并充分利用了jetson的硬件编解码器。deepstream的安装与使用不在这篇文档中描述。

第一步,硬件准备与安装

参考下表,检查你需要准备的硬件与设备

#名称作用提供方备注
1模组与载板核心部件官方到手后应该已经插在了一起
2风扇散热非官方
3DC电源供电非官方jetson支持两种供电模式:
1) USB
2) DC
尽量使用DC供电,确保可提供5V/4A输出,让jetson工作在高功率状态
4micro-SD (32GB),读卡器镜像烧录/Disk非官方
6跳线帽一个确保DC电源可用-
7USB键盘,鼠标,HDMI或DP线与显示器,网线---
8亚克力外可或官方纸盒---

如果你是从京东或者淘宝购买的jetson nano,那么除了键盘鼠标显示器,厂家基本会给你配齐所有需要的硬件。

参考下图,该怼的硬件怼上去就可以,注意不要插电源,等我们烧好系统SD卡后再插电源。
在这里插入图片描述

继续参考下图,把跳线帽插上,注意要两个针脚都插进去,否则开不了机
在这里插入图片描述

最后成品参考:
在这里插入图片描述

第二步,使用jetpack 安装系统镜像

jetpack 可以简单理解为jetson专用镜像包,使用它安装的操作系统中除了基础的ubuntu系统之外,还包括如下针对AI开发相关的组件:L4T Kernel / BSP,CUDA Toolkit,cuDNN,TensorRT,OpenCV,VisionWorks,Multimedia API’s

ok,开始

  1. 找台电脑,从 https://developer.nvidia.com/jetson-nano-sd-card-image 下载官方镜像 (如果打不开,把com改成cn再试试)

  2. SD卡插入读卡器,然后插到你的电脑上

  3. https://www.sdcard.org/downloads/formatter_4/eula_windows/ 下载SD卡格式化工具,安装并打开,参考下图点击”Format”把SD卡格式化一次
    在这里插入图片描述

  4. https://www.balena.io/etcher下载烧录软件,安装并打开,参考下图选择你刚才下载的镜像包,根据提示,点击Flash将镜像烧录到SD卡(中途如果出现弹窗,全部点击cancel)

在这里插入图片描述

  1. 参考下图,把SD卡插入jetson nano中,接上DC电源,插上鼠标键盘显示器,安装系统(和常规系统安装方式一样,有一步会让你选择”APP partition size“,直接选择最大即可)
    在这里插入图片描述

  2. 看到如下界面就是成功了

在这里插入图片描述

第三步,官方 Hello AI World demo测试

注意: jetpack安装好系统后,尽量不要根据非官方步骤来跑demo,否则你的demo可能由于无法使用nano硬件而跑不出应有的性能,同时你也可能会在基础库版本问题上耗费大量的精力。

这里我们还是根据官方的入门教程,安装jetson-inference并跑官方demo。

1. 根据下面的命令,下载jetson-inference源码,编译并安装

$ sudo apt-get update
$ sudo apt-get install git cmake libpython3-dev python3-numpy
$ git clone --recursive https://github.com/dusty-nv/jetson-inference
$ cd jetson-inference
$ mkdir build
$ cd build
$ cmake ../
$ make -j$(nproc)
$ sudo make install
$ sudo ldconfig

当你执行到上面”cmake …/“ 命令的时候,会弹出如下的界面,这个是让你选择下载官方的预训练模型界面,这里我们不用选择,直接回车下载默认的模型
在这里插入图片描述

下载完成后,又会弹出如下界面让你选择下载pytorch版本,控制方向键到python 3.6 版本,点击空格选择好,然后点击回车开始下载

在这里插入图片描述

好了,等待一会儿jetson-inference以及它需要的组件就全部下载好了,继续执行剩下的命令,完成编译与安装。

jetson-inference安装好后,系统中会安装一下几个支持不同AI模型的程序,使用这些程序并选择支持的预训练模型就可以完成基本的任务,参考如下:

在这里插入图片描述

接下来,通过两个demo来体验一下jetson,一个目标检测,一个实时手势识别

2. 使用 detectnet 和默认模型 SSD-Mobilenet-v2 对图片进行目标检测

进入 /build/aarch64/bin 目录,参考运行下面的命令,注意第一次跑这个模型会等待几分钟来对模型进行优化,耐心等待即可

# C++
$ ./detectnet --network=ssd-mobilenet-v2 images/peds_0.jpg images/test/output.jpg     # --network flag is optional

# Python
$ ./detectnet.py --network=ssd-mobilenet-v2 images/peds_0.jpg images/test/output.jpg  # --network flag is optional

结果:
在这里插入图片描述

除了支持图片,程序也支持对视频或者摄像头进行实时识别,参考下面的命令

$ ./detectnet /usr/share/visionworks/sources/data/pedestrians.mp4 images/test/pedestrians_ssd.mp4  #本地视频
$ ./detectnet csi://0                    # CSI摄像头
$ ./detectnet /dev/video0                # USB摄像头
$ ./detectnet /dev/video0 output.mp4     # USB摄像头保存

同时,我们可以通过修改—network参数来指定使用不同的模型来做目标检测,参考:

在这里插入图片描述

3. 使用 posenet 和 默认网络 实时识别摄像头中的手势

准备一个USB摄像头,插入,参考运行如下命令进行实时手势识别:

# C++
$ ./posenet --network=resnet18-hand /dev/video0

# Python
$ ./posenet.py --network=resnet18-hand /dev/video0

效果:
在这里插入图片描述

4. 使用jetson硬件解码器加速视频解码

对视频进行目标检测的第一步就是解码,jetson强大的地方就是自带硬件编解码器,我们来看demo,运行下面的程序,通过指定—input-codec指定硬解码

detectnet --input-codec=CODEC /usr/share/visionworks/sources/data/cars.mp4

使用jtop命令(参考下一节安装),可以看到硬件解码器已经启动
在这里插入图片描述

运行 detectnet —help 可以查看编解码器的支持情况。

最后,jetson-stats 工具安装

Nvidia官方目前没有系统性能监测工具,我们可以使用 jetson-stats 这个工具包来实时的监控系统的性能以及各项指标,它的官网链接:https://github.com/rbonghi/jetson_stats

运行下面的命令安装:

sudo -H pip3 install -U jetson-stats

如果提示没有pip3则运行如下命令

sudo apt-get install python3-pip

安装完成后reboot你的系统,就可以使用了,直接运行jtop命令

sudo jtop
# 如果无法启动,运行下面命令手动启动服务
# systemctl restart jetson_stats.service

在这里插入图片描述
jetson stats除了jtop工具外,还同安装jetson_config,jetson_release,jetson_swap等工具,具体的含义和使用方式参考官网。

### Jetson Nano手势识别项目源代码 对于Jetson Nano手势识别项目,在GitHub上存在多个开源实现。这些项目通常利用深度学习框架来处理图像数据并执行手势分类。 #### 使用TensorFlow Lite进行手势识别 一个流行的解决方案是采用TensorFlow Lite模型来进行实时手势检测。这类项目会预先训练好模型,然后将其部署到Jetson Nano设备上运行。具体来说,可以找到如下仓库: - **tensorflow/examples/lite/examples/gesture_classification/raspberry_pi**: 虽然此例子是以Raspberry Pi为目标平台开发的,但由于两者都采用了ARM架构,因此经过适当调整后也可以应用于Jetson Nano[^2]。 ```bash git clone https://github.com/tensorflow/examples.git cd examples/lite/examples/gesture_classification/raspberry_pi/ ``` #### 基于MediaPipe的手势追踪与识别 另一个强大的工具链是由Google推出的MediaPipe库,它提供了完整的多模态交互管道支持,包括但不限于手部跟踪功能。有一个专门针对嵌入式系统的分支能够很好地适配Jetson系列硬件: - **google/mediapipe/models/hand_landmark_lite.tflite**: 此轻量级TFLite模型可以在资源受限环境下高效工作,并且已经过优化以便更好地适应移动终端和边缘计算场景需求[^1]。 ```bash pip install mediapipe opencv-python-headless numpy wget https://storage.googleapis.com/mediapipe-models/hand_landmark/hand_landmark_lite/float16/1/hand_landmark_lite.tflite ``` 为了使上述任一手势识别方案能够在Jetson Nano顺利运作,还需要考虑以下几个方面: - 安装必要的依赖项,比如Python环境以及OpenCV等计算机视觉库; - 下载适合ARM v8架构的预编译二进制文件或自行交叉编译所需组件; - 配置合适的电源供应方式以确保稳定性能表现;
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值