一种针对存储录像不连续的分片加速方法转让专利

申请号 : CN201911177764.7

文献号 : CN111314776B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林建王亚东

申请人 : 重庆紫光华山智安科技有限公司

摘要 :

本发明提供一种针对存储录像不连续的分片加速方法,包括采集待处理的录像段,并对待处理的录像段进行分片处理,分片处理包括:根据分片的最小时长和每段录像片段的时长,获取待处理的录像段的最大分片数;计算每段录像段最大的分片数与所述待处理的录像段的最大分片数的比例;根据所述比例,获取每个相应的录像段需要新增的分片数;本发明可以在GPU分析资源有限的系统中,针对视频录像分析的任务,存储存在录像不连续的情况下,满足资源的优化使用和分析速率的提升,本发明提出的分片方法,可以根据分片方法对视频录像均匀分片为若干子任务,然后给录像子任务分配分析资源,开始并行分析,达到倍速分析和分析耗时缩短的效果。

权利要求 :

1.一种针对存储录像不连续的分片加速方法,其特征在于,采集待处理的录像段,并对待处理的录像段进行分片处理,所述分片处理包括:根据分片的最小时长和每段录像片段的时长,获取待处理的录像段的最大分片数;

计算每段录像段最大的分片数与所述待处理的录像段的最大分片数的比例;

根据所述比例,获取每个相应的录像段需要新增的分片数;

根据分片处理的结果和剩余可用分析资源进行资源分配和视频解析,当一分片分析完成并空出分析资源时,对分片处理后的录像段重新进行所述分片处理,并对重新进行所述分片处理后的录像段重新分配资源进行视频解析。

2.根据权利要求1所述的针对存储录像不连续的分片加速方法,其特征在于,当一分片分析完成空出分析资源时,获取其他分片的新的起始分析时刻,并根据所述其他分片的新的起始分析时刻,重新进行所述分片处理。

3.根据权利要求2所述的针对存储录像不连续的分片加速方法,其特征在于,根据其他分片的原始开始时刻、原始结束时刻以及该分片的分析进度,获取所述其他分片的新的起始分析时刻;

所述其他分片的起始分析时刻通过如下公式获取:ts′=ts+(ts‑te)×p其中,ts’为其他分片的新的起始分析时刻,ts为待处理录像段的开始时刻,te表示录像片段结束时刻,p为该录像片段的分析进度。

4.根据权利要求1所述的针对存储录像不连续的分片加速方法,其特征在于,根据当前时刻剩余分析资源数量和当前时刻存储的实际录像片段数目,分别获取当前每个录像段需要新增的分片数,进而获取整个录像段最终分片的数目;

通过如下公式获取每个相应的录像段需要新增的分片数:其中,EA为在某一时刻剩余分析资源,N为时间段内存储的实际录像片段数目,Tn为其中第n段的录像片段的时长,tmin为可以分片的最小时长,M为最终得到的分片的数目。

5.根据权利要求1‑4任一所述的针对存储录像不连续的分片加速方法,其特征在于,根据分片处理结果,获取最大异常次数阈值,当逻辑分片任务异常次数累计超过所述最大异常次数阈值时,释放分配资源并将录像任务状态由运行态更新为异常态。

6.根据权利要求5所述的针对存储录像不连续的分片加速方法,其特征在于,预设等待时间阈值,当释放分配资源并将录像任务状态由运行态更新为异常态后,在达到等待时间阈值时,重新分配资源尝试分析。

7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:该程序被处理器执行时实现权利要求1至6中任一项所述方法。

8.一种电子终端,其特征在于,包括:处理器及存储器;

所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如权利要求1至6中任一项所述方法。

说明书 :

一种针对存储录像不连续的分片加速方法

技术领域

[0001] 本发明涉及计算机应用领域,尤其涉及一种针对存储录像不连续的分片加速方法。

背景技术

[0002] 视频监控是安全防范系统的重要组成部分,近年来,经过算法的演进和技术的革新,视频解析技术在安防行业得到大规模的应用。通过算法分析存储服务器中的视频录像,
提取出重要的人车物等信息,并进一步转化为相关职能部门所用的情报,从而实现视频数
据向信息、情报的转化。
[0003] 但是,视频解析需要占用一定分析资源,在资源有限的情况下,对视频录像进行合理的分片切割然后并行分析,能够实现视频解析速度的提升。因此,当面临存储服务器中的
视频录像不连续的情况,如何对录像分片切割,实现资源合理利用,实现资源利用的最大化
是目前亟需解决的问题。

发明内容

[0004] 鉴于以上所述现有技术的缺点,本发明提供一种针对存储录像不连续的分片加速方法,以解决上述技术问题。
[0005] 本发明提供的针对存储录像不连续的分片加速方法,包括
[0006] 采集待处理的录像段,并对待处理的录像段进行分片处理,所述分片处理包括:
[0007] 根据分片的最小时长和每段录像片段的时长,获取待处理的录像段的最大分片数;
[0008] 计算每段录像段最大的分片数与所述待处理的录像段的最大分片数的比例;
[0009] 根据所述比例,获取每个相应的录像段需要新增的分片数。
[0010] 可选的,根据分片处理的结果和剩余可用分析资源进行资源分配和视频解析,当一分片分析完成并空出分析资源时,对分片处理后的录像段进行二次分片处理,并对二次
分片处理后的录像段重新分配资源进行视频解析。
[0011] 可选的,当一分片分析完成空出分析资源时,获取其他分片的新的起始分析时刻,并根据所述其他分片的新的起始分析时刻,进行二次分片处理。
[0012] 可选的,根据其他分片的原始开始时刻、原始结束时刻以及该分片的分析进度,获取所述其他分片的新的起始分析时刻。
[0013] 可选的,所述其他分片的起始分析时刻通过如下公式获取:
[0014] ts′=ts+(ts‑te)×p
[0015] 其中,ts’为其他分片的新的起始分析时刻,ts为待处理录像段的开始时刻,te表示录像片段结束时刻,p为该录像片段的分析进度。
[0016] 可选的,根据当前时刻剩余分析资源数量和当前时刻存储的实际录像片段数目,分别获取当前每个录像段需要新增的分片数,进而获取整个录像段最终分片的数目。
[0017] 可选的,通过如下公式获取每个相应的录像段需要新增的分片数:
[0018]
[0019] 其中,EA为在某一时刻剩余分析资源,N为时间段内存储的实际录像片段数目,Tn为其中第n段的录像片段的时长,tmin为可以分片的最小时长,M为最终得到的分片的数目。
[0020] 可选的,根据分片处理结果,获取最大异常次数阈值,当逻辑分片任务异常次数累计超过所述最大异常次数阈值时,释放分配资源并将录像任务状态由运行态更新为异常
态。
[0021] 可选的,预设等待时间阈值,当释放分配资源并将录像任务状态由运行态更新为异常态后,在达到等待时间阈值时,重新分配资源尝试分析。
[0022] 本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实上述中任一项所述方法。
[0023] 本发明还提供一种电子终端,包括:处理器及存储器;
[0024] 所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如上述中任一项所述方法。
[0025] 本发明的有益效果:本发明中针对存储录像不连续的分片加速方法,可以在GPU分析资源有限的系统中,针对视频录像分析的任务,存储存在录像不连续的情况下,满足资源
的优化使用和分析速率的提升,本发明提出的分片方法,可以根据分片方法对视频录像均
匀分片为若干子任务,然后给录像子任务分配分析资源,开始并行分析,达到倍速分析和分
析耗时缩短的效果。

附图说明

[0026] 图1是本发明实施例中针对存储录像不连续的分片加速方法的流程示意图。
[0027] 图2是本发明实施例中针对存储录像不连续的分片加速方法的实施例一的分片结果示意图。

具体实施方式

[0028] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实
施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离
本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施
例中的特征可以相互组合。
[0029] 需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸
绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也
可能更为复杂。
[0030] 在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易
见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以
避免使本发明的实施例难以理解。
[0031] 如图1所示,本实施例中的针对存储录像不连续的分片加速方法,包括
[0032] 采集待处理的录像段,并对待处理的录像段进行分片处理,所述分片处理包括:
[0033] 根据分片的最小时长和每段录像片段的时长,获取待处理的录像段的最大分片数;
[0034] 计算每段录像段最大的分片数与所述待处理的录像段的最大分片数的比例;
[0035] 根据所述比例,获取每个相应的录像段需要新增的分片数。
[0036] 本实施例中的针对存储录像不连续的分片加速方法基于用户需要对某一段时间内的存储录像分析的场景下,由于在整个解析系统中,在一时刻分析资源是有限的,当在录
像时间段内,录像存储不连续导致的存在多段录像的情况下,需要对整个时段内的存储中
的录像进行分析,但是实际情况录像不连续,通过本实施例中的方法,可以采用一种合理的
方式,对录像段进行逻辑上均匀的切片,并分配分析资源达到并行分析的效果。
[0037] 在本实施例中,根据分片处理的结果和剩余可用分析资源进行资源分配和视频解析,当一分片分析完成并空出分析资源时,对分片处理后的录像段进行二次分片处理,并对
二次分片处理后的录像段重新分配资源进行视频解析。
[0038] 首先,通过如下公式计算出存储录像段内可以得到的最大分片数P。
[0039]
[0040] 其中,Tn表示其中第n段的录像片段的时长,tmin表示可以分片的最小时长,Tn/tmin表示一段录像片段可以达到的最大分片数,求和后推导出一段录像理论上可以得到的最大
分片数P。
[0041] 再通过
[0042]
[0043] 计算出最终的分片数目M,
[0044] 其中,EA为在某一时刻剩余分析资源,N为时间段内存储的实际录像片段数目,Tn为其中第n段的录像片段的时长,tmin为可以分片的最小时长,M为最终得到的分片的数目。
[0045] 接着,根据上述公式分片后开始分配资源开始分析。
[0046] 最后,为了规避存储中存在时长很短无法继续分片的录像片段,导致马上分析完成空出资源的情况,提出了录像片段重新分片的策略。策略如下:
[0047] 有一个分片分析完成空出分析资源后,根据公式(3)
[0048] ts′=ts+(ts‑te)×p 公式(3)
[0049] 计算出其他分片的新的起始分析时刻。
[0050] 其中,ts’为其他分片的新的起始分析时刻,ts为待处理录像段的开始时刻,te表示录像片段结束时刻,p为该录像片段的分析进度。
[0051] 然后根据新的起始分析时刻,重新按照分片公式进行分片,然后分配资源开始分析。
[0052] 下面以一个具体实施例进行介绍:
[0053] 实施例一
[0054] 对1个IPC建立视频解析任务,案发时间为2019年7月04日下午16:00‑17:30。系统总分析资源数目为100,已用分析资源为90,可用分析资源为10,最小分片时长是5分钟。
[0055] 建立的解析任务时间为2019年7月04日下午16:00‑17:30。实际存储中录像不连续,存在两段录像分别是2019年7月04日下午16:00:00‑16:20:02,和16:30:00‑17:30:00。
[0056] 根据可用分析资源得到最优分片数为10片。16:00:00‑16:20:02录像段最大可分片数是4片,16:30:00‑17:30:00录像段最大可分片数是12片,录像最大可分片数是16片。根
据最大可分片数比例,16:00:00‑16:20:02录像段需要分为3片,16:30:00‑17:30:00需要分
为7片(计算的过程为EA=10,N=2,T1=20,T2=60,tmin=5。1+(10‑2)×60/5×1/16=7)。
创建任务后分片逻辑如图2所示。
[0057] 录像逻辑分片完成后,分配分析资源开始分析,并开始任务管理/异常检测
[0058] 由分片数10片得到最大异常次数为30次,在实际工作中,如果尝试次数设置太少,会容易出现偶现错误导致任务变为异常的情况;尝试次数设置太多,会出现任务空占着资
源但是长时间无法正常分析的情况,优选的,在本实施例中,可以根据经验值将最大异常次
数设定为分片数的3倍,这里就是10*3=30次,平摊到每个子任务就是3次机会,当逻辑分片
任务异常次数累计大于30次后,释放分配资源,并将录像任务状态由运行态更新为异常态。
等待1分钟后重新分配资源尝试分析。
[0059] 相应地,本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中的任一项方法。
[0060] 本实施例还提供一种电子终端,包括:处理器及存储器;
[0061] 所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行本实施例中任一项方法。
[0062] 本实施例中的计算机可读存储介质,本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序
可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步
骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0063] 本实施例提供的电子终端,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接
口用于进行通信,处理器和收发器用于运行计算机程序,使电子终端执行如上方法的各个
步骤。
[0064] 在本实施例中,存储器可能包含随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non‑volatile memory),例如至少一个磁盘存储器。
[0065] 上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器
(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific 
Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,
简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0066] 在上述实施例中,说明书对“本实施例”、“一实施例”、“另一实施例”、或“其他实施例”的提及表示结合实施例说明的特定特征、结构或特性包括在至少一些实施例中,但不必
是全部实施例。“本实施例”、“一实施例”、“另一实施例”的多次出现不一定全部都指代相同
的实施例。如果说明书描述了部件、特征、结构或特性“可以”、“或许”或“能够”被包括,则该
特定部件、特征、结构或特性“可以”、“或许”或“能够”被包括,则该特定部件、特征、结构或
特性不是必须被包括的。如果说明书或权利要求提及“一”元件,并非表示仅有一个元件。如
果说明书或权利要求提及“一另外的”元件,并不排除存在多于一个的另外的元件。
[0067] 在上述实施例中,尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变形对本领域普通技术人员来说将是
显而易见的。例如,其他存储结构(例如,动态RAM(DRAM))可以使用所讨论的实施例。本发明
的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。
[0068] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实
施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例
的部分说明即可。
[0069] 本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶
盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的
分布式计算环境等等。
[0070] 本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组
件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由
通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以
位于包括存储设备在内的本地和远程计算机存储介质中。
[0071] 上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因
此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完
成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。