一种用于智能监控视频数据的存储方法与流程

文档序号:12730601阅读:343来源:国知局
一种用于智能监控视频数据的存储方法与流程

本发明涉及视频数据存储领域,尤其涉及一种基于高级语义分析的智能监控视频Hadoop大数据的存储方法。



背景技术:

将基于内容的视频语义检索技术最典型的应用就是智能视频监控系统。智能视频监控是指运用智能视频分析算法,对输入的视频图像内容自动的进行分析,并且提取监控画面中我们所感兴趣的、关键的、有效的信息;系统中的摄像机类似于人的眼睛,智能视频分析算法类似于人的大脑,借助于服务器强大的数据处理功能,对监控画面中的海量数据进行高速分析,过滤掉用户不关心的信息,为监控者提供有用的关键信息。它是视频监控一个更高端的应用,在民用和军事领域中都有着极大的应用前景。目前在很多公共场所都安装了监控摄像机,实际中需要大量的人参与到整个监控过程中去,造成了人力资源极大的浪费,属于被动监控。而智能视频监控可减小人力资源的浪费,克服人力疲意的局限性,帮助监控人员更加有效地处理突发事件。智能视频监控大致可以分为四个辰次:标检测、目标分类、标跟踪和目标行为的分析识别。其中标检测属于低级处理,标分类和目标跟踪属丁中级处理,目标行为的分析和识别属于高级处理它涉及图像处理、模式识别、人工智能等多个领域的核心技术。

但随着监控系统规模的不断扩大,如何高效地在海量的数据中找到需要的信息更是成为了制约视频监控系统发展的障碍。传统的手工检索方式会受人身生理上的弱点等因素的制约。因此将视频语义分析技术用于视频监控系统是前监控行业发展的方向。随着视频数据量的不断增长,对视频数据的存储成了一个困扰使用者的难题,因此视频监控系统的另一个问题是视频数据的存储问题。随着监控摄像头的大量部署,导致企业需要存储大量的视频文件,严重占用企业的私有存储空间。例如,高清网络摄像机,当帖率为每秒30帧时,每台这样的摄像机一个月产生的视频文件就达3T,如此大的容量,一般企业是难以负荷的。

大数据技术的出现是随着计算机技术、互联网技术和图像(视频)采集技术的快速发展而发展起来的。近几年全球每天产生的图像和视频数据都以PB为单位增长,而我们对数据处理的实时性、准确性的要求却在不断提高,因此,主要包括分布式缓存、分布式运算、分布式文件系统、分布式数据库的大数据解决方案应运而生。

但由于视频数据量非常大,所以对视频的存储不易采用集中存储方式,而应采用分散、本地存储,以尽量减少视频传输所带来的对网络资源的占用。视频数据因其编码方式的不同,其数据的结构也多种多样,因此需要对视频数据进行分类描述,从而实现并行运算,以提高大数据分析的速度。视频分析要涉及图像特征分析、视频对象提取、视频抽象语义分析三个层次的内容,每一个层次都有众多具体分析算法,因此难以设计出一个“万能”的视频分析算法实现对视频的语义分析。所以,需要设计一种合理的算法调度机制,实现视频分析算法的按需调用。因此,现有技术有待于更进一步的改进和发展。



技术实现要素:

鉴于上述现有技术的不足,本发明的目的在于提供的一种用于智能监控视频数据的存储方法,以节约数据存储空间,提高数据读取速度。

为解决上述技术问题,本发明方案包括:

一种基于高级语义分析的智能监控视频Hadoop大数据的存储方法,其包括以下步骤:

A、从多个视频监控设备获取视频数据,将视频数据的结构分为故事、场景、镜头、子镜头以及帧五个层次,每一层都表达相应的语义内容;对监控场景中的物体信息和动作信息进行粒化,釆用视频粒度分层模型,将不同层次的视频语义提取算法在大数据并行运算平台进行运算;

B、对对应视频对象的分析以子镜头或镜头的连接处作为分析边界,对包含运动特性的图像对象,从连续帧内相关的图像对象抽取得到,或者将图像对象和运动矢量结合得到,进行视频对象分析;

C、在进行视频语义分析,视频语义对象是包含视频对象及其外延的语义对象,其语义抽取涉及众多信息处理领域,是建立在视频对象分析基础之上的更高层次的信息提取和分析;

D、抽取引擎FEE的输入对象是视频流媒体数据,在分析前要通过视频解码模块将视频帧进行解码,这一过程由独立的解码模块完成也可以将解码模块集成到FEE中,每一层分析引擎分析的结果都存入上一级粒层对应的数掘库中;

在图像特征、图像对象、视频对象以及视频语义中会有大量冗余信息,采用粒计算的约简可以实现对冗余信息的去除或标记,然后进行存储。

所述的存储方法,其中,上述步骤D具体的还包括:

视频存储数据为视频采集终端釆集的视频文件,完成对视频数据的统一存储管理;

视频存储数据库为视频文件的存储信息,视频存储数据共同完成为查询客户端和视频分析模块提供视频信息;

视频分析数据库存储视频的语义概念信息,通过查询接口给查询客户端提供视频语义信息;

视频采集终端采集视频数据,通过大数据管理软件模块提供的API实现将采集的视频数据上传到大数据视频存储系统;

视频分析模块提供对视频特定语义概念的分析,并将分析结果上传到视频分析数据库;

查询客户端为用户査询视频、视频语义概念的应用程序,完成用户对所需信息的查询。

所述的存储方法,其中,上述步骤D具体的还包括:

冗余信息用于反映数据之间的相关性,而通过分析同一粒层的粒子之间相关性可以分析出连续视频帧之间的关系;若同一粒层上的粒子之间的独立性越好,则表明该粒子对应的连续视频帧之间的相关性越差,在视频分析时就应各自独立分析;若粒子之间的相关性越好,则表明该粒子对应的连续视频帧间的相关性就越强,在视频分析时采用合并分析。

本发明提供的一种用于智能监控视频数据的存储方法,建立元数据模型,提取视频摘要可以让用户对海量的视频内容得到快速了解,视频摘要生成过程中,可以辅助字幕识别、语音识别、人体检测、人脸检测等方法,对视频中地点、人物和事件进行时序分析和语义识别;还可以通过背景变化、镜头切换、场景变换等信息处理视频语义,节约了数据存储空间,提高了数据读取速度。

附图说明

图1为本发明中存储方法的流程示意图;

图2为本发明中视频数据粒度分层的示意图。

具体实施方式

本发明提供了一种用于智能监控视频数据的存储方法,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供了一种基于高级语义分析的智能监控视频Hadoop大数据的存储方法,如图1与图2所示的,其包括以下步骤:

步骤A,从多个视频监控设备获取视频数据,将视频数据的结构分为故事、场景、镜头、子镜头以及帧五个层次,每一层都表达相应的语义内容;对监控场景中的物体信息和动作信息进行粒化,釆用视频粒度分层模型,将不同层次的视频语义提取算法在大数据并行运算平台进行运算;

步骤B,对对应视频对象的分析以子镜头或镜头的连接处作为分析边界,对包含运动特性的图像对象,从连续帧内相关的图像对象抽取得到,或者将图像对象和运动矢量结合得到,进行视频对象分析;

步骤C,在进行视频语义分析,视频语义对象是包含视频对象及其外延的语义对象,其语义抽取涉及众多信息处理领域,是建立在视频对象分析基础之上的更高层次的信息提取和分析;

步骤D,抽取引擎FEE的输入对象是视频流媒体数据,在分析前要通过视频解码模块将视频帧进行解码,这一过程由独立的解码模块完成也可以将解码模块集成到FEE中,每一层分析引擎分析的结果都存入上一级粒层对应的数掘库中;

在图像特征、图像对象、视频对象以及视频语义中会有大量冗余信息,采用粒计算的约简可以实现对冗余信息的去除或标记,然后进行存储。

更进一步的,上述步骤D具体的还包括:

视频存储数据为视频采集终端釆集的视频文件,完成对视频数据的统一存储管理;

视频存储数据库为视频文件的存储信息,视频存储数据共同完成为查询客户端和视频分析模块提供视频信息;

视频分析数据库存储视频的语义概念信息,通过查询接口给查询客户端提供视频语义信息;

视频采集终端采集视频数据,通过大数据管理软件模块提供的API实现将采集的视频数据上传到大数据视频存储系统;

视频分析模块提供对视频特定语义概念的分析,并将分析结果上传到视频分析数据库;

查询客户端为用户査询视频、视频语义概念的应用程序,完成用户对所需信息的查询。

在本发明的另一较佳示例中,上述步骤D具体的还包括:

冗余信息用于反映数据之间的相关性,而通过分析同一粒层的粒子之间相关性可以分析出连续视频帧之间的关系;若同一粒层上的粒子之间的独立性越好,则表明该粒子对应的连续视频帧之间的相关性越差,在视频分析时就应各自独立分析;若粒子之间的相关性越好,则表明该粒子对应的连续视频帧间的相关性就越强,在视频分析时采用合并分析。

为了更进一步描述本发明,以下列举更为详尽的实施例进行说明。本发明包括视频分割、特征提取、语义提取,进而完成对视频存储挖掘、视频存储数据库文件、视频分析数据库文件及相关系统文件、配置文件、MapReduce分布式计算程序的存储。

步骤1:视频数据分层

视频数据的结构可以分为故事、场景、镜头、子镜头、帧这个层次,每一层都表达了不同的语义内容。帧描述了一个静态的画面,包含了特定的语义内容,是语义分析的最基本对象,能够让人直观了解画面有哪些语义对象;子镜头是帧包含的语义内容具有连续性画面的最小单位,通常是由特定摄像机拍摄的连续画面,其包含了具有比帧语义在时间维度上延续的语义内容,人的直观感受就是了解对象完成了某一个特定动作;镜头为子镜头组成的连续序列,能够表达相对完整的语义内容,在这一层次人就能够知道对象动作或行为的前因后果;场景为不同镜头组成的序列,不同镜头包含的对象的语义内容在情节上有了因果关系;故事则为若干场景组成的具有完整故事情节的语义内容。

视频数据结构的前层都是由最底层的连续帧构成的,通过人的主观判别可以轻易完成各个层次的界定,但是要通过机器来进行划分就会涉及到很多技术,如关键帧提取、子镜头切分、镜头检测、场景聚类、故事划分等,并且这些技术都需要顿语义检测作为基本条件。

从上面的分析可以看出,对视频的语义分析涉及到由低到高的几部分分析内容。最底层为图像特征提取层,然后是视频分割层和语义提取层。图像特征提取层是视频分割层和语义提取层的基础,提供给视频分割和语义提取基本图像特征。

在各种视频分析方法中,首要任务是视频分段,即视频分割。视频分割的正确与否将直接影响到后续分析步骤如对象识别、场景分析、镜头运动分析等的准确性。并且,准确的视频分割信息将简化视频语义分析的复杂度,使得各种视频语义分析算法得以将注意力集中到分析算法中。

视频语义分析目标是实现视频语义信息的自动识别和提取,对监控场景中的物体信息和动作信息进行粒化,釆用视频粒度分层模型,可将不同层次的视频语义提取算法在大数据并行运算平台进行并行运算,发挥大数据技术的优势。

步骤2:视频对象层分析

视频的语义分析过程除了要利用图像特征层的特征以外还会使用图像和图像在时间维度上的信息,这种信息通常用运动矢量来描述。对某个视频对象的分析往往以子镜头或镜头的连接处作为分析边界,因为子镜头或镜头发生切换往往会导致视频对象发生改变。

把视频语义的对象称为视频对象或视频对象粒,视频对象的集合称为视频对象层或视频对象层粒。

视频对象包含运动特性的图像对象,可以从连续帧内相关的图像对象抽取得到,也可以将图像对象和运动矢量结合得到,其抽取引擎也称为视频对象抽取引擎(Video Object Extract Engine,VOEE)。

步骤3:视频语义层分析

视频语义分析是建立在视频对象分析基础之上的更高层次的信息提取和分析。视频语义分析涉及研究对象众多,如语言、文字、数字、视频对象等元素,而且包含对这些元素的综合分析、理解、抽象等过程,涉及自然语言理解、文字识别、统计分析、情报检索、信息过滤等众多领域。

视频语义层的分析边界通常要比视频对象的分析边界(子镜头或镜头)要大,往往还会涉及到场景甚至故事等概念。

由于视频语义涉及的研究对象非常广泛,不仅有桢、子镜头、镜头等局部视频段,甚至还会涉及场景、故事等全局视频段。例如对一个足球射门的镜头进行分析,从低到高可以有:

球;

足球;

足球在运动;

足球在向球门运动;

足球越过了球门;

足球越过了球门得分了;

足球越过了球门得分了比分是3:1;;

10号运动员将足球踢进了球门得分了比分是3:1;

10号运动员齐达内将足球踢进了球门得分了比分是3:1;

这一系列的语义概念涉及众多分析对象。对前两个语义可以只用关键帧的图像特征就可以分析出来;“足球在运动”需要分析连续几个关键帧;“足球在向球门运动、足球越过了球门”还需要对视频场景进行分析,会涉及同一图像或视频对象层粒的其它粒子;“足球越过了球门得分了”会涉及对足球这项运动的基本常识概念;“足球越过了球门得分了比分是3:1”则需要知道之前的比分情况,会涉及当前子镜头或镜头之前的镜头或场景的语义分析结果;“10号运动员将足球踢进了球门得分了比分是3:1”也需涉及之前镜头或场景信息,找出“运动员”和“球”的因果关系,并且要对“运动员”的球衣号码进行识别;最后一个语义则需得到整个故事的语义信息,如双方上场运动员名单和对应球衣号码。

视频语义对象是包含视频对象及其外延的语义对象,其语义抽取涉及众多信息处理领域,将其抽取引擎称为视频语义对象抽取引擎(Video Semant ic Object Extract Engine,VSOEE)。

步骤4:大数据视频分层模型结构分析

本发明以Hadoop为大数据平台,帧、特征、图像对象、视频对象、语义对象这五类数据以分布式的方式存储在HDFS文件系统中,并建立HBase数据库。视频数据通过采集、编码存储在HDFS中。但与通常的存储方式不同的是:视频的存储是以帧为单位存储的。以帧为单位存储可以提高视频数据的检索效率,能够实现对帧数据的快速定位,这种方案适合于大容量、高并发性视频数据的访问环境。视频倾在存储的同时要建立Frame结构的数据,并将数据存入数据库。

在本发明中MapReduce完成各类数据引擎的运算以及数据的约简过程。按功能划分可以分为分析引擎层和数据约简层。分析引擎层由4类抽取引擎组成,以分布式方式运行。数据约简层由4类约简模块组成,也以分布式方式运行。

特征抽取引擎FEE的输入对象是视频流媒体数据,所以在分析前要通过视频解码模块将视频帧进行解码,这一过程可以由独立的解码模块完成也可以将解码模块集成到FEE中。

每一层分析引擎分析的结果都存入上一级粒层对应的数掘库中。

在图像特征、图像对象、视频对象、视频语义这4类数据中会有大量冗余信息,采用粒计算的约简可以实现对冗余信息的去除或标记。

冗余信息反映了数据之间的相关性,而通过分析同一粒层的粒子之间相关性可以分析出连续视频帧之间的关系。如果同一粒层上的粒子之间的独立性越好,则表明该粒子对应的连续视频帧之间的相关性越差,在视频分析时就应各自独立分析,以提高分析的准确性;而如果粒子之间的相关性越好,则表明该粒子对应的连续视频帧间的相关性就越强,在视频分析时可采用合并分析,以提高分析的速度。

当然,以上说明仅仅为本发明的较佳实施例,本发明并不限于列举上述实施例,应当说明的是,任何熟悉本领域的技术人员在本说明书的教导下,所做出的所有等同替代、明显变形形式,均落在本说明书的实质范围之内,理应受到本发明的保护。

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