CN102663005B - 基于云计算的海量视频文件存储系统、分析方法及其系统 - Google Patents

基于云计算的海量视频文件存储系统、分析方法及其系统 Download PDF

Info

Publication number
CN102663005B
CN102663005B CN201210073197.2A CN201210073197A CN102663005B CN 102663005 B CN102663005 B CN 102663005B CN 201210073197 A CN201210073197 A CN 201210073197A CN 102663005 B CN102663005 B CN 102663005B
Authority
CN
China
Prior art keywords
video
task node
task
data block
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210073197.2A
Other languages
English (en)
Other versions
CN102663005A (zh
Inventor
管国辰
金升鹏
张岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201210073197.2A priority Critical patent/CN102663005B/zh
Publication of CN102663005A publication Critical patent/CN102663005A/zh
Application granted granted Critical
Publication of CN102663005B publication Critical patent/CN102663005B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及视频监控领域,公开了一种基于云计算的海量视频文件存储系统、分析方法及其系统。保证切片精确,以使视频数据分析的解码完整和有效。本发明中,方法包括以下步骤:客户端查询视频文件的管理信息,并根据该管理信息对视频文件切片并生成切片信息,其中一个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的;客户端将切片信息上传给主节点和向主节点提交作业;主节点分解作业,指派任务及切片信息给任务节点;各任务节点执行被指派的任务,获取和分析数据块;各任务节点获取经分析得到的元数据,归并输出。

Description

基于云计算的海量视频文件存储系统、分析方法及其系统
技术领域
本发明涉及视频监控领域,特别涉及一种海量视频文件分析技术。
背景技术
目前,基于云计算的分布式计算模型hadoop比较适合面向文本数据的处理,可在网页搜索引擎领域取得比较好的效果。但本发明的发明人发现,该基于云计算的分布式计算模型hadoop针对视频数据进行智能分析时却存在以下问题:
首先,在hadoop的分布式计算里面,对大数据的处理都需要将大块的数据切分为很多小块的数据,对每个小块数据相互独立处理。如果对视频文件进行切片,hadoop没有对视频文件内部数据语义和关联性进行关注,只是把它当作普通的二进制的数据进行切片,容易造成不能解码,从而不能对视频切片进行计算处理。
其次,对海量视频数据进行智能分析的特点既是输入输出密集型又是计算密集型。hadoop比较适合做批处理的工作,面向输入输出密集型和计算不密集的情况可以取得比较好的效果,但是对于计算密集型的问题,hadoop效果不是很好。这是因为hadoop基于java开发,但java程序执行效率不高,启动java虚拟机比较慢,对于内存管理,java采用的是惰性分配的策略,不能主动控制内存的分配。且对视频数据的智能分析是计算密集型的操作,对效率要求非常高,而且会有频繁大量的内存操作,用hadoop来实现视频分析,往往会造成分析计算慢和内存快速增长但不能迅速释放的问题。
最后,hadoop里面的分布式计算处理对象一般都是基于分布式文件系统(Hadoop Distributed File System,简称“HDFS”)上存储的数据,而其分布式调度很多优化都是针对HDFS的存储特性做的,和HDFS耦合过于紧密,不适合用来做海量视频数据存储。
综上所述,现有的云计算技术不适合做海量视频数据的智能分析。
发明内容
本发明的目的在于提供一种基于云计算的海量视频文件存储系统、分析方法及其系统,保证切片精确,以使视频数据分析的解码完整和有效。
为解决上述技术问题,本发明的实施方式公开了一种基于云计算的海量视频文件智能分析方法,方法基于分布式计算模型,该模型包括:客户端、主节点和任务节点;
方法包括以下步骤:
客户端查询视频文件的管理信息,并根据该管理信息对视频文件切片并生成切片信息,其中每个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的;
客户端将切片信息上传给主节点;
客户端向主节点提交作业;
主节点将作业分解成若干个任务,将各任务及与任务相关的切片信息分别指派给多个分布式计算的任务节点;
各分布式计算的任务节点执行被指派的任务,根据任务相关的切片信息,获取切片,再根据管理信息将切片分解成若干个数据块,并对数据块分析;
各分布式归并的任务节点从各分布式计算的任务节点获取经分析得到的元数据,进行归并操作后输出。
本发明的实施方式还公开了一种基于云计算的海量视频文件智能分析系统,系统基于分布式计算模型,该模型包括:客户端、主节点和任务节点;
客户端,用于首先查询视频文件的管理信息,根据该管理信息对视频文件切片并生成切片信息,其中每个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,再将切片信息上传给主节点和向主节点提交作业;
主节点,用于首先将客户端指派的作业分解成若干个任务,再将各任务及与任务相关的切片信息分别指派给多个分布式计算的任务节点;
任务节点,用于分布式计算执行主节点指派的任务,首先根据任务相关的切片信息,获取切片,再根据管理信息将切片分解成若干个数据块,并对数据块分析;
任务节点,还用于分布式归并操作,首先从各分布式计算的任务节点获取经分析得到的元数据,再对所获取的元数据进行归并操作并输出。
本发明的实施方式还公开了一种基于云计算的海量视频文件存储系统,包括:一个存储管理节点和多个数据存储节点;
数据存储节点,用于存储划分视频文件所形成的至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的;
存储管理节点,用于存储视频文件的管理信息,该管理信息包括:存储的所有视频文件的文件名,每个视频文件的数据块个数,每个数据块所在的数据存储节点,每个数据块大小,每个数据块时间段。
本发明实施方式与现有技术相比,主要区别及其效果在于:
根据该管理信息对视频文件切片并生成切片信息,其中每个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,这样一个切片方式可以保证切片精确,以使海量视频数据分析的解码完整和有效。
在存储视频文件时,将视频文件划分为至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,这样一个切片方式可以保证切片精确,以使视频数据分析的解码完整和有效。同时,以数据块为单位来存储视频文件,具体应用中,可以采取一路通道一个文件的存储原则进行存储,不采用hadoop中对数据进行多份冗余的机制。
进一步地,使用输入插件查询视频文件的管理信息和获取切片,以及通过计算插件分析视频码流,便于提高系统的可扩展性。进一步地,各分布式计算的任务节点将经过分析得到的元数据写入本地磁盘并分区,其中分区的数目与分布式归并的任务节点数目一致,可以方便各分布式归并的任务节点从对应的磁盘分区中快速获取元数据。
进一步地,该分析系统根据计算量来进行负载均衡,耦合图像分析的输入输出密集型和计算密集型作业特性。
进一步地,通过索引记录中的I帧帧号、位置偏移、起始时间戳,可以对应地快速定位和查找到完整的视频帧序列,以方便解码。
附图说明
图1是本发明第一实施方式中一种基于云计算的海量视频文件智能分析方法的流程示意图;
图2是本发明第一实施方式中一种基于云计算的海量视频文件智能分析方法的视频数据格式示意图;
图3是本发明第二实施方式中一种基于云计算的海量视频文件智能分析方法的视频数据处理流程示意图;
图4是本发明第三实施方式中一种基于云计算的海量视频文件智能分析系统的结构示意图;
图5是本发明第五实施方式中一种基于云计算的海量视频文件存储系统的结构示意图;
图6是本发明第六实施方式中一种基于云计算的海量视频文件存储系统的结构示意图。
具体实施方式
在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
本发明第一实施方式涉及一种基于云计算的海量视频文件智能分析方法。图1是该基于云计算的海量视频文件智能分析方法的流程示意图。该基于云计算的海量视频文件智能分析方法基于分布式计算模型,该模型包括:客户端、主节点和任务节点。
如图1所示,具体地说,方法包括以下步骤:
在步骤101中,客户端查询视频文件的管理信息。
此后进入步骤102,客户端根据该管理信息对视频文件切片并生成切片信息,其中任一个切片中都包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的。
此后进入步骤103,客户端将切片信息上传给主节点。
此后进入步骤104,客户端向主节点提交作业。
此后进入步骤105,主节点将作业分解成若干个任务。
此后进入步骤106,主节点将各任务及与任务相关的切片信息分别指派给多个分布式计算的任务节点。
此后进入步骤107,各分布式计算的任务节点执行被指派的任务,根据任务相关的切片信息,获取切片。
此后进入步骤108,各分布式计算的任务节点执行被指派的任务,根据管理信息将切片分解成若干个数据块。
此后进入步骤109,各分布式计算的任务节点执行被指派的任务,对数据块分析。
此后进入步骤110,各分布式归并的任务节点从各分布式计算的任务节点获取经分析得到的元数据。
此后进入步骤111,各分布式归并的任务节点对所获取的元数据进行归并操作。
此后进入步骤112,各分布式归并的任务节点输出归并结果,此后结束本流程。
根据该管理信息对视频文件切片并生成切片信息,其中每一个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,这样一个切片方式可以保证切片精确,以使海量视频数据分析的解码完整和有效。
作为本发明的一个优选实施例,图2是该基于云计算的海量视频文件智能分析方法的视频数据格式示意图。如图2所示,在云计算系统中,每一个文件通常被分为很多个数据块分散存储在多个存储节点上的,这一点是所有的分布式存储的共性。在本发明中,为了后面的智能分析能顺利进行,在视频文件分块的时候会保证视频帧序列的完整性。在目前流行的视频编码中,视频文件是由帧序列组成,而帧序列由视频帧组成,视频帧根据类型分为I、B、P三种帧,一个帧序列里会有一个I帧和多个P、B帧。如果我们对视频进行分块的时候不考虑帧序列的边界,那么很可能一个数据块包含的帧序列是不完整的,那么对帧序列进行解码也会有问题。所以,在本发明中对视频文件进行分块的时候,会考虑视频数据的语义,划分给一个数据块的帧序列都是完整的。另外为了能够快速定位读取数据,会对I帧建立索引。索引文件记录了每一个帧序列中I帧的帧号、位置偏移、起始时间戳等信息。
本发明第二实施方式涉及一种基于云计算的海量视频文件智能分析方法。图3是该基于云计算的海量视频文件智能分析方法的流程示意图。
第二实施方式在第一实施方式的基础上进行了改进,主要改进之处在于:使用输入插件查询视频文件的管理信息和获取切片,以及通过计算插件分析视频码流,便于海量视频码流智能分析实时性能扩展和资源的有效利用,从而使各计算资源高效协调地实时分析大规模路数的视频数据流。通过索引记录中的I帧帧号、位置偏移、起始时间戳,可以对应地快速定位和查找到完整的视频帧序列,以方便解码。各分布式计算的任务节点将经过分析得到的元数据写入本地磁盘并分区,其中分区的数目与分布式归并的任务节点数目一致,可以方便各分布式归并的任务节点从对应的磁盘分区中快速获取元数据。具体地说:
切片信息包括智能分析规则。
客户端查询视频文件的管理信息的步骤,还包括以下子步骤:
客户端加载输入插件。
客户端通过输入插件查询视频文件的管理信息。
各分布式计算的任务节点获取切片的步骤,还包括以下子步骤:
各分布式计算的任务节点加载输入插件。
各分布式计算的任务节点通过输入插件获取切片。
各分布式计算的任务节点对数据块分析的步骤,还包括以下子步骤:
各分布式计算的任务节点加载计算插件。
各分布式计算的任务节点根据切片信息中的智能分析规则,通过计算插件对数据块进行分析。
在本发明的其他某些实施方式中,客户端加载的用于查询视频文件管理信息的输入插件,与各分布式计算的任务节点加载的用于获取切片的输入插件可以相同,也可以不同。
在本发明的其他某些实施方式中,也可以不使用插件,而是将相关代码直接写在主程序中。
各分布式计算的任务节点分析数据块的步骤,还包括以下子步骤:
根据预先为每个数据块中的视频帧序列建立的索引文件,查找和分析视频帧序列,该索引文件针对视频帧序列中的I帧建立索引,每个索引记录包括视频帧序列的I帧帧号、位置偏移、起始时间戳。
此外,可以理解,索引文件可针对一个数据存储节点中的每个数据块单独建立,也可以面向一个数据存储节点中的所有数据块中组合建立。
在各分布式计算的任务节点对数据块分析的步骤之后,还包括以下步骤:
各分布式计算的任务节点将经过分析得到的元数据写入本地磁盘并分区,其中分区的数目与分布式归并的任务节点数目一致。
各分布式归并的任务节点从各分布式计算的任务节点获取经分析得到的元数据的步骤,各分布式归并的任务节点对应地从各分布式计算的任务节点本地磁盘分区中拉取元数据。
此外,可以理解,在本发明的其他某些实施方式中,分区的数目与分布式归并的任务节点数目可以一致也可以不一致
作为本发明的优选实施例,如图3所示的视频数据处理流程,一个视频文件是由多个视频数据块组成,每个视频数据块包含的视频帧序列都是完整的。对一个视频文件进行分布式处理要经过如图3所示的视频数据处理流程:
1、对视频文件进行切片。在存储分块的基础上进行切片,一个或多个视频数据块被分到一个切片里面,这样一个视频文件就被分为多个切片。
2、切片被调度到多个负责计算任务的任务节点上进行图像分析运算。
3、经过图像分析运算得到的元数据写入该负责计算任务的任务节点上的本地硬盘并进行分区,分区的数目和负责归并red uce的节点数目一致。
4、负责归并任务的任务节点从各个负责计算任务的任务节点上拉取元数据。
5、负责归并任务的任务节点进行归并输出。
本发明的各方法实施方式均可以以软件、硬件、固件等方式实现。不管本发明是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable Array Logic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称“PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(Electrically Erasable Prog rammable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
本发明第三实施方式涉及一种基于云计算的海量视频文件智能分析系统。图4是该基于云计算的海量视频文件智能分析系统的结构示意图。该基于云计算的海量视频文件智能分析系统系统基于分布式计算模型,该模型包括:客户端、主节点和任务节点。
客户端,用于首先查询视频文件的管理信息,根据该管理信息对视频文件切片并生成切片信息,其中一个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,再将切片信息上传给主节点和向主节点提交作业。
主节点,用于首先将客户端指派的作业分解成若干个任务,再将各任务及与任务相关的切片信息分别指派给多个分布式计算的任务节点。
任务节点,用于分布式计算执行主节点指派的任务,首先根据任务相关的切片信息,获取切片,再根据管理信息将切片分解成若干个数据块,并对数据块分析。
任务节点,还用于分布式归并操作,首先从各分布式计算的任务节点获取经分析得到的元数据,再对所获取的元数据进行归并操作并输出。
根据该管理信息对视频文件切片并生成切片信息,其中一个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,这样一个切片方式可以保证切片精确,以使海量视频数据分析的解码完整和有效。
第一实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
本发明第四实施方式涉及一种基于云计算的海量视频文件智能分析系统。
第四实施方式在第三实施方式的基础上进行了改进,主要改进之处在于:该分析系统根据计算量来进行负载均衡,耦合图像分析的输入输出密集型和计算密集型作业特性。通过索引记录中的I帧帧号、位置偏移、起始时间戳,可以对应地快速定位和查找到完整的视频帧序列,以方便解码。各分布式计算的任务节点将经过分析得到的元数据写入本地磁盘并分区,其中分区的数目与分布式归并的任务节点数目一致,可以方便各分布式归并的任务节点从对应的磁盘分区中快速获取元数据。具体地说:
切片信息包括智能分析规则。
系统还包括:
输入插件,用于客户端查询视频文件的管理信息,或用于各分布式计算的任务节点获取切片。
计算插件,用于各分布式计算的任务节点根据切片信息中的智能分析规则对数据块进行分析。
客户端加载子模块,用于客户端加载输入插件。
任务节点加载子模块,用于各分布式计算的任务节点加载输入插件或计算插件。
此外,可以理解,在本发明的其他某些实施方式中,客户端加载的用于查询视频文件管理信息的输入插件,与各分布式计算的任务节点加载的用于获取切片的输入插件可以相同,也可以不同。
在本发明的其他某些实施方式中,也可以不使用插件,而是将相关代码直接写在主程序中。
在本发明的其他某些实施方式中,切片信息中还可以包括访问视频文件采集器访问信息和智能分析规则。以实时地获取采集器所采集的视频文件,该视频文件采集器包括数字视频录像机(Digital Video Recorder,简称“DVR”),网络摄像机,虚拟摄像机或DVR一路通道等。
系统还包括:
设置模块,用于预先每个数据块中的视频帧序列建立索引文件,该索引文件针对视频帧序列中的I帧建立索引,每个索引记录包括视频帧序列的I帧帧号、位置偏移、起始时间戳。
用于分布式计算操作的任务节点,包括以下子模块:
查找子模块,用于根据设置模块预先为每个数据块中的视频帧序列所建立的索引文件,查找视频帧序列。
分析子模块,用于分析查找子模块查找到的视频帧序列。
此外,可以理解,索引文件可针对一个数据存储节点中的每个数据块单独建立,也可以面向一个数据存储节点中的所有数据块中组合建立。
在各分布式计算的任务节点对数据块分析的步骤之后,还包括以下步骤:
各分布式计算的任务节点将经过分析得到的元数据写入本地磁盘并分区,其中分区的数目与分布式归并的任务节点数目一致。
用于分布式计算的任务节点,还包括以下子模块:
写入子模块,用于将经过分析子模块分析得到的元数据写入本地磁盘。
分区子模块,用于为写入子模块进行元数据写入的本地磁盘分区,其中分区的数目与分布式归并的任务节点数目一致。
各分布式归并的任务节点从各分布式计算的任务节点获取经分析得到的元数据的步骤,各分布式归并的任务节点对应地从各分布式计算的任务节点本地磁盘中拉取元数据。
此外,可以理解,各分布式归并的任务节点对应地从各分布式计算的任务节点本地磁盘分区中拉取元数据。
在本发明的其他某些实施方式中,分区的数目与分布式归并的任务节点数目可以一致也可以不一致。
第二实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
本发明第五实施方式涉及一种基于云计算的海量视频文件存储系统。图5是该基于云计算的海量视频文件存储系统的结构示意图。该基于云计算的海量视频文件存储系统包括:一个存储管理节点和多个数据存储节点。
数据存储节点,用于存储划分视频文件所形成的至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的。
存储管理节点,用于存储视频文件的管理信息,该管理信息包括:存储的所有视频文件的文件名,每个视频文件的数据块个数,每个数据块所在的数据存储节点,每个数据块大小,每个数据块时间段。
在存储视频文件时,将视频文件划分为至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,这样一个切片方式可以保证切片精确,以使海量视频数据分析的解码完整和有效。同时,以数据块为单位来存储视频文件,具体应用中,可以采取一路通道一个文件的存储原则进行存储,不采用hadoop中对数据进行多份冗余的机制。
此外,可以理解,当需要获取某个视频文件的视频数据时,可以先查询存储管理节点中所存储的管理信息,从而查询到该视频文件的数据块个数,每个数据块所在的数据存储节点,每个数据块大小,每个数据块时间段,再在相应的数据存储节点上获取所需要的视频文件数据块。
本发明的实现也可以借鉴云计算的分布式计算模型MapReduce进行,相关细节和实现方法可以相互参考,如客户端、主节点和任务节点可以分别为HMapReduce框架中的负责提交分布式计算请求的客户端模块HJobClient、负责计算和归并任务的分配和控制的主节点HJobTracker和负责执行某些具体的计算和归并任务的任务节点HTaskTracker。
本发明第六实施方式涉及一种基于云计算的海量视频文件存储系统。图6是该基于云计算的海量视频文件存储系统的结构示意图。
第六实施方式在第五实施方式的基础上进行了改进,主要改进之处在于:通过索引记录中的I帧帧号、位置偏移、起始时间戳,可以对应地快速定位和查找到完整的视频帧序列,以方便解码。具体地说:
数据存储节点,还用于存储索引每个数据块中视频帧序列的的索引文件,该索引文件针对视频帧序列中的I帧建立索引,每个索引记录包括视频帧序列的I帧帧号、位置偏移、起始时间戳。
作为本发明的一个优选实施例,如图6所示,从提交作业到作业完毕整个流程:
1、客户端HJobClient向存储管理节点VM查询视频文件对应的管理信息,然后根据该管理信息对视频文件进行切片。
2、客户端HJobClient将切片信息上传给主节点HJobTracker。
3、客户端HJobClient向主节点HJobTracker提交作业。
4、主节点HJobTracker向各个分布式计算任务节点HTaskTracker指派任务,各个分布式计算任务节点HTaskTracker加载输入插件InputPlugin,从数据存储节点VS中获取视频数据。
5、各个分布式归并任务节点HTaskTracker加载计算插件MapPlugin进行图像分析,分析的结果进行归并后输出。
在本发明中,分布式计算框架HMapReduce、各种插件、图像分析算法库都是基于c/c++,解决了java实现的分布式计算框架效率低下,内存不能及时释放的问题,而这正是图像分析这种IO密集型和计算密集型作业所关注的。
此外,可以理解,索引文件可针对一个数据存储节点中的每个数据块单独建立,也可以面向一个数据存储节点中的所有数据块中组合建立。
需要说明的是,本发明各设备实施方式中提到的各单元或模块都是逻辑单元或模块,在物理上,一个逻辑单元或模块可以是一个物理单元或模块,也可以是一个物理单元或模块的一部分,还可以以多个物理单元或模块的组合实现,这些逻辑单元或模块本身的物理实现方式并不是最重要的,这些逻辑单元或模块所实现的功能的组合是才解决本发明所提出的技术问题的关键。此外,为了突出本发明的创新部分,本发明上述各设备实施方式并没有将与解决本发明所提出的技术问题关系不太密切的单元或模块引入,这并不表明上述设备实施方式并不存在其它的单元或模块。
虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (6)

1.一种基于云计算的海量视频文件智能分析方法,其特征在于,所述方法基于分布式计算模型,该模型包括:客户端、主节点和任务节点; 
所述方法包括以下步骤: 
所述客户端查询视频文件的管理信息,并根据该管理信息对视频文件切片并生成切片信息,其中每个切片包含至少一个数据块,每个数据块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的; 
所述客户端将切片信息上传给所述主节点; 
所述客户端向所述主节点提交作业; 
所述主节点将所述作业分解成若干个任务,将各任务及与任务相关的切片信息分别指派给多个分布式计算的所述任务节点; 
各分布式计算的所述任务节点执行被指派的任务,根据任务相关的切片信息,获取切片,再根据管理信息将切片分解成若干个数据块,并对数据块分析; 
各分布式归并的所述任务节点从各分布式计算的所述任务节点获取经分析得到的元数据,进行归并操作后输出; 
所述切片信息包括智能分析规则; 
所述客户端查询视频文件的管理信息的步骤,还包括以下子步骤: 
所述客户端加载输入插件; 
所述客户端通过所述输入插件查询视频文件的管理信息; 
所述各分布式计算的任务节点获取切片的步骤,还包括以下子步骤: 
所述各分布式计算的任务节点加载所述输入插件; 
所述各分布式计算的任务节点通过所述输入插件获取切片; 
所述各分布式计算的任务节点对数据块分析的步骤,还包括以下子步骤: 
所述各分布式计算的任务节点加载计算插件; 
所述各分布式计算的任务节点根据所述切片信息中的智能分析规则,通过计算插件对数据块进行分析。 
2.根据权利要求1所述的基于云计算的海量视频文件智能分析方法,其特征在于,所述各分布式计算的任务节点分析数据块的步骤,还包括以下子步骤: 
根据预先为每个数据块中的视频帧序列建立的索引文件,查找和分析视频帧序列,该索引文件针对视频帧序列中的I帧建立索引,每个索引记录包括视频帧序列的I帧帧号、位置偏移和起始时间戳。 
3.根据权利要求1或2中任一项中所述的基于云计算的海量视频文件智能分析方法,其特征在于,在所述各分布式计算的任务节点对数据块分析的步骤之后,还包括以下步骤: 
各分布式计算的所述任务节点将经过分析得到的元数据写入本地磁盘并分区,其中分区的数目与分布式归并的所述任务节点数目一致; 
所述各分布式归并的任务节点从各分布式计算的任务节点获取经分析得到的元数据的步骤,各分布式归并的所述任务节点对应地从各分布式计算的所述任务节点本地磁盘分区中拉取所述元数据。 
4.一种基于云计算的海量视频文件智能分析系统,其特征在于,所述系统基于分布式计算模型,该模型包括:客户端、主节点和任务节点; 
所述客户端,用于首先查询视频文件的管理信息,根据该管理信息对视频文件切片并生成切片信息,其中每个切片包含至少一个数据块,每个数据 块包含至少一个视频帧序列,各数据块中的每一个视频帧序列都是完整的,再将切片信息上传给主节点和向主节点提交作业; 
所述主节点,用于首先将所述客户端指派的作业分解成若干个任务,再将各任务及与任务相关的切片信息分别指派给多个分布式计算的所述任务节点; 
所述任务节点,用于分布式计算执行所述主节点指派的任务,首先根据任务相关的切片信息,获取切片,再根据管理信息将切片分解成若干个数据块,并对数据块分析; 
所述任务节点,还用于分布式归并操作,首先从各分布式计算的所述任务节点获取经分析得到的元数据,再对所获取的元数据进行归并操作并输出; 
所述切片信息包括智能分析规则; 
所述系统还包括: 
输入插件,用于所述客户端查询视频文件的管理信息,或用于所述各分布式计算的任务节点获取切片; 
计算插件,用于所述各分布式计算的任务节点根据切片信息中的智能分析规则对数据块进行分析; 
客户端加载子模块,用于所述客户端加载所述输入插件; 
任务节点加载子模块,用于所述各分布式计算的任务节点加载所述输入插件或计算插件。 
5.根据权利要求4所述的基于云计算的海量视频文件智能分析系统,其特征在于,所述系统还包括: 
设置模块,用于预先每个数据块中的视频帧序列建立索引文件,该索引文件针对视频帧序列中的I帧建立索引,每个索引记录包括视频帧序列的I 帧帧号、位置偏移和起始时间戳; 
用于分布式计算操作的所述任务节点,包括以下子模块: 
查找子模块,用于根据所述设置模块预先为每个数据块中的视频帧序列所建立的索引文件,查找视频帧序列; 
分析子模块,用于分析所述查找子模块查找到的视频帧序列。 
6.根据权利要求4或5中任一项所述的基于云计算的海量视频文件智能分析系统,其特征在于,用于分布式计算的所述任务节点,还包括以下子模块: 
写入子模块,用于将经过所述分析子模块分析得到的元数据写入本地磁盘; 
分区子模块,用于为所述写入子模块进行元数据写入的本地磁盘分区,其中分区的数目与分布式归并的所述任务节点数目一致。 
CN201210073197.2A 2012-03-19 2012-03-19 基于云计算的海量视频文件存储系统、分析方法及其系统 Active CN102663005B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210073197.2A CN102663005B (zh) 2012-03-19 2012-03-19 基于云计算的海量视频文件存储系统、分析方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210073197.2A CN102663005B (zh) 2012-03-19 2012-03-19 基于云计算的海量视频文件存储系统、分析方法及其系统

Publications (2)

Publication Number Publication Date
CN102663005A CN102663005A (zh) 2012-09-12
CN102663005B true CN102663005B (zh) 2014-03-26

Family

ID=46772496

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210073197.2A Active CN102663005B (zh) 2012-03-19 2012-03-19 基于云计算的海量视频文件存储系统、分析方法及其系统

Country Status (1)

Country Link
CN (1) CN102663005B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102883145A (zh) * 2012-09-28 2013-01-16 安科智慧城市技术(中国)有限公司 一种动态对象识别方法及系统
CN103002264B (zh) * 2012-10-12 2016-06-08 浙江宇视科技有限公司 实现录像切片的方法、客户端设备和服务端设备
CN104581423A (zh) * 2013-10-12 2015-04-29 北京航天长峰科技工业集团有限公司 一种海量视频智能分析系统的综合调度和负载均衡方法
CN103780877A (zh) * 2013-12-26 2014-05-07 深圳市华仁达技术有限公司 基于h264编码的海量视频数据的存储及检索方法
CN104809114A (zh) * 2014-01-24 2015-07-29 北京仿真中心 一种面向视频大数据的并行数据挖掘方法
CN104410821B (zh) * 2014-11-25 2017-10-20 深圳市信义科技有限公司 一种大规模智能视频分析运算系统以及运算方法
CN105808546A (zh) * 2014-12-30 2016-07-27 中国电信股份有限公司 一种视频文件索引管理平台、系统及其方法
CN105847825A (zh) 2015-01-16 2016-08-10 杭州海康威视数字技术股份有限公司 视频编码码流的编码、索引存储和访问方法及相应装置
CN104581149B (zh) * 2015-01-27 2017-08-08 北京正奇联讯科技有限公司 视音频文件的技审方法和系统
CN104850576B (zh) * 2015-03-02 2018-07-24 武汉烽火众智数字技术有限责任公司 一种基于海量视频的快速特征提取系统
CN106257447B (zh) * 2015-06-17 2019-11-26 杭州海康威视系统技术有限公司 云存储服务器的视频存储及检索方法、视频云存储系统
CN105100716B (zh) * 2015-07-23 2018-09-18 浙江立元通信技术股份有限公司 一种用于网络视频监控的安全存储单元及其系统
CN105530534B (zh) * 2015-12-18 2018-12-21 无锡天脉聚源传媒科技有限公司 一种视频剪辑的方法和装置
CN106656525B (zh) * 2016-09-21 2019-12-24 华为技术有限公司 一种数据广播系统、数据广播方法及设备
CN106534344B (zh) * 2016-12-07 2020-02-07 高新兴科技集团股份有限公司 一种云平台视频处理系统及其应用方法
CN106686108A (zh) * 2017-01-13 2017-05-17 中电科新型智慧城市研究院有限公司 一种基于分布式检测技术的视频监控方法
CN107844402A (zh) * 2017-11-17 2018-03-27 北京联想超融合科技有限公司 一种基于超融合存储系统的资源监控方法、装置及终端
CN110244904B (zh) * 2018-03-09 2020-08-28 杭州海康威视系统技术有限公司 一种数据存储系统、方法及装置
CN109246487B (zh) * 2018-08-17 2021-09-03 上海悠络客电子科技股份有限公司 一种智能调度系统
CN109086457B (zh) * 2018-09-05 2022-03-29 华南理工大学 一种分布式视频帧随机读取的元数据服务系统及工作方法
CN111400405B (zh) * 2020-03-30 2021-04-02 兰州交通大学 一种基于分布式的监控视频数据并行处理系统及方法
CN113742518A (zh) * 2020-05-28 2021-12-03 伊姆西Ip控股有限责任公司 存储和提供视频的方法、设备和计算机程序产品

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1195274C (zh) * 2003-01-25 2005-03-30 华中科技大学 基于集群视频服务器的节目源分片分布式存储方法
US9495427B2 (en) * 2010-06-04 2016-11-15 Yale University Processing of data using a database system in communication with a data processing framework

Also Published As

Publication number Publication date
CN102663005A (zh) 2012-09-12

Similar Documents

Publication Publication Date Title
CN102663005B (zh) 基于云计算的海量视频文件存储系统、分析方法及其系统
CN102638456A (zh) 基于云计算的海量实时视频码流智能分析方法及其系统
US10229141B2 (en) Parallel load in a column-store database
US9053067B2 (en) Distributed data scalable adaptive map-reduce framework
US20170177597A1 (en) Biological data systems
US8321476B2 (en) Method and system for determining boundary values dynamically defining key value bounds of two or more disjoint subsets of sort run-based parallel processing of data from databases
WO2023005771A1 (zh) 轨迹查询方法、设备、存储介质及计算机程序产品
US20190236403A1 (en) Systems and Methods for Converting Massive Point Cloud Datasets to a Hierarchical Storage Format
CN103109293A (zh) 一种用户行为处理系统及方法
CN106648839B (zh) 数据处理的方法和装置
KR20150056266A (ko) 공장 운영 관리용 정형 및 비정형의 빅데이터 엔진 및 처리 방법
CN106354587A (zh) 镜像服务器以及导出虚拟机镜像文件的方法
KR20150056258A (ko) 생산성을 향상시킬 수 있는 정형 및 비정형의 빅데이터 엔진 및 처리 방법
CN104951442A (zh) 一种确定结果向量的方法和装置
AU2020101071A4 (en) A Parallel Association Mining Algorithm for Analyzing Passenger Travel Characteristics
CN111796917A (zh) 算子运算调度方法和装置
Li et al. Survey of recent research progress and issues in big data
CN110109751B (zh) 分布式切图任务的分配方法、装置及分布式切图系统
KR101730508B1 (ko) 스파크 스트리밍 기반 클라우드 서버에서 선별적 i/o 요청 처리 방법 및 장치
JP5655764B2 (ja) サンプリング装置、サンプリングプログラム、およびその方法
Ketu et al. Performance enhancement of distributed K-Means clustering for big Data analytics through in-memory computation
Huang et al. A novel compression algorithm decision method for spark shuffle process
CA3210417A1 (en) Data pipeline
Ahmed et al. Using iterative MapReduce for parallel virtual screening
CN109597795B (zh) 一种路基压实施工数据高效处理系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: HANGZHOU HIKIVISION SYSTEM TECHNOLOGY CO., LTD.

Effective date: 20130718

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20130718

Address after: Hangzhou City, Zhejiang province 310051 Binjiang District East Road Haikang Science Park No. 700, No. 1

Applicant after: Hangzhou Hikvision Digital Technology Co., Ltd.

Address before: Hangzhou City, Zhejiang province 310051 Binjiang District East Road Haikang Science Park No. 700, No. 1

Applicant before: Hangzhou Hikivision System Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant