|Open WebRTC Toolkit实时视频分析系统( 二 )
面向WebRTC的英特尔协同开发套件 , 从2014年发布第一个版本到现在已经是4.3.1版本 , 随着时间版本不断在演进 , 2019年进行了开源 , 开源后成为OWT(Open WebRTC Toolkit) , 在Github地址https://github.com/open-webrtc-toolkit/owt-server 。
本文插图
如图是OWT的整体框架 , OWT不仅向服务器端提供了非常丰富的功能 ,也实现了大范围的客户端支持 , 保证各种流的接入 。 在服务器端有Streaming、Conferencing、Transcoding、Analytics四大功能 , 都是在视频端常用的功能 。
客户端支持JavaScript、Android、IOS、Windows、Linux系统 , 保证用户的流可以通过不同的传输协议 , 例如WebRTC协议、RTSP协议、RTMP、HLS、SIP协议 , 传统领域应用的传输协议都可以将流接入OWT系统 , 进行分析 , 再传输 。
同时OWT系统演进很长时间 , 在可扩展性、分布式部署、还有高可用方面也做了很多工作 , 产品正在向更完善的方向发展 。 OWT兼容英特尔的多个平台 , 让实时分析任务能充分运用硬件资源 , 从而大大系统提升性能 。
本文插图
关于视频分析架构 , 如图OWT分为四个大模块 , 通过接入节点将客户的流接入系统 , 传输到分析模块 , 再通过GStreamer pipeline进行视频解码 , 前处理、推理以及后处理 , 再编码、推流 , 返回给扩散节点 , 通过扩散节点返回客户端 , 在客户端实时显示 。
OWT系统支持英特尔的VCAC-A卡 , Movidus VPU以及英特尔各个产品系列 。
本文插图
对使用者来讲 , 想要通过接口接入流进行分析是一件比较简单的事情 。 例如IP摄像流通过RTSP 协议接入系统 , 若用户想要分析该流 , 如人脸检测、或算法分析等 , 需要在客户端发送简单的Restful请求指定分析哪一路流 。
Management api收到消息之后传递给Conference agent进行Session 管理 , 通知分析模块 , 在分析模块进行初始化动作 。 初始化完成后返回Session控制 , 通知IP摄像的流接入节点与Analytics建立连接 。 此时 , Streaming agent将流发送给Analytics agent , 进行各种算法的分析 。 若用户希望在浏览器中看到流的分析结果 , 此时可以将分析后的流扩散给WebRTC节点 , 再传输给浏览器等待的用户 。
若用户想要对流进行录像 , 可以将分析后的流扩散给Recordign agent , 在用户端将分析后的流进行录制 。 另外 , 若用户想要将分析好的数据上传到云端 , 也可以进行导入插件再进行相应操作 。
同时 , 在图中我们可以看到 , 分析过程是与OWT整套方案协同工作 , OWT提供很多控制的API , 例如分析、录像、sip calls、从不同的协议接入 , 如果想要将分析好的流推给RTMP服务器 , 方案也配有Streaming OUT接口进行推送 , 也有针对混合流、暂停/继续播放流等操作 。
本文插图
当一路流从其它节点传送到Analytics分析节点后 , 再送入Gstreamer pipeline中 , 在pipeline中进行一些操作 。 例如经过H.264 parse解析 , 解析后解码 , 通过videorate针对相应场景的丢帧处理 , 再传入推理模块 , 进行推理过程 。 例如:检测、分类等处理 , 进行编码 , 通过appsink传给输出节点 。
图中解码过程没有明确表明具体使用哪个API , 这些是用户可以自己进行选择的 ,GStreamer pipeline中有很多丰富的解码接口 , 例如CPU或GPU解码 , 大大的提升了解码效率 。 推理部分在GitHub上有gst-video-analytics提供的检测 , 分类等插件 , 使用CPU或VPU进行推理 , 可以更充分的利用系统的资源 。
推荐阅读
- AI人工智能|OpenAI新模型曝光:给它半张图片,能够猜测补全
- DeepTech深科技|OpenAI新模型曝光:给它半张图片,能够猜测补全
- CSDN|OpenInfra Days China 2020 官网正式上线,含免费注册通道!
- |Avaya Open SIP智能终端,您智慧沟通的不二之选
- 技术编程|openSUSE Leap 15.2 发布:重点关注容器、AI 和加密
- 电脑使用技巧|SteamVR 1.13版更新:快速重新定向,初步支持OpenXR
- 中年|了解常见的计算机视觉设计OpenCV功能及其应用
- 环球网|华为正式宣布开源数据虚拟化引擎openLooKeng
- 暴走通信|LG Uplus荣登韩国5G速度榜首
- cnBeta|微软携手哈佛推出主打差分隐私的OpenDP开源平台
