![2bbe100c8465268dfdb2b79aa35e3557.png](https://img-blog.csdnimg.cn/img_convert/2bbe100c8465268dfdb2b79aa35e3557.png)
一、回顾
上一章我们通过Amazon SageMaker完成了边缘智能中的图像标注,模型训练和优化,最终将图像分类的SageMaker Neo模型导出到S3存储桶中。也就是我们完成了下图右下角阴影部分的内容。
本章重点分为两大部分:
- 设备端,主要包含:安装Jetson nano的镜像、SageMaker Neo runtime、Greengrass的部署、运行模型。
- 云端,主要包含:配置IoT core与Greengrass、开发与部署Lambda函数、model到设备端。
![20a28250f9885a476a985def2db534c8.png](https://img-blog.csdnimg.cn/img_convert/20a28250f9885a476a985def2db534c8.png)
AWS EI image classification
二、Jetson Nano的镜像烧录
使用官方推荐的Etcher烧录镜像,不同的操作系统对应不同的操作方法,所以不再详细介绍,可以参考https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write,烧写成功后是如下图所示的基于aarch64-linux。
![52230d4bf88e542d9dc3c332c650aadd.png](https://img-blog.csdnimg.cn/img_convert/52230d4bf88e542d9dc3c332c650aadd.png)
另外在使用CSI接口的摄像头时排线不要插反,并测试摄像头。
$ gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM),width=3820, height=2464, framerate=21/1, format=NV12' ! nvvidconv flip-method=0 ! 'video/x-raw,width=960, height=616' ! nvvidconv ! nvegltransform ! nveglglessink -e
可以顺利打开摄像头。代码的含义是使用GStreamer打开一个3820像素宽、2464像素高的相机stream,并在一个960像素宽、616像素高的窗口中显示它。
![658614bd7157c89d22051c4b9d904af6.png](https://img-blog.csdnimg.cn/img_convert/658614bd7157c89d22051c4b9d904af6.png)
三、使用AWS IoT Greengrass部署模型到Jetson Nano
这个步骤我们做如下的事情:
- 3.1 安装SageMaker Neo runtime
- 3.2 安装AWS IoT Greengrass
- 3.3 配置和部署AWS Lambda
- 3.4 设置机器学习模型部署环境
- 3.5 部署机器学习模型Sagemaker Neo到边缘
- 3.6 启动模型并测试