Jeston nano开发版初探(二)

文章目录

        • TensorRT
          • 产生背景
          • 作用
        • Jetson inference学习
          • 介绍
          • 下载安装Jetson inference
          • 图片分类(ImageNet)
            • 使用Jetson上的控制台程序
          • 图片分类(ImageNet)

TensorRT

参考博文:TensorRT安装及使用教程
【转载】TensorRT 系列之入门篇

产生背景

深度学习模型在部署时,往往需要降低成本而部署到嵌入式平台(如Jeston)上,部署端的设备性能不一,对模型运行速度不同,可能会达不到要求。因此需要改造优化现有模型,提出轻量级的模型,重新部署。NVDIA本着让大家能更好地利用GPU,使其在做深度学习训练的时候达到更好的效果的目标,推出了支持高性能深度学习支持引擎——TensorRT。

作用
  • TensorRT 是对训练好的模型进行优化。TensorRT就只是推理优化器,当你的网络训练完之后,可以将训练模型文件直接丢进TensorRT中,而不再需要依赖深度学习框架(Caffe,TensorFlow等)。
  • TensorRT是一个只有前向传播的深度学习框架,这个框架可以将 Caffe,TensorFlow的网络模型解析,然后与TensorRT中对应的层进行一一映射,把其他框架的模型统一全部 转换到TensorRT中,然后在TensorRT中可以针对NVIDIA自家GPU实施优化策略,并进行部署加速。
    Jeston nano开发版初探(二)_第1张图片
    Jeston nano开发版初探(二)_第2张图片

Jetson inference学习

官方教程链接:jetson-inference

介绍

该教程是使用Jetson开发板来推理和实时使用深度学习视觉模型的指南。采用TensorRT将神经网络部署到嵌入式Jetson平台上,使用图优化、内核融合和FP16/INT8精度提高性能和能耗效率。该教程包括图像识别的imageNet,对象定位的detectNet和语义分割的segNet,并且继承自共享的tensorNet对象。同时提供了从实时摄像机提要和图像处理流媒体的示例。

下载安装Jetson inference

参考博文:玩转Jetson Nano(四)跑通jetson-inference

图片分类(ImageNet)
使用Jetson上的控制台程序
  • 进入到aarch64/bin目录下
cd jetson-inference/build/aarch64/bin
  • 使用imagenet-console命令运行模型,且有三个命令参数需要设置:
    • 输入图片的路径(jpg, png, tga, bmp)。
    • 输出图片的路径(jpg, png, tga, bmp)。
    • 选项–network:可以使用该选项替换分类使用的模型,默认为GoogleNet。使用方式为在network后添加当前路径下存在的模型名称。
//C++
./imagenet-console --network=googlenet orange_0.jpg output_0.jpg  # --network flag is optional
//Python
./imagenet-console.py --network=googlenet orange_0.jpg output_0.jpg  # --network flag is optional
  • 注意:第一次运行程序时,TensorRT可能需要几分钟的时间来优化网络。这个优化后的网络文件在第一次运行后缓存到磁盘,因此以后的运行将加载得更快。
  • 第一次下载默认下载GoogleNet and ResNet-18模型,但可以自己下载其他提供好的模型。方法运行如下命令:
cd jetson-inference/tools 
./download-models.sh 
图片分类(ImageNet)

你可能感兴趣的:(嵌入式开发,Jeston开发版探索学习)