目录
- 四、云视频监控技术
- (一)cVideo云视频监控系统
- (二)cVideo智能分析系统
- (三)cVideo云转码系统
四、云视频监控技术
随着云计算技术的飞速发展,许多传统行业纷纷向“云”上靠拢,视频监控行业就是其中之一。将分布式云计算的灵活性、稳定性、性价比应用于庞大的监控行业,势必实现这一传统行业的巨大飞跃。
(一)cVideo云视频监控系统
1. 系统架构
cVideo云视频主要由7个模块组成:前端设备、接入服务器、处理服务器集群、存储服务器集群、流媒体服务器、中心服务器和客户端。
2. 网络架构
如图简要描述了cVideo云视频监控系统的系统数据流。其中支持RTSP标准协议的网络摄像机等前端设备,可以直接接入cVideo综合处理云平台中;模拟摄像头经过编码器编码后接入到平台中;其他平台或前端设备可以经过SDK整合后接入。经过接入服务器后,进入云处理集群进行数据处理,实现对实时视频流的内容识别、转码、智能分析等功能,并经过转发服务器以流媒体的形式对外提供服务。对于经过cVideo处理后流出的视频数据,如果是终端设备(手机、IPAD等)需求,则直接由cVideo的转发服务器发送转码后的视频流;如果是上电视墙显示的需求,将视频流推送给解码器进行解码上墙。
3. 关键技术
1)基于分布式网络设计,支持多点超远距离实时高清视频监控
cVideo采用DDNS和NAT等技术,通过互联网可以将地理位置上分布距离很远的多个地点的监控前端(即摄像机)接入当前的监控系统中,以满足远距离实时监控多个地点的需求。同时,人性化的设计提供友善的操作界面。
2)支持大规模、多层级的监控系统
cVideo基于高可扩展性、高可靠性的架构设计,使其能够支持不同规模、不同层级的系统。通过用户权限管理、中心服务器管理、通信加密等措施提高系统的安全性;通过基于云的转码服务器集群,使其能够支持多路、动态分辨率的超大规模实时高清视频监控,并且使系统具有优异的可扩展性,以满足不同规模的需求。
3)支持海量视频数据备份
cVideo采用云存储技术,支持海量视频数据存储。可靠的冗余技术保证数据记录的可靠性。根据监控系统规模和所需要保存的视频数据记录的时长,配置存储容量,并通过热插拔技术支持动态扩展,理论上支持无限长时间的视频备份。
4)采用先进的视频内容智能分析技术
cVideo采用国际先进的视频内容分析技术,通过将场景中背景和前景目标分离,进而探测、提取、跟踪在场景内出现的目标并进行行为识别。通过对视频的内容描述及规则匹配,计算机系统如同人类有了眼睛和大脑,可以脱离人为干预而实现“独立自主”, “代替”人进行监控,即视频分析,这样,大量的、枯燥的、“死盯”屏幕的任务便交给了服务器的算法程序,值班人员解脱出来之后,可以将重心放在视频分析系统报警触发后的事件审核工作上。
(二)cVideo智能分析系统
cVideo的智能分析系统构架于云调度和云处理架构之上,采用国际先进的图像处理技术,并结合模式识别技术对已有的海量视频进行事件检索。
1. 特定人物视频检索
以人搜人功能是基于视频智能分析技术的一项重要应用,可以自动检测出监控视频中的目标人物并进行跟踪。
以人搜人功能适用于各种场合的指定目标检测与跟踪,例如重要区域可疑人物跟踪等。
2. 区域入侵检测
运动目标检测的基础上延伸出来的一种检测报警应用功能,可以自动检测出监控视频中的预设防区内所出现的运动目标,如果检测到的运动目标及其行为符合预先设定的警戒条件,则自动进行抓拍、录像以及报警等关联性动作。
3. 车流量统计
车流量统计是在视频智能分析技术——运动目标检测的基础上延伸出来的,采用“虚拟线圈”的方式自动检测出监控视频中所出现的车辆,并统计相应车道上的车辆进出数量。
4. 火焰检测
火焰检测功能可以自动对视频图像信息进行分析判断,及时发现监控区域内的火灾苗头,以最快、最佳的方式进行告警和提供有用信息,能有效地协助消防人员处理火灾危机。
(三)cVideo云转码系统
1. 系统简介
视频转码是一种将已压缩的视频数据丛一种格式转换为另一种格式的技术,视频的编码格式主要有MPEG、H264、DivX、WMA、RM等,封装格式主要有AVI、PS、 TS、MOV、MKV、MPG等,而不同的播放器对格式的支持也不同,因此不同终端对视频流格式也有着特殊的需求。
同时,视频转码是一个高运算负荷的过程,需要对输入的视频流进行全解码、视频过滤/图像理,并且对输出格式进行全编码。最简单的转码过程仅仅涉及解码一个比特流和用不同的编解码器重新编码两个步骤。这种硬转码看似很简单,只需要一个解码器和一个编码器,但是最终显示结果并不理想,因为视频数据解码后重新编码会降低画质。
由于视频转码计算量很大,单一的计算机不可能实现整个监控系统内的摄像头实时视频数据的转码。cVideo云端转码技术将视频转码计算放到云端,实现整个系统内的实时视频转码,以满足用户对不同分辨率、不同码流、不同终端的使用需求。cVideo云转码系统、能对现有视频文件按需进行分布式转码,实现不同格式、分辨率等参数的转换,并将转好的文件进行存储。
2. 逻辑架构
图为简化的cVideo云转码平台逻辑图,其核心内容是对各类视频文件的高效转码。基于云计算的模式,采取海量分布式JobKeeper云调度架构,以Web Services形式共同对外服务。实现云端转码、动态伸缩、监控管理等需求。最后将转码好的视频文件保存于cStor存储服务器中,并给用户提供对应接口方便调用。
(1)资源层:存储于cstor云存储系统中的视频数据。
(2)数据存储层:即cStor云存储系统,提供海量的存储空间,以备历史数据的回看与处理。
(3)数据处理层:即cVideoCodec云转码模块,由中心调度服务器(JobKeeper)调用,进行视频的转码等。
(4)API层:提供API接口,实现上层应用对底层资源的透明操作,提供业务应用的开发支持。
(5)调度控制层:实现对以上各层的综合调度与控制,以实现整套系统机制。
(6)应用层:主要包括调阅查询、内容识别等视频相关应用,可自己设计友善的界面、人性化的操作方式等。
3. 系统架构
如图简要描述了cVideo的云端转码系统架构。用户可以将需要转码的任意格式、任意分辨率的视频文件存储到cStor存储服务器中,然后通过客户端的Web操作页面,根据需求提交转码请求,根据源文件的大小和时间轴长度拆分转码任务,通过JobKeeper云调度系统,自动负载均衡,将其分发到相应的处理节点,待分布式的转码完成后,再进行中间结果文件的合并与时间轴重构,并将最终视频文件存放在cStor 的指定位置。这些视频文件经过索引建立一一对应关系,在cVideo云转码集群中进行数据处理,实现对视频文件的高效转码,并将结果保存在cStor存储服务器中。
(1)中心调度服务器:负责获取用户从客户端或其他上层系统发出的指令,使用JobKeeper综合调度各个系统集群,实现整套cVideo的控制机制,并通过WebService技术,将相关信息返回给客户端。
(2)cStor存储服务器:用以长期存储视频数据,以备调阅及重新处理等需求。
(3)cVideoCodec云端转码:视频文件的云端转码处理。
(4)客户端:客户端与中心调度服务器通过WebService技术连接,实现Client和Server之间交互。