生成对象距离场的方法

文档序号:6601268阅读:421来源:国知局
专利名称:生成对象距离场的方法
技术领域
本发明总体上涉及距离场的生成,以及尤其是涉及生成由轮廓所表示的对象的距 离场。
背景技术
在计算机图形学领域,二维对象的渲染具有基础性的重要意义。二维对象(如字 符形状、公司标志)以及包含在文档中的图表元素被渲染为静态图像或包含动画的一系列 帧。二维对象有很多种表示,通常的情况是,对于特定的操作(如渲染和编辑)而言,一种 表示要优于另一种表示。在这些情况下,执行从一种表示到另一种表示的转换。以下专利文献已证明距离场是一种渲染和编辑二维形状的有效表示,这些 专利文献以引证方式合并于此2002年5月28日公告的名称为“Detail-directed hierarchical distance fields” 的美国专利 No. 6396492 ;2007 年 3 月 13 日公告的名称 为“(Antialiasing an Object Represented as aTwo-Dimensional Distance Field in Image-Order” 的美国专利 No. 7034845 ;2006 年 10 月 17 日公告的名称为 “Antialiasing a Set of 0bjectsRepresented as a Set of 2D Distance Fields in Image-Order,, 的美国专利No. 7123271 ;以及2005年7月12日公告的名称为“Method and Apparatus forRendering Cell-based Distance Fields using Texture Mapping,,的美国专利 No.6917369。尽管我们这里关注的是数字类型(这可能是最普遍和最重要的二维对象),但以 下讨论适用于所有类型的二维对象。我们首先讨论数字类型的一些基本背景。一个典型的拉丁字体族(如Times New Roman或Arial)包括字体集合,例如常规体、斜体、粗体、粗斜体。每种字体包括被称为字形 (glyph)的一组独立的字符形状。各字形由其各种设计特征进行区分,如基本几何形状、笔 划粗度、衬线(serif)、接合部(joinery)、排列(placement)和轮廓线数量以及细粗笔划之 比。有很多表示字体的方式,包括轮廓、均一宽度笔划和风格化笔划。基于轮廓的表示已被如下公司采用和推广马萨诸塞州Cambridge的Bitstream 公司、加利福尼亚州Mountain View的Adobe系统公司、加利福尼亚州Cupertino的苹果 电脑公司、华盛顿州Be 11 evue的微软公司、德国Hamburg的URW公司,以及马萨诸塞州 Wilmington的Agfa计算图形公司。为了优化内存使用,可以使用均一宽度笔划的字体。这些字体典型地将通常在 一种字体的中文字符中被重复的均一宽度笔划的集合(也称为字根(radical)或字形 (grapheme))分组,作为在字符中重复使用的单个简单形状。风格化笔划字体(SSF)是增强的基于笔划的字体,其笔划具有可变的粗细和风格 化的笔划末端,参见"An Improved Representation forStroke-based Fonts,,,SIGGRAPH 2006 Conference Abstract andApplications, Elena J. Jakubiak, Ronald N. Perry,andSarah F.Frisken。在2009年1月26日由Jakubiak等人提交的美国非临时专利申 请 12/359,819 "Method for Converting outline Characters to Stylized StrokeCharacters”中也描述了 SSF,以引证方式将该申请合并于此。SSF采用了一种模块化结构作用于一种字体内的形状的重复,使得SSF能够以与 当前均一宽度笔划字体相当的内存占用量来匹配轮廓字体的表现(expressiveness)。为了能够使用基于距离的渲染(例如参见美国专利No. 6917369 "Method and Apparatus for Rendering Cell-based Distance Fields usingTexture Mapping,,,以弓| 证方式将其合并此)以及诸如编辑之类的其他操作,需要在空间和时间上有效率的方法来 生成由各种形式表示的对象距离场(如字形)。本发明的目标是提供一种用于产生由轮廓表示的对象距离场的在空间和时间上 有效率的方法。

发明内容
一种生成对象的距离场的方法,其中所述距离场包括栅格集合,所述对象包括轮 廓集合。包括有处理器来执行所述方法的步骤。确定围绕所述对象的所述栅格集合中的第一栅格。指定所述对象外部的一个点的 距离值,其中所述对象外部的所述点的所述距离值为负值。将外部重构方法与所述第一栅 格相关联,其中所述外部重构方法针对所述第一栅格内部的各点,对所述对象外部的所述 点的所指定的距离值进行评估。确定所述栅格集合的边界栅格集合,其中各边界栅格围绕所述轮廓集合中的特定 轮廓的一部分。将边界重构方法与各边界栅格相关联,其中所述边界重构方法针对所述边 界栅格内部的各点对距离进行评估,该距离是从该点到所述特定轮廓的被围绕部分的无否 定符号最小距离。确定围绕所述对象的所述栅格集合中的最终栅格。将内部重构方法与所述最终栅 格相关联,其中所述内部重构方法在所述轮廓集合内部的点与所述轮廓集合外部的点之间 进行区分。通过以下步骤针对所述第一栅格内部的各点确定组合距离使用所述外部重构方 法确定所述第一栅格的第一距离值;针对各边界栅格,使用所述边界重构方法确定所述边 界栅格的边界距离值;并从所述第一栅格的所述第一距离值以及所述边界栅格的所述边界 距离值中选择最大距离值,以确定所述第一栅格内部的所述点的所述组合距离。使用所述最终栅格的所述内部重构方法,将所述轮廓集合内部的各点的所述组合 距离的符号反转,以生成所述对象的所述距离场。


附图1是由围绕一个对象的轮廓集合描述的对象的示意图,依据本发明的实施方 式而生成和渲染了该对象的距离场;以及附图2是根据本发明的实施方式的一种生成附图1中对象的距离场的方法的流程 图。
具体实施例方式图1示出了由围绕一个对象的轮廓集合102描述的对象101,根据本发明的实施方 式生成和渲染了该对象的距离场。图2示出了根据本发明的实施方式的一种用于生成对象101的距离场201的方 法。该方法能够被处理器200执行。该方法由轮廓集合102生成对象101的距离场201。该距离场201包括栅格(cell) 集合,该对象包括该轮廓集合102。确定围绕对象101的该栅格集合中的第一栅格(210)。指定位于对象101外部的 一个点的距离值(220)。位于对象101外部的该点的距离值是负值。将一种外部重构方法 与该第一栅格相关联(230)。该外部重构方法针对该第一栅格内部的每一点,对对象101外 部的该点的所指定的距离值进行评估。确定该栅格集合中的边界栅格集合(240)。各边界栅格围绕该轮廓集合102中特 定轮廓的一部分。将一边界重构方法与各边界栅格相关联(250)。该边界重构方法针对边 界栅格内部的各点对距离进行评估,该距离是从该点到该特定轮廓的被围绕部分的无否定 符号(negatedunsigned)最小距离。确定围绕该对象的该栅格集合中的最终栅格(260),并将内部重构方法与该最终 栅格相关联(270)。该内部重构方法对轮廓集合102内部的点与轮廓集合102外部的点进 行区分。对于该第一栅格内部的各点,确定组合距离(280)。该确定步骤(280)包括如下步 骤使用外部重构方法确定所述第一栅格的第一距离值(281);对于各边界栅格,使用边界 重构方法确定该边界栅格的边界距离值(282),并从该第一栅格的第一距离值和这些边界 栅格的边界距离值中选择最大距离值(283),以确定位于该第一栅格内部的该点的组合距罔。然后,使用该最终栅格的内部重构方法对该轮廓集合内的各点的组合距离的符号 进行反转(290),以生成对象101的距离场201。一旦生成了对象101的距离场201,就能够将距离场201渲染到显示设备 上以观看对象101。可以使用各种现有技术方法来渲染该距离场201,如美国专利 No.6917369"Method and Apparatus for RenderingCell-based Distance Fields using Texture Mapping,,。应当注意的是,可以使用不同的符号规则(sign convention)在对象101内部的 点与外部的点之间进行区分。例如,对象101外部的点的指定距离值可以是正值,而不是上 文中所述的负值。工作环境本发明可以工作在多种通用或专用计算机系统环境或配置中。适合于本发明使用 的公知计算机系统、环境、和/或配置的例子包含但不限于个人计算机、服务器计算机、手 持或便携式设备、多处理器或多核系统、图形处理单元(GPU)、专用集成电路(ASIC)、现场 可编程门阵列(FPGA)、基于微控制器的系统、机顶盒、可编程消费电子、网络PC、迷你计算 机、大型计算机、包括任一上述系统或设备等(通常是处理器)的分布式计算环境。监视器
5或其他类型的显示设备连接至任一上述系统,以使得能够渲染依据本发明实施方式而生成 的对象101的距离场201。从上述内容可以看出,存在很多并行操作本发明的机会。例如,该外部重构方法、 该边界重构方法、该内部重构方法彼此之间不相关,因此可以利用本发明的硬件和多核实 现来提高生成对象101的场201的性能。作为另一个例子,对特定边界栅格的多个边界距 离值的确定(282)不彼此相关,由此使得能够针对特定边界栅格并行地确定这些边界距离 值(282)。尽管已参照特定最优实施方式说明了本发明,但应当理解的是,在本发明的精神 和范围之内,可以做出各种其他改变或修改。因此,所附权利要求书的目的是涵盖落入本发 明的真实精神和范围之内的所有这种变型和修改。
权利要求
一种用于生成对象的距离场的方法,该距离场包括栅格集合,该对象包括轮廓集合,该方法由计算机执行,该方法包括以下步骤确定围绕所述对象的所述栅格集合中的第一栅格;指定所述对象外部的点的距离值,其中所述对象外部的所述点的所述距离值为负值;将外部重构方法与所述第一栅格相关联,其中所述外部重构方法针对所述第一栅格内部的各点,对所述对象外部的所述点的所指定的距离值进行评估;确定所述栅格集合的边界栅格集合,其中各边界栅格围绕所述轮廓集合中的特定轮廓的一部分;将边界重构方法与各边界栅格相关联,其中所述边界重构方法针对所述边界栅格内部的各点对距离进行评估,该距离是从该点到所述特定轮廓的被围绕部分的无否定符号最小距离;确定围绕所述对象的所述栅格集合中的最终栅格;将内部重构方法与所述最终栅格相关联,其中所述内部重构方法在所述轮廓集合内部的点与所述轮廓集合外部的点之间进行区分;针对所述第一栅格内部的各点,确定组合距离,其中该确定步骤进一步包括以下步骤使用所述外部重构方法确定所述第一栅格的第一距离值;针对各边界栅格,使用所述边界重构方法确定所述边界栅格的边界距离值;和从所述第一栅格的所述第一距离值以及所述边界栅格的所述边界距离值中选择最大距离值,以确定所述第一栅格内部的所述点的所述组合距离;以及使用所述最终栅格的所述内部重构方法,反转所述轮廓集合内部的各点的所述组合距离的符号,以生成所述对象的所述距离场。
2.根据权利要求1所述的方法,该方法进一步包括以下步骤 渲染所述距离场。
全文摘要
本发明涉及生成对象距离场的方法。本发明提供了一种生成对象的距离场的方法,其中所述距离场包括包括栅格集合,所述对象包括轮廓集合,所述方法由计算机执行。确定围绕所述对象的所述栅格集合中的第一栅格。将外部重构方法与所述第一栅格相关联。确定所述栅格集合的边界栅格集合,其中各边界栅格围绕所述轮廓集合中特定轮廓的一部分。将边界重构方法与各边界栅格相关联。确定围绕所述对象的所述栅格集合中的最终栅格。将内部重构方法与所述最终栅格相关联。使用该外部和边界重构方法确定组合距离,该组合距离进一步被所述内部重构方法处理以生成所述对象的所述距离场。
文档编号G06T11/00GK101853645SQ201010155480
公开日2010年10月6日 申请日期2010年2月21日 优先权日2009年3月31日
发明者罗纳德·N·佩里, 莎拉·F·福斯肯 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1