CN111340681A - 一种图像处理方法及装置 - Google Patents
一种图像处理方法及装置 Download PDFInfo
- Publication number
- CN111340681A CN111340681A CN202010085319.4A CN202010085319A CN111340681A CN 111340681 A CN111340681 A CN 111340681A CN 202010085319 A CN202010085319 A CN 202010085319A CN 111340681 A CN111340681 A CN 111340681A
- Authority
- CN
- China
- Prior art keywords
- command
- commands
- image processing
- extracted
- priority queue
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 13
- 238000009877 rendering Methods 0.000 claims abstract description 113
- 238000000034 method Methods 0.000 claims abstract description 105
- 238000000605 extraction Methods 0.000 claims description 52
- 239000000203 mixture Substances 0.000 claims description 35
- 239000002131 composite material Substances 0.000 claims description 16
- 238000002360 preparation method Methods 0.000 claims description 3
- 238000013468 resource allocation Methods 0.000 claims description 3
- 230000015572 biosynthetic process Effects 0.000 abstract description 21
- 238000003786 synthesis reaction Methods 0.000 abstract description 21
- 230000009286 beneficial effect Effects 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 10
- 230000000903 blocking effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000002194 synthesizing effect Effects 0.000 description 3
- 101150098958 CMD1 gene Proteins 0.000 description 2
- 101100382321 Caenorhabditis elegans cal-1 gene Proteins 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- 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
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开了一种图像处理方法及装置,通过建立至少三个命令队列,有利于建立各命令队列的优先级,以便于将繁多的命令分级管理,进而有利于避免较低的优先级命令对关键命令的阻塞,从而有利于及时完成画面的渲染和合成,消除因画面渲染不及时而导致的卡顿现象。并且,通过根据判断结果确定从各命令队列中提取何种命令,在可能出现渲染超时的风险时,可以避免较低的优先级命令对关键命令的阻塞,及时完成画面的渲染和合成,达到均衡图像处理模块的负载,避免因某帧画面的命令较多导致图像处理模块出现负载瓶颈,从而避免浏览的页面出现卡顿,提高页面浏览的流畅程度,提高用户的体验感受。
Description
技术领域
本发明涉及图像处理技术领域,尤指一种图像处理方法及装置。
背景技术
交互式网络电视(即IPTV产品,例如但不限于包括机顶盒和普通电视的系统)普遍采用B/S(即浏览器/服务器)架构,即运营商(即服务器)部署页面内容,机顶盒(即浏览器)负责展示页面。随着技术进步和功能的提升,服务器若要页面展示的内容更加丰富和多样化,就需要机顶盒的展示能力与展示需求相匹配。
目前,机顶盒的芯片中一般包括GPU(Graphic Processing Unit,图像处理模块),且为了实现图像处理,其中的渲染过程、合成过程、以及光栅化过程等均采用GPU来实现。然而,若需要展示的图层较复杂,细节多,且内容较大时,GPU的工作性能可能会出现瓶颈,导致画面渲染不及时,使得浏览页面时出现卡顿的现象,最终降低用户的体验感受。
那么,如何消除浏览页面时出现的卡顿现象,提高用户的体验感受,是本领域技术人员亟待解决的技术问题。
发明内容
本发明实施例提供了一种图像处理方法及装置,用以消除浏览页面时出现的卡顿现象,提高用户的体验感受。
第一方面,本发明实施例提供了一种图像处理方法,包括:
在从预先建立的至少三个命令队列中提取到当前帧画面的渲染请求命令时,判断第一时刻至当前时刻的时间差是否大于第一预设值;所述第一时刻为生成所述当前帧画面的渲染请求命令的时刻;
若否,则按照预设的命令提取规则,从所述至少三个命令队列中提取命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理;
若是,则从所述至少三个命令队列中提取所述当前帧画面对应的命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理。
可选地,在本发明实施例中,所述至少三个命令队列中包括高优先级队列,所述高优先级队列包括合成命令;
按照预设的命令提取规则,从所述至少三个命令队列中提取命令,具体包括:
按照预设的命令数量提取规则,在所述高优先级队列中确定待提取命令;
判断所述待提取命令中是否包括所述合成命令;
若是,则根据所述合成命令在所述待提取命令中的位置,以及所述命令数量提取规则,从各所述命令队列中提取命令;
若否,则按照所述命令数量提取规则,分别从各所述命令队列中提取命令。
可选地,在本发明实施例中,所述命令数量提取规则包括:
按照预设的命令提取比例分别从所述至少三个命令队列中提取命令,且使得提取到的命令总数为第二预设值。
可选地,在本发明实施例中,根据所述合成命令在所述待提取命令中的位置,以及所述命令数量提取规则,从各所述命令队列中提取命令,具体包括:
判断所述合成命令是否位于所述待提取命令的第一位置;所述第一位置用于表示处于该位置的命令在所述待提取命令中第一个被提取;
若是,则在接收到渲染结束通知时,从所述高优先级队列中的所述待提取命令中提取所述合成命令,且按照所述命令数量提取规则,从各所述命令队列中除所述高优先级队列之外的其余队列中提取命令;
若否,按照所述高优先级队列中各所述命令的接收顺序,从所述待提取命令中提取先于所述合成命令接收的各命令,且按照所述命令数量提取规则,从各所述命令队列中除所述高优先级队列之外的其余队列中提取命令。
可选地,在本发明实施例中,所述至少三个命令队列中包括第一类命令和第二类命令;
所述第一类命令包括光栅化命令,所述第二类命令包括:渲染请求命令、渲染执行命令、以及合成命令;
其中,所述第二类命令中的各命令均是按照命令的接收顺序依次添加至各所述命令队列中的。
可选地,在本发明实施例中,在所述命令队列设置有三个时,三个命令队列包括:高优先级队列、普通优先级队列和低优先级队列;
所述高优先级队列包括:渲染请求命令、渲染结果的图层拷贝命令、图层资源分配命令、图层准备命令、以及合成命令;
所述普通优先级队列包括:渲染执行命令、以及光栅化命令中的部分命令;
所述低优先级队列包括:所述光栅化命令中的其余部分命令。
可选地,在本发明实施例中,所述光栅化命令包括:根据所属帧数划分出的当前帧光栅化命令和非当前帧光栅化命令,所述当前帧光栅化命令位于所述普通优先级队列,所述非当前帧光栅化命令位于所述低优先级队列;
和/或,所述光栅化命令包括:根据待渲染内容的所在区域划分出的第一光栅化命令和第二光栅化命令,所述第一光栅化命令为所述待渲染内容在显示屏进行显示且位于所述普通优先级队列,所述第二光栅化命令为所述待渲染内容在显示屏不进行显示且位于所述低优先级队列。
可选地,在本发明实施例中,在判断第一时刻至当前时刻的时间差是否大于第一预设值之后,且在根据判断结果从所述至少三个命令队列中提取命令之前,还包括:
将提取到的所述当前帧画面的渲染请求命令发送至所述图像处理模块。
第二方面,本发明实施例提供了一种图像处理装置,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的所述程序指令,按照获得的程序执行:
在从预先建立的至少三个命令队列中提取到当前帧画面的渲染请求命令时,判断第一时刻至当前时刻的时间差是否大于第一预设值;所述第一时刻为生成所述当前帧画面的渲染请求命令的时刻;
若否,则按照预设的命令提取规则,从所述至少三个命令队列中提取命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理;
若是,则从所述至少三个命令队列中提取所述当前帧画面对应的命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理。
第三方面,本发明实施例提供了一种计算机可读的非易失性存储介质,所述计算机可读的非易失性存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算执行上述方法。
本发明有益效果如下:
本发明实施例提供的一种图像处理方法及装置,首先,建立至少三个命令队列,将接收到的各命令分别添加至各命令队列中,如此,有利于建立各命令队列的优先级,以便于将繁多的命令分级管理,进而有利于避免较低的优先级命令对关键命令的阻塞,从而有利于及时完成画面的渲染和合成,消除因画面渲染不及时而导致的卡顿现象,提高用户的体验感受。
其次,在判断出时间差大于第一预设值时,说明时间较紧,可能会出现渲染超时的风险,所以此时可以直接提取与当前帧画面相关的命令,避免较低的优先级命令对关键命令的阻塞,从而及时完成画面的渲染和合成;在判断出时间差不大于第一预设值时,说明时间的紧急程度较小,暂时可能不会出现渲染超时的风险,所以此时可以按照命令提取规则提取命令;也就是说,可以根据判断结果,确定需要提取的命令,以便于实现根据时间的紧急程度动态调整图像处理模块需要处理的命令,达到均衡图像处理模块的负载,避免因某帧画面的命令较多导致图像处理模块出现负载瓶颈,从而避免浏览的页面出现卡顿,提高页面浏览的流畅程度,提高用户的体验感受。
附图说明
图1为图层分块结果的示意图;
图2为现有技术中画面渲染过程的示意图;
图3为本发明实施例中提供的图像处理方法的流程图;
图4为本发明实施例中提供的各命令队列的示意图;
图5为本发明实施例中提供的高优先级队列的示意图;
图6为本发明实施例中提供的具体实施例的流程图;
图7为本发明实施例中提供的图像处理装置的结构示意图。
具体实施方式
下面将结合附图,对本发明实施例提供的一种图像处理方法及装置的具体实施方式进行详细地说明。需要说明的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在介绍图像处理方法之前,首先对图像处理过程进行介绍。
浏览器在利用中央处理器(Central Processing Unit,CPU)的多进程特性进行工作时,可以建立一个renderer(渲染)进程,完成渲染过程,还可以建立一个browser(浏览)进程,负责图层资源的请求与合成等工作,如此,可以保证同时进行两帧画面的渲染合成工作,以提升展示性能。
下面对renderer进程和browser进程进行介绍。
1、browser进程:
browser进程可以发起一帧画面的渲染请求并申请资源,即生成一帧画面的渲染请求命令(如request),在等待renderer进程的渲染结束后,可以进行合成展示,即执行合成命令(如composite)。
其中,可以将实现browser进程的模块称之为browser模块,在该模块中,用于实现渲染请求功能的单元为request单元,用于实现合成功能的单元为composite单元。
2、renderer进程:
renderer进程的工作可以细分为:负责画布渲染(对应渲染执行命令,如renderer)、分块化(tiling)、以及光栅化(对应光栅化命令,如raster)等工作。
其中,画布渲染可以理解为:将页面内容按照描述特性在一个内存图层上进行绘制,且该过程需要采用GPU来实现。
分块化的目的为:减少重绘整个画布的几率,减少大内存的开销。
例如,参见图1所示,图中示出了一个渲染后的图层可以划分成多个小的分块,即多个小分块分别标记为1至mn+n。
其中,分块化无需采用GPU来实现,且分块化的具体过程可以参见现有技术,在此不再详述。
光栅化过程可以理解为:将分块后的多个小画布转换为用来显示的点阵数据。其中,该过程可以采用GPU来实现。
说明一点,光栅化过程中,各分块的顺序并不一定要按照图例中从小到大的顺序,只需要全部完成后进行通知即可。
同样地,可以将实现renderer进程的模块称之为renderer模块,在该模块中,用于实现renderer功能的单元为renderer单元,用于实现raster功能的单元为raster单元。
也就是说,renderer进程中的renderer功能和raster功能,browser进程中的request功能和composite功能均需要采用GPU来完成,如此,可以充分利用GPU的强大图形处理能力,还可以减少CPU的开销。
需要说明的是,对于每一帧画面的处理,不仅需要renderer进程和browser进程,还需要其他可以实现图像处理的进程,具体可参见现有技术,在此不再一一列举。
其中,每一帧画面的最终显示,需要各个进程向GPU发送多个命令并由GPU执行这么命令来最终完成。
例如,可能需要request单元向GPU发送10条命令,需要renderer单元向GPU发送20条命令,需要raster单元向GPU发送40条命令,需要composite单元向GPU发送20条命令等。
由于GPU为芯片内存在的一个图像处理单元(或称之为图像处理模块),所以出于安全和稳定性方面的考虑,浏览器可以在内部建立一个GPU进程(或称之为命令调度模块),可以执行GPU的命令调度处理过程(即gpu scheduleprocess),也就是说,浏览器中的任何模块若要采用GPU来执行命令时,需要将命令先发送至命令调度模块,再由命令调度模块将接收到的命令转发至GPU,然后由GPU逐条执行各命令。
在browser进程发起一帧画面的渲染请求命令(即request)并申请资源之后,等待renderer进程结束渲染过程后再进行合成展示,因此,两个进程之间存在着一定的依赖关系。
例如,browser进程发起的request,是一帧画面开始渲染工作的开始,browser进程中负责合成的composite在被发送至命令调度模块(即gpu sehcdule process)之后,在gpu schedule process中,需要等待renderer进程将该帧画面的所有渲染命令结束后,composite才被发送至GPU中,由GPU执行合成工作。
基于此,随着浏览器需要展示的内容和特效更加丰富,画面细节更多,且画面需要画布渲染和光栅化的工作所需要的命令增多,同时renderer进程通常又同时进行下一帧画面的提前渲染工作,导致这些命令均按照进程发送各命令的时间顺序排在命令调度模块的队列中,进而导致browser进程在开始请求一帧画面渲染至等待渲染结束并开始合成的时间可能会超过16ms,最终导致该帧之后的画面来不及渲染,在展示一些页面的快速切换的场景(比如页面滚动)时就可能会出现卡顿的现象。
例如,参见图2所示,在命令调度模块接收到browser进程发送的一帧画面的request时将该命令发送至GPU,由GPU开始执行渲染过程。接着,命令调度模块接收到renderer进程发送的多个渲染执行命令(如render_cmd1和render_cmdn)、以及多个光栅化命令(如raster_cmd1和raster_cmdn),按照接收顺序依次发送至GPU,由GPU执行渲染过程。在renderer进程中与该帧画面相关的命令均发送完成时,向任务调度模块发送完成通知,此时任务调度模块将在renderer进程发送命令的期间接收到的合成命令(如composite)发送至GPU,以使GPU完成合成展示。显然,从任务调度模块接收request至发送composite经历的时间超过了16ms。
由于每帧画面在16ms内完成显示是目前浏览器行业的一个能力规范,达到这个能力就可以在每秒内完成60帧(1000ms/16)的画面显示,以满足人眼流畅感受以及硬件刷新率。并且,页面设计者同样也有此设计规范,以避免展示内容在每秒内超过60帧画面。
因此,每帧画面在规定时间(如16ms)内完成显示,有利于提高用户的观看感受,同时避免页面出现卡顿的现象。
基于此,本发明实施例提供了一种图像处理方法,用以消除浏览页面时出现的卡顿现象,提高用户的体验感受。
具体地,本发明实施例提供的一种图像处理方法,如图3所示,可以包括:
S301、从预先建立的至少三个命令队列中提取当前帧画面的渲染请求命令;
S302、判断第一时刻至当前时刻的时间差是否大于第一预设值,第一时刻为生成当前帧画面的渲染请求命令的时刻;若否,执行S303;若是,执行S304;
其中,每条命令在生成时都会携带一个时间戳信息,该时间戳信息反映了生成该条命令的时间。
在调度任务模块中可以设置有计时器,用以实现计时功能;若判断第一时刻至当前时刻的时间差是否大于第一预设值为定时判断时,那么可以通过计时器对时间进行统计,到达预定时间时则可以开始判断。当然还可以设置为实时判断,在每次判断时可以记录下进行判断的时间,从而确定出时间差。
并且,若判断出第一时刻至当前时刻的时间差大于第一预设值,说明当前帧画面存在渲染超时的风险,为了避免对下一帧画面的渲染造成影响,需要执行S304,以尽快完成对当前帧画面的处理;若判断出第一时刻至当前时刻的时间差不大于第一预设值,说明当前帧画面暂时不存在渲染超时的风险,所以可以执行S303,而不用去执行S304,以避免对资源进行过度消耗。
其中,第一预设值设置的越大,出现渲染超时的风险越大,若第一预设值设置的越小,就越有可能消耗资源去执行S304。因此,在设置第一预设值时,可以根据实际情况设置,以满足不同应用场景的需要,提高设计的灵活性;并且,可以通过参数配置进行设置,且取值可以为1ms至15ms中的任一值。
S303、按照预设的命令提取规则,从至少三个命令队列中提取命令并发送至图像处理模块,以使图像处理模块根据接收到的命令对当前帧画面进行图像处理;
其中,从至少三个命令队列中提取出的命令可能与当前帧画面相关,还可能与下一帧画面相关。
需要说明的是,在每次执行S303时,提取到的命令中可能包括合成命令(即上述内容提及的composite),此时图像处理模块可以根据合成命令对当前帧画面进行合成处理,以完成对当前帧画面的图像处理,之后则不会回到S302中,而是回到S301中,以获取下一帧画面的渲染请求命令,对下一帧画面进行处理。
当然,在每次执行S303时,提取到的命令中也可能不包括合成命令,那么该次执行完成S303之后,需要回到S302中继续进行判断,然后根据判断结果确定执行S303或S304,直至当前帧画面完成图像处理过程,回到S301中,以获取下一帧画面的渲染请求命令,对下一帧画面进行处理。
S304、从至少三个命令队列中提取当前帧画面对应的命令并发送至图像处理模块,以使图像处理模块根据接收到的命令对当前帧画面进行图像处理。
说明一点,在此步骤中,从至少三个命令队列中提取的命令仅与当前帧画面相关,例如,渲染执行命令、光栅化命令、合成命令、以及其他用于实现图像处理的命令。
在本发明实施例中,通过建立至少三个命令队列,可以将接收到的各命令分别添加至各命令队列中,如此,有利于建立各命令队列的优先级,以便于将繁多的命令分级管理,进而有利于避免较低的优先级命令对关键命令的阻塞,从而有利于及时完成画面的渲染和合成,消除因画面渲染不及时而导致的卡顿现象,提高用户的体验感受。
并且,在判断出时间差大于第一预设值时,说明时间较紧,可能会出现渲染超时的风险,所以此时可以直接提取与当前帧画面相关的命令,避免较低的优先级命令对关键命令的阻塞,从而及时完成画面的渲染和合成;在判断出时间差不大于第一预设值时,说明时间的紧急程度较小,暂时可能不会出现渲染超时的风险,所以此时可以按照命令提取规则提取命令;也就是说,可以根据判断结果,确定需要提取的命令,以便于实现根据时间的紧急程度动态调整图像处理模块需要处理的命令,达到均衡图像处理模块的负载,避免因某帧画面的命令较多导致图像处理模块出现负载瓶颈,从而避免浏览的页面出现卡顿,提高页面浏览的流畅程度,提高用户的体验感受。
可选地,在本发明实施例中,至少三个命令队列中包括第一类命令和第二类命令;
第一类命令包括光栅化命令,第二类命令包括:渲染请求命令、渲染执行命令、以及合成命令;
其中,第二类命令中的各命令均是按照命令的接收顺序依次添加至各命令队列中的。
说明一点,第二类命令中除了包括渲染请求命令、渲染执行命令、以及合成命令之外,还包括其他用于实现图像处理的命令,具体可参见现有技术,在此不再一一介绍。
也就是说,针对第二类命令,对于命令调度模块而言,在接收到各进程发送的命令时,可以对各命令进行整理,然后按照各命令的接收顺序将各命令添加至对应的命令队列中。
例如,参见图4所示,以browser进程和renderer进程,browser进程向命令调度模块发送渲染请求命令和合成命令,renderer进程向命令调度模块发送渲染执行命令和光栅化命令为例;其中,在浏览器的持续工作中,以两帧画面为例,browser进程需要向命令调度模块依次发送request1(即第一帧画面的渲染请求命令)、composite1(即第一帧画面的合成命令)、request2(即第二帧画面的渲染请求命令)、composite2(即第二帧画面的合成命令);renderer进程需要向命令调度模块依次发送renderer1(即第一帧画面的渲染执行命令)、raster1(即第一帧画面的光栅化命令)、renderer2(即第二帧画面的渲染执行命令)、raster2(即第二帧画面的光栅化命令)。此时:
除raster1和raster2之外,对于request1、request2、composite1、composite2、renderer1、renderer2,命令调度模块按照这些命令的接收顺序依次添加至各命令队列中,以保证这些命令按照接收的先后顺序依次发送至图像处理模块中,以使图像处理模块依次执行各命令。
如此,可以保证图像处理过程的准确性,避免因发送至图像处理模块的命令的先后顺序出现错误而导致图像处理错误,从而提高图像处理的效果,同时消除页面卡顿现象。
可选地,在本发明实施例中,如图4所示,在命令队列设置有三个时,三个命令队列包括:高优先级队列(如图4中1所示的实线框)、普通优先级队列(如图4中2所示的实线框)和低优先级队列(如图4中3所示的实线框);
高优先级队列1包括:渲染请求命令(如request1和request2)、渲染结果的图层拷贝命令(图中未示出)、图层资源分配命令(图中未示出)、图层准备命令(图中未示出)、以及合成命令(如composite1和composite2);
普通优先级队列2包括:渲染执行命令(如renderer1和renderer2)、以及光栅化命令中的部分命令(如raster1);
低优先级队列3包括:光栅化命令中的其余部分命令(如raster2)。
其中,各命令队列中包括的命令并不限于上述内容,还可以包括其他命令,也就是说,browser进程发送的命令中并不限于渲染请求命令和合成命令,还包括其他命令,其中,可以将browser进程发送的命令均添加至高优先级队列中。
对于renderer进程而言,发送的命令也并不限于渲染执行命令和光栅化命令,还可以包括其他命令,其中,可以将renderer进程发送的命令中除光栅化命令之外的其他命令均添加至普通优先级队列中。
而低优先级队列中的命令,可以理解为并不是很关键的命令,对图像处理过程影响较小的命令,所以为了避免渲染超时,进而避免下一帧画面来不及渲染,所以可以将这些不是很关键的命令添加至低优先级队列中,以避免这些命令对关键命令(如高优先级队列和普通优先级队列中的命令)的阻塞和干扰。
还有,命令队列的设置数量并不限于三个,还可以是四个、五个或六个等,在此并不限定。
例如但不限于,以命令队列设置有四个为例,可以包括:高优先级队列、高普通优先级队列、低普通优先级队列、以及低优先级队列,其中:
browser进程发送的渲染请求命令和合成命令均添加至高优先级队列中;
browser进程发送的除渲染请求命令和合成命令之外的命令,以及renderer进程发送的渲染执行命令均添加至高普通优先级队列中;
对于renderer进程发送的光栅化命令,可以部分添加至低普通优先级队列,其余部分添加至低优先级队列中;
renderer进程发送的除光栅化命令和渲染执行命令之外的命令,可以均添加至低普通优先级队列中。
可选地,在本发明实施例中,光栅化命令包括:根据所属帧数划分出的当前帧光栅化命令和非当前帧光栅化命令,当前帧光栅化命令位于普通优先级队列,非当前帧光栅化命令位于低优先级队列;
和/或,光栅化命令包括:根据待渲染内容的所在区域划分出的第一光栅化命令和第二光栅化命令,第一光栅化命令为待渲染内容在显示屏进行显示且位于普通优先级队列,第二光栅化命令为待渲染内容在显示屏不进行显示且位于低优先级队列。
其中,光栅化命令进行上述方式的划分,是依据光栅化操作的特性确定的,具体为:
1、由于在执行渲染工作时,通常存在当前帧画面和下一帧画面同时渲染的情况,也就是说,可能存在两帧画面同时进行光栅化过程。因此,可以根据每个光栅化命令的所属帧数划分为:属于普通优先级队列的当前帧画面对应的光栅化命令(如图4中的raster1)、以及属于低优先级队列的下一帧画面对应的光栅化命令(如图4中的raster2)。
2、在渲染过程中,可能存在需要渲染的页面并不能全部在显示屏中进行显示,例如,显示屏的尺寸为1280*720,需要渲染的页面的尺寸为1280*1024,显然需要渲染的页面尺寸大于显示屏的尺寸,所以渲染之后,会存在部分渲染的内容不会在显示屏中进行显示。因此,可以根据待渲染内容的所在区域划分为:属于普通优先级队列的第一光栅化命令(如图4中的raster1a)、以及属于低优先级队列的第二光栅化命令(如图4中的raster1b),第一光栅化命令对应的待渲染的内容可以在显示屏进行显示,第二光栅化命令对应的待渲染的内容则不会显示屏进行显示。
由于对分块的光栅化过程,原本并不存在先后依赖关系(具体可参见上述内容中的介绍),所以可以基于这个特点,对光栅化命令进行划分,从而将光栅化命令中的部分命令划分至普通优先级队列中,将光栅化命令中的其余命令划分至低优先级队列中,从而提高对命令的管理效率,有利于消除页面卡顿的现象。
在具体实施时,在本发明实施例中,至少三个命令队列中包括高优先级队列,高优先级队列包括合成命令;
按照预设的命令提取规则,从至少三个命令队列中提取命令,具体包括:
按照预设的命令数量提取规则,在高优先级队列中确定待提取命令;
判断待提取命令中是否包括合成命令;
若是,则根据合成命令在待提取命令中的位置,以及命令数量提取规则,从各命令队列中提取命令;
若否,则按照命令数量提取规则,分别从各命令队列中提取命令。
其中,根据预设的命令数量提取规则,高优先级队列中需要待提取的命令可能为多个,如果待提取命令中不包括合成命令,说明暂时还不需要进行合成处理,需要进行其他处理,所以可以按照命令数量提取规则,从各命令队列中提取命令即可,以使图像处理模块对当前帧画面进行处理;如果待提取命令中包括合成命令时,可以根据合成命令在待提取命令中的位置,从各命令队列中提取命令。
如此,可以分情况地从各命令队列中提取命令,使得对当前帧画面进行有效地处理,且避免对下一帧画面的渲染造成不良影响,同时也可以避免对其他进程的工作造成干扰,保证图像处理的整个过程正常有效地进行。
具体地,在本发明实施例中,根据合成命令在待提取命令中的位置,以及命令数量提取规则,从各命令队列中提取命令,具体包括:
判断合成命令是否位于待提取命令的第一位置;第一位置用于表示处于该位置的命令在待提取命令中第一个被提取;
若是,则在接收到渲染结束通知时,从高优先级队列中的待提取命令中提取合成命令,且按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令;
若否,按照高优先级队列中各命令的接收顺序,从待提取命令中提取先于合成命令接收的各命令,且按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令。
说明一点,高优先级队列中的各命令,是按照各进程发送命令的顺序依次添加至高优先级队列中的,所以高优先级队列中的各命令是具有一定的时间顺序的,以高优先级队列中包括渲染请求命令(如request)和合成命令(如composite)为例,当然高优先级队列中并不只是包括渲染请求命令和合成命令,还包括其他命令,此处只是以此为例进行简单说明而已。
参见图5所示,图中的虚线箭头表示命令的添加方向以及命令的提取方向,第1帧对应的request1是排在第2帧对应的request2之前的,且第1帧对应的request1是排在第1帧对应的composite1之前的,所以先添加至高优先级队列中的命令则会先被提取出去。
因此,在根据合成命令在待提取命令中的位置,从各命令队列中提取命令时,可以有以下几种情况:
情况1:
若合成命令位于待提取命令中的第一位置,也即在待提取命令中,合成命令会被第一个提取出去时,说明高优先级队列中,当前帧画面相关的各命令中,位于合成命令之前的各命令已经提取出去,需要提取合成命令。
由于若要执行合成命令需要等待渲染过程结束,所以在接收到渲染结束的通知时,可以提取合成命令。
而对于其他命令队列中的命令而言,可以按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令。
情况2:
若合成命令位于待提取命令中除第一位置之外的其他位置,例如但不限于第三位置,也即在待提取命令中,合成命令会被第三个提取出去,此时,可以将高优先级队列的待提取命令中位于合成命令之前的两个命令(如位于第一位置的命令和位于第二位置的命令)提取出去,再按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令。
之后,回到前述内容中提及的S302,继续判断第一时刻至当前时刻的时间差是否大于第一预设值;
若否,则再次按照预设的命令数量提取规则,在高优先级队列中确定待提取命令,且判断待提取命令中是否包括合成命令;
显然,此时待提取命令中必然包括合成命令,且合成命令位于待提取命令中的第一位置,所以:等待接收渲染结束通知,在接收到该通知时,从高优先级队列中的待提取命令中提取合成命令,且按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令。
如此,可以分情况地从高优先级队列中提取命令,使得对当前帧画面进行有效地处理,且避免对下一帧画面的渲染造成不良影响,同时也可以避免对其他进程的工作造成干扰,保证图像处理的整个过程正常有效地进行。
可选地,在本发明实施例中,命令数量提取规则可以包括:
按照预设的命令提取比例分别从至少三个命令队列中提取命令,且使得提取到的命令总数为第二预设值。
例如,以设置有三个命令队列为例,分别为高优先级队列、普通优先级队列和低优先级队列,命令提取比例可以设置为5:3:2,第二预设值可以设置为10,也就是说,从高优先级队列中提取5条命令,从普通优先级队列中提取3条命令,从低优先级队列提取2条命令,总共提取出10条命令,按照各命令的接收顺序,先接收到的命令先发送至图像处理模块中,后接收的命令后发送至图像处理模块中。
又例如,如果合成命令位于待提取命令的第一位置时,那么:从高优先级队列中提取1条命令(即合成命令),可以按照3:2的比例,分别从普通优先级队列和低优先级队列中提取命令,那么:从普通优先级队列中应该提取的命令的数量为9*(3/5)=5.4,从低优先级队列中应该提取的命令的数量为9*(2/5)=3.6,此时,可以通过近似计算得到:从普通优先级队列中提取5条命令,从低优先级队列提取4条命令,总共提取出10条命令;或者,从普通优先级队列中提取6条命令,从低优先级队列提取3条命令,总共提取出10条命令。
再例如,如果合成命令位于待提取命令的第三位置时,那么:从高优先级队列中提取2条命令(即位于合成命令之前的两个命令),那么:从普通优先级队列中应该提取的命令的数量为8*(3/5)=4.8,从低优先级队列中应该提取的命令的数量为8*(2/5)=3.2,此时,可以通过近似计算得到:从普通优先级队列中提取5条命令,从低优先级队列提取3条命令,总共提取出10条命令。
当然,在实际情况中,命令提取比例并不限于5:3:2,且第二预设值也并不限于10条,此处只是举例说明而已,在具体实施时,可以根据实际需要进行设置,以满足不同的应用场景,提高设计的灵活性。
说明一点,设置提取到的命令总数,可以按批次向图像处理模块发送命令,以减少命令的调度时间,提高命令的调度效率。其中,第二预设值设置的不要太大,以避免一次向图像处理模块发送较多的命令,进而避免图像处理模块执行时间较长,最终避免在调度时无法精准地控制时间,从而提高调度的精确度和效率。
在具体实施时,在本发明实施例中,在判断第一时刻至当前时刻的时间差是否大于第一预设值之后,且在根据判断结果从至少三个命令队列中提取命令之前,还包括:
将提取到的当前帧画面的渲染请求命令发送至图像处理模块。
也就是说,在提取到当前帧画面的渲染请求命令时,可以获取渲染请求命令中的时间戳信息,进而获取生成当前帧画面的渲染请求命令的时间,即获取第一时刻,从而有利于进行判断。
因此,在获取到第一时刻之后,即可将该当前帧画面的渲染请求命令发送至图像处理模块中,以便于图像处理模块接收到该命令时对当前帧画面准备开始渲染处理。同时,还有利于将后续的渲染执行命令以及其他命令发送至图像处理模块器时,使得图像处理模块开始对当前帧画面进行图像处理。
需要说明的是,在本发明实施例中,对于向各命令队列中添加命令的过程,与后续从各命令队列中提取命令的过程,这两个过程可以是并行进行的,二者之间可以无相互干扰。
下面以具体实施例,对图像处理过程进行说明。
结合图6所示的流程图,以对第i帧画面进行处理为例。
S601、从预先建立的至少三个命令队列中提取到第i帧画面的渲染请求命令;
S602、判断第一时刻至当前时刻的时间差是否大于第一预设值;若否,执行S603;若是,执行S609;
其中,第一时刻为生成第i帧画面的渲染请求命令的时刻。
S603、按照预设的命令数量提取规则,在高优先级队列中确定待提取命令;
S604、判断待提取命令中是否包括合成命令;若是,执行S605;若否,执行S608;
S605、判断合成命令是否位于待提取命令的第一位置;若是,执行S606;若否,执行S607;
S606、在接收到渲染结束通知时,从高优先级队列中的待提取命令中提取合成命令,且按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令;执行S610;
S607、按照高优先级队列中各命令的接收顺序,从待提取命令中提取先于合成命令接收的各命令,且按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令;回到S602;
S608、按照命令数量提取规则,分别从各命令队列中提取命令;回到S602;
S609、从至少三个命令队列中提取第i帧画面对应的命令;
S610、将提取出的命令发送至图像处理模块中,以使图像处理模块根据接收到的命令对第i帧画面进行图像处理。
需要说明的是,在对第i帧画面执行完S610之后,继续回到S601中提取第i+1帧画面的渲染请求命令,然后重复上述S602至S610的过程,以实现对每一帧画面的图像处理,保证页面显示的流畅度,消除页面卡顿的问题出现。
基于同一发明构思,本发明实施例提供了一种图像处理装置,如图7所示,包括:
存储器701,用于存储程序指令;
处理器702,用于调用存储器701中存储的程序指令,按照获得的程序执行:
在从预先建立的至少三个命令队列中提取到当前帧画面的渲染请求命令时,判断第一时刻至当前时刻的时间差是否大于第一预设值;第一时刻为生成当前帧画面的渲染请求命令的时刻;
若否,则按照预设的命令提取规则,从至少三个命令队列中提取命令并发送至图像处理模块,以使图像处理模块根据接收到的命令对当前帧画面进行图像处理;
若是,则从至少三个命令队列中提取当前帧画面对应的命令并发送至图像处理模块,以使图像处理模块根据接收到的命令对当前帧画面进行图像处理。
可选地,在本发明实施例中,至少三个命令队列中包括高优先级队列,高优先级队列包括合成命令;
处理器702具体用于:
按照预设的命令数量提取规则,在高优先级队列中确定待提取命令;
判断待提取命令中是否包括合成命令;
若是,则根据合成命令在待提取命令中的位置,以及命令数量提取规则,从各命令队列中提取命令;
若否,则按照命令数量提取规则,分别从各命令队列中提取命令。
可选地,在本发明实施例中,处理器702具体用于:
判断合成命令是否位于待提取命令的第一位置;第一位置用于表示处于该位置的命令在待提取命令中第一个被提取;
若是,则在接收到渲染结束通知时,从高优先级队列中的待提取命令中提取合成命令,且按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令;
若否,按照高优先级队列中各命令的接收顺序,从待提取命令中提取先于合成命令接收的各命令,且按照命令数量提取规则,从各命令队列中除高优先级队列之外的其余队列中提取命令。
可选地,在本发明实施例中,处理器702还用于:
在判断第一时刻至当前时刻的时间差是否大于第一预设值之后,且在根据判断结果从至少三个命令队列中提取命令之前,将提取到的当前帧画面的渲染请求命令发送至图像处理模块。
需要说明的是,在本发明实施例中,图像处理装置可以包括前述内容中提及的命令调度模块和图像处理器模块,从而实现对命令的有效管理,提高对图像处理的效率。
基于同一发明构思,本发明实施例提供了一种计算机可读的非易失性存储介质,计算机可读的非易失性存储介质存储有计算机可执行指令,计算机可执行指令用于使计算执行上述方法。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种图像处理方法,其特征在于,包括:
在从预先建立的至少三个命令队列中提取到当前帧画面的渲染请求命令时,判断第一时刻至当前时刻的时间差是否大于第一预设值;所述第一时刻为生成所述当前帧画面的渲染请求命令的时刻;
若否,则按照预设的命令提取规则,从所述至少三个命令队列中提取命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理;
若是,则从所述至少三个命令队列中提取所述当前帧画面对应的命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理。
2.如权利要求1所述的方法,其特征在于,所述至少三个命令队列中包括高优先级队列,所述高优先级队列包括合成命令;
按照预设的命令提取规则,从所述至少三个命令队列中提取命令,具体包括:
按照预设的命令数量提取规则,在所述高优先级队列中确定待提取命令;
判断所述待提取命令中是否包括所述合成命令;
若是,则根据所述合成命令在所述待提取命令中的位置,以及所述命令数量提取规则,从各所述命令队列中提取命令;
若否,则按照所述命令数量提取规则,分别从各所述命令队列中提取命令。
3.如权利要求2所述的方法,其特征在于,所述命令数量提取规则包括:
按照预设的命令提取比例分别从所述至少三个命令队列中提取命令,且使得提取到的命令总数为第二预设值。
4.如权利要求2所述的方法,其特征在于,根据所述合成命令在所述待提取命令中的位置,以及所述命令数量提取规则,从各所述命令队列中提取命令,具体包括:
判断所述合成命令是否位于所述待提取命令的第一位置;所述第一位置用于表示处于该位置的命令在所述待提取命令中第一个被提取;
若是,则在接收到渲染结束通知时,从所述高优先级队列中的所述待提取命令中提取所述合成命令,且按照所述命令数量提取规则,从各所述命令队列中除所述高优先级队列之外的其余队列中提取命令;
若否,按照所述高优先级队列中各所述命令的接收顺序,从所述待提取命令中提取先于所述合成命令接收的各命令,且按照所述命令数量提取规则,从各所述命令队列中除所述高优先级队列之外的其余队列中提取命令。
5.如权利要求1所述的方法,其特征在于,所述至少三个命令队列中包括第一类命令和第二类命令;
所述第一类命令包括光栅化命令,所述第二类命令包括:渲染请求命令、渲染执行命令、以及合成命令;
其中,所述第二类命令中的各命令均是按照命令的接收顺序依次添加至各所述命令队列中的。
6.如权利要求1所述的方法,其特征在于,在所述命令队列设置有三个时,三个命令队列包括:高优先级队列、普通优先级队列和低优先级队列;
所述高优先级队列包括:渲染请求命令、渲染结果的图层拷贝命令、图层资源分配命令、图层准备命令、以及合成命令;
所述普通优先级队列包括:渲染执行命令、以及光栅化命令中的部分命令;
所述低优先级队列包括:所述光栅化命令中的其余部分命令。
7.如权利要求6所述的方法,其特征在于,所述光栅化命令包括:根据所属帧数划分出的当前帧光栅化命令和非当前帧光栅化命令,所述当前帧光栅化命令位于所述普通优先级队列,所述非当前帧光栅化命令位于所述低优先级队列;
和/或,所述光栅化命令包括:根据待渲染内容的所在区域划分出的第一光栅化命令和第二光栅化命令,所述第一光栅化命令为所述待渲染内容在显示屏进行显示且位于所述普通优先级队列,所述第二光栅化命令为所述待渲染内容在显示屏不进行显示且位于所述低优先级队列。
8.如权利要求1-7任一项所述的方法,其特征在于,在判断第一时刻至当前时刻的时间差是否大于第一预设值之后,且在根据判断结果从所述至少三个命令队列中提取命令之前,还包括:
将提取到的所述当前帧画面的渲染请求命令发送至所述图像处理模块。
9.一种图像处理装置,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的所述程序指令,按照获得的程序执行:
在从预先建立的至少三个命令队列中提取到当前帧画面的渲染请求命令时,判断第一时刻至当前时刻的时间差是否大于第一预设值;所述第一时刻为生成所述当前帧画面的渲染请求命令的时刻;
若否,则按照预设的命令提取规则,从所述至少三个命令队列中提取命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理;
若是,则从所述至少三个命令队列中提取所述当前帧画面对应的命令并发送至所述图像处理模块,以使所述图像处理模块根据接收到的命令对所述当前帧画面进行图像处理。
10.一种计算机可读的非易失性存储介质,其特征在于,所述计算机可读的非易失性存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算执行权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010085319.4A CN111340681B (zh) | 2020-02-10 | 2020-02-10 | 一种图像处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010085319.4A CN111340681B (zh) | 2020-02-10 | 2020-02-10 | 一种图像处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111340681A true CN111340681A (zh) | 2020-06-26 |
CN111340681B CN111340681B (zh) | 2024-02-20 |
Family
ID=71185343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010085319.4A Active CN111340681B (zh) | 2020-02-10 | 2020-02-10 | 一种图像处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111340681B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112163985A (zh) * | 2020-09-22 | 2021-01-01 | Oppo(重庆)智能科技有限公司 | 图像处理方法、装置、存储介质及电子设备 |
CN112650465A (zh) * | 2021-01-12 | 2021-04-13 | 北京字节跳动网络技术有限公司 | 终端的控制方法、装置、终端和存储介质 |
CN116932193A (zh) * | 2022-04-07 | 2023-10-24 | 华为技术有限公司 | 一种显示子系统的通道分配方法、装置及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030076329A1 (en) * | 2001-10-18 | 2003-04-24 | Beda Joseph S. | Intelligent caching data structure for immediate mode graphics |
US20090083752A1 (en) * | 2007-09-20 | 2009-03-26 | Kddi Corporation | Event processing apparatus and method based on operating system |
CN103502943A (zh) * | 2011-12-31 | 2014-01-08 | 华为技术有限公司 | 一种基于消息队列的分布式任务处理的方法、装置及系统 |
US20150097830A1 (en) * | 2013-10-08 | 2015-04-09 | Samsung Electronics Co., Ltd. Of Suwon-Si | Image processing apparatus and method |
CN105959238A (zh) * | 2016-06-28 | 2016-09-21 | 深圳市彬讯科技有限公司 | 一种基于消息队列多优先级渲染资源的调度方法及系统 |
CN106155602A (zh) * | 2015-03-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种页面模块的渲染方法、装置以及显示设备 |
CN107479871A (zh) * | 2017-06-30 | 2017-12-15 | 广东南方数码科技股份有限公司 | 一种海量的矢量数据的访问和渲染方法、电子设备及存储介质 |
CN109242756A (zh) * | 2018-09-07 | 2019-01-18 | 上海兆芯集成电路有限公司 | 计算机系统、图形处理单元及其图形处理方法 |
CN109840298A (zh) * | 2018-12-29 | 2019-06-04 | 中国科学院计算技术研究所 | 大规模网络数据的多信息来源采集方法和系统 |
CN109891388A (zh) * | 2017-10-13 | 2019-06-14 | 华为技术有限公司 | 一种图像处理方法及装置 |
CN110704768A (zh) * | 2019-10-08 | 2020-01-17 | 支付宝(杭州)信息技术有限公司 | 基于图形处理器的网页渲染方法以及装置 |
-
2020
- 2020-02-10 CN CN202010085319.4A patent/CN111340681B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030076329A1 (en) * | 2001-10-18 | 2003-04-24 | Beda Joseph S. | Intelligent caching data structure for immediate mode graphics |
US20090083752A1 (en) * | 2007-09-20 | 2009-03-26 | Kddi Corporation | Event processing apparatus and method based on operating system |
CN103502943A (zh) * | 2011-12-31 | 2014-01-08 | 华为技术有限公司 | 一种基于消息队列的分布式任务处理的方法、装置及系统 |
US20150097830A1 (en) * | 2013-10-08 | 2015-04-09 | Samsung Electronics Co., Ltd. Of Suwon-Si | Image processing apparatus and method |
CN106155602A (zh) * | 2015-03-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种页面模块的渲染方法、装置以及显示设备 |
CN105959238A (zh) * | 2016-06-28 | 2016-09-21 | 深圳市彬讯科技有限公司 | 一种基于消息队列多优先级渲染资源的调度方法及系统 |
CN107479871A (zh) * | 2017-06-30 | 2017-12-15 | 广东南方数码科技股份有限公司 | 一种海量的矢量数据的访问和渲染方法、电子设备及存储介质 |
CN109891388A (zh) * | 2017-10-13 | 2019-06-14 | 华为技术有限公司 | 一种图像处理方法及装置 |
CN109242756A (zh) * | 2018-09-07 | 2019-01-18 | 上海兆芯集成电路有限公司 | 计算机系统、图形处理单元及其图形处理方法 |
CN109840298A (zh) * | 2018-12-29 | 2019-06-04 | 中国科学院计算技术研究所 | 大规模网络数据的多信息来源采集方法和系统 |
CN110704768A (zh) * | 2019-10-08 | 2020-01-17 | 支付宝(杭州)信息技术有限公司 | 基于图形处理器的网页渲染方法以及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112163985A (zh) * | 2020-09-22 | 2021-01-01 | Oppo(重庆)智能科技有限公司 | 图像处理方法、装置、存储介质及电子设备 |
CN112163985B (zh) * | 2020-09-22 | 2022-11-29 | Oppo(重庆)智能科技有限公司 | 图像处理方法、装置、存储介质及电子设备 |
CN112650465A (zh) * | 2021-01-12 | 2021-04-13 | 北京字节跳动网络技术有限公司 | 终端的控制方法、装置、终端和存储介质 |
CN116932193A (zh) * | 2022-04-07 | 2023-10-24 | 华为技术有限公司 | 一种显示子系统的通道分配方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111340681B (zh) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111340681B (zh) | 一种图像处理方法及装置 | |
EP0470782B1 (en) | Image rendering process and apparatus | |
CN101548277B (zh) | 多并行处理器的计算机图形系统 | |
KR100617998B1 (ko) | 시간 할당기를 갖는 그래픽 렌더링 엔진을 포함하는 장치,방법 및 시스템 | |
US7612781B2 (en) | Memory control method of graphic processor unit | |
KR20090011574A (ko) | 그래픽데이터 처리 장치 및 방법 | |
CN109992347B (zh) | 界面显示方法、装置、终端及存储介质 | |
JPWO2008105092A1 (ja) | グラフィックス描画装置及びグラフィックス描画方法 | |
CN112655025A (zh) | 处理中自适应中央窝渲染 | |
JP4482525B2 (ja) | 画像形成装置 | |
EP1647888A2 (en) | Apparatus for efficient image processing | |
CN116821040B (zh) | 基于gpu直接存储器访问的显示加速方法、装置及介质 | |
JP2659557B2 (ja) | 描画システム及び描画方法 | |
CN114138219A (zh) | 一种多屏显示方法、多屏显示系统及存储介质 | |
EP1947602B1 (en) | Information processing device, graphic processor, control processor, and information processing method | |
EP1647887A2 (en) | Apparatus for efficient image processing | |
US6801205B2 (en) | Method for reducing transport delay in a synchronous image generator | |
CN116546228B (zh) | 用于虚拟场景的推流方法、装置、设备及存储介质 | |
EP1880285B1 (en) | Information processing apparatus and task execution method | |
JPH07114477A (ja) | パケット通信方法およびシステム | |
KR20120024315A (ko) | 사용자 이벤트에 반응한 프레임워크를 표시하는 프레임워크 표시 시스템 및 방법 | |
CN113596569A (zh) | 图像处理方法、装置和计算机可读存储介质 | |
US7474311B2 (en) | Device and method for processing video and graphics data | |
US11455704B2 (en) | Apparatus and method | |
CN109983435A (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 |