一种大规模视频帧数据抽取系统及方法与流程

文档序号:35201705发布日期:2023-08-22 07:21阅读:32来源:国知局
一种大规模视频帧数据抽取系统及方法与流程

本发明涉及数据抽取储存,尤其涉及一种大规模视频帧数据抽取系统及方法。


背景技术:

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

2、然而,如何从分布在多个校区内的数千个摄像头中实时抽取图像,并存储到大数据平台中是一个难题。视频数据由于数据量大,往往难以进行大规模的分析,相比于直接分析视频,分析从视频中抽取的视频帧是可行的方案。从大规模视频中抽取视频帧是一个计算密集型任务,也是网络带宽密集型任务。目前传统通用的做法是,从每一路视频直播流中抓取视频帧,但仅对关键帧进行解码和存储操作,丢弃非关键帧,这就是所谓的跳帧法。这样做可以大幅度降低cpu和网络带宽消耗量,但在面对具有数千路视频的大规模视频帧抽取任务时,单纯地使用跳帧法仍显得力不从心,特别是当需要跨网段传输大量视频帧时,网络带宽会成为瓶颈。


技术实现思路

1、基于背景技术存在的技术问题,本发明提出了一种大规模视频帧数据抽取系统及方法,大幅提高了系统资源和网络带宽的利用率,减少冗余数据,从而大幅度减少需要部署的抽帧服务器数量,降低了学情分析系统的建设成本。

2、本发明提出的一种大规模视频帧数据抽取系统及方法,包括抽取器、队列、收集器和上传器;

3、抽取器用于抽取一路视频流中的视频帧,并将所得到的视频帧解码过滤后输送到队列中;

4、收集器用于以固定的频率从队列中取出所有的视频帧,对视频帧进行分批打包得到多个数据包;

5、上传器用于将收集器的数据包上传到存储系统中,以进行储存。

6、进一步地,抽取系统包括多个抽取器、一个队列、一个收集器和多个上传器;

7、每个抽取器用于抽取一路视频流中的视频帧,并将所得到的视频帧解码过滤后输送到队列中;

8、每个上传器用于将收集器的一个数据包上传到存储系统中,以进行储存。

9、进一步地,所述队列中存放的视频帧命名方式为<摄像头id>.jpg,队列的长度设置为所需抽取视频帧的视频流个数;视频帧入队过程中,若队列已满或者队列中已存在同名视频帧文件则该视频帧自行丢弃。

10、进一步地,抽取器具体用于如下操作:

11、(a1)抓取一路视频流中的视频帧,判断是否是关键帧若是则进入(a2),若否则进入(a8);

12、(a2)对关键帧进行解码,将当前解码后关键帧对应的当前时间与最近一次解码后关键帧对应的入队时间进行差值,得到差值δt,若δt大于等于设定时间阈值,则进入(a3),若δt小于设定时间阈值,则进入(a5);

13、(a3)抽取器需抽取一路视频流中的视频帧,得到队列锁,判断队列是否未满且无重名,若是则进入(a4),若否则释放队列锁后进入(a8);

14、(a4)释放队列锁并入队列,记录最近入队时间并储存最近入队图像;

15、(a5)判断摄像头是否位于室内,若不是则进入(a6),若是则进入(a7);

16、(a6)计算直方图相似度s1,判断s1是否小于像素阈值1,若是则进入(a3),若不是则进入(a8);

17、(a7)计算像素相似度s2,判断s2是否小于像素阈值2,若是则进入(a3),若不是则进入(a8);

18、(a8)丢弃所抓取的视频帧。

19、进一步地,在(a6)计算直方图相似度s1中,具体如下:

20、将当前图像和最近一次入队图像lf的长和宽分别缩小十分之一,使用线性插值法以消除摄像头轻微抖动造成的误差;缩小后的图像长度记为l,宽度记为w;

21、将两幅图像转换为灰度图,每个像素值的取值范围是[0,255];

22、逐个像素统计,两幅图像相同位置像素值差值的绝对值大于10的像素个数a;

23、计算像素相似度s1=a/(lw)。

24、进一步地,在(a7)计算像素相似度s2中,具体如下:

25、将两幅图像都切成均匀的9宫格得到多个切片图像,两幅每个切片图像的尺寸相同,长度记为l,宽度记为w;

26、将两幅图像对应同位置的切片图像转换为灰度图,每个像素值的取值范围是[0,255];

27、对两幅灰度图分别统计[0,255]范围内256个像素值对应的像素点个数,得到两个直方图;

28、计算两个直方图在[0,255]范围内,统计各个像素值对应的像素点个数差值的绝对值大于l*w/256的像素值个数b;

29、计算切片图像的直方图相似度sij=b/256,进而得到两幅图像的像素相似度s2。

30、进一步地,收集器采用文件字节流拼接方式将多个视频帧合并为一个待上传的数据包;待上传的数据包文件由文件头和文件体组成,文件头的前四个字节是一个int值,指定待上传的数据包中视频帧的个数,随后是n×3个int值,每三个为一组,分别指定各个视频帧文件对应的摄像头id、视频帧数据的起始字节位置和结束字节位置。

31、进一步地,上传器通过调用存储系统提供的web接口将数据包上传。

32、一种大规模视频帧数据抽取方法,包括:

33、收集器以固定的频率从队列中取出所有的视频帧,对视频帧进行分批打包得到多个数据包,将多个数据包通过上传器上传到存储系统中,以进行储存,所述队列中的视频帧是抽取器抽取一路视频流中的视频帧,并将所得到的视频帧解码过滤后输送到队列得到。

34、进一步地,基于多个抽取器、一个队列、一个收集器和多个上传器,抽取方法具体包括:

35、一个收集器以固定的频率从一个队列中取出所有的视频帧,对视频帧进行分批打包得到多个数据包,将多个数据包分别通过多个上传器上传到存储系统中,以进行储存,所述队列中的视频帧是多个抽取器分别抽取多路视频流中的视频帧,并将所得到的视频帧解码过滤后输送到队列得到。

36、本发明提供的一种大规模视频帧数据抽取系统及方法的优点在于:本发明结构中提供的一种大规模视频帧数据抽取系统及方法,使用了流水线处理结构对大量视频流进行并行抽帧,并使用了精细化的帧抽取流程剔除了对后台分析算法价值较低的视频帧,大幅提高了系统资源和网络带宽的利用率,减少冗余数据,从而大幅度减少需要部署的抽帧服务器数量,可以将推送服务器的数量缩减到原先的五分之一左右,降低了学情分析系统的建设成本。



技术特征:

1.一种大规模视频帧数据抽取系统,其特征在于,包括抽取器、队列、收集器和上传器;

2.根据权利要求1所述的大规模视频帧数据抽取系统,其特征在于,抽取系统包括多个抽取器、一个队列、一个收集器和多个上传器;

3.根据权利要求1所述的大规模视频帧数据抽取系统,其特征在于,所述队列中存放的视频帧命名方式为<摄像头id>.jpg,队列的长度设置为所需抽取视频帧的视频流个数;

4.根据权利要求1所述的大规模视频帧数据抽取系统,其特征在于,抽取器具体用于如下操作:

5.根据权利要求4所述的大规模视频帧数据抽取系统,其特征在于,在(a6)计算直方图相似度s1中,具体如下:

6.根据权利要求4所述的大规模视频帧数据抽取系统,其特征在于,在(a7)计算像素相似度s2中,具体如下:

7.根据权利要求1所述的大规模视频帧数据抽取系统,其特征在于,收集器采用文件字节流拼接方式将多个视频帧合并为一个待上传的数据包;待上传的数据包文件由文件头和文件体组成,文件头的前四个字节是一个int值,指定待上传的数据包中视频帧的个数,随后是n×3个int值,每三个为一组,分别指定各个视频帧文件对应的摄像头id、该组视频帧数据的起始字节位置和结束字节位置。

8.根据权利要求1所述的大规模视频帧数据抽取系统,其特征在于,上传器通过调用存储系统提供的web接口将数据包上传。

9.一种大规模视频帧数据抽取方法,其特征在于,包括:

10.根据权利要求9所述的大规模视频帧数据抽取方法,其特征在于,基于多个抽取器、一个队列、一个收集器和多个上传器,抽取方法具体包括:


技术总结
本发明公开了一种大规模视频帧数据抽取系统及方法,包括抽取器、队列、收集器和上传器;抽取器用于抽取一路视频流中的视频帧,并将所得到的视频帧解码过滤后输送到队列中;收集器用于以固定的频率从队列中取出所有的视频帧,对视频帧进行分批打包得到多个数据包;上传器用于将收集器的数据包上传到存储系统中,以进行储存;该抽取系统和方法大幅提高了系统资源和网络带宽的利用率,减少冗余数据,从而大幅度减少需要部署的抽帧服务器数量,降低了学情分析系统的建设成本。

技术研发人员:张兰,曹长虎
受保护的技术使用者:合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室)
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1