一种智慧城市视频数据的数据更新存储方法及系统
技术领域
本发明涉及数据存储领域,更具体地说,涉及一种智慧城市视频数据的数据更新存储方法及系统。
背景技术
智慧型城市是未来城市的发展趋势,构建智慧城市需要使用大量视频摄像头,基于这些视频摄像头拍摄的视频图像进行存储与处理,实现城市的智能化。在现有架构中,视频数据采集层负责采集数据,视频数据存储层负责将视频数据采集层的数据进行存储,这些视频数据往往保存在服务器上,由于服务器上的存储空间大小固定,因此这些视频摄像头的视频监控数据保存的天数有一个上限(记为T天,例如30天),该上限天数数值与分配给该视频摄像头的存储空间有关。当存储空间写满数据后,一般的数据处理方式是利用新的视频数据更覆盖更新之前的视频数据,例如可以是T天以前的视频数据,即将视频数据进行“环形”更新。但是对于智慧型城市的建设而言,往往希望在有限的存储空间内保存下来越长时间段内的视频数据越好。因此在假设存储空间不变的情况下,如何提高保存天数的上限,目前没有太多的研究和高效的办法。
发明内容
本发明要解决的技术问题在于,针对上述的现在还没有较好的办法在不增加单个视频摄像头存储空间总量的基础上,延长视频保存的天数的技术缺陷,提供了一种智慧城市视频数据的数据更新存储方法及系统。
根据本发明的其中一方面,本发明为解决其技术问题,提供了一种智慧城市视频数据的数据更新存储系统,包含:
视频数据采集层,用于采集各个摄像头的视频数据;
视频数据存储层,用于实现数据存储区上视频数据采集层采集的视频数据写入的控制;其中,数据存储区被划分主存储空间和备份存储空间,主存储空间用于存储最近时间段内的视频数据;
数据更新存储控制层,位于视频数据采集层与视频数据存储层之间,包含如下子层:
数据分段处理子层,用于将主存储空间中将被更新掉的存储数据进行分段,分段为根据时间段进行划分而得到对应的视频分段;
数据选择复制子层,用于按照预设规则选取视频分段中的数据,并将选取的数据复制到位于备份存储空间内的对应备份空间内进行存储。
在本发明的数据更新存储系统中,所述时间分段具体为:
根据定制划分时间段:S[i+1]=s,i=0,1,2,...,MAX-1,MAX为偶数;或,
根据比例划分时间段:S[i+1]=k*S[i],S[1]=s,i=1,2,...,MAX-1;或,
根据指数增长划分时间段:S[i+1]=2i*S[i],S[1]=s,i=1,2,...,MAX-1;或,
根据帧差分析划分时间段,具体包括下述步骤:
S1、判断一段时长的视频段的首帧与尾帧的帧差F是否大于阈值,若是则执行步骤S2,否则执行步骤S3;
S2、利用尾帧将视频数据划分为不同的视频分段;
S3、以尾帧作为起点,每次在尾帧之后延长预设时长,直至延长后的视频段的尾帧与首帧的帧差F大于阈值,以最终的尾帧将视频数据划分为不同的视频分段;
S4、最终的尾帧作为新的首帧,重复步骤S1-S3,直至所有的时间段被分段完毕。
其中,s为预设的时间间隔,S[i]表示第i个时间分段,MAX时间分段的总段数,且为偶数,k为预设值。
在本发明的数据更新存储系统中,所述按照预设规则选取视频分段中的数据的具体选取方法为:
选取一个或者多个视频分段,将选取的一个或者多个视频分段的全部数据作为最终被选取的数据;或,
选取一个或者多个视频分段,再从选取每个视频分段中分别选取部分数据作为最终被选取的数据。
在本发明的数据更新存储系统中,所述选取一个或者多个视频分段通过以下方式中的一种或多种选取得到:
生成1到MAX中随机数r,然后选取P[r]作为被选取的视频分段;
选取P[1]或P[MAX]或P[MAX/2]作为被选取的视频分段;
将帧差分析产生的MAX个视频片段的视频封面作为被选取的视频分段;
其中,P[i]为与第i个时间分段对应的视频分段,i=1,2,...,MAX,MAX时间分段的总段数。
在本发明的数据更新存储系统中,所述数据更新存储控制层还用于控制主存储空间以让最新的视频数据替换位于主存储空间内的最早的视频数据,以及用于控制备份存储空间以让将按照预设规则选取的视频分段中的数据替换位于备份存储空间内的最早的视频数据。
本发明为解决其技术问题,还提供了一种智慧城市视频数据的数据更新存储方法,包含:
视频数据采集步骤:采集各个摄像头的视频数据;
视频数据存储步骤:控制数据存储区上视频数据采集步骤采集的视频数据的写入;其中,数据存储区被划分主存储空间和备份存储空间,主存储空间用于存储最近时间段内的视频数据;
数据更新存储控制步骤,位于视频数据采集步骤与视频数据存储步骤之间,包含如下子步骤:
数据分段处理子步骤:将主存储空间中将被更新掉的存储数据进行分段,分段为根据时间段进行划分而得到对应的视频分段;
数据选择复制子步骤:按照预设规则选取视频分段中的数据,并将选取的数据复制到位于备份存储空间内的对应备份空间内进行存储。
在本发明的数据更新存储方法中,所述时间分段具体为:
根据定制划分时间段:S[i+1]=s,i=0,1,2,...,MAX-1,MAX为偶数;或,
根据比例划分时间段:S[i+1]=k*S[i],S[1]=s,i=1,2,...,MAX-1;或,
根据指数增长划分时间段:S[i+1]=2i*S[i],S[1]=s,i=1,2,...,MAX-1;或,
根据帧差分析划分时间段,具体包括下述步骤:
S1、判断一段时长的视频段的首帧与尾帧的帧差F是否大于阈值,若是则执行步骤S2,否则执行步骤S3;
S2、利用尾帧将视频数据划分为不同的视频分段;
S3、以尾帧作为起点,每次在尾帧之后延长预设时长,直至延长后的视频段的尾帧与首帧的帧差F大于阈值,以最终的尾帧将视频数据划分为不同的视频分段;
S4、最终的尾帧作为新的首帧,重复步骤S1-S3,直至所有的时间段被分段完毕。
其中,s为预设的时间间隔,S[i]表示第i个时间分段,MAX时间分段的总段数,且为偶数,k为预设值。
在本发明的数据更新存储方法中,所述按照预设规则选取视频分段中的数据的具体选取方法为:
选取一个或者多个视频分段,将选取的一个或者多个视频分段的全部数据作为最终被选取的数据;或,
选取一个或者多个视频分段,再从选取每个视频分段中分别选取部分数据作为最终被选取的数据。
在本发明的数据更新存储方法中,所述选取一个或者多个视频分段通过以下方式中的一种或多种选取得到:
生成1到MAX中随机数r,然后选取P[r]作为被选取的视频分段;
选取P[1]或P[MAX]或P[MAX/2]作为被选取的视频分段;
将帧差分析产生的MAX个视频片段的视频封面作为被选取的视频分段;
其中,P[i]为与第i个时间分段对应的视频分段,i=1,2,...,MAX,MAX时间分段的总段数。
在本发明的数据更新存储方法中,数据更新存储控制步骤还包括步骤:控制主存储空间以让最新的视频数据替换位于主存储空间内的最早的视频数据,以及控制备份存储空间以让将按照预设规则选取的视频分段中的数据替换位于备份存储空间内的最早的视频数据。
实施本发明的智慧城市视频数据的数据更新存储方法及系统,在存储空间总量不变的情况下,通过主存储空间保存预设时间之内的视频数据,通过备份存储空间,保存部分预设时间以前关键数据的方法,从而延长了保存数据的总时长。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明的智慧城市视频数据的数据更新存储方法的一优选实施例的流程图;
图2是本发明的智慧城市视频数据的数据更新存储系统的原理框图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
如图1所示,其为本发明的智慧城市视频数据的数据更新存储方法的一优选实施例的流程图。在本实施例的数据更新存储方法中,具有视频数据采集步骤、视频数据存储步骤以及数据更新存储控制步骤,视频数据采集步骤以及视频数据存储步骤属于现有框架。视频数据采集步骤主要是采集城市中各个与本系统相关的摄像头的视频数据;视频数据存储步骤主要是控制实现数据存储区上视频数据写入,用户调用视频数据时,也进行数据的读取的控制,但在本发明中数据存储区被划分主存储空间和备份存储空间,主存储空间用于存储最近时间段内的视频数据,备份存储空间用于存储上述最近时间段内之前的一段时间内的数据,两个区间的划分采用下述方式进行:从数据存储区划分出预设大小的存储空间作为备份存储空间,其余部分作为主存储空间,或从数据存储区划分出预设比例的存储空间作为备份存储空间,其余部分作为主存储空间。应当理解的是,本发明的数据存储区是指用于存储智慧城市视频数据的存储区域。
本发明的在现有框架的视频数据采集步骤与视频数据存储步骤之间加入数据更新存储控制步骤,数据更新存储控制步骤要完成的功能通过下述各子步骤完成。
数据分段处理子步骤:将主存储空间中将被更新掉的存储数据进行分段,分段为根据时间段进行划分。如:主存储空间存储的最大时长为20天视频数据,第21天的视频数据要记录到主存储空间时,第1天的视频数据将会被覆盖掉,此时将第1天的视频数据按照时间段进行划分,本实施例中按照定制划分,每分钟作为一个时间段,则第一天共被划分为1440时间段(以摄像头全天候工作为例),分别记作S[1]、S[2]、…、S[MAX],MAX=1440。在本发明的另一些实施例中,时间分段还可以采用下述方式进行划分。时间段的划分可以采用下述方式进行:
根据比例划分时间段:S[i+1]=k*S[i],S[1]=s,i=1,2,...,MAX-1;或,
根据指数增长划分时间段:S[i+1]=2i*S[i],S[1]=s,i=1,2,...,MAX-1;或,
根据帧差分析划分时间段:
S1、判断一段时长的视频段的首帧与尾帧的帧差F(帧间差异度)是否大于阈值,若是则执行步骤S2,否则执行步骤S3;
S2、利用尾帧将视频数据划分为不同的视频分段;
S3、以尾帧作为起点,每次在尾帧之后延长预设时长,直至延长后的视频段的尾帧与首帧的帧差F大于阈值,以最终的尾帧将视频数据划分为不同的视频分段;
S4、最终的尾帧作为新的首帧,重复步骤S1-S3,直至所有的时间段被分段完毕。
其中,s为预设的时间间隔,S[i]表示第i个时间分段,MAX时间分段的总段数,且为偶数,k为预设值。
按时间分段划分后,每个时间分段对应的一个该时间段内的视频分段,视频分段记作P[1]、P[2]、…、P[MAX]。
数据选择复制子步骤:按照预设规则选取视频分段中的数据,并将选取的数据复制到位于备份存储空间内的对应备份空间内进行存储。复制的数据在备份存储空间中替换备份存储空间中最早的视频数据。按照预设规则选取视频分段中的数据的具体选取方法为:选取一个或者多个视频分段,将选取的一个或者多个视频分段的全部数据作为最终被选取的数据;或,选取一个或者多个视频分段,再从选取每个视频分段中分别选取部分数据作为最终被选取的数据。应当理解是的,选取数据应当是选取部分数据,而不是全部。
其中,选取一个或者多个视频分段采用下述一种或者多种方式选取:
生成1到MAX中随机数r,然后选取P[r]作为被选取的视频分段;
选取P[1]或P[MAX]或P[MAX/2]作为被选取的视频分段;
根据帧差分析产生的MAX个视频片段的视频封面作为被选取的视频分段;
其中,P[i]为与第i个时间分段对应的视频分段,i=1,2,...,MAX。
通俗的理解,即可以选取某一个视频分段的部分数据,或多个视频分段的部分数据,或每一视频分段的部分数据,例如选取第i个时间分段对应的视频分段的部分数据进行复制,或选择第i个时间分段对应的视频分段的部分数据和第j个时间分段对应的视频分段的部分数据一起复制,或在每一视频分段中选部分数据,并将每一视频分段中所选的部分数据进行复制。
在本实施例中,数据更新存储控制步骤还包括子步骤:控制主存储空间以最新的视频数据替换位于主存储空间内的最早的视频数据,即主存储空间存储的一直为最近时间段内的视频数据。
参考图2,其为本发明的智慧城市视频数据的数据更新存储系统的原理框图。本发明的数据更新存储系统包含视频数据采集层1、视频数据存储层3以及位于视频数据采集层与视频数据存储层之间的数据更新存储控制层2。视频数据采集层1用于采集各个摄像头的视频数据,视频数据存储层3用于实现数据存储区上视频数据写入的控制;其中,数据存储区被划分主存储空间和备份存储空间,主存储空间用于存储最近时间段内的视频数据;数据更新存储控制层2包含数据分段处理子层21以及数据选择复制子层22。时间分段划分子层21用于将主存储空间中将被更新掉的存储数据进行分段,分段为根据时间段进行划分而得到对应的视频分段,数据选择复制子层22用于按照预设规则选取视频分段中的数据,并将选取的数据复制到位于备份存储空间内的对应备份空间内进行存储。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。