jetson-nano学习笔记

jetson-nano学习笔记

编程文章jaq1232025-06-07 15:54:293A+A-

在 NVIDIA Jetson 运行 PoseNet 姿态识别

项目地址:
https://github.com/dusty-nv/jetson-inference/blob/master/docs/posenet.md

本教程使用平台:Jetson Nano, Jetpack 4.6

安装 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 ../

在这个步骤会执行 jetson-inference/tools 下的 download-models.shinstall-pythrch.sh 两个脚本,分别为这个项目执行以下两个动作:

  1. download-models.sh
  2. 在此可以下载实验所需要的神经网络的结构文件、预训练模型等数据,包括图像分类、物件检测、语义分割等不同应用的材料。由于这些神经网络与预训练模型文件,全部存放在国外的网站上,在国内直接下载会需要耗费相当多的时间。
  3. 在此列表中找到 "Pose Estimation - all models" ,按空格键勾选,然后回车进行安装。
  4. install-pythrch.sh
  5. 此脚本将会安装 pytorch 训练框架,因为本教程不涉及训练部分,所以可以不勾选直接回车跳过安装。如果后续需要,可以手动执行此脚本。

继续执行以下命令完成安装

$ make -j$(nproc)
$ sudo make install
$ sudo ldconfig

使用 PoseNet

导航到示例目录

cd jetson-inference/python/examples

PoseNet 有以下预训练模型,这在先前的步骤中已经安装好了。

模型

CLI参数

Pose-ResNet18-Body

resnet18-body

Pose-ResNet18-Hand

resnet18-hand

Pose-DenseNet121-Body

densenet121-body

我们可以使用 --network 参数来指定使用的模型,如果未指定使用哪个模型,默认会使用 Pose-ResNet18-Body 。

使用视频源

posenet.py 可以通过传入视频文件的路径来进行检测。

$ ./posenet.py [输入路径]

# 例
$ ./posenet.py /home/nvidia/example_video/202202102358.mp4

导出检测视频。添加 --headless 参数可以设置不显示,以提高性能。

$ ./posenet.py [输入路径] [输出路径] --headless

# 例
$ ./posenet.py /home/nvidia/example_video/202202102358.mp4 /home/nvidia/densenet121-example.mp4 --network=densenet121-body --headless 

从摄像头进行检测

$ ./posenet.py --network=resnet18-hand /dev/video0   #csi://0 如果使用 CSI 摄像头

从摄像头进行检测:./posenet --network=resnet18-body csi://0;

2.jetson nano 安装jupyter lab详细教程

1.安装依赖环境,jupyter lab安装前先安装依赖库:

输入命令:

【1】sudo apt-get update;

【2】sudo apt install nodejs npm

但安装过程中,会出现如下错误:E: Unable to correct problems, you have held broken packages

修改方法:安装aptitude, 然后安装相关依赖库:

【1】sudo apt-get install aptitude

【2】sudo aptitude install nodejs npm;

2.安装jupyterlab

输入指令:sudo pip3 install jupyter jupyterlab

但jetson nano可能会报出版本不对的问题,

修改方法,直接安装对应的版本:

输入指令:pip install jupyterlab==(版本号);

还可能用到的指令:

更新jupyterlab指令:pip3 install --update jupyterlab;

查看jupyter版本:jupyter --version

删除jupyterlab:sudo pip3 uninstall jupyterlab

3.配置就朋友terlab

jupyter lab --generate-config

设置进入notebook的密码(这里会要设置两次,第二次为确认输入的密码):


jupyter notebook password

当第一次登录使用notebook时需要输入你在这里设置的密码才能进入,请务必记住的当前设置的密码!

设置开机自启动jupterlab,create_jupyter_service.py文件在环境配置的附件文件里面

运行create_jupyter_service.py文件产生jupyter_service.service文件

python3 create_jupyter_service.py

然后将产生的该服务文件移动至系统服务

sudo mv nano_jupyter.service /etc/systemd/system/nano_jupyter.servicebr
#使能该服务
sudo systemctl enable nano_jupyter.servicebr
# 手动开启该服务
sudo systemctl start nano_jupyter.service

下面部分也需要配置:

配置

安装完成后,JupyterLab默认只能是localhost访问,为了保证可以通过网络访问JupyterLab,需要对它进行一些配置,执行以下命令,并修改配置文件
~/.jupyter/jupyter_lab_config.py中关于限制IP地址的配置项c.ServerApp.ip = ‘*’,以便可以通过网络访问。

执行以下命令创建配置文件,并编辑配置文件中的配置项。

jupyter lab --generate-config

vi ~/.jupyter/jupyter_lab_config.py

编辑配置项。



启动

配置完成以后,可以执行以下命令来启动JupyterLab。

jupyter lab

点击这里复制本文地址 以上内容由jaq123整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

苍茫编程网 © All Rights Reserved.  蜀ICP备2024111239号-21