CN101790749B - 多点采样绘制二维矢量图像 - Google Patents
多点采样绘制二维矢量图像 Download PDFInfo
- Publication number
- CN101790749B CN101790749B CN2008801016940A CN200880101694A CN101790749B CN 101790749 B CN101790749 B CN 101790749B CN 2008801016940 A CN2008801016940 A CN 2008801016940A CN 200880101694 A CN200880101694 A CN 200880101694A CN 101790749 B CN101790749 B CN 101790749B
- Authority
- CN
- China
- Prior art keywords
- pixel
- classification
- buffer zone
- pixel color
- class
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
一种改进的图像绘制方法和装置,以降低对图形处理器的存储器带宽要求。该方法和装置在绘制过程中使用具有有限位长的分类缓存区对像素进行分类,并且部分像素的颜色可基于此分类决定而无需访问多采样缓存区,从而降低存储器带宽要求。
Description
技术领域
本发明涉及矢量图形,尤其涉及一种有效绘制二维矢量图像的方法和装置。
背景技术
近来的手持设备已具有多媒体功能。自第一代具有多媒体功能的手持设备问世以来,手持设备的功能已经大大提高。当前的手持设备,例如手机或其它掌上多媒体电脑等,已具有优良的彩色图形呈现、照相、音乐播放和快速通讯功能。为提升用户体验,新的特征仍在陆续加入,并且已有的特征还在不断地改进。
通常使用抗锯齿(anti-aliasing)技术来改进图形功能。用于二维矢量图形的抗锯齿技术基本分为两类:边缘抗锯齿(edge anti-aliasing)技术和全景抗锯齿(full-scene anti-aliasing)技术。
边缘抗锯齿技术是在光栅化(rasterization)期间在多边形的边缘执行,将多边形覆盖面(polygon coverage)转为透明,并使用该透明值将多边形涂色混合至目标画布上。边缘抗锯齿技术是OpenVG1.0应用程序接口假定的绘制模型,尽管其说明中并没有明确指出。
全景抗锯齿技术针对每个像素存储多个样本,并且一旦完成图像即通过一个独立的步骤解析最终的像素颜色。全景抗锯齿技术是绘制三维图形常用的抗锯齿方法。Adobe Flash还将该全景抗锯齿技术用于二维矢量图形绘制。
边缘抗锯齿技术存在的问题是该技术在例如相邻多边形的边缘产生绘制赝样(artifacts)。例如,使用边缘抗锯齿技术无法正常绘制AdobeFlash内容。另一方面,全景抗锯齿技术通常需要大量存储器并使用过量带宽。
理想的抗锯齿技术要求计算一个像素内所有相关几何的覆盖面,并从该信息解析最终的像素颜色。实践中,针对此问题的一种分析解法要求在像素级剪切多边形片断。但是,因为这些算法对性能有不利影响而不实用,因此,二维绘制应用程序接口通常逐一绘制多边形,并接受最终的赝样,以期在性能与品质之间达成平衡。
为避免这些赝样,一些结构使用例如复合形状等迂回技术。复合形状是多边形边缘的集合,定义一组相邻的多边形。随后,复合形状光栅使用相对简单的软件工具针对各像素评估所有多边形的总覆盖面和颜色。但是,由于复合形状的局限,此方法的应用并不广泛,而且为获得理想的结果,该方法在重迭消除的地方需要特别准备的数据。
避免这些赝样的一种相对简单的方法是使用超级采样(super-sampling)技术或多点采样(multi-sampling)技术,其在混合操作和透明度方面具有传统绘制模型的优点,亦即,数据以从后到前的顺序处理,但该技术经常会有存储器和带宽消耗的问题。
最基本的超级采样技术使用较高分辨率的绘制缓冲区,并在解析阶段将其缩减,将像素区内的所有样本的像素值进行平均。另一方面,多点采样技术是一种较为先进的技术。在多点采样技术中,分配给一个像素的数据由单个颜色值和遮罩组成,该遮罩标示该颜色要分配给像素内的哪些样本。
因此,需要提供一种改进的图像绘制机制,以更符合成本效益并具有适当的抗锯齿能力。
发明内容
本发明揭露一种改进的图像绘制方法和装置,以降低对图形处理器的存储器带宽要求。该方法和装置在绘制过程中对像素进行分类,并且部分像素的颜色可基于此分类决定而无需访问多采样缓存区,从而降低存储器带宽要求。
依据本发明一实施例,绘制矢量图形图像的方法包括:清除分类缓冲区,通过多采样缓冲区和分类缓冲区绘制多边形,解析像素值并在目标图像缓冲区中生成图像。图像分类基于各像素的覆盖值。该像素分类通常包括四种不同类别,可由两位(bit)表示。所述类别通常包括:背景类、未展开类、压缩类和展开类。该压缩类中,使用无损压缩方法压缩像素的覆盖遮罩。
依据本发明一实施例,通过将该分类缓冲区中的所有像素设定为背景类来执行该分类缓冲区的清除操作。由于这种方法无需在清除阶段写入像素颜色,因而有利于加快图像清除。通过所述分类缓冲区和多采样缓冲区来解析像素值。本发明还可在绘制的任一阶段执行中间解析。
依据另一实施例,可以拼块方式执行该矢量图形图像的绘制。本实施例可缩少所述多采样缓冲区。
一实施例中,本发明可在图形处理器中实现,其中该图形处理器包括分类缓冲区、多采样缓冲区和目标图像缓冲区。该处理器还包括处理装置,该处理装置能够执行表示矢量图像的输入命令。本发明的另一实施例中,该图形处理器还可包含另外的存储器。此外,除本发明外,该图形处理器可包括多个图形生成单元,用以执行生成高质量图形所需的功能。
本发明为低存储器带宽的设备提供了一种有效的矢量图形绘制方法。与现有***相比,本发明提高了图形生成质量并降低了计算功率成本,因而适合且有益于应用于使用计算机图形的任何设备,例如手机、掌上电脑以及普通电脑等。
附图说明
附图构成说明书的一部分,用以辅助理解本发明,描述本发明实施例并与说明书一起解释本发明的原理。
图1是依据本发明实施例的方框图。
图2是依据本发明实施例的方法流程图。
图3是依据本发明实施例的方法流程图。
图4是依据本发明实施例的方法流程图。
图5a是依据本发明实施例的方法流程图。
图5b是依据本发明实施例的方法流程图。
图5c是依据本发明实施例的方法流程图。
具体实施方式
下列结合附图详细描述本发明的实施例。
图1是依据本发明实施例的方框图。由于将本发明设计成在图形处理器中实现,因此本发明实施例涉及图形处理器的环境。不过,本领域的技术人员应了解:除了图形处理器外,本发明的某些部分还可通过软件组件实现或在其他硬件组件中实现。图1揭示一例示方框10。该方框10包括处理器14、分类缓冲区11、目标图像缓冲区12和多采样缓冲区13。处理器14通常可分担包括于方框10中的图形处理单元的其他功能。在包括方框10的该图形处理单元中实现的存储器可预留部分用于缓冲区11至13。从而使该存储器可分担该图形处理单元的其他功能。不过,由于分配给缓冲区11至13的部分通常为专用,因此可单独保留该存储器用于这里所述的相关功能。图1还揭示另一存储器15,其预留作其他需要,并用于运行处理器14中的应用程序。该存储器可位于方框10内,也可位于方框10外但位于该图形处理器内,该存储器还可以是外部存储器。本领域的技术人员应了解,可根据这里所揭示的要求选择输入数据和输出数据的格式。
需要注意的是,为更好地理解本发明,实施例中的像素进一步划分为子像素,以在多边形边缘仅部分覆盖像素的情况下计算该像素的覆盖值。例如,一个像素可划分为一组16*16的子像素。接着,从该组子像素中选择代表性样本(例如,16个样本)。样本是被选出能够很好地代表该像素的覆盖。例如,可从像素组中随机选择16个样本,各样本分别具有唯一的X值和Y值。虽然这里以16个样本和16*16的子像素为例说明,但是本发明并不限于此。本领域的技术人员应了解还可选择不同的样本数和子像素组,例如选择8个样本或32个样本。通常情况下,16个样本和16*16的子像素组配合使用,32个样本和32*32的子像素组配合使用,以此类推。不过并不是一定要这样,例如也可以将32个样本和16*16的子像素组配合使用。
本发明实施例包括分类缓冲区11,其存储两位(bit)分类值或代码。分类缓冲区11的维数对应目标图像缓冲区12的大小,以使目标图像缓冲区12的每个像素在分类缓冲区11中都具有对应的分类位。此外,多采样图像缓冲区13用于存储压缩的像素数据和展开的像素数据。对于16个样本,多采样图像缓冲区13的大小应为目标图像缓冲区12的16倍。应当注意的是,如果操作环境支持动态存储器分配,则可减少多采样缓冲区13所需的存储器。在静态实现例如硬件实现中,应当根据未压缩情况下最坏的情形来向多采样缓冲区13分配存储器。
下面详细描述本实施例的压缩方法。本实施例的压缩方法依赖于图像的像素可分为三种不同类型:具有背景色的不受影响的像素;完全位于所绘制多边形内部的像素;以及位于多边形边缘的像素。在多边形边缘的大多数像素仅包括下述两种颜色中的一种:不受影响的像素的背景色;以及完全位于多边形内部的像素的多边形涂色。因此,可将这些像素表达为一个16位的遮罩和两个颜色值。
该压缩方法利用上述概念将所述像素分成四类:
●背景像素-不存储颜色值。
●未展开像素-颜色值存储在目标图像缓冲区中。
●压缩像素-颜色值以压缩数据形式存储在临时的多采样缓冲区中。
●展开像素-颜色值以单个样本形式存储在临时的多采样缓冲区中。
在分类缓冲区中针对上述四类像素分别分配一个对应的两位值。值得注意的是:本实施例的压缩为无损压缩,仅仅基于像素的覆盖遮罩(coverage mask),并且不分析颜色值,以使该压缩方法的实现更为有效。不过,本发明也可使用其他有损或无损的压缩方法。
图2揭示依据本发明实施例的绘制方法流程图。该绘制过程由三个阶段组成:清除20、多边形处理21和解析27。这三个步骤彼此独立,并在本实施例中按上述顺序重复进行,从而生成最终画面。多边形处理步骤进一步包括步骤22至26。通常会在进入解析步骤27前处理所有的多边形。上述步骤还可以其他顺序执行,如后面所述。不过,由于解析步骤仅仅影响目标图像缓冲区中未使用的像素,因此也可在绘制期间执行中间解析步骤以提供任意给定点的图像。本领域的技术人员应了解:本发明可并行处理上述步骤以同时计算多个画面。不过,为更好地理解本发明,下面描述单个画面的顺序处理步骤。
首先,在步骤20发出清除操作,其仅包括在所述分类缓冲区中将所有的像素标记为背景像素并存储该背景颜色值。在所述目标图像缓冲区或多采样缓冲区中不修改像素颜色。清除所述分类缓冲区有利于加速图像的清除,这通常比在清除阶段写入像素颜色要快。不过,本发明于另一实施例中也可不具有背景分类而是通过在图像上写入颜色常量值实现清除操作,于该实施例中将像素归入未展开类,并将颜色值写入所述目标图像缓冲区。
接着在步骤21中处理多边形,每次处理一个。每个多边形具有一个涂色,该涂色在整个多边形中通常保持不变,但也可随各像素发生变化,特别是在使用梯度(gradient)或纹理(texture)的情况下。该涂色还可具有定义为alpha值的透明属性。多边形可混合绘制,但出于简化目的,我们首先解释不透明涂色和不混合的情形。
在步骤22中,针对多边形的每个像素生成一个16位的覆盖遮罩。该覆盖遮罩包含位于所述多边形内、在该像素内的样本,其取决于多边形的形状和用于确定“内部”的填充规则,这可通过扫描线顺序或使用拼接光栅(tiling rasterizer)确定,例如,使用64*64像素块实现的光栅。本发明可根据应用选择覆盖遮罩的大小。例如,如果希望每个像素有8个样本,则只需8位(eight bits)的覆盖遮罩。
步骤23中,如果像素的覆盖遮罩为全覆盖,亦即,设定了全部16位,则在步骤24中直接在所述目标图像缓冲区中绘制该像素,并在分类缓冲区中将该像素的值设为“未展开”。由于所述新的不透明颜色值会丢弃已储存的该像素的所有任意值,因此此操作还可将多采样像素转换成未展开格式。
但是,如果覆盖为部分,则需在步骤26的绘制之前,在步骤25考虑该目标像素的类别。在所述多采样缓冲区中针对背景像素和未展开像素生成压缩条目,其中,该遮罩是所生成的覆盖遮罩,该第一颜色条目设为背景色或目标图像缓冲区中的颜色,第二条目设为当前涂色。此外,该像素的分类值设为“压缩”。
对于压缩像素,该像素可保持压缩,这种情况下将其中一个颜色条目更改为当前涂色,并可更新所述遮罩。可检测新的覆盖遮罩是否完全覆盖已存储的覆盖遮罩的任一部分,如果没有,亦即,应用新的遮罩时两种已储存的颜色保持可见,则将数据展开至完全的16个样本,并且将像素的分类值设为“展开”。如果所储存的像素已经是展开形式,则仅将该像素值存储在多采样缓冲区中适当的样本位置。
对于取决于涂色的alpha成分和所使用的混合模式的混合值,必须考虑所述目标像素。如果混合像素为全覆盖,则仅混合所述目标图像缓冲区内的所有相关颜色值。如果是部分覆盖,则需使用目标像素的适当部分执行混合,其取决于像素分类。通常情况下,当在同一位置光栅化多边形时,可将像素类别转换为另一类别。表1列出了各种转换。
背景 | 未展开 | 压缩 | 展开 | |
全覆盖不透明 | 未展开具有涂色 | 未展开具有涂色 | 未展开具有涂色 | 未展开具有涂色 |
部分覆盖不透明 | 压缩,具有背景色和涂色 | 压缩,具有先前的未展开颜色和涂色 | 压缩或展开。如果覆盖遮罩全覆盖所存储遮罩的任一半,该涂色将取代已储存的相关颜色;否则转换为展开。 | 展开,基于覆盖遮罩,涂色取代多采样缓冲区中的样本。 |
全覆盖混合 | 未展开,混合涂色和背景色 | 未展开,混合涂色和先前的未展开颜色 | 压缩,混合涂色和已存储的两颜色 | 展开,混合涂色和所有样本颜色 |
部分覆盖混合 | 压缩,具有背景色和混合背景色以及涂色的颜色 | 压缩,具有先前的未展开颜色以及由先前的未展开颜色和涂色混合而成的颜色 | 压缩或展开。如果覆盖遮罩精确匹配所存储的遮罩或相反,该涂色则与已存储的相关颜色混合;否则转换为展开,并混合涂色和适当样本。 | 展开,基于覆盖遮罩混合涂色和多采样缓冲区中的样本 |
表1分类转换表
图像生成的最后一步是步骤27的解析步骤。该步骤包括从分类缓冲区读取分类值,并依据该分类值在目标图像缓冲区中写入适当的颜色。对于背景类,将背景色写入目标图像缓冲区。对于未展开类,由于目标色已存在,因此忽略此类。对于压缩类,将覆盖遮罩转换为覆盖百分比,将已存储的两种颜色混合,并写入目标图像缓冲区。对于展开类,计算所有已存储的样本值的平均值并写入目标图像缓冲区。通过此步骤,在目标图像缓冲区中完成了该图像。
上述方法是假定了单个多采样缓冲区。对于大屏幕分辨率,该缓冲区会占用几十兆字节的存储器。因此,手持设备需要替代的方法。
通常情况下,图像中仅有一小部分像素需要完全展开多采样缓冲区。但是在最坏的情况下,该图像中的每个像素都需要展开。由于图像绘制后才能知晓利用率,因此需要在光栅化期间执行动态存储器分配,以分配绘制所需的适当数量存储器。在硬件实现中则无法实现这种方式。
在本发明一实施例中,以期望的顺序,例如从左到右或从上到下的顺序,在64X64的拼块中进行光栅化。这些拼块并非真正的屏幕拼块,而是用于光栅化的临时拼块。这是一个相当有效的机制,其允许在不变的存储器空间中进行光栅化而未对多边形边缘使用列表结构。但是,对于大于64X64像素的多边形,该机制要求多次处理,针对每个光栅化拼块执行一次处理。
由于此机制已将多边形划分为拼块,拼接也可延伸至包括多点采样过程。其不是按拼块顺序每次绘制一个多边形,而是通过使用与拼块大小匹配的多采样缓冲区绘制落入单个拼块中的所有多边形,并在目标图像缓冲区中解析该拼块的最终输出。由于同一输入数据需要多次处理,该方法需要全面撷取整体输入数据。由于路径数据已在输入中存储为独立缓冲区,实践中这意味着只记录命令流,因而相对不重要(以存储器消耗的观点来看)。
由于需要解析所有多边形的拼块,因此该拼接没有附加的处理。
而且,在光栅化拼块大小和所述多采样缓冲区大小之间没有明显的依赖关系;所述多采样缓冲区应当每次足以容纳至少一个光栅化拼块。更大容量的多采样缓冲区可提供更好的性能,例如将目标图像缓冲区的宽度用作拼块宽度。这样无需对每个拼块都进行边缘界定操作,相反,光栅化过程能够利用拼接光栅的打字机扫描顺序以及于向右行进时获得左边拼块的信息。数据大小甚至可以更大,例如,640X64的多采样缓冲区消耗2.5兆字节的存储器。由于存储器量取决于光栅化拼块的高度和目标图像缓冲区的宽度,因此改变光栅化拼块的长宽比,例如32X128,可以大大降低多采样缓冲区的大小。通常情况下,多采样缓冲区所消耗的存储器为目标位图所消耗存储器的1至2倍比较可行。光栅化拼块尺寸32X128与VGA屏幕(640X480)使得大小为640X32的缓冲区仅比屏幕本身多消耗几个百分点。
如果以这种方法减少多采样缓冲区的大小,分类缓冲区会更小。为进一步节约带宽并减少延迟,可将该缓冲区存储在片上存储器(on-chip memory)中。
为加快所述分类缓冲区的清除,可在其顶上建立另一层次结构,针对一组像素(例如32个像素)存储一位,以标示该组中所有的像素都是背景类,从而减少所述分类缓冲区的访问量,并降低初始清除操作的规模。
图3揭示依据另一本发明实施例的流程图。本实施例中从步骤30开始处理一组要绘制的多边形。首先,在步骤31中执行清除步骤。其仅包括在所述分类缓冲区中将所有的像素标记为背景像素并存储背景颜色值。在所述目标图像缓冲区或多采样缓冲区中不修改像素颜色。接着,在步骤32中逐个处理多边形。如果有剩余的多边形,则在步骤33中检索要处理的下一个多边形的数据。多边形数据包括:例如,形状、涂色和混合。接着,在步骤34中处理多边形的每个像素。如果还有像素,则在步骤35种生成片元(fragment),即像素的覆盖遮罩。接着在步骤36处理该片元,如图5所示。如果已处理完所有的像素,则循环(loop)返回至步骤32。如果已处理完所有的多边形,则进入步骤37的解析步骤,如图4所示。解析步骤完成后,即完成该图像,开始处理下一个图像。
图4揭示依据本发明实施例的解析过程流程图。在步骤40中,依据本发明的解析过程按像素逐个进行。不过,本领域的技术人员应当了解,可在能够一次处理多个像素的装置中实现本发明的功能,那样的话,就可以一次处理四个或八个像素,之后进入下一组像素。在步骤41中确定是否剩余像素。如果有剩余像素要解析,则在步骤42中检索该像素分类信息,然后在步骤43中检测该像素如何分类。如果该像素为背景类,则在步骤44中在所述目标图像缓冲区中写入背景色。如果该像素为未展开类,则在步骤45中不做任何处理,因为数据已存在。如果该像素为压缩类,则在步骤46自所述多采样缓冲区提取遮罩以及两颜色,并在步骤47将该遮罩转换为alpha,并将其与颜色值混合。然后,在步骤48将结果写入所述目标图像缓冲区。如果将像素为展开类,则在步骤49中自所述多采样缓冲区提取全部16个颜色值,并在步骤410计算所有16个颜色值的平均值。接着,将最终颜色写入所述目标图像缓冲区。这样,该像素即处理完成,流程继续处理下一个像素。如果无剩余像素,则在步骤411解析该图像。
图5a-5c揭示依据本发明实施例处理片元的流程图。如图5a所示,首先在步骤50中检测当前像素中是否有混合或alpha,如果是,则在步骤51检测遮罩是否为全覆盖,如果是,则进入图5c所示的流程。如果遮罩不是全覆盖,则流程进入图5b所示的流程。下面详细描述上述附图。
如果当前像素没有混合或alpha,步骤52还检测该遮罩是否为全覆盖。如果该遮罩为全覆盖,则在步骤53中将该像素归入未展开类。接着,在步骤54将涂色存储在目标图像缓冲区中。步骤55即完成当前片元的处理。
如果步骤52中遮罩不是全覆盖,则在步骤56中将首先检索像素分类,接着在步骤57确定分类。如果该像素为背景类,则在步骤58中将该像素归为压缩类。然后,在步骤59中将所述遮罩、背景和涂色存储在多采样缓冲区中。如果该像素为未扩展类,则在步骤510中将该像素归为压缩类。然后,在步骤511将遮罩、目标图像缓冲区中的颜色和涂色存储在多采样缓冲区中。如果该像素为压缩类,则在步骤512将该像素归为展开类。接着,在步骤513展开多采样缓冲区中的压缩数据,重写遮罩标记的样本及涂色。如果该像素为展开类,则在步骤514中分类不变。接着,在步骤515中在多采样缓冲区中重写遮罩标记的样本及涂色。在步骤55中,该片元即处理完毕。
图5b揭露图5a中遮罩不是全覆盖的情况下,步骤51的后续步骤。步骤516中,首先检索像素分类,接着在步骤517确定分类。如果像素为背景类,则在步骤518中将像素归为压缩类。接着,在步骤519将该遮罩、背景色和混合涂色的背景存储在所述多采样缓冲区中。如果该像素为未展开类,则在步骤520将该像素归入压缩类。接着在步骤521将遮罩、目标图像缓冲区的颜色以及混合涂色的目标图像缓冲区颜色存储在多采样缓冲区中。如果该像素为压缩类,则在步骤522中将该像素归为展开类。然后,在步骤523中,展开多采样缓冲区中的压缩数据并混合涂色与遮罩中标记的样本。如果该像素为展开类,则在步骤524保持该像素类,且在步骤525保持混合多采样缓冲区中样本的涂色。步骤55中,该片元即处理完毕。
图5c揭示图5a中所述遮罩为全覆盖的情况下,步骤51的后续步骤。步骤526首先检索像素分类,接着在步骤527确定类别。如果该像素为背景类,则在步骤528将该像素归为未展开类,并在步骤529将混合背景的涂色存储在目标图像缓冲区中。如果该像素为未展开类,则步骤530不改变该类别,并在步骤531将涂色与目标图像缓冲区混合。如果该像素为压缩类,则在步骤532不改变该分类,并在步骤533将涂色与多采样缓冲区中的两个压缩颜色值混合。如果该像素为展开类,则在步骤534保持该分类不变,并在步骤535将该涂色与多采样缓冲区的所有样本混合。步骤55中,该片元即处理完毕。
本领域的技术人员应当了解,这里的实施例适用于任何适当的采用过程矢量图形的计算机设备和***,包括但不限于无线手持设备、笔记本电脑、台式电脑、打印机、服务器、机顶盒、数字电视等。上述方法和装置可在不背离本发明的精神和范围的情形下作各种变更。因此,上面揭示的内容仅为示例而非限制本发明。
对本领域的技术人员显而易见的是,随着技术的发展,可以不同方式实现本发明的基本思想。因此,本发明及其实施例并不限于上述示例,而是可在权利要求范围内作各种变更。
Claims (14)
1.一种绘制矢量图形图像的方法,包括:
基于与各个像素相关联的像素颜色类别和覆盖值解析像素颜色值,其中,该像素颜色类别包括至少背景类、未展开类、压缩类和展开类,其中,解析像素颜色值包括:
从分类缓冲区读取该像素颜色类别;以及
响应压缩类别,将覆盖遮罩转换为覆盖百分比,将已存储的至少两种压缩颜色混合,并将最终的颜色写入目标图像缓冲区;以及
使用所解析的该像素值在缓冲区生成图像。
2.如权利要求1所述的方法,还包括:
确定各个像素的像素类别和覆盖值。
3.如权利要求1所述的方法,其中,在该压缩类中,使用无损压缩方法压缩该像素的覆盖遮罩。
4.如权利要求1所述的方法,其中该方法还包括通过将包含该像素类别信息缓冲区的部分存储器中的所有像素设定为背景类,以清除该部分存储器。
5.如权利要求2所述的方法,其中,所述矢量图形图像以拼块绘制。
6.如权利要求2所述的方法,其中,所述绘制还包括绘制期间的中间解析。
7.如权利要求2所述的方法,其中该方法还包括转换该类别。
8.一种图形装置,包括:
存储器,用以至少存储分类缓存区、多采样缓冲区和一个目标图像缓冲区;以及
处理器,其中,
该处理器通过使用用于像素分类的该分类缓冲区和多采样缓冲区而在所述目标图像缓冲区中执行表示矢量图像的输入命令并生成图像,其中,基于各像素的覆盖值和像素颜色类别生成该图像;
其中,该处理器将像素分为包括至少背景类、未展开类、压缩类和展开类的类别;以及
其中,该处理器通过使用该像素颜色类别和多采样缓冲区来解析像素颜色值,其中,解析像素颜色值包括:
从该分类缓冲区读取该像素颜色类别;以及
响应压缩类别,将覆盖遮罩转换为覆盖百分比,将已存储的至少两种压缩颜色混合,并将最终的颜色写入目标图像缓冲区。
9.如权利要求8所述的装置,其中,该处理器进一步在所述压缩类中通过使用无损压缩方法压缩像素的覆盖遮罩。
10.如权利要求8所述的装置,其中,该处理器通过将所述分类缓存区中的所有像素设置为背景而清除该分类缓冲区。
11.如权利要求8所述的装置,其中,该处理器以拼块方式绘制矢量图形图像。
12.如权利要求8所述的装置,其中,该处理器在绘制期间执行中间解析。
13.如权利要求8所述的装置,其中,该处理器连接另外的存储器。
14.处理矢量图形的图形处理器,包括:
存储器,至少存储分类缓冲区、多采样缓冲区和目标图像缓冲区;以及
处理装置,其中,
该处理装置通过使用用于像素颜色分类的该像素颜色分类缓冲区和多采样缓冲区而在所述目标图像缓冲区中执行表示矢量图像的输入命令并生成图像,其中,基于各像素的覆盖值和像素颜色类别生成该图像,其中,基于该像素颜色类别该处理装置在多采样缓冲区中存储压缩像素颜色信息;以及
其中,该处理装置通过使用该像素颜色类别和多采样缓冲区来解析像素颜色值,其中,解析像素颜色值包括:
从该分类缓冲区读取该像素颜色类别;以及
响应压缩类别,将覆盖遮罩转换为覆盖百分比,将已存储的至少两种压缩颜色混合,并将最终的颜色写入目标图像缓冲区。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/832,773 | 2007-08-02 | ||
US11/832,773 US20090033671A1 (en) | 2007-08-02 | 2007-08-02 | Multi-sample rendering of 2d vector images |
PCT/FI2008/050443 WO2009016268A1 (en) | 2007-08-02 | 2008-07-23 | Multi-sample rendering of 2d vector images |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101790749A CN101790749A (zh) | 2010-07-28 |
CN101790749B true CN101790749B (zh) | 2013-01-02 |
Family
ID=40303918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008801016940A Expired - Fee Related CN101790749B (zh) | 2007-08-02 | 2008-07-23 | 多点采样绘制二维矢量图像 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20090033671A1 (zh) |
EP (1) | EP2186061A4 (zh) |
JP (1) | JP5282092B2 (zh) |
KR (1) | KR20100044874A (zh) |
CN (1) | CN101790749B (zh) |
WO (1) | WO2009016268A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101392166B1 (ko) * | 2006-12-18 | 2014-05-08 | 삼성전자주식회사 | 휴대용 디스플레이 장치의 이미지 편집 방법, 편집 이미지생성 방법 및 편집된 이미지 저장 방법 및 장치 |
CN101923699B (zh) * | 2009-06-10 | 2012-09-26 | 炬力集成电路设计有限公司 | 一种降低在矢量图形填充过程中对cpu耗费的方法及装置 |
KR101338370B1 (ko) * | 2012-04-27 | 2013-12-10 | 주식회사 컴퍼니원헌드레드 | 지피유를 이용한 2차원 벡터 그래픽스 패스의 배치 렌더링 방법 |
US9965876B2 (en) * | 2013-03-18 | 2018-05-08 | Arm Limited | Method and apparatus for graphics processing of a graphics fragment |
KR102251444B1 (ko) * | 2014-10-21 | 2021-05-13 | 삼성전자주식회사 | 그래픽 프로세싱 유닛, 이를 포함하는 그래픽 프로세싱 시스템, 및 이를 이용한 안티 에일리어싱 방법 |
US10074159B2 (en) * | 2015-12-28 | 2018-09-11 | Volkswagen Ag | System and methodologies for super sampling to enhance anti-aliasing in high resolution meshes |
CN107545535A (zh) * | 2017-08-11 | 2018-01-05 | 深圳市麦道微电子技术有限公司 | 一种gps坐标信息与实时图像混合的处理*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601562A (zh) * | 2003-09-25 | 2005-03-30 | 索尼株式会社 | 图像处理装置及其方法 |
CN1664866A (zh) * | 2004-03-04 | 2005-09-07 | 西门子共同研究公司 | 具有封闭轮廓多平面重定格式的体绘制数据的可视化 |
CN1674049A (zh) * | 2003-09-25 | 2005-09-28 | 索尼株式会社 | 图像处理装置及其方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5438656A (en) * | 1993-06-01 | 1995-08-01 | Ductus, Inc. | Raster shape synthesis by direct multi-level filling |
US5742277A (en) * | 1995-10-06 | 1998-04-21 | Silicon Graphics, Inc. | Antialiasing of silhouette edges |
US5852673A (en) * | 1996-03-27 | 1998-12-22 | Chroma Graphics, Inc. | Method for general image manipulation and composition |
DK172429B1 (da) * | 1996-04-25 | 1998-06-08 | Peter Mikkelsen | Fremgangsmåde ved oplæring af et billedanalysesystem til brug ved analyse af et emne, samt anvendelse af fremgangsmåden |
US6906728B1 (en) * | 1999-01-28 | 2005-06-14 | Broadcom Corporation | Method and system for providing edge antialiasing |
US6285348B1 (en) * | 1999-04-22 | 2001-09-04 | Broadcom Corporation | Method and system for providing implicit edge antialiasing |
US6633297B2 (en) * | 2000-08-18 | 2003-10-14 | Hewlett-Packard Development Company, L.P. | System and method for producing an antialiased image using a merge buffer |
US6999100B1 (en) * | 2000-08-23 | 2006-02-14 | Nintendo Co., Ltd. | Method and apparatus for anti-aliasing in a graphics system |
US7061507B1 (en) * | 2000-11-12 | 2006-06-13 | Bitboys, Inc. | Antialiasing method and apparatus for video applications |
US6567099B1 (en) * | 2000-11-15 | 2003-05-20 | Sony Corporation | Method and system for dynamically allocating a frame buffer for efficient anti-aliasing |
JP2002162958A (ja) * | 2000-11-28 | 2002-06-07 | Pioneer Electronic Corp | 画像表示方法および装置 |
US7180475B2 (en) * | 2001-06-07 | 2007-02-20 | Infocus Corporation | Method and apparatus for wireless image transmission to a projector |
US7801361B2 (en) * | 2002-10-15 | 2010-09-21 | Definiens Ag | Analyzing pixel data using image, thematic and object layers of a computer-implemented network structure |
EP1542167A1 (en) * | 2003-12-09 | 2005-06-15 | Koninklijke Philips Electronics N.V. | Computer graphics processor and method for rendering 3D scenes on a 3D image display screen |
JP4240395B2 (ja) * | 2004-10-01 | 2009-03-18 | シャープ株式会社 | 画像合成装置、電子機器、画像合成方法、制御プログラムおよび可読記録媒体 |
JP4266939B2 (ja) * | 2005-02-10 | 2009-05-27 | 株式会社ソニー・コンピュータエンタテインメント | 描画処理装置および描画データ圧縮方法 |
US20060275020A1 (en) * | 2005-06-01 | 2006-12-07 | Sung Chih-Ta S | Method and apparatus of video recording and output system |
US8269788B2 (en) * | 2005-11-15 | 2012-09-18 | Advanced Micro Devices Inc. | Vector graphics anti-aliasing |
EP1969559B1 (en) * | 2005-12-30 | 2018-09-05 | Telecom Italia S.p.A. | Contour finding in segmentation of video sequences |
US20070268298A1 (en) * | 2006-05-22 | 2007-11-22 | Alben Jonah M | Delayed frame buffer merging with compression |
TW200744019A (en) * | 2006-05-23 | 2007-12-01 | Smedia Technology Corp | Adaptive tile depth filter |
US7864365B2 (en) * | 2006-06-15 | 2011-01-04 | Sharp Laboratories Of America, Inc. | Methods and systems for segmenting a digital image into regions |
-
2007
- 2007-08-02 US US11/832,773 patent/US20090033671A1/en not_active Abandoned
-
2008
- 2008-07-23 EP EP08787716A patent/EP2186061A4/en not_active Withdrawn
- 2008-07-23 WO PCT/FI2008/050443 patent/WO2009016268A1/en active Application Filing
- 2008-07-23 CN CN2008801016940A patent/CN101790749B/zh not_active Expired - Fee Related
- 2008-07-23 JP JP2010518703A patent/JP5282092B2/ja not_active Expired - Fee Related
- 2008-07-23 KR KR1020107004559A patent/KR20100044874A/ko not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601562A (zh) * | 2003-09-25 | 2005-03-30 | 索尼株式会社 | 图像处理装置及其方法 |
CN1674049A (zh) * | 2003-09-25 | 2005-09-28 | 索尼株式会社 | 图像处理装置及其方法 |
CN1664866A (zh) * | 2004-03-04 | 2005-09-07 | 西门子共同研究公司 | 具有封闭轮廓多平面重定格式的体绘制数据的可视化 |
Also Published As
Publication number | Publication date |
---|---|
WO2009016268A1 (en) | 2009-02-05 |
KR20100044874A (ko) | 2010-04-30 |
US20090033671A1 (en) | 2009-02-05 |
CN101790749A (zh) | 2010-07-28 |
EP2186061A1 (en) | 2010-05-19 |
JP2010535371A (ja) | 2010-11-18 |
JP5282092B2 (ja) | 2013-09-04 |
EP2186061A4 (en) | 2012-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101790749B (zh) | 多点采样绘制二维矢量图像 | |
US6825847B1 (en) | System and method for real-time compression of pixel colors | |
US7110137B2 (en) | Mixed raster content files | |
US6819793B1 (en) | Color distribution for texture and image compression | |
EP1777618B1 (en) | High-level program interface for graphics operations | |
JP3462211B2 (ja) | 多態グラフィック・デバイス | |
US8269788B2 (en) | Vector graphics anti-aliasing | |
US10068518B2 (en) | Method, apparatus and system for dithering an image | |
DE102013114279A1 (de) | Oberflächenverarbeitung mit Mehrfachabtastung unter Verwendung einer einzelnen Abtastung | |
US10186068B2 (en) | Method, apparatus and system for rendering an image | |
CN109964204A (zh) | 用于处理图形的方法和*** | |
DE102020108526A1 (de) | Adaptive pixelabtastreihenfolge für zeitlich dichtes rendern | |
US6693644B1 (en) | Graphic accelerator reducing and processing graphics data | |
DE102013114286A1 (de) | Oberflächenverarbeitung mit Mehrfachabtastung unter Verwendung von Abtastuntergruppen | |
Peterson et al. | The Utah Raster Toolkit | |
EP0855682B1 (en) | Scan line rendering of convolutions | |
US8941881B2 (en) | Method and apparatus for rasterizing transparent page | |
US7468733B2 (en) | Method and system for improving color reduction | |
US10262386B2 (en) | Method, apparatus and system for rendering regions of an image | |
US20120120197A1 (en) | Apparatus and method for sharing hardware between graphics and lens distortion operation to generate pseudo 3d display | |
Bjorke | Image processing on parallel GPU pixel units | |
CA2256970A1 (en) | Method for accessing and rendering an image | |
AU721232B2 (en) | Scan line rendering of convolutions | |
CN112233206A (zh) | 字符图像生成方法、装置、设备及存储介质 | |
AU2005201932A1 (en) | Parametric patch colour blend rendering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130102 Termination date: 20170723 |