一种大规模视频帧储存系统、设备和储存介质的制作方法

文档序号:35415630发布日期:2023-09-10 02:17阅读:29来源:国知局
一种大规模视频帧储存系统、设备和储存介质的制作方法

本发明涉及视频储存,尤其涉及一种大规模视频帧储存系统、设备和储存介质。


背景技术:

1、学情分析系统旨在对高校校园内数千路摄像头的视频监控数据进行大范围、长周期的分析与数据挖掘,从而发现一些潜在的规律,帮助校方管理人员深入地了解学校的教育教学状况。例如,学生画像功能可以帮助校方了解学生的心理状态、异常行为分析功能能够及时发现各类安全风险并发出告警、安防分析功能可以提供详细的实时分析数据,包括:人员分布、行走轨迹、车辆追踪等。

2、以1000路摄像头为例,每秒抽取一帧关键帧图像作为分析算法的输入,一天内需要入库的帧文件数量是8640万个,一年内需要存储的帧文件数量是315亿个。单个视频帧文件数据量平均100kb左右,一年总数据存储量约为3pb。学情分析算法需要频繁地从存储系统中获取某些视频帧数据,并将其下载到本地,然后进行分析,因此对存储系统的访问速度也提出了较高的要求,现有的做法是使用大规模存储集群,对于具有1000路摄像头规模的学情分析系统,至少需要100台服务器规模的存储集群,成本极高。

3、因而由于视频数据量大,要做到数千路视频数据的长周期分析与数据挖掘必须解决海量数据存储与快速访问的难题。目前市面上并无解决这一问题的成熟方案。


技术实现思路

1、基于背景技术存在的技术问题,本发明提出了一种大规模视频帧储存系统、设备和储存介质,在保证系统性能不变的条件下减少系统中的元数据量,大幅缩减存储集群的规模,从而降低系统的建设成本。

2、本发明提出的一种大规模视频帧储存系统,包括一级存储区、临时存储区、二级存储区和永久存储区;一级存储区对所获取的视频帧实时储存,并基于一级存储区中储存的视频帧进行实时数据分析;临时存储区接收一级存储区中过期的视频帧;二级存储区接收临时存储区的批次视频帧包,并从临时存储区中删除该批次视频帧包,所述批次视频帧包为每隔设定时间对临时存储区中过期的视频帧进行合并压缩后的压缩包;永久存储区用于储存长周期数据分析结果,所述长周期数据分析结果通过抽取所述二级存储区中储存的部分视频帧分析得到。

3、进一步地,基于yarn批处理程序对临时存储区中过期的视频帧进行合并压缩,将合并压缩后的批次视频帧包输送到二级存储区,yarn批处理程序对视频帧的合并过程具体如下:

4、在yarn集群上运行mapreduce程序,基于yarn集群中单个服务器配置的内存大小和cpu核心数量,根据待合并的视频帧数据文件的数据量,由yarn集群向一至多个服务器动态分配计算资源,每个服务器生成一个数据文件和一个索引信息;

5、将数据文件和索引文件储存于二级存储区中特定的路径下,在map的过程中完成视频帧文件数据的读取,在reduce过程中完成数据文件的合并和索引信息的收集,得到合并压缩包,合并压缩包中包含一个索引文件和多个数据文件,所述索引文件中记录了该压缩包中的视频帧文件覆盖的时间戳,各个时间戳对应目录下的视频帧文件,以及各视频帧文件的数据内容在数据文件中的位置,所述数据文件是多个视频帧文件的二进制字节流简单拼接得到的文件;

6、将合并压缩包命名方式为:<起始时间戳>-<结束时间戳>,并将合并压缩包作为批次视频帧包,其中起始时间戳是本批合并的视频帧文件的生成时间的最小值,结束时间戳是本批合并的视频帧文件的生成时间的最大值。

7、进一步地,在reduce过程中完成数据文件的合并和索引信息的收集中,具体包括:

8、reduce过程的返回值包括部分视频帧文件拼接成的字节数组和索引表;

9、在reduce的遍历过程中,视频帧文件被逐步合并到字节数组中,索引表逐渐增大,reduce执行完毕后,将字节数组保存为数据文件,将索引表保存为索引文件。

10、进一步地,基于中间程序文件抽取所述二级存储区中储存的部分视频帧以进行长周期数据分析,中间程序文件对部分视频帧的抽取过程具体如下:

11、二级储存区中储存的批次视频帧包以<起始时间戳>-<结束时间戳>命名;

12、获取二级存储区中所有子目录列表,并按照起始时间戳从小到大进行排序;

13、遍历该排序后的子目录列表,找到满足任一项时间条件的批次视频帧包,并将满足时间条件的批次视频帧包的目录名写入一个视频列表中;

14、扫描所述视频列表中各批次视频帧包中的索引文件,找到长周期数据分析所需的各历史视频帧文件对应的摄像头编号、数据文件路径和偏移量,写入待下载列表,所述偏移量包括起始位置和结束位置;

15、根据摄像头编号、数据文件路径和偏移量,从二级存储区中下载视频帧数据文件;

16、将下载到的视频帧数据文件保存到调用者本地磁盘目录中,文件后缀名为.jpg;

17、基于本地磁盘中储存的历史视频帧文件进行长周期数据分析,使用完毕后自行删除。

18、进一步地,在扫描所述视频列表中各批次视频帧包中的索引文件,找到长周期数据分析所需的各历史视频帧文件对应的摄像头编号、数据文件路径和偏移量,写入待下载列表中,找到长周期数据分析所需的各历史视频帧文件对应的摄像头编号、数据文件路径和偏移量,具体包括如下:

19、针对某个批次视频帧包,将该批次视频帧包对应的索引文件读入内存,得到内存形式的索引表;

20、遍历所述索引表中各个数据文件的描述信息,如果数据文件的描述信息对应的历史视频帧的生成时间在长周期数据分析的查询范围内,且对应的摄像头编号也在所述视频列表中,则找到长周期数据分析所需的某一历史视频帧文件;

21、获取所述批次视频帧包文件描述信息中对应的摄像头编号、数据文件路径和偏移量,并写入待下载列表中;

22、遍历视频列表中的批次视频帧包,得到长周期数据分析所需的各历史视频帧文件对应的摄像头编号、数据文件路径和偏移量。

23、进一步地,所述时间条件包括:a1)起始时间小于等于查询时间下限,且结束时间大于等于查询时间下限;a2)起始时间大于等于查询时间下限,且结束时间小于等于查询时间上限;a3)起始时间小于等于查询时间上限,且结束时间大于等于查询时间上限。

24、一种大规模视频帧储存设备,所述视频帧储存设备包括储存器、处理器及储存在储存器上并可在所述处理器上运行的视频帧储存程序,所述视频帧储存程序配置一级存储区、临时存储区、二级存储区和永久存储区用于实现如上所述的大规模视频帧储存系统。

25、一种计算机可读储存介质,所述计算机可读储存介质上存储有若干分类程序,所述若干分类程序用于被处理器调用并执行如上所述的大规模视频帧储存系统。

26、本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

27、本发明提供的一种大规模视频帧储存系统、设备和储存介质的优点在于:本发明结构中提供的一种大规模视频帧储存系统、设备和储存介质,与现有技术相比,本发明提出的大规模视频帧储存系统通过引入数据合并与抽取机制,大幅度缩减了需要维护的元数据量,从而可以将存储系统的硬件集群规模降低到原先的四分之一左右,降低了学情分析系统的建设成本。

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