使用可穿戴计算设备的显示设备的直接操纵
文献发布时间:2023-06-19 12:21:13
背景技术
由显示设备输出的图形用户界面中的对象的直接操纵可能是促进用户与计算机交互的非常自然的方式。直接操纵涉及对已显示的对象起作用(例如,轻敲软按钮、移动滑块、拖动图标)。一些显示设备包括有助于直接操纵的触摸屏。但是,许多公共信息亭、数字桌面、笔记本电脑、电视(例如,在会议室或教室中)都缺乏触摸屏。因此,用户通常需要经由间接操纵来控制这些设备(即,非触摸屏),所述间接操纵包括使用鼠标、键盘或远程指点设备。
发明内容
通常,本公开针对用于利用可穿戴计算设备来促进对由不是存在敏感的显示设备输出的图形用户界面中的对象的直接操纵的技术。例如,与使用鼠标或其他间接操纵工具相反,用户可以在显示设备上四处移动可穿戴计算设备,以便于直接操纵在显示设备处显示的对象。当可穿戴计算设备在显示设备上被移动时,可穿戴计算设备的诸如一个或多个光学传感器和/或一个或多个运动传感器的一个或多个传感器可以生成数据。控制设备(例如,使显示设备输出图形用户界面)可以基于传感器数据来确定可穿戴计算设备在显示设备上的位置。然后,控制设备可以将所确定的可穿戴计算设备的位置用作用户输入,以操纵包括在图形用户界面中的对象。
以这种方式,本公开的技术使用户能够直接操纵由显示设备显示的对象。通过利用可穿戴计算设备的所确定的位置作为用户输入,控制设备可以使得能够实现与不包括触摸屏或其他直接操纵装置的显示设备的更丰富的交互。
作为一个示例,一种方法包括由一个或多个处理器确定在不是存在敏感的显示设备上的可穿戴计算设备的估计位置,其中,可穿戴计算设备被配置成被穿戴在用户的手腕上;使显示设备在估计位置处输出图形图案;由一个或多个处理器基于由可穿戴计算设备的光学传感器生成的光学数据,确定可穿戴计算设备的细化位置;以及由一个或多个处理器,利用可穿戴计算设备的细化位置作为对于经由显示设备输出图形用户界面的应用的用户输入的位置。
作为另一示例,一种控制设备包括一个或多个处理器和包括指令的存储器,该指令当由一个或多个处理器执行时,使一个或多个处理器确定在不是存在敏感的显示设备上的可穿戴计算设备的估计位置,其中,可穿戴计算设备被配置为被戴在用户的手腕上;使显示设备在估计的位置输出图形图案;基于可穿戴计算设备的光学传感器生成的光学数据,确定可穿戴计算设备的细化位置;并且利用可穿戴计算设备的细化位置作为对于经由显示设备输出图形用户界面的应用的用户输入的位置。
作为另一示例,计算机可读存储介质存储指令,所述指令在被执行时,使一个或多个处理器确定在不是存在敏感的显示设备上的可穿戴计算设备的估计位置,其中,可穿戴计算设备被配置成被穿戴在用户的手腕上;使显示设备在估计位置处输出图形图案;基于由可穿戴计算设备的光学传感器生成的光学数据,确定可穿戴计算设备的细化位置;并且利用可穿戴计算设备的细化位置作为对于经由显示设备输出图形用户界面的应用的用户输入的位置。
在附图和以下描述中阐述本公开的一个或多个示例的细节。根据说明书和附图以及根据权利要求书,其他特征、目的和优点将是显而易见的。
附图说明
图1是图示根据本公开的一种或多种技术的系统的系统图,该系统使可穿戴计算设备能够用于促进由显示设备输出的图形用户界面中的对象的直接操纵。
图2是图示根据本公开的一个或多个方面的可穿戴计算设备6的框图,该可穿戴计算设备6可以用于促进对所显示的用户界面组件的直接操纵。
图3是图示根据本公开的一个或多个方面的示例控制设备的框图,该示例控制设备被配置成使可穿戴设备能够用于所显示的图形对象的直接操纵。
图4A至图4F是图示根据本公开的一种或多种技术的示例性位置细化过程的概念图。
图5是图示根据本公开的一种或多种技术的设备的示例性操作的流程图,该设备使可穿戴设备能够用于所显示的图形对象的直接操纵。
图6A-6C是根据本公开的一种或多种技术的可用于全局初始化的示例图形图案。
具体实施方式
图1是图示根据本公开的一种或多种技术的系统的系统图,该系统使可穿戴计算设备能够用于促进由显示设备输出的图形用户界面中的对象的直接操纵。如图1中所示,系统2包括显示设备4、可穿戴计算设备6和控制设备8。
显示设备4可以被配置成显示图形信息以供一个或多个用户查看。显示设备4的示例包括但不限于监视器、电视、背投屏幕或能够显示信息的任何其他设备。显示设备4可以使用任何适当的技术来形成输出图像。示例性图像形成技术包括但不限于液晶显示器(LCD)、激光器、发光二极管(LED)、有机发光二极管(OLED)、等离子体等。
显示设备4可以包括被配置成生成用于显示的图形信息的组件。例如,显示设备4可以是所谓的“智能显示器”。显示设备4可以包括一个或多个输入(例如,有线和无线输入之一或者两者),其能够从外部设备(例如,控制设备8)接收用于显示的图形信息。例如,显示设备4可以包括一个或多个有线输入(例如,高清晰度多媒体接口(HDMI)输入、一个或多个显示端口输入、一个或多个网络连接(例如,WIFI、BLUETOOTH、以太网等)和/或一个或多个数字视频界面(DVI)输入。
控制设备8可以被配置成使显示设备4输出图形信息。例如,控制设备8可以使显示设备4显示包括一个或多个图形对象(例如,按钮、键、滑块等)的图形用户界面。在一些示例中,控制设备8可以被集成到显示设备4中。例如,在显示设备4是“智能显示器”的情况下,控制设备8可以被集成到显示设备4中。在其他示例中,控制设备8可以是显示设备4的外部设备。例如,控制设备8可以经由显示设备4的输入将图形信息输出到显示设备4。作为一个示例,控制设备8可以是插入到显示设备4的HDMI输入中的流传输棒(steaming stick)。作为另一示例,控制设备8可以是移动计算设备(例如,智能电话),并且可以将图形信息无线地流传输到显示设备4。
控制设备8可以包括一个或多个处理器,其可以执行各种计算以支持控制设备8的操作。例如,控制设备8的一个或多个处理器可以执行生成图形用户界面的应用,该控制设备8可能会使其被显示在显示设备4上。
在一些示例中,显示设备4可以包括一个或多个输入组件,该输入组件被配置成使用户能够直接操纵在显示设备4上显示的图形对象。例如,显示设备4可以包括触敏或其他存在敏感面板,该存在敏感面板检测用户在显示设备4上或其附近的移动。在显示设备4包括存在敏感面板的情况下,显示设备4可以将经由存在敏感面板接收到的用户输入的表示输出到控制设备8。例如,显示设备4可以将(x,y)坐标对的流输出到控制设备8,所述坐标对表示显示设备4上的存在敏感面板检测到用户输入的位置。控制设备8可以利用由显示设备4提供的用户输入的表示作为用于在控制设备8处执行的应用的用户输入,该控制设备8正输出在显示设备4处显示的图形用户界面。
如在上面所讨论的,显示的图形对象的直接操纵可能比间接操纵更可取。例如,与间接操纵相比,图形对象的直接操纵对用户而言可能更自然。然而,在一些示例中,显示设备4可以不包括被配置成使用户能够直接操纵在显示设备4处显示的图形对象的任何输入组件。例如,显示设备4可以不是所谓的“触摸屏”,并且可以不被认为是存在敏感显示器。这样,即使显示设备4不是存在敏感显示器,也可能期待能够直接操纵在显示设备4处显示的图形对象。
根据本公开的一种或多种技术,控制设备8可以使用户能够使用可穿戴计算设备6来执行对在显示设备4处显示的图形对象的直接操纵。可穿戴计算设备6(简称为“可穿戴6”)可以是配置成由用户穿戴的设备。在图1的示例中,可穿戴6是计算机化的手表。然而,在其他示例中,可穿戴6是计算机化的健身带/追踪器、计算机化的眼镜、计算机化的头饰、计算机化的手套等。如下面所讨论的,在一些示例中,除了可穿戴设备之外的设备可以执行可穿戴6的功能。
可穿戴6包括传感器10,该传感器10可以被配置成生成表示一个或多个测量参数的数据。如参考图2更详细地讨论的,传感器10可以包括一个或多个运动传感器和一个或多个光学传感器。可穿戴6可以包括被配置成将由传感器10生成的数据无线传输到诸如控制设备8的一个或多个外部设备的组件。
控制设备8可以基于从可穿戴6接收到的传感器数据来确定可穿戴6在显示设备4上的位置。例如,控制设备8可以确定可穿戴6在显示设备4上的估计位置(例如,基于由传感器10中的一个或多个运动传感器生成的运动数据)。当用户跨显示设备4移动可穿戴6时,可穿戴6的运动传感器可以生成表示可穿戴6的移动的运动数据。控制设备8可以处理该运动数据以确定可穿戴6的相对移动。例如,基于运动传感器生成的加速度计和/或陀螺仪数据,控制设备8可以确定可穿戴6以95°前进方向(heading)已经移动了6英寸。然而,仅基于运动数据确定可穿戴6在显示设备4上的位置可能存在一个或多个缺点。例如,即使具有最初已知的位置,控制设备8也可以使用航位推算来确定随后的位置,这可能随着时间的流逝引入越来越多的误差。这样,在一些示例中,可能期望基于不只是运动数据来确定可穿戴6在显示设备4上的位置。
在一些示例中,除了运动数据之外或代替运动数据,控制设备8可基于由可穿戴6的一个或多个光学传感器生成的光学数据来确定可穿戴6在显示设备4上的位置。例如,控制设备8可以使显示设备4在可穿戴6在显示设备4上的估计的当前位置处输出图形图案。如图1所示,控制设备8可以使显示设备4输出图形图案12,该图形图案12包括多个区域,每个区域具有不同的光学特性(例如,不同的颜色、不同的颜色或亮度阴影)。多个区域可以包括中心区域14和围绕中心区域14分散的多个边界区域16A-16D(统称为“边界区域16”)。控制设备8可以使用从可穿戴6接收到的光学数据来细化对可穿戴6在显示设备4上的当前位置的估计。控制设备8可以将细化位置用作在控制设备8处执行的应用的用户输入,该应用输出正显示在显示设备4处的图形用户界面。下面参考图4A-4F讨论用于细化可穿戴6的估计位置的一个示例技术的更进一步的细节。
在一些示例中,控制设备8可以基于运动数据和光学数据的组合来确定可穿戴6在显示设备4上的位置。例如,控制设备8可以基于运动数据来确定可穿戴6的初始估计位置,并基于光学数据来确定细化位置。
控制设备8可以将可穿戴计算设备的细化位置用作经由显示设备4输出图形用户界面的应用的用户输入的位置。例如,在控制设备8处执行的应用在显示设备4上的位置x1,y1处输出包括图形按钮的图形用户界面,应用可以确定已选择图形按钮,其中细化位置在x1,y1处。
尽管在图1中图示是单独的设备,但是控制设备8可以是单独的设备,或者可以集成到显示设备4或可穿戴6中。作为一个示例,在控制设备8是单独的设备(即,与显示设备4和可穿戴6不同)的情况下,控制设备8可以是笔记本电脑或智能手机,其从可穿戴6(例如,无线)接收传感器数据,执行应用以生成图形用户界面,使显示设备4显示图形用户界面,并基于接收到的传感器数据生成针对应用的用户输入。作为另一示例,在显示设备4中包括控制设备8的情况下,本文描述的功能性可以由显示设备4的一个或多个处理器执行。例如,显示设备4的一个或多个处理器可以从可穿戴6接收传感器数据,执行应用以生成图形用户界面,(在显示设备4处)显示图形用户界面,并基于接收到的传感器数据来为应用生成用户输入。作为另一示例,在可穿戴6中包括控制设备8的情况下,本文描述的功能性可以由可穿戴6的一个或多个处理器执行。例如,可穿戴6的一个或多个处理器可以获取由可穿戴6的传感器10生成的传感器数据,执行应用以生成图形用户界面,使显示设备4显示图形用户界面(例如,将生成用户界面的指令无线传输到显示设备4),并基于接收到的传感器数据为应用生成用户输入。
图2是图示根据本公开的一个或多个方面的可穿戴计算设备6(简称为“可穿戴6”)的框图,该可穿戴计算设备6可用于促进对所显示的用户界面组件的直接操纵。在图2的示例中,可穿戴6是计算机化的手表。但是,在其他示例中,可穿戴6是计算机化的健身带/追踪器、计算机化的眼镜、计算机化的头饰、计算机化的手套等。
如图2中所示,在一些示例中,可穿戴6可以包括附接组件50和壳体52。可穿戴6的壳体52包括可穿戴6的物理部分,该物理部分容纳可穿戴6的硬件、软件、固件和/或其他电子组件的组合。例如,图2示出在壳体52内,可穿戴6可以包括传感器10(包括运动传感器54和光学传感器56)、通信单元58以及通信模块60。
附接组件50可以包括可穿戴计算设备的物理部分,当用户正在穿戴可穿戴6时,该物理部分与用户的身体(例如,组织、肌肉、皮肤、头发、衣服等)接触(然而,在一些示例中,壳体52的部分也可以与用户的身体接触)。例如,在可穿戴6是手表的情况下,附接组件50可以是适合用户的手腕上并与用户的皮肤接触的表带。在可穿戴6是眼镜或头饰的示例中,附接组件50可以是适合用户头部的眼镜或头饰的框架的部分,并且当可穿戴6是手套时,附接组件50可以是手套的材料,其符合用户的手指和手。在一些示例中,可以从壳体52和/或附接部件50抓握并保持可穿戴6。
运动传感器54表示一个或多个运动传感器或输入设备,其配置成检测与可穿戴6相关联的移动的指示(例如,表示移动的数据)。运动传感器54的示例包括加速度计、速度传感器、陀螺仪、磁力计、倾斜传感器、气压计、接近传感器或可以生成根据其可穿戴6可以确定移动的数据的任何以及全部其他类型的输入设备或传感器。在一些示例中,运动传感器54可以是或可以被包括在惯性测量单元(IMU)中。当壳体52移动时,运动传感器54可以产生“原始”运动数据。运动数据可以指示移动的一个或多个特性,包括加速度、行进的距离、方向、速度、旋转程度或定向程度中的至少一个。
光学传感器56表示被配置成产生表示光强度的电信号的一个或多个设备。光学传感器56的示例包括光电二极管、光敏电阻或能够将光转换成电信号的任何其他设备。在一些示例中,光学传感器56中的一个或多个可以被包括在光电容积描记图(PPG)传感器(例如,用于心率监测的传感器)中。PPG传感器中包括的光学传感器56的光学传感器可以布置在可穿戴6的表面上,当穿戴可穿戴6时,该表面紧靠可穿戴6的穿戴者的皮肤。例如,在可穿戴6是手表的情况下,PPG传感器中包括的光学传感器56的光学传感器可以位于手表的底部。在一些示例中,光学传感器56可以位于可穿戴6上的除了当穿戴可穿戴6时紧靠可穿戴6的穿戴者的皮肤的可穿戴6的表面之外的某个位置。例如,光学传感器56可以被包括在可穿戴6的前置相机(或其他前置(在表盘面上的)光学传感器)中。在这样的示例中,用户可以利用可穿戴6来执行直接操纵而无需从他们的手腕上移除可穿戴6。
通信单元58可以通过在一个或多个网络上传输和/或接收网络信号经由一个或多个有线和/或无线网络与外部设备通信。通信单元58的示例包括网络接口卡(例如,诸如以太网卡)、光收发器、射频收发器、GPS接收器或可以发送和/或接收信息的任何其他类型的设备。通信单元58的其他示例可以包括短波无线电、蜂窝数据无线电、无线网络无线电(例如,WIFI无线电、蓝牙无线电等)以及通用串行总线(USB)控制器。
在一些示例中,可穿戴6可以包括被配置成接收输入的一个或多个输入组件。输入的示例是触觉、音频、动力学、存在和光学输入,仅举几个示例。在一个示例中,输入组件包括鼠标、键盘、语音响应系统、摄像机、按钮、控制板、麦克风或用于检测来自人或机器的输入的任何其他类型的设备。在一些示例中,输入组件可以包括存在敏感输入组件,其可以包括存在敏感屏幕、触敏屏幕、雷达等。
通信模块60可以执行各种操作以管理可穿戴6与外部设备之间的通信。作为一个示例,通信模块60可以从传感器10接收数据(例如,来自光学传感器56的光学数据和/或来自运动传感器54的运动数据),并使通信单元58中的一个或多个将数据的表示无线传输到外部设备(例如,图1和图3的控制设备8)。作为另一示例,在可穿戴6执行本文所述的归因于控制设备8的功能性的情况下,通信模块60可以使通信单元58中的一个或者多个向显示设备4传输生成图形用户界面的指令。以这样的方式,在一些示例中,可穿戴6可以在内部处理由传感器10生成的数据,以使得能够经由可穿戴6直接操纵图形对象。作为另一示例,通信模块60可以使通信单元58中的一个或者多个将经由可穿戴6的一个或多个输入组件接收到的用户输入的指令传输到外部设备(例如,图1和图3的控制设备8)。以这样的方式,可穿戴6可以使用户能够使用可穿戴6的输入组件来提供用于与所显示的图形对象进行交互的进一步的输入(例如,使用户能够“点击”在图形对象上)。
虽然被描述为可穿戴计算设备,但是应当理解,其他设备可以执行归属于可穿戴6的功能。例如,包括传感器(例如,一个或多个运动传感器和一个或多个光学传感器)和一个或多个无线通信单元的任何计算设备可以执行归属于可穿戴6的功能。这种设备的一些示例包括智能手机、平板电脑等。
图3是图示根据本公开的一个或多个方面的示例控制设备的框图,该示例控制设备被配置成使可穿戴设备能够用于直接操纵所显示的图形对象。下面在图1的系统1的背景中描述图3的控制设备8。图3仅图示控制设备8的一个特定示例,并且在其他情况下可以使用控制设备2的许多其他示例。图3的控制设备8可以包括示例控制设备8中包括的组件的子集,或者可以包括图3中未示出的附加组件。
如在图3的示例中所示,控制设备8包括一个或多个处理器70、一个或多个输出设备72、一个或多个输入设备74、一个或多个通信单元76和一个或多个存储设备82。存储设备82还可以包括用户界面(UI)模块86、通信模块78和应用模块80。
通信信道84可以互连组件70、72、74、76、82中的每一个,以进行组件间的通信(物理地、通信地和/或操作地)。在一些示例中,通信信道84可以包括电源总线、系统总线、网络连接、进程间通信数据结构或用于传送数据或传送电力的任何其他方法。
一个或多个输出设备72可以产生输出。输出的示例是触觉、音频和视频输出。在一个示例中,输出设备72包括存在敏感显示器、声卡、视频图形适配器卡、扬声器、阴极射线管(CRT)监视器、液晶显示器(LCD)或用于生成对人或机器的输出的任何其他类型的设备。
一个或多个输入设备74可以接收输入。输入的示例是触觉、音频和视频输入。在一些示例中,输入设备74包括存在敏感显示器、触敏屏幕、鼠标、键盘、语音响应系统、摄像机、麦克风、传感器或用于检测来自人或机器的输入的任何其他类型的设备。
一个或多个通信单元76可以通过在一个或多个网络上传输和/或接收网络信号经由一个或多个有线和/或无线网络与外部设备通信。通信单元76的示例包括网络接口卡(例如,诸如以太网卡)、光收发器、射频收发器、GPS接收器或可以发送和/或接收信息的任何其他类型的设备。通信单元76的其他示例可以包括短波无线电、蜂窝数据无线电、无线网络无线电(例如,WIFI无线电、蓝牙无线电等)以及通用串行总线(USB)控制器、HDMI控制器等。
通信模块78可以执行各种操作来管理控制设备8和外部设备之间的通信。作为一个示例,通信模块78可以从控制设备8的一个或多个组件接收数据,并且使通信单元76中的一个或多个将数据的表示传输到外部设备。例如,通信模块78可以从应用模块80的应用接收要生成图形用户界面的指令,并使通信单元76中的一个或多个将指令传输到显示设备4。作为另一示例,通信模块78可以从通信单元76中的一个或者多个接收已经从外部设备无线接收到的数据。例如,通信模块78可以从已经从可穿戴6无线接收到的通信单元76中一个或多个接收传感器数据(例如,运动数据和光学数据之一或两者)。
源控制设备8内的一个或多个存储设备82可以存储用于在控制设备8的操作期间进行处理的信息,模块86、78和80在控制设备8的执行期间访问该信息。在一些示例中,存储设备82是临时存储器,这意味着存储设备82的主要目的不是长期存储。控制设备8上的存储设备82可以被配置用于作为易失性存储器的信息的短期存储,并且因此如果断电则不保留所存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)以及本领域已知的其他形式的易失性存储器。
在一些示例中,存储设备82包括一个或多个计算机可读存储介质。存储设备82可以被配置成存储比易失性存储器更大的信息量。存储设备82可以进一步被配置用于作为非易失性存储空间的信息的长期存储,并且在通电/断电周期之后保留信息。非易失性存储器的示例包括磁性硬盘、光盘、闪存或电可编程存储器(EPROM)或电可擦可编程存储器(EEPROM)的形式。存储设备82可以存储与模块86、78和80相关联的程序指令和/或信息(例如,数据)。
一个或多个处理器70可以在控制设备8内实现功能性和/或执行指令。例如,处理器70可以接收并执行由存储设备82存储的执行模块86、78和80的功能性的指令。处理器70可以执行模块86、78和80的指令以使其执行控制设备8的各种动作或功能。
应用模块80表示可以利用用户输入在控制设备8处执行并从其访问的所有各种单独的应用和服务。用户可以与和应用模块80中的一个或多个相关联的图形用户界面进行交互,以使控制设备8执行功能。应用模块80的许多示例可以存在并且包括健身应用、日历应用、个人助理或预测引擎、搜索应用、地图或导航应用、运输服务应用(例如,公共汽车或火车跟踪应用)、社交媒体应用、游戏应用、演示应用(例如,用于演示幻灯片)、电子邮件应用、聊天或消息收发应用、互联网浏览器应用或可以在控制设备8处执行的任何其他应用。
UI模块86管理与控制设备8的其他组件的用户交互。换句话说,UI模块86可以充当控制设备8的各个组件之间的中介,以基于用户输入来进行确定并响应于用户输入而产生输出。UI模块86可以从控制设备8的应用、服务、平台或其他模块接收指令,以使设备(例如,图1的显示设备4)输出用户界面。例如,应用模块80的应用可以与UI模块86交互,以使显示设备4显示包括一个或多个图形对象的图形用户界面。UI模块86可以在用户查看并与用户界面交互时管理由控制设备8接收到的输入,并且响应于从正在处理用户输入的控制设备8的应用、服务、平台或其他模块接收到附加指令而更新用户界面。
根据本公开的一种或多种技术,控制设备8可以利用由可穿戴计算设备生成的传感器数据,以便于使可穿戴计算设备能够用于提供对显示的图形对象的直接操纵。例如,UI模块86可以使用由可穿戴设备的运动传感器生成的运动数据来确定可穿戴设备在显示设备上的当前估计位置。UI模块86可以使用由可穿戴设备的一个或多个光学传感器生成的光学数据来细化估计的位置。应用模块80的应用模块(例如,正在经由显示设备输出图形用户界面)可以利用可穿戴计算设备的细化位置作为用户输入的位置。例如,UI模块86可以向应用模块提供细化位置的x、y坐标,并且应用模块可以使用x、y坐标作为用户输入。
应用模块可以不确定是否使用本公开的技术来生成用户输入位置。例如,对于应用模块,用户输入的位置可能看起来与如果其是使用标准触摸屏生成的那样相同。这样,可能不需要修改应用模块以便于使用用户输入位置来进行操作,该用户输入位置使用如本文所述的可穿戴设备启用的直接操纵来确定。
在一些示例中,可能期望用户还使用除了位置之外的输入与显示的对象进行交互。例如,除了能够为可穿戴计算设备(例如,可穿戴6)提供用户输入作为位置之外,可能还期望用户能够提供用户输入,诸如点击、滚动、选择或其他这样的事情。根据本公开的一种或多种技术,控制设备8可以从可穿戴计算设备接收数据,该数据表示经由可穿戴计算设备的一个或多个输入组件接收到的用户输入。例如,UI模块86可以接收用户在可穿戴计算设备的存在敏感显示器上已经轻敲的指示。UI模块86可以向应用模块提供用户输入的表示。例如,在UI模块86接收到用户已经在可穿戴计算设备的存在敏感显示器上轻敲的指示的情况下,UI模块86可以向应用提供已经在细化位置的x、y坐标处接收到点击的用户输入指示。
图4A至图4F是图示根据本公开的一种或多种技术的示例位置细化过程的概念图。参考图1的系统2描述图4A-4F的细化过程,该系统2包括显示设备4、可穿戴6和控制设备8。
控制设备8可以使显示设备4显示包括一个或多个图形对象的图形用户界面。例如,控制设备8的处理器70可以执行应用模块80的应用模块。所执行的应用模块可以与UI模块86一起生成用于渲染图形用户界面的指令。处理器70可以执行通信模块78以使通信单元76向显示设备4输出要生成图形用户界面的指令。通常,图形对象可以是用户可以与其交互以便于修改控制设备8的操作的任何图形元素。示例图形对象包括但不限于刻度盘、按钮、拨动开关、滑块、图形键盘的键等。
用户可能期望直接操纵显示在显示设备4处的图形用户界面中包括的一个或多个图形对象。但是,在显示设备4不是存在敏感显示器的示例中,对用户来说仅使用他们的手指直接操纵显示的对象是不可能的。这样,根据本公开的一种或多种技术并且如在上面所讨论的,用户可以利用可穿戴计算设备来执行直接操纵。例如,在用户的手腕上穿戴可穿戴6的情况下,用户可以移除可穿戴6(例如,解下附接组件50)并利用可穿戴6来直接操纵图形对象。
控制设备8可以执行使用户能够利用可穿戴6来直接操纵在显示设备4处显示的图形对象的操作。如在上面所讨论的,通常,控制设备8可以利用由可穿戴6的运动传感器54生成的运动数据来确定在显示设备4上的估计位置,使显示设备4在估计位置处显示图形图案,并且然后基于由可穿戴6的光学传感器56生成的光学数据细化估计位置。
最初,控制设备8可能无法确定可穿戴6的估计位置。例如,在用户紧靠显示设备4放置可穿戴6之前,控制设备8可能无法确定可穿戴6的位置。这样,对于初始位置,控制设备8可以通过让用户将可穿戴6放置在显示的图形图案的位置处的指令在显示设备4上的位置处输出图形图案。控制设备8可以始终使用显示设备4上的特定位置作为初始位置,或者可以取决于上下文使用不同的位置。一旦用户将可穿戴6放置在显示设备4上在显示的图形图案的位置处,控制设备8就可以开始细化所确定的可穿戴6的位置。
可以将在显示设备4处输出的图形图案设计成促进由诸如可穿戴6的光学传感器56的光学传感器进行检测。通常,图形图案可以包括多个区域,每个区域具有不同的光学特性。如图1和图4A-图4F中所示,图形图案12包括中心区域14和围绕中心区域14分散的多个边界区域16。虽然被图示为包括四个边界区域,但是图形图案可以包括任意数量的边界区域。例如,在一些示例中,图形图案可以包括5、6、7、8、9、10、12或更多个边界区域。
每个边界区域可以与调整方向相关联。特定边界区域的调整方向可以表示边界区域和中心区域之间的空间关系。作为一个示例,边界区域16A的调整方向可以是315°(例如,从中心区域14到边界区域16A的方向前进方向)。类似地,边界区域16B的调整方向可以是45°,边界区域16C的调整方向可以是225°,并且边界区域16D的调整方向可以是135°。如下面进一步详细讨论的,响应于指示在可穿戴6下面显示边界区域16的特定边界区域的光学数据,控制设备8可以在与该特定边界区域相对应的调整方向上调整可穿戴6的估计位置。
如图4A中所示,用户可以最初将可穿戴6放置在显示设备4上显示图形图案12的位置处。当用户使用可穿戴6执行直接操纵时,控制设备8可以使用显示的图形图案的位置作为用户输入。例如,控制设备8的UI模块86可以利用图形图案12的中心区域14的形心的x、y坐标作为对于在控制设备8处执行的应用模块80的应用的用户输入。
如图4B中所示,用户可以跨显示设备4移动可穿戴6。随着可穿戴6被移动,运动传感器54可以生成表示移动的运动数据。控制设备8的位置估计模块(LEM)90可以基于运动数据来确定可穿戴6的更新的估计位置。例如,LEM 90可以执行由运动传感器54的加速度计生成的加速度数据的双重积分,并将结果值添加到可穿戴6的先前已知的位置(即,在可穿戴6被移动之前显示图形图案12的位置)。
如图4C中所示,控制设备8可以使显示设备4在更新的估计位置处输出图形图案12。取决于位置估计的准确性,图形图案12可能或可能没有显示在可穿戴6的实际位置。控制设备8的位置细化模块(LRM)92可以基于可穿戴6的一个或多个光学传感器56生成的光学数据来细化估计的位置。
在细化过程期间的任何时候期间都可能出现三种场景之一。在第一场景下,图形图案12可能不会显示在可穿戴6的下面(例如,光学传感器56可能无法检测图形图案12的任何区域)。在第二场景下,可以在可穿戴6下面显示图形图案12的边界区域16之一。在第三场景下,可以在可穿戴6下面显示图形图案12的中心区域14。LRM 92可以基于由一个或多个光学传感器56生成的光学数据来确定正在发生哪种场景。作为一个示例,在光学数据指示未检测到中心区域14和边界区域16的区域的情况下,LRM 92可以确定第一场景正在发生。作为另一示例,在光学数据指示检测到边界区域16的特定边界区域的情况下,LRM 92可以确定第二场景正在发生。作为另一示例,在光学数据指示检测到中心区域14的情况下,LRM 92可以确定第三场景正在发生。
LRM 92可以基于所确定的场景来执行特定动作。响应于确定正在发生第一场景(例如,没有检测到图形图案12的区域),LRM 92可以增加图形图案12的显示尺寸。换句话说,响应于确定没有检测到图形图案12的多个区域,LRM 92可以使显示设备4以相对于当前尺寸增加的尺寸输出图形图案12。通过增加图形图案12的显示尺寸,LRM92可以增加在光学数据中检测到图形图案12的区域的可能性。尺寸增加的示例在图4C和4D中可以看到。
响应于确定第二场景正在发生(例如,检测到边界区域16的特定边界区域),LRM92可以调整图形图案12的显示位置。例如,响应于确定检测到边界区域16的特定边界区域时,LRM 92可以基于特定的边界区域来确定调整方向。如在上面所讨论的,边界区域16的每个边界区域可以与表示相应边界区域和中心区域14之间的空间关系的相应调整方向相关联。LRM 92可以在调整方向上调整估计的位置以获得细化位置。在图4D和图4E的示例中,LRM 92可以确定检测到边界区域16B,确定与边界区域16B相对应的调整方向是45°的前进方向,并且将图形图案12的显示位置以45°的前进方向移动距离。LRM 92移动图形图案12的距离可以是图形图案12的当前显示尺寸的函数。例如,该距离可以是图形图案12的当前显示尺寸的半径的一半。
响应于确定第三场景正在发生(例如,检测到中心区域),LRM 92可以减小图形图案12的显示尺寸。换句话说,响应于确定检测到图形图案12的中心区域14,LRM 92可以使显示设备4以相对于当前尺寸减小的尺寸输出图形图案12。通过减小图形图案12的显示尺寸,LRM92可以减少图形图案12覆盖/遮挡的图形用户界面的量。在一些示例中,LRM 92可以将图形图案12的尺寸减小到在可穿戴6周围图形图案12不可见的程度(例如,图形图案12可能完全被可穿戴6遮挡)。尺寸减小的示例可以在图4E和4F中看到。
注意,控制设备8可以继续执行细化过程,直到满足一个或多个条件和/或直到可穿戴6再次移动为止。一个示例条件包括图形图案12达到最小显示尺寸。可以基于可穿戴6的尺寸来选择最小显示尺寸(例如,使得最小显示尺寸与可穿戴6的尺寸相同或略小于可穿戴6的尺寸)。
还应注意,某些细化操作可能会触发其他场景。例如,减小图形图案12的显示尺寸可以导致在光学数据中不再检测到中心区域14(例如,或者检测到边界区域或者没有检测到区域)。作为一个特定示例,在减小图形图案12的显示尺寸之后,控制设备8可以确定现在检测到边界区域,并且可以基于检测到的边界区域来调整图形图案12的显示位置。此过程可以循环直到达到图形图案12的最小尺寸。
图5是图示根据本公开的一种或多种技术的设备的示例操作的流程图,该设备使可穿戴设备能够用于直接操纵所显示的图形对象。图5的技术可以由诸如图1和图3的控制设备8的设备的一个或多个处理器执行。为了说明的目的,在图1和图3的控制设备8的上下文中描述图5的技术,尽管具有与控制设备8的配置不同的配置的计算设备可以执行图5的技术。作为一个示例,图1的显示设备4的一个或多个处理器可以执行图5的技术。作为另一示例,图1和图2的可穿戴6的一个或多个处理器可以执行图5的技术。作为另一示例,除了显示设备4和可穿戴6之外的移动计算设备的一个或多个处理器可以执行图5的技术。
控制设备8可以输出图形用户界面(502)以用于由显示设备显示。例如,控制设备8的处理器70可以执行应用模块80的应用模块,并且所执行的应用模块可以与UI模块86一起生成用于渲染图形用户界面的指令。处理器70可以执行通信模块78,以使通信单元76向显示设备4输出要生成图形用户界面的指令。
控制设备8可以基于运动数据来确定可穿戴计算设备的估计位置(504)。例如,控制设备8可以无线接收由可穿戴6的运动传感器54的加速度计生成的加速度数据,并且控制设备8的LEM 90可以执行加速度数据的双重积分,并将结果值添加到可穿戴6的先前已知的位置。
控制设备8可以输出包括中心区域和多个边界区域的图形图案以用于由显示设备在估计的位置处显示(506)。例如,LRM 92可以将图形图案12插入由应用模块生成的图形用户界面中(例如,使得图形图案被覆盖在图形用户界面的其他元素的顶部上)。
控制设备8可以基于可穿戴计算设备的光学传感器生成的光学数据,确定可穿戴计算设备的细化位置。例如,LRM 92可以处理由可穿戴6的光学传感器56的光学传感器生成的光学数据,以确定该光学数据是否指示与图形图案12的区域的光学特性匹配。响应于确定在光学数据中检测到中心区域(508的“是”分支),LRM 92可以减小图形图案12的显示尺寸(510)。响应于确定在光学数据中没有检测到中心区域或任何边界区域(512的“否”分支),LRM 92可以增加图形图案12的显示尺寸(514)。响应于确定在光学数据中检测到边界区域(512的“是”分支),LRM 92可以基于与检测到的边界区域相关联的调整方向来调整估计位置(516)。
控制设备8可以确定可穿戴设备是否已经移动(518)。例如,控制设备8可以基于由运动传感器54生成的运动数据来确定可穿戴计算设备6的加速度是否大于加速度阈值。响应于确定可穿戴设备已经移动(518的“是”分支),控制设备8可以基于表示该移动的运动数据来确定可穿戴计算设备的更新的估计位置(504)。响应于确定可穿戴设备尚未移动(518的“否”分支),LRM 92可以继续执行细化操作(508-516)。
如在上面所讨论的,可以将图形图案显示为覆盖在图形用户界面的其他元素上。在一些示例中,控制设备8可以执行一个或多个操作,以减小对于图形用户界面的其他元素将会“混淆”图形图案的可能性。例如,在使显示设备显示图形图案的同时,控制设备8可以使显示设备以预定速率(例如,每1、2、3、4、5个帧)闪烁图形图案。
图6A-6C是根据本公开的一种或多种技术的可用于全局初始化的示例图形图案。如在上面所讨论的,在一些示例中,控制设备8可以通过在显示设备4上的特定位置处显示图形图案(例如,图1的图形图案12)来确定可穿戴6的初始位置(例如,特定位置用作初始位置)。在其他示例中,控制设备8可以被配置成通过跨整个显示设备4显示各种图形图案来确定可穿戴6在显示设备4上的初始位置(而图形图案12占用少于整个显示设备4)。在图6A至图6C中示出一些示例图形图案。为了使用图6A至图6C中所示的图形图案执行全局初始化技术,控制设备8在显示设备4的整个显示区域上闪光图形图案602、604和606中的一个或多个(例如,使得图形图案的一部分将位于可穿戴6的位置处,不管用户已经将可穿戴6放置在显示设备4上的何处)。
下述编号的示例可以说明本公开的一个或多个方面:
示例1.一种方法,包括:由一个或多个处理器确定不是存在敏感的显示设备上的可穿戴计算设备的估计位置,其中,所述可穿戴计算设备被配置成穿戴在用户的手腕上;使所述显示设备在所述估计位置处输出图形图案;由所述一个或多个处理器基于由所述可穿戴计算设备的光学传感器生成的光学数据,确定所述可穿戴计算设备的细化位置;以及由所述一个或多个处理器利用所述可穿戴计算设备的细化位置作为对于经由所述显示设备输出图形用户界面的应用的用户输入的位置。
示例2.根据示例1所述的方法,其中,确定所述估计位置包括:基于由所述可穿戴计算设备的一个或多个运动传感器生成的运动数据,确定所述估计位置。
示例3.根据示例1或2所述的方法,其中,所述图形图案包括多个区域,所述多个区域包括中心区域和围绕所述中心区域分散的多个边界区域,其中,所述多个区域中的每个区域具有不同的光学特性,并且其中,确定所述细化位置包括:基于所述光学数据,确定是否检测到所述多个区域中的任何一个;响应于确定检测到所述多个边界区域中的特定边界区域,基于所述特定边界区域来确定调整方向;以及在所述调整方向上调整所述估计位置以获得所述细化位置。
示例4.根据示例2或3中的任一项所述的方法,其中,确定所述细化位置进一步包括:响应于确定所述多个区域中没有一个区域被检测到,使得所述显示设备以相对于当前尺寸增加的尺寸输出所述图形图案。
示例5.根据示例2-4中的任一项所述的方法,其中,确定所述细化位置进一步包括:响应于确定检测到所述多个区域的中心区域,使所述显示设备以相对于当前尺寸减小的尺寸输出所述图形图案。
示例6.根据示例1-5中的任一项所述的方法,其中,使所述显示设备输出所述图形图案包括:使所述显示设备以预定速率闪烁所述图形图案。
示例7.根据示例1-6中的任一项所述的方法,其中,所述可穿戴计算设备的所述光学传感器包括光电容积描记图传感器。
示例8.根据示例1-7中的任一项所述的方法,其中,所述一个或多个处理器被包括在所述显示设备中。
示例9.根据示例1-7中的任一项所述的方法,其中,所述一个或多个处理器被包括在所述可穿戴计算设备中。
示例10.根据示例1-7中的任一项所述的方法,其中,所述一个或多个处理器被包括在与所述可穿戴计算设备和所述显示设备不同的另一设备中,所述方法还包括:由所述另一设备从所述可穿戴计算设备接收所述光学数据;和使所述显示设备输出所述图形用户界面。
示例11.一种计算设备,包括:一个或多个处理器;和存储器,所述存储器包括指令,所述指令由所述一个或多个处理器执行时,使所述一个或多个处理器执行示例1-10中的任意一个所述的方法。
示例12.一种计算机可读存储介质,所述计算机可读存储介质存储指令,所述指令在被执行时,使所述一个或多个处理器执行示例1-10中的任意一个所述的方法。
示例13.一种设备,包括用于执行示例1-10中的任意一个所述的方法的装置。
可以至少部分地以硬件、软件、固件或其任意组合来实现本公开中描述的技术。例如,所描述的技术的各个方面可以在一个或多个处理器内实现,所述一个或者多个处理器包括一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他等效的集成或离散逻辑电路以及此类组件的任何组合。术语“处理器”或“处理电路”通常可以单独或与其他逻辑电路或任何其他等效电路组合地指代任何前述逻辑电路。包括硬件的控制单元还可以执行本公开的技术中的一种或多种。
这样的硬件、软件和固件可以在同一设备内或在单独的设备内实现以支持本公开中描述的各种技术。另外,所描述的任何单元、模块或组件可以一起或单独地实现为离散但可互操作的逻辑设备。将不同的特征描述为模块或单元旨在突出不同的功能方面,并且不一定暗示必须通过单独的硬件、固件或软件组件来实现这样的模块或单元。相反,可以通过单独的硬件、固件或软件组件来执行与一个或多个模块或单元相关联的功能性,或者可以将其集成在通用的或单独的硬件、固件或软件组件内。
本公开中描述的技术还可以在包括编码有指令的计算机可读存储介质的制品中体现或编码。嵌入或编码在包括已编码的计算机可读存储介质的制品中的指令可以使一个或多个可编程处理器或其他处理器实现本文所述的一种或多种技术,诸如当在计算机可读存储介质中包括或编码的指令由一个或多个处理器执行时。计算机可读存储介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电子可擦除可编程只读存储器(EEPROM)、闪存、硬盘、光盘ROM(CD-ROM)、软盘、盒式磁带、磁性介质、光学介质或其他计算机可读介质。在一些示例中,制品可以包括一个或多个计算机可读存储介质。
在一些示例中,计算机可读存储介质可以包括非暂时性介质。术语“非暂时性”可以指示存储介质没有体现在载波或传播的信号中。在某些示例中,非暂时性存储介质可以存储可以随时间改变的数据(例如,在RAM或高速缓存中)。
已经描述各种示例。这些和其他示例在所附权利要求的范围内。
- 使用可穿戴计算设备的显示设备的直接操纵
- 使用复合视场的可穿戴显示设备