帧率控制方法、装置以及电子设备与流程

文档序号:23586712发布日期:2021-01-08 14:19阅读:139来源:国知局
帧率控制方法、装置以及电子设备与流程

本申请涉及计算机技术领域,更具体地,涉及一种帧率控制方法、装置以及电子设备。



背景技术:

在视频播放的过程中,可以通过对视频进行插帧来提升视频播放流畅度。但是在相关的技术方案中,插帧方式是在系统端提前预设好,进而无论在什么场景下都只会按照固定的插帧方式进行插帧,进而会造成视频插帧过程缺乏灵活性,并且因为一直采用固定的插帧方式进行插帧,会造成功耗浪费。



技术实现要素:

鉴于上述问题,本申请提出了一种帧率控制方法、装置以及电子设备,以改善上述问题。

第一方面,本申请提供了一种帧率控制方法,应用于电子设备,所述方法包括:在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数;获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,不同的所述帧率控制区间对应的帧率控制参数不同;基于所述帧率控制参数对所述图像内容的显示过程进行控制。

第二方面,本申请提供了一种帧率控制装置,运行于电子设备,所述装置包括:运动参数获取单元,用于在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数;控制区间获取单元,用于获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,不同的所述帧率控制区间对应的帧率控制参数不同;帧率控制单元,用于基于所述帧率控制参数对所述图像内容的显示过程进行控制。

第三方面,本申请提供了一种电子设备,包括插帧芯片、处理器以及存储器;一个或多个程序被存储在所述存储器中并被配置为由所述插帧芯片执行以实现上述的方法。

第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码被插帧芯片运行时执行上述的方法。

本申请提供的一种帧率控制方法、装置以及电子设备,通过在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数,之后再获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,然后基于所述帧率控制参数对所述图像内容的显示过程进行控制。从而通过参考目标的运动参数来所确定帧率控制区间之后,基于所述帧率控制区间对应的帧率控制参数来对图像内容的显示过程进行控制的方式,使得在图像内容的显示过程中可以更为灵活的进行帧率控制。并且,因为可以灵活的进行帧率选择,进而使得电子设备不必一直采用固定的帧率,有利于降低功耗。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本申请实施例提出的一种帧率控制方法的流程图;

图2示出了本申请实施例中一种目标像素的示意图;

图3示出了本申请实施例中另一种目标像素的示意图;

图4示出了本申请实施例中多个线程的运行示意图;

图5示出了本申请实施例中一种确定对应的帧率控制区间的示意图;

图6示出了本申请另一实施例提出的一种帧率控制方法的流程图;

图7示出了本申请实施例中另一种确定对应的帧率控制区间的示意图;

图8示出了本申请实施例中每种对应的帧率控制区间所对应的控制等级的示意图;

图9示出了本申请实施例中向图像内容中增加插入帧的示意图;

图10示出了本申请实施例中增加插入帧的图像内容的示意图;

图11示出了本申请再一实施例提出的一种帧率控制方法的流程图;

图12示出了本申请另一实施例提出的一种帧率控制装置的结构框图;

图13示出了本申请再一实施例提出的一种帧率控制装置的结构框图;

图14示出了本申请的用于执行根据本申请实施例的帧率控制方法的电子设备的结构框图;

图15是本申请实施例的用于保存或者携带实现根据本申请实施例的帧率控制方法的程序代码的存储单元。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

移动互联时代的到来,电子设备的流行已经成为手机市场的一大趋势。电子设备的出现改变了很多人的生活方式及对传统通讯工具的需求,而随着用户需求的增多,人们不再满足于电子设备的外观和基本功能的使用,而开始追求电子设备能够给人们带来更多、更强、更具个性化的功能服务。例如,视频播放以及游戏等。其中,在视频播放场景和游戏场景中都涉及到图像内容的显示过程。其中,在视频播放场景下所进行显示的图像内容为视频画面,而在游戏场景下所显示的图像内容可以包括有游戏画面。

但是,发明人在对相关的图像内容的显示过程进行研究后发现,为了便于提升图像内容在显示过程中的显示效果,可以通过对图像内容进行插帧来提升图像内容的流畅度。然而,发明人在进一步对插帧进行研究后发现,相关的插帧方式都是基于固定的插帧方式进行插帧,进而会造成视频插帧过程缺乏灵活性,并且因为一直采用固定的插帧方式进行插帧,会造成功耗浪费。示例性的,若电子设备在对图像内容进行插帧的过程中,确定的插帧目标是60fps(每秒显示的帧数),则电子设备无论是在何种情况下,都是采用这一种固定的方式对图像内容进行插帧,以便使得插帧后图像内容的帧率一直保持在60fps,进而缺乏灵活性。并且,发明人发现在一些场景下通过插帧来提升帧率其实对于用户而言并没有较为明显的视觉体验,从而使得该插帧过程实际较为造成了功耗的浪费。

再者,可以理解的是在插帧过程中需要生成的插入帧,在相关的插帧过程中,都是由gpu来绘制得到该插入帧,如果一直保持较高的帧率,则会使得gpu一直处于较高的工作负载状态。

因此,发明人提出了本申请中可以改善上述问题的帧率控制方法、装置以及电子设备,通过在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数,之后再获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,然后基于所述帧率控制参数对所述图像内容的显示过程进行控制。从而通过参考目标的运动参数来所确定帧率控制区间之后,基于所述帧率控制区间对应的帧率控制参数来对图像内容的显示过程进行控制的方式,使得在图像内容的显示过程中可以更为灵活的进行帧率控制。并且,因为可以灵活的进行帧率选择,进而使得电子设备不必一直采用固定的帧率,有利于降低功耗。

下面将结合附图具体描述本申请的各实施例。

请参阅图1,本申请实施例提供的一种帧率控制方法,所述方法包括:

s110:在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数。

需要说明的是,本申请实施例体提供的帧率控制方法可以运行在多种图像内容显示场景下,而在不同的场景(即图像内容显示场景)下所显示的图像内容可以有所不同。可选的,在视频播放场景下,图像内容可以理解为视频画面,对应的则会在视频画面的显示过程中,获取参考目标的运动参数。可选的,在游戏场景下,图像内容可以为游戏运行过程中的游戏画面,那么对应的则会在游戏画面的显示过程中,获取参考目标的运行参数。

在本实施例中,参考目标为后续进行帧率调整的过程中所参考的目标物,而参考目标的运行参数则为后续进行帧率调整的基础。在不同的场景下,所获取的参考目标可以不同,例如,在视频播放场景下,所确定的参考目标可以为视频画面中的一些运动的物体,比如,一个运动的人,一个运动的动物等,或者参考目标可以为视频画面中的目标像素。再例如,在游戏场景下,参考目标可以为上报的触摸点。其中,需要说明的是,在游戏场景中用户可以通过对游戏画面进行触控来实现对游戏中的人物进行控制,而用户在对游戏画面进行触控的过程中,每一次的触控都会触发生成一次触摸点的上报。

对应的,在参考目标不同的情况下,所获取的参考目标的运动参数也会对应有所不同。

作为一种方式,在视频播放场景下,参考目标可以为视频画面中的目标像素,那么该运动参数可以为目标像素的运动矢量,该运动矢量表征的是图像中目标像素的位移,而其中的目标像素可以指图像中的任一像素,也可以指图像中的一个内容块中的像素。

如图2所示,如果目标像素为图像中的像素,假设像素10为目标像素中的一个像素,图1中像素10在前一帧的图像中所处的位置为(a,b),而在后一帧图像中所处的位置为(c,d),那么该后一帧图像中像素10对应的运动矢量为(dx,dy),其中,dx表征像素10在x轴方向上的位移,dy表征像素10在y轴方向上的位移,所以在图2所示的情况中dx=a-c,dy=d-b。

如图3所示,如果目标像素为内容块中的像素,运动矢量表征的是该内容块与最佳匹配块之间的位移,最佳匹配块指的是后一帧图像30中与前一帧图像20的内容块21匹配度最高的内容块31。需要说明的是,内容块中可以包括有多个像素,在本申请实施例中可以将内容块的中心点的像素的位移作为该内容块的位移。其中,该中心点可以为几何中心。在图3所示的内容中,内容块与最佳匹配块之间的运动矢量为(a-c,d-b)。其中,内容块可以理解为在图像中表征具有实体含义的区域。例如,若图像中为一个人,那么该人的头部就是一个具有实体含义的区域,实体含义就是该区域的图像内容表征的是人的头部,进而该头部区域就可以作为一个内容块。再例如,该人的手也是一个具有实体含义的区域,进而手部区域又可以作为一个内容块。

可选的,在参考目标为目标像素,且该目标像素包括多个像素的情况下,运动参数也可以为视频画面中的该多个像素的运动矢量的加权平均值。

作为另外一种方式,在游戏场景下,参考目标可以为上报的触摸点,那么对应的运动参数可以为相邻上报的触摸点之间的位移量或者位移速度。需要说明的是,电子设备所上报的触摸点可以对应有一个位置坐标,那么电子设备可以通过获取到相邻上报的触摸点的位置坐标就可以获取到相邻上报的触摸点之间的位移量或者位移速度。其中,位移量的单位可以为像素,位移速度可以为单位时间内移动的像素数量。

作为一种方式,本实施例所提供的帧率控制方法可以为在开启插帧功能的情况下才运行。那么在这种方式下,在图像内容的显示过程中,可以先检测电子设备的插帧功能是否启动,若该插帧功能启动则执行获取参考目标的运动参数。

其中,在本实施例中,该插帧功能是否启动可以根据多种方式来确定。

作为一种方式,该插帧功能是否启动可以根据电子设备剩余的资源来确定。该资源可以为处理资源,也可以为电量。需要说明的是,若电子设备在图像内容的显示过程中,对图像内容进行插帧,那么则需要消耗cpu或者gpu的处理资源,若在电子设备当前剩余的处理资源较为紧张的情况下,依然进行开启插帧功能以执行本实施例提供的帧率控制方法,则会有可能会增加电子设备的负担,进而会造成电子设备卡顿。类似的,电子设备在对图像内容进行插帧的过程中,也需要消耗电子设备的电量,若在电量剩余的量较低的情况下,依然开启插帧功能则可能会使得电子设备的电量消耗过快。那么为了避免前述问题,电子设备可以在在图像内容的显示过程中,先检测剩余的处理资源是否大于资源阈值,若剩余的处理资源大于该资源阈值则可以将插帧功能配置为处于开启状态,进而在插帧功能处于开启状态下则电子设备可以执行获取参考目标的运动参数。对应的,在将,当检测到剩余的处理资源不大于资源阈值且插帧功能已经处于开启状态,则可以将插帧功能配置为处于关闭状态。其中,该资源阈值可以包括关于处理资源的第一阈值和/或关于电量的第二阈值。若资源阈值仅包括关于处理资源的第一阈值,则电子设备检测到当前剩余的处理资源大于该第一阈值的情况下触发开启插帧功能,否则关闭插帧功能。若资源阈值仅包括关于电量的第二阈值,则电子设备可以在检测到当前剩余的电量大于第二阈值的情况下,触发开启插帧功能,否则关闭插帧功能。该资源阈值既包括关于处理资源的第一阈值,又包括关于电量的第二阈值,则电子设备检测到当前剩余的处理资源大于该第一阈值,且当前剩余的电量大于第二阈值的情况下触发开启插帧功能,否则关闭插帧功能。

作为另外一种方式,可以在电子设备的设置界面配置有插帧功能管理控件,进而用户可以通过对该插帧功能管理控件进行触控来控制开启或者关闭插帧功能。

再者,作为一种方式,电子设备也可以在在图像内容的显示过程中,直接根据剩余的处理资源是否大于资源阈值来确定是否执行获取参考目标的运动参数。则若在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则可以执行获取参考目标的运动参数,若剩余的处理资源小于或者等于该资源阈值,则不会去获取参考目标的运动参数。

需要说明的是,在本实施例中可以通过配置指定标识来表征剩余的处理资源与资源阈值之间的大小关系,在这种方式下,执行本实施例方法的程序可以直接读取该指定标识的值就可以确定剩余的处理资源是否大于资源阈值,进而不用再实时的去获取电子设备剩余的处理资源,以便提升处理效率高。例如,若检测到该指定标识的值为第一值则判定剩余的处理资源大于资源阈值,若检测到该指定标识的值为第二值则判定剩余的处理资源小于或者等于资源阈值。可选的,其中的第一值可以为1,该第二值可以为0。

可选的,如图4所示,执行本实施例提供的帧率控制方法可以生成有两个线程,例如,图4中的第一线程和第二线程。其中,第一线程可以用于周期性的获取电子设备剩余的处理资源,并将获取的剩余的处理资源与资源阈值进行比对,第二线程用于执行本实施例提供的帧率控制方法中的步骤。那么若第一线程判定剩余的处理资源大于资源阈值,则将指定文件60中存储的指定标识的值更新为第一值,若剩余的处理资源小于或者等于资源阈值,则将指定文件60中存储的指定标识的值更新为第二值。而在图像内容的显示过程中,第二线程可以直接读取该指定文件60中的指定标识的值即可获取到剩余的处于资源是否大于阈值资源。

s120:获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,不同的所述帧率控制区间对应的帧率控制参数不同。

其中,在本实施例中,作为一种方式,可以预先配置有多个帧率控制区间,并且对应于每个帧率控制区间分别配置对应的帧率控制参数。进而在这种方式下,可以从该多个帧率控制区间中选择一个帧率控制区间作为与前述获取的参考目标的运动参数对应的帧率控制区间,进而获取到运动参数对应的帧率控制区间所对应的帧率控制参数以作为后续进行图像内容显示控制的基础。

示例性的,所配置的多个帧率控制区间可以包括有帧率控制区间a、帧率控制区间b、帧率控制区间c以及帧率控制区间d。其中,帧率控制区间a对应有帧率控制参数z1,帧率控制区间b对应有帧率控制参数z2,帧率控制区间c对应有帧率控制参数z3,帧率控制区间d对应有帧率控制参数z4。进而,若确定与运动参数对应的帧率控制区间为帧率控制区间b,则会获取到帧率控制区间b对应的帧率控制参数z2作为后续s130中对所述图像内容的显示过程进行控制时所基于的帧率控制参数。再例如,若与运动参数对应的帧率控制区间为帧率控制区间c,则会获取到帧率控制区间c对应的帧率控制参数z3作为后续s130中对所述图像内容的显示过程进行控制时所基于的帧率控制参数。

需要说明的是,如前述内容所示,在不同的场景中参考目标以及参考目标所对应的运动参数都可以不同,那么对应的,在配置多个帧率控制区间时,可以分别针对不同的场景分别配置多个帧率控制区间。例如,可以对应于视频播放场景配置多个帧率控制区间,还可以对应于游戏场景配置多个帧率控制区间,并且不同场景中多个帧率控制区间的划分方式与该场景中运动参数的单位相同。

可选的,在视频播放场景中,运动参数可以为视频画面中目标像素的运动矢量的加权平均值,那么在视频播放场景中,可以基于运动矢量的加权平均值来划分多个帧率控制区间,在这种方式下,每个帧率控制区间对应有一个运动矢量的加权平均值的上限和下限(有的帧率控制区间可以只有上限或者下限),那么在运动参数可以为视频画面中目标像素的运动矢量的加权平均值的情况下,则可以将视频画面中目标像素的运动矢量的加权平均值依次与多个帧率控制区间的加权平均值的上限和下限进行比对,进而若目标像素的运动矢量的加权平均值处于某个帧率控制区间的加权平均值的上限和下限之间,则将该某个帧率控制区间作为对应的帧率控制区间。

示例性的,如图5所示的视频播放场景下,包括有帧率控制区间a、帧率控制区间b、帧率控制区间c以及帧率控制区间d,其中,帧率控制区间a对应于加权平均值小于d1,帧率控制区间b对应于加权平均值大于等于d1且小于d2,帧率控制区间c对应于加权平均值大于等于d2且小于d3,帧率控制区间d对应于加权平均值大于等于d3且小于d4。那么若检测到目标像素的运动矢量的加权平均值处于d2和d3之间,那么确定对应的帧率控制区间为帧率控制区间c。

可选的,在游戏场景下,运动参数可以为上报的触摸点的位移量或者位移速度。以位移量为例,那么在游戏场景下,可以通过位移量来划分游戏场景下的多个帧率控制区间。那么在游戏场景下,每个帧率控制区间的上限和下限的均为位移量,对应的,则在确定上报的触摸点的位移量后,则可以通过与每个帧率控制区间的上限和下限进行比对来确定对应的帧率控制区间。类似的,也可以通过位移速度来划分游戏场景下的多个帧率控制区间。

s130:基于所述帧率控制参数对所述图像内容的显示过程进行控制。

需要说明的是,在本实施例中帧率控制参数为控制图像内容在显示过程中帧率的参数,那么在确定对应的帧率控制区间所对应的帧率控制参数后,则可以通过该帧率控制参数对所述图像内容的显示过程的帧率进行控制。可选的,在本实施例中是可以通过向图像内容中插入新的帧(插入帧)的方式来进行帧率的改变,而其中的帧率控制参数则可以用于确定插入帧的数量。

示例性的,若帧率控制参数表征控制图像内容的帧率为50fps,那么在基于帧率控制参数进行控制的过程中,在图像内容原本的帧率低于50fps的情况下,会基于50fps来生成新的帧作为插入帧以插入到原本的图像内容中,使得图像内容的显示过程的帧率达到50fps。再例如,若帧率控制参数表征控制图像内容的帧率为60fps,那么在基于帧率控制参数进行控制的过程中,在图像内容原本的帧率低于60fps的情况下,会基于60fps来生成新的帧作为插入帧以插入到原本的图像内容中,,以使得图像内容的显示过程的帧率达到60fps。

本申请提供的一种帧率控制方法,通过在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数,之后再获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,然后基于所述帧率控制参数对所述图像内容的显示过程进行控制。从而通过参考目标的运动参数来所确定帧率控制区间之后,基于所述帧率控制区间对应的帧率控制参数来对图像内容的显示过程进行控制的方式,使得在图像内容的显示过程中可以更为灵活的进行帧率控制。并且,因为可以灵活的进行帧率选择,进而使得电子设备不必一直采用固定的帧率,有利于降低功耗。

请参阅图6,本申请实施例提供的一种帧率控制方法,所述方法包括:

s210:在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数。

s220:若所述运动参数对应的帧率控制区间为第一帧率控制区间,获取所述第一帧率控制区间对应的第一目标帧率以及插入帧中第一重复帧比例。

s230:若所述运动参数对应的帧率控制区间为第二帧率控制区间,获取所述第二帧率控制区间对应的第二目标帧率以及插入帧中第二重复帧比例。

s240:若所述运动参数对应的帧率控制区间为第三帧率控制区间,获取所述第三帧率控制区间对应的第三目标帧率以及插入帧中第三重复帧比例。

其中,所述第一帧率控制区间、第二帧率控制区间以及所述第三帧率控制区间各自对应的运动参数依次增大,所述第一目标帧率、所述第二目标帧率以及所述第三目标帧率依次增大,所述第一重复帧比例、第二重复帧比例以及所述第三重复帧比例依次减小。示例性的,第一目标帧率可以为40fps,第二目标帧率可以为50fps,第三目标帧率可以为60fps。第一重复帧比例可以为50%,第二重复帧比例可以为70%,第三重复帧比例可以为100%。

s250:基于所述帧率控制参数对所述图像内容的显示过程进行控制。

可以理解的是,若对应的帧率控制区间为第一帧率控制区间,则是会基于第一目标帧率以及插入帧中第一重复帧比例对所述图像内容的显示过程进行控制。若对应的帧率控制区间为第二帧率控制区间,则是会基于第二目标帧率以及插入帧中第二重复帧比例对所述图像内容的显示过程进行控制。若对应的帧率控制区间为第三帧率控制区间,则是会基于第三目标帧率以及插入帧中第三重复帧比例对所述图像内容的显示过程进行控制。

下面再通过一流程图对本实施例中如何从第一帧率控制区间、第二帧率控制区间以及第三帧率控制区间确定对应的帧率控制区间进行说明。

如图7所示的流程包括,在执行本实施例中的s210之后,执行:

s211:判断运动参数是否大于第一运动参数阈值。

s212:若运动参数不大于第一运行参数阈值,则不做插帧处理。

可以理解的是,对图像内容进行插帧处理可以使得图像内容的帧率有所提升,以便可以提升用户的视觉体验。其中,参考目标的运动参数可以表征的是对于需要进行插帧处理的需求程度,参考目标的运动参数越大那么对应的进行插帧处理的需求程度也就越高,其中,需求程度越高可以理解为需要插入到图像内容中的插入帧越多。但是,在一些情况下,即使进行了插帧处理可能对于用户的视觉体验不会有较大的提升,例如,在一些所包括的人物或者其他物体并不会有较大幅度移动的图像内容中,即使进行了插帧处理,用户也不会有较大程度的视觉体验,并且进行插帧处理的过程还会消耗处理资源以及电量,进而造成处理资源以及电量的浪费。那么在运动参数不大于第一运行参数阈值,则不做插帧处理,可以避免一定程度的处理资源和电量的浪费。

s213:若运动参数大于第一运行参数,则判断运动参数是否大于第二运动参数阈值。

s214:若运动参数不大于第二运行参数阈值,则使用小幅度插帧等级。

其中,若运动参数不大于第二运行参数阈值可以理解为运动参数对应的帧率控制区间为第一帧率控制区间,则会获取第一帧率控制区间对应的第一目标帧率以及插入帧中第一重复帧比例来对图像内容的进行控制。

s215:若运动参数大于第二运行参数,则判断运动参数是否大于第三运动参数阈值。

s216:若运动参数不大于第三运行参数阈值,则使用中幅度插帧等级。

其中,若运动参数不大于第三运行参数阈值可以理解为运动参数对应的帧率控制区间为第二帧率控制区间,则会获取第二帧率控制区间对应的第二目标帧率以及插入帧中第二重复帧比例来对图像内容的进行控制。

s217:若运动参数大于第三运行参数阈值,则使用大幅度插帧等级。

其中,若运动参数大于第三运行参数阈值可以理解为运动参数对应的帧率控制区间为第三帧率控制区间,则会获取第三帧率控制区间对应的第三目标帧率以及插入帧中第三重复帧比例来对图像内容的进行控制。

需要说明的是,其中的第二运行参数以及第三运行参数的大小确定了在帧率控制的过程中,当前实际处于哪个一个帧率控制区间。那么作为一种方式,电子设备可以根据剩余的处理资源来确定第二运行参数以及第三运行参数的大小。

可选的,第二运行参数可以对应有第一档位和第二档位,第三运行参数也可以对应有第一档位和第二档位。其中,对应第一档位的第二运行参数小于对应第二档位的第二运行参数,对应第一档位的第三运行参数小于对应第二档位的第三运行参数。

若剩余的处理资源虽然大于前述的资源阈值,但是小于资源区间阈值的情况下,可以使第二运行参数和第三运行参数均对应第二档位,以便使得相对不易处于第二帧率控制区间或者第三帧率控制区间,进而使得在提升帧率的同时不会过快的消耗掉剩余的处理资源。对应的,若剩余的处理资源大于该资源区间阈值的情况下,可以使第二运行参数和第三运行参数均对应第一档位,以便使得相对较易处于第二帧率控制区间或者第三帧率控制区间。

需要说明的是,前述的第一档位和第二档位只是示例性的,在本申请实施例中第二运行参数和第三运行参数各自可以对应的档位的数量还可以有更多。

下面再通过图8来对图7中三种等级的插帧处理的效果进行集中展示。

如图8所示,对于运动参数小于第一运动参数阈值的情况则不做插帧处理,类似的,对于关于发布会的图像内容则可以不做插帧处理。关于乒乓球比赛的图像内容则可以对应于小幅度插帧等级,关于马路上的汽车的图像内容则可以对应于中幅度插帧等级,关于足球场比赛的图像内容则可以对应于大幅度插帧等级。

在本实施例中,帧率控制参数可以有多种组成方式。

作为一种方式,帧率控制参数可以包括有目标帧率。那么在这种方式下,在配置的多个帧率控制区间中,每个帧率控制区间分别对应各自的目标帧率。那么在这种方式下,基于所述帧率控制参数对所述图像内容的显示过程进行控制,包括:基于所述目标帧率对所述图像内容的显示过程进行控制。其中,基于所述目标帧率对所述图像内容的显示过程进行控制可以理解为,基于目标帧率对s210中图像内容的帧率进行控制,以使得控制之后的帧率与该目标帧率相同。其中,作为一种控制方式,可以通过插帧的方式来进行控制。该插帧可以理解为生成插入帧,并将该插入帧插入到原本所显示的图像内容所包括的帧之间,进而得到插帧后的图像内容,可以理解的是,该插帧后的图像内容的帧率则为该目标帧率。

示例性的,如图9所示,图像内容40为插帧之前的图像内容,并且在目标帧率高于图像内容40原本的帧率情况下,为了使得图像内容40的帧率达到目标帧率则需要向图像内容40插入更多帧图像,示例性的,若根据帧率控制区间对应的目标帧率确定插入帧包括图8中所示的插入图像51、插入图像52、插入图像53、插入图像54以及插入图像55,并且,每个插入图像各自所对应的插图位置为对应箭头所指向的位置,那么在进行插帧操作后,可以得到图10中所示的图像内容41,其中图像内容41为已经插入插入帧的图像内容,对应的图像内容41的帧率则为目标帧率。

作为另外一种方式,帧率控制参数除了包括有目标帧率外,还可以包括有插入帧中重复帧比例。在这种方式下,所述基于所述帧率控制参数对所述图像内容的显示过程进行控制,包括:基于所述帧率控制区间对应的目标帧率以及插入帧中重复帧比例,确定新增加的帧的内容和数量;基于所述新增加的帧对所述图像内容进行插帧,以使插帧后的图像内容在播放过程中的帧率为所述述帧率控制区间对应的目标帧率。需要说明的是,重复帧比例可以理解为插入帧中内容重复的帧占所有插入帧的比例。该内容重复的帧可以理解为图像内容相同的帧,可选的可以通过内容复制的方式来得到内容重复的帧。那么在这种方式下,对于所生成的插入帧中部分插入帧是通过运动矢量估计的方式生成的,而有点插入帧则是可以通过对基于运动矢量估计的方式生成的插入帧进行内容复制的方式生成的。

可选的,若确定的插入帧为10帧图像,并且在插入帧中重复帧比例为50%的情况下,该10帧图像中有5帧图像可以为通过对其他插入帧进行内容复制得到。例如,该10帧的插入帧按照显示顺序可以包括有插入图像61、插入图像62、插入图像63、插入图像64、插入图像65、插入图像66、插入图像67、插入图像68、插入图像69以及插入图像70。那么在重复帧比例为50%的情况下,其中的,插入图像61、插入图像63、插入图像65、插入图像67以及插入图像69可以为基于运动矢量估计的方式生成,插入图像62可以为对插入图像61进行内容复制得到,插入图像64可以为对插入图像63进行内容复制得到,插入图像66可以为对插入图像65进行内容复制得到,插入图像68可以为对插入图像67进行内容复制得到,插入图像70可以为对插入图像69进行内容复制得到。

本申请提供的一种帧率控制方法,从而通过参考目标的运动参数来所确定帧率控制区间之后,基于所述帧率控制区间对应的帧率控制参数来对图像内容的显示过程进行控制的方式,使得在图像内容的显示过程中可以更为灵活的进行帧率控制。并且,因为可以灵活的进行帧率选择,进而使得电子设备不必一直采用固定的帧率,有利于降低功耗。并且,在本实施例中,帧率控制参数可以同时包括有目标帧率和插入帧中重复帧比例,从而使得在需要生成插入帧时,不仅可以基于目标帧率来确定需要生成的插入帧的数量,还可以进一步的确定插入帧中有多少帧是可以通过运动矢量计算得到的,而有多少帧是可以通过内容复制的方式得到,进而提升了插帧过程中的灵活性,也实现了在更大程度降低功耗的情况下实现与当前实际情况最为适配的插帧方式。

请参阅图11,本申请实施例提供的一种帧率控制方法,所述方法包括:

s310:在图像内容的显示过程中,若剩余的处理资源大于资源阈值,获取图像内容显示场景。

如前述实施例中介绍的,在本申请实施例中的帧率控制方法可以应用于不同的显示场景中,在这种方式下,电子设备可以对当前的图像内容显示场景进行识别,进而以便于针对当前的图像内容显示场景进行针对性的帧率控制。

作为一种方式,电子设备可以通过对前台运行的应用程序进行检测来识别当前的图像内容显示场景。可选的,在电子设备中可以建立有应用程序与图像内容显示场景之间的对应关系,电子设备在获取到前台运行的应用程序后,可以通过查询该对应关系来获取到与前台运行的应用程序对应的图像内容显示场景。示例性的,该对应关系可以通过数据表的形式存储在电子设备中,在该数据表中可以存储有应用程序a对应视频播放场景、应用程序b对应视频播放场景、应用程序c对应游戏场景以及应用程序d对应游戏场景。在这种实例中,若检测到前台运行的应用程序为应用程序d,则获取到的图像内容显示场景为游戏场景,若检测到前台运行的应用程序为应用程序a,则获取到的图像内容显示场景为视频播放场景。

其中,作为一种方式,若电子设备可以为android操作系统,可以通过执行activitymanager的getrunningtasks方法来获取到当前在前台运行的应用程序的名称。此外,电子设备还可以通过usagestatsmanager来获取用户使用的程序的列表,将该列表中记录的最近使用的应用程序识别为当前的前台应用。再者,还可以通过android自带无障碍功能,监控窗口焦点的变化,拿到焦点窗口对应包名作为当期在前台运行的应用程序。

s320:获取所述图像内容显示场景对应的参考目标,并获取所述参考目标的运动参数,其中,不同的图像内容显示场景对应的参考目标不同。

作为一种方式,所述获取所述图像内容显示场景对应的参考目标,并获取所述参考目标的运动参数,包括:若所述图像内容显示场景为视频播放场景,获取视频播放场景中所播放视频画面中的目标内容为参考目标,并获取所述像素的运动矢量作为运动参数。

作为一种方式,所述获取所述图像内容显示场景对应的参考目标,并获取所述参考目标的运动参数,包括:若所述图像内容显示场景为游戏场景,获取所述游戏场景中上报的触摸点作为参考目标,并获取相邻上报的触摸点之间的位移量作为运动参数。

可选的,所述若所述图像内容显示场景为游戏场景,获取所述游戏场景中上报的触摸点作为参考目标,并获取相邻上报的触摸点之间的位移量作为运动参数之前,还包括:检测当前所显示的界面的界面类型;若所述界面类型为动态操作界面,执行所述若所述图像内容显示场景为游戏场景,获取所述游戏场景中上报的触摸点作为参考目标,并获取相邻上报的触摸点之间的位移量作为运动参数。

需要说明的是,即使对应于在同一个图像内容显示场景中,可能也会有不同类型的界面。并且,不同类型的界面对于插帧的需求程度不同,而且有的界面可能因为进行插帧后,并没有较为明显的视觉体验提升而并不需要进行插帧。进而可以对界面的类型进行分类,可选的,可以将界面类型分类为动态类型和静态类型,其中,动态类型对应的界面则对应于可以进行插帧操作,而对于静态类型的界面则对应于不用进行插帧操作。其中,游戏场景中的游戏战斗界面可以为动态界面,而游戏场景中的道具栏界面、聊天界面以及配置界面等可以为静态类型的界面。

以游戏场景为例,那么在获取到当前的图像内容显示场景为游戏场景后,可以先获取当前所显示界面的界面类型,进而在当前所显示界面的界面类型为动态类型的情况下,执行后续的若所述图像内容显示场景为游戏场景,获取所述游戏场景中上报的触摸点作为参考目标,并获取相邻上报的触摸点之间的位移量作为运动参数,否则,则不再执行后续的步骤。

此外,在其他的图像内容显示场景中也可以通过检测当前所显示的界面的界面类型来确定是否触发后续的获取参考目标的运动参数,以及获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数。例如,在视频播放场景中,可以包括有视频播放界面,还可以包括有内容选择界面。可以理解的是,在显示视频播放界面时,才会处于实际进行视频播放的状态,而在内容选择界面中实际是会显示多个视频的阅览界面以供用户进行选择,那么在视频播放场景中,当前所显示的界面为视频播放界面时,才触发后续的获取参考目标的运动参数,以及获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,有利于提升对图像内容的显示过程进行控制的有效性。

s330:获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,不同的所述帧率控制区间对应的帧率控制参数不同。

s340:基于所述帧率控制参数对所述图像内容的显示过程进行控制。

请参阅图12,本申请实施例提供的一种帧率控制装置400,运行于电子设备,所述装置400包括:

运动参数获取单元410,用于在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数。

控制区间获取单元420,用于获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,不同的所述帧率控制区间对应的帧率控制参数不同。

帧率控制单元430,用于基于所述帧率控制参数对所述图像内容的显示过程进行控制。

作为一种方式,所述帧率控制参数包括目标帧率。控制区间获取单元420,具体用于获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的目标帧率,其中,不同的帧率控制区间对应的帧率不同。可选的,所述帧率控制参数还包括插入帧中重复帧比例,在这种方式下,控制区间获取单元420,具体用于获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的目标帧率以及插入帧中重复帧比例,其中,不同的帧率控制区间对应的插入帧中重复帧比例不同。

可选的,控制区间获取单元420,具体用于若所述运动参数对应的帧率控制区间为第一帧率控制区间,获取所述第一帧率控制区间对应的第一目标帧率以及插入帧中第一重复帧比例;若所述运动参数对应的帧率控制区间为第二帧率控制区间,获取所述第二帧率控制区间对应的第二目标帧率以及插入帧中第二重复帧比例;若所述运动参数对应的帧率控制区间为第三帧率控制区间,获取所述第三帧率控制区间对应的第三目标帧率以及插入帧中第三重复帧比例;其中,所述第一帧率控制区间、第二帧率控制区间以及所述第三帧率控制区间各自对应的运动参数依次增大,所述第一目标帧率、所述第二目标帧率以及所述第三目标帧率依次增大,所述第一重复帧比例、第二重复帧比例以及所述第三重复帧比例依次减小。

作为一种方式,帧率控制单元430,具体用于基于所述帧率控制区间对应的目标帧率以及插入帧中重复帧比例,确定新增加的帧的内容和数量;基于所述新增加的帧对所述图像内容进行插帧,以使插帧后的图像内容在播放过程中的帧率为所述述帧率控制区间对应的目标帧率。

作为一种方式,运动参数获取单元410,具体用于获取图像内容显示场景;获取所述图像内容显示场景对应的参考目标,并获取所述参考目标的运动参数,其中,不同的图像内容显示场景对应的参考目标不同。

可选的,运动参数获取单元410,具体用于若所述图像内容显示场景为视频播放场景,获取视频播放场景中所播放视频画面中的目标内容为参考目标,并获取所述像素的运动矢量作为运动参数。可选的,运动参数获取单元410,具体用于若所述图像内容显示场景为游戏场景,获取所述游戏场景中上报的触摸点作为参考目标,并获取相邻上报的触摸点之间的位移量作为运动参数。

作为一种方式,如图13所示,所述装置400还包括:界面检测单元440,用于检测当前所显示的界面的界面类型。若界面检测单元440检测到所述界面类型为动态操作界面,运动参数获取单元410,则用于执行所述若所述图像内容显示场景为游戏场景,获取所述游戏场景中上报的触摸点作为参考目标,并获取相邻上报的触摸点之间的位移量作为运动参数。

需要说明的是,本申请中装置实施例与前述方法实施例是相互对应的,装置实施例中具体的原理可以参见前述方法实施例中的内容,此处不再赘述。

下面将结合图14对本申请提供的一种电子设备进行说明。

请参阅图14,基于上述的帧率控制方法、装置,本申请实施例还提供的另一种可以执行前述帧率控制方法的电子设备200。电子设备200包括相互耦合的一个或多个(图中仅示出一个)处理器102、存储器104、网络模块106以及插帧芯片108。其中,该存储器104中存储有可以执行前述实施例中内容的程序,而插帧芯片108可以执行该存储器104中存储的程序。由插帧芯片108来执行该存储器104中存储的程序,则可以理解为可以由插帧芯片108来执行本实施例提供的帧率控制方法,进而可以有利于降低处理器102的负载。可选的,插帧芯片108可以通过mipi(mobileindustryprocessorinterface)接收来接收到图像内容。

其中,处理器102可以包括一个或者多个用于处理数据的核。处理器102利用各种接口和线路连接整个电子设备200内的各个部分,通过运行或执行存储在存储器104内的指令、程序、代码集或指令集,以及调用存储在存储器104内的数据,执行电子设备200的各种功能和处理数据。可选地,处理器102可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器102可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器102中,单独通过一块通信芯片进行实现。

存储器104可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory)。存储器104可用于存储指令、程序、代码、代码集或指令集。存储器104可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。

所述网络模块106用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯,例如和音频播放设备进行通讯。所述网络模块106可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(sim)卡、存储器等等。所述网络模块106可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。例如,网络模块106可以与基站进行信息交互。

请参考图15,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质1100中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。

计算机可读存储介质1100可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读存储介质1100包括非易失性计算机可读介质(non-transitorycomputer-readablestoragemedium)。计算机可读存储介质1100具有执行上述方法中的任何方法步骤的程序代码1110的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码1110可以例如以适当形式进行压缩。

综上所述,本申请提供的一种帧率控制方法、装置以及电子设备,通过在图像内容的显示过程中,若剩余的处理资源大于资源阈值,则获取参考目标的运动参数,之后再获取与所述运动参数对应的帧率控制区间,并获取所述帧率控制区间对应的帧率控制参数,然后基于所述帧率控制参数对所述图像内容的显示过程进行控制。从而通过参考目标的运动参数来所确定帧率控制区间之后,基于所述帧率控制区间对应的帧率控制参数来对图像内容的显示过程进行控制的方式,使得在图像内容的显示过程中可以更为灵活的进行帧率控制。并且,因为可以灵活的进行帧率选择,进而使得电子设备不必一直采用固定的帧率,有利于降低功耗。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1