与运动数据有关的系统、设备和方法与流程

文档序号:11630120阅读:323来源:国知局
与运动数据有关的系统、设备和方法与流程

相关申请

本公开内容要求于2014年10月6日提交的美国临时专利申请第62/060,337号的优先权日的权益,其全部内容并入本文中。

本公开内容涉及与对运动的分析有关的系统、设备和方法。如本文所使用的,运动是3d空间中相对于时间的任何可量化的移动。系统和设备可以包括硬件和软件系统,包括但不限于适用于可穿戴技术的那些硬件和软件系统。



背景技术:

在许多行业中,研究移动目标的运动以及使用运动的结果分析来改善移动目标的表现(performance,行为、性能)是有用的。在人作为所选的移动目标的情况下,例如,健身行业和健康行业(例如物理治疗和职业治疗)可以发现对某些人体运动的研究是有益和有利的。

用于实时感测运动的各种技术是已知,包括使用可以与移动目标相关的各种传感器。一些示例性传感器包括加速度计、陀螺仪和其他设备。移动目标可以是多种对象中的任何一种。例如,移动目标可以是动物——包括人、马、狗、鸟、或鱼或者其他动物——的整体或部分。移动目标可以是交通工具——包括汽车、飞机、航天器、船舶、卡车、娱乐车辆等——的整体或部分。移动目标也可以是机器人装置,或具有移动部分的机器部件。移动目标甚至可以是投射物。

某些现有的运动感测和处理系统为用户提供了一种通过将实时数据与表示某些类型的已知运动的统计模型进行比较来分析数据的方法。一些这样的系统另外包括能够基于实时感测的运动数据更新统计模型的机器学习算法。不幸的是,依赖用统计模型代替实际数据用于比较目的的系统由于依赖统计而丢失了关于数据的信息。这种丢失会限制可以进行比较的内容和可以进行分析的内容,尤其是在对实时运动数据的量化中。用于运动分析的某些现有系统由于至少部分地依赖于统计而不是依赖于实际数据进行比较,因而也缺乏准确性。

需要用于在定性和量化方面分析运动的准确且有效的系统、设备和方法。



技术实现要素:

已经发现,来自从传感器接收的与运动相关的信号的数据可以以特定的运动单元进行处理,其内容在与运动库中的数据比较时提供了关于实时运动的定性和量化的信息。

这样的运动单元在填充有数据时可以被分类到预定的运动类别中,诸如行走、跳跃等。运动的组合可以进一步被分类到更加复杂的动作类别中,诸如打网球、拳击等。当与动作库中的数据比较时,能够作为运动单元处理的实时动作数据的内容可以提供关于实时动作的定性和量化的信息。

在一个实施方案中,运动库和动作库各自均包括能够按运动单元处理的实际测量数据,而非表示实际数据的统计模型。这样,可以保持数据完整性,并且令人惊讶的是,对这样的数据进行的分析是有效且准确的。

在本公开内容中描述的运动单元是作为多个方程的函数的方程。馈送到运动单元中的方程的数目与由感测系统感测的自由度的数目相同。自由度和时间间隔是根据应用预定的。通过非限制性实施例,在用于分析人体运动活动的应用中,如果在50ms的间隔内测量到九个自由度(各自均在x方向、y方向和z方向上的加速度数据、陀螺仪数据和磁力计数据),则每个运动单元均包括450个数据点x。特定运动单元的内容能够用特定的运动类别独特地识别。

这些运动单元允许由处理器快速处理运动数据,并且将实时运动数据与实际初始运动数据进行有效且准确的比较。有效性可能是由于与运动单元中的每个数据点x相关的“强度”信息s(有时在机器学习的文献中被称为“权重”信息)在机器学习期间的保持引起。s允许对运动的紧凑表示。在描述现有技术中用于运动的机器学习应用的某些文献中,强度信息s在分类后被丢弃。尽管一般教导是在运动研究应用中丢弃s,但已经发现,强度信息s的保持可以通过向算法提供下述信息而有助于实时运动数据与初始运动数据之间的定性比较的效率/速度,上述信息为关于哪些运动数据由于高成本要被忽略以及哪些低成本运动数据要被进一步分析以用于量化的信息。s的保持不仅允许效率/速度,而且还提供了关于对要包括在定性/量化步骤中的特定运动类别而言重要的x值的信息,从而提高准确性。

如本文所述的对运动单元的这种处理提供了对实时运动数据的定性和量化,这可以至少部分地基于与初始运动数据的比较。使用这些运动单元用于运动分析和动作分析的系统、设备和方法适合于民用性质和军事性质的宽范围行业中的许多应用。

附图说明

图1是示例性计算设备的示意图;

图2是示例性计算设备的示意图;

图3是移动目标上的示例性计算设备;

图4a至图4c是来自加速度计的示例性信号;

图4d至4f是来自陀螺仪的示例性信号;

图4g至图4i是来自磁力计的示例性信号;

图5是用于填充运动库和动作库的示例性流程图;

图6是用于按照与存储在运动库中的数据进行比较的方式对实时运动数据进行定性和量化的示例性流程图;

图7是访问一个或多个库中的数据以用于与实时运动数据进行比较的示例性计算机程序的示意图;

图8是运动库的显示示例;以及

图9是动作库的显示示例。

具体实施方式

本文中的所有附图和实施例都意在非限制性的;它们仅仅是本说明书所附权利要求的示例性复述和/或实施例。对系统、设备、方法中步骤的顺序等的修改均是可设想的。

参照图1,描绘了示例性计算设备10的示意图。如所描绘的,计算设备10包括使用多个感测设备感测运动的感测系统。如所描绘的,多个感测设备包括加速度计11、陀螺仪12和磁力计13。根据运动的性质和待分析、定性和量化的其他信息,可以包括其他运动感测和其他感测设备。感测设备中的一些或全部可以组合成单个惯性测量单元(imu)。

示例性运动感测设备可以包括但不限于市售的imu、加速度计、陀螺仪、磁力计、全球定位(gps)传感器、rfid传感器或其他传感器。其他微机电(mems)传感器可以并入到与所公开的计算设备兼容的感测系统中,包括数字罗盘、惯性模块、压力传感器、湿度传感器和麦克风。还有其他的传感器或者感测系统或设备可以结合计算设备10一起使用,包括智能传感器和传感器集线器、uv指数传感器、温度传感器和触摸传感器中的一种或多种。可设想的传感器包括瑞士日内瓦的stmicroelectronics市售的那些传感器。还可设想将传感器融合与感测系统一起使用。感测系统可以与计算设备10的其他部件无线地通信。这样的通信可以涉及多种协议——包括ant、ant+、蓝牙、bluerobin和/或其他协议——中的任何一种。

如所描绘的,示例性运动感测设备11、12和13生成待使用市售硬件和标准软件协议(如本领域普通技术人员将意识到的)被处理成数据的至少一个信号。例如,模拟信号可以经受反混叠滤波,被转换成数字数据,并且穿过至少一个或多个数字滤波级,诸如贝塞尔和/或巴特沃斯滤波器。因而,由于传感器发送信号,所以来自传感器的数据传输可能是间接的,原因在于在运动数据可用于作为运动单元由处理器和本文公开的计算机程序处理之前存在对信号的中间处理。

在所描绘的实施例中,加速度计11直接或间接地传输x方向、y方向和z方向上的加速度数据。陀螺仪12直接或间接地传输x方向、y方向和z方向上的角速度数据。磁力计13直接或间接地传输x方向、y方向和z方向上的定向数据。

由包括一个或多个感测设备的感测系统传输的运动数据由处理器20使用至少一个计算机程序进行处理。尽管示意性地绘制为单一的框,但可设想处理器20可以表示经由网络相互通信的一组处理器。处理器20在于存储器/计算机可读介质30中运行的操作系统中运行计算机程序。再者,尽管示意性地绘制为单一的框,但可设想存储器/计算机可读介质30可以至少部分地远离包含计算设备10的设备(诸如,可附接于或嵌入衣服或手表或眼镜的可穿戴贴片或壳体),并与这样的设备通信。

计算设备10和/或其某些部件(如本领域普通技术人员将意识到的)可以使用一个或多个电源进行操作。在一些实施方案中,电源可以是可再充电的。例如可以通过附接于充电源的电缆或通过感应充电进行再充电。

参照图2,描绘了另一示例性计算设备100的示意图。如所描绘的,计算设备100包括用于感测运动的多个感测设备。通过非限制性示例示出了加速度计101、陀螺仪102和磁力计103。从信号中提取的结果运动数据由处理器200使用在存储器/计算机可读介质300中运行的软件进行处理。计算设备100与计算设备10的不同之处在于其还包括显示器400。任何数目的本地或远程显示系统和设备均可以适合于与计算设备100一起使用。例如,显示器可以是诸如直接在可穿戴手表上的屏幕、可以在眼镜上呈现的投影装置,或者显示器400可以是计算设备(诸如智能电话、膝上型计算机、平板计算机或台式计算机)上的远程计算机屏幕或监视器。显示器还可以集成有另一软件程序,包括在典型操作系统中运行的市售应用。例如,可设想来自计算设备100的输出可以通过移动电话的应用而可见。在人的情况下,这样的应用可以是地图(mapping)应用或健身应用。在机器人或交通工具的情况下,显示器可以通过与计算设备100通信的单独但兼容的诊断程序显示输出。

参照图3,示例性计算设备10附接于移动目标。在非限制性描述中,移动目标是人,并且计算设备10被并入到通过可移除地放置在人的脚上而间接附接于人体的可穿戴设备(袜子600)中。附接可以是直接或间接的、可移除的附接、永久附接、一体成形等。附接可以包括:机械设备,诸如夹具和钩环紧固件;和/或粘合剂。如上所述,移动目标可以是多种对象中的任何一种。例如,移动目标可以是动物——包括人、马、狗、鸟、或鱼或者其他动物——的整体或部分。移动目标可以是交通工具——包括汽车、飞机、航天器、船舶、卡车、娱乐车辆等——的整体或部分。移动目标也可以是机器人装置,或具有移动部分的机器部件。当附接于不同的移动对象时,包括计算设备10的部分或全部的设备可以采用多种形式中的任何一种。例如,根据所研究的运动的性质,包括一些或全部部件的壳体可以附接在这样的移动目标上或中的关键部位。

参照图4a至图4i,描绘了包含运动数据的信号的非限制性示例。图4a至图4i示出了在经过模拟数字转换和数字滤波阶段之后的示例性的直接传感器信号。顶部一行的三幅曲线图(图4a、图4b和图4c)包括从加速度计采集的加速度数据,第一幅曲线图包括在x方向上的数据,第二幅曲线图包括在y方向上的数据,以及第三幅曲线图包括在z方向上的数据。中间一行的三幅曲线图(图4d、图4e和图4f)包括从陀螺仪采集的角速度数据,第一幅曲线图包括在x方向上的数据,第二幅曲线图包括在y方向上的数据,以及第三幅曲线图包括在z方向上的数据。底部一行的三幅曲线图(图4g、图4h和图4i)包括从磁力计采集的定向数据,第一幅曲线图包括在x方向上的数据,第二幅曲线图包括在y方向上的数据,以及第四幅曲线图包括在z方向上的数据。在每个示例性曲线图中,y轴是用于加速度的标准单位m/s2、角速度的标准单位(度/秒)和定向的标准单位(度)的大小,而x轴是时间。在所描绘的示例中,时间间隔被设置在50ms。

所公开的计算机程序包括以特定运动单元处理运动数据的指令。特定运动单元的内容中的数据点x的数目是被感测的运动的自由度的数目n与预定时间间隔的乘积。每个数据点x具有相关的强度信息s,有时在语音识别领域中的机器学习文献中被称为权重。例如参见美国专利申请公开文本2012/006,976(现在为美国专利8,972,253),两者的全部内容通过引用并入本文。

在图4a至图4i中,存在九个被感测和测量的自由度:对于加速度、角速度和定向中的每一个的x、y和z输入。存在50ms的预定时间间隔。示例中的每个运动单元具有450个数据点x。特定运动单元的内容(例如第一个50ms的运动单元的数据)反映了该时间段内的:x方向上的加速度、y方向上的加速度、z方向上的加速度、x方向上的角速度、y方向上的角速度、z方向上的角速度、x方向上的定向、y方向上的定向以及z方向上的定向。

利用包含初始运动数据的库能够将每个实时运动单元的内容识别为处于特定的运动类别。在运动单元的内容不接近类别中的相符(fitting)运动单元的情况下,这样的高成本数据就不需要被考虑。在感测的运动单元接近不止一个类别的情况下,强度信息s指示与另一类别相比,运动单元的内容与一个类别相符的接近度。强度信息以这种方式是定性的,并且可以帮助将算法集中于最相关的数据点x—对于使感测的数据符合与特定类别相关的特定非线性方程(运动单元)而言具有最低成本的数据点。出乎意料地,在运动单元的内容中包括更多信息可以提高运动单元对于在运动数据的情况下的分类的准确性、有效性和表现。

实施例中的各个方程和示例性的九个方程的函数的数学表示如下:

运动单元=f(s,x,n)

其中

s是独特强度数值的矩阵

x是来自传感器输出信号的值的矩阵(9个自由度)

n是运动类别的数目

作为人的示例中的表示:

n=5(行走、跑步、跳跃、骑车、攀爬)

x=450个值(9个信号×50ms)

s=450×n=2250个独特数值

示例表示为:

运动单元1的方程=

s1,0*x1+s1,1*x2+s1,2*x3...+s1,450*x450

运动单元2的方程=

s2,0*x1+s2,1*x2+s2,2*x3...+s2,450*x450。

在人的示例中,当运动单元填充有数据时,给定运动单元的内容可以是例如行走特有的。如果运动单元中的实时数据与存储在运动库中的初始行走运动单元中之一的数据紧密匹配,则实时运动单元1的内容能够被识别为“行走”。运动单元2的内容可以指示“跳跃”。运动类别通常具有映射到该类别的多个运动单元,但是特定的运动单元通常最佳地映射到仅一个类别,或者至少映射至与另一类别相比更好的一个类别。许多检测到的运动在运动单元的内容不接近预定类别中运动单元的内容时由于强度信息s而被简单地忽略,从而准许处理器和/或软件处理较低成本的运动数据。

本文公开的计算机程序或者程序或模块的集合通过运动单元将实时运动数据与初始运动数据进行比较,以用于定性和量化实时运动数据。初始运动数据是通过实际感测的运动数据收集的。也就是说,初始运动数据是真实数据;其不仅仅是表示数据的统计模型。

构成和/或使用所公开的系统和设备以及软件的一种方式是采用本领域普通技术人员已知的机器学习算法中的一种或多种。在这样的算法中,在第一实例,作为“训练”过程的一部分,将初始运动数据收集、分类和/或存储为运动单元。该初始运动数据可以保持不变,除非或直到用户通过软件适于执行的“学习”过程更新该数据。这可以在例如一移动目标在类似移动目标的群体的95%的标准偏差之外的情况下进行。在这样的情况下,机器学习可以准许初始运动数据更新,以用于随后与实时运动数据比较。在一个实施方案中,这样的更新可以自动发生,或许以预定的时间间隔自动发生。用于重新填充初始数据值的其他目的是可设想的,以及这样做的方法,无论是手动的还是自动的还是部分手动部分自动的。参见例如上文引用的并且通过引用并入的美国专利申请公开文本和后来授权的美国专利。

参照图5,公开了用于“训练”的非限制性示例性过程500,其中如图4a至图4i的示例中一样,人是移动目标。机器学习背景下的不同形式的训练对技术人员而言是已知的,并且与不同的移动目标一样,它们也被设想与所公开的实施方案一起使用。在框510中,为了收集初始运动数据,从由感测系统发出的多个信号接收数据,从而提供待以运动单元进行处理的数据,上述运动单元是在预定时间间隔——50ms的时间间隔——内的至少九个自由度的非线性方程。根据所感测的运动的类型,可以选择不同的时间间隔。例如,500ms、250ms、100ms、50ms、25ms和10ms的时间间隔是针对被分析的各种人体运动的许多设想的时间间隔中的一些时间间隔。

在框520中,接收感测的初始运动数据并按照运动单元对其进行处理。在特定的非限制性实施例中,每个运动单元包括450个数据点—自由度与所选择的时间间隔的乘积。每个运动单元中的内容是作为九个单独方程的函数的、填充有数据的方程,其中每个单独方程针对于每个被测量的自由度。

在框530中,由计算机程序中的指令将感测的初始运动数据分类到预定的运动类别中。在人的示例中,一组预定的运动类别可以包括“行走”和“跳跃”。可以根据预期的应用和预期的移动目标来选择预定的运动类别。例如,在汽车是移动目标的情况下,预定类别可以包括“向前行驶”、“右转”、“左转”、“变更车道”、“加速”等。在学习期间将特定运动单元分类成这样的类别可以是使用多种方法——包括统计模型——中的任何一种进行的,上述统计模型包括但不限于隐马尔可夫模型(hmm)。

特别地,通过使用上下文相关的预训练深度神经网络hmm从多个运动信号中提取特定运动单元以进行分类,框520和530中记载的步骤可以同时或并行发生。可以使用上下文相关的深度神经网络hmm(cd-dnn-hmm)架构。参照上文引用的美国专利申请公开文本和专利的机器学习术语,cd-dnn-hmm可以用于估计连续密度hmm状态的后验概率。也就是说,该架构提供了确定特定运动单元应当被分类到一个类别中还是另一个类别中还是无法分类的量规(rubric)。

后验概率可以建模为:

p(si,cj|xt)=p(si|xt)p(ci|sj,xt)

其中xt是在时间t处观察到的特定信号,cj是聚类的上下文类别c={c1,……,cj}中的一个类别,si是独立于上下文的动作或独立于上下文的动作中的状态。人造神经网络(ann)可以用于估计p(si|xt)和p(ci|sj,xt)(可替代地,p(ci|xt)和p(si|cj,xt))。

在所描绘的人的示例中,每个hmm表示一类别,如“行走”或“跳跃”。hmm包括若干状态和这些状态之间的转变。与每个状态i相关联的是输出分布bi(.),表示来自由一系列信号接收的数据的不同运动(运动单元)。再次说明,hmm中的每个输出分布(状态)描述了运动单元中表示的某一运动类别,该运动单元如所例示的包含将该单元的内容识别为属于某一类别的450个数据点。输出概率可以是连续概率密度函数、离散概率分布或半连续密度函数的组合。

在某些实施方案中,可以使用前后向算法来迭代地重新估计输出概率和转变概率两者。在一些实施方案中,可以在识别期间使用维特比(viterbi)定向搜索算法来确定最可能的运动类别。

在框540中,描述了用至少一个初始运动类别填充运动库的步骤。步骤540可以与步骤520和/或步骤530同时或并行进行。一旦具体运动单元的内容被识别为属于特定类别,就可以将实际的初始运动数据(不是其统计表示)按单元存储、组织和/或呈现为属于更大结构的“库”内的特定类别。库可以具有多种数据结构中的任何一种,包括但不限于表格、数据库或其他布置。由于实际数据被保持,因此其所有的被采集的属性也被保持。取决于针对何种类型的运动采集何种内容,上述属性可以是时间、高度、距离、偏航等。初始运动数据可用于比较、定性和/或量化。

例如,在所描绘的人的示例中,多个运动单元——每个运动单元均具有450个数据点x且至少一些数据点相互不同——各自均独立地表征行走。然后,这些单元中的每个单元都将填充“行走”类别。另外的多个具有不同内容的运动单元可能填充“跳跃”类别。一组预定类别(行走、跳跃、爆发(bursting)等)中的每个类别均可以是运动库的一部分。运动库可以存储在任何形式的存储器/计算机可读介质中。运动库可以全部或部分地位于计算设备的本地或远离计算设备,只要与计算设备相关的软件可以访问库及其类别的数据即可。

在框550中,进行将运动类别的组合分类成更复杂的“动作”的步骤。动作是已知的,能够区分定性的运动组。以动作级别进行分类的过程可以类似于用于将特定运动单元分类到运动类别中的过程。例如,在特定时间框内以特定速率发生的所有的不同类别的运动单元的组合可以指示人类用户正在打网球。网球可以是预定的动作类别。在特定时间框内发生的不同类别的不同运动单元组可以指示人类用户正在打拳击。拳击可以是另一预定的动作类别。

在框560中,描述了用至少一个初始动作类别填充动作库的步骤。步骤560可以与步骤520、530、540和/或550同时或并行进行。一旦一个或多个类别的运动单元的组合的内容被识别为属于特定动作类别,就可以将实际的初始运动数据(不是其统计表示)按单元存储、组织和/或呈现为属于更大结构的动作库内的特定类别。动作库可以全部或部分地位于计算设备的本地或远离计算设备,只要与计算设备相关的软件可以访问库及其动作类别的数据即可。初始动作数据可用于比较、定性和量化。

参照图6,公开了一种处理实时运动数据的示例性方法700。在框710中,从包括感测设备的感测系统直接或间接地接收实时运动数据,上述感测设备至少生成用于加速度和角速度的信号。从信号中提取数据;软件被配置为接收该数据以用于由处理器使用至少一个计算机程序进行处理。

在框720中,使用处理器,将实时运动数据处理或格式化为具有相同自由度并且在相同的时间间隔中的运动单元,以有助于与初始运动数据进行比较。可以保持每个运动单元中的每个数据点的强度信息。

在框730中,使用处理器,将实时运动数据与运动库和动作库中的初始运动数据进行比较。如框740中所提及的,实时运动单元(或其集合)与初始运动单元(或其集合)进行比较,以用于定性和量化。强度信息可以促成对数据的有效处理。

关于定性,例如通过与运动库的行走类别中的数据单元的比较,将实时运动单元识别为行走类别的运动单元。由此,对实时数据的量化以及对与初始数据的比较的量化两者都是可能的。例如,实时的“行走”以比初始数据快一定比例的特定节奏发生;实时的行走涉及比初始数据大或小特定比例的特定内旋(pronation)度;等等。

类似地,如果在一定时间段内实时地感测到一个或多个运动类别中的某些运动单元的组合,则可以将该组合与动作库中的初始动作类别进行比较,以用于定性并量化动作。也就是说,如果人在一定时间段内进行了一定数量的爆发和跳跃;则该组合可以被定性地识别为拳击动作。由此,对实时数据的量化以及对与初始数据的比较的量化两者都是有可能的。例如,实时的“拳击”以比初始数据慢一定比例的特定节奏发生;实时的拳击涉及比初始数据大或小特定比例的特定爆发模式;等等。

可选地,在框750中,可以在多个本地或远程显示机构中的任何一个上显示反映对实时运动数据的定性和/或量化以及对实时运动数据与初始运动数据的比较的定性和/或量化中的至少一些的信息。显示器可以包括含有计算设备的至少一部分的可穿戴设备上的屏幕或投影装置、智能手机屏幕、平板计算机屏幕、独立监视器、膝上型计算机屏幕和/或台式计算机屏幕。

参照图7,提供了由与计算设备有关的处理器使用的存储器/计算机可读介质30的示例性示意图。框31指示在操作系统中运行的软件,该软件具有能够控制一个或多个处理器执行训练方法500或分析方法700的步骤的指令。软件程序31可以是单一程序或表示相互通信的多个模块。软件程序31还可以被配置为基于实时数据进行机器“学习”,除了在被用户激活时发生和/或自动地发生之外,该“学习”是非常像训练的过程。

软件程序31与运动库32和动作库36通信。在运动库32内,示出了运动类别33和运动类别34。在动作库36内,示出了动作类别37和动作类别38。尽管框被表示为单一的,但是可设想的是,库32和/或36可以远离程序31运行所在的特定存储器/计算机可读介质30,只要程序31能够与库32和36通信并能够访问其中的数据即可。

图8是运动库32在屏幕上的示例性显示。运动类别33和34用于跳跃和行走。在所描绘的实施方案中,显示了对特定运动的识别(定性)的置信度,以及示出与行走相关的所有的多个不同运动单元的窗口。还可以示出量化数据,包括诸如行走所花时间、覆盖的距离等数据。可以显示用以传达与实时运动数据中的一个或多个相关的基础数据的任何组合的信息。还可以显示附加信息,包括心率、血压、温度等,如果用作为计算设备一部分或与计算设备配合的感测系统也感测到这样的信息的话。

图9是动作库36在屏幕上的示例性显示。动作类别37和38用于网球和拳击,另一类别用于篮球。在所描绘的实施方案中,显示了对特定动作的识别(定性)的置信度、以及示出与行走相关的所有的多个不同运动单元的窗口。还可以示出量化数据,包括诸如行走所花时间、覆盖的距离等数据。可以显示用以传达与实时运动数据中的一个或多个相关的基础数据的任何组合的信息。还可以显示附加信息,包括心率、血压、温度等,如果用作为计算设备一部分或与计算设备配合的感测系统也感测到这样的信息的话。

所公开的系统、设备和方法可以与许多操作环境一起运作并可以在这样的操作环境中运作,上述操作环境可以包括一个或多个用户计算设备和/或一个或多个处理器。用户或客户端设备可以包括多种通用个人计算机中的任何一种,诸如具有与多种网络和消息协议一起运作的软件的可穿戴技术设备和/或移动和手持式设备。

所公开的处理器和存储器/计算机可读介质可以是本地的或远程的。也就是说,一些实施方案对于自含式设备和系统诸如可穿戴设备(例如腕表)是本地的。其他实施方案是部分本地而部分远程的。为了与任何种类的远程设备通信,设想可以使用采用多种协议中的任何一种协议的至少一种网络或支持通信,诸如tcp/ip、ftp、osi、nfs、upnp、cifs和appletalk。网络可以是但不限于局域网、广域网、虚拟专用网、因特网、云、内联网、外联网、红外网络、无线网络和任何的组合。

所公开的系统、设备和方法还可以至少部分地被实施为可以作为面向服务的架构的一部分的服务或web服务。这样的服务可以使用任何合适形式的消息通信,诸如通过使用处于可扩展标记语言(xml)格式的并且使用诸如soap(“简单对象访问协议”)的协议交换的消息进行通信。由这样的服务提供或执行的过程可以处于任何合适的语言,包括web服务描述语言(wsdl)。

在使用web服务器的系统中,web服务器可以运行各种服务器中的任何一种,包括http服务器、ftp服务器、cgi服务器、数据服务器、java服务器等。服务器能够响应于来自用户设备的请求执行程序或脚本。程序可以是使用任何编程语言(诸如java、c或c++)或任何脚本语言(诸如perl、python或tcl)以及组合编写的。服务器还可以包括数据库服务器,诸如可从oracle和microsoft获得的那些服务器。

所公开的系统和设备的硬件和/或软件环境可以包括各种数据储存装置和其他存储器和存储介质。这样的介质可以驻存于多个位置中的任何位置,诸如驻存在一个或多个计算设备的本地(和/或驻存于上述一个或多个计算设备中的)存储介质上或驻存在网络上远离任何或所有计算设备的存储介质上。在特定的一组实施方案中,信息可以驻存于存储区域网络(“san”)中。同样,用于执行出自计算机、服务器或其他网络设备的功能的任何所需文件均可以在本地和/或远程地存储。在系统包括计算机化设备的情况下,每个设备均可以包括可以经由总线电耦合的硬件部件。这样的部件可以为例如至少一个处理器或微处理器、至少一个输入设备(例如键盘或触摸屏)以及至少一个输出设备(例如显示设备)。这样的系统还可以包括:存储器/计算机可读介质,诸如磁盘驱动器、光存储设备和固态存储设备;以及可移动介质设备、存储卡等。其他示例包括诸如易失性和非易失性的、可移动和不可移动介质的存储器/存储介质。示例包括:ram、rom、prom、eprom、eeprom、闪速存储器或其他存储器技术;cd-rom、数字通用光盘(dvd)或其他光存储装置;磁带盒、磁带、磁盘存储装置或其他磁存储设备;或可以用于存储信息并且可以由系统、设备或方法访问的任何其他介质。

所公开的系统和设备还可以包括计算机可读存储介质读取器、通信设备和工作存储器。计算机可读存储介质读取器可以连接于或配置为接收计算机可读存储介质,该计算机可读存储介质表示远程的、本地的、固定的和/或可移动的存储设备以及用于临时和/或更永久地容纳、存储、传输和检索计算机可读信息的存储介质。系统和设备还可以包括软件应用、模块、服务或在至少一个工作存储器设备内的其他元件,包括操作系统和应用程序,例如客户端应用。许多变型是可设想的。此外,可以使用与其他计算设备诸如网络输入/输出设备的连接。

关于本文所描述的过程,应当理解,尽管这样的过程的步骤已经被描述为以某种顺序发生,但是可以以按照不同于示例性顺序的顺序执行所描述的步骤的方式来实践这样的过程。还应当理解,可以同时执行某些步骤,可以添加其他步骤,或者可以省略本文描述的某些步骤。换言之,本文对过程的描述是出于说明某些实施方案的目的而提供的,而不应以任何方式被解释为限制所要求保护的本发明。

因此,应当理解,上述描述意在说明性的而非限制性的。阅读上述描述之后,除了所提供的实施例以外的许多实施方案和应用将是明了的。本发明的范围应当参照所附权利要求以及这些权利要求有权享有的等同物的全部范围来确定。可以预料和预期将会发生的未来的发展,并且所公开的系统和方法将会并入到这样的未来的实施方案中。本发明能够进行修改和变型。

除非做出相反的明确指示,否则权利要求书中使用的所有术语旨在被给予其最广泛的合理构建及其常见含义(如通过本文描述的技术能够获知的那些所理解的)。除非权利要求记载相反的明确限定,否则使用诸如“一个”、“该”、“所述”这样的单数冠词均记载一个或多个所指出的元件。

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