前言
小伙伴们, 很久不见了,我还是那个喜欢来分享技术和心得的小冷,最近没有更新,原因大概是想给自己放放假,换换心情,前几天,在一个同样是开发者的朋友的提议下,参加了亚马逊 build on 的线下活动,全程大概三个小时左右的时间,完成从浅显了解 物联网IOT 到动手实现视频采集和视频处理的实战跨越,也是对陌生技术领域的开荒和探索,同时也想和大家分享一下参加这类技术线下活动的心得。
Amazon IOT
Amazon 提供物联网 (IoT) 服务和解决方案来连接和管理数十亿台设备。连接、存储和分析工业、家居消费、商业和汽车业工作负载的 IoT 数据。
- 使用最为完备的 IoT 服务套组加速创新,借助 Amazon IoT 不断扩展、快速行动,并节省成本。从安全设备连接到管理、存储和分析,Amazon IoT 能够为您提供广泛而深入的服务,满足您构建完整解决方案之所需。
- 从云端到边缘,确保您 IoT 应用程序的安全,Amazon IoT 服务能够解决您应用程序中每一层遇到的问题,并确保设备安全性。借助预防性机制保护您的设备数据,例如加密和访问权控制,以持续审计和监控您的 Amazon IoT Device Defender 配置。
- 借助高级 AI 和机器学习(ML)整合构建智能 IoT 解决方案,借助高达 25 倍的性能提升以及低于 1/10 的运行时足迹,在云中创建模块并将其部署到设备中。 Amazon 结合人工智能 (AI)、机器学习(ML)和 IoT,力求打造更为智能的设备。
- 便捷可靠地进行扩展,以安全、可靠和弹性的云基础设施构建创新且独特的解决方案,能够将规模扩展至数十亿台设备以及数万亿条消息。Amazon IoT 能够轻松与其他 Amazon 服务集成。
技术拓展图
Rekognition Streaming Video Events 方案
它基于设备检测到监控环境的特定事件,将设备的视频流推送到云上KVS,借助Amazon Rekognition Video按照您期望检测的标签来分析视频中的数据,并将检测结果保存到Amazon S3、发送检测结果到
SNS。
Rekognition Streaming Video Events方案整体架构分为:设备端、Amazon云端、用户应用端。
设备端
通常为带有自动视频检测能力的摄像头设备、通过集成KVS SDK作为KVS的Producer向云端的KVS Stream推送视频流,并按需触发Amazon云端有Rekognition提供的视频检测的API。
Amazon云端
KVS Stream: 提供设备视频持久化存储、视频检索、视频在线查看、视频下载等能力,并向Rekognition提供用于视频检测的数据。
Rekognition: 提供自动执行视频和图像分析的能力,包括基于视频或图像的内容审核、人脸检测、人脸比较、标签检测等完全托管的能力,并且可以方便的与KVS、S3、SNS等服务集成。
Amazon S3: 提供视频检测结果的存储。
Amazon SNS: 完全托管的发布/订阅消息收发、SMS、电子邮件和移动推送通知在本方案中提供通知发送的能力。
实验体验
签到时间是下午一点多,映入眼帘的就是一块开发板和摄像头,亚马逊很贴心的给这次活动派来了六位架构师,保障整个活动的流程和问题解答,
实验一 使用开发版连接摄像头用树莓派系统搭建将视频推送到KVS中
首先是为我们介绍了,开发板的用途,一些发展的道路,以及使用时候的一些要领,
就是这一块板子啦
还有摄像头
第一个实验,相对的要简单一些,根据工作人员的介绍和演示,
- 将摄像头连接到板子
- 烧录树莓派系统
- 下载KVS api
- 配合环境变量
- 推送视频
这个活动 对于我这种没有接触过 IOT的人来说,就是一次陌生到认识的破冰过程,第一次上手体验用开发板和设备对接云端完成数据的推送
实验二 使用Rekognition Streaming Video Events
预置阶段
- step1: 创建S3存储桶和SNS topic,分别用于视频检测结果的存储和扇出。
- step2: 设备注册创建时,创建与之对应的KVS Stream、rekognition stream processor并将stream
processor与step1中S存储桶和SNS topic绑定。
事件处理阶段
- step1: IPC设备检测到事件。
- step2: IPC设备调用KVS Producer SDK的PutMedia API将视频流式传输到KVS stream,同时调用API触发rekognition stream processor对视频数据进行分析。
- step3: Rekognition stream processor根据启动参数包括处理视频的启动与停止条件、处理视频的时间等信息对视频进行分析。
- step4: Rekognition stream processor将视频分析结果自动保存到S3并触发SNS topic。
- step5: 用户通过应用程序检索视频信息或者接收通知继续完成其他的业务流程。
这个实验主要是体验亚马逊云的云端服务的便捷和效率,使用的爱尔兰地区,因为这套解决方案没有完全更新到全部地域。
大致步骤:
- 创建 cloud 9 选择操作系统 ubantu
- 安装库 编译过程 关键 确认磁盘 20g
- 之后打开 cloud 9 下载SDK
- 用KVS创建视频流
- 设置 KVS 环境
- 验证视频 创建 S3桶 全球唯一 建议账号后数字来创建 保持唯一性
- 确认邮件 confim
- 第一个配置json KVS arn 不需要携带id
- 创建角色 IAM SNS S3
- cloud 9 可能需要升级 因为解决方案是基于最新的v2
- 之后的权限 json 需要携带id
- 需要多配制两个json文件,
- 之后选择配置json启动就可以获得结果了
这个实验,我倒是踩坑了,忘记make就直接去执行视频流的步骤了,导致耽误了些时间,错失了第一。
总结
- 第一次参加有关IOT的线下活动,对于一个完全陌生的领域有了一些自己的理解
- 吸收了架构师们的建议和知道
- 感受到了大厂云服务的技术广度和切身实际使用
- 这次活动的文档真的写的非常非常得好,步骤详细,逻辑清晰 非常的好评
非常的期待年底 亚马逊云科技 Build On 下一个线下活动