CN114626974A - 图像处理方法、装置、计算机设备及存储介质 - Google Patents
图像处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114626974A CN114626974A CN202210434474.1A CN202210434474A CN114626974A CN 114626974 A CN114626974 A CN 114626974A CN 202210434474 A CN202210434474 A CN 202210434474A CN 114626974 A CN114626974 A CN 114626974A
- Authority
- CN
- China
- Prior art keywords
- frame
- image frame
- image
- video image
- video
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明实施例公开了图像处理方法、装置、计算机设备及存储介质,图像处理方法包括:将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列;根据所述视频图像帧的时间戳,生成图像帧控制结果;根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧;根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。通过设置处于同一层次的图像附加层与帧缓存,并行处理UI图像帧与视频图像帧,并根据图像帧控制结果显示视频图像帧,有效避免了单线程处理造成视频数据处理滞后,导致视频图像帧不能在要求的显示时间内完成渲染显示的问题,从而实现高帧率的图像视频显示效果,提高用户体验。
Description
技术领域
本发明涉及图像显示领域,尤其涉及一种图像处理方法、装置、计算机设备及存储介质。
背景技术
随着计算机设备的性能不断提升,越来越多的应用程序提供了播放图像视频的功能,以根据接收到的操作指令,显示可播放的图像视频。目前的应用程序大多基于原生框架开发,并通过原生框架实现图像视频的播放。
应用程序播放图像视频时,需要在线程中对图像视频的视频帧进行渲染,还需要在线程中渲染UI(User Interface,用户界面)帧,以实现视频的图像刷新。然而,许多的计算机设备,如基于Android系统的计算机设备,原生框架是通过单线程进行图像视频的渲染显示。对于高帧率的播放场景,受UI图形渲染等因素影响,单线程处理多个渲染指令时,将导致线程卡顿及图像渲染滞后,进而导致无法得到高帧率的图像视频显示效果。
发明内容
有鉴于此,本发明的目的是为了克服现有技术中的不足,提供一种图像处理方法、装置、计算机设备及存储介质,以解决原生框架无法得到高帧率的图像视频显示效果的问题。
第一方面,本申请提供一种图像处理方法,应用于包括图像附加层和帧缓存的图像处理装置,所述方法包括:
将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳;
根据所述视频图像帧的时间戳,生成图像帧控制结果;
根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧;
根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。
结合第一方面,在第一种可能的实现方式中,所述图像帧控制结果包括删除帧、重复帧和更新帧,所述根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧,包括:
若所述图像帧控制结果为删除帧,移除所述缓存队列的队首视频图像帧,并重复执行根据所述视频图像帧的时间戳,生成图像帧控制结果的步骤;
若所述图像帧控制结果为更新视频图像帧,将所述缓存队列的队首视频图像帧放入所述图像附加层。
结合第一方面,在第二种可能的实现方式中,所述根据所述视频图像帧的时间戳,生成图像帧控制结果,包括:
获取当前显示分辨率以及当前显示的第一时间;
根据所述视频图像帧的时间戳、所述显示分辨率及所述第一时间,生成图像帧控制结果。
结合第一方面,在第三种可能的实现方式中,所述将视频图像帧放入缓存队列,包括:
判断所述缓存队列是否溢出;
若所述缓存队列溢出,则舍弃所述视频图像帧;
若所述缓存队列未溢出,则将所述视频图像帧放入所述缓存队列。
结合第一方面,在第四种可能的实现方式中,所述将视频图像帧放入缓存队列,包括:
根据视频图像帧的时间戳,确定所述视频图像帧的显示顺序,并依次将所述视频图像帧放入缓存队列。
结合第一方面,在第五种可能的实现方式中,所述将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列之前,还包括:
判断获取到的图像数据的类型;
若获取到的所述图像数据为UI数据,则将所述UI数据封装成UI图像帧;
若获取到的所述图像数据为视频数据,则根据所述视频数据和获取到的第二时间,生成包括时间戳的视频图像帧。
结合第一方面,在第六种可能的实现方式中,所述根据所述视频图像帧的时间戳,生成图像帧控制结果,包括:
查询所述缓存队列是否存在视频图像帧;
若所述缓存队列存在视频图像帧,根据所述视频图像帧的时间戳,生成图像帧控制结果。
第二方面,本申请提供一种图像处理装置,所述图像处理装置包括图像附加层和帧缓存,所述装置还包括:
帧渲染模块,用于将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳;
帧控制模块,用于根据所述视频图像帧的时间戳,生成图像帧控制结果;
帧处理模块,用于根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧,更新所述图像附加层;
帧显示模块,用于根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。
第三方面,本申请提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器上存储有程序或指令,所述程序或指令被所述处理器执行时实现如第一方面的图像处理方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有程序或指令,所述程序或指令被处理器执行时实现如第一方面的图像处理方法的步骤。
本申请提供一种图像处理方法,应用于包括图像附加层和帧缓存的图像处理装置,所述方法包括:将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳;根据所述视频图像帧的时间戳,生成图像帧控制结果;根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧;根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。通过设置处于同一层次的图像附加层与帧缓存,并行处理UI图像帧与视频图像帧,并根据图像帧控制结果显示视频图像帧,有效避免了单线程处理造成视频数据处理滞后,导致视频图像帧不能在要求的显示时间内完成渲染显示的问题,从而实现高帧率的图像视频显示效果,提高用户体验。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。
图1示出了本发明实施例提供的图像处理方法的流程图;
图2示出了单线程原生框架的图像显示的流程图;
图3示出了本发明实施例提供的图像显示的流程图;
图4示出了本发明实施例提供的图像处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。
实施例1
请参阅图1,图1示出了本发明实施例提供的图像处理方法的流程图。图1中的图像处理方法应用于包括图像附加层计算机设备,所述计算机设备包括图像附加层和帧缓存,所述图像处理方法包括以下步骤:
步骤110,将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳。
请一并参阅图2,图2示出了单线程原生框架的图像显示的流程图。示范性地,以Android系统的单线程原生框架为例。Android系统的原生框架是通过单线程进行图像的渲染显示。UI图像帧与视频图像帧都在一个线程内,依次渲染至帧缓存(FrameBuffer),显示装置通过刷新帧缓存,得到需显示的图像。高帧率的播放场景,视频图像帧的处理受UI图形渲染等因素影响。
本申请例中,图像附加层与帧缓存处于同一层次,以提供并行处理异步流程,有效避免了线程卡顿及图像渲染滞后,其中,图像附加层可以通过存储器实现,也可以是任意用于存储视频图像帧的设备,在此不做限定。
作为一个示例,所述将视频图像帧放入缓存队列,包括:
根据视频图像帧的时间戳,确定所述视频图像帧的显示顺序,并依次将所述视频图像帧放入缓存队列。
需要理解的是,时间戳用于标记视频图像帧,表示视频图像帧在特定时间点已经存在且完整性可验证。根据视频图像帧的时间戳,对得到视频图像帧进行排序,得到视频图像帧的显示顺序。根据得到的显示顺序,依次将视频图像帧放入缓存队列。具体地,将时间戳最早的视频图像帧放入缓存队列的队首,将时间戳最晚的视频图像帧放入缓存队列的队尾。通过时间戳对视频图像帧进行显示,以使显示装置根据顺序显示视频图像帧,得到高帧率显示的图像。
作为一个示例,所述将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列之前,还包括:
判断获取到的图像数据的类型;
若获取到的所述图像数据为UI数据,则将所述UI数据封装成UI图像帧;
若获取到的所述图像数据为视频数据,则根据所述视频数据和获取到的第二时间,生成包括时间戳的视频图像帧。
UI数据为对应用程序的人机交互、操作逻辑、界面美观的整体设计数据,用户可通过计算机设备提供UI下发操作指令。可通过解码器获取视频数据,且视频数据可以是多个图像数据组成,在此不做限定。
请一并参阅图3,图3示出了本发明实施例提供的图像显示的流程图。本申请先通过解码器对原始图像数据进行解码,得到UI数据和视频数据,通过第一线程将UI数据封装成UI图像帧,并依次将UI图像帧渲染至帧缓存。通过第二线程获取视频数据中多个图像数据的显示顺序,确定生成的视频图像帧的顺序,并根据视频图像帧的顺序,依次将视频数据封装成视频图像帧,根据获取到的第二时间设置视频图像帧的时间戳,得到包括时间戳的视频图像帧,并依次将包括时间戳的视频图像帧放入缓存队列。通过并行处理的第一线程与第二线程,完成UI图像和视频图像的异步处理,有效避免了单线程处理造成视频数据处理滞后,导致视频图像帧不能在要求的显示时间内完成渲染显示的问题,从而得到高帧率的图像视频显示效果,提高用户体验。
需要理解的是,第二时间为将视频数据封装成视频图像帧的当前时间。作为一个示例,所述将视频图像帧放入缓存队列,包括:
判断所述缓存队列(Frame Buffer Queue)是否溢出;
若所述缓存队列溢出,则舍弃所述视频图像帧;
若所述缓存队列未溢出,则将所述视频图像帧放入所述缓存队列。
根据视频数据和获取到的当前时间,得到包括时间戳的视频图像帧之后,判断缓存队列是否溢出。若缓存队列溢出,则确定缓存队列无法存储更多的视频图像帧,舍弃视频图像帧,并重新通过解码器获取视频数据。若缓存队列未溢出,则将视频图像帧放入缓存队列。需要理解的是,缓存队列用于存放视频图像帧,并根据先进先出原则,依次将缓存队列的视频图像帧放入图像附加层,保证UI图像帧与视频图像帧的同步显示。
步骤120,根据所述视频图像帧的时间戳,生成图像帧控制结果。
根据视频图像帧的时间戳,确定需要显示的视频图像帧,并生成图像帧控制结果。根据图像帧控制结果,确定显示装置的视频图像帧的刷新速率,保证UI图像帧与视频图像帧的同步显示,其中,显示装置可以是任意设置于计算机设备的用于显示图像的装置,图像帧控制结果包括删除帧、重复帧和更新帧,在此不做限定。根据视频图像帧的时间戳,确定缓存队列中队首的视频图像帧的序号。根据队首的视频图像帧的序号,生成图像帧控制结果。具体地,以显示装置需显示序号为第二帧的视图图像帧为例。若缓存队列中队首的视频图像帧的序号为第一帧,则生成的图像帧控制结果为删除帧。若缓存队列中队首的视频图像帧的序号为第二帧,则生成的图像帧控制结果为更新帧。若缓存队列中队首的视频图像帧的序号为第三帧,则生成的图像帧控制结果为重复帧。
作为一个示例,所述根据所述视频图像帧的时间戳,生成图像帧控制结果,包括:
获取当前显示分辨率以及当前显示的第一时间;
根据所述视频图像帧的时间戳、所述显示分辨率及所述第一时间,生成图像帧控制结果。
需要理解的是,第一时间为通过显示装置显示图像的当前时间。对于高分辨率的应用场景,通常要求48HZ以上的帧率。具体地,若获取到的当前显示分辨率为1920*1080P50HZ,则确认帧率为50HZ。由此确认,显示装置需要每秒连续显示50帧的视频图像帧,即要求每20毫秒刷新一次视频图像帧。具体地,时间为大于或等于0毫秒,且小于20毫秒时,显示装置需显示序号为第一帧的视频图像帧,时间大于或等于20毫秒,且小于40毫秒时,显示装置需显示序号为第二帧的视频图像帧。显示装置每20毫秒刷新一次视频图像帧,进而实现帧率为50HZ的显示效果。
以时间大于或等于20毫秒,且小于40毫秒为例,显示装置需显示序号为第二帧的视频图像帧。若缓存队列中队首的视频图像帧的序号为第一帧,则确定已超过显示第一帧的视频图像帧的时间,生成的图像帧控制结果为删除帧。若缓存队列中队首的视频图像帧的序号为第二帧,则确定需将第二帧的视频图像帧放入图像附加层,生成的图像帧控制结果为更新帧。若缓存队列中队首的视频图像帧的序号为第三帧,则确定未到达显示第三帧的视频图像帧的时间,显示装置需重复显示第二帧的视频图像帧,生成的图像帧控制结果为重复帧。
作为一个示例,所述根据所述视频图像帧的时间戳,生成图像帧控制结果,包括:
查询所述缓存队列是否存在视频图像帧;
若所述缓存队列存在视频图像帧,根据所述视频图像帧的时间戳,生成图像帧控制结果。
视频数据封装成有限数量的视频图像帧,缓存队列用于存储待显示的视频图像帧。通过第三线程查询缓存队列是否存在视频图像帧,若缓存队列存在视频图像帧,根据视频图像帧的时间戳,生成图像帧控制结果。若缓存队列不存在视频图像帧,则重复执行查询缓存队列的步骤,以等待第二线程将视频图像帧放入缓存队列。此外,若重复执行预设次数的查询缓存队列的步骤,仍不存在视频图像帧,可确定所有的视频图像帧已完成显示。
步骤130,根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧。
通常显示装置要求以预设间隔刷新视频图像帧,如每20毫秒刷新一次视频图像帧。根据图像帧控制结果,确定视频图像帧放入图像附加层的速率,以得到符合当前显示分辨率的帧率,进而得到高帧率的视频播放效果。
作为一个示例,所述图像帧控制结果包括删除帧、重复帧和更新帧,所述根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧,包括:
若所述图像帧控制结果为删除帧,移除所述缓存队列的队首视频图像帧,并重复执行根据所述视频图像帧的时间戳,生成图像帧控制结果的步骤;
若所述图像帧控制结果为更新视频图像帧,将所述缓存队列的队首视频图像帧放入所述图像附加层。
若图像控制结果为更新帧,则确定显示装置此时需显示缓存队列的队首视频图像帧,将缓存队列的队首视频图像帧放入图像附加层。若图像控制结果为删除帧,则确定已超过显示装置缓存队列的队首视频图像帧的时间范围,移除缓存队列的队首视频图像帧。
移除缓存队列的队首视频图像帧之后,或将缓存队列的队首视频图像帧放入图像附加层之后,缓存队列的队次位的视频图像帧转换为新的队首视频图像帧。根据新的队首视频图像帧的时间戳,生成新的图像控制结果,进而实现对缓存队列中所有的视频图像帧的处理。
需要理解的是,若图像控制结果为重复帧,则显示装置需要重复显示正在显示的视频图像帧,不移除缓存队列的队首视频图像帧,也不将缓存队列的队首视频图像帧放入图像附加层,直到图像控制结果由重复帧更换为删除帧或重复帧。
步骤140,根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。
将异步处理的帧缓存中的UI图像帧、图像附加层中的视频图像帧,混合处理得到显示图像帧。需要理解的是,生成显示图像帧即由显示装置最终显示图像。
基于预设透明度,混合帧缓存中的UI图像帧与图像附加层中的视频图像帧,生成显示图像帧。通常需要提供视频显示在UI显示之下的视觉效果,基于预设透明度,混合帧缓存中的UI图像帧与图像附加层中的视频图像帧,生成显示图像帧。通过预设透明度,使显示装置显示的UI具有更高的对比度和清晰度,提高用户的视觉体验。
本申请提供一种图像处理方法,应用于图像处理装置,所述图像处理装置包括图像附加层和帧缓存,所述方法包括:将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳;根据所述视频图像帧的时间戳,生成图像帧控制结果;根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧;根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。通过设置处于同一层次的图像附加层与帧缓存,并行处理UI图像帧与视频图像帧,并根据图像帧控制结果显示视频图像帧,有效避免了线程卡顿及图像渲染滞后,得到了高帧率的视频显示效果。
实施例2
请参阅图4,图4示出了本发明实施例提供的图像处理装置的结构示意图。所述图像处理装置200包括:
帧渲染模块210,用于将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳;
帧控制模块220,用于根据所述视频图像帧的时间戳,生成图像帧控制结果;
帧处理模块230,用于根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧,更新所述图像附加层;
帧显示模块240,用于根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。
作为一个示例,所述图像帧控制结果包括删除帧、重复帧和更新帧,所述帧处理模块230,包括:
删除帧子模块,用于若所述图像帧控制结果为删除帧,移除所述缓存队列的队首视频图像帧,并重复执行根据所述视频图像帧的时间戳,生成图像帧控制结果的步骤;
更新帧子模块,用于若所述图像帧控制结果为更新视频图像帧,将所述缓存队列的队首视频图像帧放入所述图像附加层。
作为一个示例,所述帧控制模块220,包括:
第一时间获取子模块,用于获取当前显示分辨率以及当前显示的第一时间;
结果生成子模块,用于根据所述视频图像帧的时间戳、所述显示分辨率及所述第一时间,生成图像帧控制结果。
作为一个示例,所述帧渲染模块210,包括:
溢出判断子模块,用于判断所述缓存队列是否溢出;
帧舍弃子模块,用于若所述缓存队列溢出,则舍弃所述视频图像帧;
帧放入子模块,用于若所述缓存队列未溢出,则将所述视频图像帧放入所述缓存队列。
作为一个示例,所述帧渲染模块210,还用于根据视频图像帧的时间戳,确定所述视频图像帧的显示顺序,并依次将所述视频图像帧放入缓存队列。
作为一个示例,图像处理装置200,还包括:
图像数据判断模块,用于判断获取到的图像数据的类型;
UI数据封装模块,用于若获取到的所述图像数据为UI数据,则将所述UI数据封装成UI图像帧;
视频数据封装模块,用于若获取到的所述图像数据为视频数据,则根据所述视频数据和获取到的第二时间,生成包括时间戳的视频图像帧。
作为一个示例,所述帧控制模块220,包括:
队列查询子模块,用于查询所述缓存队列是否存在视频图像帧;
控制结果子模块,用于若所述缓存队列存在视频图像帧,根据所述视频图像帧的时间戳,生成图像帧控制结果。
图像处理装置200还包括图像附加层和帧缓存,图像处理装置200用于执行上述的图像处理方法中的对应步骤,各个功能的具体实施,在此不再一一描述,实施例1中可选示例也同样适用于实施例2的图像处理装置200。
本申请实施例还提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器上存储有程序或指令,所述存储器上存储有程序或指令,所述程序或指令被所述处理器执行时实现上述的图像处理方法的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有程序或指令,所述程序或指令被处理器执行时实现上述的图像处理方法的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种图像处理方法,其特征在于,应用于包括图像附加层和帧缓存的图像处理装置,所述方法包括:
将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳;
根据所述视频图像帧的时间戳,生成图像帧控制结果;
根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧;
根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。
2.根据权利要求1所述的图像处理方法,其特征在于,所述图像帧控制结果包括删除帧、重复帧和更新帧,所述根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧,包括:
若所述图像帧控制结果为删除帧,移除所述缓存队列的队首视频图像帧,并重复执行根据所述视频图像帧的时间戳,生成图像帧控制结果的步骤;
若所述图像帧控制结果为更新视频图像帧,将所述缓存队列的队首视频图像帧放入所述图像附加层。
3.根据权利要求1所述的图像处理方法,其特征在于,所述根据所述视频图像帧的时间戳,生成图像帧控制结果,包括:
获取当前显示分辨率以及当前显示的第一时间;
根据所述视频图像帧的时间戳、所述显示分辨率及所述第一时间,生成图像帧控制结果。
4.根据权利要求1所述的图像处理方法,其特征在于,所述将视频图像帧放入缓存队列,包括:
判断所述缓存队列是否溢出;
若所述缓存队列溢出,则舍弃所述视频图像帧;
若所述缓存队列未溢出,则将所述视频图像帧放入所述缓存队列。
5.根据权利要求1所述的图像处理方法,其特征在于,所述将视频图像帧放入缓存队列,包括:
根据视频图像帧的时间戳,确定所述视频图像帧的显示顺序,并依次将所述视频图像帧放入缓存队列。
6.根据权利要求1所述的图像处理方法,其特征在于,所述将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列之前,还包括:
判断获取到的图像数据的类型;
若获取到的所述图像数据为UI数据,则将所述UI数据封装成UI图像帧;
若获取到的所述图像数据为视频数据,则根据所述视频数据和获取到的第二时间,生成包括时间戳的视频图像帧。
7.根据权利要求1所述的图像处理方法,其特征在于,所述根据所述视频图像帧的时间戳,生成图像帧控制结果,包括:
查询所述缓存队列是否存在视频图像帧;
若所述缓存队列存在视频图像帧,根据所述视频图像帧的时间戳,生成图像帧控制结果。
8.一种图像处理装置,其特征在于,所述图像处理装置包括图像附加层和帧缓存,所述装置还包括:
帧渲染模块,用于将UI图像帧渲染至所述帧缓存,将视频图像帧放入缓存队列,其中,所述视频图像帧包括时间戳;
帧控制模块,用于根据所述视频图像帧的时间戳,生成图像帧控制结果;
帧处理模块,用于根据所述图像帧控制结果,确定放入所述图像附加层的视频图像帧,更新所述图像附加层;
帧显示模块,用于根据所述帧缓存中的UI图像帧、所述图像附加层中的视频图像帧,生成显示图像帧。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器上存储有程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1至7中任一项所述的图像处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有程序或指令,所述程序或指令被处理器执行时实现如权利要求1至7中任一项所述的图像处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210434474.1A CN114626974A (zh) | 2022-04-24 | 2022-04-24 | 图像处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210434474.1A CN114626974A (zh) | 2022-04-24 | 2022-04-24 | 图像处理方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114626974A true CN114626974A (zh) | 2022-06-14 |
Family
ID=81905755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210434474.1A Pending CN114626974A (zh) | 2022-04-24 | 2022-04-24 | 图像处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114626974A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115361579A (zh) * | 2022-07-28 | 2022-11-18 | 珠海全志科技股份有限公司 | 视频送显方法、装置、电子设备及存储介质 |
WO2024108703A1 (zh) * | 2022-11-22 | 2024-05-30 | 天地伟业技术有限公司 | 一种多目视频监控系统搭建方法及电子设备 |
-
2022
- 2022-04-24 CN CN202210434474.1A patent/CN114626974A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115361579A (zh) * | 2022-07-28 | 2022-11-18 | 珠海全志科技股份有限公司 | 视频送显方法、装置、电子设备及存储介质 |
WO2024108703A1 (zh) * | 2022-11-22 | 2024-05-30 | 天地伟业技术有限公司 | 一种多目视频监控系统搭建方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114626974A (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
CN106375793B (zh) | 一种视频结构化信息的叠加方法、用户终端及叠加系统 | |
WO2019153723A1 (zh) | 视频画面显示方法、装置、电视机及存储介质 | |
CN111327940B (zh) | 一种视频播放方法、装置及系统 | |
WO2006067711A2 (en) | Method and device for displaying animated buttons | |
CN113015003B (zh) | 视频帧缓存方法和设备 | |
CN111124230B (zh) | 输入响应方法、装置、电子设备及计算机可读存储介质 | |
US10878530B2 (en) | Display method and display device | |
CN108156509B (zh) | 视频播放方法、装置及用户终端 | |
CN107333175B (zh) | 一种视频处理的方法及移动终端 | |
CN112423072A (zh) | 直播场景下的视频推送方法及系统 | |
CN111240793B (zh) | cell预渲染的方法、装置、电子设备以及计算机可读介质 | |
CN106407009A (zh) | 一种图片显示方法和装置 | |
JP2020028096A (ja) | 画像処理装置、画像処理装置の制御方法及びプログラム | |
CN107506119B (zh) | 一种图片显示方法、装置、设备和存储介质 | |
TW201215148A (en) | Method for performing video display control within a video display system, and associated video processing circuit and video display system | |
KR102151364B1 (ko) | 애니메이션 생성 방법 및 장치 | |
JP2008306330A (ja) | 情報処理装置、動きベクトル生成プログラムおよび補間画像生成プログラム | |
JP3961693B2 (ja) | 映像表示装置 | |
CN113691835B (zh) | 视频植入方法、装置、设备及计算机可读存储介质 | |
CN115129279B (zh) | 图像绘制方法、装置、电子设备及计算机存储介质 | |
CN110248150B (zh) | 一种图片显示的方法、设备及计算机存储介质 | |
CN112866779A (zh) | 视频展示方法、装置、计算机设备和介质 | |
CN113014984A (zh) | 实时添加字幕方法、装置、计算机设备和计算机存储介质 | |
CN109410306B (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 |