CN111681170B - 一种图像处理方法、装置及电子设备 - Google Patents
一种图像处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111681170B CN111681170B CN202010525665.XA CN202010525665A CN111681170B CN 111681170 B CN111681170 B CN 111681170B CN 202010525665 A CN202010525665 A CN 202010525665A CN 111681170 B CN111681170 B CN 111681170B
- Authority
- CN
- China
- Prior art keywords
- frame
- spelling
- preset
- candidate
- processing
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 178
- 238000000034 method Methods 0.000 claims abstract description 119
- 230000008569 process Effects 0.000 claims abstract description 90
- 238000013528 artificial neural network Methods 0.000 claims abstract description 18
- 238000009432 framing Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 9
- 230000001133 acceleration Effects 0.000 abstract description 2
- 238000012544 monitoring process Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 230000001186 cumulative effect Effects 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 7
- 238000012806 monitoring device Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000012216 screening Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明实施例提供了一种图像处理方法、装置及电子设备。其中,所述方法包括:根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数;按照所述最佳拼帧数,从所述视频数据流中获取所述最佳拼帧数个待处理图像;将所获取的所述最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。可以充分考虑剩余系统资源,以及图像处理对实时性的要求,根据预先统计得到的关系模型、帧间间隔、预设延时时长以及剩余系统资源,准确地动态调整拼帧处理的拼帧数,以在满足实时性的要求以及满足系统剩余资源的限制下,通过尽可能增加拼帧处理的拼帧数,提高图像处理的效率,实现对图像处理的加速。
Description
技术领域
本发明涉及图像处理技术领域,特别是涉及一种图像处理方法、装置及电子设备。
背景技术
神经网络被广泛应用于图像处理中,由于神经网络的运算量较大,因此利用神经网络进行图像处理消耗的时长往往较长,在需要对多个图像进行图像处理时,该技术问题将被进一步放大。
相关技术中,可以将多个图像拼接为一个拼接图像,并利用神经网络对该拼接图像进行图像处理,以通过单次神经网络运算,并行地完成对多个图像的图像处理,下文称该处理方式为拼帧处理,将该多个图像的数目称为拼帧数。拼帧处理会提高单次神经网络运算所消耗的时长,但是可以有效降低神经网络运算的次数,因此可以降低对多个图像进行图像处理时所消耗的总时长,提高图像处理的效率,并且图像处理的效率随着拼帧数的增加而提高。
在实际应用过程中,拼帧处理所针对的多个图像可以是不同时刻生成的,而拼帧处理的拼帧数往往是预设值,因此如果该预设值设置的较大,由于需要等待多个图像全部生成后才能进行拼帧处理,因此所针对的多个图像中先生成的图像等待的时长较长,导致先生成的图像不能够及时得到处理,而如果该预设值设置的较小,则导致图像处理的效率被提高幅度的有限。因此,如何合理利用拼帧处理,充分提高图像处理的效率,成为亟待解决的技术问题。
发明内容
本发明实施例的目的在于提供一种图像处理方法、装置及电子设备,以实现在满足图像处理的实时性的要求以及系统资源的限制下,充分提高图像处理的效率。具体技术方案如下:
在本发明实施例的第一方面,提供了一种图像处理方法,所述方法包括:
根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,所述关系模型用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的系统资源以及拼帧处理过程中运算所消耗的运算时长之间的对应关系,所述剩余系统资源为能够用于拼帧处理的系统资源,所述最佳拼帧数为满足预设可行条件的拼帧处理所能够采用的拼帧数的最大值,所述预设可行条件为所消耗的系统资源不大于所述剩余系统资源,并且所产生的累计延时不大于所述预设延时时长阈值,所述帧间间隔为待处理的视频数据流中相邻视频帧在时域上的间隔;
按照所述最佳拼帧数,从所述视频数据流中获取所述最佳拼帧数个待处理图像;
将所获取的所述最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。
在一种可能的实施例中,所述根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,包括:
获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型;
将各个候选拼帧数输入所述关系模型,得到所述关系模型输出的候选拼帧数对应的预估系统资源消耗量以及预估运算时长,其中,所述预估系统资源消耗量用于表示采用所输入的候选拼帧数进行拼帧处理时所消耗的内存和带宽的预估值,所述预估运算时长为采用所输入的候选拼帧数进行拼帧处理过程中运算所消耗的运算时长的预估值;
根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,所述预设关系式集合中包括第一预设关系式和预设第二关系式,所述第一预设关系式和所述第二预设关系式为候选拼帧数、预估运算时长、帧间间隔以及预设延时时长之间的关系式;
如果所述目标拼帧数对应的预估系统资源消耗量不多于所述剩余系统资源,则将所述目标拼帧数确定为最佳拼帧数。
在一种可能的实施例中,所述第一预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用该候选拼帧数进行拼帧处理所产生的累计延时,并且所表征的累计延时小于预设延时时长阈值;
所述第二预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用的拼帧数等于该候选拼帧数加一的拼帧处理所产生的累计延时,并且所表征的累计延时大于预设延时时长阈值。
在一种可能的实施例中,所述第一预设关系式如下所示:
Tdelay≥Tgap*NFn+TFn
其中,Tdelay为预设延时时长阈值、Tgap为帧间间隔、Fn为候选拼帧数、NFn为所采用的拼帧数等于Fn的拼帧处理所涉及的视频帧的数量、TFn为Fn对应的预估运算时长;
所述第二预设关系式如下所示:
Tdelay<Tgap*NFn+1+TFn+1
其中,NFn+1为所采用的拼帧数等于Fn+1的拼帧处理所涉及的视频帧的数量、TFn+1为Fn+1对应的预估运算时长。
在一种可能的实施例中,所述视频数据流中每个视频帧包括一个待处理图像;
所述NFn等于Fn-1,并且所述NFn+1等于Fn。
在一种可能的实施例中,所述视频数据流中至少存在一个视频帧包括多个待处理图像;
在所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数之前,还包括:
依次针对待处理的视频数据流中的各个视频帧,确定该视频帧的帧延时是否大于所述预设延时时长阈值,所述帧延时用于表示对所述视频数据流中该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像进行拼帧处理所消耗的处理时长,并且所述帧延时是根据各个候选拼帧数对应的预估预算时长、帧间间隔以及所述视频数据流中各视频帧中待处理图像的数目计算得到的;
所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,包括:
直至该视频帧的所述帧延时大于所述预设延时时长阈值,根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合并且大于第一拼帧数并且小于第二拼帧数的候选拼帧数中选取目标拼帧数,所述第一拼帧数为该视频帧之前所有待处理的视频帧中的待处理图像的总数,所述第二拼帧数为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数。
在一种可能的实施例中,所述获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型,包括:
进行多次拼帧处理,所述多次拼帧处理中至少两次拼帧处理所采用的拼帧数不同;
统计每次拼帧处理所采用的拼帧数、所消耗的内存、所消耗的带宽以及拼帧处理过程中运算所消耗的实际运算时长,得到关系模型。
在本发明实施例的第二方面,提供了一种图像处理装置,所述装置包括:
拼帧策略模块,用于根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,所述关系模型用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的系统资源以及拼帧处理过程中运算所消耗的运算时长之间的对应关系,所述剩余系统资源为能够用于拼帧处理的系统资源,所述最佳拼帧数为满足预设可行条件的拼帧处理所能够采用的拼帧数的最大值,所述预设可行条件为所消耗的系统资源不大于所述剩余系统资源,并且所产生的累计延时不大于所述预设延时时长阈值,所述帧间间隔为待处理的视频数据流中相邻视频帧在时域上的间隔;
图像获取模块,用于从所述视频数据流中获取所述最佳拼帧数个待处理图像;
拼帧处理模块,用于将所获取的所述最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。
在一种可能的实施例中,所述拼帧策略模块根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,包括:
获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型;
将各个候选拼帧数输入所述关系模型,得到所述关系模型输出的候选拼帧数对应的预估系统资源消耗量以及预估运算时长,其中,所述预估系统资源消耗量用于表示采用所输入的候选拼帧数进行拼帧处理时所消耗的内存和带宽的预估值,所述预估运算时长为采用所输入的候选拼帧数进行拼帧处理过程中运算所消耗的运算时长的预估值;
根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,所述预设关系式集合中包括第一预设关系式和预设第二关系式,所述第一预设关系式和所述第二预设关系式为候选拼帧数、预估运算时长、帧间间隔以及预设延时时长之间的关系式;
如果所述目标拼帧数对应的预估系统资源消耗量不多于所述剩余系统资源,则将所述目标拼帧数确定为最佳拼帧数。
在一种可能的实施例中,所述第一预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用该候选拼帧数进行拼帧处理所产生的累计延时,并且所表征的累计延时小于预设延时时长阈值;
所述第二预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用的拼帧数等于该候选拼帧数加一的拼帧处理所产生的累计延时,并且所表征的累计延时大于预设延时时长阈值。
在一种可能的实施例中,所述第一预设关系式如下所示:
Tdelay≥Tgap*NFn+TFn
其中,Tdelay为预设延时时长阈值、Tgap为帧间间隔、Fn为候选拼帧数、NFn为所采用的拼帧数等于Fn的拼帧处理所涉及的视频帧的数量、TFn为Fn对应的预估运算时长;
所述第二预设关系式如下所示:
Tdelay<Tgap*NFn+1+TFn+1
其中,NFn+1为所采用的拼帧数等于Fn+1的拼帧处理所涉及的视频帧的数量、TFn+1为Fn+1对应的预估运算时长。
在一种可能的实施例中,所述视频数据流中每个视频帧包括一个待处理图像;
所述NFn等于Fn-1,并且所述NFn+1等于Fn。
在一种可能的实施例中,所述视频数据流中至少存在一个视频帧包括多个待处理图像;
所述拼帧策略模块,还用于在所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数之前,依次针对待处理的视频数据流中的各个视频帧,确定该视频帧的帧延时是否大于所述预设延时时长阈值,所述帧延时用于表示对所述视频数据流中该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像进行拼帧处理所消耗的处理时长,并且所述帧延时是根据各个候选拼帧数对应的预估预算时长、帧间间隔以及所述视频数据流中各视频帧中待处理图像的数目计算得到的;
所述拼帧策略模块根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,包括:
直至该视频帧的所述帧延时大于所述预设延时时长阈值,根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合并且大于第一拼帧数并且小于第二拼帧数的候选拼帧数中选取目标拼帧数,所述第一拼帧数为该视频帧之前所有待处理的视频帧中的待处理图像的总数,所述第二拼帧数为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数。
在一种可能的实施例中,所述拼帧策略模块获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型,包括:
进行多次拼帧处理,所述多次拼帧处理中至少两次拼帧处理所采用的拼帧数不同;
统计每次拼帧处理所采用的拼帧数、所消耗的内存、所消耗的带宽以及拼帧处理过程中运算所消耗的实际运算时长,得到关系模型。
在本发明实施例的第三方面,提供了一种电子设备,包括:
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面任一所述的方法步骤。
在本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时上述第一方面任一所述的方法步骤。
本发明实施例提供的图像处理方法、装置及电子设备,可以充分考虑剩余系统资源,以及图像处理对实时性的要求,根据预先统计得到的关系模型、帧间间隔、预设延时时长以及剩余系统资源,准确地动态调整拼帧处理的拼帧数,以在满足实时性的要求以及满足系统剩余资源的限制下,通过尽可能增加拼帧处理的拼帧数,提高图像处理的效率,实现对图像处理的加速。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的图像处理方法的一种流程示意图;
图2为本发明实施例提供的最佳拼帧数确定方法的一种流程示意图;
图3为本发明实施例提供的不固定输入情况下目标拼帧数确定方法的一种流程示意图;
图4为本发明实施例提供的图像处理装置的一种结构示意图;
图5为本发明实施例提供的电子设备的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了更清楚的对本发明实施例提供的图像处理方法进行说明,下面将对本发明实施例提供的图像处理方法的一种可能的应用场景进行示例性说明,在其他可能的应用场景中,本发明实施例提供的图像处理方法也可以应用于其他可能的应用场景,以下示例对此不做任何限制。
在智能监控中,监控设备可以按照预设采集间隔依次采集监控场景的图像,生成监控视频。可以由监控设备或监控设备以外的其他电子设备对监控视频中的视频帧进行图像处理,例如检测视频帧中出现的车辆,又例如对视频帧中出现的目标进行分类,其中,目标可以是指车辆、人员、道路标识等对象中的一种或多种。
图像处理的结果可以向用户展示,以使得用户能够实时获取监控场景的相关信息。假设监控设备的采集间隔为10ms,并且对单个视频帧进行图像处理所消耗的时长为30ms,则如果对每个视频帧串行进行图像处理,则理论上t=0ms采集到的视频帧1将在t=30ms完成图像处理,t=10ms采集到的视频帧2将在t=60ms完成图像处理,完成两个视频帧的图像处理合计需要60ms。
如果对视频帧1和视频帧2进行拼帧处理,假设完成对两个视频帧的拼帧处理所消耗的运算时长为40ms,则由于需要等待监控设备采集到视频帧2才能够对视频帧1和视频帧2进行拼帧处理,所以t=10ms时才能够开始对视频帧1和视频帧2进行拼帧处理,因此在t=50ms时完成对视频帧1和视频帧2的图像处理,可见进行拼帧处理时,得到视频帧1的处理结果的时间将被推迟,但是图像处理效率将提高。并且推迟的幅度与效率提高的幅度将随着拼帧处理所采用的拼帧数的增加而增加。
因此如何确定合适的拼帧数成为亟待解决的技术问题。基于此,本发明实施例提供了一种图像处理方法,可以参见图1,图1所示为本发明实施例提供的图像处理方法的一种流程示意图,可以包括:
S101,根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数。
S102,按照最佳拼帧数,从视频数据流中获取最佳拼帧数个待处理图像。
S103,将所获取的最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。
选用该实施例,可以充分考虑剩余系统资源,以及图像处理对实时性的要求,根据预先统计得到的关系模型、帧间间隔、预设延时时长以及剩余系统资源,准确地动态调整拼帧处理的拼帧数,以在满足实时性的要求以及满足系统剩余资源的限制下,通过尽可能增加拼帧处理的拼帧数,提高图像处理的效率,实现对图像处理的加速。
其中,在S101中,关系模型用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的系统资源以及拼帧处理过程中运算所消耗的运算时长之间的对应关系。
该关系模型的输入为拼帧数,输出为系统资源以及运算时长,该关系模型所输出的系统资源表示采用所输入的拼帧数的拼帧处理所消耗的系统资源,系统资源可以包括内存、带宽、存储空间等资源中的一种或多种资源。该关系模型所输出的运算时长表示采用所输入的拼帧数的拼帧处理过程中运算消耗的运算时长。关系模型可以是根据预设经验预设的,也可以是按照预设方法确定得到的,关于关系模型的确定将在后续实施例中进行详细说明,在此不再赘述。
帧间间隔为待处理的视频数据流中相邻视频帧在时域上的间隔,示例性的,假设待处理的视频数据流中第一帧的时间戳为t=0ms,与第一帧时域相邻的下一帧,即第二帧,的时间戳为t=13ms,则该视频数据流的帧间间隔为13ms。
预设延时时长阈值根据应用场景的不同可以不同,预设延时时长阈值可以是根据用户实际需求,或应用场景的客观要求确定得到的,本实施例对此不做限制。剩余系统资源为能够用于进行拼帧处理的系统资源。
最佳拼帧数为满足预设可行条件的拼帧处理所采用的拼帧数,预设可行条件为:所消耗的系统资源不大于剩余系统资源,并且所产生的累计延时不大于预设延时时长阈值。其中,累计延时为生成时刻最早的待处理图像的延时,以前述关于应用场景的示例为例,累计延时为视频帧1的延时。待处理图像为尚未进行图像处理的图像,示例性的,以智能监控为例,假设需要对监控设备采集到的每个视频帧进行图像处理,并且监控设备采集到的视频数据流的帧间间隔为10ms,并且在t=0ms时采集到视频帧1,在t=10ms时采集到视频帧2,并且假设当前时刻为t=15ms,如果已经对视频帧1进行图像处理,且尚未对视频帧2进行图像处理,则待处理图像包括视频帧2,如果尚未对视频帧1进行图像处理,则待处理图像包括视频帧1和视频帧2。
拼帧处理需要消耗一定的系统资源,而剩余系统资源是有限的,因此受限制剩余系统资源,如果拼帧处理所消耗的系统资源过大,则该拼帧处理无法或难以执行,因此可以认为消耗的系统资源大于剩余系统资源的拼帧处理是不可行的。
同理,如果拼帧处理所产生的的累计延时大于预设延时时长阈值,则可以认为该拼帧处理将使得待处理图像的延时在不可以接受的范围内,因此该拼帧处理是不可行的。
S101的执行时机根据应用场景的不同可以不同,示例性的,可以是每当有新的待处理图像生成时,执行S101,也可以是每间隔预设间隔时长执行S101,在一种可能的实施例中,为充分提高图像处理的实时性,该预设间隔时长不大于待处理图像生成的间隔,在其他可能的实施例中,该预设间隔时长也可以大于待处理图像生成的间隔,本实施例对此不做限制。
在S102中,根据应用场景的不同,待处理图像可以是视频数据流中的视频帧,也可以是根据视频帧得到的图像。例如,以所进行的处理为人脸检测为例,则待处理图像可以为视频数据流中的视频帧,又例如,以所进行的处理为人脸识别为例,则待处理图像可以为从视频帧中提取到的人脸区域的图像。
所获取的待处理图像,应当为视频数据流中生成时刻最早的最佳拼帧数个待处理图像。生成时刻最早的最佳拼帧数个待处理图像中可以包括生成时刻不同的待处理图像,示例性的,假设有5个待处理图像,分别记为待处理图像1-5,其中,待处理图像1的生成时刻为t=0ms,待处理图像2的生成时刻为t=10ms,待处理图像3的生成时刻为t=20ms,待处理图像4的生成时刻为t=30ms,待处理图像5的生成时刻为t=40ms,假设最佳拼帧数为2,则生成时刻最早的最佳拼帧数个待处理图像为待处理图像1和待处理图像2。
在S103中,目标神经网络为对图像进行预设图像处理的神经网络,将获取到的待处理图像并行输入至目标神经网络进行处理,即对获取到的待处理图像进行拼帧处理。理论上拼帧处理所采用的拼帧数越大,则图像处理的效率越高。而为满足实时性的要求以及剩余系统资源的限制下,拼帧处理应当满足可行条件。因此,采用拼帧数为最佳拼帧数拼帧处理对待处理图像进行图像处理,可以在满足实时性的要求以及剩余系统资源的限制下,充分提高图像处理的效率。
下面将对最佳拼帧数的计算过程进行说明,可以参见图2,图2所示为本发明实施例提供的最佳拼帧数计算方法的一种流程示意图,可以包括:
S201,获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中与运算时长之间的对应关系的关系模型。
S202,将各个候选拼帧数输入关系模型,得到关系模型输出的候选拼帧数对应的预估系统资源消耗量以及预估运算时长。
S203,根据各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足预设关系式集合的候选拼帧数中选取目标拼帧数。
S204,如果目标拼帧数对应的预估系统资源消耗量不多于剩余系统资源,则将目标拼帧数确定为最佳拼帧数。
选用该实施例,可以利用关系模型以及预设关系式以相对少的计算量准确的确定出目标拼帧数。
在S201中,拼帧处理所消耗的内存以及拼帧处理消耗的带宽即为拼帧处理所消耗的系统资源。为描述方便,假设拼帧数记为n,所消耗的内存和带宽记为S,运算时长记为T,则关系模型可以表示为(S,T)=f(n),其中f(·)为用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中与运算时长之间的对应关系的映射函数。将n带入该映射函数,即可以得到所消耗的运算时长T和所消耗的内存和带宽S。可以理解的是,该示例中为方便描述,将关系模型以映射函数的形式表示,在其他可能的实施例中,该关系模型也可以是以表格、矩阵等其他形式表示的,本实施例对此不做限制。
该关系模型可以由拟合得到,也可以是基于机器学习得到的,本实施例对此不做限制。并且,该关系模型可以是由本发明实施例提供的图像处理方法的执行主体预先确定得到的,也可以是执行主体以外的其他电子设备预先确定得到并发送至执行主体的。
示例性的,可以是进行多次拼帧处理,其中,多次拼帧处理中至少两次拼帧处理所采用的拼帧数不同。并统计每次拼帧处理所采用的拼帧数、所消耗的内存、带宽以及拼帧处理过程中所消耗的实际运算时长,得到该关系模型。
为描述方便,假设一共进行了m次拼帧处理,并且第i次拼帧处理中所采用的拼帧数为ni,所消耗的内存和带宽为Si,所消耗的实际运算时长为Ti,则通过第i次拼帧处理,可以得到三元组(ni,Si,Ti),可以理解的是,三元组只是一种可能的表示形式,在其他可能的实施例中,也可以将消耗的内存、带宽和运算时长合并表示,例如以Zi表示第i次拼帧处理中所消耗的内存、带宽以及运算时长,则可以是以(ni,Zi)二元组的形式表示,对于不同的表示形式由于原理是相同的,因此在此仅以上述三元组的形式进行描述,其他的形式同理可得故不再赘述。
假设多次拼帧处理的总次数为m,则可以得到一组三元组(n1,S1,T1)、(n2,S2,T2)…(nm,Sm,Tm)。该一组三元组可以视为拼帧数、所消耗的内存、带宽和所消耗的运算时长之间的关系模型。在其他可能的实施例中,也可以是将该一组三元组视为三维空间中的一组点,并对包含这些点在内的曲面进行拟合(如多项式拟合、指数拟合等),得到该曲面的拟合方程,该拟合方程也可以视为拼帧数、所消耗的内存、带宽和所消耗的运算时长之间的关系模型。
在S202中,候选拼帧数为目标拼帧数的候选。预估系统资源消耗量用于表示采用所输入的候选拼帧数进行拼帧处理时所消耗的内存和/或带宽的预估值,预估预算时长为采用所输入的候选拼帧数进行拼帧处理过程中运算所消耗的运算时长的预估值。
如前述S201中的描述,不同应用场景中关系模型的表示形式可以不同,为描述方便,下面假设以关系模型的表示形式为上述一组三元组的形式为例对关系模型的原理进行说明。
假设输入的候选拼帧数为nin,则可以是在一组三元组中查找包括的n与nin相等的三元组,并输出该三元组中的S作为预估系统资源消耗量,输出该三元组中的T作为预估运算时长。例如假设nin=n5,则查找到的三元组为(n5,S5,T5)。关系模型输出的预估系统资源消耗量为S5,输出的预估运算时长为T5。
在一些可能的实施例中,如果没有查找到包括的n与nin相等的三元组,则可以选取包括的n与nin最接近的一个或多个三元组,对所选取的三元组中的S进行插值,将插值得到的结果作为预设系统资源消耗量输出,并对所选取的三元组中的T进行插值,将插值得的的结果作为预设运算时长输出。例如,可以是选取包括的n与nin最接近的两个三元组,假设选取的三元组为(n6,S6,T6)、(n7,S7,T7),则可以按照下式进行插值:
其中,Tout为插值得到的预估运算时长、Sout为插值得到的预估系统资源消耗量。
在S203中,预设关系式集合中包括第一预设关系式和预设第二关系式,第一预设关系式和第二预设关系式为候选拼帧数、预设运算时长、帧间间隔以及预设延时时长之间的关系式。
满足预设关系式集合是指满足第一预设关系式并且满足第二预设关系式。第一预设关系式和第二预设关系式的表示形式在不同的实施例中可以不同,示例性的,在一种可能的实施中,第一预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用该候选拼帧数进行拼帧处理所产生的累计延时,并且所表征的累计延时小于预设延时时长阈值。第二预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用的频帧数等于该候选拼帧数加一的拼帧处理所产生的累计延时,并且所表征的累计延时大于预设延时时长阈值。
关于第一预设关系式和第二预设关系式的形式将在后续实施例中进行详细说明,在此不再赘述。可以理解的是,满足预设关系式集合的候选拼帧数应当为产生的累计延时不大于预设延时时长阈值的拼帧处理所采用的拼帧数。
在S204中,可以理解的是如果目标拼帧数对应的预估系统资源消耗量不多于剩余系统资源,则在系统资源的限制下可以采用目标拼帧数的拼帧处理,因此可以认为目标拼帧数为最佳拼帧数。
如果目标拼帧数对应的预估系统资源消耗量多于剩余系统资源,则在系统资源的限制下无法采用目标拼帧数的拼帧处理,因此该目标拼帧数并非最佳拼帧数。可以返回S203重新从候选拼帧数中确定新的目标拼帧数。
如前述分析,在一种可能的实施例中,第一预设关系式和第二预设关系式中候选拼帧数、预估运算时长以及帧间间隔用于表征累计延时,因此下面将对累计延时的计算进行说明:
拼帧处理需要从待处理的视频数据流中获取到所针对的所有待处理图像后才能够开始进行,因此拼帧处理所产生的累计延时理论上包括两部分时间,运算时长和等待时长。
其中,运算时长为利用剩余系统资源拼帧处理过程中对待处理图像进行运算所消耗的时长,等待时长为拼帧处理所针对的所有待处理图像中,最早生成的待处理图像与最晚生成的待处理图像之间的生成时刻的差值。
示例性的,假设一拼帧处理所针对的待处理图像为待处理图像1和待处理图像2,并且假设待处理图像1在t=0ms生成,待处理图像2是在t=10ms生成,该拼帧处理的所产生的累计延时为30ms,即在t=30ms时完成该拼帧处理,则等待时长为10ms,并且由于在t=0ms至t=10ms之间,待处理图像2还未生成,因此尚未对待处理图像进行运算,是在t=10ms至t=30ms之间对待处理图像进行运算的,因此运算时长为20ms。
可以理解的是,确定最佳拼帧数的过程也将消耗一定的筛选时长,该筛选时长相对于等待时长和运算时长往往为可以忽略不计的较小值。示例性的,假设当前时刻为t=10ms,一共存在两个待处理图像,该两个待处理图像分别生成于t=0ms和t=10ms,则假设在此时开始确定最佳拼帧数,假设确定最佳拼帧数的过程消耗的筛选时长为0.01ms,即在t=10.01ms确定得到最佳拼帧数,并且假设最佳拼帧数为2,则对该两个待处理图像进行拼帧处理,假设该拼帧处理的运算时长为20ms,则在t=30.01ms时完成该拼帧处理,即实际产生的累计延时为30.01ms,而运算时长与等待时长之和为30ms。
因此,在一种可能的实施例中,累计延时包括:运算时长、等待时长以及筛选时长的预估值。筛选时长的预估值可以是根据用户经验或实际测量得到的,本实施例对此不做限制。
由于视频中各视频帧之间的间隔往往是固定的,因此可以按照拼帧处理所针对的视频帧的帧数,以及视频帧之间的帧间间隔计算等待时长。示例性的,以智能监控的场景为例,假设监控设备采集间隔为10ms,则监控视频中相邻视频帧之间的间隔为10ms,如果拼帧处理所针对的待处理图像为监控视频中连续的k个视频帧,则理论上等待时长为(k-1)*10ms。关于运算时长的计算,可以参见前述关于关系模型的相关描述,在此不再赘述。
基于上述分析,在一种可能的实施例中,第一预设关系式可以如下所示:
Tdelay≥Tgap*NFn+TFn
其中,Tdelay为预设延时时长阈值、Tgap为帧间间隔、Fn为候选拼帧数、NFn为所采用的拼帧数等于Fn的拼帧处理所涉及的视频帧的数量、TFn为Fn对应的预估运算时长;
第二预设关系式可以如下所示:
Tdelay<Tgap*NFn+1+TFn+1
其中,NFn+1为所采用的拼帧数等于Fn+1的拼帧处理所涉及的视频帧的数量、TFn+1为Fn+1对应的预估运算时长。
TFn可以通过将Fn输入关系模型得到,TFn+1可以是通过将Fn+1输入关系模型得到,也可以是基于TFn推算得到,本实施例对此不做限制。NFn、NFn+1的计算方式根据应用场景的不同可以不同,下面将针对不同场景分别说明。
场景一:视频数据流中每个视频帧包括一个待处理图像。
例如,假设需要对视频数据流中各视频帧进行人员检测。则待处理图像为视频数据流中的每个视频帧。又例如,假设需要对视频数据流中各视频帧内标定出的车牌区域进行车牌识别,并且每个视频帧中有且仅有一个车牌区域,则待处理图像为视频数据流汇中的每个视频帧内的车牌区域的图像。
在该场景中NFn等于Fn-1,并且所述NFn+1等于Fn。
场景二:视频数据流中至少存在一个视频帧包括多个待处理图像。
例如假设需要对视频数据流中的每个视频帧进行人员检测,并对检测到每个人员进行人员识别,以确定所检测到人员是否为目标人员。则待处理图像可以为视频数据流中的各个视频帧中各个人员所处区域的子图像。由于部分视频帧中可能检测出多个人员,因此视频数据流中至少存在一个视频帧包括多个待处理图像。
假设视频数据流中按照生成时刻由早到晚的顺序排序时的第i个视频帧中包括Gi个待处理图像。则在该场景中,NFn为使下式成立的正整数:
NFn+1为使下式成立的正整数:
下面将分别结合前述场景一和场景二,对目标拼帧数的确定过程进行说明:
在前述场景一中,确定目标拼帧数的方式是重复以下步骤直至所选取的候选拼帧书为目标拼帧数:
步骤1、从候选拼帧数中选取一个候选拼帧数;
步骤2、确定所选取的候选拼帧数是否为目标拼帧数,如果所选取的候选拼帧数不为目标拼帧数,返回步骤1。
其中,第一次选取候选拼帧数时所选取的候选拼帧数可以1,也可以为2,还可以为其他数值,在一种可能的实施例中,为提高确定目标拼帧数的效率,每次选取的候选拼帧数可以与之前所选取的候选拼帧数不同,示例性的,可以是每次选取的候选拼帧数等于上次选取的候选拼帧数加预设数值,可以是每次选取的候选拼帧数等于上次选取的候选拼帧数减预设数值,预设数值可以是任一正整数,如1、2等。
示例性的,可以是从Fn=1开始,确定该Fn是否为目标拼帧数,如果该Fn不为目标拼帧数,则令Fn=Fn+1,并再次确定该Fn是否为目标拼帧数,依次类推,直至Fn为目标拼帧数,此时完成目标拼帧数的确定。
在前述场景二中,确定目标拼帧数的方式可以如图3所示,包括:
S301,依次针对待处理的视频数据流中的各个视频帧,确定该视频帧的帧延时是否大于预设延时时长阈值。
S302,直至该视频帧的帧延时大于预设延时时长阈值,根据各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足预设关系式集合并且大于第一拼帧数并且小于第二拼帧数的候选拼帧数中选取目标拼帧数。
选用该实施例,可以降低选取目标拼帧数的计算量。
在S301中,帧延时用于表示对视频数据流中的该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像进行拼帧处理所消耗的处理时长,并且帧延时是根据各个候选拼帧数对应的预估预算时长、帧间间隔以及视频数据流中各视频帧待处理图像的数目计算得到的。
依次是指按照视频帧的生成时刻由早到晚的顺序。为描述方便,将视频数据流中第i个视频帧以及第i个视频帧之前所有待处理的视频帧中包括的待处理图像的总数Sumi,则Sumi如下式所示:
因此根据前述关于累计延时的计算方式可知,第i个视频帧的帧延时可以按照下式计算得到:
并且在一种可能的实施例中,如果一个视频帧的帧延时等于预设延时时长阈值,则可以确定该视频帧以及该视频帧之前所有待处理的视频帧中包括的待处理图像的总数为目标拼帧数。
在S302中,第一拼帧数为该视频帧之前所有待处理的视频帧中待处理图像的总数,第二拼帧数为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数。
示例性的,假设该视频帧为第i个视频帧,则第一拼帧数为第1至第i-1个视频帧中待处理图像的总数,第二拼帧数为第1至第i个视频帧中待处理图像的总数。
可以理解的是,如果一个视频帧的帧延时小于预设延时时长阈值,则可以认为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数小于目标拼帧数,而如果一个视频帧的帧延时大于预设延时时长阈值,则可以认为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数大于目标拼帧数。因此,在S302中当直至该视频帧的帧延时大于预设延时时长阈值时,可以认为该视频帧之前的任一视频帧的帧延时小于预设延时时长阈值,因此,目标拼帧数应当处于第一拼帧数和第二拼帧数之间。
示例性的,以对视频数据流中各视频帧中的人脸图像进行人脸识别为例,为描述方便,记第i个视频帧中包括Gi个待识别的人脸图像,最早生成的待处理图像为第1个视频帧中的人脸图像。
则可以判断第1个视频帧的帧延时D1是否大于预设延时时长阈值Tdelay,判断结果有三种可能性:
可能性1、D1=Tdelay。
该情况可以推论出无论是否采取拼帧处理,都无法满足实时性的要求,该情况并不存在本发明实施例所要解决的技术问题,因此在此不再赘述。
该情况可以推论出目标拼帧数大于G1。
对于可能性3的情况,此时,由于第1个视频帧的帧延时小于预设延时时长阈值,因此继续判断第2个视频帧的帧延时D2是否大于预设延时时长阈值Tdelay
参见前述关于可能性1的相关说明,可以确定目标拼帧数为G1+G2。
参见前述关于可能性3的相关描述,可以继续判断第3个视频帧的帧延时D3是否大于预设延时时长阈值Tdelay,后续判断的流程可以类推得到,在此不再赘述。
此时可以认为最佳拼帧数在第一拼帧数即G1和第二拼帧数即G2之间,可以将最佳拼帧数表示为G1+G2,,其中G2,为大于0且小于G2的正整数。选用该实施例,可以使得本发明实施例提供的图像处理方法能够适用于不固定输入拼帧应用,即可以有效提高图像处理方法的适用性。
参见图4,图4所示为本发明实施例提供的图像处理装置的一种结构示意图,可以包括:
拼帧策略模块401,用于根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,所述关系模型用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的系统资源以及拼帧处理过程中运算所消耗的运算时长之间的对应关系,所述剩余系统资源为能够用于拼帧处理的系统资源,所述最佳拼帧数为满足预设可行条件的拼帧处理所能够采用的拼帧数的最大值,所述预设可行条件为所消耗的系统资源不大于所述剩余系统资源,并且所产生的累计延时不大于所述预设延时时长阈值,所述帧间间隔为待处理的视频数据流中相邻视频帧在时域上的间隔;
图像获取模块402,用于从所述视频数据流中获取所述最佳拼帧数个待处理图像;
拼帧处理模块403,用于将所获取的所述最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。
在一种可能的实施例中,所述拼帧策略模块401根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,包括:
获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型;
将各个候选拼帧数输入所述关系模型,得到所述关系模型输出的候选拼帧数对应的预估系统资源消耗量以及预估运算时长,其中,所述预估系统资源消耗量用于表示采用所输入的候选拼帧数进行拼帧处理时所消耗的内存和带宽的预估值,所述预估运算时长为采用所输入的候选拼帧数进行拼帧处理过程中运算所消耗的运算时长的预估值;
根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,所述预设关系式集合中包括第一预设关系式和预设第二关系式,所述第一预设关系式和所述第二预设关系式为候选拼帧数、预估运算时长、帧间间隔以及预设延时时长之间的关系式;
如果所述目标拼帧数对应的预估系统资源消耗量不多于所述剩余系统资源,则将所述目标拼帧数确定为最佳拼帧数。
在一种可能的实施例中,所述第一预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用该候选拼帧数进行拼帧处理所产生的累计延时,并且所表征的累计延时小于预设延时时长阈值;
所述第二预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用的拼帧数等于该候选拼帧数加一的拼帧处理所产生的累计延时,并且所表征的累计延时大于预设延时时长阈值。
在一种可能的实施例中,所述第一预设关系式如下所示:
Tdelay≥Tgap*NFn+TFn
其中,Tdelay为预设延时时长阈值、Tgap为帧间间隔、Fn为候选拼帧数、NFn为所采用的拼帧数等于Fn的拼帧处理所涉及的视频帧的数量、TFn为Fn对应的预估运算时长;
所述第二预设关系式如下所示:
Tdelay<Tgap*NFn+1+TFn+1
其中,NFn+1为所采用的拼帧数等于Fn+1的拼帧处理所涉及的视频帧的数量、TFn+1为Fn+1对应的预估运算时长。
在一种可能的实施例中,所述视频数据流中每个视频帧包括一个待处理图像;
所述NFn等于Fn-1,并且所述NFn+1等于Fn。
在一种可能的实施例中,所述视频数据流中至少存在一个视频帧包括多个待处理图像;
所述拼帧策略模块401,还用于在所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数之前,依次针对待处理的视频数据流中的各个视频帧,确定该视频帧的帧延时是否大于所述预设延时时长阈值,所述帧延时用于表示对所述视频数据流中该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像进行拼帧处理所消耗的处理时长,并且所述帧延时是根据各个候选拼帧数对应的预估预算时长、帧间间隔以及所述视频数据流中各视频帧中待处理图像的数目计算得到的;
所述拼帧策略模块401根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,包括:
直至该视频帧的所述帧延时大于所述预设延时时长阈值,根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合并且大于第一拼帧数并且小于第二拼帧数的候选拼帧数中选取目标拼帧数,所述第一拼帧数为该视频帧之前所有待处理的视频帧中的待处理图像的总数,所述第二拼帧数为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数。
在一种可能的实施例中,所述拼帧策略模块401获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型,包括:
进行多次拼帧处理,所述多次拼帧处理中至少两次拼帧处理所采用的拼帧数不同;
统计每次拼帧处理所采用的拼帧数、所消耗的内存、所消耗的带宽以及拼帧处理过程中运算所消耗的实际运算时长,得到关系模型。
本发明实施例还提供了一种电子设备,如图5所示,包括:
存储器501,用于存放计算机程序;
处理器502,用于执行存储器501上所存放的程序时,实现如下步骤:
根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,所述关系模型用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的系统资源以及拼帧处理过程中运算所消耗的运算时长之间的对应关系,所述剩余系统资源为能够用于拼帧处理的系统资源,所述最佳拼帧数为满足预设可行条件的拼帧处理所能够采用的拼帧数的最大值,所述预设可行条件为所消耗的系统资源不大于所述剩余系统资源,并且所产生的累计延时不大于所述预设延时时长阈值,所述帧间间隔为待处理的视频数据流中相邻视频帧在时域上的间隔;
按照所述最佳拼帧数,从所述视频数据流中获取所述最佳拼帧数个待处理图像;
将所获取的所述最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。
在一种可能的实施例中,所述根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,包括:
获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型;
将各个候选拼帧数输入所述关系模型,得到所述关系模型输出的候选拼帧数对应的预估系统资源消耗量以及预估运算时长,其中,所述预估系统资源消耗量用于表示采用所输入的候选拼帧数进行拼帧处理时所消耗的内存和带宽的预估值,所述预估运算时长为采用所输入的候选拼帧数进行拼帧处理过程中运算所消耗的运算时长的预估值;
根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,所述预设关系式集合中包括第一预设关系式和预设第二关系式,所述第一预设关系式和所述第二预设关系式为候选拼帧数、预估运算时长、帧间间隔以及预设延时时长之间的关系式;
如果所述目标拼帧数对应的预估系统资源消耗量不多于所述剩余系统资源,则将所述目标拼帧数确定为最佳拼帧数。
在一种可能的实施例中,所述第一预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用该候选拼帧数进行拼帧处理所产生的累计延时,并且所表征的累计延时小于预设延时时长阈值;
所述第二预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用的拼帧数等于该候选拼帧数加一的拼帧处理所产生的累计延时,并且所表征的累计延时大于预设延时时长阈值。
在一种可能的实施例中,所述第一预设关系式如下所示:
Tdelay≥Tgap*NFn+TFn
其中,Tdelay为预设延时时长阈值、Tgap为帧间间隔、Fn为候选拼帧数、NFn为所采用的拼帧数等于Fn的拼帧处理所涉及的视频帧的数量、TFn为Fn对应的预估运算时长;
所述第二预设关系式如下所示:
Tdelay<Tgap*NFn+1+TFn+1
其中,NFn+1为所采用的拼帧数等于Fn+1的拼帧处理所涉及的视频帧的数量、TFn+1为Fn+1对应的预估运算时长。
在一种可能的实施例中,所述视频数据流中每个视频帧包括一个待处理图像;
所述NFn等于Fn-1,并且所述NFn+1等于Fn。
在一种可能的实施例中,所述视频数据流中至少存在一个视频帧包括多个待处理图像;
在所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数之前,还包括:
依次针对待处理的视频数据流中的各个视频帧,确定该视频帧的帧延时是否大于所述预设延时时长阈值,所述帧延时用于表示对所述视频数据流中该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像进行拼帧处理所消耗的处理时长,并且所述帧延时是根据各个候选拼帧数对应的预估预算时长、帧间间隔以及所述视频数据流中各视频帧中待处理图像的数目计算得到的;
所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,包括:
直至该视频帧的所述帧延时大于所述预设延时时长阈值,根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合并且大于第一拼帧数并且小于第二拼帧数的候选拼帧数中选取目标拼帧数,所述第一拼帧数为该视频帧之前所有待处理的视频帧中的待处理图像的总数,所述第二拼帧数为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数。
在一种可能的实施例中,所述获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型,包括:
进行多次拼帧处理,所述多次拼帧处理中至少两次拼帧处理所采用的拼帧数不同;
统计每次拼帧处理所采用的拼帧数、所消耗的内存、所消耗的带宽以及拼帧处理过程中运算所消耗的实际运算时长,得到关系模型。
上述电子设备提到的存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一图像处理方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一图像处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质以及计算机程序产品的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种图像处理方法,其特征在于,所述方法包括:
根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,所述关系模型用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的系统资源以及拼帧处理过程中运算所消耗的运算时长之间的对应关系,所述剩余系统资源为能够用于拼帧处理的系统资源,所述最佳拼帧数为满足预设可行条件的拼帧处理所能够采用的拼帧数的最大值,所述预设可行条件为所消耗的系统资源不大于所述剩余系统资源,并且所产生的累计延时不大于所述预设延时时长阈值,所述帧间间隔为待处理的视频数据流中相邻视频帧在时域上的间隔;
按照所述最佳拼帧数,从所述视频数据流中获取所述最佳拼帧数个待处理图像;
将所获取的所述最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。
2.根据权利要求1所述的方法,其特征在于,所述根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,包括:
获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型;
将各个候选拼帧数输入所述关系模型,得到所述关系模型输出的候选拼帧数对应的预估系统资源消耗量以及预估运算时长,其中,所述预估系统资源消耗量用于表示采用所输入的候选拼帧数进行拼帧处理时所消耗的内存和带宽的预估值,所述预估运算时长为采用所输入的候选拼帧数进行拼帧处理过程中运算所消耗的运算时长的预估值;
根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,所述预设关系式集合中包括第一预设关系式和第二预设关系式,所述第一预设关系式和所述第二预设关系式为候选拼帧数、预估运算时长、帧间间隔以及预设延时时长之间的关系式;
如果所述目标拼帧数对应的预估系统资源消耗量不多于所述剩余系统资源,则将所述目标拼帧数确定为最佳拼帧数。
3.根据权利要求2所述的方法,其特征在于,所述第一预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用该候选拼帧数进行拼帧处理所产生的累计延时,并且所表征的累计延时小于预设延时时长阈值;
所述第二预设关系式中,候选拼帧数、候选拼帧数对应的预估运算时长、帧间间隔用于表征采用的拼帧数等于该候选拼帧数加一的拼帧处理所产生的累计延时,并且所表征的累计延时大于预设延时时长阈值。
4.根据权利要求3所述的方法,其特征在于,所述第一预设关系式如下所示:
Tdelay≥Tgap*NFn+TFn
其中,Tdelay为预设延时时长阈值、Tgap为帧间间隔、Fn为候选拼帧数、NFn为所采用的拼帧数等于Fn的拼帧处理所涉及的视频帧的数量、TFn为Fn对应的预估运算时长;
所述第二预设关系式如下所示:
Tdelay<Tgap*NFn+1+TFn+1
其中,NFn+1为所采用的拼帧数等于Fn+1的拼帧处理所涉及的视频帧的数量、TFn+1为Fn+1对应的预估运算时长。
5.根据权利要求4所述的方法,其特征在于,所述视频数据流中每个视频帧包括一个待处理图像;
所述NFn等于Fn-1,并且所述NFn+1等于Fn。
6.根据权利要求2-4中任一所述的方法,其特征在于,所述视频数据流中至少存在一个视频帧包括多个待处理图像;
在所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数之前,还包括:
依次针对待处理的视频数据流中的各个视频帧,确定该视频帧的帧延时是否大于所述预设延时时长阈值,所述帧延时用于表示对所述视频数据流中该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像进行拼帧处理所消耗的处理时长,并且所述帧延时是根据各个候选拼帧数对应的预估预算时长、帧间间隔以及所述视频数据流中各视频帧中待处理图像的数目计算得到的;
所述根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合的候选拼帧数中选取目标拼帧数,包括:
直至该视频帧的所述帧延时大于所述预设延时时长阈值,根据所述各个候选拼帧数对应的预估运算时长、帧间间隔、预设延时时长阈值以及预设关系式集合,从满足所述预设关系式集合并且大于第一拼帧数并且小于第二拼帧数的候选拼帧数中选取目标拼帧数,所述第一拼帧数为该视频帧之前所有待处理的视频帧中的待处理图像的总数,所述第二拼帧数为该视频帧以及该视频帧之前所有待处理的视频帧中的待处理图像的总数。
7.根据权利要求2所述的方法,其特征在于,所述获取用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的内存、拼帧处理所消耗的带宽以及拼帧处理过程中运算所消耗的运算时长之间的对应关系的关系模型,包括:
进行多次拼帧处理,所述多次拼帧处理中至少两次拼帧处理所采用的拼帧数不同;
统计每次拼帧处理所采用的拼帧数、所消耗的内存、所消耗的带宽以及拼帧处理过程中运算所消耗的实际运算时长,得到关系模型。
8.一种图像处理装置,其特征在于,所述装置包括:
拼帧策略模块,用于根据关系模型、帧间间隔、预设延时时长阈值以及剩余系统资源,计算最佳拼帧数,所述关系模型用于表示拼帧处理所采用的拼帧数、拼帧处理所消耗的系统资源以及拼帧处理过程中运算所消耗的运算时长之间的对应关系,所述剩余系统资源为能够用于拼帧处理的系统资源,所述最佳拼帧数为满足预设可行条件的拼帧处理所能够采用的拼帧数的最大值,所述预设可行条件为所消耗的系统资源不大于所述剩余系统资源,并且所产生的累计延时不大于所述预设延时时长阈值,所述帧间间隔为待处理的视频数据流中相邻视频帧在时域上的间隔;
图像获取模块,用于从所述视频数据流中获取所述最佳拼帧数个待处理图像;
拼帧处理模块,用于将所获取的所述最佳拼帧数个待处理图像并行输入至目标神经网络进行处理。
9.一种电子设备,其特征在于,包括:
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010525665.XA CN111681170B (zh) | 2020-06-10 | 2020-06-10 | 一种图像处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010525665.XA CN111681170B (zh) | 2020-06-10 | 2020-06-10 | 一种图像处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111681170A CN111681170A (zh) | 2020-09-18 |
CN111681170B true CN111681170B (zh) | 2023-05-02 |
Family
ID=72454454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010525665.XA Active CN111681170B (zh) | 2020-06-10 | 2020-06-10 | 一种图像处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111681170B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104166580A (zh) * | 2014-08-18 | 2014-11-26 | 西北工业大学 | 基于参考帧变换及拼接尺寸自适应的同步在线拼接方法 |
CN109068174A (zh) * | 2018-09-12 | 2018-12-21 | 上海交通大学 | 基于循环卷积神经网络的视频帧率上变换方法及系统 |
CN109858514A (zh) * | 2018-12-20 | 2019-06-07 | 北京以萨技术股份有限公司 | 一种基于神经网络的视频行为分类方法 |
CN110276722A (zh) * | 2019-06-20 | 2019-09-24 | 深圳市洛丁光电有限公司 | 一种视频图像拼接方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3564899B1 (en) * | 2018-04-30 | 2020-12-16 | Tata Consultancy Services Limited | Method and system for frame stitching based image construction in an indoor environment |
-
2020
- 2020-06-10 CN CN202010525665.XA patent/CN111681170B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104166580A (zh) * | 2014-08-18 | 2014-11-26 | 西北工业大学 | 基于参考帧变换及拼接尺寸自适应的同步在线拼接方法 |
CN109068174A (zh) * | 2018-09-12 | 2018-12-21 | 上海交通大学 | 基于循环卷积神经网络的视频帧率上变换方法及系统 |
CN109858514A (zh) * | 2018-12-20 | 2019-06-07 | 北京以萨技术股份有限公司 | 一种基于神经网络的视频行为分类方法 |
CN110276722A (zh) * | 2019-06-20 | 2019-09-24 | 深圳市洛丁光电有限公司 | 一种视频图像拼接方法 |
Non-Patent Citations (1)
Title |
---|
黄智颖.RNN-BLSTM声学模型的说话人自适应方法研究.《中国优秀硕士学问论文电子期刊》.2017,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111681170A (zh) | 2020-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108268869B (zh) | 目标检测方法、装置及系统 | |
WO2017202292A1 (zh) | 一种回声时延跟踪方法及装置 | |
CN111836102B (zh) | 视频帧的分析方法和装置 | |
CN111915639B (zh) | 目标检测跟踪方法、装置、电子设备和存储介质 | |
CN104751164A (zh) | 物体运动轨迹捕捉方法及系统 | |
JP2014206907A5 (zh) | ||
CN110544491A (zh) | 一种实时关联说话人及其语音识别结果的方法及装置 | |
CN115576502B (zh) | 一种数据存储的方法、装置、电子设备以及存储介质 | |
JP2012243206A (ja) | 画像処理方法、画像処理装置および画像処理プログラム | |
WO2016199356A1 (ja) | 動作分析装置、動作分析方法および動作分析プログラム | |
JP2019032729A (ja) | 演算時間算出方法、演算時間算出装置、演算時間算出プログラム及び演算時間算出システム | |
CN111681170B (zh) | 一种图像处理方法、装置及电子设备 | |
Felemban et al. | PicSys: Energy-efficient fast image search on distributed mobile networks | |
JP2014110020A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP7047702B2 (ja) | 映像管理装置、映像管理方法及びプログラム | |
CN105631419B (zh) | 人脸识别方法及装置 | |
JP6899674B2 (ja) | 情報処理装置、情報処理方法、および情報処理プログラム | |
Fu et al. | A method of shot-boundary detection based on HSV space | |
CN113205079B (zh) | 一种人脸检测方法、装置、电子设备及存储介质 | |
JP4997179B2 (ja) | 画像処理装置、方法およびプログラム | |
CN110427816B (zh) | 物体检测方法、装置、计算机设备和存储介质 | |
JP5863180B2 (ja) | 映像解析処理装置、映像解析処理方法、および映像解析処理用プログラム | |
TWI503675B (zh) | The method of predicting the number of user actions of the word and the device | |
CN112927181A (zh) | 图像亮度调节方法及装置、图像采集设备、存储介质 | |
CN111210233B (zh) | 用户特征确定方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |