使用卷积神经网络分析实时 CCTV 图像  

使用深度学习算法检测对象的移动情况,并识别视频中的对象

Description

在本 Code Pattern 中,我们将部署一个借助神经网络模型使用 OpenCV 和 Darknet 来分析实时流传输协议 (RTSP) 视频流的应用程序。

概览

虽然安装了许多监控摄像头,但是操作员根本不可能一整天都在密切监视这些摄像头。由于事件很可能是在操作员未监视时发生的,因此,即使录制了许多重大事件,人们也依然不曾察觉。不要指望用户去观看长达 N 小时的视频片段,尤其是在他们并不确定自己要查找什么的情况下。

本项目旨在通过使用深度学习算法检测对象的移动情况,并识别视频中的对象来缓解此问题。这些算法可应用于实时流和先前录制的视频。分析每帧视频后,标记的屏幕快照和对应的元数据还会上传到 Cloudant® 数据库。操作员由此可调用复杂查询,并对收集到的数据运行分析。本文演示了包括选择在上周一 3 号摄像头中检测到某个人的所有截屏,或者获取上周六检测到的车辆总数。

完成本 Code Pattern 后,您将掌握如何:

  • 通过 Python 和 OpenCV 连接到 RTSP 视频流
  • 使用 OpenCV 和 NumPy 处理视频帧,并确定何时发生了重要的运动
  • 使用预先构建的深度学习模型识别照片或视频中的对象

  1. 将运动检测脚本连接到 RTSP 流或视频文件
  2. 如果检测到运动,就捕获截屏,并转发到本地托管或 IBM Cloud 容器服务托管的 Node.js 服务器
  3. 使用 Darknet/YOLO 对象检测算法分析截屏
  4. 将标记的截屏和关联的元数据(时间、摄像头通道)上传到 Cloudant 数据库

Instructions

可参阅 README 中的详细操作说明。

相关博客

相关链接

英文原文

本 Code Pattern 翻译自:Analyze real-time CCTV images with Convolutional Neural Networks(2018-12-14)

卷积神经网络

研究卷积神经网络 (CNN),了解如何使用 Python 实现一个对手写数字进行分类的简单网络。