数字墨水的平滑和GPU使能的渲染制造技术

技术编号:15396950 阅读:83 留言:0更新日期:2017-05-19 11:28
提供了用于墨水笔画输入的高效实时墨水笔画平滑、轨迹预测和借力GPU的渲染的系统、方法和计算机可读存储介质。接收第一和第二墨点,并且基于此来计算现行的贝塞尔逼近。在时间上按顺序晚于第一和第二墨点地接收第三墨点。确定第三墨点是否充分拟合现行的贝塞尔逼近。在确定第三墨点充分拟合的情况下,计算包括第一、第二和第三墨点的更新的现行的贝塞尔逼近。在确定第三墨点未能充分拟合的情况下,计算包括第三墨点但不包括第一和第二墨点的不同的新贝塞尔逼近。借力GPU,渲染基于(多个)贝塞尔逼近的经平滑的墨水笔画。

Smoothing of digital ink and rendering of GPU rendering

A system, method, and computer-readable storage medium for efficient real-time ink stroke smoothing, track prediction, and leveraging GPU rendering are provided for ink stroke input. The first and second ink points are received, and the current Bessel approximation is calculated based on the first and the second. Receive third ink dots in time after the first and second ink points in sequence. Determines whether the third ink points are adequately fitted by the existing Bessel approximation. When the third ink point is fully fitted, the updated Bessel approximation of the first, second, and third ink points is computed. In the case that the third ink point fails to be adequately fitted, different new Bessel approximations including third ink points but excluding the first and second ink points are calculated. Leveraging GPU, rendering smooth ink strokes based on (multiple) Bessel approximations.

【技术实现步骤摘要】
【国外来华专利技术】数字墨水的平滑和GPU使能的渲染
技术介绍
“数字墨水”是指从输入工具记录的一个或多个笔画(stroke),输入工具是诸如鼠标、数字化器图形输入板上的触笔/笔、电容式触摸数字化器上的电容式触笔或电容性物体(例如,手指),或者在与数字化器图形输入板——其可以使用或可以不使用触敏显示屏——集成的显示屏上的触笔/笔。当在本文中使用时,术语“墨水”与“数字墨水”可互换地使用并且是指“数字墨水”。另外,术语“笔”和/或“触笔”一般地且可互换地用于指代任何类型的输入工具。每个笔画可被存储为一个或多个墨点,并且每个墨点可以包含各种属性,包括(仅作为示例)压力、倾斜、方位角和对应于输入工具的位置的坐标(x,y)。例如,用户可以沿着计算机系统的触敏显示屏移动笔以便绘制直线或曲线,并且当用户移动输入工具时,计算机系统可以随着时间(或在本领域技术人员已知的任何其它间隔上)而沿着输入工具尖端位置的轨迹采样坐标(x,y)。这些坐标表示沿着由用户输入的曲线或直线的点,并且在本文中被称为“墨点(inkpoint)”。
技术实现思路
提供本概要以便以简化的形式介绍概念的选择,这些概念将在以下的详细说明中进一步描述。本概要既不打算标识所要求保护的主题的关键特征或必要特征,也不打算用于帮助确定所要求保护的主题的范围。在各种实施例中,提供了用于高效实时墨水笔画平滑和轨迹预测的系统、方法和计算机可读存储介质。接收至少包括第一和第二墨点的多个墨点。至少基于第一和第二墨点(精确量至少部分地在相对于随后接收的墨点获得充分拟合(adequatefit)时确定,如下面更全面描述的),计算现行的贝塞尔逼近(activeBézierapproximation)。在时间上接续于第一和第二墨点地,接收第三墨点,并且确定第三墨点是否充分拟合现行的贝塞尔逼近。如果确定在渲染时用户将不能检测到第三墨点与现行的贝塞尔逼近之间的差异,则确定第三墨点充分拟合现行的贝塞尔逼近。这样的确定通常基于预定的阈值差值。如果确定第三墨点充分拟合现行的贝塞尔逼近,则现行的贝塞尔逼近被更新成包括第三墨点。然而,如果确定第三墨点未充分拟合现行的贝塞尔逼近,则终止现行的贝塞尔逼近并且计算新的贝塞尔逼近。与笔画接收表面(例如,触敏显示屏)相关联地渲染(render)包括第一、第二和第三墨点的经平滑的墨水输出。本专利技术的实施例提供了即使在显著的缩放级别(例如,200-400%的缩放级别)下在笔画输入期间和之后看起来仍平滑的数字墨水输入。本专利技术的实施例还提供用于数字墨水笔画的平滑和渲染,使得用户在笔画输入或后笔画(post-stroke)期间基本上不会感觉到基于平滑的对笔画的改变。更进一步地,根据本专利技术的实施例,渲染等待时间不增加,并且经常通过使用本文下面进一步描述的预测技术来被减少。在考虑以下的详细说明后,本专利技术的这些和其它特征将是显而易见的。根据本说明书,对相关
的技术人员而言将显而易见的是,可以将本专利技术的各方面的可替换组合(不管是单独地还是与本文定义的步骤的一个或多个元素组合地)用作为本专利技术的修改或更改,或者作为本专利技术的一部分。本文所包含的对本专利技术的书面描述旨在覆盖这样的修改和更改。附图说明当结合附图阅读时前述的概要以及下面的详细说明被更好地理解,附图是作为示例而不是作为对于所要求保护的实施例的限制来包括的。在附图中,单元用参考标号来标注,其中三位数字的参考标号的第一位数字和四位数字的参考标号的前两个数字指示该单元在其中被首次图示的附图编号。不同附图中的相同参考标号是指相同或相似的单元。图1是适合用于实现本专利技术实施例的示范性计算环境的框图;图2是其中可以采用本专利技术的实施例的示范性计算系统的框图;图3是示出根据本专利技术的实施例的、可以产生的C0连续样条的示范性“差的”伪像(artifact)的示意图;图4是示出根据本专利技术的实施例的、可以由C1连续拟合器产生的示范性摆动行为(wobblybehavior)的示意图;图5是示出根据本专利技术的实施例的、没有图4所示的摆动行为的示范性连续样条的示意图;图6是示出根据本专利技术的实施例的、用于五点提前预测的示范性预测、实现和误差向量的示意图;图7是图示根据本专利技术的实施例的、墨水笔画的一段的示意图;图8是示出根据本专利技术实施例的、用于渲染墨水的示范性方法的流程图;图9是图示根据本专利技术实施例的、实例镶嵌(tessellation)的示范性实现的示意图;图10是图示根据本专利技术实施例的、实例镶嵌的另一示范性实现的示意图;图11是根据本专利技术实施例的、两个相邻墨点(假设M是单位矩阵)的示意图;图12是图示根据本专利技术实施例的、围绕P(i+1)的特写(close-up)(假设TopOrBottom=0,StartOrEnd=1,且M是单位矩阵)的示意图;图13是图示围绕P+D的图12的一部分的特写(假设TopOrBottom=0,StartOrEnd=1,且M是单位矩阵)的示意图;图14是图示根据本专利技术实施例的、用于平滑数字墨水输入的示范性方法的流程图;图15是图示根据本专利技术的实施例的、用于平滑和渲染数字墨水输入的示范性方法的流程图;和图16是图示根据本专利技术的实施例的、用于平滑和渲染数字墨水输入的另一示范性方法的流程图。具体实施方式用本文的特异性描述本专利技术的主题以满足法定要求。然而,描述本身不打算限制本专利的范围。相反,专利技术人已经设想到所要求保护的主题还可以以其他方式来具体化,以便结合其他现有或未来的技术,而包括与本文档中描述的步骤类似的不同步骤或步骤的组合。此外,尽管术语“步骤”和/或“框”在本文可以用来意指所采用的方法的不同单元,但是除非且除了在明确描述各个步骤的顺序时,否则这些术语不应被解释为暗示本文公开的各种步骤之中或之间的任何特定顺序。数字墨水的渲染受到许多问题的困扰,问题包括:在缩放操作期间墨水不是平滑的而是具有阶梯状外观、等待时间增加(例如,由于高速缓存和/或后笔画平滑和渲染),以及当笔或其他输入工具从接收表面脱开(release)(即,后笔画)时墨水颜色或其它外观特性的改变。本文所描述的技术的各个方面总地针对用于高效实时的墨水笔画平滑、轨迹预测和借力GPU(图形处理单元)的渲染的系统、方法和计算机可读存储介质。当各个墨点被数字化时,接收至少包括第一和第二墨点的多个墨点。基于至少第一和第二墨点,计算现行的贝塞尔逼近。如本领域技术人员将理解的,贝塞尔逼近或曲线是在图形渲染中经常被用于对平滑曲线建模的参数曲线。当在本文中使用时,如果贝塞尔逼近是最新近接收和处理的墨点(在本实例中,是第二墨点)所属的曲线或逼近,则认为该贝塞尔逼近是“现行的”。在现行的贝塞尔逼近中使用的墨点的确切量至少部分地取决于针对随后接收的墨点获得充分拟合。也就是说,可以为了拟合的目的而累积N个墨点,其中N的值持续增长,直到不再可能有适当的拟合为止,正如下面更全面地描述的。在时间上相对于第一和第二墨点按顺序更晚地接收第三墨点,并且确定第三墨点是否充分拟合现行的贝塞尔逼近。如果确定在渲染时用户将不能检测到第三墨点与现行的贝塞尔逼近之间的差异,则确定第三墨点充分拟合现行的贝塞尔逼近。这样的确定通常基于预定的阈值差值,例如10个himetric(0.001cm)单位(0.1mm)。如果确定第三墨点充本文档来自技高网
...
数字墨水的平滑和GPU使能的渲染

【技术保护点】
一种由至少包括一个处理器的一个或多个计算设备执行的方法(1400),所述方法用于平滑数字墨水输入,所述方法包括:接收(1410)第一墨点;接收(1412)第二墨点;至少基于所述第一和第二墨点计算(1414)现行的三次贝塞尔逼近;接收(1416)第三墨点;确定(1418)所述第三墨点是否充分拟合所述现行的三次贝塞尔逼近;和使用至少所述第一、第二和第三墨点计算(1420)新的三次贝塞尔逼近。

【技术特征摘要】
【国外来华专利技术】2014.09.15 US 14/4867351.一种由至少包括一个处理器的一个或多个计算设备执行的方法(1400),所述方法用于平滑数字墨水输入,所述方法包括:接收(1410)第一墨点;接收(1412)第二墨点;至少基于所述第一和第二墨点计算(1414)现行的三次贝塞尔逼近;接收(1416)第三墨点;确定(1418)所述第三墨点是否充分拟合所述现行的三次贝塞尔逼近;和使用至少所述第一、第二和第三墨点计算(1420)新的三次贝塞尔逼近。2.根据权利要求1所述的方法,其中在确定所述第三墨点确实充分拟合所述现行的三次贝塞尔逼近后,计算新的三次贝塞尔逼近包括:更新所述现行的三次贝塞尔逼近。3.根据权利要求1所述的方法,其中在确定所述第三墨点未充分拟合所述现行的三次贝塞尔逼近后,计算新的三次贝塞尔逼近包括:终止所述现行的三次贝塞尔逼近并发起另一三次贝塞尔逼近。4.如权利要求3所述的方法,还包括确定是否存在一个或多个预期的尖突,其中C1连续性在没有检测到预期的尖突...

【专利技术属性】
技术研发人员:S博纳奇纳A尤泽拉奇AB霍奇斯D阿布扎里安F苏MM科亨AJR霍兹顿
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1