在子象素精度再现系统中依赖字体尺寸的反走样的制作方法

文档序号:6615038阅读:121来源:国知局
专利名称:在子象素精度再现系统中依赖字体尺寸的反走样的制作方法
技术领域
本发明涉及再现图像的方法和系统。具体而言,本发明涉及根据所再现对 象的属性来选择不同的反走样滤波器,应用于以子象素精度再现的图像数据对 象。
背景技术
为忠实再现图形字符,通常要用足够高的分辨率来存储图形图像, 这样假定显示该图像的显示设备有足够高的分辨率,人眼就不会感觉到字符的 不均匀或者畸变。液晶显示(LCD)设备是显示图像的显示设备中最常见类型之 一。由于LCD设备的复杂性和制造要求, 一般的LCD设备分辨率比许多图形 格式支持的分辨率低。
液晶显示设备通常包括按行和列排列的一组象素。每个象素包含颜 色子象素,合起来产生该象素亮度和色彩的变化。通常,LCD显示设备具有按 同色元素垂直(或者不太普遍地,水平)条排列的子象素,当然也存在其它式 样。在LCD屏幕上呈现文本字符时,象素被赋予亮度和色彩以描绘出字符的 背景色和前景色。显示设备的象素数量和尺寸决定其分辨率。当图形图像以较 低的分辨率再现在一般的显示设备上时,所再现图像的畸变变得显著了 (特别 是图像数据中字符的边缘)。再现字符中这样的变化和畸变包括走样。将原始 图像的高空间频率经过混叠降低为显示器上低空间频率时产生走样。走样导致 字符的边缘出现锯齿状或阶梯状。由走样导致的锯齿状或阶梯状现象在图像字 符的斜线或曲线部分常常最为明显,这时字符的边缘接近水平。在不能提供准 确表示字符这类部分所需的足够数量的象素的显示设备上,走样(aliasing)也 是最为明显的。
已有多种反走样技术被开发用于在较低分辨率显示设备上校正图像再 现所产生的畸变。反走样的传统方法,常被称作灰度级量化,是一种模糊走样 的字符边缘的方法。当经过反走样的字符边缘不太清晰地描绘出来时,图像中 的反走样就变得不易被人眼所察觉。其结果是图像似乎更准确地得到了再现。 另一种已用于使走样图像的畸变最小化的技术是,在与LCD显示设备的同色子象素条垂直的方向上应用子象素精度再现。特别是,在将图像的不同部分映 射到象素的各个子象素上时,把各个子象素用作独立的亮度源。这种技术在与 子象素条垂直方向上改进了图像的分辨率,并且能使字符的边缘放在子象素之 间。因此,这种再现过程减小了具有接近垂直特点的字符的走样效应,但对具 有接近水平特点的字符没有明显的作用。
对于上述利用子象素位置再现的字符,走样表现出来的程度部分地取 决于再现字符的字号。较小的字号不易于表现出可见的走样,而用较大字体显 示的字符会出现不均匀和锯齿状。
图1A说明子象素精度再现如何会导致大字体字符在字符接近水平的 区域内具有不均匀的或锯齿状的边缘。图示的是显示设备1具有像素2网格的 部分,上面显示了字符4的一部分。曲线线段4a表示要处理显示的原图像数据, 而线段4b表示线段4a在显示设备上显示的图像边界结果。字符4是以一种大 字号描绘的,典型的25点或更大的标题行字号。每个象素2具有3个子象素 (例如,红、绿、蓝子象素),并可分别控制每个子象素以表示字符的不同空 间部分,从而在水平方向上提高了分辨率。然而由于垂直方向的分辨率相对较 低,且字号大的字符容易具有由大量象素以接近水平方向排列而成的斜边(如 部分8),垂直方向的走样效果会相当显著。
现在参照图1B,第二字符6以子象素精度显示在象素2的网格中。第 二字符6是用小字号描绘的,常用于再现正文。曲线线段6a表示要处理显示的 原图像数据,而线段6b表示线段6a在显示设备上显示的图像边界结果。因为 以较小的字体再现的字符趋向于具有较小的曲率半径,其接近水平的部分就会 跨过较少的象素,所以较小字符接近水平部分的锯齿常常是不太值得注意的问 题,如图1B所示。
对于图1A中较大字号字符4或者图1B中较小字号字符6,可采用垂 直方向上的反走样滤波器以降低垂直方向上可察觉的走样影响。灰度级量化就 是这样一种反走样技术,它能令字符边缘的子象素具有在前景色和背景色之间 的亮度。当灰度级量化降低走样的感觉时,它也模糊了字符的边缘。对于具有 相对较宽字符特性的字符,如图1A中的字符4,模糊边缘不会有太大的问题, 因为边界子象素表示的只是用于再现字符的子象素中的一小部分。然而,对于 较小的字符,如图1B中的字符6,模糊字符的边缘会导致该字符难以看清楚。 因此对于字符(如字符4和字符6),如果应用传统的反走样技术会导致很难 分辨小字体字符,反之不应用反走样技术又会导致大字体字符明显的走样。发明内容
本发明涉及再现图像的方法和系统。尤其是,本发明述及根据所再现对象的属性来选择不同的反走样滤波器,应用于以子象素精度再现的图像数据 对象。这样就使反走样滤波器能够适合于不同字号的唯一要求。平行于子象素 条方向的大的反走样量有利于大字号。用于描绘大字号字干的大量象素使灰度 级量化后的字符模糊边缘显得不太重要了。在进行大量灰度级量化后,小字号 再现时显得模糊和可读性差。因此,对小字号字符应用小的反走样量或根本不 用,就能保持字符边缘所需的对比度。
在本发明的一个实施例中,提供了多个各种反走样滤波器组。在这些 反走样滤波器组中的每一个都提供了平行于子象素条方向的不同的反走样量。 当处理设备再现图像时,要确定字符的字号,并从这个不同反走样滤波器组中 选择-一个与其相应的反走样滤波器。为小字号选择的反走样滤波器提供小的反 走样量或根本不进行反走样滤波。为大字号选择的反走样滤波器提供相对大的 反走样量。为中等字号选择的反走样滤波器提供中等的反走样量。随着字符的 字号逐渐由小到大,所选择的反走样滤波器就提供相应增大的反走样量。
在一个实施例中,选定的滤波器可用于一定字号范围内的多种字号。 在另一个实施例中,每个选定的滤波器对应于单一的、不同的字号。可以这样 安排一组滤波器选择一个提供小的反走样量的反走样滤波器,用于所有字号 比给定字号下限小的字符。使用小字号反走样滤波器再现的字符近似于没有经 过反走样的字符。同样地,可以选择一个字号上限,大于它的字号就选择一个 提供相对大的反走样量的反走样滤波器。为在字号上下限中间的字号指派提供 中间级别的反走样量的过滤器。
在后面的描述中将阐明本发明其它特点和优势,有些部分在描述中是 显而易见的,有些可以从本发明的实施中认识到。可以通过所附权利要求书中 特别指出的仪器及其组合,了解和获得本发明的特点和优势。以上所述的以及 其它的本发明特点,通过下面的描述和所附的权利要求书将变得更为清楚,也 可以从下文阐明的本发明的实施中认识至U 。


为了描述能获得上面陈述的和其它本发明优势与特点的方法,上面简 要描述的本发明将参考实施例及其在附图中的图示重新进行更为详细的描述。 要知道这些图片所描述的仅仅是本发明的典型实施例,因此不可认为本发明的 范围是受这些图片的限制的,通过使用所附图片将以更为确切和详细的方式对 本发明进行描述与解释。
图1A说明子象素再现方法会导致大字号字符产生不均匀或锯齿状的边缘。
图1B说明以子象素精度再现的小字号字符的不均匀和锯齿状边缘与大字号的相比不太值得注意的。
图2示出叠加了图像数据的LCD显示设备的一部分。
图3A示出使用替代采样生成垂直反走样使用的a中间值数组的方法。
图3B图示了对图3A的a中间值应用选定的垂直反走样滤波器。
图4描绘了一个说明性的包含一个加权反走样滤波器组的数据结构。
图5A和5B说明了将反走样滤波器的权值应用于由与RGB子象素相关的a三元组的垂直采样值计算出的a值的方法。
图6是方框图,图示了在本发明上下文中所使用的依赖字体尺寸的反走样的方法。
图7是示意图,描绘一个可使用本发明的示意性的工作环境。
具体实施方式
本发明涉及图像的方法和系统。具体而言,本发明述及根据所再现对 象的属性来选择不同的反走样滤波器,应用于以子象素精度再现的图像数据对 象。这就使应用于字符的反走样程度是由不同字号的唯一特性来确定。反走样 滤波器是应用在平行于子象素条的方向上的。平行于子象素条方向的大的反走 样量有利于大字号。在此要指出,描绘大字号特点的字符用到的大量象素,使 其灰度级量化后的边缘不太显眼。在进行大量灰度级量化后,小字号再现时显 得模糊和可读性差。因此,通过对小字号字符应用小的反走样量,就能保持清 晰再现这类字符所需的对比度。
在本发明的一个实施例中,提供了一个不同反走样滤波器组。在这个 反走样滤波器组中每一个都提供了平行于子象素条方向的不同的反走样量。当 处理设备再现图像时,确定字符的字号,并从这个不同反走样滤波器组中选择 一个与其相应的反走样滤波器。为小字号选择的反走样滤波器提供小的反走样量或根本不进行反走样滤波。为大字号选择的反走样滤波器提供相对大的反走 样量。随着字符的字号逐渐由小到大,为中等字号选择的反走样滤波器提供相 应增大的中等的反走样量。I.图像数据采样
在描述反走样滤波器的用法前,先参看图2,该图描述了有关在对图 像中一个或多个字符应用反走样滤波器之前所要进行的再现图像步骤的一般 原则。图2图示了在LCD显示设备的一个区域上的象素网格10,网格中的象 素依次包含子象素。象素网格10中的象素按照一连串的列(C1-C5)和一连串的 行(R1-R4)排列。第一个象素12是用以说明在LCD显示设备上用象素描绘图形图像中的字符的方法。第一个象素12对应于列Cl和行R1。第一个象素12包 含红、绿、蓝子象素,它们水平地彼此相邻地排列着。LCD显示设备上的其它 象素,包括垂直相邻于象素12的象素,也包含相应的红、绿、蓝子象素。因 此,LCD显示设备上垂直相邻象素的子象素就构成了同色子象素条。虽然在这 里主要是参考垂直的同色子象素条对本发明进行描述的,但是本领域的技术人 员将会认可,本发明也可应用于其它各种结构,包括但不局限于水平方向条结 构和斜方向条结构。
图2也图示了一个叠加在象素网格10上的字符14的一部分。依照本 发明进行处理的图像数据以字符轮廓线16的形状定义了字符14及用于再现该 字符的前景色和背景色。为了再现字符14,光栅化处理器首先解释图形指令, 将图像14的轮廓线16适配到象素网格10上。 一旦字符14的轮廓线被适配到 象素网格10上,光栅化处理器对被随意适配于网格的轮廓线进行扫描转换, 并将与被扫描转换过的轮廓线对应的采样值填充到位图中。并将与被扫描转换 过的轮廓线对应的采样值填充到位图中。关于可用于本发明的网格适配、扫描 转换和采样操作,在美国专利第6, 219025号中有更详细的讨论,通过引用包 括在此。在一个实施例中,多字符组成的字符串的光栅化首先要对所有字符进 行网格适配,然后扫描转换整个字符串。在另一个实施例中,虽然非字符图形 对象一般不进行网格适配,但是要用本领域内公知的算法进行扫描转换。对所 有这些图形对象的光栅化将产生一幅位图。
图3A图示位图18的一部分,它是对字符14或其它图形对象经过上 述的网格适配、扫描转换和采样而生成的。用图像数据采样值生成的位图,用 来产生用于LCD显示设备的红、绿、蓝子象素的亮度值。此外,位图也指明 了哪些采样值落在字符14的轮廓线16里面,哪些落在外面。这里还要指出, 对应于显示设备上的一个完整象素的每个图像数据区域都要获得多个采样值。 尽管由本发明的某一实施例决定的每个象素采样值数量的过采样系数会变化, 但一般而言,多个采样值是在每个象素水平和垂直两个方向上获得的。在图3A 所示的例子中,水平方向上的过采样系数是6,垂直方向是5。水平方向(例 如,与显示设备的子象素条垂直)的过采样系数使不同的采样值组能映射到象 素的每个子象素上,从而提高了水平方向上的分辨率并提供反走样。垂直方向 (例如,与显示设备的条平行)的过采样系数,使垂直反走样滤波器能被应用。
图3A所示的位图18部分表示的是依照本发明的这个实施例要应用反 走样滤波器的位图部分。特别地,位图18的区域包括列SC1-SC10和行 SR1-SR7。限定列SC3-SC8和行SR2-SR6的垂直和水平粗线对应于显示设备的 象素边界。因而, 一般而言,要应用本发明的反走样滤波器的位图18区域对 应于由相应的象素及其相邻的一或多行和列象素所组成的边界内的采样值。此 外,要对其它象素应用反走样的位图区域是相互重叠的。
采样值的行数,与垂直方向上按照垂直过采样系数规定的采样值的数 量加上按垂直反走样滤波器要求的相邻采样值的数量是一致的。在本发明的一 个实施例中,所要提供的垂直相邻采样值的数量取决于不同反走样滤波器组的 要求。本发明的反走样滤波器利用位于某一象素的对应区域外的图像数据采样 值来确定用于这个象素的子象素的亮度值。如同下面更为详细地描述那样,垂 直反走样滤波器降低位图18中高垂直频率,因此减少了原来应当出现的锯齿 状现象。这种反走样的处理是有代价的,即原来存在于描绘字符前景色的子象 素和描绘背景色的子象素之间的对比度一般是变小了。
在图示的实施例中,垂直方向(平行于子象素条的方向)上采用5: 1 的过采样比例系数。另外,在位图18提供的区域中还包括了二行垂直相邻采 样值(SR1和SR7)。因此,在图示的实施例中,垂直反走样滤波器可以应用 于最多七行采样值。虽然图示的实施例描述的是七行垂直相邻的采样值,其中 SR1和SR7取之于相邻的象素,但其价值在于,采样值在本发明的范围与精神 内可以充分地利用任意数目和结构的采样值。
采样值也映射到水平相邻的列SC1-SC10组中。列数相应于由水平过 采样比例系数确定的水平方向采样值的数量加上用于确定对应每个RGB三元 组a值的水平相邻列的采样值的数量。在图示的实施例中,采用水平过采样比 例6:1。另外,利用了左相邻象素的两相邻列的采样值,以及右相邻象素的两 相邻列的采样值。II.计算三元组a值
图3A中所示的位图18区域是用于产生对应于相应象素的红、绿、蓝 子象素的三元组a终值。换句话说,通过对位图18区域进行处理来确定应用 于红、绿、蓝子象素的亮度值。如下所述,位图进行处理后,每一个红、绿、 蓝子象素分别表示图像数据的一个空间上的不同部分,它具有在水平方向增加 显示分辨率的效果。此外,位图进行处理后,根据字号大小从依照本发明的反走样滤波器组中选择其一就能减少垂直方向上的反走样效应。
在对位图18的处理中,首先对SR1-SR7每一行的相邻采样值组进行 过滤,获得一组对应于红、绿、蓝子象素的a中间值。此过程参照行SR7进行 详细描述,但这对SR1-SR7各行是可重复的。图3A图示了采样值20a-j,对应 行SR7的水平相邻采样值。例如,阿尔法值a r7是由行SR7的采样值20a-f 计算出来的。在ar、 ag和ab中小写的r、 g和b符号表示这些a值仅仅是中 间量,而不是最后用来控制子象素的终值aR、 aG和aB。在一个实施例中, 每个采样值根据该采样值所对应的是前景色(例如黑色)还是背景色(例如白 色),给它赋值0或1。然后将采样值20a-f每一个0或l值相加或者平均来确 定阿尔法值ar7。
行SR7的a值a g7用采样值20c-h以相似的方法确定。行SR7的a 值ab7用20e-j来确定。总之,处理设备将每一行的水平相邻采样值转换成三 元组a值,即为三个子象素的每一个生成一个a值。对其它行SR1-SR6中的每 一行使用前述的用于行SR7的方法计算每个子象素的a值,生成图3A中的a 中间值数组24。在本发明的范围和精神内,可以采用各种方法和滤波器来确定 a中间值。III.垂直反走样滤波器选择
—旦由SR1-SR7的每一行计算出对应某一象素的位图18区域的所有 a中间值后,就可根据字符的字号选择一个反走样滤波器。从一个反走样滤波 器组中选择出专用于某一字号的反走样滤波器。这些反走样滤波器适合用于抑 制位图18中的高垂直频率。图3B示出的a中间值数组24是参照图3A如上所 述产生的。图3B中选定的反走样滤波器26是在与显示设备子象素条平行的方 向上(也就是在与应用水平过滤器的方向垂直的方向上)应用的,它将a中间 值24转换成一组a终值(aR, a G, a B),用于控制对应象素的红、绿、蓝子 象素30。
反走样滤波器26是根据被显示字符的字号从一组现有的滤波器中选 出来的,它所提供的反走样量被确定是适合的。总的来说,相对大的字号导致 一个能提供相对大的反走样量的滤波器26,反之,对于相对小的字号则导致提 供相对小的反走样量,或者根本不进行反走样的滤波器26。
在本发明的一个实施例中,为所有小于给定字号的字符选择了一个反 走样滤波器,提供第一反走样量。在另一个实施例中,为所有大于给定字号的 字符选择一个反走样滤波器,提供较大的第二反走样量。另外还有一个实施例, 为所有小于给定字号的字号提供了一个字号下限。为所有大于给定字号的字号 提供一个字号上限。对于字号在上下限之间的字符,使用适于提供中等的反走 样量的一个或多个反走样滤波器来反走样。
本发明能用于具有不同字号字符的文档,这将导致对不同的文档字符 应用不同的反走样滤波器。例如,在再现这样的图像时,根据要显示的第一字 符的第一字号选择第一反走样滤波器。作为第一字符显示过程的一部分,第一 反走样滤波器应用于第一字符。根据其字号大于第一字符字号的第二字符的第 二字号,选择一个不同的第二反走样滤波器。作为第二字符显示过程的一部分, 第二反走样滤波器应用于第二字符。第二反走样滤波器提供的反走样量比第一 反走样滤波器提供的反走样量大。因此,作为使用第二反走样滤波器的结果而 产生的前景和背景亮度值之间的对比度,比作为使用第一反走样滤波器的结果 而产生的前景和背景亮度值之间的对比度要小,但是用第二反走样滤波器过滤 的字符的靠近水平部分看上去比用第一反走样滤波器过滤的部分要光滑。
本发明可以对非单字符图形对象应用不同的反走样滤波器。例如在一 个实施例中,相同字号的字符串可通过适合那种字号字符的反走样滤波器来再 现。在另一个实施例中,由直线和/或曲线组成的图形可通过与直线和/或曲线 的粗细相关的反走样滤波器来再现。用小反走样量再现细的直线和/或曲线,而 用大反走样量再现粗的直线和/或曲线。在一个实施例中,为应用于具有某一直 线/曲线宽度的对象所选择的反走样滤波器就是为具有相似字干宽度的字体所 选择的相同的反走样滤波器。在另一个实施例中,通过能提供最大的反走样量 的反走样滤波器再现明显厚实的图形对象(例如,填充圆、矩形等)。
反走样滤波器是在与子象素条平行的方向上应用的。这能在子象素再现无法提供额外分辨率的方向上对字符提供反走样。在图示的实施例中,垂直 方向是平行于子象素条的方向。不过如果显示设备的子象素条是水平的,则所 选反走样滤波器产生的反走样用于水平方向。
在本发明的较佳实施例中,滤波器包括加权滤波器。加权反走样滤波 器是通过计算垂直相邻的ct中间值的加权和或加权平均来起作用的。在本发明的一个实施例中,由于对应于反走样滤波器的字号变大,具有非零权值的垂直 相邻的a中间值的数目也变多。换句话说,在这个实施例中,较大字号的滤波 器用于较大的垂直相邻行数。
滤波器提供的反走样量基于该滤波器的权值。每个滤波器为每个RGB 子象素垂直相邻a值三元组的每一个值提供一个权值。加权滤波器及其相应的 权值将参照图4详细地进行讨论。在本发明的上下文中所使用的反走样滤波器 并不限于加权滤波器,可以是各种各样的其他滤波器之中任何一种,包括本领 域的技术人员公知的滤波器。
现参照图4,这里示出了由一组加权反走样滤波器组成的示例性数据 结构。这个数据表包括一系列字段组。每组字段相关于指定了字号范围的反走 样滤波器组中的一个。同时示出,定义权值的这些参数可应用于图3B的垂直相 邻a值。如图4中所使用的,底端相邻采样值,第0到第4采样值,以及顶端 相邻采样值,分别对应于图3A和3B中SRl到SR7行的三元组a中间值。例 如,将一个值为2的权值应用于如图4数据结构中所定义的"底端相邻采样值", 意味着将一个值为2的权值应用于图3A和3B中的a值三元组(a r7, a g7, ab7)。
如前面所提到的,根据被显示字符的字号从该组不同的反走样滤波器 中选择一个反走样滤波器。在图4的数据结构中,提供了编号从0至8的九个 加权滤波器。虽然在本发明图示的实施例中包括九个加权滤波器,但是在本发 明上下文中可以用除单个滤波器外的任意数量的滤波器。
滤波器0对应的是16或更小的字号。在图示的实施例中,17是字号 下限,小于此字号就选择滤波器O来提供所需的反走样量。滤波器8对应的是31或更大的字号。在图示的实施例中,30是字号上限,大于此字号就选择滤波器8来提供所需的反走样量。滤波器1至7对应的是在16和31之间的字号, 每个滤波器表示两个字号。虽然选择反走样滤波器是在字号范围内内讨论的, 但要意识到,确定所要再现字符大小的方法并不需要基于字号的严格解释。例 如,在一个实施例中,每字象素(ppem)可以用于计算再现图像的大小。另外, 图形对象的干宽、线粗细度或者对象的其它属性都可以用来选择合适的反走样 滤波器。在本发明的范围与精神下,有各种各样的方法和结构可以用来确定所 要再现的字符大小。
如上所述,大的反走样量有利于大字号。因此,为31或更大字号的 字符选择滤波器8,因为滤波器8提供大的反走样量。滤波器8所提供的反走 样量是根据它的每个垂直相邻采样点的权值决定的。滤波器8为底端和顶端相 邻采样点提供较小的权值,而应用于接近象素中心(见图3A和3B)的ci值或 采样值的权值则逐渐增加。因此滤波器8对字符的边缘提供大的反走样量。
滤波器0在垂直方向提供小的反走样量。除位于象素中心的三个垂直 相邻a值外,滤波器0所提供的权值全是0。最大的权值应用于中间采样值(第 二采样值)。换句话说,反走样滤波器只使用了垂直位于具有最重要的中间采 样值的象素内的采样值。因此,对于小字号而言,赋给子象素的亮度值几乎全 部是由接近于相应象素位图区域中心的采样值所决定的。用反走样滤波器O再 现的图像类似于不使用反走样再现的图像,因为滤波器O提供小的反走样量。 虽然滤波器8和O是作为针对有具体不同字号的字符的滤波器例子,但是可以 看到,用于相对较大字符尺寸的滤波器所提供的反走样量比用于相对较小字符 尺寸的滤波器所提供的反走样量要大。
图5说明了将反走样滤波器的权值应用于由RGB子象素垂直采样值 计算出的a值的方法。圆弧30表示图4中滤波器7所提供的权值。在图示的 实施例中,滤波器7被指派给字号为29和30的字符,并适于提供大字号所需 的大反走样量。圆弧40表示图4中滤波器O所提供的权值。在图示的实施例 中,滤波器O被指派给字号为16或更小的字符,因为滤波器O提供小的反走 样量。
Y轴上对应于圆弧30的一组位置31-37,代表要应用权值的垂直相邻 采样值的a值或每个RGB子象素的a中间值。如滤波器7,位置31对应于顶 端相邻采样值的a值,它赋予的权值是圆弧30上的1。位置32对应于第0垂 直相邻采样值的a值,它赋予的的权值为5。位置33对应于第1垂直相邻采样 值的a值,它赋予的权值为7。位置34对应于第2垂直相邻采样值(采样于象 素中间)的a值,它赋予的权值为10。位置33-37对应于第3、 4和底端采样 值的a值,它们分别赋予的权值为7、 5、 1。
由于圆弧30宽而浅的外形及对应于圆弧30的权值,滤波器7提供大的反走样量。应用了大反走样量的字符,其边缘的中间阴影数量要比应用了小 反走样量的字符大。中间阴影是通过赋予象素边缘前景和背景子象素中间的亮 度值而完成的。
相反,圆弧40又窄又尖的外形及相应于圆弧40的对应权值,导致滤 波器O提供小的反走样量。与位置4K 42、 46和47对应的权值是0。位置41、 42、 46和47依次代表顶端相邻采样值、第O采样值、第4采样值和底端相邻 采样值的a值。只有位置43、 44和45具有非零的权值,它们对应的是从接近 象素中心处得到的第l采样值、第2采样值和第3采样值。
图6是一个方框图,说明在本发明的上下文中所用到的依据字体尺寸 的反走样方法。此方法的步骤52使用替代采样确定垂直相邻行l-n的a值。确 定垂直采样值a值的替代采样方法将参照图3A和3B进行详细的讨论。 一旦确 定了垂直相邻行采样值的a值,在步骤54中就要确定正被再现的字符字号。 根据正被再现的字符字号,步骤56从反走样滤波器组中选择一个反走样滤波 器。在步骤58中,通过垂直相邻行采样值的a值与反走样滤波器所提供的权 值相乘,将所选的反走样滤波器在垂直方向上应用于该字符。步骤60中,为 每个RGB子象素将权值和a值的乘积结果累加以确定其子象素的亮度值。步 骤62中, 一旦将乘积结果加在一起后,亮度值结果就被应用到RGB子象素上, 显示出字符经反走样处理的版本。IV.典型计算环境
本发明的实施例可以由包括各种计算机硬件的专用或通用计算机组 成,如下所详述。在本发明范围内的实施例还包括在其上存贮以传送或者保有 可执行指令或数据结构的计算机可读介质。这样的计算机可读介质可以是能被 通用或专用计算机存取的任意可用介质。作为举例,但不限于此,这样的计算 机可读介质可以包括RAM、 ROM、 EEPROM、 CD-ROM或其它光盘存储、磁 盘存储或其它磁存储设备,以及能用来传送或存贮以计算机可执行指令或数据结构的形式表现的所需程序编码方法而且能被通用或专用计算机存取的任何 其它介质。当信息通过网络或者另外的通信连接(无论是有线的、无线的,还 是有线或无线的组合)传送到或提供给计算机时,该计算机就可以把这个连接 看作为计算机可读介质。因此,任何这样的连接都是完全符合计算机可读介质 定义的。以上的组合也应当包括在计算机可读介质范围内。计算机可执行指令 包括,例如,能使通用的计算机、专用的计算机或者专用处理设备完成某个或 某组功能的指令和数据。
图7和下面的讨论将对本发明得以实现的适当的计算环境加以简要全 面的描述。尽管不是必需的,本发明已可用通过网络环境中计算机执行的通用 计算机可执行指令进行描述,如程序模块。通常,程序模块包括例程、程序、对象、组件、数据结构等,完成特定的任务或者实现特定的抽象数据类型。计 算机可执行指令、相关的数据结构和程序模块作为在此公开方法执行步骤的程 序编码方式的实例。这样的可执行指令或相关的数据结构的特定序列作为与实 现这些步骤中所描述的功能相对应过程的实例。
本领域的技术人员将意识到,本发明可以由网络计算环境中多种计算 机系统配置实行,包括个人电脑、手持设备、多处理器系统、基于单片机的或 可编程的民用电子设备、网络PC、小型计算机、大型计算机,以及诸如此类的 设备。本发明也可以在任务由通过通信网络互连的(可以是有线连接或无线连 接的,也可以是有线或无线连接相结合的)本地和远程处理设备完成的分布式 计算环境中实行。在分布式计算环境中,程序模块可以同时位于本地和远程内 存存贮设备中。
参照图7,实现本发明的典型系统包括一个通用计算设备,这里是一 台常规计算机120,它包括处理单元121,系统内存122,连接包括系统内存 122和处理单元121在内的各种系统组件的系统总线123。系统总线123可以 是几种总线结构类型的任何一种,包括内存总线或内存控制器,外设总线,以 及使用各种总线结构的任意一种局域总线。系统内存包括只读存贮器(ROM) 124和随机存取存贮器(RAM) 125。基本输入/输出系统(BIOS)126可以存贮 在ROM124中,它包含了用于在诸如起动的时候帮助计算机20内部各组件之 间传送信息的基本例程。
计算机120也可以包括用于读出和写入硬磁盘139的硬盘驱动器127、 用于读出或写入可移动磁盘129的磁盘驱动器128,以及用于读出或写入诸如 CD-ROM或其它光盘介质的可移动光盘131的光盘驱动器130。硬磁盘驱动器 127、磁盘驱动器128和光盘驱动器130分别通过硬盘接口 132、磁盘驱动器接 口 133和光盘驱动器接口 134与系统总线132连接。驱动器和与它们相关的计 算机可读介质为计算机120提供计算机可执行指令、数据结构、程序模块和其 它数据的非易失性存贮。虽然在此描述的典型环境使用了硬磁盘139、可移动 磁盘129和可移动光盘131,但是其它用于存贮数据的计算机可读介质类型都 可以使用,包括磁带、闪存卡、数字通用盘、伯努利字体盒、RAM、 ROM, 以及类似的介质等。
由一个或多个程序模块组成的程序编码方法(包括操作系统135、 一 个或多个应用程序136、其它程序模块137和程序数据138)可以存贮在硬盘 139、磁盘129、光盘131、 ROM24或RAM25中。用户可以通过键盘140、定 点设备142或如话筒、操纵杆、游戏垫、卫星电视天线、扫描仪等其它(未示 出的)输入设备向计算机120输入命令和信息。这些和其它输入设备常常通过 连到系统总线123的串行接口 146连接到处理单元121。也就是说,输入设备 还可以通过其它接口连接,如并行端口、游戏端口或通用串行总线(USB)。显示器147或其它显示设备也通过诸如显示适配器148的接口连接到系统总线 123。除了显示器,个人计算机一般还包括其它如扬声器和打印机等(未示出 的)外部输出设备。
计算机120可以在网络化环境中用逻辑连接至一台或多台远程计算机 的方式来操作,如远程计算机149a和149b。图7所示的远程计算机149a和149b 中的每一个都可以是另一台个人计算机、服务器、路由器、网络PC、对等设备 或其它普通网络节点,而且一般还包括上面提到的与计算机120相关的很多或 全部组件,但除了内存存贮设备150a和150b以及与它们关联的应用程序136a 和136b。图7描绘的逻辑连接包括局域网(LAN) 151和广域网(WAN) 152, 它们只是作为示例而并不仅限于这些。这样的网络环境在办公室或企业计算机 网络、企业内部互联网和互联网中是很普通的。
在局域网网络环境中使用时,计算机120通过网络接口或适配器153 连接到局域网151。在广域网网络环境中使用时,计算机120可以用调制解调 器154、无线连接或其它方式建立与广域网152的通信,如互联网。调制解调 器154,可以是内置式或外置式的,通过串行接口 146连接到系统总线123。 在网络化环境中,所述的与计算机120或其某个部分相关的程序模块可以存贮 在远程内存存贮设备中。将意识到的是,所示的网络连接是具有代表性的,通 过广域网152建立通信的其他方法也可以使用。
只要不脱离本发明的精神或基本特征,本发明可以用其它特殊的形式 实施。无论如何,所述的实施例只是说明性的而非限制性的。因此本发明的范 围将由所附的权利要求书指定,而不是由前面的描述指定。与权利要求书等价 的意图和范围内的所有变化都包含在内。
权利要求
1.一种具有处理单元的系统,所述处理单元与具有多个象素的显示设备相关,每个所述象素具有多个可分别控制的象素子分量,其中所述处理单元使用根据图像的字符字号从多个反走样滤波器中所选的一个反走样滤波器来再现所述图像,所述系统包括处理单元;以及存储器,在其上存储有可由所述处理单元执行的计算机可执行指令,所述指令用于访问定义多个不同的反走样滤波器的数据结构;识别要再现的图像的一个对象的属性;根据所识别的属性从所述多个不同的反走样滤波器中选择一个反走样滤波器,其中所述多个不同的反走样滤波器中的至少两个反走样滤波器是通过计算表示所述图像的图像数据的相邻采样的加权和来工作,其中根据相对较大的对象主体厚度所选的滤波器提供的反走样量大于根据相对较小的对象主体厚度所选的滤波器提供的反走样量,并且其中用于计算所述加权和的反走样滤波器所使用的相邻采样的数目随对应于所述反走样滤波器的对象主体厚度的增加而增加;以及在平行于所述象素子分量条的方向上应用所选择的反走样滤波器。
2. 如权利要求l所述的系统,其特征在于,所述计算机可执行指令进一步 包括用于将定义所述图像的图像数据的空间上不同的采样组映射到所述单独 象素的不同象素子分量上,以便在垂直于所述象素子分量条的方向上以象素子 分量精度显示所述图像。
3. 如权利要求l所述的系统,其特征在于,所述多个反走样滤波器中的每 个反走样滤波器提供不同的反走样量。
4. 如权利要求l所述的系统,其特征在于,所述对象包括字符,并且所述 属性包括所述字符的字号。
5. 如权利要求4所述的系统,其特征在于,每个数据结构包括一系列字段,其中每个字段与对应于字号范围的多个反走样滤波器中的一个相关。
6. 如权利要求5所述的系统,其特征在于,所述多个反走样滤波器中的一 个反走样滤波器应用于具有小于给定下限字号阈值的字号的任意字符。
7. 如权利要求5所述的系统,其特征在于,所述多个反走样滤波器中的一 个反走样滤波器应用于具有大于给定上限字号阈值的字号的任意字符。
8.如权利要求5所述的系统,其特征在于,所述多个反走样滤波器包括至 少三个反走样滤波器。
全文摘要
介绍了一种在子象素精度再现系统中依赖字体尺寸的反走样技术。应用于以子象素精度再现的图像数据的对象、根据该图形图像对象的属性选择不同反走样滤波器的方法和系统。例如,使再现字符时在平行于子象素条方向上应用的传统反走样能适合于字符不同字号的唯一要求,从而对大字号应用大的反走样量而为小字号字符提供小的反走样量。使用替代采样为每个RGB子象素的垂直采样值组确定α值。对上述α值应用选中的反走样滤波器以确定RGB子象素的亮度值。
文档编号G06T5/20GK101231838SQ20071019970
公开日2008年7月30日 申请日期2003年5月14日 优先权日2002年5月14日
发明者B·斯坦姆, D·C·布朗, G·希特库克, J·C·普拉特, M·杜甘 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1