装饰显示环境的制作方法

文档序号:6350880阅读:155来源:国知局
专利名称:装饰显示环境的制作方法
装饰显示环境
背景技术
计算机用户已使用各种绘图工具来创建艺术品。一般来说,通过使用鼠标在计算机的视听显示器的显示屏幕上创建这种艺术品。艺术家可通过在显示屏幕上移动光标并通过执行一系列点击动作来生成图像。另外,艺术家可使用键盘或鼠标来选择用于装饰所生成的图像内的各元素的颜色。另外,艺术应用包括用于添加或改变颜色、形状等的各种编辑工具。需要艺术家可使用除鼠标和键盘之外的计算机输入设备来创建艺术品的系统和方法。此外,期望提供使用艺术品的创建来增加用户感知的交互性的程度的系统和方法。

发明内容
在此公开了用于装饰显示环境的系统和方法。在一个实施例中,用户可通过作出一个或多个姿势、使用语音命令、使用合适的接口设备和/或其组合来装饰显示环境。可检测语音命令来实现用户对用于装饰在显示环境中的艺术特征的选择,诸如颜色、纹理、对象和/或视觉效果。例如,用户可说出用于为显示环境的某区域或部分上色的期望颜色选择,并且该话音可被识别为对该颜色的选择。另选地,语音命令可选择用于装饰显示环境的纹理、对象、视觉效果中的一个或多个。用户还可作出选择或定向显示环境的一部分来装饰的姿势。例如,用户可以用他或她的手臂作出投掷运动来选择显示环境的该部分。在这个示例中,在一对象被用户以用户的投掷速度和轨迹投掷的情况下,所选择的部分可以是视听设备的显示屏幕上被该对象接触的区域。接着,可基于所选的艺术特征来更改显示环境的所选部分。在显示环境中用户的运动可以被反映在化身上。另外,可以将虚拟画布或三维对象显示在显示环境中供用户装饰。在另一实施例中,可以基于用户的姿势的特征来装饰显示环境的一部分。用户的姿势可以由图像捕捉设备来检测。例如,用户的姿势可以是投掷移动、手腕移动、躯干移动、手移动、腿移动或手臂移动等。可以确定用户的姿势的特征。例如,可以确定与移动相关联的速度、方向、开始位置、结束位置等中的一个或多个。基于这些特征中的一个或多个,可以选择显示环境的一部分来装饰。可以基于用户的姿势的特征来更改显示环境的所选部分。例如,所选部分在显示环境中的位置、所选部分的大小、和/或所选部分的图案可以基于用户的投掷运动的速度和/或方向。在又一实施例中,可以以用于装饰在显示环境中的模板的形式来使用所捕捉的对象图像。对象的图像可以由图像捕捉设备来捕捉。可以确定对象在所捕捉的图像中的至少一部分的边缘。可以基于所确定的边缘来定义显示环境的一部分。例如,可以确定对象(诸如用户)的轮廓。在这个示例中,显示环境的定义部分可以具有与用户的轮廓匹配的形状。例如可以通过上色、通过添加纹理和/或通过视觉效果来装饰定义部分。提供本发明内容以便以简化形式介绍将在以下的具体实施方式
中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键或必要特征,也不旨在用于限定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本公开的任一部、分中提及的任何或所有缺点的实现。


参考附图来进一步描述根据本说明书的用于更改虚拟环境内的视图视角的系统、方法和计算机可读介质,在附图中图IA和IB示出了目标识别、分析和跟踪系统的配置的示例实施例,其中用户正使用姿势来控制化身及与应用进行交互;
图2示出图像捕捉设备的示例实施例;图3示出可用于装饰显示环境的计算环境的示例实施例;图4示出用于根据所公开的主题来解释用于装饰显示环境的一个或多个姿势的计算环境的另一示例实施例;图5描绘了用于装饰显示环境的示例方法500的流程图;图6描绘了用于装饰显示环境的另一示例方法的流程图;图7是显示环境的定义部分的示例的屏幕显示,该定义部分与用户在所捕捉的图像中的轮廓具有相同形状;以及图8-11是根据所公开的主题来装饰的显示环境的其他示例的屏幕显示。说明性实施例的
具体实施例方式如在此将描述的,用户可通过作出一个或多个姿势、使用语音命令、和/或使用合适的接口设备来装饰显示环境。根据一个实施例,可以检测语音命令来实现对艺术特征(诸如,颜色、纹理、对象和视觉效果)的用户选择。例如,用户可说用于为显示环境的某区域或部分上色的期望颜色选择,并且该话语可被识别为对该颜色的选择。另外,语音命令可选择纹理、对象、或用于装饰显示环境的视觉效果中的一个或多个。用户还可以作出姿势来选择显示环境的一部分来装饰。例如,用户可以用他或她的手臂作出投掷运动来选择显示环境的该部分。在这个示例中,在一对象被用户以用户的投掷速度和轨迹投掷的情况下,所选择的部分可以是视听设备的显示屏幕上被该对象接触的区域。接着,可基于所选的艺术特征来更改显示环境的所选部分。在另一实施例中,可以基于用户的姿势的特征来装饰显示环境的一部分。用户的姿势可以由图像捕捉设备来检测。例如,用户的姿势可以是投掷移动、手腕移动、躯干移动、手移动、腿移动、手臂移动等。可确定用户的姿势的特征。例如,可以确定与移动相关联的速度、方向、起始位置、最终位置等中的一个或多个。基于这些特征中的一个或多个,可以选择显示环境的要装饰的部分。可以基于用户的姿势的特征来更改显示环境的所选部分。例如,所选部分在显示环境中的位置、所选部分的大小、和/或所选部分的图案可以基于用户的投掷运动的速度和/或方向。在又一实施例中,可以以模板的形式来使用所捕捉的对象的图像,以供在显示环境中进行装饰。对象的图像可以由图像捕捉设备来捕捉。可以确定对象在所捕捉的图像中的至少一部分的边缘。可以基于所确定的边缘来定义显示环境的一部分。例如,可以确定对象(诸如用户)的轮廓。在这个示例中,显示环境的定义部分可以具有与用户的轮廓匹配的形状。例如可以通过上色、通过添加纹理和/或通过视觉效果来装饰定义部分。图IA和IB示出了目标识别、分析和跟踪系统10的配置的示例实施例,其中用户18正使用姿势来控制化身13并与应用进行交互。在该示例实施例中,系统10可识别、分析和跟踪用户的手15或用户18的其他附肢的移动。此外,如在此更详细描述的,系统10可分析用户18的移动,并基于手移动或用户的其他附肢来确定在视听设备16的显示器14内的化身13的外观和/或活动。如在此更详细描述的,系统10还可以分析用户的手15或其他附肢的移动来装饰虚拟画布17。如图IA所示,系统10可包括计算环境12。计算环境12可以是计算机、游戏系统、控制台等。根据一示例实施例,计算环境12可包括硬件组件和/或软件组件,使得计算环境12可用于执行诸如游戏应用、非游戏应用等应用。如图IA所示,系统10可包括图像捕捉设备20。如将在下面更详细地描述的,捕捉设备20可以是例如检测器,该检测器可用于监视诸如用户18等一个或多个用户,以使得可以捕捉、分析并跟踪该一个或多个用户所执行的移动以确定期望姿势,诸如用于控制应用内的化身13的手移动。另外,可以捕捉、分析并跟踪一个或多个用户所执行的移动来装饰画布17或显示器14的另一部分。
根据一个实施例,系统10可以被连接至视听设备16。视听设备16可以是可向诸如用户18等用户提供游戏或应用视觉和/或音频的任何类型的显示系统,诸如电视机、监视器、高清电视机(HDTV)等。例如,计算环境12可包括诸如图形卡等视频适配器和/或诸如声卡等音频适配器,这些适配器可提供与游戏应用、非游戏应用等相关联的视听信号。视听设备16可以接收来自计算环境12的视听信号,然后可向用户18输出与该视听信号相关联的游戏或应用视觉和/或音频。根据一个实施例,视听设备16可经由例如,S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA电缆等连接到计算环境12。如图IB所示,在一示例实施例中,应用可以在计算环境12中执行。该应用可被表示在视听设备16的显示空间内。用户18可以使用姿势来控制化身13的移动以及对所显示的环境内的画布17的装饰,并控制化身13与画布17的交互。例如,用户18可以以如图IB所示的下手(underhand)投掷运动来移动他的手15,以类似地移动化身13的对应的手和手臂。此外,用户的投掷运动可使得画布17的部分21根据所定义的艺术特征而被更改。例如,部分21可以被上色、被更改成具有纹理外观、被更改为已受到对象(例如,油灰或其他稠密物质)的影响、或被更改为包括变化效果(例如,三维效果)等。另外,可基于用户的投掷运动来呈现动画,使得化身表现为正在将对象或物质(诸如,颜料)投掷到画布17上。在这个示例中,动画的结果可以是将画布17的部分21更改为包括艺术特征。因此,根据一示例实施例,系统10的计算机环境12和捕捉设备20可用于识别和分析用户18在物理空间中的姿势,使得该姿势可被解释为化身13在游戏空间中装饰画布17的控制输入。在一个实施例中,计算环境12可识别用户的手的打开和/或握紧位置以确定在虚拟环境中释放颜料的时间。例如,如上所述,可控制化身来将颜料“投掷”到画布17上。化身的移动可模仿用户的投掷运动。在投掷运动期间,将颜料从化身的手中释放以将该颜料投掷到画布上的时间可被确定为与用户打开他或她的手的时间相对应。例如,用户可以用“握着”颜料的握紧的手来开始投掷运动。在这个示例中,在用户投掷运动期间的任何时间,用户可以打开他或她的手来控制化身释放该化身所握着的颜料,使得该颜料向画布行进。颜料从化身的手处释放的速度和方向可以与用户的手的速度和方向(即,打开手时的速度和方向)直接相关。以这种方式,虚拟环境中化身对颜料的投掷可以与用户的运动相对应。
在另一实施例中,不是通过投掷运动或与该运动相结合来将颜料应用到画布17上,而是用户可以以轻击运动移动他或她的手腕来将颜料应用于画布。例如,计算环境12可以将快速的手腕移动识别为将少量颜料应用到画布17的一部分上的命令。化身的移动可以反映用户的手腕移动。另外,可以在显示环境中呈现动画,使得该动画表现为化身正使用它的手腕将颜料轻击到画布上。画布上得到的装饰可以取决于用户的手腕移动的运动速度和/或方向。在另一个实施例中,可以只在用户空间的单个平面中识别用户移动。用户可以提供使计算环境12仅识别他或她在与用户有关的X-Y平面或X-Z平面等中的移动的命令,使得用户在该平面外部的运动被忽略。例如,如果仅X-Y平面中的移动被识别,则Z方向的移动被忽略。这个特征对于通过用户的手的移动来对画布进行绘制而言可以是有用的。例如,用户可以在X-Y平面中移动他或她的手,并且与该用户的移动相对应的线路可以被生成在画布上,该线路具有与用户在X-Y平面中的移动直接对应的形状。此外,在一替换例中,可以识别其他平面中影响更改的有限运动,如此处所述。 系统10可以包括话筒或其他合适的设备,所述话筒或其他合适的设备用于检测来自用户的语音命令来用于选择装饰画布17的艺术特征。例如,多个艺术特征可各自被定义、被存储在计算环境12中、并与用于其选择的语音识别数据相关联。光标13的颜色和/或图形可基于音频输入而改变。在一示例中,用户的语音命令可改变将装饰应用于画布17的模式。用户可以说单词“红”,并且这个单词可以被计算环境12解释为输入用红颜色来绘制画布17的模式的命令。一旦处于用特定颜色来进行绘制的模式中,用户可随后作出用他或她的手来将颜料“投掷”到画布17上的一个或多个姿势。化身的移动可以模仿该用户的运动,并且可以呈现动画使得该动画表现为化身正在将颜料投掷到画布17上。图2示出可在系统10中使用的图象捕捉设备20的示例实施例。根据该示例实施例,捕捉设备20可被配置成经由任何合适的技术(包括例如飞行时间、结构化光、立体图像等)来捕捉带有包括一个或多个图像的用户移动信息的视频,用户移动信息可包括姿势值。根据一个实施例,捕捉设备20可将计算出的姿势信息组织为坐标信息,诸如笛卡尔坐标和/或极坐标。可以随时间监视如本文所述的用户模型的坐标以确定用户或其他附肢的移动。基于用户模型坐标的移动,计算环境可确定用户是否正作出用于装饰画布(或显示环境的其他部分)和/或控制化身的所定义的姿势。如图2所示,根据一示例实施例,图像相机组件22可包括可用于捕捉用户的姿势图像的IR光组件26、三维(3-D)相机26和RGB相机28。例如,捕捉设备20的IR光组件24可以向场景发射红外光,并随后可以使用例如3D相机26和/或RGB相机28使用传感器(未不出)来检测从用户的手或其他附肢的表面反向散射的红外光和/或可见光。在一些实施例中,可以使用脉冲红外光,使得可以测量出射光脉冲与相应入射光脉冲之间的时间,并且将其用于确定从捕捉设备20到用户的手上的特定位置的物理距离。附加地,在其他示例性实施例中,可以将出射光波的相位与入射光波的相位相比较来确定相移。随后可使用相移来确定从捕捉设备到用户的手的物理距离。这个信息还可用于确定用于装饰画布(或显示环境的其他部分)和/或用于控制化身的用户的手移动和/或其他用户移动。根据另一示例性实施例,3D相机可用于通过经由包括例如快门式光脉冲成像在内的各种技术分析反射光束随时间的强度来间接地确定从图像捕捉设备20到用户的手的物理距离。这个信息还可用于确定用户的手的移动和/或其他用户移动。在另一示例实施例中,图像捕捉设备20可使用结构化光来捕捉姿势信息。在这样的分析中,图案化光(即被显示为诸如网格图案或条纹图案之类的已知图案的光)可以经由例如IR光组件24被投影到场景上。在撞击用户的手的表面之后,作为响应图案可变为变形的。图案的这种变形可由例如3-D相机26和/或RGB相机28来捕捉,然后可被分析来确定从捕捉设备到用户的手和/或其他身体部位的物理距离。根据另一实施例,捕捉设备20可包括可以从不同的角度观察场景的两个或更多个在物理上分开的相机,以获取可以被解析以生成姿势信息的视觉立体数据。捕捉设备20还可包括话筒30。话筒30可包括可接收声音并将其转换成电信号的 变换器或传感器。根据一个实施例,话筒30可用于减少系统10中的捕捉设备20和计算环境12之间的反馈。另外,话筒30可用于接收语音信号——该语音信号还可被用户提供来控制化身的活动和/或外观,和/或接收用于装饰画布或显示环境的其他部分的模式。在一示例性实施例中,捕捉设备20还可包括可与图像相机组件22操作地通信的处理器32。处理器32可包括可以执行指令的标准处理器、专用处理器、微处理器等,这些指令可包括用于接收与用户姿势相关的图像的指令、用于确定用户的手或其他身体部位是否可能被包括在姿势图像中的指令、用于将图像转换成骨架表示或者用户的手或其他身体部位的模型的指令、或任何其他合适的指令。捕捉设备20还可包括存储器组件34,存储器组件34可存储可由处理器32执行的指令、3-D相机或RGB相机捕捉到的图像或图像的帧、或任何其他合适的信息、图像等。根据一示例实施例,存储器组件34可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘、或任何其他合适的存储组件。如图2所示,在一个实施例中,存储器组件34可以是与图像捕捉组件22和处理器32进行通信的单独的组件。根据另一实施例,存储器组件34可被集成到处理器32和/或图像捕捉组件22中。如图2所示,捕捉设备20可经由通信链路36与计算环境12进行通信。通信链路36可以是包括例如USB连接、火线连接、以太网电缆连接等的有线连接和/或诸如无线802. Ilb,802. llg、802. Ila或802. Iln连接等的无线连接。根据一个实施例,计算环境12可以经由通信链路36向捕捉设备20提供时钟,该时钟可用于确定何时捕捉场景。另外,捕捉设备20可以经由通信链路36向计算环境12提供由例如3_D相机26和/或RGB相机28捕捉到的用户姿势信息和图像,以及可以由捕捉设备20生成的骨架模型。计算环境12然后可使用该骨架模型、深度信息和捕捉的图像来例如控制例如化身的外观和/或活动。例如,如图2中所示,计算环境12可包括用于存储姿势数据的姿势库190。该姿势数据可包括姿势过滤器的集合,每一姿势过滤器包括与骨架模型(在用户的手或其他身体部位移动时)可能执行的姿势有关的信息。可以将由相机和设备20以骨架模型及与之相关联的移动的形式捕捉的数据与姿势库190中的姿势过滤器进行比较,以标识(如由骨架模型所表示的)用户的手或其他身体部位何时执行了一个或多个姿势。这些姿势可以与用于控制化身的外观和/或活动的各种输入和/或用于装饰画布的动画相关联。由此,计算环境12可使用姿势库190来解释骨架模型的移动,并改变化身的外观和/或活动、和/或用于装饰画布的动画。图3示出根据所公开的主题可用于装饰显示环境的计算环境的示例实施例。以上参考附图1A-2所描述的诸如计算环境12的计算环境可以是多媒体控制台100,诸如游戏控制台。如图3所示,多媒体控制台100具有含有一级高速缓存102、二级高速缓存104和闪存ROM(只读存储器)106的中央处理单元(CPU) 101。一级高速缓存102和二级高速缓存104临时存储数据,并且因此减少存储器访问周期的数量,由此改进处理速度和吞吐量。CPU 101可被提供为具有一个以上的核,并且由此具有附加的一级闻速缓存102和_■级闻速缓存104。闪存ROM 106可存储在多媒体控制台100通电时引导过程的初始阶段期间加载的可执行代码。图形处理单元(GPU) 108和视频编码器/视频编解码器(编码器/解码器)114形成用于高速和高分辨率图形处理的视频处理流水线。经由总线从图形处理单元108向视频编码器/视频编解码器114运送数据。视频处理流水线向A/V(音频/视频)端口 140输
出数据,用于传输至电视或其他显示器。存储器控制器110连接到GPU 108以方便处理器访问各种类型的存储器112,诸如但不局限于RAM(随机存取存储器)。在一个示例中,GPU108可以是广泛并行通用处理器(称为通用GPU或GPGPU)。多媒体控制台100包括较佳地在模块118上实现的I/O控制器120、系统管理控制器122、音频处理单元123、网络接口控制器124、第一 USB主控制器126、第二 USB控制器128和前面板I/O子部件130。USB控制器126和128用作外围控制器142 (I)-142 (2)、无线适配器148、以及外置存储器设备146 (例如,闪存、外置⑶/DVD ROM驱动器、可移动介质等)的主机。网络接口 124和/或无线适配器148提供对网络(例如,因特网、家庭网络等)的访问,并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等的各种不同的有线或无线适配器组件中的任何一种。提供系统存储器143来存储在引导过程期间加载的应用数据。提供媒体驱动器144,且其可包括DVD/⑶驱动器、硬盘驱动器、或其他可移动媒体驱动器等。媒体驱动器144可以是对多媒体控制器100内置的或外置的。应用数据可经由媒体驱动器144访问,以供多媒体控制台100执行、回放等。媒体驱动器144经由诸如串行ATA总线或其他高速连接(例如IEEE 1394)等总线连接到I/O控制器120。系统管理控制器122提供与确保多媒体控制台100的可用性相关的各种服务功能。音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的相应音频处理流水线。音频数据经由通信链路在音频处理单元123与音频编解码器132之间传输。音频处理流水线将数据输出到A/V端口 140,以供外置音频播放器或具有音频能力的设备再现。前面板I/O子部件130支持暴露在多媒体控制台100的外表面上的电源按钮150和弹出按钮152、以及任何LED (发光二极管)或其他指示器的功能。系统供电模块136向多媒体控制台100的组件供电。风扇138冷却多媒体控制台100内的电路。多媒体控制台100内的CPU 101、GPU 108、存储器控制器110、以及各种其他组件经由一条或多条总线互连,该总线包括串行和并行总线、存储器总线、外围总线、以及使用各种总线体系结构中的任一种的处理器或局部总线。作为示例,这些架构可以包括外围部件互连(PCI)总线、PCI-Express总线等。当多媒体控制台100通电时,应用数据可从系统存储器143加载到存储器112和/或高速缓存102、104中,并且可在CPU 101上执行。应用可在导航到多媒体控制台100上可用的不同媒体类型时呈现提供一致的用户体验的图形用户界面。在操作中,媒体驱动器144中所包含的应用和/或其他媒体可从媒体驱动器144启动或播放,以将附加功能提供给多媒体控制台100。多媒体控制台100可通过简单地将该系统连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台100允许一个或多个用户与该系统交互、看电影、或听音乐。然而,在通过网络接口 124或无线适配器148可用的宽带连接集成的情况下,多媒体控制台100还可作为更大网络社区中的参与者来操作。当多媒体控制台100通电时,可以保留设定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可包括存储器的保留量(诸如,16MB)、CPU和GPU周期的保留量(诸如,5% )、网络带宽的保留量(诸如,8kbs),等等。因为这些资源是在系统引导时间保留的,所保留的资源从应用的视角而言是不存在的。 具体而言,存储器保留量优选地足够大,以包含启动内核、并发系统应用程序和驱动程序。CPU保留量优选地为恒定,使得若所保留的CPU用量不被系统应用使用,则空闲线程将消耗任何未使用的周期。对于GPU保留量,通过使用GPU中断来调度代码以将弹出窗口渲染为覆盖图,从而显示由系统应用程序生成的轻量消息(例如,弹出窗口)。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图优选地与屏幕分辨率成比例缩放。在并发系统应用使用完整用户界面的情况下,优选使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而无需改变频率和引起TV重新同步。在多媒体控制台100引导且系统资源被保留之后,执行并发系统应用来提供系统功能。系统功能被封装在上述所保留的系统资源内执行的一组系统应用中。操作系统内核标识出作为系统应用线程而非游戏应用线程的线程。系统应用优选地被调度为在预定时间并以预定时间间隔在CPU 101上运行,以便提供对应用而言一致的系统资源视图。调度是为了使在控制台上运行的游戏应用的高速缓存分裂最小化。当并发系统应用需要音频时,由于时间敏感性而将音频处理异步地调度给游戏应用。多媒体控制台应用管理器(如下所描述的)在系统应用活动时控制游戏应用的音频级别(例如,静音、衰减)。输入设备(例如,控制器142(1)和142(2))由游戏应用和系统应用共享。输入设备不是保留资源,而是在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器较佳地控制输入流的切换,而无需知晓游戏应用的知识,并且驱动程序维护有关焦点切换的状态信息。相机27、28和捕捉设备20可为控制台100定义附加输入设备。图4示出了可用于根据所公开的主题解释用于装饰显示环境的一个或多个姿势的计算环境220的另一示例实施例,该计算环境可以是图1A-2所示的计算环境12。计算系统环境220只是合适的计算环境的一个示例,并且不旨在对当前公开的主题的使用范围或功能提出任何限制。也不应该将计算环境220解释为对示例性操作环境220中示出的任一组件或其组合有任何依赖性或要求。在某些实施例中,所描绘的各种计算元素可包括被配置成实例化本发明的各具体方面的电路。例如,本公开中使用的术语“电路”可包括被配置成通过固件或开关来执行功能的专用硬件组件。其他示例中,术语电路可包括由实施可用于执行功能的逻辑的软件指令配置的通用处理单元、存储器等。在电路包括硬件和软件的组合的示例实施例中,实施者可以编写体现逻辑的源代码,且源代码可以被编译为可以由通用处理单元处理的机器可读代码。因为本领域技术人员可以明白现有技术已经进化到硬件、软件或硬件/软件组合之间几乎没有差别的地步,因而选择硬件或是软件来实现具体功能是留给实现者的设计选择。更具体地,本领域技术人员可以明白软件进程可被变换成等价的硬件结构,而硬件结构本身可被变换成等价的软件进程。由此,对于硬件实现还是软件实现的选择是设计选择之一并留给实现者。在图4中,计算环境220包括计算机241,计算机241通常包括各种计算机可读介质。计算机可读介质可以是能被计算机241访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。系统存储器222包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM) 223和随机存取存储器(RAM) 260。包含诸如在启动期间帮助在计算机241内的元件之间传输信息的基本例程的基本输入/输出系统224(BIOS)通常储存储在ROM 223中。RAM 260通常包含处理单元259可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图4示出了操作系统225、应用程序226、其他程序模块227和程序数据228。
计算机241也可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图4示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器238,从可移动、非易失性磁盘254中读取或向其写入的磁盘驱动器239,以及从诸如⑶ROM或其他光学介质等可移动、非易失性光盘253中读取或向其写入的光盘驱动器240。可在示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器238通常通过诸如接口 234之类的不可移动存储器接口连接到系统总线221,并且磁盘驱动器239和光盘驱动器240通常通过诸如接口 235之类的可移动存储器接口连接到系统总线221。以上讨论并在图4中示出的驱动器及其相关联的计算机存储介质为计算机241提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。在图4中,例如,硬盘驱动器238被示为存储操作系统258、应用程序257、其他程序模块256和程序数据255。注意,这些组件可与操作系统225、应用程序226、其他程序模块227和程序数据228相同,也可与它们不同。在此操作系统258、应用程序257、其他程序模块256以及程序数据255被给予了不同的编号,以说明至少它们是不同的副本。用户可以通过输入设备,例如键盘251和定点设备252——通常是指鼠标、跟踪球或触摸垫——向计算机241输入命令和信息。其他输入设备(未示出)可包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其他输入设备通常通过耦合到系统总线的用户输入接口 236连接到处理单元259,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其他接口和总线结构来连接。相机27、28和捕捉设备20可为控制台100定义附加输入设备。监视器242或其他类型的显示设备也通过诸如视频接口 232之类的接口连接至系统总线221。除了监视器以外,计算机还可包括诸如扬声器244和打印机243之类的其他外围输出设备,它们可通过输出外围接口 233来连接。计算机241可使用到一个或多个远程计算机(诸如,远程计算机246)的逻辑连接而在联网环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点,并且通常包括许多或所有以上相对计算机241所描述的元件,但在图4中仅示出了存储器存储设备247。图2中所描绘的逻辑连接包括局域网(LAN) 245和广域网(WAN) 249,但还可包括其他网络。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。当在LAN联网环境中使用时,计算机241通过网络接口或适配器237连接到LAN245。当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过诸如因特网等WAN 249建立通信的其他手段。调制解调 器250可以是内置的或外置的,可经由用户输入接口 236或其他适当的机制连接到系统总线221。在联网环境中,相对于计算机241所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图4示出了远程应用程序248驻留在存储器设备247上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其他手段。图5描绘了用于装饰显示环境的示例方法500的流程图。参考图5,在505检测用户的选择艺术特征的姿势和/或语音命令。例如,用户可说单词“绿”来选择绿颜色来装饰在图IB所示的显示环境中。在这个示例中,应用可输入颜料模式来用绿颜色进行绘制。另选地,例如,如果用户叫出由计算环境识别的其他颜色,则应用可输入颜料模式。用于装饰的其他模式包括例如用于向画布添加纹理外观的纹理模式、用于使用对象来装饰画布的对象模式、用于向画布添加视觉效果(例如,三维或变化视觉效果)的视觉效果模式等。一旦识别出了模式的语音命令,计算环境可停留在该模式,直到用户提供用于退出该模式或者用于选择另一模式的输入。在510,检测定向或选择显示环境的一部分的用户姿势和/或用户语音命令中的一个或多个。例如,图像捕捉设备可以在用户作出以下各项移动中的一个或多个时捕捉一系列用户图像投掷移动、手腕移动、躯干移动、手移动、腿移动或手臂移动等。检测到的姿势可用于选择所选部分在显示环境中的位置、所选部分的大小和/或所选部分的图案等。此外,计算环境可识别出用户在各所捕捉的图像中的位置的组合对应于一特定移动。另外,可处理用户的移动以检测一个或多个移动特征。例如,计算环境可基于手臂在各个所捕捉的图像中的位置以及这些图像中的两个或更多个之间流逝的时间来确定手臂移动的速度和/或方向。在另一个示例中,基于所捕捉的图像,计算环境可检测用户的移动在这些捕捉图像中的一个或多个中的位置特征。在这个示例中,可检测用户移动的开始位置、结束位置和/或中间位置等来选择显示环境的一部分进行装饰。在一实施例中,在505,使用用户姿势的一个或多个所检测到的特征,可根据所选的艺术特征选择显示环境的一部分来装饰。例如,如果用户选择颜色模式以上红色,并作出如图IA所示的投掷运动,则对画布的部分21上红色。计算环境可确定投掷运动的速度和方向以用于确定部分21的大小、部分21的形状以及部分21在显示环境中的位置。此外,投掷的开始位置和/或结束位置可用于确定部分21的大小、形状和/或位置。在515,基于所选的艺术特征来修改显示环境的所选部分。例如,可以向显示环境的所选部分上红色或用户使用语音命令来选择的其他颜色。在另一示例中,可以用用户所选的任何其他二维图像来装饰所选部分,其他二维图像为诸如条状图案、圆点花样的图案、任何颜色的组合、或任何颜色的混合等。艺术特征可以是适合于显示在显示环境内的任何图像。例如,可以将二维图像显示在显示环境的一部分内。在另一示例中,该图像对查看者可表现为三维的。三维图像对查看者可以表现为具有纹理和深度。在另一示例中,艺术特征可以是随时间改变的动画特征。例如,在所选部分内和/或显示环境的其他部分中图像可表现为有生命的(例如,植物等)并且可随时间长大。在一个实施例中,用户可选择虚拟对象以用于装饰在显示环境中。该对象可以是用于在显示环境的一部分处创建视觉效果的例如油灰或颜料等。例如,在选择了对象后,可以如此处所描述的,控制表示用户的 化身来将该对象投掷在显示环境的该部分处。可以呈现化身投掷对象的动画,并且可以显示对象撞击对象的效果。例如,投掷在画布处的油灰球在与画布撞击后可变平,并可呈现该油灰的不规则的三维形状。在另一示例中,可控制化身将颜料投掷在画布处。在这个实例中,动画可示出化身从桶中拿出颜料,并将该颜料投掷在画布处,使得用所选的颜料以不规则的二维形状绘制该画布。在一实施例中,所选的艺术特征可以是可通过用户姿势或其他输入来塑造的对象。例如,用户可以使用语音命令或其他输入来选择在显示环境中表现为三维的对象。另夕卜,用户可以选择对象类型,诸如可通过用户姿势来建模的泥塑。最初,对象在形状上可以是球形的,或者可以是任何其他对建模而言合适的形状。用户可随后作出可被解释为用于建模形状的姿势。例如,用户可以作出拍打姿势来使对象的一侧变平。此外,如此处所描述的,可以将对象考虑为显示环境中可以通过颜色、纹理和视觉效果等来装饰的一部分。图6描绘了用于装饰显示环境的另一示例方法600的流程图。参考图6,在605处捕捉对象的图像。例如,图像捕捉设备可捕捉用户或另一对象的图像。用户可以通过语音命令或其他合适的输入来启动图像捕捉。在610处,确定对象在所捕捉的图像中的至少一部分的边缘。计算环境可被配置成识别用户或另一对象的轮廓。可将用户或对象的轮廓存储在计算环境中和/或显示在视听显示器的显示屏幕上。在一示例中,可确定或识别用户或另一对象的轮廓的一部分。在另一示例中,计算环境可识别用户或对象中的特征,诸如用户衬衫的轮廓或者对象中不同部分间的分隔。在一个实施例中,可以在一段时间内捕捉多个用户的图像或另一对象的图像,并且可将所捕捉的图像的轮廓实时显示在显示环境中。用户可以提供语音命令或其他输入来为显示器存储所显示的轮廓。通过这种方式,可以在捕捉图像以供存储和显示之前向用户提供对当前轮廓的实时反馈。在615处,基于所确定的边缘来定义显示环境的一部分。例如,可将显示环境的一部分定义为具有与用户或另一对象在所捕捉的图像中的轮廓匹配的形状。随后显示环境的定义部分可被显示。例如,图7是显示环境的定义部分21的示例的屏幕显示,该定义部分21与用户在所捕捉的图像中的轮廓具有相同形状。在图7中,可以将定义部分21显示在虚拟画布17上。此外,如图7所示,化身13被设置在画布17前面的前景中。用户可以通过语音命令“笑一笑(cheese) ”来选择何时捕捉他或她的图像,该命令可被计算环境解释成捕捉用户的图像。在620处,装饰显示环境的定义部分。例如,可以以在此描述的各种方式中的任何一种来装饰定义部分,诸如通过上色、通过添加纹理、或通过添加视觉效果等。再次参考图7,例如,用户可以选择用如图所示的黑色或者用任何其他颜色或颜色的图案来为定义部分21上色。另选地,用户可以选择以在此描述的各种方式中的任何一种用艺术特征来装饰画布17在定义部分21周围的那部分。图8-11是根据所公开的主题来装饰的显示环境的其他示例的屏幕显示。参考图8,通过用户选择颜色并作出向画布17的投掷运动可以生成显示环境的经装饰的部分80。如图8所示,投掷运动的结果是像颜料已被化身13投掷到画布17上那样的“飞溅”效果。接着,捕捉用户图像以定义部分80,部分80的形状如同用户的轮廓。可通过用户选择颜色的语音命令来选择部分80的颜色。参考图9和10,部分21是由用户在所捕捉的图像中的轮廓来定义的。定义部分21被由用户装饰的其他部分包围。参考图11,画布17如在此所描述的包括由用户装饰的多个部分。在一个实施例中,用户可利用语音命令、姿势或其他输入来添加并移动显示环境中的组件或元素。例如,可以将图像文件中所包含的形状、图像或其他艺术特征添加到画布中,或者将其从画布中移除。在另一示例中,计算环境可以将用户输入识别成库中的元素、检索该元素、在将该元素显示在显示环境中以供用户更改和/或放置。另外,可通过语音命令、姿势或其他输入来标识显示环境中的对象、部分或其他元素,并且可改变所标识的对象、部分或元素的颜色或其他艺术特征。在另一示例中,用户可进行选择来输入利用颜料桶、单个污点特征、或细条等的模式。在这个示例中,对模式的选择会影响用户作出识别出的姿势时在显示环境中呈现的艺术特征的类型。在一个实施例中,艺术环境中的姿势控制可以用语音命令来扩充。例如,用户可以使用语音命令来选择画布内的部分。在这个示例中,用户可随后使用投掷运动将颜料大致投掷在使用语音命令选择的那部分中。在另一实施例中,可以将三维绘制空间转换成三维图像和/或二维图像。例如,可以将图11所示的画布17转换成二维图像并将其保存到文件中。此外,用户可以扫视显示环境中的虚拟对象以选择生成二维图像的侧面视角。例如,用户可以塑造如此处所描述的三维对象,并且用户可以选择从其生成二维图像的对象的一侧。在一个实施例中,计算环境可以通过分析用户的肩部位置、到达范围(reach)、姿态、姿势等中的一个或多个来动态地确定用户在用户空间中的屏幕位置。例如,可以使用户的肩部位置与显示在显示环境中的画布表面的平面协调,使得在显示环境的虚拟空间中用户的肩部位置与画布表面的平面平行。可以分析用户的手相对于用户的肩部位置、姿态和/或屏幕位置的位置,以确定用户是否打算使用他或她的虚拟手来与画布表面进行交互。例如,如果用户将他或她的手向前伸出,则可以将该姿势解释成与画布表面进行交互以更改该趣布表面的一部分的命令。化身可被不为伸出它的手以与用户的手移动相对应的移动来触摸画布表面。一旦化身的手触摸画布表面后,这个手就可以诸如例如通过移动该表面上出现的颜色(或颜料)来影响画布上的元素。此外,在该示例中,用户可以移动他或她的手来影响化身的手的移动,以涂抹或混合画布表面上的颜料。在这个示例中,视觉效果与手指在真实环境中绘制的相似。另外,用户可以选择以这种方式使用他或她的手来移动显示环境中的艺术特征。此外,例如,可以将用户在真实空间中的移动转换成化身在虚拟空间中的移动,使得化身在显示环境中的画布周围移动。在另一示例中,用户可以使用身体的任何部位来与显示环境进行交互。除了使用、他或她的手以外,用户还可以使用脚、膝盖、头或其他身体部位来影响对显示环境的更改。例如,用户可以用类似于移动手的方式伸出他或她的脚来使得化身的膝盖触摸画布表面,并由此改变画布表面上的艺术特征。在一个实施例中,计算环境可以识别用户的躯干姿势来影响显示在显示环境中的艺术特征。例如,用户可以前后(或者以“摆动”运动)移动他或她的身体,以影响艺术特征。躯干移动可以使艺术特征变形或者使所显示的艺术特征“旋转”。在一个实施例中,可以提供艺术品帮助特征来分析显示环境中的当前艺术特征,并确定与这些特征有关的用户意图。例如,艺术品帮助特征可以确保在显示环境或显示环境的一部分(诸如,画布表面)中不存在空白的或未经填充的部分。此外,艺术品帮助特征可以将显示环境中的各部分“拟合(snap) ”在一起。在一个实施例中,计算环境维护用于编辑生成在显示环境中的装饰或艺术品的编辑工具集。例如,用户可以使用语音命令、姿势或其他输入来撤销或重复输入结果(例如, 对显示环境部分的更改、颜色变化等)。在其他示例中,用户可以将各艺术特征铺设在显示环境中、缩放、模块化(stencil)和/或应用/丢弃这些艺术特征以得到优良的作品。使用工具集的输入可以是通过语音命令、姿势或其他输入的。在一个实施例中,计算环境可以识别用户何时不打算创建艺术品。结果,这个特征可以暂停由用户在显示环境中创建艺术品,所以该用户可以休息一下。例如,用户可以生成识别出的用于暂停的语音命令或姿势等用户可以恢复通过识别出的语音命令或姿势等来创建艺术品。在又一实施例中,可以将根据所公开的主题来生成的艺术品复制在真实世界对象上。例如,可以将创建在虚拟画布表面上的二维图像复制在海报、咖啡杯、日历等上。可以将这些图像从用户的计算环境下载至服务器,以将已创建的图像复制到对象上。此外,可以将图像复制到虚拟世界对象上,诸如化身、显示壁纸等。应该理解,此处所述的配置和/或方法在本质上是示例性的,且这些具体实施例或示例不被认为是限制性的。此处所述的具体例程或方法可表示任何数量的处理策略中的一个或多个。由此,所示出的各个动作可以按所示顺序执行、按其他顺序执行、并行地执行等等。同样,可以改变上述过程的次序。此外,本公开的主题包括各种过程、系统和配置,以及本文所公开的其他特征、功能、动作、和/或过程,以及其等效物的组合和子组合。
权利要求
1.一种用于装饰显示环境的方法,所述方法包括 检测用户的选择艺术特征的姿势或语音命令;检测用户的定向或选择显示环境的一部分的姿势或语音命令;以及 基于所选的艺术特征来更改所述显示环境的所选部分。
2.如权利要求I所述的方法,其特征在于,检测用户的选择艺术特征的姿势或语音命令包括检测选择颜色的姿势或语音命令,并且其中更改所述显示环境的所选部分包括使用所选的颜色来为所述显示环境的所选部分上色。
3.如权利要求I所述的方法,其特征在于,检测用户的选择艺术特征的姿势或语音命令包括检测选择纹理、对象和视觉效果中的一个的姿势或语音命令。
4.如权利要求I所述的方法,其特征在于,更改所述显示环境的所选部分包括用二维图像来装饰所选部分。
5.如权利要求I所述的方法,其特征在于,更改所述显示环境的所选部分包括用三维图像来装饰所选部分。
6.如权利要求I所述的方法,其特征在于,包括在所选部分处显示三维对象,以及 其中,更改所述显示环境的所选部分包括基于所选的艺术特征来更改所述三维对象的外观。
7.如权利要求6所述的方法,其特征在于,包括 接收另一用户姿势或语音命令;以及 基于所述另一用户姿势或语音命令来更改所述三维对象的形状。
8.如权利要求I所述的方法,其特征在于,包括存储与多个输入相对应的多个姿势数据, 其中,检测用户的定向或选择显示环境的一部分的姿势或语音命令包括检测以下用户移动中的至少一个的特征投掷移动、手腕移动、躯干移动、手移动、腿移动和手臂移动;并且其中更改所述环境的所选部分包括基于所检测到的所述用户移动的特征来更改所述显示环境的所选部分。
9.如权利要求I所述的方法,其特征在于,包括使用图像捕捉设备来检测用户的姿势。
10.一种用于装饰显示环境的方法,所述方法包括 检测用户的姿势或语音命令; 确定所述用户的姿势或语音命令的特征; 基于所述用户的姿势或语音命令的所述特征来选择显示环境的一部分;以及 基于所述用户的姿势或语音命令的所述特征来更改所述显示环境的所选部分。
11.如权利要求10所述的方法,其特征在于,确定所述用户姿势或语音命令的特征包括确定与所述用户的手臂移动相关联的以下各项中的至少一个速度、方向、开始位置以及结束位置,以及 其中选择显示环境的一部分包括基于与所述用户的手臂移动相关联的速度和方向中的至少一个来选择所选部分在所述显示环境中的位置、所选部分的大小以及所选部分的图案。
12.如权利要求11所述的方法,其特征在于,更改所选部分包括基于与用户的手臂移 动相关联的速度、方向、开始位置和结束位置中的至少一个来更改所选部分的颜色、纹理和视觉效果中的一个。
13.如权利要求10所述的方法,其特征在于,包括 将化身显示在显示环境中; 控制所显示的化身来模仿所述用户的姿势;以及 显示所述化身基于所述用户的姿势的特征来更改所述显示环境的所选部分的动画。
14.如权利要求10所述的方法,其特征在于,包括检测用户的选择艺术特征的姿势或语音命令,以及 其中更改所述显示环境的所选部分包括基于所选的艺术特征来更改所述显示环境的所选部分。
15.一种其上存储了用于装饰显示环境的计算机可执行指令的计算机可读介质,所述计算机可执行指令包括 捕捉对象的图像; 确定所述对象在所捕捉的图像中的至少一部分的边缘; 基于所确定的边缘来定义显示环境的一部分;以及 装饰所述显示环境的定义部分。
全文摘要
在此公开了用于装饰显示环境的系统和方法。在一个实施例中,用户可通过作出一个或多个姿势、使用语音命令、使用合适的接口设备和/或其组合来装饰显示环境。可检测语音命令来实现对装饰在显示环境中的艺术特征的用户选择,诸如颜色、纹理、对象和/或视觉效果。用户还可以作出姿势来选择显示环境的一部分来装饰。接着,可基于所选的艺术特征来更改显示环境的所选部分。可以通过化身将用户的运动反映在显示环境中。另外,可以将虚拟画布或三维对象显示在显示环境中供用户装饰。
文档编号G06T7/00GK102741885SQ201080047445
公开日2012年10月17日 申请日期2010年10月21日 优先权日2009年10月23日
发明者A·C·汤姆林, B·S·墨菲, C·武切蒂奇, D·A·贝内特, G·N·斯努克, J·蒂亚奎罗, K·盖斯那, K·科莱萨尔, M·库希尔, M·普尔斯, R·马尔科维奇, R·黑斯廷斯, S·G·拉塔 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1