首页 / 专利分类库 / 本部其他类目中不包括的技术主题 / 一种监控数据的处理方法及系统

一种监控数据的处理方法及系统

申请号 CN201580000199.0 申请日 2015-07-14 公开(公告)号 CN105517674A 公开(公告)日 2016-04-20
申请人 深圳市锐明技术股份有限公司; 发明人 刘文涛; 王斌;
摘要 本 发明 适用于视频监控技术领域,提供了一种监控数据的处理方法及系统,所述监控数据为基于H264编码的视频码流,所述方法包括:获取视频码流;将所述视频码流中的参考 帧 依次加入参考帧队列,并写入参考帧存储 块 ,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块;释放保存期超过预设时间 阈值 的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧。本发明通过将参考帧和非参考帧分块存储,能够节省存储空间;通过在存储空间不足时,优先释非参考帧数据块,使得用户依然可通过保留的参考帧来查看过保存期的监控视频。
权利要求

1.一种监控数据的处理方法,所述监控数据为基于H264编码的视频码流,其特征在于,所述方法包括:
获取视频码流;
将所述视频码流中的参考依次加入参考帧队列,并写入参考帧存储,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块;
释放保存期超过预设时间阈值的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧。
2.如权利要求1所述的监控数据的处理方法,其特征在于,所述将所述视频码流中的参考帧依次加入参考帧队列,并写入参考帧存储块,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块之前,所述方法还包括:
给每个所述参考帧添加帧头,所述帧头记录有与该参考帧对应的非参考帧序列在存储块中的地址信息;
给每个所述非参考帧序列中的第一个非参考帧添加其对应的参考帧的时间戳,以根据所述时间戳确定所述参考帧及其对应的非参考帧序列的保存期是否超过预设时间阈值。
3.如权利要求1或2任一项所述的监控数据的处理方法,其特征在于,所述释放保存期超过预设时间阈值的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧的操作,具体包括:
检测剩余存储空间是否足够;
若剩余存储空间不足,释放保存期超过预设时间阈值的非参考帧序列,返回所述检测剩余存储空间是否足够的操作;
若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,仍检测到剩余存储空间不足,释放保存期超过预设时间阈值的参考帧。
4.如权利要求3所述的监控数据的处理方法,其特征在于,所述检测剩余存储空间是否足够的操作,具体包括:
遍历所述参考帧队列和所述非参考帧队列;
若遍历未完成,则判定剩余存储空间不足。
5.如权利要求1、2或4任一项所述的监控数据的处理方法,其特征在于,所述方法还包括:
接收调取目标时间段内存储的监控数据的命令;
按所述参考帧的时间戳来查找目标时间段内的参考帧,并根据所述参考帧的帧头所记录的对应的非参考帧序列的地址信息,查找对应的非参考帧序列,或通过匹配所述参考帧的时间戳和其对应的非参考帧序列中第一个非参考帧上添加的时间戳,查找对应的非参考帧序列;
若未查找到所述非参考帧序列,则判断该非参考帧序列已被释放,输出查找到的参考帧;
若查找到所述非参考帧序列,则依序输出查找到的参考帧及该参考帧对应的非参考帧序列。
6.一种监控数据的处理系统,其特征在于,所述系统包括:
获取模块,用于获取视频码流;
分帧存储模块,用于将所述视频码流中的参考帧依次加入参考帧队列,并写入参考帧存储块,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块;
分帧释放模块,用于释放保存期超过预设时间阈值的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧。
7.如权利要求6所述的监控数据的处理系统,其特征在于,所述系统还包括:
第一帧头设置模块,用于给每个所述参考帧添加帧头,所述帧头记录有与该参考帧对应的非参考帧序列在存储块中的地址信息。
第二帧头设置模块,用于给每个所述非参考帧序列中的第一个非参考帧添加其对应的参考帧的时间戳,以根据所述时间戳确定所述参考帧及其对应的非参考帧序列的保存期是否超过预设时间阈值。
8.如权利要求6或7任一项所述的监控数据的处理系统,其特征在于,所述分帧释放模块包括:
存储空间检测单元,用于检测剩余存储空间是否足够;
非参考帧释放单元,用于若剩余存储空间不足,释放保存期超过预设时间阈值的非参考帧序列,返回所述检测剩余存储空间是否足够的操作;
参考帧释放单元,用于若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,仍检测到剩余存储空间不足,释放保存期超过预设时间阈值的参考帧。
9.如权利要求8所述的监控数据的处理系统,其特征在于,所述存储空间检测单元具体用于:
遍历所述参考帧队列和所述非参考帧队列;
若遍历未完成,则判定剩余存储空间不足。
10.如权利要求6、7或9任一项所述的监控数据的处理系统,其特征在于,所述系统还包括:
接收模块,用于接收调取目标时间段内存储的监控数据的命令;
查找模块,用于按所述参考帧的时间戳来查找目标时间段内的参考帧,并根据所述参考帧的帧头所记录的对应的非参考帧序列的地址信息,查找对应的非参考帧序列,或通过匹配所述参考帧的时间戳和其对应的非参考帧序列中第一个非参考帧上添加的时间戳,查找对应的非参考帧序列;
参考帧输出模块,用于若未查找到所述非参考帧序列,则判断该非参考帧序列已被释放,输出查找到的参考帧;
非参考帧输出模块,用于若查找到所述非参考帧序列,则依序输出查找到的参考帧及该参考帧对应的非参考帧序列。

说明书全文

一种监控数据的处理方法及系统

技术领域

[0001] 本发明属于视频监控领域,尤其涉及一种监控数据的处理方法及系统。

背景技术

[0002] 目前,市面上的监控设备由于应用场景所限,无法使用硬盘这类存储设备,只能使用体积和储量均较小SD卡和TF卡,因而保存的监控数据数量有限,需要经常清理过往保存的数据,只能保存短时间内的监控数据。现有技术中延长监控数据的保存期的方法通常是在录像过程中通过降低数据的码率来保存低码率的数据,或者通过抽录像的方式来减小视频数据的数据量,降低码率的方式会降低录像的回放效果,抽帧录像的方式会使得录像画面部分模糊或者时而清晰时而模糊,降低了录像的清晰度。

发明内容

[0003] 本发明实施例的目的在于提供一种监控数据的处理方法及系统,旨在解决现有技术中通过降低数据码率和抽帧来的保存监控数据的方式,会降低录像的回放效果,使得录像画面部分模糊或者时而清晰时而模糊,降低了录像的清晰度的问题。
[0004] 本发明实施例是这样实现的,一种监控数据的处理方法,所述监控数据为基于H264编码的视频码流,所述方法包括:
[0005] 获取视频码流;
[0006] 将所述视频码流中的参考帧依次加入参考帧队列,并写入参考帧存储,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块;
[0007] 释放保存期超过预设时间阈值的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧。
[0008] 在一优选实施例中,所述将所述视频码流中的参考帧依次加入参考帧队列,并写入参考帧存储块,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块之前,所述方法还包括:
[0009] 给每个所述参考帧添加帧头,所述帧头记录有与该参考帧对应的非参考帧序列在存储块中的地址信息;
[0010] 给每个所述非参考帧序列中的第一个非参考帧添加其对应的参考帧的时间戳,以根据所述时间戳确定所述参考帧及其对应的非参考帧序列的保存期是否超过预设时间阈值。
[0011] 本发明实施例还提供一种监控数据的处理系统,所述系统包括:
[0012] 获取模块,用于获取视频码流;
[0013] 分帧存储模块,用于将所述视频码流中的参考帧依次加入参考帧队列,并写入参考帧存储块,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块;
[0014] 分帧释放模块,用于释放保存期超过预设时间阈值的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧。
[0015] 在一优选实施例中,所述系统还包括:
[0016] 第一帧头设置模块,用于给每个所述参考帧添加帧头,所述帧头记录有与该参考帧对应的非参考帧序列在存储块中的地址信息。
[0017] 第二帧头设置模块,用于给每个所述非参考帧序列中的第一个非参考帧添加其对应的参考帧的时间戳,以根据所述时间戳确定所述参考帧及其对应的非参考帧序列的保存期是否超过预设时间阈值。
[0018] 本发明实施例与现有技术相比,其有益效果在于:通过将基于H264的编码的视频码流中的参考帧和非参考帧分块存储,节省了存储空间,使得存储设备中能够保存更长时间内录制的监控数据,从而延长了监控数据的保存期;通过在存储设备的存储空间不足时,优先释放超过保存期的非参考帧数据块,使得用户依然能过通过保留的超过保存期的参考帧来查看监控视频;当所有超过满帧保存期的非参考帧释放完毕后,若存储设备的存储空间仍不足,才释放超过保存期的参考帧,使得监控视频能够尽可能的在更长时间内被保留;通过给参考帧添加其对应的非参考帧的地址信息,给非参考帧序列的第一个参考帧添加其对应的参考帧的时间戳,从而建立参考帧和非参考帧之间的关联,使用户在调取监控数据时,所述参考帧和非参考帧能够按顺序依次输出,同时也能通过该帧关联判断相应的非参考帧是否已被释放;本发明所提供的方法和系统还具有易于实现、适于广泛推广的特点。
附图说明
[0019] 图1是本发明的实施例提供的监控数据的处理方法的流程图
[0020] 图2是本发明的实施例提供的参考帧和非参考帧存储在存储设备中的存储结构示意图;
[0021] 图3是本发明的实施例提供的监控数据的处理系统的基本结构框图
[0022] 图4是本发明的优选实施例提供的释放参考帧和对应的非参考帧序列的方法的流程图。

具体实施方式

[0023] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0024] 图1是本发明的实施例提供的监控数据的处理方法的流程图;为了便于说明,仅示出了与本实施例相关的部分。
[0025] 参阅图1,在本发明实施例所提供的监控数据的处理方法中,所述监控数据为基于H264编码的视频码流,所述视频码流包括多个参考帧,多个参考帧中的每个参考帧后排列有由多个非参考帧构成的非参考帧序列,所述方法具体包括下述操作中的S101~S103。
[0026] S101:获取视频码流。
[0027] 在一优选实施例中,所述操作S101具体为:每间隔预设时间段获取一次视频码流。
[0028] S102:将所述视频码流中的参考帧依次加入参考帧队列,并写入参考帧存储块,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块。
[0029] 由于本发明的方法主要针对的是基于H264编码的监控数据,因此所述视频码流中的参考帧具体指I帧,非参考帧具体指P帧。
[0030] S103:释放保存期超过预设时间阈值的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧。
[0031] 在具体应用中,所述参考帧存储块和所述非参考帧存储块是通过将存储设备进行分区产生的,所述存储设备为SD卡或TF卡等小容量磁盘。
[0032] 上述实施例通过将监控数据中的参考帧和非参考帧分开存储在参考帧存储块和非参考帧存储块中,并写入存储设备,节省了存储空间;并且在存储设备的空间不足时,可以对存储在参考帧存储块和非参考帧存储块中的参考帧和非参考帧分别进行释放,用户可以有选择性的优先释放超过用户自主设定的存储期阈值的非参考帧,仍然保留被释放的老旧视频数据的参考帧,既腾出了足够的存储空间也使得用户依然可以随时查看较长时间以前保存的监控数据。
[0033] 在具体应用中,所述预设时间段可以为10分钟、20分钟、30分钟、1小时或2小时等等,用户可以根据实际需要随意调整获取视频码流的时间间隔。这种分时段获取视频码流的方法,使得对监控数据的处理更加快捷高效和准确,避免了大量数据集中处理所带来的处理速度减慢和出错几率的增加。
[0034] 在一优选实施例中,所述操作S102之前,还包括:
[0035] 给每个所述参考帧添加帧头,所述帧头记录有与该参考帧对应的非参考帧序列在存储块中的地址信息。
[0036] 在具体应用中,所述地址信息是指非参考序列存储在存储设备中的地址,给每个参考帧添加帧头,使得需要调取监控数据时,能够根据所述参考帧的帧头中所记录的地址信息快速的找到对应的非参考帧。
[0037] 在一优选实施例中,所述操作S102之前,还包括:
[0038] 给每个所述非参考帧序列中的第一个非参考帧添加其对应的参考帧的时间戳,以根据所述时间戳确定所述参考帧及其对应的非参考帧序列的保存期是否超过预设时间阈值。
[0039] 在具体应用中,所述时间戳是指在基于H264的视频码流中参考帧被摄取时的时刻。
[0040] 本发明通过给参考帧添加带有非参考帧地址信息的帧头,给非参考帧加上其对应的参考帧的时间戳,通过这种方式建立参考帧和非参考帧之间的关联,使得需要调取监控数据时,能够根据所述参考帧的帧头中所记录的地址信息快速的找到对应的非参考帧,并根据时间戳所记载的时间顺序依次输出参考帧和非参考帧。
[0041] 在一优选实施例中,操作102之前还包括:
[0042] 根据每个参考帧的时间戳,计算每个参考帧及其对应的非参考帧序列的保存期,并判断该保存期是否超过预设时间阈值。
[0043] 在具体应用中,所述保存期的预设时间阈值可根据实际需要随意设置,可以为3天、7天、15天、一个月(按国际公历时间一个月可以为28天、29天、30天或31天)、三个月或者更长时间。当监控数据的数据量较小时,可以适当将保存期延长,数据量较大时,可以适当缩短保存期。
[0044] 在一优选实施例中,操作103具体包括:
[0045] 检测剩余存储空间是否足够;
[0046] 若剩余存储空间不足,释放保存期超过预设时间阈值的非参考帧序列,返回所述检测剩余存储空间是否足够的操作;
[0047] 若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,仍检测到剩余存储空间不足,释放保存期超过预设时间阈值的参考帧。
[0048] 在具体应用中,所述存储空间不足的情况具体指:一、存储设备依然有剩余存储空间,但当前时刻将要被保存的视频码流的数据量大于剩余存储空间;二、当前时刻没有要被保存的视频码流,但检测到存储设备的剩余存储空间不足。用户可以根据需要,手动释放监控数据,也可以等到存储设备的剩余存储空间不足时,通过上述方法在自动释放超过保存期的监控数据。
[0049] 在一优选实施例中,上述“检测剩余存储空间是否足够”的操作,具体包括:
[0050] 遍历所述参考帧队列和所述非参考帧队列;
[0051] 若遍历未完成,则判定剩余存储空间不足。
[0052] 在具体应用中,所述遍历方法采用层次遍历或者广度优先遍历,通过遍历来判断剩余存储空间是否足够的原理为:遍历未完成,则说明参考帧和非参考帧溢出,存储空间不足;遍历完成,则说明参考帧和非参考帧都在存储设备内,存储设备的存储空间足够。
[0053] 本发明的优选实施例还提供一种监控数据的调取方法,该方法是在前述的监控数据的处理方法的基础之上实现的,主要用于调取监控数据,以使用户可以查看录像,所述方法具体包括:
[0054] 接收调取目标时间段内存储的监控数据的命令;
[0055] 按所述参考帧的时间戳来查找目标时间段内的参考帧,并根据所述参考帧的帧头所记录的对应的非参考帧序列的地址信息,查找对应的非参考帧序列,或通过匹配所述参考帧的时间戳和其对应的非参考帧序列中第一个非参考帧上添加的时间戳,查找对应的非参考帧序列;
[0056] 若未查找到所述非参考帧序列,则判断该非参考帧序列已被释放,输出查找到的参考帧;
[0057] 若查找到所述非参考帧序列,则依序输出查找到的参考帧及该参考帧对应的非参考帧序列。
[0058] 通过上述监控数据的调取方法,监控数据中的参考帧及与该参考帧对应的非参考帧能够按顺序输出,同时也能通过在参考帧和非参考帧之间建立关联关系的帧头和时间戳来判断非参考帧是否被释放。
[0059] 图2是本发明的实施例提供的参考帧和非参考帧存储在存储设备中的存储结构示意图。
[0060] 参阅图2,为了便于描述,将基于H264的视频码流中的参考帧表示为I帧,非参考帧表示为P帧。设每间隔预设时间段所获取的视频码流内共有n个I帧,每个I帧后面跟有对应的29个P帧,则预设时间段所获取的视频码流具体表示为:I1P1P2……P29I2P31P32……P59I3P61P62……P89……InP(30n-29)P(30n-28)……P(30n-1);所 述n≥1且n为正整数。
[0061] 如图3所示,将预设时间段内获取的视频码流中的所有I帧(I1、I2、I3……In)按获取顺序排成I帧队列写入I帧存储块;对应的,将所有P帧序列(P1~P29、P31~P59、P61~P89……P(30n-29)~P(30n-1))按获取顺序排成I帧队列写入存储设备中的I帧存储块。
[0062] 图3是本发明的实施例提供的监控数据的处理系统的基本结构框图。
[0063] 参阅图3,本发明的实施例提供的监控数据的处理系统,包括:
[0064] 获取模块101,用于获取视频码流;
[0065] 分帧存储模块102,用于将所述视频码流中的参考帧依次加入参考帧队列,并写入参考帧存储块,按所述参考帧队列中参考帧的排列顺序,将与各参考帧对应的非参考帧序列依次加入非参考帧队列,并写入非参考帧存储块;
[0066] 分帧释放模块103,用于释放保存期超过预设时间阈值的非参考帧序列,若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,则释放保存期超过预设时间阈值的参考帧。
[0067] 在一优选实施例中,获取模块101,具体用于每间隔预设时间段获取一次视频码流。
[0068] 在一优选实施例中,所述系统还包括:
[0069] 第一帧头设置模块,用于给每个所述参考帧添加帧头,所述帧头记录有与该参考帧对应的非参考帧序列在存储块中的地址信息。
[0070] 第二帧头设置模块,用于给每个所述非参考帧序列中的第一个非参考帧添加其对应的参考帧的时间戳,以根据所述时间戳确定所述参考帧及其对应的非参考帧序列的保存期是否超过预设时间阈值。
[0071] 在一优选实施例中,所述系统还包括:
[0072] 保存期计算模块,用于根据每个参考帧的时间戳,计算每个参考帧及其对应的非参考帧序列的保存期,并判断该保存期是否超过预设时间阈值。
[0073] 在一优选实施例中,所述分帧存储模块103包括:
[0074] 存储空间检测单元,用于检测剩余存储空间是否足够;
[0075] 非参考帧释放单元,用于若剩余存储空间不足,释放保存期超过预设时间阈值的非参考帧序列,返回所述检测剩余存储空间是否足够的操作;
[0076] 参考帧释放单元,用于若所有保存期超过预设时间阈值的非参考帧序列都释放完毕,仍检测到剩余存储空间不足,释放保存期超过预设时间阈值的参考帧。
[0077] 在一优选实施例中,所述存储空间检测单元具体用于:
[0078] 遍历所述参考帧队列和所述非参考帧队列;
[0079] 若遍历未完成,则判定剩余存储空间不足。
[0080] 在一优选实施例中,所述系统还包括:
[0081] 接收模块,用于接收调取目标时间段内存储的监控数据的命令;
[0082] 查找模块,用于按所述参考帧的时间戳来查找目标时间段内的参考帧,并根据所述参考帧的帧头所记录的对应的非参考帧序列的地址信息,查找对应的非参考帧序列,或通过匹配所述参考帧的时间戳和其对应的非参考帧序列中第一个非参考帧上添加的时间戳,查找对应的非参考帧序列;
[0083] 参考帧输出模块,用于若未查找到所述非参考帧序列,则判断该非参考帧序列已被释放,输出查找到的参考帧;
[0084] 非参考帧输出模块,用于若查找到所述非参考帧序列,则依序输出查找到的参考帧及该参考帧对应的非参考帧序列。
[0085] 图4是本发明的优选实施例提供的释放参考帧和对应的非参考帧序列的方法的流程图。
[0086] 参阅图4,本发明的优选实施例提供的释放参考帧和对应的非参考帧序列的方法,具体包括如下步骤:
[0087] 开始;
[0088] 检测磁盘空间是否足够;
[0089] 若是,则结束;
[0090] 若否,则按获取监控数据的顺序依次遍历磁盘内的监控数据;
[0091] 检测是否遍历完成;
[0092] 若是,则结束;
[0093] 若否,则检测所述监控数据的存储期是否超过预设时间阈值;
[0094] 若否,则返回检测磁盘空间是否足够的步骤;
[0095] 若是,检测磁盘内的存储期超过预设时间阈值的P帧序列是否释放;
[0096] 若否,则释放存储期超过预设时间阈值的P帧序列,并返回检测磁盘空间是否足够的步骤;
[0097] 若是,则判断是否需要释放磁盘内存储期超过预设时间阈值的I帧;
[0098] 若否,则返回检测磁盘空间是否足够的步骤;
[0099] 若是,则释放存储期超过预设时间阈值的I帧,并返回检测磁盘空间是否足够的步骤。
[0100] 本发明实施例所提供的释放参考帧和对应的非参考帧序列的方法,可以优选释放存储期超过预设时间阈值的P帧序列,使得存储期超过预设时间阈值的监控数据的I帧依然保存在磁盘中,可以被用户查看,只是非满帧。
[0101] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
QQ群二维码
意见反馈