背景技术:
电子白板或者大型计算机驱动的显示器在工作场所中并且在教育环境中已经变得普遍。这样的大型显示器对于在许多人之间分享想法来说是不可缺少的。此外,有时大型计算机驱动的显示器被使用在电话会议设施中。在这样的应用中,在这些显示器上书写的内容可以通过网络被记录、被存储并且被分布到其他显示器或者计算设备。
一些大型计算机驱动的显示器是触敏的。触敏显示器允许由用户做出的标记被示出在其触敏表面上,并且允许控制被集成到显示器中。触敏显示器(尤其以大型形式)可能非常昂贵。
技术实现要素:
提供本发明内容以引入以在具体实施方式中下面进一步描述的简化形式的概念的选择。本发明内容不旨在标识要求保护的主题的关键特征或基本特征,其也不旨在用于限制要求保护的主题的范围。
在此所描述的大型显示器交互实现将移动设备与人员跟踪相组合以实现新的交互,包括使非触敏显示器触敏并且允许与显示器的个性化交互。
在此所描述的一个大型显示器交互实现基于一个或多个用户多么接近于显示器来提供与大型计算机驱动的显示器的不同的用户交互。显示器可以是非触敏显示器或者触敏显示器。如果大型显示器是非触敏显示器,则其可以被使得通过允许由用户做出的注释被显示在其表面上来模拟触敏显示器。该实现相对于显示器跟踪一个或多个移动计算设备用户(例如,移动电话或者平板计算设备用户),并且基于给定移动计算设备用户距显示器的距离,对在显示器上示出的内容进行配置。
另一大型显示器交互实现使得与大型显示器的用户交互个性化。一个或多个移动计算设备用户相对于显示器(诸如例如大型非触敏显示器,诸如可以被放置在会议室中的显示器)而被跟踪。获得一个或多个移动计算设备中的每个移动计算设备的身份。在显示器上示出的内容基于所标识的移动计算设备用户距显示器的距离和用户的身份。
附图说明
本公开的特定特征、方面和优点将关于以下说明书、所附的权利要求以及附图变得更好理解,其中:
图1是在其中可以实践各种示例性大型显示器交互实现的示例性环境。
图2是用于实践如在此所描述的各种大型显示器交互实现的系统的示例性块图。
图3是用于实践如在此所描述的各种大型显示器交互实现的系统的另一示例性块图。
图4是用于实践在此所描述的各种大型显示器交互实现的示例性过程。
图5是用于实践在此所描述的各种大型显示器交互实现的另一示例性过程。
图6是可以被用于实践在此所描述的示例性大型显示器交互实现的示例性计算系统。
具体实施方式
在大型显示器交互实现的以下描述中,对形成其一部分并且通过图示来示出可以实践在此所描述的实现的示例的附图进行参考。将理解到,在不脱离要求保护的主题的范围的情况下,可以利用其他实施例并且可以做出结构改变。
1.0大型显示器交互实现
以下章节提供在此所描述的大型显示器交互实现的概述,以及用于实践这些实现的系统和过程。
作为初步事项,下面的附图中的一些附图描述了一个或多个结构部件的上下文中的概念,不同地被称为功能、模块、特征、元素等。可以以任何方式实现附图中所示的各种部件。在一种情况下,所图示的将附图中的各种部件分离为不同的单元可以反映实际实现中的对应的不同部件的使用。备选地,或者附加地,附图中所图示的任何单个部件可以通过多个实际部件来实现。备选地,或者附加地,附图中的任何两个或两个以上分离的部件的描绘可以反映由单个实际部件所执行的不同功能。
其他附图以流程图形式描述概念。以这种形式,某些操作被描述为构成以特定次序执行的不同块。这样的实现是说明性的并且是非限制性的。在此所描述的某些块可以分组在一起并且在单个操作中被执行,某些块分开为多个分量块,并且某些块可以以在此图示的次序不同的次序被执行(包括执行块的并行方式)。可以以任何方式实现流程图中所示的块。
1.1概述
图1示出了用于实践如在此所描述的各种大型显示器交互实现的示例性环境100。环境包括大型显示器102、一个或多个人104、106、108,每个人具有移动计算设备110、112、114,诸如例如智能电话或者平板计算设备。系统100还包括一个或多个照相机或者视觉传感器116。(一个或多个)照相机116和显示器102二者直接地或者经由有线或无线网络120连接到一个或多个计算机(在此被称为房间服务器118)。此外,移动计算设备110、112、114通过无线网络122(例如,通过wifi或者蓝牙)被连接到房间服务器118。
在一些实现中,对于每个移动计算设备110、112、114而言,房间服务器118可以确定所有者104、106、108的特定身份。例如,每个移动计算设备110、112、114的所有者/用户104、106、108可以将他们的设备连同他们的身份一起注册到房间服务器118上。备选地,在一些实现中,房间服务器118可以以通用方式确定用户的身份,例如,通过确定一般身份(诸如例如用户1、用户2和用户3)。这可以例如通过跟踪并且将用户手部运动(例如,经由用户跟踪模块124)与来自每个移动设备的惯性系统的信息相关以确定哪个用户与哪个移动计算设备相关联来完成。这些实现是有利的,因为对于每个用户而言,不需要向房间服务器118注册其移动计算设备110、112、114。如果特定用户标识是期望的,则其可以从用户持有的移动设备被取回。此外,多个用户能够在其中用户的一般身份被获得的实现中使用单个移动设备110、112、114。例如,如果一个用户将移动计算设备传递给另一用户,则房间服务器118可以将从移动计算设备接收到的惯性(或者其他传感器)信息与从用户跟踪模块124接收到的用户的运动相关以确定移动计算设备与哪个用户相关联。适当的命令可以然后被发送到用户的移动计算设备或者大型显示器102,或者从用户的移动计算设备或者大型显示器102被接收。
在房间服务器118上或者结合房间服务器118运行的用户跟踪模块124执行用户跟踪。在一些实现中,用户跟踪模块124还可以执行用户识别。因此,在任何时间实例处,跟踪模块124可以向房间服务器118输出场景中的人(例如,移动设备用户)的数目、可能地每个人的身份、每个人相对于显示器的手部位置等。
用户跟踪模块124允许将移动设备110、112、114与用户104、106、108配对。当在移动设备110、112、114上存在触摸事件时(例如,移动计算设备以规定方式被触摸或者移动设备上的控制被激活),房间服务器118知道谁的移动设备(例如,平板电脑、电话)被触摸。根据跟踪信息,其知道用户(其具有移动设备)在何处以及相对于大型显示器的他/她的手部位置。通过将移动计算设备的触摸感测与用户跟踪组合,可以在非触摸显示器上模拟触摸交互。这样的非触摸显示器可以是如在图1中所示的大型显示器102,或者可以是另一类型的显示器。在一些实现中,用户跟踪模块124还可以包括用户识别部件,其可以识别特定用户的身份(例如,经由面部识别或者人体识别)。
当移动设备110、112、114的用户104、106、108站在大型显示器102的前面时,房间服务器118获得在大型显示器102上绘画的用户的手部的位置(例如,通过使用照相机116和用户跟踪模块124,其确定手部是否在距大型显示器102的规定距离内)。每当在移动计算设备110、112、114上存在触摸事件时(例如,每当移动设备用户以规定的方式触摸他或她的移动设备或者激活其上的控制时),触摸事件被发送到房间服务器118。房间服务器118然后检查拥有设备110、112、114的用户104、106、108的手部位置。(手部位置使用用户跟踪模块124被接收并且被跟踪)。如果手部位置接近大型显示器102(例如,在规定的距离d126内),则房间服务器118将向大型显示器102发出笔划绘制命令,并且大型显示器将示出通过由用户跟踪模块124跟踪的用户的姿态做出的笔划。以这种方式,用户110、112、114可以在大型显示器102上书写笔画,好像大型显示器102是触敏的一样。这是有用的(例如,当主持人想要突出显示在大型显示器102上呈现的幻灯片上的信息时)。对于用户104、106、108而言,不需要保持移动计算设备110、112、114,只要移动计算设备110、112、114在用户的人上,因为用户跟踪模块124用于在用户104、106、108在距大型显示器102的规定距离126内时跟踪用户的姿态。
相同机制可以被用于录入文本。如果用户在距显示器102的规定距离126内,用户104、106、108可以使用他/她的移动计算设备110、112、114来键入文本,并且然后点击特殊的“复制”按钮(例如,在移动计算设备的用户界面上或者显示器上的虚拟按钮)。与录入到移动计算设备中相同的文本将在手部位置处的大型显示器上出现。在一个实现中,当特殊的“复制”按钮被点击时,移动计算设备110、112、114将指示与文本一起激活的复制按钮的事件发送到房间服务器118。房间服务器118获得用户的手部的位置(与移动计算设备相关联的用户)。房间服务器118然后在用户的手部位置附近的大型显示器102上显示文本(例如,在用户的手部的规定距离内)。
如果在大型显示器102上存在(虚拟)按钮,则用户可以使用其移动计算设备通过在显示器102上的按钮上移动该移动计算设备110、112、114并且点击移动计算设备来选择并且点击这些按钮。移动计算设备110、112、114上的触摸事件和手部的位置被组合以触发大型显示器102上的“按钮点击”事件,其可以用于控制显示器或者其他设备。
总之,当用户在距显示器的规定距离内时,移动计算设备提供触摸事件,而跟踪设备124提供位置。通过组合他们,可以模拟任何触摸交互。
如果给定用户104、106、108距显示器102比规定距离126更远,用户的移动计算设备的用户界面改变以反映可以由未接近于显示器的用户使用的不同能力。例如,如果用户104、106、108在距显示器102的规定距离126内,则用户界面将被配置为允许用户对显示器进行注释,而如果用户如果比规定距离更远,则用户接口将被配置为指向显示器。
在一个实现中,使用“相对指向”。当用户104、106、108希望指向在显示器102上示出的一些东西时,他/她按压他或她的移动计算设备110、112和114上的“指向”按钮(或者其他控件),并且在大型显示器102的中心绘出点(或者其他类型的光标)。在那之后,用户104、106、108保持按压按钮,并且设备110、112、114的旋转被转换为显示器上的“点”的相对运动。最后,用户104、106、108释放按钮并且点从显示器102消失。
在另一实现中,执行“绝对指向”。房间服务器118根据用户104、106、108的手臂和手部位置来估计预期的指向。当用户104、106、108按压他或她的移动计算设备上的“指向”按钮(或者其他控件)时,在指向方向与显示器的交点处绘出点。
在一些实现中,如先前所讨论的,房间服务器118以特定或者通用的方式知道用户的身份(例如,用户1、用户2)。在这样的实现中,可以实现个性化交互。例如,每个人可以具有他/她自己的笔划颜色、字体、字体大小、浓度和/或将该人与其他用户区分的其他属性。例如,两个人可以各自利用不同的颜色同时在显示器书写。多个人可以使用其移动计算设备各自利用不同的着色指针同时地指向显示器。
在此所讨论的大型显示器交互实现是非常有利的,因为其允许非触摸计算机驱动的显示器表现为触敏显示器。这提供节约成本的益处并且减轻对于专用硬件的需要。此外,在此所描述的一些大型显示器交互实现允许针对每个用户所显示的信息被个性化,使得在大型显示器上由每个用户所提供的信息可以归因于他们,这使得所显示的信息更一致并且更容易理解。这样的个性化信息可以日后被记录并且被使用,使得用户可以更好地使用在显示器上所显示的信息。此外,在一些实现中,用户的身份可以仅当需要时从移动计算设备被取回。这减轻对于用户的注册的需要。在一些实现中,这还可以允许单个移动计算设备由多个用户使用。
2.0大型显示器交互实现的示例性系统和过程
已经提供了大型显示器交互实现的概述,以下章节描述了用于实践各种大型显示器交互实现的一些示例性系统和过程。
2.1示例性系统
图2示出了用于实践各种大型显示器交互实现的示例性系统200。系统200包括大型计算机驱动的显示器202和一个或多个用户204、206、208,每个用户具有移动计算设备210、212、214(诸如例如智能电话或者平板计算设备)。一个或多个照相机或者基于视觉的传感器216用于采集显示器202和用户204、206、208的图像244,以便跟踪用户并且测量每个用户与显示器202之间的距离,以便确定用户204、206、208中的任一用户是否在距显示器的规定距离之内(或者之外)。即使微软公司的
(一个或多个)照相机216和显示器202二者通过有线或者无线网络220被连接到一个或多个计算机(在此被称为房间服务器218)。房间服务器218和移动计算设备210、212、214可以各自是如关于图6更详细地讨论的计算设备。此外,所有移动计算设备210、212、214还经由无线网络222(例如,蓝牙、wifi)被连接到房间服务器218。
在一些实现中,对于每个移动计算设备210、212、214而言,房间服务器214以特定或者通用的方式知道所有者/用户204、206、208的身份。例如,在一些实现中,注册模块228(其在一些实现中被定位在房间服务器218中)被用于向移动计算设备210、212、214注册每个用户204、206、208的名字。在一些大型显示器交互实现中,每个用户的身份未明确地被注册但是被推断,例如,通过跟踪用户的手部并且将手部运动与来自每个移动计算设备的传感器的信息或者惯性信息相关以确定哪个用户拥有移动计算设备。
在房间服务器218上或者结合房间服务器218运行的用户跟踪模块224执行用户跟踪。在任何时间实例,用户跟踪模块224将场景中的人/用户的数目、可选地每个人/用户的一般或者特定身份、与移动计算设备相关联的每个人/用户的手部位置输出到房间服务器218,房间服务器218向大型显示器202或者移动计算设备发出命令。
用户跟踪224允许将移动设备210、112、214与用户204、206、208配对。用户跟踪模块224通过各种跟踪技术中的一种或多种(诸如面部跟踪、人体跟踪或者其他类型的跟踪技术)来跟踪每个用户204、206、208。在一些大型显示器交互实现中,用户跟踪模块224还通过使用面部识别技术、人体识别技术或者其他识别技术来识别用户。
当在触摸事件从移动计算设备210、212、214被接收近似相同时间用户204、206、208距显示器的规定距离内时,房间服务器218使用显示器命令发出模块246发出命令以对显示器202进行重新配置。此外,移动计算设备210、212、214上的用户界面234、236、238改变,以基于给定用户距显示器的距离来实现相对于显示器的不同功能。
当在移动计算设备210上存在触摸事件时(例如,用户以规定的方式触摸他或她的移动设备或者激活适用的控件),房间服务器218处的移动事件接收模块230接收事件并且使得事件与特定用户204、206、208相关。移动设备命令发出模块232可以然后将适当的命令发到已发送触摸事件的移动计算设备或者显示器202。例如,移动设备命令发出模块232可以解译用户的特定触摸输入或者姿态,并且将对应的功能和/或指令提供到大型显示器202。在不要求用户触摸大型显示器202或者要求大型显示器202具有触摸能力的情况下,大型显示器202可以然后实现对应的功能(诸如选择对象或者移动窗口)。
在一些实现中,使用注册模块224或者通过以另一方式将用户与特定移动设备相关联,系统200知道哪个用户的移动计算设备(例如,平板电脑、电话)被触摸。根据由用户跟踪模块224所提供的跟踪(并且可选的识别信息),房间服务器218知道用户在何处以及用户的手部关于大型显示器202的位置。在一些实现中,系统200使得注册信息与触摸事件信息相关,其包括允许系统200知道给定用户的特定身份的移动计算设备的注册id。
当用户204、206、208在距显示器202的规定距离内时(在一些实现中大约手臂的长度),通过将移动计算设备的210、212、214触摸感测与用户跟踪组合,可以在非触摸显示器上模拟触摸交互。
当人/用户204、206、208持有移动计算上设备210、212、214时,用户跟踪模块224可以测量用户是否站在距大型显示器202的规定距离内。如果是的话,用户跟踪模块224可以获得正在绘制(例如,相对于大型显示器做姿态)的手部的位置并且将这提供到房间服务器218。移动设备命令发出模块232将还发出命令以改变用户界面234、236、238以显示将允许用户注释或者以其他方式控制显示器202的能力。每当在移动计算设备210、212、214上存在触摸事件时,触摸事件被发送到房间服务器218并且由移动设备事件接收模块230接收。房间服务器218然后使用从用户跟踪模块224接收到的用户跟踪信息来检查移动设备210、212、214的用户的手部位置。如果手部位置在距显示器202的规定距离内,则在一些实现中,移动设备命令发出模块232将发出符合用户做出的姿态的笔划绘制命令。以这种方式,用户可以通过使用手部的姿态在显示器书写笔划,好像显示器是触敏的一样。
相同的机制可以被用于录入文本。用户使用他/她的移动计算设备来键入文本或者在其移动设备的屏幕上进行绘制,并且然后点击移动计算设备210、212、214的用户界面232、234、236上的特殊的“复制”按钮(或者其他控件)。相同文本或者绘制将在手部位置处在大型显示器202上出现。例如,当特殊的“复制”按钮被点击时,移动计算设备210、212、214通过无线网络224将事件连同文本和/或绘图一起发送到房间服务器218。类似机制可以被用于打开文件(诸如照片、文档或者视频),其被存储在移动计算设备210、212、214上以被显示在大型显示器上。房间服务器218使用用户跟踪模块224获得用户(例如,具有与移动计算设备的所有者相同id的人)的手部的位置。房间服务器218然后利用命令将接收到的文本和/或绘图发送到大型显示器202,并且大型显示器202在用户204、206、208的手部位置附近(例如,在距手部位置的规定距离内)显示文本和/或绘图。
如果存在被呈现在显示器202上的虚拟(控制)按钮,并且用户204、206、208在距显示器的规定距离内(例如,在一些实施例中近似用户的手臂的长度),则用户可以使用其移动计算设备通过利用虚拟按钮移动该移动计算设备并且激活移动设备210、212、214上的触摸事件来点击显示器202上的虚拟按钮。移动计算设备上的触摸事件和手部的位置被组合以触发大型显示器上的“按钮点击”事件。
当用户204、206、208远离大型显示器202(在规定距离之外)时,用户的移动计算设备210、212、214可以被用作指针。在一个实现中,使用“相对指向”。当用户希望指向显示器上示出的一些东西时,用户按压移动计算设备的用户界面上的“指向”按钮(或者其他类似控件),并且在大型显示器的中心绘出点(或者其他类型的光标)。在那之后,用户保持按压按钮,并且移动计算设备的旋转被转换为显示器上的“点”的相对运动。最后,当用户释放按钮时,点消失。
在另一实现中,执行“绝对指向”。房间服务器218根据用户的手臂和从用户跟踪和识别模块224所获得的手部位置估计预期指向。当用户按压移动计算设备210、212、214的用户界面234、236、238上的“指向”按钮(或者其他类似控制)时,在指向方向与显示器202的交点处绘出点(或者其他光标)。
图3提供了使用一个或多个计算设备提供与计算机驱动的显示器的个性化交互的另一示例性系统300。该系统300与关于图2所讨论的系统类似地操作,但是允许由用户304、306、308录入的内容在显示器上被个性化。该系统300还采用房间服务器318。如在图3中所示出的,系统300还包括一个或多个移动计算设备310、312、314,每个移动计算设备与用户304、306、308相关联。系统300还包括显示器302以及一个或多个照相机或者基于视觉的传感器316,其采集显示器302和用户304、306、308的图像344。系统300还采用跟踪每个用户的基于视觉的用户跟踪和识别单元324,并且使用所采集的图像识别每个用户的身份。房间服务器318经由无线网络340(例如,蓝牙、wifi)与每个移动计算设备310、312、314通信。房间服务器/计算设备318通过直接地连接到这些设备或者经由无线或有线网络320被连接,还与一个或多个照相机或者基于视觉的传感器316、显示器302以及基于视觉的跟踪系统324进行通信(在基于视觉的跟踪系统不是房间服务器318的一部分的情况下)。
当在触摸事件从移动计算设备310、312、314被接收近似相同时间用户304、306、308在距显示器的规定距离内时,计算设备/房间服务器发出命令以对显示器302进行重新配置。此外,移动计算设备310、312、314上的用户界面334、336、338改变,以基于给定用户距显示器的距离来实现相对于显示器302的不同功能。
系统300与图2中所描绘的系统200类似地操作,并且可以针对每个用户的输入使得在显示器上显示的信息个性化。为此目的,获得一个或多个移动计算设备用户中的每个移动计算设备用户的身份并且将每个用户的身份与对应的移动计算设备相关联的用户标识单元328用于确定哪个用户在距显示器的规定距离内。由于房间服务器318知道每个人/用户的身份(例如,经由注册模块328或者通过将从移动计算设备上的传感器接收到的数据与用户位置相关联),可以实现个性化交互。例如,每个用户304、306、308可以具有他或她自己的笔划颜色和浓度以在显示器302上显示。两个人可以各自利用不同的颜色在显示器同时书写。多个用户304、306、308可以使用其移动计算设备各自利用不同的着色点同时地指向显示器302。如果基于视觉的用户跟踪和识别单元324跟踪到用户的手部在距显示器302的规定距离内,则相对于显示器的用户姿态的注释在用户的手部的位置处(例如,在规定距离内)在显示器302上被示出。注释可以基于通过使用用户个性化模块342做出注释的用户的身份而被个性化,用户个性化模块342通过使用不同的字体、颜色、笔划宽度或者其他区别属性使得针对每个用户的注释个性化。这些个性化可以从房间服务器318的显示器发出模块346被发送到显示器302。
如果用户跟踪和识别单元324跟踪到用户在距显示器302的规定距离内,则用户的移动计算设备310、312、314上的用户界面334、336、338上显示的内容改变,以允许用户304、306、308将在显示器上示出信息录入到移动设备310、312、314上息。在用户的移动计算设备310、312、314上示出的用户界面334、336、338还在用户304、306、308移动超过规定距离时改变。
可以存在关于图1、图2和图3所讨论的系统200、300的变型。例如,标识大型显示器处的用户的备选方式是使用近场通信(nfc)技术。例如,移动计算设备可以通过使用低功耗蓝牙(ble)与大型显示器通信。
在一些实现中,移动计算设备的位置由手部位置推断。然而,存在定位移动计算设备的备选方案。例如,一些实现使用每个移动计算设备发射音频波(理想地,人耳不可听见)。使用大型显示器或者包含大型显示器的房间中的麦克风阵列,声源位置技术被用于估计任何移动计算设备的位置。另一实现根据所采集的图像直接地识别并且定位移动计算设备。特别地,如果移动计算设备发射特殊的光图案,则根据图像定位设备是相当容易的。
2.2示例性过程
图4描绘了根据在此所描述的一些大型显示器交互方案的用于在显示器上显示内容的计算机实现的过程400。如在块402中所示出的,一个或多个移动计算设备用户相对于计算机驱动的显示器被跟踪。确定触摸事件是否从移动计算设备被接收并且该移动计算设备的用户距计算机驱动的显示器多远,如在块404中所示。在显示器上示出的内容基于给定移动计算设备用户距计算机驱动的显示器的距离而被配置,如在块406中所示。在给定用户的移动计算设备上所显示的用户界面还基于给定用户距计算机驱动的显示器的距离改变,以允许用户基于他或她距大型显示器的距离而以不同的方式改变在显示器上所显示的内容。
如果给定用户在距显示器的规定距离内,则在显示器上呈现给定用户似乎在显示器上书写的注释。给定用户的手部的位置被用于确定给定用户在显示器上正在书写的注释的位置。例如,当给定用户在移动计算设备上录入文本,同时用户在距显示器的规定距离内时(并且特定触摸事件从给定用户的移动计算设备被接收),如在块404中所示出的,用户在移动计算设备上录入的文本将被显示在计算机驱动的显示器上(如在块406中所示)。此外,如果给定用户在移动计算设备的触摸屏上录入绘图或者文本,同时用户在距计算机驱动的显示器的规定距离内(并且特定触摸事件从给定用户的移动计算设备被接收),如在块404中所示,该文本还将被呈现在计算机驱动的显示器上(如在块406中所示)。
如果给定用户大于距显示器的规定距离,则在显示器上实现由用户的移动计算设备的运动控制的指针。在一个实施例中,通过改变给定用户的设备上的用户界面来使得指针能够显示控件,控件当被激活时,在大型显示器上显示由给定用户的设备的运动控制的光标。在另一实施例中,光标位置基于给定用户的跟踪手臂和手部位置而被估计。
在距显示器的规定距离内的多个用户可以同时地改变显示器的内容。
图5描绘了在计算机驱动的显示器上显示个性化内容的另一示例性计算机实现的过程500。如在块502中所示,一个或多个移动计算设备用户相对于显示器被跟踪。获得(或者一般地或者特殊地)用户中的每个用户的身份并且每个用户的身份与对应的移动计算设备相关联,如在块504中所示。所标识的用户被允许在跟踪用户的手部在距显示器的规定距离内的情况下改变在显示器上所呈现的内容,如在块506中所示。在显示器上呈现的改变的内容可以基于对显示器进行注释的所标识的用户的身份而被个性化。例如,在显示器上呈现的改变的内容可以基于所标识的用户的身份而被个性化,所标识的用户对显示器进行注释以便以与显示器的其他用户不同的颜色、字体、笔划宽度和/或笔划大小来示出注释。
规定距离内的超过一个所标识的用户可以通过对显示器上的内容进行注释来同时地改变在显示器上呈现的内容,并且基于写入注释的用户的身份,注释将以不同的颜色、字体、字体大小、笔划宽度或者其他属性而被显示。此外,当一个或多个用户距显示器比规定距离更远时,其可以利用针对每个用户的唯一光标指向在显示器上呈现的内容。
3.0其他实现
上文已经描述的内容包括示例实现。当然,出于描述要求保护的主题的目的的部件或者方法的每个可以想象的组合是不可能的,但是本领域的普通技术人员可以认识到,许多进一步的组合和排列是可能的。因此,要求保护的主题旨在涵盖落在上文所描述的麦克风放置实现的详细描述的精神和范围内的所有这样的变更、修改和变型。
关于由上文所描述的部件、设备、电路、系统等所执行的各种功能,被用于描述这样的部件的术语(包括对“装置”的引用)旨在除非另外指示,否则对应于执行所描述的部件(功能等效)的特定功能的任何部件,即使未结构上等效于所公开的结构,其也执行要求保护的主题的在此所描述的示例性方面中的功能。在该方面中,还将认识到,前述实现包括系统以及具有用于执行要求保护的主题的各种方法的动作和/或事件的计算机可执行指令的计算机可读存储介质。
存在实现前述实现的多种方式(诸如适当的应用编程接口(api)、工具箱、驱动程序代码、操作系统、控件、独立或者可下载的软件对象等),其使得应用和服务能够使用在此所描述的实现。要求保护的主题从api(或者其他软件对象)的观点以及从根据在此阐述的实现操作的软件或者硬件对象的观点来预期该使用。因此,在此所描述的各种实现可以具有全部在硬件中、或者部分在硬件中并且部分在软件中、或者全部在软件中的方面。
已经关于多个部件之间的交互描述了前述系统。将理解到,这样的系统和部件可以包括那些部件或者指定子部件,指定部件或者子部件中的一些、和/或附加部件,以及根据前述内容的各种排列和组合。子部件还可以被实现为通信地耦合到其他部件而不是被包括在父部件内的部件(例如,层次部件)。
此外,应注意到,一个或多个部件可以被组合为单个部件,其提供聚合功能或者被分为多个分离的子部件,并且任何一个或多个中间层(诸如管理层)可以被提供以通信地耦合到这样的子部件以便提供集成功能。在此所描述的任何部件还可以与在此未特别地描述但是通常由本领域的技术人员已知的一个或多个其他部件。
以下段落概述可以在本文档中要求保护的实现的各种示例。然而,应当理解,下面概述的实现不旨在限制鉴于前述描述可以要求保护的主题。进一步地,可以在与贯穿前述描述所描述的实现中的一些或全部和附图中的一个或多个所图示的任何实现以及下面所描述的任何其他实现的任何期望组合中要求保护下面概述的任何或全部实现。另外,应当注意,以下实现旨在鉴于贯穿本文档所描述的前述描述和附图而被理解。
在此所描述的各种大型显示器交互实现通过用于将移动设备与人员跟踪组合以实现新的交互的装置、系统和过程,其包括使非触敏显示器触敏并且允许与显示器的个性化交互。
作为第一示例,在提供与显示器的交互的系统中实现各种大型显示器交互实现。该系统包括:计算机驱动的显示器;一个或多个照相机,其采集显示器和一个或多个用户的图形;基于视觉的用户跟踪单元,其使用所采集的图像跟踪每个用户;至少一个计算设备,其与一个或多个移动计算设备、一个或多个照相机、显示器以及基于视觉的跟踪系统进行通信,每个移动计算设备与用户相关联,并且其发出命令以在事件从移动计算设备被接收并且用户在距计算机驱动的显示器的规定距离内时,对显示器进行重新配置。
作为第二示例,在各种实现中,第一示例由装置、过程或者技术进一步修改以进一步包括用户标识单元,其获得一个或多个移动计算设备用户中的每个移动计算设备用户的身份,并且将每个用户的身份与对应的移动计算设备相关联以允许针对所标识的用户而对被发出到显示器的命令进行个性化。
作为第三示例,在各种实现中,第一示例和第二示例中的任一个经由装置、过程或者技术进一步被修改,使得当跟踪单元跟踪到用户的手部在距显示器第一规定距离内时,与相对于显示器的用户姿态对应的注释在显示器上的用户的手部的第二规定距离内在显示器上被显示。
作为第四示例,在各种实现中,第一示例、第二示例和第三示例中的任一个由装置、过程和技术进一步修改,使得给定移动计算设备从第一用户被传递到第二用户并且给定移动计算设备与第二用户相关联。
作为第五示例,在各种实现中,第一示例、第二示例、第三示例和第四示例中的任一个经由装置、过程和技术进一步被修改,使得如果跟踪和识别单元跟踪到用户在距显示器的规定距离内,则在用户的移动电话上所显示的内容改变以允许用户使用移动设备作为用于将信息录入到显示器的输入设备。
作为第六示例,在各种实现中,第一示例、第二示例、第三示例、第四示例和第五示例中的任一个由装置、过程和技术进一步修改,使得在用户的移动计算设备上所显示的用户界面基于用户距显示器的距离而改变。
作为第七示例,在用于在计算机驱动的显示器上显示个性化内容的系统中实现各种大型显示器交互实现。该系统包括:一个或多个计算设备,每个计算设备包括处理器、通信接口以及存储器,其中每当存在多个计算设备时,计算设备经由计算机网络彼此通信;以及计算机程序,其具有由一个或多个计算设备可执行的程序模块,一个或多个计算设备由计算机程序的程序模块引导以相对于显示器跟踪一个或多个移动计算设备用户;获得用户中的每个用户的身份并且将每个用户的身份与对应的移动计算设备相关联;并且允许所标识的用户在跟踪用户的手部在距显示器的规定距离内的情况下改变在显示器上呈现的内容。
作为第八示例,在各种实现中,第七示例经由装置、过程或者技术进一步被修改,使得在显示器上呈现的改变的内容基于对显示器进行注释的所标识的用户的身份而被个性化。
作为第九示例,在各种实现中,第七示例和第八示例中的任一个经由装置、过程或者技术进一步被修改,使得在规定距离内的一个或多个所标识的用户可以通过对显示器上的内容进行注释来改变在显示器上所显示的内容。
作为第十示例,在各种实现中,第七示例、第八示例和第九示例中的任一个经由装置、过程或者技术进一步修被改,使得当所标识的用户距显示器大于规定距离时,用户的移动计算设备被用于控制显示器上的个性化指针。
作为第十一示例,在用于在计算机驱动的显示器上显示内容的过程中实现各种大型显示器交互实现。过程相对于显示器跟踪一个或多个移动计算设备用户;并且基于给定移动计算设备用户距显示器的距离,对在显示器上呈现的内容进行配置。
作为第十二示例,在各种实现中,第十一示例经由装置、过程和技术进一步被修改,使得在给定用户的移动计算设备上所显示的用户界面基于给定用户距显示器的距离而被改变。
作为第十三示例,在各种实现中,第十一示例和第十二示例中的任一个经由装置、过程和技术进一步被修改,使得如果给定用户在距显示器的规定距离内,则给定用户似乎在显示器上写入的注释被显示在显示器上。
作为第十四示例,在各种实现中,第十一示例、第十二示例和第十三示例中的任一个经由装置、过程和技术进一步被修改,使得给定用户的手部的位置被用于确定给定用户正在显示器上写入的注释的位置。
作为第十五示例,在各种实现中,第十一示例、第十二示例、第十三示例和第十四示例中的任一个经由装置、过程和技术进一步被修改,使得如果给定用户在距显示器的规定距离内,则给定用户在给定用户的移动计算设备上录入的文本被显示在显示器上。
作为第十六示例,在各种实现中,第十一示例、第十二示例、第十三示例、第十四示例和第十五示例中的任一个经由装置、过程和技术进一步被修改,其中如果给定用户在距显示器的规定距离内,则给定用户在给定用户的移动计算设备的触摸屏上录入的绘图或者文本被显示在显示器上。
作为第十七示例,在各种实现中,第十一示例、第十二示例、第十三示例、第十四示例、第十五示例和第十六示例中的任一个经由装置、过程和技术进一步被修改,使得如果给定用户在距显示器的大于规定距离的距离处,则在显示器上启用给定移动计算设备用户控制的指针。
作为第十八示例,在各种实现中,第十七示例经由装置、过程和技术进一步被修改,使得通过改变给定用户的设备上的用户界面使得指针能够显示控件,控件当被激活时,显示由给定用户的设备的运动控制的大型显示器上的光标。
作为第十九示例,在各种实现中,第十七示例经由装置、过程和技术进一步被修改,使得通过改变给定用户的移动计算设备上的用户界面使得指针能够显示控件,控件当被激活时,在大型显示器上显示光标,光标的位置基于给定用户的跟踪手臂和手部位置而被估计。
作为第二十示例,在各种实现中,第十一示例、第十二示例、第十三示例、第十四示例、第十五示例、第十六示例、第十七示例、第十八示例和第十九示例中的任一个经由装置、过程和技术进一步被修改,使得在距显示器的规定距离内的多个用户可以同时地改变显示器的内容。
4.0示例性操作环境:
在此所描述的大型显示器交互实现在许多类型的通用或者专用计算系统环境或者配置中是可操作的。图6图示了在其上可以实现如在此所描述的大型显示器交互实现的各种元素的通用计算机系统的简化示例。应注意到,由图6中所示的简化计算设备600中的点线或者虚线表示的任何框表示简化计算设备的备选实现。如下面所描述的,这些备选实现中的任何或全部可以组合贯穿本文档所描述的其他备选实现而一起使用。
简化计算设备600通常在具有至少一些最小计算能力的设备中被找到,诸如个人计算机(pc)、服务器计算机、手持式计算设备、膝上型或者移动计算机、通信设备(诸如手机和个人数字助理(pda))、微处理器系统、基于微处理器的系统、机顶盒、可编程消费者电子装置、网络pc、微型计算机、大型计算机和音频或者视频媒体播放器。
为了允许设备实现在此所描述的大型显示器交互实现,设备应当具有足够的计算能力和系统存储器以实现基本计算操作。特别地,图6中所示的简化计算设备600的计算能力通常由一个或多个处理单元610来说明,并且还可以包括一个或多个图形处理单元(gpu)615,它们中的一者或二者与系统存储器620通信。注意,简化计算设备600的(一个或多个)处理单元610可以是专用微处理器(诸如数字信号处理器(dsp)、超长指令字(vliw)处理器、现场可编程门阵列(fpga)或者其他微控制器),或者可以是具有一个或多个处理核的常规中央处理单元(cpu),并且其还可以包括一个或多个基于gpu的核或者多核处理器中的其他专用核。
另外,简化移动设备600还可以包括其他部件(诸如例如通信接口630)。简化计算设备600还可以包括一个或多个常规计算机输入设备640(例如,触摸屏、触敏表面、指点设备、键盘、音频输入设备、基于语音或者语言的输入和控制设备、视频输入设备、触觉输入设备、用于接收有线或无线数据传输的设备等)或者这样的设备的任何组合。
类似地,通过各种自然用户接口(nui)场景实现与简化计算设备600并且与麦克风放置实现的任何其他部件或者特征的各种交互,包括对与麦克风放置实现相关联的一个或多个用户或其他设备或系统的输入、输出、控制、反馈和响应。由麦克风放置实现启用的nui技术和场景包括但不限于允许一个或多个用户以“自然的”方式与麦克风放置实现交互的接口技术,免于由输入设备(诸如鼠标、键盘、遥控器等)施加的人工约束。
通过使用各种技术实现这样的nui实现,包括但不限于使用从经由麦克风或者其他输入设备640或者系统传感器605采集的用户声音或者语音获得的nui信息。还通过使用各种技术实现这样的nui实现,包括但不限于从用户的面部表情并且从用户的手部、手指、手腕、手臂、腿、身体、头部、眼睛等的位置、运动或者方向从系统传感器605或者其他输入设备640得到的信息,其中这样的信息可以使用各种类型的2d或者深度成像设备(诸如立体或者飞行时间照相机系统、红外照相机系统、rgb(红、绿和蓝)照相机系统等或者这样的设备的任何组合)而被采集。这样的nui实现的进一步的示例包括但不限于从触摸和触针识别、姿态识别(在屏幕上和在屏幕或显示表面附近)、基于空气或者触摸的姿态、用户触摸(在各种表面、对象或其他用户上)、基于悬停的输入或动作等得到的nui信息。这样的nui还可以包括但不限于单独或者组合其他nui信息评价当前或者过往用户行为、输入、动作等的各种预测性机器智能过程的使用以便预测信息(诸如用户意图、期望和/或目标)。不管基于nui的信息的类型或者来源如何,这样的信息可以然后被用于发起、终止或以其他方式控制或者交互大型显示器交互实现的一个或多个输入、输出、动作或者功能特征。
然而,应当理解,前述示例性nui场景可以通过将人工约束或者附加信号的使用与nui输入的任何组合进行组合来进一步被增强。这样的人工约束或者附加信号可以由输入设备640(诸如鼠标、键盘和遥控器)或者由各种远程或者用户穿戴设备(诸如加速度计、用于接收代表由用户的肌肉所生成的电信号的肌肉电信号的肌电图(emg)传感器、心率监视器、用于测量用户发汗的电流皮肤导电传感器、用于测量或者以其他方式感测用户大脑活动或者电场的可穿戴或者远程生物传感器、用于测量用户体温改变或者差别的可穿戴或者远程生物传感器等)施加或者生成。从这些类型的人工约束或者附加信号得到的任何这样的信息可以与任何一个或多个nui输入组合以发起、终止或以其他方式控制或者交互与大型显示器个性化交互实现的一个或多个输入、输出、动作或者功能特征。
简化计算设备600还可以包括其他可选部件,诸如一个或多个常规计算机输出设备650(例如,(一个或多个)显示设备650、音频输出设备、视频输出设备、用于发射有线或无线数据传输的设备等)。注意,通用计算机的典型的通信接口630、输入设备640、输出设备650以及存储设备660对于本领域的技术人员而言是众所周知的,并且在此将不详细描述。
图6中所示的简化计算设备600还可以包括各种计算机可读介质。计算机可读介质可以是可以由计算设备600经由存储设备660访问的任何可用介质,并且包括作为可移除的存储装置670和/或不可移除的存储装置680的易失性介质和非易失性介质二者,以用于信息(诸如计算机可读或者计算机可执行指令、数据结构、程序模块或者其他数据)的存储。
计算机可读介质包括计算机存储介质和通信介质。计算机存储介质指代有形计算机可读或者机器可读介质或者存储设备,诸如数字通用光盘(dvd)、蓝光光盘(bd)、压缩光盘(cd)、软盘、磁带驱动器、硬盘驱动器、光盘驱动器、固态存储器设备、随机存取存储器(ram)、只读存储器(rom)、电可擦可编程只读存储器(eeprom)、cd-rom或者其他光盘存储、智能卡、闪速存储器(例如,卡、棒和键驱动)、磁带盒、磁带、磁盘存储装置、磁条或者其他磁性存储设备。进一步地,传播信号未被包括在计算机可读存储介质的范围内。
信息(诸如计算机可读指令或者计算机可执行指令、数据结构、程序模块等)的保留还可以通过使用各种前述通信介质(与计算机存储介质相反)中的任一个被完成,以编码一个或多个调制数据信号或者载波,或者其他传输机制或通信协议,并且可以包括任何有线或无线信息递送机制。注意,术语“调制数据信号”或者“载波”通常指代具有以关于将信息编码在信号中的这样的方式设定或者改变的其特性中的一个或多个特性的信号。例如,通信介质可以包括有线介质(诸如携带一个或多个调制数据信号的有线网络或者直接有线连接),以及无线介质(诸如用于发送/或接收一个或多个调制数据信号或载波的声学、射频(rf)、红外、激光和其他无线介质)。
此外,体现在此所描述的各种大型显示器个性化交互实现中的一些或全部或其部分的软件、程序和/或计算机程序产品可以从计算机可读介质或者机器可读介质或者存储设备和以计算机可执行指令或者其他数据结构的形式的通信介质的任何期望组合而被存储、被接收、被传送或者被读取。此外,要求保护的主题可以被实现为使用标准编程和/或工程技术产生软件、固件、硬件或其任何组合以控制计算机实现所公开的主题的方法、装置或者制造品。如在此使用的术语“制造品”旨在涵盖从任何计算机可读设备或者介质可访问的计算机程序。
在计算机可执行指令(诸如程序模块)由计算设备执行的一般上下文中可以进一步描述在此所描述的大型显示器交互实现。通常,程序模块包括执行特定任务或者实现特定抽象数据类型的例程、程序、对象、部件、数据结构等。还可以在其中任务由一个或多个远程处理设备执行的分布式计算环境中或者在通过一个或多个通信网络链接的一个或多个设备的云内实践大型显示器交互实现。在分布式计算环境中,程序模块可以被定位在包括介质存储设备的本地和远程计算机存储介质二者中。此外,前述指令可以部分或者全部被实现为硬件逻辑电路,其可以包括处理器或可以不包括处理器。
备选地,或者附加地,可以至少部分地通过一个或多个硬件逻辑部件执行在此所描述的功能。例如,并且非限制性的,可以使用的说明性类型的硬件逻辑部件包括现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑器件(cpld),等等。
出于图示和描述的目的,已经呈现了大型显示器交互实现的前述描述。其不旨在是穷尽的或者将要求保护的主题限于所公开的精确形式。鉴于以上教导,许多修改和变型是可能的。进一步地,应当指出,任何或者全部前述备选实现可以以期望的任何组合用于形成麦克风放置实现的附加混合实现。应预期到,本发明的范围不由该具体实施方式而是由所附附到其的权利要求来限制。虽然已经以特定于结构特征和/或方法动作的语言描述主题,但是将理解到,所附的权利要求中定义的主题不必限于上文所描述的特定特征或动作。相反,上文所描述的特定特征和动作被公开为实现权利要求的示例形式,并且其他等效特征和动作旨在也在权利要求的范围之内。