一种视频数据的处理方法、装置及系统与流程

文档序号:11879241阅读:228来源:国知局
一种视频数据的处理方法、装置及系统与流程

本发明属于通信技术领域,尤其涉及一种视频数据的处理方法、装置及系统。



背景技术:

随着无线通信技术的迅速发展,集群系统不仅可以提供语音、短距离数据通信等功能,还可以提供视频图像业务,从而为用户提供更直观、丰富的多媒体信息服务。

目前,视频数据的集群系统由多个服务器组成,用于对视频数据进行分布式存储与处理,具体而言,将需要处理的视频数据预先存储在服务器中,然后调用集群,进行特定任务的分布式处理。但是由于一套集群系统只能完成单一的视频数据处理,要完成不同的处理任务需要修改集群的程序代码,因此导致视频数据处理的灵活性及效率较低,并且资源利用较为低效。



技术实现要素:

本发明的目的在于提供一种视频数据的处理方法、装置及系统,旨在提高视频数据处理的灵活性以及效率,高效利用资源。

为解决上述技术问题,本发明实施例提供以下技术方案:

一种视频数据的处理方法,其中包括:

接收任务处理请求,所述任务处理请求用于对视频数据进行处理;

根据所述任务处理请求,获取需要处理的视频数据;

基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;

控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理。

为解决上述技术问题,本发明实施例还提供以下技术方案:

一种视频数据的处理装置,其中包括:

接收单元,用于接收任务处理请求,所述任务处理请求用于对视频数据进行处理;

获取单元,用于根据所述任务处理请求,获取需要处理的视频数据;

分发单元,用于基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;

控制单元,用于控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理。

相对于现有技术,本实施例,首先接收任务处理请求,并根据所述任务处理请求,获取需要处理的视频数据;然后基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制任务处理节点调用预设的读写接口,并通过所述预设的读写接口对所述视频数据进行相应处理;即本实施例一方面先通过任务分配策略将视频数据进行合理分发,另一方面没有限定任务的类型,而是提供特定的读写接口将不同的任务进行接入及处理,相对于只能完成单一的视频数据处理的方式,大大提高视频数据处理的灵活性以及效率,且高效利用资源。

附图说明

下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其它有益效果显而易见。

图1a是本发明实施例提供的视频数据的处理系统的场景示意图;

图1b是本发明实施例提供的视频数据的处理方法的流程示意图;

图2a为本发明实施例提供的视频数据的处理系统的结构示意图;

图2b是本发明实施例提供的视频数据的处理方法的另一流程示意图;

图3a为本发明实施例提供的视频数据的处理装置的结构示意图;

图3b为本发明实施例提供的视频数据的处理装置的另一结构示意图;

图4为本发明实施例提供的服务器的结构示意图。

具体实施方式

请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。

在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。

本文所使用的术语「模块」可看做为在该运算系统上执行的软件对象。本文所述的不同组件、模块、引擎及服务可看做为在该运算系统上的实施对象。而本文所述的装置及方法优选的以软件的方式进行实施,当然也可在硬件上进行实施,均在本发明保护范围之内。

本发明实施例提供一种视频数据的处理方法、装置和系统。

参见图1a,该图为本发明实施例所提供的视频数据的处理系统的场景示意图,其中该视频数据的处理系统可认为视频数据的集群系统,可以包括视频数据的处理装置,该视频数据的处理装置可以集成在服务器中,如任务调度服务器,主要用于接收任务处理请求,其中该任务处理请求用于对视频数据进行处理,如接收客户端发送的任务处理请求;然后,根据所述任务处理请求,获取需要处理的视频数据;基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;最后,控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理,如人脸检测、人脸识别等等。

此外,比如,图1a所示,该视频数据的处理系统还可以包括分布式存储服务器集群、与分布式存储服务器集群相连接的分布式处理服务器集群,其中该分布式存储服务器集群可以包括多个存储服务器,主要用于接收物联平台发送的视频数据,并存储所述视频数据;所述分布式处理服务器集群可以包括多个处理服务器,主要用于从分布式存储服务器集群中获取需要处理的视频数据,并基于所述任务调度服务器的调度结果,调用预设的读写接口对视频数据进行相应处理。当然,该视频数据的处理系统还可以包括物联平台,用于采集视频数据,并将所述视频数据推送至分布式存储服务器集群。

以下将分别进行详细说明。

在本实施例中,将从视频数据的处理装置的角度进行描述,该视频数据的处理装置具体可以集成在服务器或网关等网络设备中。

一种视频数据的处理方法,包括:接收任务处理请求,所述任务处理请求用于对视频数据进行处理;根据所述任务处理请求,获取需要处理的视频数据;基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理。

请参阅图1b,图1b是本发明实施例提供的视频数据的处理方法的流程示意图。所述方法包括:

在步骤S101中,接收任务处理请求,所述任务处理请求用于对视频数据进行处理。

可以理解的是,本发明提供的视频数据的处理方法可基于分布式文件系统(HDFS,Hadoop Distributed File System)执行,视频数据的处理装置接收到用于对视频数据进行处理的任务处理请求,从而触发视频数据的处理装置根据视频数据进行任务调度,并控制各个任务处理节点处理相应的任务。

可选的,视频数据的处理装置接收任务处理请求的方式有很多,比如,在一种可能的实施方式中,视频数据的处理装置可以接收用户触发输入的任务处理请求。

又比如,在另一种可能的实施方式中,视频数据的处理装置可以按照预设时间间隔获取任务列表,并将所述任务列表作为任务处理请求。

也就是说,该任务处理请求可以由用户进行触发以及提交,或者可以定时地启动预先计划的任务列表,其中所述任务列表可以根据用户行为数据或者用户自定义所生成,此处不作具体限定。

在步骤S102中,根据所述任务处理请求,获取需要处理的视频数据。

比如,视频数据的处理装置可以根据所述任务处理请求,从分布式文件存储服务器集群中获取需要处理的视频数据。其中,该视频数据的处理装置与所述分布式文件存储服务器集群处于同一视频数据的集群系统中。

可具体的,视频数据的处理装置根据所述任务处理请求,从分布式文件存储服务器集群中获取需要处理的视频数据可包括如下步骤:

(21)根据预设的视频处理任务信息,确定与所述任务处理请求相应的视频处理任务。

(22)从分布式文件存储服务器集群中提取所述视频处理任务相应的视频数据。

(23)将提取的所述视频数据确定为需要处理的视频数据。

也就是说,视频数据的处理装置可预先对视频处理任务信息进行存储,即对任务处理节点需要执行的任务进行设定,例如人脸检测、人脸跟踪、行为识别等多种任务。

比如,视频数据的处理装置先对接收到的任务处理请求进行分析,然后基于分析结果以及视频处理任务信息,确定出相应的视频处理任务;其后,从分布式文件存储服务器集群中提取所述视频处理任务相应的视频数据,并将这些数据作为当前需要处理的视频数据。

在步骤S103中,基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点。

可以理解的是,为了让各个任务处理节点的负载尽可能接近,避免出现处理量特别大的任务处理节点拖慢整个系统的情况,视频数据的处理装置可以设定一任务分配策略来合理分配需要处理的视频数据,比如,可包括如下步骤:

(1)根据所述视频数据,确定相应的录制时间信息。

(2)获取预设的录制时间与处理时间的关系映射表。

(3)基于所述关系映射表与所述录制时间信息,将所述视频数据分发到各个任务处理节点。

比如,可具体的,对于门禁的监控视频数据来说,虽然每一段视频(按相等的时间间隔录制)的大小相差不多,但是不同时间段的视频中人脸的出现频率相差很大。一般来说,视频中出现的人脸越多,任务处理节点要花费的处理时间就越长,这就导致了处理人脸出现特别多的视频时会带来更大的负载。因此,如果简单地根据视频的数目进行分配,很容易产生负载不均衡的情况。

基于此,本实施例中视频数据的处理装置可以先根据历史的行为数据,如视频的录制时间以及相应的处理时间的相关数据,预先建立一关系映射表,并根据该关系映射表以及录制时间信息,将需要处理的视频数据分发到各个任务处理节点。

进一步的,步骤(3)基于所述关系映射表与所述录制时间信息,将所述视频数据分发到各个任务处理节点可具体包括:

(31)基于所述关系映射表与所述录制时间信息,计算相应的处理时间。

(32)根据任务处理节点的数目以及所述处理时间,确定处理时间的平均值。

(33)根据所述处理时间的平均值,将相应时长的视频数据分发到各个任务处理节点。

也就是说,具体运行时,视频数据的处理装置会维护一个视频录制时间与处理时间的关系映射表,根据不同的时间段查询对应的处理时间,确定处理时间的平均值,即平均每个任务处理节点需要处理的时间,从而将相应时长的视频数据分发到各个任务处理节点进行处理。

可选的,无论对于新增加的视频(如关系映射表无对应录制时间的视频)还是原有的视频,视频数据的处理装置均可以在任务处理节点处理完这个视频数据后记录下其实际的处理时间,并将其更新到该关系映射表中,从而可以实时的更新该关系映射表,更加符合实际的需求。

可以理解的是,所述视频数据的处理装置、分布式文件存储服务器集群以及所述任务处理节点均处于同一视频数据的集群系统中,其中所述任务处理节点组成分布式文件处理服务器集群,所述分布式文件处理服务器集群中的每一个处理服务器可作为一个任务处理节点。

在步骤S104中,控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理。

其中,所述读写接口又可理解为程序调用模块,预先设置在各个任务处理节点中,无需限定其相应的任务类型,在视频数据的处理装置将视频数据分发到各个任务处理节点后,控制各个任务处理节点通过该读写接口将不同的任务进行接入,从而可以对视频数据进行相应处理。

比如,视频数据的处理装置控制所述任务处理节点,通过所述预设的读写接口对所述视频数据进行相应处理可以具体包括:

(41)根据预设的视频处理任务信息,确定与所述任务处理请求相应的视频处理任务。

(42)控制所述任务处理节点通过所述预设的读写接口,调用与所述视频处理任务相应的任务处理进程。

(43)控制所述任务处理节点基于所述任务处理进程对所述视频数据进行处理。

也就是说,视频数据的处理装置先对接收到的任务处理请求进行分析,然后基于分析结果以及视频处理任务信息,确定出相应的视频处理任务,例如人脸检测、人脸跟踪、行为识别等多种任务。

进一步的,视频数据的处理装置确定出任务处理请求相应的视频处理任务后,控制任务处理节点通过特定的读写接口,调用与视频处理任务相应的任务处理进程,从而各个任务处理节点可以基于相应的任务处理进程对视频数据进行处理,以完成人脸检测、人脸跟踪、行为识别等多种任务。

需要说明的是,视频数据的处理装置本身没有具体的任务执行内容,而是通过一个读写接口,调用用户自定义的视频处理任务。同时,任务处理节点执行任务时同样采用分布式的方式,只需要保持客户端的程序接口和提供的读写接口一致,就能灵活地提交客户端的视频处理任务,不需要单独为某个任务改写集群框架的程序代码。另外可理解的是,该数据处理方法思想也同样适用于图像、音频等数据,此处不作具体限定。

由上述可知,本实施例提供的视频数据的处理方法,首先接收任务处理请求,并根据所述任务处理请求,获取需要处理的视频数据;然后基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制任务处理节点调用预设的读写接口,并通过所述预设的读写接口对所述视频数据进行相应处理;即本实施例一方面先通过任务分配策略将视频数据进行合理分发,另一方面没有限定任务的类型,而是提供特定的读写接口将不同的任务进行接入及处理,相对于只能完成单一的视频数据处理的方式,大大提高视频数据处理的灵活性以及效率,且高效利用资源。

根据上述实施例所描述的方法,以下将举例作进一步详细说明。

在本实施例中,将从视频数据的处理系统的角度进行描述,其中该视频数据的处理系统为基于分布式文件系统HDFS视频数据的集群系统,如图2a所示,该集群系统主要包括视频数据获取部分以及视频数据处理部分。

其中,视频数据获取部分可以包括预设的物联平台,如物联平台AA,物联平台AA包括多个物联服务器,与该物联平台AA相关联的物联摄像头以及分布式文件存储服务器集群(以下简称存储服务器集群),该存储服务器集群包括多个存储服务器;视频数据处理部分包括客户端、任务调度服务器以及分布式文件处理服务器集群(以下简称处理服务器集群),该处理服务器集群包括多个处理服务器,也称任务处理节点。以下将进行详细说明。

请参阅图2b,图2b为本发明实施例提供的视频数据的处理方法的流程示意图。所述方法包括:

在步骤S201中,物联平台AA中的物联服务器采集多路物联摄像头的视频数据,并将所述视频数据推送至存储服务器集群。

比如,物联平台AA主要用于视频数据获取,可具体的,利用多路物联摄像头进行视频采集,采集视频后,物联平台AA通过绑定该平台注册的用户账号,将视频数据推送至存储服务器集群。

其中,所述存储服务器集群中的存储服务器主要用于接收物联平台AA发送的视频数据,并存储所述视频数据;另需说明的是,本发明所述视频数据,不仅可以指完整的视频流数据,还可以是一个视频的下载路径,后续可以通过这个路径下载视频,等等,此处不作具体限定。

在步骤S202中,任务调度服务器接收客户端发送的任务处理请求。

比如,所述任务调度服务器主要用于对任务进行调度和分配,可具体的,用户可以通过客户端提交任务,以触发向任务调度服务器发送任务处理请求。

其中,任务调度服务器也可以定时的调用预先计划的任务列表,该任务列表可以根据用户行为数据或者用户自定义所生成。

在步骤S203中,任务调度服务器根据该任务处理请求,进行视频预处理,以确定相应的视频处理任务。

在步骤S204中,任务调度服务器从存储服务器集群中,确定视频处理任务相应的需要处理的视频数据。

可以理解的是,任务调度服务器接收到任务处理请求,可认为是一次任务调度发起,之后,任务调度服务器会进入一个视频数据的预处理过程,比如,对任务处理请求进行分析,确定出相应的视频处理任务,如人脸检测、人脸跟踪、行为识别等多种任务。

进一步的,根据视频处理任务,从存储服务器集群中确定出相应的需要处理的视频数据,并控制处理服务器集群中的任务处理节点进行数据下载等等。

在步骤S205中,任务调度服务器根据预设的录制时间与处理时间的关系映射表,确定处理时间的平均值。

在步骤S206中,任务调度服务器根据所述处理时间的平均值,将相应时长的视频数据分发到各个任务处理节点。

其中,在任务调度服务器对视频数据进行调度和分发时,为了让各个任务处理节点的负载尽可能接近,避免出现处理量特别大的任务处理节点拖慢整个系统的情况,任务调度服务器可以预先设定一任务分配策略来合理分配需要处理的视频数据。

可具体的,对于门禁的监控视频数据来说,虽然每一段视频(按相等的时间间隔录制)的大小相差不多,但是不同时间段的视频中人脸的出现频率相差很大。一般来说,视频中出现的人脸越多,任务处理节点要花费的处理时间就越长,这就导致了处理人脸出现特别多的视频时会带来更大的负载。因此,如果简单地根据视频的数目进行分配,很容易产生负载不均衡的情况。

根据对用户的历史行为数据进行分析可知,人脸的出现数目和出现时间有很大的关系。例如,早上上班、中午吃饭、晚上下班这些时间段,人流会显著增大,而每个视频的记录文件中也记录了该视频的录制时间。因此对历史视频(如可设定一个月、半个月前)的处理时间进行统计,就能找出哪些时间段的视频处理起来比较耗时,本次进行视频数据分配时,就能避免将耗时的视频都分发到同一个任务处理节点,提高了负载的均衡性。

也就是说,具体运行时,任务调度服务器会维护一个视频录制时间与处理时间的关系映射表,在不同的时间段都能查到对应的处理时间,从而确定处理时间的平均值。

如,关系映射表中设定,时间段T1对应的处理时间为3分钟、时间段T2对应的处理时间为2分钟、时间段T3对应的处理时间为1分钟、时间段T4对应的处理时间为4分钟,时间段T5对应的处理时间为5分钟,根据该映射表,可以估计出对应的处理时间的平均值,如得到50个视频的处理时间的平均值为5分钟,如果这50个视频中有5个视频的处理时间为8分钟,可以将这5个视频分别分配到不同的任务处理节点进行处理,避免将耗时的视频都分发到同一个任务处理节点。

同时,在任务处理节点处理完视频数据后可以记录下其实际的处理时间,并将其更新到该关系映射表中,从而可以实时的更新该关系映射表,更加符合实际的需求。

在步骤S207中,任务处理节点获取分发的相应时长的视频数据。

在步骤S208中,任务处理节点调用预设的读写接口。

在步骤S209中,任务处理节点通过预设的读写接口对所述视频数据进行相应处理。

所述任务处理节点为处理服务器集群中的处理服务器,主要用于基于所述任务调度服务器的调度结果(如视频数据的分发结果),从存储服务器集群中下载需要处理的视频数据,调用预设的读写接口对视频数据进行相应处理。进一步的,在处理后,可以将处理结果反馈至任务调度服务器。

其中,所述读写接口可理解为程序调用模块,预先设置在各个任务处理节点中,无需限定其相应的任务类型,在任务调度服务器将视频数据分发到各个任务处理节点后,控制各个任务处理节点通过该读写接口将不同的任务进行接入,从而可以对视频数据进行相应处理。

比如,任务调度服务器先对接收到的任务处理请求进行分析,从而确定出相应的视频处理任务,例如人脸检测、人脸跟踪、行为识别等多种任务,并将结果发送至任务处理节点。

进一步的,任务处理节点通过特定的读写接口,调用与视频处理任务相应的任务处理进程,从而各个任务处理节点可以基于相应的任务处理进程对视频数据进行处理,以完成人脸检测、人脸跟踪、行为识别等多种任务。

需要说明的是,任务处理节点本身没有具体的任务执行内容,而是通过一个读写接口,调用用户自定义的视频处理任务(即任务处理进程)。同时,任务处理节点执行任务时同样采用分布式的方式,只需要保持客户端的程序接口和提供的读写接口一致,就能灵活地提交客户端的视频处理任务,不需要单独为某个任务改写集群框架的程序代码。另外可理解的是,该数据处理方法思想也同样适用于图像、音频等数据,此处不作具体限定。

可以理解的是,本发明提供的系统可具体应用在大规模的门禁视频数据处理。由于门禁视频中包含大量的人脸数据,分析、采集和处理这些人脸数据,对于高性能人脸检测、识别、跟踪算法的研发具有十分重要的意义。本发明系统提供了用户自定义程序的读写接口框架,能够方便地接入用户想要的视频处理程序,不局限于例如人脸检测这些功能。同时接入了物联平台来读取视频流,简化了摄像头的部署,灵活性高。并且,分布式系统本身的高速处理能力以及可根据数据统计情况调整任务分配策略,大大提高处理效率。

以目前的大规模门禁视频数据处理平台为例,如,基于本发明方法搭建了分布式文件处理服务器集群,其中分布式文件系统可以保存50t的数据,需要处理的视频数据大约是560G/天,需要在一天内完成,在目前系统中一天采集到200G左右的数据大约需要7个小时处理,因此满足需求。

由上述可知,本发明实施例提供了一种针对大规模视频数据的集群采集、存储、传输和处理的方法。位于各个位置的摄像头采集的视频流,通过物联平台,推流至集群的分布式文件存储服务器进行存储;接着,集群的分布式文件处理服务器会从分布式文件存储服务器上定时或自动地获取视频流,并且根据这些视频数据的统计信息,自动的调整任务分发策略,使各个任务处理节点的负载能够最大程度均衡;每个任务处理节点本身不执行一个具体的任务,而是留有一个统一的读写接口,用户可以通过这个读写接口接入相应的视频数据处理程序,从而完成如人脸检测、人脸跟踪、行为识别等多种任务。相比于现有的视频数据的集群系统,保证任务的可靠、高效运行,具有很强的灵活性,并且,会结合数据的统计信息更新任务分发策略,让任务处理节点负载更加均衡,减少短板效应。

为便于更好的实施本发明实施例提供的视频数据的处理方法,本发明实施例还提供一种基于上述视频数据的处理方法的装置。其中名词的含义与上述视频数据的处理的方法中相同,具体实现细节可以参考方法实施例中的说明。

请参阅图3a,图3a为本发明实施例提供的视频数据的处理装置的结构示意图,本发明所述视频数据的处理装置可以包括接收单元301、获取单元302、分发单元303以及控制单元304。

其中所述接收单元301,用于接收任务处理请求,所述任务处理请求用于对视频数据进行处理。

可以理解的是,本发明提供的视频数据的处理装置可基于分布式文件系统HDFS执行,视频数据的处理装置接收到用于对视频数据进行处理的任务处理请求,从而触发视频数据的处理装置根据视频数据进行任务调度,并控制各个任务处理节点处理相应的任务。

可选的,接收单元301接收任务处理请求的方式有很多,比如,在一种可能的实施方式中,所述接收单元301可以用于接收用户触发输入的任务处理请求。

又比如,在另一种可能的实施方式中,所述接收单元301可以用于按照预设时间间隔获取任务列表,并将所述任务列表作为任务处理请求。

也就是说,该任务处理请求可以由用户进行触发以及提交,或者可以定时地启动预先计划的任务列表,其中所述任务列表可以根据用户行为数据或者用户自定义所生成,此处不作具体限定。

获取单元302,用于根据所述任务处理请求,获取需要处理的视频数据。

比如,获取单元302可以根据所述任务处理请求,从分布式文件存储服务器集群中获取需要处理的视频数据。其中,该视频数据的处理装置与所述分布式文件存储服务器集群处于同一视频数据的集群系统中。

分发单元303,用于基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制单元304,用于控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理。

可以理解的是,为了让各个任务处理节点的负载尽可能接近,避免出现处理量特别大的任务处理节点拖慢整个系统的情况,视频数据的处理装置可以设定一任务分配策略来合理分配需要处理的视频数据。

其中,所述读写接口又可理解为程序调用模块,预先设置在各个任务处理节点中,无需限定其相应的任务类型,在视频数据的处理装置将视频数据分发到各任务处理节点后,控制各任务处理节点通过该读写接口将不同的任务进行接入,从而可以对视频数据进行相应处理。

可一并参考图3b,为视频数据的处理装置的另一结构示意图;可具体的,所述获取单元302可以包括:

任务确定子单元3021,用于根据预设的视频处理任务信息,确定与所述任务处理请求相应的视频处理任务。

提取子单元3022,用于从分布式文件存储服务器集群中提取所述视频处理任务相应的视频数据。

数据确定子单元3023,用于将提取的所述视频数据确定为需要处理的视频数据。

也就是说,视频数据的处理装置可预先对视频处理任务信息进行存储,即对任务处理节点需要执行的任务进行设定,例如人脸检测、人脸跟踪、行为识别等多种任务。

比如,任务确定子单元3021先对接收到的任务处理请求进行分析,然后基于分析结果以及视频处理任务信息,确定出相应的视频处理任务;其后,提取子单元3022从分布式文件存储服务器集群中提取所述视频处理任务相应的视频数据,数据确定子单元3023将这些数据作为当前需要处理的视频数据。

可选的,视频数据的处理装置可以设定一任务分配策略来合理分配需要处理的视频数据,如,所述分发单元303可以包括:

时间确定子单元3031,用于根据所述视频数据,确定相应的录制时间信息。

获取子单元3032,用于获取预设的录制时间与处理时间的关系映射表。

分发子单元3033,用于基于所述关系映射表与所述录制时间信息,将所述视频数据分发到各个任务处理节点。

比如,可具体的,对于门禁的监控视频数据来说,虽然每一段视频(按相等的时间间隔录制)的大小相差不多,但是不同时间段的视频中人脸的出现频率相差很大。一般来说,视频中出现的人脸越多,任务处理节点要花费的处理时间就越长,这就导致了处理人脸出现特别多的视频时会带来更大的负载。因此,如果简单地根据视频的数目进行分配,很容易产生负载不均衡的情况。

基于此,本实施例中视频数据的处理装置可以先根据历史的行为数据,如视频的录制时间以及相应的处理时间的相关数据,预先建立一关系映射表,并根据该关系映射表以及录制时间信息,将需要处理的视频数据分发到各个任务处理节点。

进一步的,所述分发子单元3033可以具体用于,基于所述关系映射表与所述录制时间信息,计算相应的处理时间;根据任务处理节点的数目以及所述处理时间,确定处理时间的平均值;根据所述处理时间的平均值,将相应时长的视频数据分发到各个任务处理节点。

也就是说,具体运行时,视频数据的处理装置会维护一个视频录制时间与处理时间的关系映射表,根据不同的时间段查询对应的处理时间,确定处理时间的平均值,即平均每个任务处理节点需要处理的时间,从而将相应时长的视频数据分发到各个任务处理节点进行处理。

可选的,无论对于新增加的视频(如关系映射表无对应录制时间的视频)还是原有的视频,视频数据的处理装置均可以在任务处理节点处理完这个视频数据后记录下其实际的处理时间,并将其更新到该关系映射表中,从而可以实时的更新该关系映射表,更加符合实际的需求。

可以理解的是,所述视频数据的处理装置、分布式文件存储服务器集群以及所述任务处理节点均处于同一视频数据的集群系统中,其中所述任务处理节点组成分布式文件处理服务器集群,所述分布式文件处理服务器集群中的每一个处理服务器可作为一个任务处理节点。

可选的,所述控制单元304,可以具体用于根据预设的视频处理任务信息,确定与所述任务处理请求相应的视频处理任务;控制所述任务处理节点通过所述预设的读写接口,调用与所述视频处理任务相应的任务处理进程;控制所述任务处理节点基于所述任务处理进程对所述视频数据进行处理。

也就是说,视频数据的处理装置先对接收到的任务处理请求进行分析,然后基于分析结果以及视频处理任务信息,确定出相应的视频处理任务,例如人脸检测、人脸跟踪、行为识别等多种任务。

进一步的,视频数据的处理装置确定出任务处理请求相应的视频处理任务后,控制任务处理节点通过特定的读写接口,调用与视频处理任务相应的任务处理进程,从而各个任务处理节点可以基于相应的任务处理进程对视频数据进行处理,以完成人脸检测、人脸跟踪、行为识别等多种任务。

需要说明的是,视频数据的处理装置本身没有具体的任务执行内容,而是通过一个读写接口,调用用户自定义的视频处理任务。同时,任务处理节点执行任务时同样采用分布式的方式,只需要保持客户端的程序接口和提供的读写接口一致,就能灵活地提交客户端的视频处理任务,不需要单独为某个任务改写集群框架的程序代码。另外可理解的是,该数据处理方法思想也同样适用于图像、音频等数据,此处不作具体限定。

具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。

该视频数据的处理装置具体可以集成在服务器或网关等网络设备中。

由上述可知,本实施例提供的视频数据的处理装置,首先接收任务处理请求,并根据所述任务处理请求,获取需要处理的视频数据;然后基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制任务处理节点调用预设的读写接口,并通过所述预设的读写接口对所述视频数据进行相应处理;即本实施例一方面先通过任务分配策略将视频数据进行合理分发,另一方面没有限定任务的类型,而是提供特定的读写接口将不同的任务进行接入及处理,相对于只能完成单一的视频数据处理的方式,大大提高视频数据处理的灵活性以及效率,且高效利用资源。

相应的,本发明实施例还提供一种视频数据的处理系统,可参考图2a所示,包括本发明实施例所提供的任一种视频数据的处理装置,具体可参见上述实施例;其中,该视频数据的处理装置可以集成在服务器,如任务调度服务器等网络设备中,例如,具体可以如下:

任务调度服务器,用于接收任务处理请求,所述任务处理请求用于对视频数据进行处理;根据所述任务处理请求,获取需要处理的视频数据;基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理。

此外,该视频数据的处理系统还可以包括其他的设备,比如存储服务器集群(又称分布式存储服务器集群)、处理服务器集群(又称分布式处理服务器集群),如下:

存储服务器集群,用于接收物联平台发送的视频数据,并存储所述视频数据;

处理服务器集群,从存储服务器集群中获取需要处理的视频数据,并基于任务调度服务器的调度结果,调用预设的读写接口对视频数据进行相应处理。

以上各个设备的具体实施可参见前面的实施例,在此不再赘述。

由于该视频数据的处理系统可以包括本发明实施例所提供的任一种视频数据的处理装置,因此,可以实现本发明实施例所提供的任一种视频数据的处理装置所能实现的有益效果,具体可参见前面的实施例,在此不再赘述。

本发明实施例还提供一种服务器,其中可以集成本发明实施例的视频数据的处理装置,如图4所示,其示出了本发明实施例所涉及的服务器的结构示意图,具体来讲:

该服务器可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、射频(Radio Frequency,RF)电路403、电源404、输入单元405、以及显示单元406等部件。本领域技术人员可以理解,图4中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

处理器401是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。

存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。

RF电路403可用于收发信息过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器401处理;另外,将涉及上行的数据发送给基站。通常,RF电路403包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路403还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,General Packet Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。

服务器还包括给各个部件供电的电源404(比如电池),优选的,电源可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源404还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

该服务器还可包括输入单元405,该输入单元405可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。

该服务器还可包括显示单元406,该显示单元406可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元406可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。

具体在本实施例中,服务器中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:

接收任务处理请求,所述任务处理请求用于对视频数据进行处理;根据所述任务处理请求,获取需要处理的视频数据;基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制所述任务处理节点调用预设的读写接口,并控制所述任务处理节点通过所述预设的读写接口对所述视频数据进行相应处理。

优选的,所述处理器401还可以用于,接收用户触发输入的任务处理请求;或者,按照预设时间间隔获取任务列表,并将所述任务列表作为任务处理请求。

优选的,所述处理器401还可以用于,根据所述任务处理请求,从分布式文件存储服务器集群中获取需要处理的视频数据。

优选的,所述处理器401还可以用于,根据预设的视频处理任务信息,确定与所述任务处理请求相应的视频处理任务;从分布式文件存储服务器集群中提取所述视频处理任务相应的视频数据;将提取的所述视频数据确定为需要处理的视频数据。

优选的,所述处理器401还可以用于,根据所述视频数据,确定相应的录制时间信息;获取预设的录制时间与处理时间的关系映射表;基于所述关系映射表与所述录制时间信息,将所述视频数据分发到各个任务处理节点。

优选的,所述处理器401还可以用于,基于所述关系映射表与所述录制时间信息,计算相应的处理时间;根据任务处理节点的数目以及所述处理时间,确定处理时间的平均值;根据所述处理时间的平均值,将相应时长的视频数据分发到各个任务处理节点。

优选的,所述处理器401还可以用于,根据预设的视频处理任务信息,确定与所述任务处理请求相应的视频处理任务;控制所述任务处理节点通过所述预设的读写接口,调用与所述视频处理任务相应的任务处理进程;控制所述任务处理节点基于所述任务处理进程对所述视频数据进行处理。

由上述可知,本实施例提供的服务器中,首先接收任务处理请求,并根据所述任务处理请求,获取需要处理的视频数据;然后基于预设的任务分配策略,将所述视频数据分发到各个任务处理节点;控制任务处理节点调用预设的读写接口,并通过所述预设的读写接口对所述视频数据进行相应处理;即本实施例一方面先通过任务分配策略将视频数据进行合理分发,另一方面没有限定任务的类型,而是提供特定的读写接口将不同的任务进行接入及处理,相对于只能完成单一的视频数据处理的方式,大大提高视频数据处理的灵活性以及效率,且高效利用资源。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对视频数据的处理方法的详细描述,此处不再赘述。

本发明实施例提供的所述视频数据的处理装置,譬如为计算机、平板电脑、具有触摸功能的手机等等,所述视频数据的处理装置与上文实施例中的视频数据的处理方法属于同一构思,在所述视频数据的处理装置上可以运行所述视频数据的处理方法实施例中提供的任一方法,其具体实现过程详见所述视频数据的处理方法实施例,此处不再赘述。

需要说明的是,对本发明所述视频数据的处理方法而言,本领域普通测试人员可以理解实现本发明实施例所述视频数据的处理方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述计算机程序可存储于一计算机可读取存储介质中,如存储在终端的存储器中,并被该终端内的至少一个处理器执行,在执行过程中可包括如所述视频数据的处理方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)等。

对本发明实施例的所述视频数据的处理装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中,所述存储介质譬如为只读存储器,磁盘或光盘等。

以上对本发明实施例所提供的一种视频数据的处理方法、装置及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1