System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 图像处理方法和电子设备技术_技高网

图像处理方法和电子设备技术

技术编号:41098233 阅读:4 留言:0更新日期:2024-04-25 13:55
本申请公开一种图像处理方法和电子设备,包括:在电子设备的第一应用的启动到退出的过程中,电子设备对第一应用的第一图像帧和第二图像帧进行绘制渲染以及合成操作。应用进程在第一图像帧的绘制渲染周期内对第一图像帧进行绘制和渲染,并将得到的第一图像帧存储至缓存队列的一个空闲缓存对象中,当合成线程在第一图像帧的合成周期内未执行合成操作,合成线程向应用进程发送第一调整请求,以使应用进程增加缓存队列中空闲缓存对象的数量,进而应用进程可以将绘制和渲染后的第二图像帧存储至缓存队列的一个空闲缓存对象中。本方法避免了应用进程在图像帧的绘制渲染过程中出现丢帧情况,解决了图像帧显示卡顿的问题。

【技术实现步骤摘要】

本申请涉及终端,尤其涉及一种图像处理方法和电子设备


技术介绍

1、随着終端技术的发展,各类终端(如手机)与用户的交互性能越来越优化。比如,终端可以通过设置操作对应的动效来提高用户体验。动效也即多帧图像的连续显示形成的动态显示效果。电子设备通过显示屏显示画面通常需要经过绘制、渲染和合成等过程。

2、其中,电子设备的应用进程负责显示画面中各图像帧的绘制和渲染,电子设备的合成线程负责对绘制和渲染后的各图像帧进行合成并送显。

3、但是,在某些情况下,应用进程无法正常进行图像帧的绘制,出现图像帧丢帧的情况,进而使得合成器送显的图像帧产生显示卡顿的问题。


技术实现思路

1、本申请实施例提供一种图像处理方法和电子设备,在绘制动效的图像帧的过程中,避免了绘制两帧图像帧的位移间隔过大导致位移过大的问题,保证了动效各图像帧的连贯性显示,使得显示效果更加平滑、流畅。

2、为达到上述目的,本申请的实施例采用如下技术方案:

3、第一方面,提供了一种图像处理方法,该方法包括:

4、电子设备接收用户在电子设备的触摸屏的第一操作;电子设备响应于第一操作启动第一应用;电子设备接收用户在电子设备的触摸屏的第二操作;电子设备响应于第二操作退出第一应用。

5、其中,在第一应用的启动到第一应用的退出的过程中,电子设备对第一应用的第一图像帧和第二图像帧的绘制渲染以及合成操作。

6、电子设备对第一应用的第一图像帧和第二图像帧的绘制渲染以及合成操作,包括:

7、应用进程在第一图像帧的绘制渲染周期内,对第一图像帧进行绘制和渲染,并将得到的第一图像帧存储至缓存队列的一个空闲缓存对象中;当合成线程在第一图像帧的合成周期内未执行合成操作的情况下,合成线程向应用进程发送第一调整请求;应用进程基于第一调整请求,增加缓存队列中空闲缓存对象的数量,以使应用进程在第二图像帧的绘制渲染周期内,对第二图像帧进行绘制和渲染后,将得到的第二图像帧存储至缓存队列的一个空闲缓存对象中。

8、其中,第二图像帧的绘制渲染周期位于第一图像帧的绘制渲染周期之后,第二图像帧的绘制起始时刻与第一图像帧的绘制起始时刻相差n个周期,n为正整数。

9、在本申请中,在合成器不合成的情况下,可以动态增加缓存队列的空闲缓存对象,应用进程可以持续正常获取空闲缓存对象存入已渲染的图像帧,从而避免现有技术中应用进程无法获取空闲缓存对象来存入已渲染的图像帧,而不执行下一图像帧的渲染操作,从而下一图像帧的绘制,出现丢帧的问题。通过本申请提供的图像处理方法,缓存队列中始终有至少一个空闲缓存对象可被应用进程使用,避免了应用进程由于缓存队列中没有空闲缓存对象导致的不执行图像帧绘制渲染操作而丢帧的问题,从而解决了由于丢帧造成的图像帧送显后出现的视觉卡顿的问题。通过保证应用进程有足够的空闲缓存对象进行已渲染的图像帧的存入操作,从而保证了送显图像帧的动效显示效果的流畅性。

10、在第一方面的一种可能的实现方式,第一图像帧和第二图像帧是第一应用的启动过程中的图像帧。

11、在本申请中,在电子设备执行应用的启动过程中,针对启动过程中启动动效的图像帧进行图像处理,在合成线程不执行合成操作的情况下,动态增加缓存队列中空闲缓存对象的数量,使得缓存队列中始终有至少一个空闲缓存对象被应用进程使用。应用进程在每一个图像帧的绘制渲染周期,均可将已渲染的图像帧存入至缓存队列的空闲缓存对象中,避免了应用进程绘制渲染图像帧过程中可能会出现的丢帧的情况,解决了由于丢帧导致的送显图像帧出现显示卡顿的问题,提高了应用启动过程中,启动动效的显示流畅性。

12、在第一方面的一种可能的实现方式,第一图像帧和第二图像帧为电子设备在第一应用的启动过程中,由第一刷新率切换至第二刷新率过程中的图像帧;第一刷新率小于第二刷新率。

13、其中,第一刷新率可以为60hz,也即,1秒钟时间里刷新60帧图片,每16.6毫秒刷新一帧图片。第二刷新率可以为90hz,也即,1秒钟时间里刷新90帧图片,每11.1毫秒刷新一帧图片。

14、在本申请中,在刷新率切换的场景下,本实施例提供的图像处理方法可有效解决应用启动过程中,由于刷新率切换,造成的合成线程与应用进程处理周期异步、合成线程认为待合成的图像帧存在任务堆积而不执行合成操作,导致缓存队列中无缓存对象释放的问题。

15、在第一方面的一种可能的实现方式,第一图像帧和第二图像帧是第一应用的启动完成之后的图像帧。

16、在本申请中,针对不同的场景,在第一应用的启动完成之后,本实施例提供的图像处理方法仍可以在合成线程不执行合成操作的情况下,动态增加缓存队列中空闲缓存对象的数量,以此来解决了第一应用启动完成之后,比如,在第一应用的内部图像显示过程中,由于丢帧导致的送显图像帧出现显示卡顿的问题,提高了应用内部显示图像的显示流畅性。

17、在第一方面的一种可能的实现方式,第一图像帧和第二图像帧是第一应用的退出过程中的图像帧。

18、在本申请中,在电子设备执行应用的退出过程中,针对退出过程中退出动效的图像帧进行图像处理,在合成线程不执行合成操作的情况下,动态增加缓存队列中空闲缓存对象的数量,使得缓存队列中始终有至少一个空闲缓存对象被应用进程使用。应用进程在每一个图像帧的绘制渲染周期,均可将已渲染的图像帧存入至缓存队列的空闲缓存对象中,避免了应用进程绘制渲染图像帧过程中可能会出现的丢帧的情况,解决了由于丢帧导致的送显图像帧出现显示卡顿的问题,提高了应用退出过程中,退出动效的显示流畅性。

19、在第一方面的一种可能的实现方式,第一图像帧和第二图像帧为电子设备在第一应用的退出过程中,由第一刷新率切换至第二刷新率过程中的图像帧;第一刷新率小于第二刷新率。

20、其中,第一刷新率可以为60hz,也即,1秒钟时间里刷新60帧图片,每16.6毫秒刷新一帧图片。第二刷新率可以为90hz,也即,1秒钟时间里刷新90帧图片,每11.1毫秒刷新一帧图片。

21、在本申请中,在刷新率切换的场景下,本实施例提供的图像处理方法可有效解决应用退出过程中,由于刷新率切换,造成的合成线程与应用进程处理周期异步、合成线程认为待合成的图像帧存在任务堆积而不执行合成操作,导致缓存队列中无缓存对象释放的问题。

22、在第一方面的一种可能的实现方式,第二图像帧的绘制渲染周期为第一图像帧的绘制渲染周期的下一周期;第二图像帧的绘制起始时刻与第一图像帧的绘制起始时刻相差1个周期。

23、在本申请中,第二图像帧的绘制起始时刻与第一图像帧的绘制起始时刻相差1个周期,若合成线程在第一图像帧的合成周期不执行合成操作,则会影响第二图像帧的绘制渲染,由于第二图像帧与第一图像帧为相邻图像帧,第二图像帧丢帧的情况下,会出现明显的图像帧显示卡顿问题。基于此,在第二图像帧与第一图像帧为相邻图像帧的情况下,本申请提供的图像处理方法的效果更明本文档来自技高网...

【技术保护点】

1.一种图像处理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述第一图像帧和所述第二图像帧是所述第一应用的启动过程中的图像帧。

3.根据权利要求2所述的方法,其特征在于,所述第一图像帧和所述第二图像帧为所述电子设备在所述第一应用的启动过程中,由第一刷新率切换至第二刷新率过程中的图像帧;所述第一刷新率小于所述第二刷新率。

4.根据权利要求1所述的方法,其特征在于,所述第一图像帧和所述第二图像帧是所述第一应用的启动完成之后的图像帧。

5.根据权利要求1所述的方法,其特征在于,所述第一图像帧和所述第二图像帧是所述第一应用的退出过程中的图像帧。

6.根据权利要求5所述的方法,其特征在于,所述第一图像帧和所述第二图像帧为所述电子设备在所述第一应用的退出过程中,由第一刷新率切换至第二刷新率过程中的图像帧;所述第一刷新率小于所述第二刷新率。

7.根据权利要求1-6中任一项所述的方法,其特征在于,所述第二图像帧的绘制渲染周期为所述第一图像帧的绘制渲染周期的下一周期;所述第二图像帧的绘制起始时刻与所述第一图像帧的绘制起始时刻相差1个周期。

8.根据权利要求1-6中任一项所述的方法,其特征在于,所述第一调整请求中包括第一指示值;所述第一指示值用于指示缓存对象的增加数量,所述增加所述缓存队列中空闲缓存对象的数量,包括:

9.根据权利要求8所述的方法,其特征在于,所述应用进程增加所述第一指示值的空闲缓存对象至所述缓存队列,包括:

10.根据权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:

11.根据权利要求1-6中任一项所述的方法,其特征在于,在所述将所述第一图像帧存储至缓存队列的一个空闲缓存对象中之后,所述方法还包括:

12.根据权利要求11所述的方法,其特征在于,所述方法还包括:

13.根据权利要求12所述的方法,其特征在于,所述第二调整请求中包括第二指示值,所述第二指示值用于指示缓存对象的减少数量;所述减少所述缓存队列中空闲缓存对象的数量,包括:

14.根据权利要求13所述的方法,其特征在于,所述应用进程从所述缓存队列中减少所述第二指示值的空闲缓存对象,包括:

15.根据权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:

16.根据权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:

17.一种电子设备,其特征在于,所述电子设备包括存储器、显示屏和一个或多个处理器;所述存储器、所述显示屏与所述处理器耦合;所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-16中任一项所述的方法。

18.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-16中任一项所述的方法。

...

【技术特征摘要】

1.一种图像处理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述第一图像帧和所述第二图像帧是所述第一应用的启动过程中的图像帧。

3.根据权利要求2所述的方法,其特征在于,所述第一图像帧和所述第二图像帧为所述电子设备在所述第一应用的启动过程中,由第一刷新率切换至第二刷新率过程中的图像帧;所述第一刷新率小于所述第二刷新率。

4.根据权利要求1所述的方法,其特征在于,所述第一图像帧和所述第二图像帧是所述第一应用的启动完成之后的图像帧。

5.根据权利要求1所述的方法,其特征在于,所述第一图像帧和所述第二图像帧是所述第一应用的退出过程中的图像帧。

6.根据权利要求5所述的方法,其特征在于,所述第一图像帧和所述第二图像帧为所述电子设备在所述第一应用的退出过程中,由第一刷新率切换至第二刷新率过程中的图像帧;所述第一刷新率小于所述第二刷新率。

7.根据权利要求1-6中任一项所述的方法,其特征在于,所述第二图像帧的绘制渲染周期为所述第一图像帧的绘制渲染周期的下一周期;所述第二图像帧的绘制起始时刻与所述第一图像帧的绘制起始时刻相差1个周期。

8.根据权利要求1-6中任一项所述的方法,其特征在于,所述第一调整请求中包括第一指示值;所述第一指示值用于指示缓存对象的增加数量,所述增加所述缓存队列中空闲缓存对象的数量,包括:

9.根据权利要求8所述的方法,其特征在于,所述应用进程增加所述第一...

【专利技术属性】
技术研发人员:蔡立峰杜鸿雁黄通焕李时进
申请(专利权)人:荣耀终端有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1