电子说
使用闭路电视 (CCTV),人类可以监控入侵区域,但通常在事后使用此数据来验证事件或进行历史分析。鉴于部署的摄像头数量众多,不可能每个摄像头都安排一个人来监控该区域。通常,单个安全代理会实时监控大量摄像头画面。
深度学习可以解决这个问题,它不仅可以自动检测人是否进入相机视野,还可以指示此人是否在该视野的特定区域内。如果有人违反限制区域,这允许通过实时通知监视多个限制区域。在这个英特尔® OpenVINO™ 工具包示例中,我们将了解如何使用视频图像来识别人员是否进入了用户指定的限制区域。
禁区监控数据管道
在之前的博客文章中,我们看到了使用摄像机捕获的图像进行人脸和车辆检测的示例。在此应用程序中,我们将研究一种不同类型的检测,使用深度学习来识别“人”以及他们是否在禁区内。
图 1 显示了 Restricted Zone Monitor 深度学习应用程序的管道。让我们探索这个管道和发生的活动。
图1:限制区跟踪管道图说明了 OpenVINO ™工具包的此应用程序如何处理捕获的图像以识别是否有人进入某个区域并确定该区域是否在用户定义的限制区内。(来源:作者)
此图像处理应用程序使用安装在包含禁区的区域上方的摄像机捕获的图像。卷积神经网络 (CNN)——一种图像处理深度神经网络——处理捕获的图像以确定一个人是否违反了禁区。首先,CNN 识别一个人是否在捕获帧中。如果检测到有人,CNN 会检查此人是否在禁区内。用户可以使用捕获的图像和鼠标来定义限制区域,以在图像中创建一个平面。定义后,如果检测到人员进入限制区域,应用程序将生成通知。
图 2显示了这个深度神经网络的完整过程的示例。请注意,在这个例子中,CNN 在不到半秒的时间内识别出了这个人,并且还确定检测到的人不在禁区内。
图 2:限制区监视器输出屏幕显示了 OpenVINO ™工具包的此应用程序的示例,用于识别人员并确定该人员不在限制区内。(来源:英特尔)
示例应用程序还说明了消息队列遥测传输 (MQTT) 协议的使用,该协议将区域信息传送到工业数据分析系统。
为什么这很酷
Restricted Zone Monitor 应用程序是使用 Intel ® OpenVINO™ 发行版和约 450 行 Go(或 400 行 C++)开发的。传统的视频监控需要一个人观看多个监视器,这既乏味又容易出错。将人员从这种监控角色中移除可以降低犯错的可能性,并有助于确保工作场所的合规性。考虑到这些错误可能会导致危及生命的伤害,这是一项很酷的技术。与功能强大的硬件配对时,例如基于第 6代英特尔®酷睿™处理器或英特尔神经计算棒 2 的硬件由 Intel Movidius™ X VPU 提供支持,可以获得令人印象深刻的推理速度,从而实现实时分析。
改编这个例子
边界安全是这项技术的一个明显用例。作为物理安全过程的一部分,检测一个区域内或周围的人是有用的,但该技术可以以其他方式应用。这个深度学习网络经过预训练可以检测人,但也可以训练它来检测动物。例如,是否有一只熊或其他野生动物游荡到郊区可能造成伤害?
检测城市中的人也很有用——尤其是在行人和交通流量方面。人行横道可以检测到一个人何时等待过马路,但在繁忙的道路上为一个人停下来可能不如为一大群人停下来有益。应用人员检测来管理车辆和行人的流量可以确保最佳的人流。
在哪里了解更多
您可以在英特尔®物联网开发套件GitHub 上了解有关此演示的更多信息。
胶水应用程序是用 C++ 和 Go 语言开发的。该发行版包括针对 OpenVINO ™的英特尔®优化车辆和行人检测模型。您可以使用 Ubuntu 16.04 LTS Linux 操作系统、英特尔® OpenVINO ™工具包分发版和 OpenCL ™运行时包轻松试验此应用程序。
您还可以使用 AIoT 开发套件快速启动您的开发,其中包括 Ubuntu、OpenVINO ™、英特尔® Media SDK 和预装英特尔®酷睿™处理器的英特尔® System Studio 2018。开发工具包包括帮助您快速入门和运行的教程。
您还可以使用基于 Intel ® Apollo Lake ™平台的AAEON UP 板。
M. Tim Jones 是一位资深的嵌入式固件架构师,拥有超过 30 年的架构和开发经验。Tim 是多本书籍和多篇文章的作者,涉及软件和固件开发领域。他的工程背景从地球同步航天器的内核开发到嵌入式系统架构和协议开发。
全部0条评论
快来发表一下你的评论吧 !