CN108648249A - 一种图像渲染方法、装置及智能穿戴设备 - Google Patents

一种图像渲染方法、装置及智能穿戴设备 Download PDF

Info

Publication number
CN108648249A
CN108648249A CN201810437065.0A CN201810437065A CN108648249A CN 108648249 A CN108648249 A CN 108648249A CN 201810437065 A CN201810437065 A CN 201810437065A CN 108648249 A CN108648249 A CN 108648249A
Authority
CN
China
Prior art keywords
layer
rendering
stacking element
stacking
accelerating engine
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
Application number
CN201810437065.0A
Other languages
English (en)
Other versions
CN108648249B (zh
Inventor
王传辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Goertek Techology Co Ltd
Original Assignee
Goertek Techology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Goertek Techology Co Ltd filed Critical Goertek Techology Co Ltd
Priority to CN201810437065.0A priority Critical patent/CN108648249B/zh
Publication of CN108648249A publication Critical patent/CN108648249A/zh
Application granted granted Critical
Publication of CN108648249B publication Critical patent/CN108648249B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture

Abstract

本发明公开了一种图像渲染方法,包括调用图形加速引擎,从待显示的层叠元素内选择相应个层叠元素分别添加至各个图层内;启动图形加速引擎进行图像渲染操作,得到本次操作的渲染输出;判断是否存在待显示的层叠元素,若存在,再次调用图形加速引擎,将上次操作的渲染输出添加至一个图层内,从剩余的待显示的层叠元素内选择若干个层叠元素分别添加至剩余图层内,启动图形加速引擎进行图像渲染;若不存在待显示的层叠元素,将当前渲染输出作为渲染完成的图像。本发明简化了程序设计,能够直接利用功能有限的图形加速引擎完成各种复杂的图像渲染场景,扩大了应用范围;本发明还公开一种基于上述方法的装置及智能穿戴设备。

Description

一种图像渲染方法、装置及智能穿戴设备
技术领域
[0001] 本发明涉及图像处理技术领域,特别是涉及一种图像渲染方法。本发明还涉及一 种基于上述方法的图像渲染装置及智能穿戴设备。
背景技术
[0002] 近年来随着嵌入式设备(智能手环、智能手表等)功能的不断增加,设备要显示的 内容也越来越复杂,而嵌入式M⑶的处理能力又普遍不强。所以,为了满足日益提高的对显 示功能的要求,同时降低MCU的负荷以降低功耗,延长设备的续航时间,很多MCU都集成了图 形加速引擎用来渲染要显示的内容,而图像渲染的过程即是将多个层叠元素添加至图形加 速引擎的图层内后,对多个图层进行混合运算的过程的过程。
[0003] 然而,受限于嵌入式设备的体积、成本和功耗等条件,这种图形加速引擎所能提供 的功能还是比较局限的,比如:提供的图层数比较少;每个图层只能提供单一功能一一渲染 单一形状(如:矩形、圆形等)、各个图层存放的层叠元素仅能为固定图像格式(如:RGB格式、 YUV格式等)或者固定格式字体(如:4位颜色深度、8位颜色深度等)等。这种功能有限的图形 加速引擎对于很多比较复杂(即层叠元素很多)的情况就会无能为力或者需要MCU做很多处 理工作。
[0004] 为了实现这些复杂的场景,现在普遍的做法是通过软件的方式,预先编写程序将 同类型或者位置重叠的元素解析成一个内存缓存模块,然后将此内存缓冲模块整体作为一 个显示图元放到一个图层中,程序设计较为复杂,且在同类型或位置重叠的元素较少的情 况下,无法直接使用功能有限的图形加速引擎来完成图像渲染的功能,受限程度大。
[0005] 因此,如何提供一种能够简化程序设计减小应用受限程度的图像渲染方法、装置 及智能穿戴设备是本领域技术人员目前需要解决的问题。
发明内容
[0006] 本发明的目的是提供一种图像渲染方法,能够在不额外设计程序进行层叠元素的 解析组合的基础上,利用目前嵌入式系统中功能有限的图形加速引擎直接实现大量层叠元 素的图像渲染操作,扩大了图形加速引擎的应用范围;本发明的另一目的是提供一种基于 上述方法的图像渲染装置及智能穿戴设备。
[0007] 为解决上述技术问题,本发明提供了一种图像渲染方法,包括:
[0008] 步骤si:首次调用图形加速引擎,从待显示的层叠元素内选择相应个层叠元素分 别添加至所述图形加速引擎的各个图层内,进入步骤s2;
[0009] 步骤s2:启动所述图形加速引擎对各个所述图层内的层叠元素进行图像渲染操 作,得到本次操作的渲染输出,进入步骤S3;
[0010] 步骤S3:判断是否存在待显示的层叠元素,若存在,进入步骤s4,若不存在,则将当 前操作的渲染输出作为渲染完成后的图像;
[0011] 步骤s4:再次调用所述图形加速引擎,将上次操作的渲染输出添加至所述图形加 速引擎的一个图层内,并从剩余的待显示的层叠元素内选择若干个层叠元素分别添加至所 述图形加速引擎的剩余图层内,进入步骤s2。
[0012] 优选地,步骤si之前还包括:
[0013] 将全部待显示的层叠元素进行排序;
[00M]相应的,所述步骤si和所述步骤s4内,均按照所述待显示的层叠元素的排序结果, 从剩余的待显示的层叠元素内依次顺序选择相应的层叠元素,将选择的所述层叠元素添加 至相应的图层内。
[0015] 优选地,所述步骤si和所述步骤s4内,将选择的所述层叠元素添加至相应的图层 内,之后还包括:
[0016] 依据所述待显示的层叠元素的顺序,对所述图形加速引擎内的各个图层进行顺序 编号;
[0017] 相应的,所述步骤s2的过程具体为:
[0018] 依据所述图层的编号,依次顺序选择两个未渲染过的图层,对其包含的层叠元素 进行图像渲染操作,得到本次渲染结果;
[0019] 继续所述图层的编号顺序选择下一个未渲染过的图层,将其包含的层叠元素与上 次的渲染结果进行图像渲染操作,得到本次渲染结果;重复本步骤操作,直至全部图层内的 层叠元素均渲染完毕。
[0020] 优选地,所述图像渲染操作具体为Alpha混合运算。
[0021] 优选地,步骤s4中,将上次操作的渲染输出添加至所述图形加速引擎的一个图层 内之前,还包括:
[0022] 将上次操作的渲染输出的图像格式,转换为所述图形加速引擎输入侧接收所述渲 染输出的图层所支持的图像格式。
[0023] 优选地,两个所述层叠元素进行Alpha混合运算,得到混合结果的过程具体为:
[0024] 通过混合关系式,将待混合的两个层叠元素内的各个待混合像素的每个通道分量 依次与Alpha值进行混合,得到各个所述待混合像素的混合结果;所述通道分量包括红色分 量值、蓝色分量值和绿色分量值;
[0025] 所述混合关系式具体为:
Figure CN108648249AD00051
[0026]
[0027]
[0028] OutputP:所述待混合像素的混合结果中的P通道分量的值;P为红色或蓝色或绿 色;
[0029] Outputa :所述待混合像素的混合结果中的Alpha通道值;
[0030] DstP:目的图层内所述待混合像素的P通道分量值;
[0031] Sr cP:源图层内所述待混合像素的P通道分量值;
[0032] Dsta:所述目的图层内所述待混合像素的Alpha值;
[0033] Srca:所述源图层内所述待混合像素的Alpha值。
[0034] 优选地,所述层叠元素包括字体或几何图形。
[0035] 优选地,所述图形加速引擎为2D图形加速引擎。
[0036] 为解决上述技术问题,本发明还提供了一种图像渲染装置,包括:
[0037] 第一图层添加模块,用于首次调用图形加速引擎,从待显示的层叠元素内选择相 应个层叠元素分别添加至所述图形加速引擎的各个图层内,触发引擎调用模块;
[0038] 所述引擎调用模块,用于启动所述图形加速引擎对各个所述图层内的层叠元素进 行图像渲染操作,得到本次操作的渲染输出;触发判断模块;
[0039] 所述判断模块,用于判断是否存在待显示的层叠元素,若存在,触发第二图层添加 模块,若不存在,则将当前操作的渲染输出作为渲染完成后的图像;
[0040] 所述第二图层添加模块,用于再次调用所述图形加速引擎,将上次操作的渲染输 出添加至所述图形加速引擎的一个图层内,并从剩余的待显示的层叠元素内选择若干个层 叠元素分别添加至所述图形加速引擎的剩余图层内,触发所述引擎调用模块。
[0041] 为解决上述技术问题,本发明还提供了一种智能穿戴设备,包括:
[0042] 存储器,用于存储计算机程序;
[0043] 处理器,用于执行所述计算机程序时实现如以上任一项所述的图像渲染方法的步 骤。
[0044] 本发明提供了一种图像渲染方法,分多次调用图形加速引擎,每次调用图形加速 引擎时,均将前一次调用图形加速引擎后的输出作为本次图形加速引擎运行时的输入添加 至一个图层内,并从剩余的待显示的层叠元素内选择相应个数的层叠元素添加至剩余图层 内,然后对各个图层的内容进行图像渲染操作,重复上述操作,直至全部待显示的层叠元素 均渲染完毕为止。可见,本发明采用将输出反馈至输入的方式,能够利用目前嵌入式系统中 功能有限的图形加速引擎直接实现大量层叠元素的图像渲染操作,从而完成各种复杂的图 像渲染场景,而不需要额外设计程序来进行层叠元素的解析组合,简化了图像渲染过程中 的程序设计,且减小了图形加速引擎在进行图像渲染应用时的受限程度,扩大了图形加速 引擎的应用范围。本发明还提供一种基于上述方法的图像渲染装置及智能穿戴设备,也具 有上述优点。
附图说明
[0045] 为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施 例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获 得其他的附图。
[0046] 图1为本发明提供的一种图像渲染方法的过程的流程图;
[0047] 图2为本发明提供的一种图像渲染方法的具体实施例的示意图;
[0048] 图3为本发明提供的一种图像渲染方法的另一种具体实施例的示意图;
[0049] 图4为本发明提供的一种图像渲染装置的结构示意图。
具体实施方式
[0050] 本发明的核心是提供一种图像渲染方法,能够在不额外设计程序进行层叠元素的 解析组合的基础上,利用目前嵌入式系统中功能有限的图形加速引擎直接实现大量层叠元 素的图像渲染操作,扩大了图形加速引擎的应用范围;本发明的另一核心是提供一种基于 上述方法的图像渲染装置及智能穿戴设备。
[0051] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0052] 本发明提供了一种图像渲染方法,参见图1所示,图1为本发明提供的一种图像渲 染方法的过程的流程图;该方法包括:
[0053] 步骤si:首次调用图形加速引擎,从待显示的层叠元素内选择相应个层叠元素分 别添加至图形加速引擎的各个图层内,进入步骤s2;
[0054] 其中,图形加速引擎内设置有多个图层,每个图层内可添加一个层叠元素;图层个 数以及各个图层内能够添加的层叠元素的类型与图形加速引擎的类型有关,有些图层可能 仅能够添加固定类型的层叠元素,而有些图层可能并不限定层叠元素的类型,因此,在选择 待显示的层叠元素添加至图形加速引擎的各个图层内时,不仅需要根据图层个数选择相应 个数的层叠元素,还要选择将合适类型的层叠元素添加至对应的图层内。当然,图层个数以 及每个图层能够添加的层叠元素的类型本发明并不做特别限定。
[0055] 步骤s2:启动图形加速引擎对各个图层内的层叠元素进行图像渲染操作,得到本 次操作的渲染输出,进入步骤s3;
[0056] 图形加速引擎启动后,会对自身各个图层内的层叠元素按照预设的图像渲染算法 进行运算,对多个层叠元素进行的运算完成后会输出一个层叠元素,作为本次操作的渲染 输出。
[0057] 步骤S3:判断是否存在待显示的层叠元素,若存在,进入步骤s4,若不存在,则将当 前操作的渲染输出作为渲染完成后的图像;
[0058] 需要注意的是,将部分待显示的层叠元素添加至图形加速引擎的图层内后,待显 示的层叠元素列表内则不再存在前述添加后的层叠元素,或者即使存在于层叠元素列表, 也已经标记为了已处理,用于与待显示的层叠元素进行区分。
[0059] 步骤s4:再次调用图形加速引擎,将上次操作的渲染输出添加至图形加速引擎的 一个图层内,并从剩余的待显示的层叠元素内选择若干个层叠元素分别添加至图形加速引 擎的剩余图层内,进入步骤s2。
[0060] 可以理解的是,由于每个图形加速引擎进行图像渲染操作后的输出为一个层叠元 素,因此该输出可以作为下次调用图形加速引擎时的输入,并将其添加至图形加速引擎输 入侧的一个图层内。
[0061] 另外,在从剩余的待显示的层叠元素内选择若干个层叠元素分别添加至图形加速 引擎的剩余图层内时,可能会出现剩余的待显示的层叠元素少于剩余图层的情况,此时将 全部剩余的待显示的层叠元素分别选择合适的图层添加进去即可。
[0062] 可以理解的是,本发明将图形加速引擎的输出结果作为其输入的一部分再次调用 该引擎进行运算,如有需要,多次循环调用该图形加速引擎。通过这种方法,理论上可以实 现无限个图层之间的图像渲染操作。如此,可以用功能有限的图形加速引擎来实现功能较 为强大的图形加速引擎的效果,例如,可以用仅支持较少图层(例如4层)的图形加速引擎来 实现支持较多图层(例如8层)的图形加速引擎的功能。本方案使图形加速引擎的功能得到 最大程度的发挥,特别是在处理复杂的显示效果时,不再需要编写将层叠元素根据类型和 位置进行解析组合的程序,由于这部分程序原本需要由MCU进行处理,故本申发明简化这部 分程序后,能够减少MCU的参与,大幅降低MCU的负荷,提高图像渲染装置的性能,降低功耗。
[0063] 作为优选地,步骤si之前还包括:
[0064] 将全部待显示的层叠元素进行排序;
[0065] 相应的,步骤si和步骤s4内,均按照待显示的层叠元素的排序结果,从剩余的待显 示的层叠元素内依次顺序选择相应的层叠元素,将选择的所述层叠元素添加至相应的图层 内。
[0066] 可以理解的是,由于在对层叠元素进行图像渲染的过程中,需要把各个图层按顺 序进行叠加,因此,各个层叠元素在图层内所处的顺序不同,最后输出的渲染结果也不同。 故本实施例中,预先将层叠元素进行排序,后续在将待显示的层叠元素添加至图层的过程 中,则按照排序顺序依次选择层叠元素;这种方式下,简化了各个图层选择层叠元素的过 程,避免了层叠元素排序过乱使得用户需要额外手动选择层叠元素的情况。
[0067] 需要注意的是,在进行层叠元素排序时,用户需要根据想要得到的渲染结果对层 叠元素依次进行排序,但是,由于有些图层会限制自身可添加的层叠元素的类型,因此,在 进行排序的过程中,也需要综合考虑层叠元素类型与图层特点,避免在后续选择层叠元素 时,将层叠元素添加至类型不匹配图层内的情况出现。
[0068] 当然,在另一种实施例中,也可不对待显示的层叠元素进行排序,而是预先设置筛 选规则,该筛选规则根据想要得到的渲染结果以及各个图层允许添加的层叠元素类型进行 设计,在步骤Sl和步骤s4内选择层叠元素时,依据该筛选规则从剩余待显示的层叠元素内, 选择合适的层叠元素添加至相应的图层内。
[0069] 进一步可知,步骤si和步骤s4内,将选择的层叠元素添加至相应的图层内,之后还 包括:
[0070] 依据待显示的层叠元素的顺序,对图形加速引擎内的各个图层进行顺序编号;
[0071] 相应的,步骤s2的过程具体为:
[0072] 依据图层的编号,依次顺序选择两个未渲染过的图层,对其包含的层叠元素进行 图像渲染操作,得到本次渲染结果;
[0073] 继续图层的编号顺序选择下一个未渲染过的图层,将其包含的层叠元素与上次的 渲染结果进行图像渲染操作,得到本次渲染结果;重复本步骤操作,直至全部图层内的层叠 元素均渲染完毕。
[0074] 例如,假如包含4个图层(0〜3),首先对图层0和图层1进行图像渲染操作,渲染结 果记为图层1、再将图层1/与图层2进行图像渲染操作,渲染结果记为图层2/,最后将图层 2/与图层3进行图像渲染操作得到最终的输出。
[0075] 可以理解的是,图形加速引擎包括多个图层,各个图层可能存在原始编号也可能 不存在,若存在原始编号的话,各个层叠元素依据自身的叠加顺序添加至符合自身格式的 图层内后,图层原始的编号与自身包含的层叠元素的叠加顺序可能并不一致,例如,假设有 四个图层〇〜3,叠加顺序为1的层叠元素由于格式问题可能仅能添加至图层3,这样在后续 进行渲染的过程中,不能按照图层编号顺序依次进行渲染,而是首先需要依据层叠元素的 叠加顺序去查找相应的图层,然后再进行渲染操作,图像渲染速度慢。若图层不存在原始编 号的话,也会存在以上问题,需要渲染前进行图层查找和筛选。而本实施例中,在将层叠元 素依据顺序添加至合适的图层后,重新依据层叠元素的叠加顺序对各个图层进行了顺序编 号,使得图层的变化与其包含的层叠元素的叠加次序相同,例如,叠加顺序为1的层叠元素 位于图层O内,这样使得后续渲染时,可直接按照图层的编号顺序依次进行渲染操作,而不 再需要对图层进行查找或筛选,提高了图像渲染速度。
[0076] 另外,若图形加速引擎内包含的图层存在原始编号,且各个图层能够支持与自身 编号对应叠加顺序的层叠元素的话(例如图层能够支持各类层叠元素),则优先按照将层叠 元素添加至自身顺序对应的图层内。例如,参见图2所示,图2为本发明提供的一种图像渲染 方法的具体实施例的示意图,其中,包含多个层叠元素1、2、3、4、5、6、7,图形加速引擎包含4 个图层0〜3;这种情况下,由于层叠元素的叠加顺序已经等于自身所添加的图层编号,故不 再需要对各个图层进行重新编号。
[0077] 当然,以上仅为几种优选实施例,具体是否对各个图层进行重新编号,本发明不作 特别限定。
[0078] 在优选实施例中,图像渲染操作具体为Alpha混合运算。
[0079] Alpha混合应用于ARGB (Alpha,Red,Green,Blue)颜色格式,ARGB是一种色彩模式, 也就是RGB (RGB color model,三原色光模式)色彩模式附加上Alpha (透明度)通道,常见于 8位、16位、18位、32位位图的存储结构。
[0080] 所谓Alpha混合,其实就是按照Alpha值来混合源像素和目标像素,简单地说这是 一种实现半透明显示效果的技术;其中,Alpha值即为像素的透明度值,范围是0〜I C3Alpha 混合过程中,会将源像素和目标像素进行混合,混合过程中会对这两个像素的Alpha值以及 某一通道分量值(红色分量值、绿色分量值、蓝色分量值)进行一定的运算,得到输出像素在 该通道分量的数值。
[0081] 当然,本发明中的图像渲染操作还可以是其他类型的渲染操作,例如依据图像的 圆心和半径进行圆形渲染操作等,具体的图像渲染操作类型可根据实际需求而定,本发明 不作限定。
[0082] 进一步可知,两个层叠元素进行Alpha混合运算,得到混合结果的过程具体为:
[0083] 通过混合关系式,将待混合的两个层叠元素内的各个待混合像素的每个通道分量 依次与Alpha值进行混合,得到各个待混合像素的混合结果;通道分量包括红色分量值、蓝 色分量值和绿色分量值;
[0084] 混合关系式具体为:
Figure CN108648249AD00091
[0085]
[0086]
[0087] OutputP :待混合像素的混合结果中的P通道分量的值;P为红色或蓝色或绿色; [0088] Outputa:待混合像素的混合结果中的Alpha通道值;
[0089] DstP:目的图层内待混合像素的P通道分量值;
[0090] SrcP:源图层内待混合像素的P通道分量值;
[0091] Dsta:目的图层内待混合像素的Alpha值;
[0092] Srca:源图层内待混合像素的Alpha值。
[0093] 其中,由于在进行Alpha混合运算的过程中,待混合的两个图层的顺序是有要求 的,例如,将图层1叠加在图层〇上,和将图层〇叠加在图层1上,得到的混合结果是不同,因此 需要明确哪个图层处于上层(即作为源图层),哪个图层处于下层(即作为目的图层)。
[0094] 即在进行Alpha混合运算的过程中,需要分别进行三次混合来得到最终混合像素 的三个通道分量(红色分量、蓝色分量和绿色分量)。
[0095] 在一个优选实施例中,步骤s4中,将上次操作的渲染输出添加至图形加速引擎的 一个图层内之前,还包括:
[0096] 将上次操作的渲染输出的图像格式,转换为图形加速引擎输入侧接收所述渲染输 出的图层所支持的图像格式。
[0097] 参见图3所示,图3为本发明提供的一种图像渲染方法的另一种具体实施例的示意 图。
[0098] 可以理解的是,由于本发明将上次的渲染输出作为下一次渲染操作的输入,而图 形加速引擎输出端和输入端支持的元素格式可能相同也可能不同,因此,为了保证在输入 和输出支持格式不同的情况下,本发明也能够正常实现,因此需要对渲染输出进行格式调 整,使调整后的图像能够得到输入侧的支持。
[0099] 其中,具体的可以是通过Alpha通道或者其他颜色通道对图像进行格式调整,例如 RGB888、RGB565、BGR888等等格式的转换。这里进行格式转换的方式,与图形加速引擎输入 端和输出端支持的格式类型有关,本发明对此不作特别限定。
[0100] 比如,图形加速引擎的每一个图层都支持如下颜色格式及操作:RGB565,RGB888, BGR888,ARGB8888,PARGB8888,ARGB6666,ARGB8565,PARGB6666,PARGB8565,YUYV422和抗锯 齿字体,矩形填充。图形加速引擎支持的输出格式有:RGB565,RGB888,BGR888,ARGB8888 (输 入有PARGB格式时除外),PARGB8888。可见,图形加速引擎所有的输出格式都可以作为输入, 所以,此处不需要对输出数据做调整,只需要指定接收渲染输出的图层的格式与输出格式 相同即可。但是,如果图形加速引擎支持的输入格式中没有其支持的输出格式,就需要做相 应的处理。举例如下:若图形加速引擎仅支持ARGB格式的输入和RBG格式的输出,就需要在 输出的内存缓冲器中加入Alpha通道,将RBG格式转换成ARGB格式,转换的过程中可以自定 义每个像素的Alpha值,即每个像素的透明度,转换后即可作为输入。
[0101] 另外,需要注意的是,由于图形加速引擎的输入端接收渲染输出的仅为一个图层, 假设为图层〇,图层〇可能仅支持图形加速引擎输入端支持的数据格式中的部分格式,则此 时即使图形加速引擎输出端与输入端支持的数据格式相同,也需要指定输出的数据格式能 够得到图层0的支持。例如,图层0支持BGR888、ARGB8888和PARGB8888三种格式,输入端支持 RGB565、RGB888、BGR888、ARGB8888和PARGB8888五种格式,故需要指定输出端输出的数据格 式必须为图层0所支持的三种格式中的任一种。当然,若输出端不支持图层0所支持的数据 格式,则需要进行格式转换。
[0102] 具体的,本发明所述的层叠元素包括字体或几何图形。字体可以为灰度字体,如4 位颜色深度、8位颜色深度等;几何图形可以为矩形、圆形等;且层叠元素还可限制图像的格 式,例如可以为RGB三原色格式图像、YUV格式图像等。当然,层叠元素还可以为其他格式或 其他图案的图像,本发明对此不作限定。
[0103] 具体的,上述图形加速引擎为2D图形加速引擎。当然,还可以为其他类型的图像加 速引擎,本发明对此不作限定。
[0104] 本发明提供了一种图像渲染方法,分多次调用图形加速引擎,每次调用图形加速 引擎时,均将前一次调用图形加速引擎后的输出作为本次图形加速引擎运行时的输入添加 至一个图层内,并从剩余的待显示的层叠元素内选择相应个数的层叠元素添加至剩余图层 内,然后对各个图层的内容进行图像渲染操作,重复上述操作,直至全部待显示的层叠元素 均渲染完毕为止。可见,本发明采用将输出反馈至输入的方式,能够利用目前嵌入式系统中 功能有限的图形加速引擎直接实现大量层叠元素的图像渲染操作,从而完成各种复杂的图 像渲染场景,而不需要额外设计程度来进行层叠元素的解析组合,简化了图像渲染过程中 的程序设计,且减小了图形加速引擎在进行图像渲染应用时的受限程度。
[0105] 本发明还提供了一种图像渲染装置,参见图4所示,图4为本发明提供的一种图像 渲染装置的结构示意图。该系统包括:
[0106] 第一图层添加模块,用于首次调用图形加速引擎,从待显示的层叠元素内选择相 应个层叠元素分别添加至图形加速引擎的各个图层内,触发引擎调用模块;
[0107] 引擎调用模块,用于启动图形加速引擎对各个图层内的层叠元素进行图像渲染操 作,得到本次操作的渲染输出;触发判断模块;
[0108] 判断模块,用于判断是否存在待显示的层叠元素,若存在,触发第二图层添加模 块,若不存在,则将当前操作的渲染输出作为渲染完成后的图像;
[0109] 第二图层添加模块,用于再次调用图形加速引擎,将上次操作的渲染输出添加至 图形加速引擎的一个图层内,并从剩余的待显示的层叠元素内选择若干个层叠元素分别添 加至图形加速引擎的剩余图层内,触发引擎调用模块。
[0110] 本发明提供了一种图像渲染装置,分多次调用图形加速引擎,每次调用图形加速 引擎时,均将前一次调用图形加速引擎后的输出作为本次图形加速引擎运行时的输入添加 至一个图层内,并从剩余的待显示的层叠元素内选择相应个数的层叠元素添加至剩余图层 内,然后对各个图层的内容进行图像渲染操作,重复上述操作,直至全部待显示的层叠元素 均渲染完毕为止。可见,本发明采用将输出反馈至输入的方式,能够利用目前嵌入式系统中 功能有限的图形加速引擎直接实现大量层叠元素的图像渲染操作,从而完成各种复杂的图 像渲染场景,而不需要额外设计程度来进行层叠元素的解析组合,简化了图像渲染过程中 的程序设计,且减小了图形加速引擎在进行图像渲染应用时的受限程度。
[0111] 本发明还提供了一种智能穿戴设备,包括:
[0112] 存储器,用于存储计算机程序;
[0113] 处理器,用于执行计算机程序时实现如以上任一项的图像渲染方法的步骤。
[0114] 其中,这里的智能穿戴设备可以为智能手环或者手表等,当然,本发明不限定智能 穿戴设备的具体类型。
[0115] 本发明优选用于小型智能穿戴设备内的系统,由于小型智能穿戴设备的MCU处理 能力不够高,采用本发明能够降低MCU的负荷以降低功耗,延长智能穿戴设备的续航时间。 当然,其他类型的智能穿戴设备也可以应用本发明的方案,本发明对此不作限定。
[0116] 以上的几种具体实施方式仅是本发明的优选实施方式,以上几种具体实施例可以 任意组合,组合后得到的实施例也在本发明的保护范围之内。应当指出,对于本技术领域的 普通技术人员来说,相关专业技术人员在不脱离本发明精神和构思前提下推演出的其他改 进和变化,均应包含在本发明的保护范围之内。
[0117] 本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他 实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置 而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说 明即可。
[0118] 还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作 之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意 在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那 些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者 设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排 除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0119] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。 对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的 一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明 将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一 致的最宽的范围。

Claims (10)

1. 一种图像渲染方法,其特征在于,包括: 步骤Si:首次调用图形加速引擎,从待显示的层叠元素内选择相应个层叠元素分别添 加至所述图形加速引擎的各个图层内,进入步骤S2; 步骤s2:启动所述图形加速引擎对各个所述图层内的层叠元素进行图像渲染操作,得 到本次操作的渲染输出,进入步骤s3; 步骤s3:判断是否存在待显示的层叠元素,若存在,进入步骤s4,若不存在,则将当前操 作的渲染输出作为渲染完成后的图像; 步骤s4:再次调用所述图形加速引擎,将上次操作的渲染输出添加至所述图形加速引 擎的一个图层内,并从剩余的待显示的层叠元素内选择若干个层叠元素分别添加至所述图 形加速引擎的剩余图层内,进入步骤s2。
2. 根据权利要求1所述的方法,其特征在于,步骤s 1之前还包括: 将全部待显示的层叠元素进行排序; 相应的,所述步骤si和所述步骤s4内,均按照所述待显示的层叠元素的排序结果,从剩 余的待显示的层叠元素内依次顺序选择相应的层叠元素,将选择的所述层叠元素添加至相 应的图层内。
3. 根据权利要求2所述的方法,其特征在于,所述步骤si和所述步骤s4内,将选择的所 述层叠元素添加至相应的图层内,之后还包括: 依据所述待显示的层叠元素的顺序,对所述图形加速引擎内的各个图层进行顺序编 号; 相应的,所述步骤s2的过程具体为: 依据所述图层的编号,依次顺序选择两个未渲染过的图层,对其包含的层叠元素进行 图像渲染操作,得到本次渲染结果; 继续所述图层的编号顺序选择下一个未渲染过的图层,将其包含的层叠元素与上次的 渲染结果进行图像渲染操作,得到本次渲染结果;重复本步骤操作,直至全部图层内的层叠 元素均渲染完毕。
4. 根据权利要求1-3任一项所述的方法,其特征在于,所述图像渲染操作具体为Alpha 混合运算。
5. 根据权利要求4所述的方法,其特征在于,步骤s4中,将上次操作的渲染输出添加至 所述图形加速引擎的一个图层内之前,还包括: 将上次操作的渲染输出的图像格式,转换为所述图形加速引擎输入侧接收所述渲染输 出的图层所支持的图像格式。
6. 根据权利要求4所述的方法,其特征在于,两个所述层叠元素进行Alpha混合运算,得 到混合结果的过程具体为: 通过混合关系式,将待混合的两个层叠元素内的各个待混合像素的每个通道分量依次 与Alpha值进行混合,得到各个所述待混合像素的混合结果;所述通道分量包括红色分量 值、蓝色分量值和绿色分量值; 所述混合关系式具体为:
Figure CN108648249AC00021
Outputa = Dsta+Srca-Dsta · Srca OutputP:所述待混合像素的混合结果中的P通道分量的值;P为红色或蓝色或绿色; Outputa:所述待混合像素的混合结果中的Alpha通道值; DstP:目的图层内所述待混合像素的P通道分量值; Sr cP:源图层内所述待混合像素的P通道分量值; Dsta:所述目的图层内所述待混合像素的Alpha值; Srca:所述源图层内所述待混合像素的Alpha值。
7. 根据权利要求1-3任一项所述的方法,其特征在于,所述层叠元素包括字体或几何图 形。
8. 根据权利要求1-3任一项所述的方法,其特征在于,所述图形加速引擎为2D图形加速 引擎。
9. 一种图像渲染装置,其特征在于,包括: 第一图层添加模块,用于首次调用图形加速引擎,从待显示的层叠元素内选择相应个 层叠元素分别添加至所述图形加速引擎的各个图层内,触发引擎调用模块; 所述引擎调用模块,用于启动所述图形加速引擎对各个所述图层内的层叠元素进行图 像渲染操作,得到本次操作的渲染输出;触发判断模块; 所述判断模块,用于判断是否存在待显示的层叠元素,若存在,触发第二图层添加模 块,若不存在,则将当前操作的渲染输出作为渲染完成后的图像; 所述第二图层添加模块,用于再次调用所述图形加速引擎,将上次操作的渲染输出添 加至所述图形加速引擎的一个图层内,并从剩余的待显示的层叠元素内选择若干个层叠元 素分别添加至所述图形加速引擎的剩余图层内,触发所述引擎调用模块。
10. —种智能穿戴设备,其特征在于,包括: 存储器,用于存储计算机程序; 处理器,用于执行所述计算机程序时实现如权利要求1至8任一项所述的图像渲染方法 的步骤。
CN201810437065.0A 2018-05-09 2018-05-09 一种图像渲染方法、装置及智能穿戴设备 Active CN108648249B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810437065.0A CN108648249B (zh) 2018-05-09 2018-05-09 一种图像渲染方法、装置及智能穿戴设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810437065.0A CN108648249B (zh) 2018-05-09 2018-05-09 一种图像渲染方法、装置及智能穿戴设备

Publications (2)

Publication Number Publication Date
CN108648249A true CN108648249A (zh) 2018-10-12
CN108648249B CN108648249B (zh) 2022-03-29

Family

ID=63753821

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810437065.0A Active CN108648249B (zh) 2018-05-09 2018-05-09 一种图像渲染方法、装置及智能穿戴设备

Country Status (1)

Country Link
CN (1) CN108648249B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377257A (zh) * 2019-07-17 2019-10-25 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质
CN111462292A (zh) * 2020-03-20 2020-07-28 稿定(厦门)科技有限公司 图层化渲染方法、介质、设备及装置
CN111526425A (zh) * 2020-04-26 2020-08-11 北京字节跳动网络技术有限公司 视频播放方法、装置、可读介质及电子设备
CN112346811A (zh) * 2021-01-08 2021-02-09 北京小米移动软件有限公司 渲染方法及装置
CN112783584A (zh) * 2019-11-07 2021-05-11 合肥杰发科技有限公司 终端系统的图层显示方法、装置及车机设备、存储装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050110804A1 (en) * 2003-11-20 2005-05-26 Honeywell International Inc. Background rendering of images
US20050212806A1 (en) * 2002-05-10 2005-09-29 Metod Koselj Graphics engine converting individual commands to spatial image information, and electrical device and memory incorporating the graphics engine
CN101295408A (zh) * 2007-04-27 2008-10-29 新奥特硅谷视频技术有限责任公司 一种3d图文渲染方法和渲染系统
CN102637303A (zh) * 2012-04-26 2012-08-15 珠海医凯电子科技有限公司 基于gpu的超声三维混合叠加体渲染处理方法
CN103049924A (zh) * 2012-12-11 2013-04-17 广东威创视讯科技股份有限公司 多图层分布式渲染方法及系统
CN104077792A (zh) * 2014-07-04 2014-10-01 厦门美图网科技有限公司 一种漫画效果的图像处理方法
CN104508711A (zh) * 2013-03-14 2015-04-08 梦工厂动画公司 用于渲染计算机生成动画的资源分区
CN104731544A (zh) * 2015-03-27 2015-06-24 华为技术有限公司 叠加系统和叠加方法
CN106897976A (zh) * 2015-12-23 2017-06-27 中国人民解放军海军航空工程学院 基于gpu的单显卡三通道立体视景投影软件校正融合方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050212806A1 (en) * 2002-05-10 2005-09-29 Metod Koselj Graphics engine converting individual commands to spatial image information, and electrical device and memory incorporating the graphics engine
US20050110804A1 (en) * 2003-11-20 2005-05-26 Honeywell International Inc. Background rendering of images
CN101295408A (zh) * 2007-04-27 2008-10-29 新奥特硅谷视频技术有限责任公司 一种3d图文渲染方法和渲染系统
CN102637303A (zh) * 2012-04-26 2012-08-15 珠海医凯电子科技有限公司 基于gpu的超声三维混合叠加体渲染处理方法
CN103049924A (zh) * 2012-12-11 2013-04-17 广东威创视讯科技股份有限公司 多图层分布式渲染方法及系统
CN104508711A (zh) * 2013-03-14 2015-04-08 梦工厂动画公司 用于渲染计算机生成动画的资源分区
CN104077792A (zh) * 2014-07-04 2014-10-01 厦门美图网科技有限公司 一种漫画效果的图像处理方法
CN104731544A (zh) * 2015-03-27 2015-06-24 华为技术有限公司 叠加系统和叠加方法
CN106897976A (zh) * 2015-12-23 2017-06-27 中国人民解放军海军航空工程学院 基于gpu的单显卡三通道立体视景投影软件校正融合方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张浩然: ""基于FPGA的视频采集及图像处理算法实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377257A (zh) * 2019-07-17 2019-10-25 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质
CN110377257B (zh) * 2019-07-17 2022-04-19 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质
CN112783584A (zh) * 2019-11-07 2021-05-11 合肥杰发科技有限公司 终端系统的图层显示方法、装置及车机设备、存储装置
CN111462292A (zh) * 2020-03-20 2020-07-28 稿定(厦门)科技有限公司 图层化渲染方法、介质、设备及装置
CN111526425A (zh) * 2020-04-26 2020-08-11 北京字节跳动网络技术有限公司 视频播放方法、装置、可读介质及电子设备
CN111526425B (zh) * 2020-04-26 2022-08-09 北京字节跳动网络技术有限公司 视频播放方法、装置、可读介质及电子设备
CN112346811A (zh) * 2021-01-08 2021-02-09 北京小米移动软件有限公司 渲染方法及装置

Also Published As

Publication number Publication date
CN108648249B (zh) 2022-03-29

Similar Documents

Publication Publication Date Title
CN108648249A (zh) 一种图像渲染方法、装置及智能穿戴设备
CN101065784B (zh) 计算机图形处理
EP2174509B1 (en) A multi-primary conversion
US5889499A (en) System and method for the mixing of graphics and video signals
US4694286A (en) Apparatus and method for modifying displayed color images
US6181353B1 (en) On-screen display device using horizontal scan line memories
CN104811677B (zh) 移动终端的显示控制方法及装置
JPH05210719A (ja) 画像処理システム用画像編集装置
US5521615A (en) Display system for instruments
JPH09149334A (ja) ビデオ拡大装置
CN104182175B (zh) 触摸屏终端界面显示方法及装置
CN106054655A (zh) 一种智能家居联动控制方法和装置
CN106303724B (zh) 智能电视自动添加动态表情的方法和装置
CN105975168A (zh) 一种osd菜单淡入/淡出方法及装置
CN105430393A (zh) 一种图片处理方法、图片处理装置以及图片处理平台
US10074193B2 (en) Controlled dynamic detailing of images using limited storage
CN106547530A (zh) 一种界面处理方法及装置
CN104144332A (zh) 图像色彩调整方法与其电子装置
WO2003038801A1 (en) Method and device providing enhanced characters
CN101193231B (zh) Osd控制模块及其osd菜单颜色设置方法
CN110473490A (zh) 驱动方法、驱动装置、显示装置和计算机可读存储介质
EP1308923A1 (en) Method and device providing enhanced characters
JP3080087B2 (ja) 画像処理方法及びその装置
CN106569757A (zh) 一种更改图形界面文本颜色的方法和装置
CN2494089Y (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