CN105072366A - 一种视频数据表的生成方法和装置 - Google Patents
一种视频数据表的生成方法和装置 Download PDFInfo
- Publication number
- CN105072366A CN105072366A CN201510508126.4A CN201510508126A CN105072366A CN 105072366 A CN105072366 A CN 105072366A CN 201510508126 A CN201510508126 A CN 201510508126A CN 105072366 A CN105072366 A CN 105072366A
- Authority
- CN
- China
- Prior art keywords
- video
- time
- storage
- data table
- time point
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本申请提供一种视频数据表的生成方法和装置。该方法包括:接收并保存视频存储的写入端上报的存储启动时间点以及存储停止时间点;选择第M级时间粒度为当前时间粒度,M初始值为缺省的计数初始值;使用当前时间粒度将当前待规划时间段划分为多个子时间段,以生成本级视频数据表;根据存储启动时间点以及存储停止时间点确定所述本级视频数据表中相关子时间段的视频信息标识,其中,视频信息标识包括:全部存在视频、全部不存在视频以及部分存在视频;判断M是否小于预设的级数,如果M小于预设的级数,则将视频信息标识为部分存在视频的子时间段更新为当前待规划时间段,并将M更新为M+1,返回选择第M级时间粒度为当前时间粒度的步骤。
Description
技术领域
本申请涉及视频监控技术领域,尤其涉及一种视频数据表的生成方法和装置。
背景技术
随着安防行业的快速发展,用户对视频检索的及时性和精确性的要求越来越高,视频回放或下载等操作往往都需要精确到秒级,因此,能够快速定位到秒级的视频检索可以给视频监控的应用带来很大的便利。
相关技术中,网络摄像机在拍摄到视频后,会实时地将视频存储到存储设备中,由数据管理服务器进行视频数据表的生成,当用户进行视频检索时,可以通过访问数据管理服务器记录的视频数据表以获取视频的时间信息。其中,数据管理服务器进行视频数据表的过程包括:数据管理服务器定时访问该存储设备中的视频,然后按照预设的时间粒度对视频进行记录。
然而,由于视频巡检不能影响到视频写入的性能,所以巡检不能过于频繁,目前数据管理服务器每15分钟进行一次视频数据表的生成,而这样的生成方式往往不够不及时,会导致查询结果的及时性不够好。此外,由于数据管理服务器通常按照5分钟的时间粒度记录视频数据表,用户无法得知5分钟内的视频是否完整,因此,视频检索结果的准确性也较差。
发明内容
有鉴于此,本申请提供一种视频数据表的生成方法和装置。
具体地,本申请是通过如下技术方案实现的:
一种视频数据表的生成方法,应用在视频管理服务器上,其特征在于,所述方法包括:
接收并保存视频存储的写入端上报的存储启动时间点以及存储停止时间点;
选择第M级时间粒度为当前时间粒度,其中M为自然数,初始值为缺省的计数初始值;
使用当前时间粒度将当前待规划时间段划分为多个子时间段,以生成本级视频数据表;
根据所述存储启动时间点以及所述存储停止时间点确定所述本级视频数据表中相关子时间段的视频信息标识,其中,所述视频信息标识包括:全部存在视频、全部不存在视频以及部分存在视频;
判断M是否小于预设的级数,如果M小于预设的级数,则将视频信息标识为部分存在视频的子时间段更新为当前待规划时间段,并将M更新为M+1,返回选择第M级时间粒度为当前时间粒度的步骤。
可选的,所述方法还包括:
在接收到视频检索请求后,根据所述视频检索请求中的时间条件对视频数据表进行逐级检索;
当所述时间条件匹配到视频信息标识为部分存在视频的子时间段时,跳转到下一级视频数据表继续检索所述部分存在视频的子时间段,直到所述时间条件匹配不到视频信息标识为部分存在视频的子时间段为止。
可选的,所述方法还包括:
当所述时间条件匹配到视频信息标识为空的子时间段时,如果保存的上一个时间点为存储启动时间点,则针对所述存储启动时间点到当前时间点的检索结果为全部存在视频,如果保存的上一个时间点为存储停止时间点,则针对所述视频信息标识为空的时间段的检索结果为全部不存在视频。
可选的,在M为所述预设的级数时,如果M级时间粒度不等于1秒,则针对M级视频数据表中的每个子时间段,依次确定并保存所述子时间段中每一秒的视频信息标识。
一种视频数据表的生成方法,应用在视频存储的写入端上,其特征在于,所述方法包括:
将视频存储到存储设备中;
发送视频存储状态变化时的时间点给视频管理服务器,以供所述视频管理服务器生成视频数据表;
其中,所述视频存储状态变化时的时间点包括存储启动时间点以及存储停止时间点。
可选的,所述发送视频存储状态变化时的时间点给视频管理服务器,包括:
当视频存储状态发生变化时,发送所述时间点给视频管理服务器。
可选的,所述方法还包括:
保存所述时间点以及对应的通告状态,所述通告状态的包括已通告和未通告,所述通告状态的初始状态为未通告;
接收视频管理服务器在保存所述时间点后发送的保存成功通知,并将所述时间点的通告状态更新为已通告;
如果在预设的时间内没有接收到视频管理服务器发送的所述保存成功通知,则重新发送所述时间点给视频管理服务器。
一种视频数据表的生成装置,应用在视频管理服务器上,其特征在于,所述装置包括:
时间保存单元,用于接收并保存视频存储的写入端上报的存储启动时间点以及存储停止时间点;
粒度选择单元,用于选择第M级时间粒度为当前时间粒度,其中M为自然数,初始值为缺省的计数初始值;
数据表生成单元,用于使用当前时间粒度将当前待规划时间段划分为多个子时间段,以生成本级视频数据表;
标识确定单元,用于根据所述存储启动时间点以及所述存储停止时间点确定所述本级视频数据表中相关子时间段的视频信息标识,其中,所述视频信息标识包括:全部存在视频、全部不存在视频以及部分存在视频;
循环更新单元,用于判断M是否小于预设的级数,如果M小于预设的级数,则将视频信息标识为部分存在视频的子时间段更新为当前待规划时间段,并将M更新为M+1,调用粒度选择单元。
可选的,所述装置还包括:
视频检索单元,用于在接收到视频检索请求后,根据所述视频检索请求中的时间条件对视频数据表进行逐级检索;
检索跳转单元,用于在所述时间条件匹配到视频信息标识为部分存在视频的子时间段时,跳转到下一级视频数据表继续检索所述部分存在视频的子时间段,直到所述时间条件匹配不到视频信息标识为部分存在视频的子时间段为止。
可选的,所述视频检索单元,进一步地用于在所述时间条件匹配到视频信息标识为空的子时间段时,如果保存的上一个时间点为存储启动时间点,则针对所述存储启动时间点到当前时间点的检索结果为全部存在视频,如果保存的上一个时间点为存储停止时间点,则针对所述视频信息标识为空的子时间段的检索结果为全部不存在视频。
可选的,所述标识确定单元,进一步用于在M为所述预设的级数时,如果M级时间粒度不等于1秒,则针对M级视频数据表中的每个子时间段,依次确定并保存所述子时间段中每一秒的视频信息标识。
一种视频数据表的生成装置,应用在视频存储的写入端上,其特征在于,所述装置包括:
视频存储单元,用于将视频存储到存储设备中;
时间发送单元,用于发送视频存储状态变化时的时间点给视频管理服务器,以供所述视频管理服务器生成视频数据表;
其中,所述视频存储状态变化时的时间点包括存储启动时间点以及存储停止时间点。
可选的,所述时间发送单元,具体在视频存储状态发生变化时,发送所述时间点给视频管理服务器。
可选的,所述装置还包括:
状态保存单元,用于保存所述时间点以及对应的通告状态,所述通告状态的包括已通告和未通告,所述通告状态的初始状态为未通告;
状态更新单元,用于接收视频管理服务器在保存所述时间点后发送的保存成功通知,并将所述时间点的通告状态更新为已通告;
时间重发单元,用于在预设的时间内没有接收到视频管理服务器发送的所述保存成功通知时,重新发送所述时间点给视频管理服务器。
由以上描述可以看出,本申请视频存储的写入端可以在视频存储状态发生变化时上报的存储启动时间点以及存储停止时间点,视频管理服务器可以根据预设的视频数据表级数、各级对应的时间粒度以及所述存储启动时间点、所述存储停止时间点,逐级生成视频数据表,以使得视频数据表的生成可以精确到秒级,进而提高视频检索的及时性和精准度。同时,采用级联形式的视频数据表,还可以提高视频检索的效率。
附图说明
图1是本申请一示例性实施例示出的一种视频数据表生成的组网结构示意图。
图2是本申请一示例性实施例示出的一种视频数据表的生成方法的流程示意图。
图3是本申请一示例性实施例示出的一种视频存储时间点示意图。
图4是本申请一示例性实施例示出的另一种视频数据表的生成方法的流程示意图。
图5是本申请一示例性实施例示出的一种用于视频数据表的生成装置的视频管理服务器的结构示意图。
图6是本申请一示例性实施例示出的一种用于视频数据表的生成装置的视频存储的写入端的结构示意图。
图7是本申请一示例性实施例示出的一种视频数据表的生成装置的结构示意图。
图8是本申请一示例性实施例示出的另一种视频数据表的生成装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
针对上述问题,本申请提供一种视频数据表的生成方案,可以解决相关技术中视频检索及时性和准确性差的问题。
图1是本申请一示例性实施例示出的一种视频数据表生成的组网结构示意图。
请参考图1,本申请提供的视频数据表生成方案所应用的组网环境中包括有视频管理服务器(VideoManagementServer,VM)101,视频存储的写入端102以及存储设备103。其中,所述视频存储的写入端102用于将前端摄像设备采集到的视频存储到存储设备103中,所述视频存储的写入端102可以为网络摄像机(IPCamera,IPC),也可以为编码器EC(Encoder)等,本申请对此不作特殊限制。
图2是本申请一示例性实施例示出的一种视频数据表的生成方法的流程示意图。
请参考图2,所述视频数据表的生成方法可以应用在前述图1所示的视频存储的写入端102中,包括有以下步骤:
步骤201,将视频存储到存储设备中。
在本实施例中,视频存储的写入端102可以实时将拍摄到的视频存储到存储设备103中。
步骤202,保存视频存储状态变化时的时间点以及对应的通告状态,所述通告状态的初始状态为未通告。
在本实施例中,视频存储的写入端102在将视频存储到存储设备103的过程中,保存存储状态变化的时间点。其中,所述存储状态变化可以包括:存储启动以及存储停止,相应的,所述存储状态变化的时间点可以包括:存储启动时间点以及存储停止时间点。
在本实施例中,视频存储的写入端102还会保存每个存储状态变化时的时间点对应的通告状态。所述通告状态用于表示是否已经成功向视频管理服务器101通告所述时间点,所述通告状态可以包括:已通告和未通告,所述通告状态的初始状态为未通告。
举例来说,请参考图3,假设视频存储的写入端102在时间点2015-03-0200:00:00开始存储视频,一直到时间点2015-03-0210:16:59停止存储视频,然后又在时间点2015-03-0216:10:00开始存储视频。则时间点2015-03-0200:00:00以及时间点2015-03-0216:10:00为存储启动时间点,时间点2015-03-0210:16:59为存储停止时间点。视频存储的写入端102在2015-03-0200:00:00开始存储视频的时候保存该存储启动时间点以及对应的通告状态,在2015-03-0210:16:59停止存储视频的时候保存该存储停止时间点以及对应的通告状态,在2015-03-0216:10:00又开始存储视频的时候保存该存储启动时间点以及对应的通告状态。
可选的,在本申请一实施例中,视频存储的写入端102可以将视频存储状态变化时的时间点以及对应的通告状态以文本的方式存储到xml文件中,请参考如下xml文件:
<?xmlversion="1.0"encoding="utf-8"?>
<StorInfo>
<szCameraID>cam1</szCameraID>
<StorStatus>1</StorStatus>
<StorSwitchTime>2015-03-0200:00:00</StorSwitchTime>
<AlarmStatus>1</AlarmStatus>
</StorInfo>
<StorInfo>
<szCameraID>cam1</szCameraID>
<StorStatus>0</StorStatus>
<StorSwitchTime>2015-03-0210:16:59</StorSwitchTime>
<AlarmStatus>1</AlarmStatus>
</StorInfo>
<StorInfo>
<szCameraID>cam1</szCameraID>
<StorStatus>1</StorStatus>
<StorSwitchTime>2015-03-0216:10:00</StorSwitchTime>
<AlarmStatus>0</AlarmStatus>
</StorInfo>
其中,szCameraID表示摄像设备标识;
StorStatus表示存储状态,0表示存储停止,1表示存储启动;
AlarmStatus表示通告状态,0表示未通告,1表示已通告;
StorSwitchTime表示视频存储状态变化时的时间点。
当然,在实际应用中,视频存储的写入端102可以采用其他方式保存所述视频存储状态变化时的时间点以及对应的通告状态,比如:采用表格的方式进行保存等,本申请对此不作特殊限制。
步骤203,发送视频存储状态变化时的时间点给视频管理服务器,以供所述视频管理服务器生成视频数据表。
基于前述步骤202,视频存储的写入端102在保存视频存储状态变化时的时间点以及对应的通告状态后,发送所述视频存储状态变化时的时间点给视频管理服务器101,以供视频管理服务器101生成视频数据表。
在本实施例中,为使视频管理服务器101能够及时生成视频数据表,视频存储的写入端102可以在存储状态发生变化时,将视频存储状态变化的存储启动时间点或者存储停止时间点发送给视频管理服务器101,视频管理服务器101在接收到所述存储启动时间点或者存储停止时间点后,可以进行保存,并根据保存的存储启动时间点以及存储停止时间点生成视频数据表。当然,视频存储的写入端102也可以根据预设的时间周期将视频存储状态变化的存储启动时间点或者存储停止时间点发送给视频管理服务器101,本申请对此不作特殊限制。
在本实施例中,视频存储的写入端102可以将保存的xml文件发送给视频管理服务器101,视频管理服务器101可以从所述xml文件中解析出所述存储启动时间点或者存储停止时间点。视频存储的写入端102也可以依据与视频管理服务器101预设的交互协议在报文的预设字段中携带所述存储启动时间点或者存储停止时间点,本申请对此不作特殊限制。
步骤204,接收视频管理服务器在保存所述时间点后发送的保存成功通知,并将所述时间点的通告状态更新为已通告。
在本实施例中,视频管理服务器101在成功保存视频存储的写入端102发送的所述时间点后,会发送保存成功的通知给视频存储的写入端102,视频存储的写入端102在接收到所述保存成功的通知后可以将所述时间点对应的通告状态更新为已通告。
步骤205,如果在预设的时间内没有接收到视频管理服务器发送的所述保存成功通知,则重新发送所述时间点给视频管理服务器。
在本实施例中,视频存储的写入端102中设置有通告超时时间,在到达所述通告超时时间时,如果还没有接收到视频管理服务器101发送的保存成功的通知,则可以确定通告失败,视频存储的写入端102重新发送所述时间点给视频管理服务器101,直到接收到视频管理服务器101发送的保存成功的通知。所述通告超时时间可以由管理人员根据组网、带宽等情况进行设置,比如:30秒等,本申请对此不作特殊限制。
在本实施例中,由于视频存储的写入端102上的存储资源有限,视频存储的写入端102可以按照预设的时间周期删除保存的视频存储状态变化时的时间点以及对应的通告状态,比如:视频存储的写入端102可以在每天凌晨最后一个时间点通告成功后删除保存的所述视频存储状态变化时的时间点以及对应的通告状态。
下面结合具体的实施例描述视频管理服务器进行视频数据表的生成过程。
请参考图4,图4是本申请一示例性实施例示出的另一种视频数据表的生成方法的流程示意图,所述视频数据表的生成方法可以应用在前述图1所示的视频管理服务器101中,包括有以下步骤:
步骤401,接收并保存视频存储的写入端上报的存储启动时间点以及存储停止时间点。
在本实施例中,视频管理服务器101接收并保存视频存储的写入端102发送的存储启动时间点以及存储停止时间点,并在成功保存之后向所述写入端102发送保存成功通知。
步骤402,选择第M级时间粒度为当前时间粒度,其中M为自然数,初始值为缺省的计数初始值。
在本实施例中,管理人员可以预先设置视频数据表的级数,以及每一级视频数据表的时间粒度。为了提高视频数据表的精确性,可以将最高一级视频数据表的时间粒度设置为秒级,比如:5秒或者20秒等。所述缺省的计数初始值可以由开发人员进行设置,比如:所述缺省的计数初始值可以为0,也可以为1,下面以所述缺省的计数初始值为1进行描述。举例来说,管理人员可以设置所述视频数据表的级数为3级,其中,第一级时间粒度为1小时,第二级时间粒度为5分钟,第三级时间粒度为20秒。
步骤403,使用当前时间粒度将当前待规划时间段划分为多个子时间段,以生成本级视频数据表。
基于前述步骤402,在选择当前时间粒度后,视频管理服务器101可以使用所述当前时间粒度将当前待规划时间段划分为多个子时间段。
在本实施例中,针对第一级时间粒度,视频管理服务器101可以将当天的24个小时作为所述当前待规划时间段,即将当天的24个小时划分为多个子时间段。以所述第一时间粒度为1小时为例,视频管理服务器101可以将2015-03-02的24小时划分为24个子时间段,以生成如下表1所示的第一级视频数据表。
摄像机编码 | 日期 | 00-01点 | 01-02点 | 02-03点 | … | 23-24点 |
Cam01 | 2015-03-02 |
表1
步骤404,根据所述存储启动时间点以及所述存储停止时间点确定所述本级视频数据表中相关子时间段的视频信息标识。
在本实施例中,所述视频信息标识可以包括:全部存在视频、全部不存在视频以及部分存在视频。在实际应用中,可以将各个视频信息标识对应的预设数值存储在所述视频数据表中,比如:用数值1表示全部存在视频,用数值0表示全部不存在视频,用数值2表示部分存在视频。
在本实施例中,视频管理服务器101在接收到视频存储的写入端102上报的时间点后,根据该时间点以及已保存的上一个时间点确定视频数据表中相关子时间段的视频信息标识。具体地,在接收到的时间点是存储启动时间点时,保存所述存储启动时间点,并根据该存储启动时间点以及已保存的上一个存储停止时间点确定视频数据表中相关子时间段的视频信息标识。在接收到存储停止时间点时,保存所述存储停止时间点,并根据该存储停止时间点以及已保存的上一个存储启动时间点确定视频数据表中相关子时间段的视频信息标识。
步骤405,判断M是否小于预设的级数,如果M小于预设的级数,则执行步骤406。
基于前述步骤404,视频管理服务器101在确定所述本级视频数据表中相关子时间段的视频信息标识后,在本步骤中,判断当前的级数M是否小于预设的级数,如果M小于所述预设的级数,则继续执行步骤406。如果M等于所述预设的级数,则结束本次视频数据表的更新操作。
步骤406,将视频信息标识为部分存在视频的子时间段更新为待规划时间段,并将M更新为M+1,转步骤402。
基于前述步骤405的判断结果,在当前级数M小于所述预设的级数时,可以先判断本级视频数据表中是否存在视频信息标识为部分存在视频的子时间段,如果所述本级视频数据表中不存在视频信息标识为部分存在视频的子时间段,则结束本次视频数据表的更新操作。如果所述本级视频数据表中存在视频信息标识为部分存在视频的子时间段,则可以继续执行视频数据表的更新操作。
具体地,在本级视频数据表中存在视频信息标识为部分存在视频的子时间段时,将该子时间段更新为待规划时间段,并将当前级数M更新为M+1,转步骤402,继续更新视频数据表。
在本申请一可选实施例中,在M为所述预设的级数时,如果M级时间粒度不等于1秒,则针对M级视频数据表中的每个子时间段,可以依次判断每一秒的视频信息标识,并依次存储所述每一秒的视频信息标识。假设,上述M级时间粒度是5秒,则可以依次判断这5秒的视频信息标识,又假设这5秒中只有前3秒有视频,则针对这5秒的子时间段,可以存储二进制数的视频信息标识11100。可选的,在实际应用中,还可以将该二进制数转换为十进制数进行存储。
下面结合具体的实施例来描述前述步骤402至步骤406的视频数据表更新过程。
假设,管理人员预先设置的视频数据表的级数为3级。其中,第一级时间粒度为1小时,第二级时间粒度为5分钟,第三级时间粒度为20秒。则视频管理服务器101可以先生成表1所示的第一级视频数据表。
假设,视频管理服务器101在2015-03-02这天接收到的视频存储的写入端102上报的第一个时间点是存储启动时间点,该存储启动时间点为2015-03-0200:00:00,则视频管理服务器101保存所述存储启动时间点。又假设,视频管理服务器101在2015-03-0202:10:59接收到视频存储的写入端102上报的第二个时间点,所述第二个时间点是存储停止时间点,则说明2015-03-0200:00:00至2015-03-0202:10:59这段时间内有视频。视频管理服务器101可以根据所述存储启动时间点2015-03-0200:00:00以及所述存储停止时间点2015-03-0202:10:59确定表1中第一级视频数据表中相关子时间段的视频信息标识,以形成表2所示的更新后的第一级视频数据表。其中,数值1表示全部存在视频,数值2表示部分存在视频。
摄像机编码 | 日期 | 00-01点 | 01-02点 | 02-03点 | … | 23-24点 |
Cam01 | 2015-03-02 | 1 | 1 | 2 |
表2
在本实施例中,表2所示的视频数据表是第一级视频数据表,当前级数小于预设的级数3,则将所述第一级视频数据表中视频信息标识为部分存在视频的子时间段02-03点更新为待规划时间段,即当前的待规划时间段为2015-03-0202:00:00至2015-03-0202:59:59。根据第二级的时间粒度5分钟以及所述当前的待规划时间段生成表3所示的第二级视频数据表。
表3
在本实施例中,视频管理服务器101还可以根据所述存储启动时间点2015-03-0200:00:00以及所述存储停止时间点2015-03-0202:10:59确定表3中第二级视频数据表中相关子时间段的视频信息标识,以形成表4所示的更新后的第二级视频数据表。
表4
在本实施例中,表4所示的视频数据表是第二级视频数据表,当前级数小于预设的级数3,则将所述第二级视频数据表中视频信息标识为部分存在视频的子时间段10-14分更新为待规划时间段,即当前的待规划时间段为2015-03-0202:10:00至2015-03-0202:14:59。根据第三级的时间粒度20秒以及所述当前的待规划时间段生成表5所示的第三级视频数据表。
表5
在本实施例中,视频管理服务器101还可以根据所述存储启动时间点2015-03-0200:00:00以及所述存储停止时间点2015-03-0202:10:59确定表5中第三级视频数据表中相关子时间段中每一秒的视频信息标识,以形成表6所示的更新后的第三级视频数据表。
表6
请参考表6,2015-03-0202:10:00至2015-03-0202:10:19这个子时间段中每一秒都存在视频,所以可以存储20个表示全部存在视频的数值1。可选的,在另一实施例中,可以将20个1转换为十进制数1048575进行存储。
至此,在本实施例中,视频管理服务器101可以生成表2、表4以及表6所示的三级视频数据表。
针对前述实施例中描述的视频管理服务器生成的视频数据表的过程,下面介绍视频检索的过程。
当用户要进行视频检索时,用户会发送视频检索请求给视频管理服务器101。视频管理服务器101在接收到所述视频检索请求后,可以根据所述视频检索请求中携带的时间条件对视频数据表进行逐级检索。当所述时间条件匹配到视频信息标识为部分存在视频的子时间段时,跳转到下一级视频数据表继续检索所述部分存在视频的子时间段,直到所述时间条件匹配不到视频信息标识为部分存在视频的子时间段为止。
举例来说,以前述表2、表4以及表6所示的视频数据表为例,假设所述视频检索请求中携带的时间条件为2015-03-0200:00:00至2015-03-0202:59:59,则先查询表2所示的第一级视频数据表,可以得出2015-03-0200:00:00至2015-03-0201:59:59全部存在视频,2015-03-0202:00:00至2015-03-0202:59:59部分存在视频。
针对部分存在视频的2015-03-0202:00:00至2015-03-0202:59:59,跳转到表4所示的第二级视频数据表继续进行查询。查询表4可以得出2015-03-0202:00:00至2015-03-0202:09:59全部存在视频,2015-03-0202:10:00至2015-03-0202:14:59部分存在视频,2015-03-0202:15:00至2015-03-0202:59:59全部不存在视频。
针对部分存在视频的2015-03-0202:10:00至2015-03-0202:14:59,跳转到表6所示的第三级视频数据表继续进行查询。值得注意的是,如果表6中存储的是十进制数,则要将十进制数转换为二进制数,然后再进行查询。查询表6可以得出2015-03-0202:10:00至2015-03-0202:10:59全部存在视频,2015-03-0202:11:00至2015-03-0202:14:59全部不存在视频,至此实现秒级的视频检索。
可选的,在本申请另一实施例中,当视频检索请求中的时间条件匹配到视频信息标识为空的子时间段时,如果保存的上一个时间点为存储启动时间点,则针对所述存储启动时间点到当前时间点的检索结果为全部存在视频,所述当前时间点以后的检索结果为全部不存在视频。如果保存的上一个时间点为存储停止时间点,则针对所述视频信息标识为空的子时间段的检索结果为全部不存在视频。
具体地,如果视频检索请求中的时间条件匹配到视频信息标识为空的子时间段,则说明针对该子时间段视频管理服务器101还没有接收到视频存储的写入端102上报的相关时间点的信息,则视频管理服务器101可以根据已保存的上一个时间点确定检索结果。以前述表2、表4以及表6所示的视频数据表为例,假设所述视频检索请求中的时间条件为2015-03-0204:00:00至2015-03-0205:00:00,则查询表2所示的第一级视频数据表得知这个子时间段的视频信息标识为空,而保存的上一个时间点为存储停止时间点,则视频管理服务器101可以确认时间条件2015-03-0204:00:00至2015-03-0205:00:00全部不存在视频。
又假设,视频管理服务器101已保存的上一个时间点为存储启动时间点,该存储启动时间点为2015-03-0206:00:00,如果视频管理服务器101在2015-03-0207:59:59接收到视频检索请求,该视频检索请求中的时间条件为2015-03-0206:00:00至2015-03-0223:59:59,则视频管理服务器101可以确定所述存储启动时间点2015-03-0206:00:00至当前时间点2015-03-0207:59:59的检索结果为全部存在视频,而2015-03-0208:00:00至2015-03-0223:59:59的检索结果为全部不存在视频。
由以上描述可以看出,本申请视频存储的写入端可以在视频存储状态发生变化时上报的存储启动时间点以及存储停止时间点,视频管理服务器可以根据预设的视频数据表级数、各级对应的时间粒度以及所述存储启动时间点、所述存储停止时间点,逐级生成视频数据表,以使得视频数据表的生成可以精确到秒级,进而提高视频检索的及时性和精准度。同时,采用级联形式的视频数据表,还可以提高视频检索的效率。
与前述视频数据表的生成方法的实施例相对应,本申请还提供了视频数据表的生成装置的实施例。
本申请视频数据表的生成装置的实施例分别应用在视频管理服务器或者视频存储的写入端上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在视频管理服务器或者视频存储的写入端的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5以及图6所示,为本申请视频数据表的生成装置所在视频管理服务器以及视频存储的写入端的一种硬件结构图,除了图5或者图6所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的视频管理服务器或者视频存储的写入端通常根据该视频管理服务器或者视频存储的写入端的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图7,本申请提供的一种应用在视频管理服务器上的视频数据表的生成装置的结构示意图,所述视频数据表的生成装置500可以包括:时间保存单元501、粒度选择单元502、数据表生成单元503、标识确定单元504、循环更新单元505、视频检索单元506以及检索跳转单元507。
其中,所述时间保存单元501,用于接收并保存视频存储的写入端上报的存储启动时间点以及存储停止时间点;
所述粒度选择单元502,用于选择第M级时间粒度为当前时间粒度,其中M为自然数,初始值为缺省的计数初始值;
所述数据表生成单元503,用于使用当前时间粒度将当前待规划时间段划分为多个子时间段,以生成本级视频数据表;
所述标识确定单元504,用于根据所述存储启动时间点以及所述存储停止时间点确定所述本级视频数据表中相关子时间段的视频信息标识,其中,所述视频信息标识包括:全部存在视频、全部不存在视频以及部分存在视频;
所述循环更新单元505,用于判断M是否小于预设的级数,如果M小于预设的级数,则将视频信息标识为部分存在视频的子时间段更新为当前待规划时间段,并将M更新为M+1,调用粒度选择单元502。
所述视频检索单元506,用于在接收到视频检索请求后,根据所述视频检索请求中的时间条件对视频数据表进行逐级检索;
所述检索跳转单元507,用于在所述时间条件匹配到视频信息标识为部分存在视频的子时间段时,跳转到下一级视频数据表继续检索所述部分存在视频的子时间段,直到所述时间条件匹配不到视频信息标识为部分存在视频的子时间段为止。
可选的,所述视频检索单元506,进一步地用于在所述时间条件匹配到视频信息标识为空的子时间段时,如果保存的上一个时间点为存储启动时间点,则针对所述存储启动时间点到当前时间点的检索结果为全部存在视频,如果保存的上一个时间点为存储停止时间点,则针对所述视频信息标识为空的子时间段的检索结果为全部不存在视频。
可选的,所述标识确定单元504,进一步用于在M为所述预设的级数时,如果M级时间粒度不等于1秒,则针对M级视频数据表中的每个子时间段,依次确定并保存所述子时间段中每一秒的视频信息标识。
请参考图8,本申请提供的一种应用在视频存储的写入端上的视频数据表的生成装置的结构示意图,所述视频数据表的生成装置600可以包括:视频存储单元601、时间发送单元602、状态保存单元603、状态更新单元604以及时间重发单元605。
其中,所述视频存储单元601,用于将视频存储到存储设备中;
所述时间发送单元602,用于发送视频存储状态变化时的时间点给视频管理服务器,以供所述视频管理服务器生成视频数据表;
其中,所述视频存储状态变化时的时间点包括存储启动时间点以及存储停止时间点。
可选的,所述时间发送单元602,具体在视频存储状态发生变化时,发送所述时间点给视频管理服务器。
所述状态保存单元603,用于保存所述时间点以及对应的通告状态,所述通告状态的包括已通告和未通告,所述通告状态的初始状态为未通告;
所述状态更新单元604,用于接收视频管理服务器在保存所述时间点后发送的保存成功通知,并将所述时间点的通告状态更新为已通告;
所述时间重发单元605,用于在预设的时间内没有接收到视频管理服务器发送的所述保存成功通知时,重新发送所述时间点给视频管理服务器。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (14)
1.一种视频数据表的生成方法,应用在视频管理服务器上,其特征在于,所述方法包括:
接收并保存视频存储的写入端上报的存储启动时间点以及存储停止时间点;
选择第M级时间粒度为当前时间粒度,其中M为自然数,初始值为缺省的计数初始值;
使用当前时间粒度将当前待规划时间段划分为多个子时间段,以生成本级视频数据表;
根据所述存储启动时间点以及所述存储停止时间点确定所述本级视频数据表中相关子时间段的视频信息标识,其中,所述视频信息标识包括:全部存在视频、全部不存在视频以及部分存在视频;
判断M是否小于预设的级数,如果M小于预设的级数,则将视频信息标识为部分存在视频的子时间段更新为当前待规划时间段,并将M更新为M+1,返回选择第M级时间粒度为当前时间粒度的步骤。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到视频检索请求后,根据所述视频检索请求中的时间条件对视频数据表进行逐级检索;
当所述时间条件匹配到视频信息标识为部分存在视频的子时间段时,跳转到下一级视频数据表继续检索所述部分存在视频的子时间段,直到所述时间条件匹配不到视频信息标识为部分存在视频的子时间段为止。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述时间条件匹配到视频信息标识为空的子时间段时,如果保存的上一个时间点为存储启动时间点,则针对所述存储启动时间点到当前时间点的检索结果为全部存在视频,如果保存的上一个时间点为存储停止时间点,则针对所述视频信息标识为空的时间段的检索结果为全部不存在视频。
4.根据权利要求1所述的方法,其特征在于,
在M为所述预设的级数时,如果M级时间粒度不等于1秒,则针对M级视频数据表中的每个子时间段,依次确定并保存所述子时间段中每一秒的视频信息标识。
5.一种视频数据表的生成方法,应用在视频存储的写入端上,其特征在于,所述方法包括:
将视频存储到存储设备中;
发送视频存储状态变化时的时间点给视频管理服务器,以供所述视频管理服务器生成视频数据表;
其中,所述视频存储状态变化时的时间点包括存储启动时间点以及存储停止时间点。
6.根据权利要求5所述的方法,其特征在于,所述发送视频存储状态变化时的时间点给视频管理服务器,包括:
当视频存储状态发生变化时,发送所述时间点给视频管理服务器。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
保存所述时间点以及对应的通告状态,所述通告状态的包括已通告和未通告,所述通告状态的初始状态为未通告;
接收视频管理服务器在保存所述时间点后发送的保存成功通知,并将所述时间点的通告状态更新为已通告;
如果在预设的时间内没有接收到视频管理服务器发送的所述保存成功通知,则重新发送所述时间点给视频管理服务器。
8.一种视频数据表的生成装置,应用在视频管理服务器上,其特征在于,所述装置包括:
时间保存单元,用于接收并保存视频存储的写入端上报的存储启动时间点以及存储停止时间点;
粒度选择单元,用于选择第M级时间粒度为当前时间粒度,其中M为自然数,初始值为缺省的计数初始值;
数据表生成单元,用于使用当前时间粒度将当前待规划时间段划分为多个子时间段,以生成本级视频数据表;
标识确定单元,用于根据所述存储启动时间点以及所述存储停止时间点确定所述本级视频数据表中相关子时间段的视频信息标识,其中,所述视频信息标识包括:全部存在视频、全部不存在视频以及部分存在视频;
循环更新单元,用于判断M是否小于预设的级数,如果M小于预设的级数,则将视频信息标识为部分存在视频的子时间段更新为当前待规划时间段,并将M更新为M+1,调用粒度选择单元。
9.根据权利要求1所述的装置,其特征在于,所述装置还包括:
视频检索单元,用于在接收到视频检索请求后,根据所述视频检索请求中的时间条件对视频数据表进行逐级检索;
检索跳转单元,用于在所述时间条件匹配到视频信息标识为部分存在视频的子时间段时,跳转到下一级视频数据表继续检索所述部分存在视频的子时间段,直到所述时间条件匹配不到视频信息标识为部分存在视频的子时间段为止。
10.根据权利要求9所述的装置,其特征在于,
所述视频检索单元,进一步地用于在所述时间条件匹配到视频信息标识为空的子时间段时,如果保存的上一个时间点为存储启动时间点,则针对所述存储启动时间点到当前时间点的检索结果为全部存在视频,如果保存的上一个时间点为存储停止时间点,则针对所述视频信息标识为空的子时间段的检索结果为全部不存在视频。
11.根据权利要求8所述的装置,其特征在于,
所述标识确定单元,进一步用于在M为所述预设的级数时,如果M级时间粒度不等于1秒,则针对M级视频数据表中的每个子时间段,依次确定并保存所述子时间段中每一秒的视频信息标识。
12.一种视频数据表的生成装置,应用在视频存储的写入端上,其特征在于,所述装置包括:
视频存储单元,用于将视频存储到存储设备中;
时间发送单元,用于发送视频存储状态变化时的时间点给视频管理服务器,以供所述视频管理服务器生成视频数据表;
其中,所述视频存储状态变化时的时间点包括存储启动时间点以及存储停止时间点。
13.根据权利要求12所述的装置,其特征在于,
所述时间发送单元,具体在视频存储状态发生变化时,发送所述时间点给视频管理服务器。
14.根据权利要求12所述的装置,其特征在于,所述装置还包括:
状态保存单元,用于保存所述时间点以及对应的通告状态,所述通告状态的包括已通告和未通告,所述通告状态的初始状态为未通告;
状态更新单元,用于接收视频管理服务器在保存所述时间点后发送的保存成功通知,并将所述时间点的通告状态更新为已通告;
时间重发单元,用于在预设的时间内没有接收到视频管理服务器发送的所述保存成功通知时,重新发送所述时间点给视频管理服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510508126.4A CN105072366B (zh) | 2015-08-18 | 2015-08-18 | 一种视频数据表的生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510508126.4A CN105072366B (zh) | 2015-08-18 | 2015-08-18 | 一种视频数据表的生成方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105072366A true CN105072366A (zh) | 2015-11-18 |
CN105072366B CN105072366B (zh) | 2018-12-07 |
Family
ID=54501635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510508126.4A Active CN105072366B (zh) | 2015-08-18 | 2015-08-18 | 一种视频数据表的生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105072366B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100114856A1 (en) * | 2008-10-31 | 2010-05-06 | Canon Kabushiki Kaisha | Information search apparatus, information search method, and storage medium |
US20110093511A1 (en) * | 2009-10-21 | 2011-04-21 | Tapper Gunnar D | System and method for aggregating data |
CN102244758A (zh) * | 2011-07-08 | 2011-11-16 | 杭州华三通信技术有限公司 | 一种基于录像文件的数据获取方法和设备 |
CN102291256A (zh) * | 2011-07-25 | 2011-12-21 | 杭州华三通信技术有限公司 | 一种监控数据的查询方法和设备 |
CN102456065A (zh) * | 2011-07-01 | 2012-05-16 | 中国人民解放军国防科学技术大学 | 用于数据流的离线历史统计数据存储和查询方法 |
US20130103658A1 (en) * | 2011-10-19 | 2013-04-25 | Vmware, Inc. | Time series data mapping into a key-value database |
CN103324642A (zh) * | 2012-03-23 | 2013-09-25 | 日电(中国)有限公司 | 为数据建立索引的系统和方法以及数据查询方法 |
CN103581626A (zh) * | 2013-11-04 | 2014-02-12 | 浙江宇视科技有限公司 | 一种视频监控系统及其视频存储信息记录方法 |
CN104270605A (zh) * | 2014-09-23 | 2015-01-07 | 浪潮(北京)电子信息产业有限公司 | 一种视频监控数据的处理方法及装置 |
CN104699816A (zh) * | 2015-03-25 | 2015-06-10 | 成都华迈通信技术有限公司 | 一种数据处理方法及装置 |
-
2015
- 2015-08-18 CN CN201510508126.4A patent/CN105072366B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100114856A1 (en) * | 2008-10-31 | 2010-05-06 | Canon Kabushiki Kaisha | Information search apparatus, information search method, and storage medium |
US20110093511A1 (en) * | 2009-10-21 | 2011-04-21 | Tapper Gunnar D | System and method for aggregating data |
CN102456065A (zh) * | 2011-07-01 | 2012-05-16 | 中国人民解放军国防科学技术大学 | 用于数据流的离线历史统计数据存储和查询方法 |
CN102244758A (zh) * | 2011-07-08 | 2011-11-16 | 杭州华三通信技术有限公司 | 一种基于录像文件的数据获取方法和设备 |
CN102291256A (zh) * | 2011-07-25 | 2011-12-21 | 杭州华三通信技术有限公司 | 一种监控数据的查询方法和设备 |
US20130103658A1 (en) * | 2011-10-19 | 2013-04-25 | Vmware, Inc. | Time series data mapping into a key-value database |
CN103324642A (zh) * | 2012-03-23 | 2013-09-25 | 日电(中国)有限公司 | 为数据建立索引的系统和方法以及数据查询方法 |
CN103581626A (zh) * | 2013-11-04 | 2014-02-12 | 浙江宇视科技有限公司 | 一种视频监控系统及其视频存储信息记录方法 |
CN104270605A (zh) * | 2014-09-23 | 2015-01-07 | 浪潮(北京)电子信息产业有限公司 | 一种视频监控数据的处理方法及装置 |
CN104699816A (zh) * | 2015-03-25 | 2015-06-10 | 成都华迈通信技术有限公司 | 一种数据处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
徐恪等: "《高等计算机网络-体系结构、协议机制、算法设计与路由器》", 30 September 2003 * |
Also Published As
Publication number | Publication date |
---|---|
CN105072366B (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1566734A2 (en) | Method and system for troubleshooting a misconfiguration of a computer system based on configurations of other computer systems | |
CN111414389B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
US9853906B2 (en) | Network prioritization based on node-level attributes | |
CN105657000A (zh) | 消息传送方法及装置 | |
CN101103331B (zh) | 在内容寻址的存储设备上实施应用程序特定管理策略 | |
CN111770002B (zh) | 测试数据转发控制方法、装置、可读存储介质和电子设备 | |
CN108228322B (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
CN110162512A (zh) | 一种日志检索方法、装置及存储介质 | |
CN109379445A (zh) | 一种推送消息的发送方法及装置 | |
US8683027B2 (en) | Utilization of uncertainty dependency relationships between items in a data stream | |
CN102834806A (zh) | 系统结构管理设备、系统结构管理方法和程序 | |
US8433768B1 (en) | Embedded model interaction within attack projection framework of information system | |
CN104050292A (zh) | 省流量模式搜索服务的方法、服务器、客户端和系统 | |
CN108228432A (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
CN106126419A (zh) | 一种应用程序的调试方法及装置 | |
CN103595808A (zh) | 一种文件更新信息推送方法及装置 | |
US8560698B2 (en) | Allocating unique identifiers using metadata | |
CN113448770B (zh) | 用于恢复数据的方法、电子设备和计算机程序产品 | |
US10628242B1 (en) | Message stream processor microbatching | |
CN116760745A (zh) | 网络异常处理方法、装置、设备、存储介质和程序产品 | |
CN108880994B (zh) | 一种重发邮件的方法和装置 | |
CN114449031B (zh) | 信息获取方法、装置、设备和存储介质 | |
CN113852610B (zh) | 报文处理方法、装置、计算机设备和存储介质 | |
CN105072366A (zh) | 一种视频数据表的生成方法和装置 | |
CN103778218A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |