对数字笔划群组的直观选择的制作方法

文档序号:15884363发布日期:2018-11-09 18:34阅读:127来源:国知局
对数字笔划群组的直观选择的制作方法

各种类型的计算设备和各种软件应用实现“着墨”输入,其中,用户通过多个笔划输入(有时被称为数字墨水)编写文本或绘图。例如,一些计算设备经由自然用户界面输入方法(例如,触摸、手势)、经由手写输入设备(例如,数字笔或触笔)或通过鼠标指针、触摸板指针等的移动来接受笔划输入。

计算机和软件用户已经变得习惯于提供直观的图形用户界面和准确且高效的用户体验的、用户友好的软件应用。例如,软件应用的、熟悉指针交互的大多数用户已经开始期望选择输入(例如,双击、双敲等)将选择在屏幕上显示的指针下或触摸屏上的触摸点下显示的对象。因此,当与数字笔划交互时,用户可能期望由多个数字笔划形成的文本或在绘图对象上或附近的双击或双敲将引起对文本或绘图对象的选择而不是对文本或绘图对象内的个别笔划的选择。



技术实现要素:

提供本概括是为了以简化的形式介绍对构思的选择,所述构思将在下面的详细描述部分中被进一步描述。本概括不旨在确定所要求保护的主题的关键特征或必要特征,也不旨在帮助确定所要求保护的主题的范围。各方面指向一种用于提高用于选择数字笔划群组的准确度和计算机效率的设备、方法和计算机可读介质。用户经由“着墨”或数字笔划输入绘制文本或绘图,并在计算设备的屏幕上显示的数字笔划上或附近做出选择手势。作为响应,就数字笔划是否是(例如,经由墨水分析或通过用户的手动成组而成组的)现有的或预定义的数字笔划组的部分进行确定。当数字笔划不是现有或预定义组的部分时,执行对计算的边界内的该数字笔划和其他笔划的分析,以确定哪些笔划是相关的并且应当被包括在笔划群组中。基于该确定来生成包括数字笔划的笔划群组。因此,响应于在数字笔划上或附近的选择手势,选择被扩展以包括笔划群组,从而提高了选择手势的准确度并提高了计算机效率。

示例被实现为计算机过程、计算系统或诸如设备、计算机程序产品或计算机可读介质之类的制品。根据一方面,计算机程序产品是可由计算机系统读取并且对用于执行计算机过程的指令的计算机程序进行编码的计算机存储介质。

在下面的附图和描述中阐述了一个或多个方面的细节。通过阅读以下详细描述和审阅相关附图,其他特征和优点将是显而易见的。应当理解,以下详细描述仅是解释性的,而不是对权利要求的限制。

附图说明

并入本公开内容中并构成本公开内容的一部分的附图示出了各个方面。在附图中:

图1是对包括笔划群组选择系统的示例性操作环境的表示的框图,所述笔划群组选择系统用于提供自动化的数字笔划成组以提高选择准确度并提高计算机效率。

图2a是对显示由多个数字笔划组成的单词的示例性图形用户界面的图示;

图2b是对图2a的示例性图形用户界面的图示,所述图2a显示对体现为单词的笔划群组的选择;

图3a是对显示由多个数字笔划组成的绘图对象的示例性用户界面的图示;

图3b是对图3a的示例性图形用户界面的图示,所述图3a显示对体现为涂鸦的笔划群组的选择;

图4a是对显示由多个数字笔划组成的绘图对象的示例性用户界面的图示;

图4b是对图4a的示例性图形用户界面的图示,所述图4a显示对体现为平面图中的桌子的笔划群组的选择;

图5a是对显示由多个数字笔划组成的单词和绘图对象的示例性用户界面的图示;

图5b是对图5a的示例性图形用户界面的图示,所述图5a显示对体现为地图上的单词的笔划群组的选择;

图6a是对显示由多个数字笔划组成的字符对象的示例性用户界面的图示;

图6b是对图6a的示例性图形用户界面的图示,所述图6a显示对体现为远东字符的笔划群组的选择;

图7a是示出了用于提高选择数字笔划群组的准确度和计算机效率的示例性方法中涉及的一般阶段的流程图;

图7b是示出生成笔划群组的一种示例性方法中涉及的一般阶段的流程图;

图8是示出计算设备的示例性物理组件的框图;

图9a和图9b是移动计算设备的框图;以及

图10是分布式计算系统的框图。

具体实施方式

以下详细描述参考了附图。在附图中尽可能使用相同的附图标记,并且以下描述提及相同或相似的元素。虽然示例可以被描述,但是修改、改编和其他实施方式是可能的。例如,可以对附图中示出的元素进行替换、添加或修改,并且可以通过将阶段替换、重新排序或添加到所公开的方法来修改本文描述的方法。因此,以下详细描述不是限制性的,而是适当的范围由所附权利要求定义。示例可以采用硬件实施方式或完全软件实施方式的形式,或者组合软件和硬件方面的实施方式。因此,以下详细描述不应当被认为具有限制意义。

本公开内容的各方面指向一种用于自动化的数字笔划成组以提高选择准确度并提高计算机效率的方法、系统和计算机存储介质。当用户经由触摸屏或笔工具输入(即,“着墨”输入)绘图或文本,并且字符或绘图的笔划已经被选择时,数字笔划选择系统计算地检查“着墨输入”以确定所选择的笔划附近的其他笔划如何与所选择的笔划相关以及如何彼此相关。数字笔划选择系统操作以基于确定的关系来生成笔划群组。因此,在选择了与一个或多个其他笔划编程地或手动地成组的笔划时,选择被扩展以包括一个或多个成组的笔划。

现在参考图1,示出了与数字笔划选择系统116通信的一个示例性环境100的框图。如所示,示例性环境包括计算设备102。图1中示出的计算设备102被示出为移动计算设备(例如,平板计算机或移动通信设备);然而,应当领会,计算设备102可以是用于执行应用108以执行各种任务的各种类型的计算设备之一(例如,平板计算设备、桌上型计算机、移动通信设备、膝上型计算机、膝上型/平板混合计算设备、大屏幕多点触摸显示器、游戏设备、智能电视、可穿戴设备或其他类型的计算设备)。关于图8、图9a和图9b更详细地讨论了这些计算设备的硬件。

用户110可以使用计算设备102上的应用108以用于各种任务,其可以包括例如编写、计算、绘制、记录和组织笔记、准备和组织演示、发送和接收电子邮件、制作音乐等等。应用108可以包括可以本地地存储在计算设备102上的胖客户端应用108,或者可以包括驻留在远程服务器上并且可在诸如互联网或内联网之类的网络上访问的瘦客户端应用108(即,网络应用)。瘦客户端应用108可以被托管在浏览器控制的环境中,或者以浏览器支持的语言编码,并且依赖于普通网络浏览器以使应用108可在计算设备102上执行。根据一方面,应用108是由操作系统启动和操纵的程序,并且管理电子文档114内的并在显示屏104上发布的内容112。

电子文档114中的内容112可以根据用于提供电子文档114的程序而不同。内容112可以包括存在于或嵌入在电子文档114中的一个或多个对象,包括但不限于:文本(包括文本容器)、数字数据、宏、图像、电影、声音文件和元数据。根据一个示例,内容112包括多个数字笔划(有时在本文中被称为“着墨”输入),其中,笔划是从诸如平板笔、手指或鼠标之类的指向设备收集的数据对象。笔划可以被编程地创建和操纵,并且可以在支持墨水的元素(例如,墨水画布)上被视觉地表示。在一些示例中,笔划包含关于其位置和外观二者的信息。

在各个方面中,包括内容112的数据由电子文档114以元素形式存储,例如以可扩展标记语言(xml)或java脚本对象表示法(json)元素或可由模式解释的另一声明性语言。模式可以经由标签定义部分或内容项,并且可以经由直接指派或层级继承将各种属性应用于内容项。例如,包括文本的对象可以在其元素定义中定义其字型(例如,“<texttypeface=garamond>exampletext</text>”),或者由样式表或元素所依赖的文档层级中对象上方的元素定义。

仍然参考图1,应用108包括数字笔划选择系统116或与之通信,所述数字笔划选择系统116操作以提供自动化的数字笔划成组和数字笔划群组选择。在一个示例中,计算设备102包括笔划成组应用编程接口(api),所述api操作以使应用108能够经由存储的指令采用自动化的数字笔划成组和对数字笔划群组的选择。

根据各方面,数字笔划选择系统116包括:输入管理器120,其操作以接收图形用户界面上的位置处的选择输入,并找到距该位置最近的数字笔划;数字笔划分析器122,其操作以确定数字笔划是否被包括在笔划群组中;群组生成器124,其操作以分析数字笔划周围的计算的区域中的笔划以识别应当与数字笔划成组的笔划,并且生成包括数字笔划和所识别的笔划的笔划群组;以及ui引擎126,其操作以更新用户界面以显示笔划群组在选定状态下。

输入管理器120示出了操作以接收选择输入的软件模块、系统或设备。根据各方面,选择输入包括在被解释为选择交互的、用户控制的光标(例如,触摸屏界面上的鼠标光标或触摸点)的位置处的在输入设备106(例如,手指、笔/触笔、鼠标)上执行的或由所述输入设备106执行的物理动作或运动。根据示例,输入设备106是用于指定图形用户界面(gui)上的位置(例如,x坐标、y坐标)并操纵屏幕上对象的指向设备。选择输入的非限制性示例包括针对触摸设备或触摸板设备的手指的轻敲或双敲、用鼠标左键单击或左键双击、用笔/触笔轻敲或双敲等等。

根据各方面,输入管理器120操作以接收选择输入,识别用户控制的光标(例如,鼠标光标或触摸点)的位置,并且确定最近的数字笔划。在一个示例中,输入管理器120使用命中测试方法来确定是否有任何笔划对象在光标位置的预定半径内。在另一示例中,输入管理器120使用最近点方法来确定笔划对象的距光标位置的最近点。当确定最近的数字笔划时,输入管理器120还操作以与数字笔划分析器122交换最近的数字笔划。最近的数字墨水笔划在本文中被称为第一笔划。

根据一方面,数字笔划分析器122示出了操作以确定由输入管理器120识别的第一笔划是否是笔划群组的部分的软件模块、系统或设备。例如,作为墨水分析的结果,笔划对象可以是笔划群组的部分,其中,“着墨”输入被计算地划分成语义上有意义的单元,例如段落、行、单词和绘图对象。作为另一示例,作为用户110对笔划对象的手动成组的结果,笔划对象可以是笔划群组的部分。当确定第一笔划是现有笔划群组的部分时,数字笔划分析器122操作以与ui引擎126交换笔划群组。

当第一笔划未被确定为现有笔划群组的部分时,示出软件模块、系统或设备的群组生成器124操作以识别应当与第一笔划成组的笔划对象,并且生成包括第一笔划和所识别的笔划对象的笔划群组。根据各方面,群组生成器124操作以计算用于确定笔划对象是否应当被分组在另一笔划对象内的边界。

在一个示例中,为了计算边界,群组生成器124通过定义第一笔划周围的范围测试区域并计算范围测试区域内的笔划对象的平均边界框宽度和高度来确定平均笔划范围(即,典型笔划的宽度和高度)。范围测试区域可以被定义为足够尺寸的以包括足够的笔划对象,使得当在范围测试区域内获取平均笔划范围时,异常值(例如,i和j上的点、t的交叉条以及字母上方或下方的变音符号、下划线等)将被平均化。在一个示例中,范围测试区域是四乘四英寸的正方形。如可以领会的,范围测试区域可以是各种尺寸,并且可以取决于gui在其上被显示的屏幕104的尺寸。

群组生成器124还操作以基于计算的平均笔划宽度和高度来计算采样区域的边界。例如,群组生成器124可以确立单词或绘图对象将与其水平邻居分开大于或等于平均笔划宽度的二分之一的空间,并且与其垂直邻居分开等于平均笔划高度的四分之一的空间。因此,定义采样区域以用于收集采样区域内的笔划对象以添加到笔划群组。

在一个示例中,群组生成器124定义矩形采样区域,其垂直边界是在第一笔划上方和下方所计算的平均笔划高度的四分之一,并且其水平边界在距第一笔划所计算的平均笔划宽度的二分之一处开始。

在定义的采样区域内,群组生成器124操作以分析采样区域以确定是否有任何笔划对象位于采样区域中。在一个示例中,当笔划对象的任何部分与采样区域相交时,笔划对象被确定位于采样区域中。在另一示例中,当笔划对象的定义的百分比与采样区域相交时,笔划对象被确定位于采样区域中,其中,定义的百分比基于计算的平均笔划范围。

当笔划对象被确定位于采样区域中时,笔划对象被添加到包括第一笔划的笔划群组。每次进行对在采样区域内找到笔划对象的肯定确定时,群组生成器124扩展采样区域以确定另外的笔划对象是否应当被包括在笔划群组中。在一个示例中,群组生成器124水平地扩展采样区域,以确定另外的笔划对象是否应当被包括在笔划群组中,直到采样区域扩展到画布的边缘为止。例如,采样区域的宽度水平扩展所计算的平均笔划宽度的二分之一,并且扩展的采样区域被分析以确定是否有另外的笔划对象位于扩展的采样区域中。

当做出否定确定时(即,另外的笔划对象不被包括在采样区域中)或者当采样区域已经扩展到画布的边缘时,群组生成器124操作以垂直扩展采样区域以进行对采样区域的另一分析。在一个示例中,采样区域的高度垂直扩展所计算的平均笔划高度的四分之一。群组生成器124操作以重复采样区域扩展和分析,直到没有另外的笔划对象被识别并被添加到笔划群组为止。当没有另外的笔划对象被识别时,笔划群组被定义并且包括由群组生成器124收集的第一笔划和笔划对象。根据示例,笔划群组是被确定为相互关联的笔划对象(例如,字符、单词或绘图对象的部分)的集合。群组生成器124还操作以与ui引擎126交换笔划群组。

ui引擎126示出了操作以在由墨水分析预定义的笔划群组或手动成组的情况下从群组生成器124或从数字笔划分析器122接收笔划群组,并且更新gui以显示笔划群组在选定状态下的软件模块、系统或设备。例如,显示笔划群组在选定状态下可以包括在笔划群组周围显示选择轮廓、高亮笔划群组或者提供对笔划群组的选定状态的另一视觉指示。

图2a、图3a、图4a、图5a和图6a示出了当选择数字笔划时从用户的角度看到的示例性图形用户gui,并且图2b、图3b、图4b、图5b和图6b示出了在数字笔划自动与其他笔划中的多者成组为笔划群组并且gui被更新以显示笔划群组在选定状态下之后从用户的角度看到的示例性gui。示出的gui200、300、400、500、600对应于笔记记录应用108,其中,用户110与画布202进行交互以提供“着墨”输入并且以提供用于选择数字笔划的自动成组的集合的选择输入。如将领会的,可以结合本公开内容使用具有不同元素及其布置的其他gui;本文给出的示例是非限制性的说明。

现在参考图2a,示出了包括画布202的示例性gui200,在所述画布202上用户110已经提供了“着墨”输入,并且在其上用户110被示出经由输入设备106提供选择输入204。如所示,选择输入204经由数字笔/触笔在类似于字母“m”的笔划对象206附近做出。如以上描述的,响应于接收到选择输入204,数字笔划选择系统116执行分析以确定最近的数字笔划,其在图2a所示的示例中是类似于字母“m”的笔划对象206。另外,数字笔划选择系统116执行分析以确定和选择被认为是群组(例如,单词)的部分的附近笔划的集合。

现在参考图2b,在分析和成组被执行之后,数字笔划选择系统116更新gui200以显示包括第一笔划(即,笔划对象206)的确定的笔划群组208在选定状态下。例如,在示出的示例中,确定的笔划群组208包括形成单词“hermano”中的字符的多个笔划。如所示,选择轮廓210被示出为显示在笔划群组208周围,其中,用户110被使得能够与选择轮廓210交互以操纵笔划群组208。

现在参考图3a,示出了包括画布202的示例gui300,在所述画布202上用户110已经提供了“着墨”输入并且在其上用户110被示出经由输入设备106提供选择输入204。如所示,选择输入204是经由用户的手指在触摸屏上的在体现为树的涂鸦(绘图对象)的线的笔划对象206附近的触摸输入做出的。如以上描述的,响应于接收到选择输入204,数字笔划选择系统116执行分析以确定最近的数字笔划。另外,数字笔划选择系统116执行分析以确定和选择被认为是绘图对象的部分的附近笔划的集合。

现在参考图3b,在分析和成组被执行之后,数字笔划选择系统116更新gui300以显示包括第一笔划(即,笔划对象206)的确定的笔划群组208在选定状态下。例如,在示出的示例中,确定的笔划群组208包括形成树的涂鸦(绘图对象)的多个笔划。如所示,选择轮廓210被示出为显示在笔划群组208周围,其中,用户110被使得能够与选择轮廓210进行交互以操纵笔划群组208。

现在参考图4a,示出了包括画布202的示例性gui400,在所述画布202上用户110已经提供了“着墨”输入,并且在其上用户110被示出经由输入设备106提供选择输入204。如所示,选择输入204是经由鼠标光标在体现为平面图中的桌子的绘图的线的笔划对象206附近做出的。如以上描述的,响应于接收到选择输入204,数字笔划选择系统116执行分析以确定最近的数字笔划。另外,数字笔划选择系统116执行分析以确定和选择被认为是绘图对象的部分的附近笔划的集合。

现在参考图4b,在分析和成组被执行之后,数字笔划选择系统116更新gui400以显示包括第一笔划(即,笔划对象206)的确定的笔划群组208在选定状态下。例如,在示出的示例中,确定的笔划群组208包括形成平面图中的桌子和椅子的绘图的多个笔划。如所示,选择轮廓210被示出为显示在笔划群组208周围,其中,用户110被使得能够与选择轮廓210进行交互以操纵笔划群组208。

现在参考图5a,示出了包括画布202的示例性gui500,在所述画布202上用户110已经提供了“着墨”输入,并且在其上用户110被示出为经由输入设备106提供选择输入204。如所示,选择输入204是经由用触笔或数字笔在类似于字母“g”的笔划对象206附近触摸触摸屏而做出的。如以上描述的,响应于接收到选择输入204,数字笔划选择系统116执行分析以确定最近的数字笔划。另外,数字笔划选择系统116执行分析以确定和选择被认为是群组(例如,单词)的部分的附近笔划的集合。

现在参考图5b,在分析和成组被执行之后,数字笔划选择系统116更新gui500以显示包括第一笔划(即,笔划对象206)的确定的笔划群组208在选定状态下。例如,在示出的示例中,确定的笔划群组208包括形成单词“guatemala”中的字母的多个笔划。如所示,选择轮廓210被示出为显示在笔划群组208周围,其中,用户110被使得能够与选择轮廓210进行交互以操纵笔划群组208。

现在参考图6a,示出了包括画布202的示例性gui600,在所述画布202上用户110已经提供了“着墨”输入,并且在其上用户110被示出为经由输入设备106提供选择输入204。如所示,选择输入204是经由用户的手指在触摸屏上体现为远东字符(锄)的笔划的笔划对象206附近的触摸输入做出的。如以上描述的,响应于接收到选择输入204,数字笔划选择系统116执行分析以确定最近的数字笔划。另外,数字笔划选择系统116执行分析以确定和选择被认为是群组的部分的附近笔划的集合,例如字符。

现在参考图6b,在分析和成组被执行之后,数字笔划选择系统116更新gui600以显示包括第一笔划(即,笔划对象206)的确定的笔划群组208在选定状态下。例如,在示出的示例中,确定的笔划群组208包括形成远东字符的多个笔划。如所示,选择轮廓210被示出为显示在笔划群组208周围,其中,用户110被使得能够与选择轮廓210进行交互以操纵笔划群组208。

已经描述了示例性操作环境100、数字笔划选择系统116的各种组件以及各种gui示例,图7a是示出用于在选择数字笔划群组时提高准确度和计算机效率的示例性方法700中涉及的一般阶段的流程图。现在参考图7a,方法700在开始操作702处开始,并前进到操作704,其中,“着墨”输入从输入设备106(例如,平板笔、手指或鼠标)收集,并且多个数字笔划被创建并在gui中显示的画布202上被视觉地表示(即,显示)。

方法700前进到操作706,其中,对选择输入的指示被接收。例如,物理动作或运动选择性地在用户控制的输入设备106(例如,手指、笔/触笔、鼠标)上或由所述输入设备106在光标(例如,触摸屏界面上的鼠标光标或触摸点)的位置处进行,并被解释为选择交互。例如,用户110可以在触摸屏或触摸板设备上轻敲或双敲手指、左键点击或左键双击鼠标按钮、用笔/触笔在触摸屏上轻敲或双敲等等。

方法700前进到操作708,其中,距用户控制的光标(例如,鼠标光标或触摸点)的位置最近的数字笔划被确定,并且被传递到数字笔划分析器122。如以上描述的,在一个示例中,命中测试方法用于确定是否有任何笔划对象在光标位置的预定半径内。在另一示例中,最近点方法用于确定笔划对象206中的距光标位置的最近点。如果在距用户控制的光标给定距离内没有找到笔划,则确定用户正在尝试执行与现有数字墨水无关的选择输入(例如,创建新的文本位置、选择非墨水对象),并且方法700可以在操作798处结束。

当最近的数字笔划206被找到时,方法700前进到决策操作710,其中,就最近的数字笔划206(即,第一笔划)是否是例如先前经由墨水分析或通过用户110手动成组的而成组的现有或预定义笔划群组208的部分进行了确定。当进行关于第一笔划(最近的数字笔划206)不是现有笔划群组208的部分的确定时,方法700继续操作712,其中,分析被执行以直观地将多个笔划成组并选择多个比划。例如,多个笔划被分析以确定笔划是否是字符、单词、绘图对象或其他相互关联的数据集合的部分。此外,在操作712处,包括第一笔划(最近的数字笔划206)和其他确定的相关笔划的笔划群组208被生成。

当做出关于第一笔划(最近的数字笔划206)是现有笔划群组208的部分的肯定确定时,方法700从操作712或从决策操作710继续到操作714,其中,现有笔划群组被选择。

方法700前进到操作716,其中,gui(例如,gui200、300、400、500或600)被更新以显示笔划群组208在选定状态下。例如,gui被更新以将笔划群组208显示为选定对象,用户110被使得能够经由用输入设备106进行的输入执行的交互来操纵所述选定对象。方法700在操作798处结束。

图7b是示出生成笔划群组的一种示例性方法712(来自图7a的操作712)中涉及的一般阶段的流程图。方法712在操作718处开始,并且前进到操作720,其中,平均笔划范围被确定。根据示例,平均笔划范围包括定义的范围测试区域内的笔划的平均宽度和高度,其中,定义的范围测试区域是围绕第一笔划的、预定或计算的尺寸的区域。例如,范围测试区域可以是各种尺寸,并且可以取决于在其上gui被显示的屏幕104的尺寸。

方法712前进到操作722,其中,垂直和水平附近界限基于计算的平均笔划宽度和高度而被计算,其中,附近界限被定义以收集笔划对象以添加到具有第一笔划206的笔划群组208。

在操作724处,初始采样区域被定义,其中,初始采样区域定义其他笔划必须落入其中以便被视为群组的部分的区域。初始采样区域的垂直边界是在第一笔划206上方和下方计算的平均笔划高度的预定义的百分比,并且初始采样区域的水平边界在距第一笔划206计算的平均笔划宽度的预定义的百分比处开始。随着笔划在初始采样区域内被发现,该区域将增长(增加附近界限),直到其到达最大采样区域(即,画布202)的尺寸为止。

方法712继续到操作726,其中,对采样区域的分析被执行以确定是否有任何笔划对象位于采样区域中。在决策操作728处,就一个或多个笔划对象是否位于采样区域中进行了确定。在一个示例中,当笔划对象的任何部分与采样区域相交时,笔划对象被确定为位于采样区域中。在另一示例中,当笔划对象的定义百分比与采样区域相交时,笔划对象被确定位于采样区域中,其中,定义的百分比基于计算的平均笔划范围。

当做出肯定确定时,方法712前进到操作730,其中,被确定为位于由附近界限定义的采样区域中的一个或多个笔划被添加到包括第一笔划206的笔划群组208。方法712继续到操作732,其中,当笔划对象在采样区域内被找到时,采样区域水平扩展(增加水平附近界限),以确定另外的笔划对象是否应当被包括在笔划群组208中,直到采样区域扩展到画布202的边缘为止。在水平扩展采样区域直到到达画布202的边缘或者直到在决策操作728处做出否定确定(即,另外的笔划对象不被包括在采样区域中)为止之后,采样区域垂直扩展(增加垂直附近界限),并且方法712返回到操作726,以对具有新附近界限的采样区域进行另一分析。群组生成器124操作以重复采样区域扩展(732)和分析(726-730),直到没有另外的笔划对象被识别并被添加到笔划群组208为止。当没有另外的笔划对象被识别时,笔划群组208被定义并且包括第一笔划206和由群组生成器124收集的笔划对象。方法712在操作734处结束。

如将领会的,在替代方面中,要沿着对应轴被调整以扩展采样区域的第一附近界限可以是垂直附近界限或水平附近界限,而另一者是要沿着第二对应轴被调整以扩展采样区域的第二附近界限。本领域普通技术人员将领会,可以在替代方面中切换关于方法712的相关轴和界限。

虽然已经在程序模块(其结合在计算机上的操作系统上运行的应用程序而执行)的一般上下文中描述了实施方式,但是本领域技术人员将认识到,各方面也可以组合其他程序模块而被实现。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。

本文描述的方面和功能可以经由多种计算系统来操作,包括但不限于桌上型计算机系统、有线和无线计算系统、移动计算系统(例如,移动电话、上网本、平板计算机或平板型计算机、笔记本计算机以及膝上型计算机)、手持设备、多处理器系统、基于微处理器的或可编程的消费者电子产品、小型计算机和大型计算机。

另外,根据一方面,本文描述的方面和功能在分布式系统(例如,基于云的计算系统)上操作,其中,应用功能、存储器、数据存储和检索以及各种处理功能在分布式计算网络(例如,互联网或内联网)上彼此远程地被操作。根据一方面,经由车载计算设备显示器或经由与一个或多个计算设备相关联的远程显示单元显示各种类型的用户界面和信息。例如,各种类型的用户界面和信息在各种类型的用户界面和信息被投影到其上的墙壁表面上被显示和交互。与实施方式用其被实践的多种计算系统的交互包括击键输入、触摸屏输入、语音或其他音频输入、手势输入,其中,相关联的计算设备配备有用于捕获和解释用于控制计算设备的功能的用户手势的检测(例如,相机)功能单元等。

图8-10和相关联的描述提供了对其中示例被实践的各种操作环境的讨论。然而,关于图8-10示出和讨论的设备和系统是出于示例和说明的目的的,而不是对用于实践本文描述的各方面的大量计算设备配置进行限制。

图8是示出计算设备800的物理组件(即,硬件)的框图,用所述计算设备800本公开内容的示例被实践。在基本配置中,计算设备800包括至少一个处理单元802和系统存储器804。根据一方面,取决于计算设备的配置和类型,系统存储器804包括但不限于易失性存储装置(例如,随机存取存储器)、非易失性存储装置(例如,只读存储器)、闪速存储器或这样的存储器的任何组合。根据一方面,系统存储器804包括适合于运行软件应用850的操作系统805和一个或多个程序模块806。根据一方面,系统存储器804包括数字笔划选择系统116。例如,操作系统805适合于控制计算设备800的操作。此外,各方面结合图形库、其他操作系统或任何其他应用程序而被实践,并且不限于任何特定应用或系统。该基本配置在图8中由虚线808内的那些组件示出。根据一方面,计算设备800具有另外的特征或功能。例如,根据一方面,计算设备800包括另外的数据存储设备(可移除和/或不可移除的),例如磁盘、光盘或磁带。这样的另外的存储装置在图8中由可移除存储设备809和不可移除存储设备810示出。

如上所述,根据一方面,多个程序模块和数据文件被存储在系统存储器804中。当在处理单元802上执行时,程序模块806(例如,数字笔划选择系统116)执行过程,所述过程包括但不限于图7a、图7b中示出的方法700、712的阶段中的一者或多者。根据一方面,其他程序模块根据示例而被使用,并且包括诸如电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用程序等的应用。

根据一方面,在包括分立电子元件的电路中、包含逻辑门的封装或集成电子芯片中、使用微处理器的电路中或包含电子元件或微处理器的单个芯片上实践各方面。例如,各方面经由片上系统(soc)而被实践,其中,图8所示的组件中的每一组件或许多组件被集成到单个集成电路上。根据一方面,这样的soc设备包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能单元,所有这些单元都被集成(或“烧录”)到芯片衬底上作为单个集成电路。当经由soc操作时,本文描述的功能经由与计算设备800的其他组件集成在单个集成电路(芯片)上的专用逻辑单元而被操作。根据一方面,使用能够执行逻辑运算(例如,与(and)、或(or)和非(not))的其他技术来实践本公开内容的各方面,所述其他技术包括但不限于机械、光学、流体和量子技术。另外,各方面在通用计算机内或任何其他电路或系统中被实践。

根据一个方面,计算设备800具有一个或多个输入设备812,例如键盘、鼠标、笔、声音输入设备、触摸输入设备等。根据一方面,还包括诸如显示器、扬声器、打印机等的输出设备814。上述设备是示例,并且其他设备可以被使用。根据一方面,计算设备800包括允许与其他计算设备818通信的一个或多个通信连接816。合适的通信连接816的示例包括但不限于射频(rf)发射机、接收机和/或收发机电路;通用串行总线(usb)、并行和/或串行端口。

如本文使用的术语计算机可读介质包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构或程序模块之类的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。系统存储器804、可移除存储设备809和不可移除存储设备810都是计算机存储介质示例(即,存储器存储装置)。根据一方面,计算机存储介质包括ram、rom、电可擦除可编程只读存储器(eeprom)、闪速存储器或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光学存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备或可以用于存储信息并且可以由计算设备800访问的任何其他制品。根据一方面,任何这样的计算机存储介质是计算设备800的部分。计算机存储介质不包括载波或其他传播的数据信号。

根据一方面,通信介质由经调制的数据信号中的计算机可读指令、数据结构、程序模块或其他数据(例如,载波或其他传输机制)来体现,并且包括任何信息递送介质。根据一方面,术语“经调制的数据信号”描述了以对信号中的信息进行编码的方式对一个或多个特性进行设置或改变的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质以及诸如声学、射频(rf)、红外线和其他无线介质之类的无线介质。

图9a和图9b示出了用其可以实现各方面的移动计算设备900,例如移动电话、智能电话、平板个人计算机、膝上型计算机等。参考图9a,示出了用于实现各方面的移动计算设备900的示例。在基本配置中,移动计算设备900是具有输入元素和输出元素二者的手持式计算机。移动计算设备900通常包括显示器905和一个或多个输入按钮910,其允许用户将信息输入到移动计算设备900中。根据一方面,移动计算设备900的显示器905充当输入设备(例如,触摸屏显示器)。如果被包括,则可选的侧输入元素915允许另外的用户输入。根据一方面,侧输入元素915是旋转开关、按钮或任何其他类型的手动输入元素。在替代示例中,移动计算设备900包含更多或更少的输入元素。例如,在一些示例中,显示器905可以不是触摸屏。在替代示例中,移动计算设备900是便携式电话系统,例如蜂窝电话。根据一方面,移动计算设备900包括可选的按键板935。根据一方面,可选的按键板935是物理按键板。根据另一方面,可选的按键板935是在触摸屏显示器上生成的“软”按键板。在各个方面中,输出元素包括用于示出图形用户界面(gui)的显示器905、视觉指示器920(例如,发光二极管)和/或音频换能器925(例如,扬声器)。在一些示例中,移动计算设备900包含用于向用户提供触觉反馈的振动换能器。在又一示例中,移动计算设备900包含输入和/或输出端口,例如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,hdmi端口),以用于向外部设备发送信号或从外部设备接收信号。在又一示例中,移动计算设备900包含外围设备端口940,例如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,hdmi端口),用于向外部设备发送信号或从外部设备接收信号。

图9b是示出移动计算设备的一个示例的架构的框图。换言之,移动计算设备900包含用于实现一些示例的系统(即,架构)902。在一个示例中,系统902被实现为能够运行一个或多个应用(例如,浏览器、电子邮件、日历、联系人管理器、消息传送客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些示例中,系统902被集成为计算设备,例如集成的个人数字助理(pda)和无线电话。

根据一方面,一个或多个应用程序950被加载到存储器962中并在操作系统964上或与操作系统964相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(pim)程序、文字处理程序、电子表格程序、互联网浏览器程序、消息传送程序等。根据一方面,数字笔划选择系统116被加载到存储器962中。系统902还包括存储器962内的非易失性存储区域968。非易失性存储区域968用于存储在系统902掉电的情况下不应当丢失的持久信息。应用程序950可以使用非易失性存储区域968中的信息并将信息存储在非易失性存储区域968中,所述信息例如电子邮件或由电子邮件应用使用的其他消息等。同步应用(未示出)也驻留在系统902上,并被编程为与驻留在主计算机上的相应同步应用交互,以使存储在非易失性存储区域968中的信息与存储在主计算机处的相应信息保持同步。如应当领会的,其他应用可以被加载到存储器962中并在移动计算设备900上运行。

根据一方面,系统902具有电源970,其被实现为一个或多个电池。根据一方面,电源970还包括外部电源,例如ac适配器或补充电池或对电池重新充电的电动对接支架。

根据一方面,系统902包括执行发送和接收射频通信的功能的无线单元972。无线单元972经由通信运营商或服务提供商促进系统902与“外界”之间的无线连接。在操作系统964的控制下进行去往和来自无线单元972的传输。换言之,由无线单元972接收的通信可以经由操作系统964散布到应用程序950,反之亦然。

根据一方面,视觉指示器920用于提供视觉通知并且/或者音频接口974用于经由音频换能器925产生可听通知。在示出的示例中,视觉指示器920是发光二极管(led),并且音频换能器925是扬声器。这些设备可以直接耦合到电源970,使得当被激活时,即使处理器960和其他组件可能关闭以节省电池电量,这些设备也在由通知机制指示的持续时间内保持开启。led可以被编程为无限期地保持开启,直到用户采取动作以指示设备的通电状态为止。音频接口974用于向用户提供可听信号并从用户接收可听信号。例如,除了耦合到音频换能器925之外,音频接口974还可以耦合到麦克风以接收可听输入,例如以促进电话交谈。根据一方面,系统902还包括视频接口976,其使得板载相机930的操作能够记录静止图像、视频流等。

根据一方面,实现系统902的移动计算设备900具有另外的特征或功能。例如,移动计算设备900包括另外的数据存储设备(可移除和/或不可移除的),例如磁盘、光盘或磁带。这样的另外的存储装置在图9b中由非易失性存储区域968示出。

根据一方面,由移动计算设备900生成或捕获并经由系统902存储的数据/信息被本地地存储在移动计算设备900上,如以上描述的。根据另一方面,数据被存储在可由设备经由无线单元972或经由移动计算设备900与关联于移动计算设备900的单独计算设备(例如,诸如互联网之类的分布式计算网络中的服务器计算机)之间的有线连接访问的任何数量的存储介质上。如应当领会的,这样的数据/信息是可经由无线单元972或经由分布式计算网络经由移动计算设备900访问的。类似地,根据一方面,根据众所周知的数据/信息传输和存储手段(包括电子邮件和协作数据/信息共享系统),这样的数据/信息在计算设备之间容易地传输以用于存储和使用。

图10示出了如以上描述的用于提供自动化的数字笔划成组以提高选择准确度和提高计算机效率的系统的架构的一个示例。与数字笔划选择系统116相关联地开发、交互或编辑的内容被使得能够被存储在不同的通信信道中或以其他存储类型存储。例如,可以使用目录服务1022、网络门户1024、邮箱服务1026、即时消息传送存储装置1028或社交网站1030来存储各种文档。数字笔划选择系统116操作以使用这些类型的系统或类似物中的任一者,以提供自动化的数字笔划成组以提高选择准确度和提高计算机效率,如本文描述的。根据一方面,服务器1020向客户端1005a、b、c提供数字笔划选择系统116。作为一个示例,服务器1020是在网络上提供数字笔划选择系统116的网络服务器。服务器1020通过网络1040在网络上向客户端1005提供数字笔划选择系统116。作为示例,客户端计算设备被实现并体现在个人计算机1005a、平板计算设备1005b或移动计算设备1005c(例如,智能电话)或其他计算设备中。客户端计算设备的这些示例中的任一者可操作以从存储装置1016获得内容。

例如,以上参考根据各方面的方法、系统和计算机程序产品的框图和/或操作说明描述了实施方式。框中记录的功能/动作可以不按任何流程图所示的次序发生。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时被执行,或者框有时可以以相反的次序被执行。

本申请中提供的对一个或多个示例的描述和说明不旨在以任何方式限制或约束所要求保护的范围。本申请中提供的方面、示例和细节被认为足以传达所有权并使其他人能够制作和使用最佳模式。实施方式不应当被解释为限于本申请中提供的任何方面、示例或细节。无论是组合地还是单独地被示出和描述,各种特征(结构的和方法的二者)旨在选择性地被包括或省略以产生具有特定特征集的示例。已经被提供了本申请的描述和说明,本领域技术人员可以设想落入不脱离更宽范围的、本申请中体现的总体发明构思的更宽方面的精神内的变型、修改和替换示例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1