CN105612556A - 用于识别和解释重复运动的系统和方法 - Google Patents
用于识别和解释重复运动的系统和方法 Download PDFInfo
- Publication number
- CN105612556A CN105612556A CN201480055463.6A CN201480055463A CN105612556A CN 105612556 A CN105612556 A CN 105612556A CN 201480055463 A CN201480055463 A CN 201480055463A CN 105612556 A CN105612556 A CN 105612556A
- Authority
- CN
- China
- Prior art keywords
- user
- repetitive operation
- motion
- application
- carried out
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1113—Local tracking of patients, e.g. in a hospital or private home
- A61B5/1114—Tracking parts of the body
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30221—Sports video; Sports image
Abstract
一种运动跟踪系统基于从一个或多个传感器接收的运动数据来监控由用户执行的运动。运动跟踪系统可以包括具有一个或多个传感器的运动跟踪设备、具有一个或多个传感器的智能设备和/或服务器。当用户与运动跟踪系统或智能设备交互时,通过软件应用处理由一个或多个传感器生成的运动数据。软件应用基于运动数据以及诸如由用户使用的设备之类的情境数据生成解释数据。然后在用户执行运动或运动集合期间和/或之后向用户提供反馈。向用户提供的反馈可以例如是视觉的、听觉的和/或触觉的。应用可以用于监控运动、健身、工业或医疗环境中的例程。
Description
相关申请的交叉引用
本申请要求2013年9月3日提交的美国临时专利申请第61/873,339号以及2013年9月3日提交的美国临时专利申请第61/873,347号的权益,这两个申请的全部内容通过引用合并于此。
技术领域
本公开总体上涉及跟踪用户动作的领域,并且特别地涉及监控和量化由用户做出的重复和非重复动作。
背景技术
运动处理和无线通信技术使得人们能够跟踪他们每天进行的运动,诸如他们每天步行的步数。然而,运动捕获设备和功能由于例如在能够执行的功能方面以及在能够监控的动作方面的限制而尚未在市场上获得太多成功。
发明内容
实施例包括一种运动跟踪系统,其基于从一个或多个传感器接收的运动数据实时地监控由用户执行的运动。运动跟踪系统可以包括例如具有一个或多个传感器的运动跟踪设备、具有一个或多个传感器的智能设备、和/或服务器。用户可以在执行运动的同时佩戴运动跟踪设备和/或携带运动跟踪设备或智能设备。当用户与运动跟踪系统或智能设备交互时,通过软件应用处理由一个或多个传感器生成的运动数据。软件应用可以存在于智能设备、服务器和/或运动跟踪设备上。
软件应用基于运动数据和情境数据(诸如由用户使用的设备)生成解释数据。解释数据可以包括在用户执行运动时用户的表现和/或在用户执行运动或运动集合期间或之后向用户提供的反馈。软件应用基于运动数据的一个或多个信号中存在的特征识别由用户执行的动作。软件应用可以计数和/或生成与在用户执行运动时用户的表现相关联的运动度量。然后在用户执行运动或运动集合期间和/或之后向用户提供解释数据。向用户提供的反馈可以是例如视觉的、听觉的或触觉的。
基于运动数据,软件应用还可以确定在用户执行运动时用户的形式(form),例如用户执行特定练习、运动等的形式。应用可以将由传感器生成的运动数据与所识别的运动的正确形式和不正确形式的数据和/或模板集合相比较,以确定用户是否正在使用不正确的形式执行运动。
应用还可以识别用户是否在执行运动的同时表现出紧张(strain),并且可以主动地修改向用户建议的例程。应用还可以基于将运动数据与表示用户关于运动的表现的历史数据的比较来修改向用户建议的例程。应用可以使用诸如用户的位置和用户的日历信息之类的情境数据来进一步增强向用户提供的健身体验。
当软件应用监控用户的动作时,评估和保持对定性和定量度量(诸如由用户执行的当前练习、由用户执行的重复次数以及用户的形式)的跟踪全部是实时的和/或在用户执行运动、运动集合、多个运动集合和/或一个或多个例程之后。因此,用户不需要通过与智能设备或运动跟踪设备交互来向应用提供输入。因此,用户具有按照他/她自己的步调执行锻炼的自由,而没有经由智能设备或运动跟踪设备周期性地向应用提供用户输入的中断。
应用可以由教练和物理治疗师用于监控运动员和患者的健康。应用还可以用在工业或医疗环境中以主动地监控用户遵循的例程。
说明书中所描述的特征和优点并非全部是包括性的,特别地,本领域普通技术人员鉴于附图、说明书和权利要求书会很清楚很多另外的特征和优点。另外,应当注意,说明书中所使用的语言在原则上被选择用于可读性和说明目的,而非被选择为界定或限制发明主题。
附图说明
本文中所呈现的附图出于说明目的,实施例不限于所示的精确布置和结构。
图1是根据一个实施例的运动跟踪系统的框图。
图2是图示根据一个实施例的运动跟踪系统的一个实施方式的流程图。
图3是图示根据一个实施例的监控用户动作的运动跟踪系统的流程图。
图4图示根据一个实施例的处理信号中存在的重复和非重复动作。
图5是图示根据一个实施例的基于运动数据识别用户动作的运动跟踪系统的流程图。
图6图示根据一个实施例的作为健身教练的运动跟踪系统的实施方式。
图7图示根据一个实施例的确定在用户执行运动时用户的形式的运动跟踪系统。
图8图示根据一个实施例的向用户显示反馈的实施方式。
图9图示根据一个实施例的应用生成良好形式和不良形式的动作模板以及与每个模板相关联的反馈的方法。
图10表示根据一个实施例的在用户执行运动时由应用处理的运动数据的样本。
图11图示根据一个实施例的动态调节向用户建议的锻炼的应用。
附图仅出于说明目的描述各种实施例。本领域技术人员根据以下讨论将很容易认识到,可以在不偏离本文中所描述的实施例的原理的情况下采用本文中所说明的结构和方法的替选实施例。
具体实施方式
现在参考附图描述实施例,在附图中,相似的附图标记表示相同或功能相似的要素。另外,在附图中,每个附图标记的最左侧数字对应于首次使用该附图标记的附图。
图1是根据一个实施例的运动跟踪系统100的框图。运动跟踪系统100实时地监控用户的运动。在一个实施例中,运动跟踪系统100包括服务器110、网络120、智能设备130和运动跟踪设备140。在替选配置中,运动跟踪系统100中可以包括不同的和/或另外的部件。
在实施例的一方面,如下面参考附图详细讨论的,用户在执行诸如举重训练、步行和心血管动作和/或举起物体等运动时佩戴运动跟踪设备140。在一个实施例中,运动跟踪设备140测量由用户执行的重复动作或者非重复动作。在一个示例中,为了测量由用户执行的动作,运动跟踪设备140包括各种传感器,诸如加速度计、陀螺仪和/或磁力计。在本示例中,加速度计检测和测量运动跟踪设备140的方位和加速度的变化,陀螺仪测量运动跟踪设备140的角速度,磁力计测量磁场相对于运动跟踪设备140的强度和方向。运动跟踪设备140基于由各种传感器进行的测量生成运动数据,运动数据表示由运动跟踪设备140的用户执行的运动。运动数据可以由运动跟踪设备140用于实时地监控用户的动作。
运动数据被传输到运行软件应用135的智能设备130。应用135分析运动数据并且生成要向用户提供的解释数据。应用135还向用户提供与用户的动作有关的反馈。例如,应用135可以分析与用户执行练习有关的运动数据并且实时地向用户提供反馈。反馈可以包括用户的运动形式的质量、其他练习的推荐或者用户的表现。一方面,运动数据连同情境数据也通过应用135被分析。情境数据可以从诸如智能设备135上的其他应用数据(例如地理位置、当日时间等)之类的大量来源收集。将情境数据与运动数据相关联使得辅助智能设备130上的应用135能够向用户提供与用户执行的健康、健身或运动有关的另外的信息。
在一个实施例中,运动跟踪设备140容纳用于捕获情境数据的部件,诸如相机。相机捕获用户所在的环境或者用于与其交互的物体的图像或者视频。例如,如果用户执行屈臂,则在用户执行屈臂时,相机可以捕获由用户使用以执行屈臂的哑铃的图像。软件应用135可以处理情境数据并且生成识别由用户使用的哑铃的重量的解释数据。在替选实施例中,用户可以经由软件应用135和/或运动跟踪设备140输入情境信息。
在一个实施例中,向安装到智能设备130上的软件应用135发送运动数据和情境数据。软件应用解释运动数据和情境数据并且生成解释数据。在一个实施例中,解释数据包括用户的动作、动作的暂停、动作的采集以及与用户的动作有关的任何其他情境信息。解释数据也可以是情境数据的解释,其在一方面也可以包括由用户在给定练习期间燃烧的卡路里的估计,这些估计使用由给定的情境数据集识别的设备通过给定的运动数据集来反映。在另一实施例中,解释数据包括用户在运动集合期间的表现以及在用户执行运动集合期间和/或之后向用户提供的反馈。
智能设备130可以是能够接受无线数据传输的任何设备,诸如智能电话、平板电脑或膝上型电脑。在一个实施例中,智能设备130具有足以运行软件应用135的计算能力。本领域技术人员应当认识到,通信不一定是直接在运动跟踪设备140与智能设备130之间,也可以是经由一个或多个中间设备和/或经由诸如因特网之类的网络的间接通信。在一个示例中,软件应用135通过智能设备API与智能设备130交互。软件应用135通过使用智能设备API与运动跟踪设备140交互来从运动跟踪设备140接收运动数据。软件应用135可以被适配成与各种智能设备130API交互。这使得软件应用135能够作用于每个具有其自己的智能设备API的各种智能设备平台。因此,用户不被限制为特定的智能设备130以便能够使用应用140。
在一个实施例中,软件应用135被托管或者安装在运动跟踪设备140上。因此,运动数据的分析可以由运动跟踪设备140上的软件应用135独立于智能设备130或者结合智能设备130和/或远程处理设备(例如服务器110)来执行。在另一实施例中,软件应用135可以安装在具有至少一个感测部件的设备(诸如智能电话)上。本实施例中的软件应用135可以使用由设备130上而非在智能设备130和运动跟踪设备140的配对上的传感器提供的运动数据生成解释数据。例如,安装在智能电话130上的应用135可以使用由智能电话130上的加速度计生成的运动数据来确定在用户从他/她的家到单位步行时用户所走的步数。因此,运动跟踪系统100不限于智能设备130和运动跟踪设备140的耦合,而是可以通过任何数据的设备在任何数据的步骤中执行,这些设备包含运动数据到软件应用135的传输。在替选实施例中,来自例如智能设备130和运动跟踪设备140的多个设备的传感器信息可以由软件应用140来使用。
在一个实施例中,从智能设备130向例如服务器110等远程处理设备(基于云的设备和系统)发送解释数据。为了便于引用,本说明书中使用服务器110,但是可以使用任何远程(例如基于云的)处理设备,包括多个设备,诸如远程数据库、存储装置、存储器、处理器。服务器110可以是任何远程处理设备。服务器110关联/联系/识别解释数据与用户简档。用户然后可以经由能够无线数据传输的任何设备(诸如但不限于智能电话、平板电脑、运动跟踪设备或计算机)使用专用软件应用或web浏览器来回顾、访问和/或可视化与其用户简档相关联的解释数据历史以显示解释数据。在另一实施例中,解释数据还通过安装在智能设备130上或者运动跟踪设备140上的软件应用135被中继回用户。可以通过软件应用135向用户显示解释数据以在用户执行动作期间和/或之后查看。可以用各种方式实时地向用户提供与解释数据有关的反馈。在一个示例中,在智能设备130上或者在运动跟踪设备140的显示器上向用户提供视觉反馈。在另一示例中,在智能设备130上或者在运动跟踪设备140上通过扬声器向用户提供音频反馈。
在一个实施例中,软件应用135可以存储在服务器110上。服务器110上的软件应用135可以分析向服务器110发送的运动数据并且生成解释数据以与用户简档相关联。例如,在用户想要保存智能设备130消耗的电力的情况下,智能设备130可以向服务器110发送从运动跟踪设备140接收的运动数据用于处理。因此,软件应用135对运动数据的处理不限于在智能设备130上或者在运动跟踪设备140上进行。
在一个实施例中,运动跟踪设备140、智能设备130和服务器110被配置成使用有线和/或无线通信系统二者经由网络120彼此通信,网络120可以包括局域网和/或广域网的任意组合。在一个实施例中,网络120使用标准通信技术和/或协议。例如,网络120包括使用诸如以太网、802.11、全球微波接入互操作性(WiMAX)、3G、4G、码分多址(CDMA)、数字用户线(DSL)等技术的通信链路。用于经由网络120来通信的连网协议的示例包括多协议标签交换(MPLS)、传输控制协议/因特网协议(TCP/IP)、超文本传输协议(HTTP)、简单邮件传输协议(SMTP)和文件传输协议(FTP)。通过网络120交换的数据可以使用任意合适的格式来表示,诸如超文本标记语言(HTML)或可扩展标记语言(XML)。在一些实施例中,网络120的全部或部分通信链路可以使用任意合适的技术来加密。
图2是图示根据一个实施例的运动跟踪系统100的一个实施方式的流程图。在本实施例中,用户在执行健身例程时使用运动跟踪系统100作为人工助手和监控单元。用户通过例如按下运动跟踪设备140中所包括的用户输入或者移动运动跟踪设备140来激活205运动跟踪设备140或运动跟踪设备140上的应用135。在一个示例中,运动跟踪设备140上的应用135基于从运动跟踪设备140中所包括的传感器接收的运动数据识别出用户已经激活设备。
用户然后通过遵循应用135建议的例程或者通过遵循用户想要执行的例程来开始健身例程。例如,应用135建议的例程可以包括3组锤式哑铃屈臂,其使用30磅的哑铃,每组之间的休息时段为60秒,之后是4组20个卷腹,每组之间的休息时段为30秒。在用户执行例程时,应用135基于运动数据来监控与用户执行的动作相关联的大量特性。例如,应用135确定和监控215用户执行的练习的类型、在用户执行练习时用户的形式的质量和/或用户执行的计数或重复的数目。在一个实施例中,应用135建议和监控215在用户进行健身例程时由用户在练习组之间观察到的休息时间。
应用135还可以在用户执行健身例程时实时地向用户提供反馈220。例如,运动跟踪设备140可以振动或生成音频通知,以在用户执行屈臂时向用户通知不良形式。在其他示例中,反馈包括在运动跟踪设备140的显示器上显示的描述用户在健身例程期间的表现的图表和表格。
在一个实施例中,应用135向服务器110发送225解释数据和表现数据。表现数据可以包括描述用户在健身例程期间的表现的统计、或者评估用户执行的健身例程的定量指标(例如完成的例程的百分比、实现的目标、每个练习的重复等)。服务器110然后将表现数据和/或解释数据关联或附接230到用户的用户简档。
图3是图示根据一个实施例的监控用户动作的运动跟踪系统100的流程图。应用135基于从传感器获取305的原始实时运动数据监控用户做出的动作。传感器基于用户的动作生成原始实时运动数据。例如,加速度计基于设备140、130在用户上的相对移动生成加速度数据和加速度数据的变化。
应用135然后处理310从传感器或运动跟踪设备140中的一个或多个获得305的实时运动数据。处理310原始实时数据或信号去除了信号携带的噪声和其他不相关特征。在一个实施例中,使用低通滤波器滤除从传感器获得305的原始信号中的噪声。在另一实施例中,使用滑动平均滤波器滤除从传感器获得305的原始信号中的噪声。应当理解,可以使用其他滤波器来增加原始信号的信噪比。
在一个实施例中,应用135基于一个或多个已处理实时信号确定315用户执行的动作的分类。分类用户执行的动作很重要,因为其帮助系统识别和理解用户执行的动作。例如,先于识别与用户执行屈臂相关联的特性,诸如用户动作关于正确屈臂动作的形式的形式,应用135首先确定315用户执行屈臂。
在一个实施例中,分类算法可以是机器学习算法、模式识别算法、模板匹配算法、统计推断算法和/或基于学习模型来工作的人工智能算法。这样的算法的示例是k最邻近(kNN)、支持矢量机(SVM)、人工神经网络(ANN)和决策树。
在一个实施例中,在应用对用户执行的动作分类315之后,应用135量化320用户执行的动作的特性(诸如用户做出的重复动作的数目的计数)以确定用户执行的动作的重复。例如,应用135基于用户执行的重复动作(已经被分类为屈臂)的数目确定用户在给定组屈臂期间执行屈臂的次数。在一个实施例中,应用135确定一个或多个信号的滚动窗口中存在的真实波峰的数目。真实波峰可以基于波峰相对于整个信号的幅度和/或其他情境信息(诸如经分类或识别的用户执行的动作的波峰的期望图案或波峰持续时间)来确定。例如,应用135可以已经识别出用户正在执行屈臂。基于这一信息,可以知道真实波峰在用户执行屈臂期间在加速度计信号的z轴的滚动窗口中在时间段n上出现的幅度在0.6G以上。类似地,可以知道真实波峰在用户执行屈臂期间在陀螺仪信号的y轴的滚动窗口中在时间段2n上出现的幅度在0.5G以上。因此,应用135可以将z轴加速度计信号中存在的真实波峰的数目计数为每n个时间段1次,并且将y轴陀螺仪信号中存在的真实波峰的数目计数为每2n个时间段2次,从而计数用户执行的屈臂的数目。
在另一实施例中,应用135可以量化320用户执行的动作的其他特性,诸如用户执行的动作的速度。应用135可以确定一个或多个信号中的波峰或波谷或形态特征出现的时间段以确定用户执行每个重复动作的速率。较长的时间段可以对应于较慢的动作速度,而较短的时间段可以对应于较快的动作速度。应用135因此可以基于一个或多个信号中存在的形态特征来量化320与用户执行的动作相关联的大量特性。
图4图示根据一个实施例的处理信号中存在的重复动作405和非重复动作410。关于图3中图示的方法参考图4,应用135对用户在健身例程期间执行的重复动作405计数。例如,如果重复动作405是用户执行的屈臂,则应用135确定用户执行5个重复动作或5个屈臂。应用135区分用处理信号的部分表示的非重复动作410以及用处理信号的不同部分表示的重复动作405。
在一个实施例中,应用135识别用户执行的重复动作405的组。例如,应用建议的健身例程可以包括用户接收执行3组5个屈臂的指令,每组之间的休息时段为30秒。应用135首先基于已处理实时信号将用户的动作识别和分类为屈臂。然后基于用户执行重复屈臂动作405向应用135通知用户执行第一组屈臂。在应用135记录由5个屈臂组成的第1组(415)之后,应用135还监控过渡时间1(430)或者休息时间,其用第1组(415)与第2组(420)之间的非重复动作410来表示。应用135然后监控由5个屈臂组成的第2组(420)、以及第2组(420)与第3组(425)之间的过渡时间2(435)。一旦应用完成监控用户执行的最后一组屈臂(第3组(425)),则应用135识别出用户已经完成3组屈臂。因此,应用135基于已处理实时信号监控用户执行的健身例程,已处理实时信号表示用户执行的动作。
图5是根据一个实施例的图示运动跟踪系统100基于运动数据识别用户动作的流程图。应用135基于一个或多个已处理实时信号确定用户执行的动作。应用135提取一个或多个处理信号的滚动窗口中存在的统计或形态特征的集合。这些特征可以包括信号的幅度、均值、方差、标准差、一个或多个处理信号中的波谷和/或波峰的数目、波谷和/或波峰的顺序、波谷和/或波峰的幅度、波谷和/或波峰的频率、和/或波谷和/或波峰的时间段。例如,在执行屈臂时,加速度计的z轴可以记录时间段n上单个波峰的重复图案,之后是也在时间段n上的单个波谷。加速度计的y轴可以记录在相同的时间段n期间2个波峰之间的波谷的重复图案。所提取的特征由分类算法用于检测用户执行的动作。
在一个实施例中,应用135应用模板匹配算法以识别一个或多个处理信号的滚动窗口中的重复特征(诸如信号中的波峰和波谷)。应用135将一个或多个处理信号的滚动窗口中的重复特征与智能设备130或运动跟踪设备140上的动作模板数据库中所存储的动作模板集合相比较。基于比较,应用135然后选择数据库中具有与一个或多个处理信号中存在的特征最相似或者最紧密匹配的重复特征的动作模板。基于所选择的模板中的一个或多个或者组合,应用135对由用户执行的动作进行识别和分类515。例如,应用135在用户执行屈臂时使用动作模板数据库中存储的动作模板将加速度计信号的z轴和陀螺仪的y轴中存在的重复特征相比较。应用135选择类似于所记录的信号的z轴加速度信号动作模板和y轴陀螺仪信号动作模板。应用135然后识别出515用户正在执行屈臂,因为已知应用135所选择的两个动作模板与屈臂动作相关联。模板匹配算法的一个示例是互相关算法。另一示例是动态时间规整。
在一个实施例中,应用135在健身例程中引导用户。由于应用135在健身例程中引导用户,应用135知道由用户执行的重复动作。因此,应用135可以通过应用135基于健身例程而期望用户执行的动作基于记录的运动数据来验证由应用135识别的动作。在第二实施例中,由于应用135知道用户执行的动作,所以应用135不再需要基于运动数据验证用户执行的动作,并且因此开始计数一个或多个处理信号中的重复特征以确定用户执行的重复。在第三实施例中,由于应用135知道用户执行的动作,应用135可以将所记录的运动数据与动作模板数据库中的动作模板的子集相比较,其中动作模板的子集表示与应用135期望用户执行的动作相关的模板。例如,如果应用135知道用户当前正在执行屈臂作为健身例程的部分,则应用135会将记录的运动数据135与和屈臂动作分类相关联的动作模板的运动数据相比较。
在一个实施例中,应用135确定510与一个或多个信号中的重复特征相关联的统计特性,诸如均值或者标准差。例如,在用户执行屈臂时,应用135可以确定510一个或多个信号中记录的峰值的幅度的均值。如果发现均值比用于特征化真实波峰的期望门限的平均值相对较大,则应用135可以增加向用户建议的下一组屈臂的权重,因为相对较高的均值表示用户能够比期望地更早地(以更快的速率)执行当前屈臂。在另一实施例中,在用户执行屈臂时,应用可以确定一个或多个信号中记录的波峰的幅度和频率的标准差。如果发现标准差在屈臂动作的标准差值的期望范围之外,则有可能即使特征的图案可以被识别为匹配屈臂,然而用户可能实际上并未执行屈臂,但是可能执行与屈臂类似的不同运动。因此,一个或多个信号中的特征的统计特性提供朝着识别515用户执行的动作的附加信息。
在另一实施例中,应用135使用机器学习算法检测动作,和/或基于一个或多个信号中存在的重复特征或形态特征对一个或多个信号的滚动窗口中用户执行的动作分类或识别505。LingBao等人的“ActivityRecognitionfromuser-AnnotatedAccelerationData”中描述了可以使用的识别和学习算法的示例,其全部内容通过引用合并于此。
图6图示根据一个实施例的作为健身教练的运动跟踪系统100的实施方式。应用135在一段时间上在一个或多个锻炼期间引导用户。锻炼包括旨在实现健身目标的一个或多个练习的组合。健身目标可以包括增加用户的力量、降低用户的体重、增加用户的毅力、或者用户的身体情况的任何其他形式的有益的身体改善或维持。
在一个实施例中,用户可以通过从智能设备130、服务器110或运动跟踪设备140上存储的锻炼数据库中可获得的锻炼集合中选择一个或多个锻炼来创建锻炼。应用135将用户创建或选择的锻炼与用户的简档相关联。用户还可以修改与锻炼相关的其他属性,诸如执行某个锻炼的周内的天数的频率或者时间段、在锻炼期间执行的练习的集合和重复。例如,用户可以选择创建锻炼,该锻炼包括周一的与增强腿部有关的5个练习、周三的与增强上身有关的5个练习、以及周五的跑步小时数。
在一个实施例中,锻炼可以由不同的专业教练615、620、625来计划和建议。例如,教练1(615)可以在设计用于力量训练的锻炼方面进行专门化,教练2(620)可以在设计减轻体重的锻炼方面进行专门化,教练3(625)可以在设计有氧运动训练的锻炼方面进行专门化。用户可以选择遵循单个教练或者教练的组合所建议的锻炼。应用135将所选择的教练和锻炼与用户的简档相关联。
在一个实施例中,用户经由应用135从教练3(625)建议的一个或很多锻炼中选择锻炼。用户然后在视觉上通过运动跟踪设备140的显示器或者智能设备130的显示器或者通过倾听来自运动跟踪设备140或者智能设备130的音频指令遵循锻炼所建议的反馈630或指导。反馈也可以是解释正确形式的运动(例如练习)的视频的形式,其可以在当时或者稍后显示在运动跟踪设备140、智能设备130或者其他显示器上,例如消息(电子邮件、文本、社交媒体帖子)可以包括到反馈的链接或者具有反馈的嵌入式视频。在应用135监控用户的动作以实时地保持对定量和定性度量(诸如用户执行的当前练习、用户执行的重复的数目以及用户的形式)的跟踪时,用户不需要通过与智能设备或运动跟踪设备交互来向应用提供输入。因此,用户按照他/她自己的步调自由执行锻炼,而没有经由智能设备或运动跟踪设备周期性地向应用提供用户输入的中断。
在一个实施例中,教练615、620、625可以从远程位置监控用户执行的锻炼,因为运动数据、解释数据和表现数据被附接到服务器110上的用户的简档。因此,应用135向用户提供以维持与个人教练的关系而不管用户和个人教练的位置。另外,教练现在还能够访问描述用户的健身的多个其他形式的运动数据。例如,教练可以确定用户在当天的给定时间步行或执行的步数(诸如在去工作的路上)、或者用户在工作时坐下或者在工作时执行重复运动所花费的时间。这一信息可以帮助教练基于用户在某个时间段上执行的各种活动来创建为每个用户定制的受控锻炼。
在一个实施例中,教练可以经由应用135向数据库添加另外的锻炼。另外的锻炼可以存储在远程服务器110上或者教练的智能设备130上。用户然后可以通过从服务器110拉取所选锻炼集合或者通过允许应用135基于用户所选择的锻炼偏好集合自动更新用户遵循的锻炼来从服务器110访问锻炼。
图7图示根据一个实施例的确定用户执行运动时用户的形式的运动跟踪系统100。应用135监控在用户执行运动时用户的形式并且实时地和/或在用户执行运动之后向用户提供反馈630。应用135基于用户执行的所识别的运动将所记录的动作信号710中的一个或多个与正确的动作模板信号705相比较715,并且然后向用户提供反馈630。如图7所示,可以将用户的动作与正确动作之间的差异视为信号的波峰的变化720。在一个实施例中,如果应用确定正确的动作模板信号705与所记录的动作信号710之间存在显著差异,则应用向用户通知不正确的或者不良形式。不正确的或者不良形式表示用户不正确地或者不良地执行运动,使得用户可能没有通过执行运动领会所有益处,或者用户在继续不正确地执行运动的情况下可能潜在地受到损伤。应用135可以通过将所记录的动作信号710与所识别的动作的不正确的形式模板(未示出)相比较来确定不正确的或者不良形式。最紧密匹配所记录的动作信号710的不正确的形式模板使得应用能够基于与不正确的形式模板相关联的不正确的形式信息识别不正确的形式。在替选实施例中,如下面所描述的,不正确的形式模板可以是初始模板比较的部分。例如,当用户在执行运动的同时开始表现出紧张时,或者当用户接近一组练习的结尾时,应用135可以合并不正确的形式模板与初始模板比较。
在一个实施例中,在智能设备130或者运动跟踪设备140的显示器上向用户提供视觉反馈。替选地,可以远程存储视觉反馈用于由任何计算设备在稍后的时间访问。例如,可以存储或引用反馈,例如社交网络页面上的html链接、视频共享网站(例如YouTubeTM)和/或提供视频的其他方式。应用135向用户通知不正确的形式,并且向用户显示表示正确的执行动作的形式的一系列图像或视频。在另一示例中,通过智能设备130或运动跟踪设备140上的扬声器向用户提供音频反馈。
图8图示根据一个实施例的向用户显示反馈的实施方式。在一个实施例中,应用135将一个或多个记录的动作信号与和所识别的运动相关联的一组良好形式或不正确形式的动作模板相比较。一旦应用135确定用户执行不正确的形式,则应用135提供反馈810,反馈810向用户通知不正确的形式以及如何避免用户执行不正确的形式。例如,应用135将所记录的动作信号与已知表示的执行卷腹的不正确形式的一组动作模板相比较。应用135识别用户执行的不正确形式并且提供反馈810,反馈810向用户通知用户在卷腹之间弹起太多。在一个实施例中,应用135还经由智能设备130上或运动跟踪设备140上的显示器在执行卷腹时向用户显示正确形式的视频。在另一实施例中,应用监控用户的运动并且向用户通知用户何时以良好的形式执行运动。在一个实施例中,应用135还向用户提供表现反馈805,表现反馈805在用户执行一组运动或健身例程期间和/或之后说明用户的表现。
图9图示根据一个实施例的应用135生成良好形式和不正确形式动作模板以及与每个模板相关联的反馈630的方法。良好形式动作模板可以由被认为在以正确形式执行运动方面有经验的人员来生成。例如,可以在认证私人教练执行各种练习和健身例程时在一段时间内对其进行监控。由认证私人教练生成的来自各种传感器的信号存储在动作模板数据库中作为表示良好形式的动作模板。应用135将用户生成的动作信号与良好形式动作模板相比较,以确定用户是否正在以良好形式执行练习。
在一个实施例中,应用135可以从执行相同运动的各种用户接收表示不正确形式的运动数据。例如,应用135可以从用户1(905)接收运动数据1(940),从用户2(910)接收运动数据2(945),从用户3(915)接收运动数据3(950),从用户4(920)接收运动数据4(955),所有这些数据表示与屈臂运动相关联的不同类型的不正确形式。应用135然后通过描述他们如何避免不正确形式的信息向每个用户发送不同的反馈630。反馈630可以向每个用户建议不同的执行运动的方式从而避免不正确的形式。应用135然后可以监控每个用户生成的运动数据的变化以确定用户现在是否以良好的形式执行运动。用户1(905)和用户3(915)现在可以在表示良好形式的运动中执行屈臂。应用135然后将向用户1(905)提供的反馈630与表示不正确形式的原始运动数据1(940)相关联。应用135然后基于表示不正确形式的运动数据1(940)生成和存储动作模板。与运动数据1(940)相关联的反馈630然后可以由应用135用于向执行与运动数据1(940)类似的屈臂运动的未来用户通知如何纠正不正确的形式。因此,应用135可以生成表示不正确形式的动作模板并且确定适当的反馈630与每个动作模板相关联从而防止用户以不正确的形式执行运动。如以上所描述的,这些不正确形式的模板最初可以作为识别运动和/或确定是否使用正确形式的过程的一部分与良好形式的模板一起使用。
在一个实施例中,应用135检测用户在执行练习运动时是否并未完全执行练习运动,例如欺骗。例如,用户可能已经到达包括用户在锻炼期间执行屈臂的锻炼的部分。然而,与执行一组屈臂相反,用户决定来回移动运动跟踪设备以使得应用135在一组屈臂期间倒数。在一个实施例中,应用135将传感器生成的运动数据与表示欺骗运动的一组动作模板相比较。如果应用135识别出所生成的运动数据类似于一组欺骗动作模板,则应用135可以向用户通知用户在健身例程期间正在欺骗。应用135也可以向教练通知用户可能在向健身例程或锻炼分配的一组屈臂期间欺骗。
在另一实施例中,应用135也可以使用统计分析技术连同模板匹配来确定用户是否在锻炼期间欺骗。例如,应用135可以确定已处理数据的一个或多个信号中存在的波峰的幅度或频率的均值或标准差。例如,如果幅度的均值相对高于与用户执行屈臂相关联的历史数据并且在短于用户通常(基于历史数据)执行的一段时间内执行屈臂,则应用135可以识别出用户在执行该组屈臂时欺骗。因此,可以使用统计技术和模板匹配的组合确定用户是否在执行练习时欺骗。
图10表示根据一个示例的由应用135在用户执行运动时处理的运动数据的样本。应用135可以确定用户是否挣扎着执行运动或者紧张地执行运动。例如,应用135可以确定与用户在执行练习或运动时表现出紧张相关联的一个或多个信号中存在的特征。作为一个示例,应用135可以基于处理信号1(1010)、处理信号2(1020)和处理信号3(1030)确定用户是否在执行一组屈臂时表现出紧张。处理信号1(1010)可以表示在用户执行屈臂时由加速度计在从用户的肘部向下指向用户的手部中的哑铃的方向沿着运动的x轴测量的加速度。当用户举起哑铃时,处理信号1(1010)的值降低直到其达到表示用户的臂部的得体运动的开始的波谷。处理信号2(1020)可以表示加速度计在与哑铃的表面垂直的方向上测量的加速度。当用户举起和放下哑铃时,处理信号2(1020)的值保持在受控范围内。处理信号3(1030)可以表示当用户托住哑铃时加速度计在与用户的手掌垂直的方向上测量的加速度。当用户将哑铃举起一半时,处理信号3(1030)的值减小直到其达到波谷,之后处理信号3(1030)的值增加直到用户将哑铃完全举起到屈臂动作的顶部。当用户将哑铃放下一半时,处理信号3(1030)的值减小直到其达到波谷,之后处理信号3(1030)的值增加直到用户将哑铃完全放下到屈臂动作的底部。
在一个实施例中,应用135基于处理信号1(1010)和处理信号3(1030)中存在的重复特征识别出用户执行屈臂。使用模板匹配,应用135可以确定与处理信号1(1010)中的单个波谷出现在相同时间段中的处理信号3(1030)中的两个波谷之间的波峰的重复图案匹配应用135已知表示屈臂动作的动作模板。
在一个实施例中,当用户在屈臂组期间进展时,表示动作计数5(1040)的波峰的时间段1050明显大于表示动作计数(1050)的时间段。处理信号2在用户执行动作计数5(1040)时测量的振动或运动的幅度范围也可以表现为基本上大于由加速度计在动作计数1、2或3(1040)期间较早时候测量的值的相对较恒定的范围。应用135可以将信号1(1010)中基本上更大的时间段1050的存在以及计数5期间处理信号2(1020)中幅度值的基本上更大的范围的存在与表示用户表现出紧张的已知动作模板相比较,以识别用户在执行一组屈臂的计数5(1040)的同时表现出紧张。因此,应用135可以使用信号(处理信号1(1010)和处理信号3(1030))的组合来识别用户执行的运动或练习,并且使用信号(处理信号1(1010)和处理信号2(1020))的类似或不同组合来确定用户是否在执行所识别的运动的同时表现出紧张。
在一个实施例中,应用135修改从运动跟踪设备140或智能设备130中的传感器采样数据的采样率。在一个示例中,基于用户执行的练习来修改采样率。在这种情况下,用户以相对较快的重复执行练习(诸如骑自行车),需要将采样率修改为与在用户以将对较慢的重复执行练习(诸如下蹲)时相比更快的速率。采样率的有效控制有助于最小化运动跟踪设备140或智能设备130在执行与应用135相关联的功能时消耗的电力。
在另一实施例中,在用户接近组中的最大重复次数时增加采样率以更准确地测量紧张和/或不正确形式。如果应用135识别出用户在开始挣扎(例如检测到紧张),则也可以增加采样率,增加重复之间的时间等。例如,并且参考图10,应用135可以基于用户在执行一组练习时所在的动作计数1040来修改采样率。例如,如果期望用户执行一组5个屈臂,则应用135可以在用户达到一组屈臂的计数4和计数5(1040)时增加采样率。这使得应用135能够更好地捕获处理信号1(1010)和处理信号2(1020)的值的变化,从而使得应用135能够更好地确定用户是否在执行一组练习的最后几个计数时表现出紧张。应用135也可以在其中用户执行的运动的更细化或准确的测量帮助应用135更好地理解用户执行的运动的其他情况下修改采样率。
图11图示根据一个实施例的动态地调节向用户建议的锻炼的应用135。应用135基于运动数据、用户执行的重复的次数和/或用户识别的紧张的情况动态地修改向用户建议的锻炼。例如,用户可能旨在达到锻炼目标1120,该锻炼目标包括第一组中的15个下蹲、第二组中的13个下蹲以及第三组中的13个下蹲。应用135监控的旧的重复计数1110为第一组的14个下蹲、第二组的12个下蹲以及第三组的8个下蹲。用户执行的新的重复计数1130可以是第一组的15个下蹲、第二组的12个下蹲以及第三组的13个下蹲。应用135识别出用户将第三组的重复次数从8个下蹲提高到13个下蹲,并且将第三组中的锻炼目标的重复次数从13动态地调节1140为15(图11中未示出)。应用135从而监控和促进用户的身体改善,而不需要用户经由智能设备130或运动跟踪设备140向应用135提供用户输入。一旦用户完成一组练习,则应用135可以通过例如向用户显示休息计时器1150来监控和告知用户练习之间的休息时间。
在另一实施例中,应用135基于应用135识别出用户在执行练习的同时表现出紧张来动态地调节1140向用户建议的锻炼。例如,应用135可以识别出用户在一组10个屈臂的第五动作计数中表现出紧张,并且然后可以通过降低向下一组屈臂建议的重量来动态地调节1140应用135建议的锻炼。在另一示例中,如果应用135识别出用户朝着每组屈臂的结束表现出紧张,则应用135可以降低每组屈臂执行的重复数目。
在一个实施例中,应用135基于从教练接收的规定锻炼的信息或者基于从多个教练的组合接收的规定锻炼的信息来确定如何调节1140用户的锻炼。例如,再次参考图6,应用135可以基于运动数据识别出用户不能够舒适地执行教练1(615)建议的锻炼。应用135有可能识别出用户在完成教练1(615)建议的规定锻炼的大量重复时恒定地表现不佳。应用135因此基于表示特定教练的技术和视角的训练信息来调节1140应用135建议的锻炼。在一个示例中,教练1(615)可以建议用户执行更少重复但是保持锻炼当前规定的重量,因为教练1在建议改善用户力量的锻炼方面专门化。然而,教练2在给出相同运动数据和信息的情况下可能减小重量但是增加重复,因为教练2在建议改善用户的活力(tone)的锻炼方面专门化。因此,如果用户执行教练1(615)建议的锻炼,则应用135可以基于表示教练1的训练信息自动调节锻炼。
应用135还可以基于附加数据(诸如用户前一晚的睡眠量)动态地调节锻炼。如果用户并未得到充足的睡眠(这可以是相对于用户的典型睡眠模式),则应用135可以动态地降低锻炼的强度。可以基于从用户接收输入或者可以基于运动跟踪设备140的传感器(例如传感器6、传感器7、传感器8)的测量来确定睡眠的数量和/或质量。
在一个实施例中,应用135基于运动数据动态地调节1140用户在多天内的锻炼。例如,应用135可以确定用户与要在周一执行的练习的锻炼目标集合相比已经基本上改进,并且可以改变与锻炼的随后几天的练习(诸如周二执行的练习)相关联的锻炼或重复和重量。
在一个实施例中,运动跟踪系统100动态地打开或关闭传感器。应用135可以基于用户执行的练习来打开或关闭传感器。例如,应用135可以能够使用来自加速度计的运动数据来识别和监控屈臂。在这种情况下,当用户执行屈臂时,应用135可以关闭陀螺仪和磁力计以最小化在运行应用135时消耗的电力。
在另一实施例中,应用135可以基于用户当前执行的练习的计数来打开或关闭传感器。例如,应用135知道确定用户是否表现出紧张通常朝着集合的结尾出现。应用135可以使用来自加速度计的运动数据执行屈臂运动的识别和监控,并且可以使用来自加速度计以及陀螺仪的运动数据的组合执行识别紧张。应用135然后可以在一组10个屈臂的计数1到计数7期间关闭陀螺仪,并且然后可以在用户开始执行这组屈臂的计数8时打开陀螺仪。类似地,应用135可以基于用户执行的重复运动的部分来打开或关闭传感器。例如,应用135可以在用户在执行屈臂的同时举起哑铃时关闭陀螺仪,并且然后应用135可以在用户在执行屈臂的同时开始放下哑铃时打开陀螺仪。
在一个实施例中,应用135可以提示用户校准运动跟踪系统100。应用135可以建议用户在应用135监控用户的动作时执行一组校准运动。当用户执行校准运动时,应用135可以识别用户特定运动,并且因此基于所记录的校准动作修改动作模板数据库中表示良好形式或不正确形式的动作模板,例如校准可以帮助识别各种动作的信号幅度。在一个实施例中,用户可以在用户执行锻炼时校准运动跟踪系统100。例如,系统可以在用户执行用户所选择的锻炼所建议的屈臂的同时校准。
在一个实施例中,运动跟踪系统100可以用作人工训练助理。教练员可以使用运动跟踪系统100监控运动员在一定时间段上执行的锻炼。运动跟踪系统100也可以用于监控运动员在执行体育活动时的形式,诸如高尔夫挥杆或者扔棒球。例如,高尔夫教练员可以在提供高尔夫课程时或者为了回顾之前的高尔夫课程而使用运动跟踪系统100作为人工训练助理。如果用户或学员在其回程中丢掉绑头击球面,则运动跟踪系统100可以向用户提供反馈,以修改所显示的不良形式的用户以及用户可以改进的方式。因此,教练员可以向运动员或者学员主动地提供反馈,而不管教练员和学员是否在相同位置。教练员也可以监控学员的进展和对于不同教练风格的反应度,并且调节他/她的教练风格以更好地适应学员的需求。
在一个实施例中,教练员可以基于用户执行的运动(如运动跟踪系统100所监控的)接收表示用户或运动员的健康的健康数据。例如,如果应用135注意到用户在比赛或训练课程期间在身体上恒定地表现不佳,则应用135可以在比赛期间向用户和教练员通知疲劳。应用135可以注意到表示运动的一个或多个信号不再包含幅度类似于表示良好或正确运动的历史数据中存在的波峰或波谷,因此指示用户可能表现出疲劳。理解疲劳可以帮助教练员防止在比赛或训练课程期间对运动员的潜在伤害。
在一个实施例中,教练员和用户或者运动员可以使用运动跟踪系统100监控用户执行的任务。例如,运动跟踪系统100可以用于监控棒球选手在训练课程或比赛期间尝试的投球次数。在另一示例中,教练员可以监控和生成与运动员或用户相关的一组量化表现度量。教练员可以基于运动员在一定时间段上执行的练习的重复次数确定运动员生成的力量。教练员还可以能够监控其他度量,如平均跑步距离、运动员在训练课程或比赛期间燃烧的卡路里或者尝试的投球。这减少了在监控运动员的进展时使用的基础设施的数量。
在一个实施例中,运动跟踪系统100和应用135可以用作物理治疗师的人工医疗助理。物理治疗师可以监控他/她的患者中的一个或多个患者的运动和动作,以便更好地理解所提供的治疗的效果。在一个实施例中,物理治疗师可以监控每个用户对于不同种类的治疗的响应,以便更好地理解某种治疗对各个用户的效果。例如,物理治疗师可以治疗全部遭受相同疾病的大量用户。物理治疗师可以对不同用户尝试不同的治疗。物理治疗师然后可以使用运动跟踪系统100监控每个用户在治疗过程期间的进展和改善,以便更好地理解哪些治疗更有效以及用户对于每个治疗的响应如何。
在一个实施例中,物理治疗师能够基于应用135和运动跟踪系统100提供的运动数据更好地理解要向用户规定的治疗。例如,治疗师能够监控用户在一段时间内步行的步数、用户在一段时间内执行的运动的数量和种类以及用户在一段时间内执行的运动的重复次数和形式。物理治疗师还可能不公开指示用户在一段时间期间执行各种运动的同时表现出紧张的运动数据。因此,物理治疗师可以能够在得到用户的健康的整体理解之后向用户提供更好的治疗选项。
在一个实施例中,运动跟踪系统100可以被编程为在如物理治疗师确定地用户过度运用他自己/她自己时通知用户。例如,应用135可以识别出腿抽筋的用户在执行腿部拉伸时生成运动数据,其中一个或多个记录信号中的波峰的平均幅度大于物理治疗师所建议的量。应用135因此可以向用户提供反馈,反馈向用户通知他/她过度运用他自己/她自己并且有可能加重伤害。
在一个实施例中,应用135可以检测用户执行的一个或多个运动中的伤害并且向用户提供与缓解伤害相关联的反馈。例如,应用135可以识别出用户通过类似于踝关节扭伤的运动步行。应用135然后可以向用户提供建议用户如何缓解伤害的反馈,并且向用户提供情境信息,诸如最近的医院在哪里或者用户是否想要呼叫紧急联络人以寻求帮助。
在一个实施例中,应用135可以使用其他情境数据向用户提供更好的健身体验。例如,应用135可以使用来自智能设备130上的GPS服务的地理信息确定用户的位置,并且向用户提供与健身有关的支持情境信息。在一种情况下,应用135经由GPS服务可以识别出用户在酒店。应用135然后可以基于用户的整体健康或者用户执行的当前锻炼向用户提供最佳地满足用户的营养需求的在酒店的菜单上可获得的选项。例如,订阅力量训练锻炼的用户可以接收具有高蛋白质含量的主菜建议。
在另一实施例中,应用135基于从智能设备130上的GPS服务接收的数据可以识别用户锻炼的健身房并且基于健身房可获得的设备修改向用户建议的锻炼。例如,应用135可以识别出用户在健身房而没有自由重量。应用135然后可以通过使用用户可以使用健身房可获得的设备执行并且仍然基本上满足锻炼目标的练习取代自由重量练习,针对这一情况修改向用户建议的锻炼。在一个实施例中,应用135可以基于从智能设备130上的GSP服务或者从向应用135提供海拔信息的测高仪接收的海拔信息修改向用户建议的锻炼。例如,基于用户当前位置的海拔,如果应用识别的海拔基本上大于用户适应的平均海拔,则应用135可以建议用户跑更短的距离。
在一个实施例中,应用135可以基于从存在于智能设备130上的日历服务接收的日历信息动态地重新调度锻炼。应用135可以基于可能出现的其他冲突约定主动移动用户日历上调度锻炼的时间。例如,用户可能由于用户想要出席业务会议而不能够做出针对8AM调度的锻炼课程。应用135可以重新调度8PM(用户的日历中由应用135确定的下一自由间隙)的锻炼。在一个实施例中,如果用户由于其他约定而不能够执行当前锻炼,则应用135可以调度另一天的锻炼。
在一个实施例中,提供附加传感器信息(例如附加健康信息)的多个设备可以与运动跟踪系统100集成。应用135可以从监控用户的不同健康方面的其他设备接收健康信息。例如,应用135可以在一段时间内和/或实时地从心率监控器接收表示用户心率的信息。应用135也可以从使用肌电图的设备接收健康信息以监控与用户肌肉相关联的动作。集成来自多个设备的信息可以通过提供附加信息来帮助应用135,附加信息可以用于更好地识别用户的整体健康。应用135也可以基于从集成设备接收的信息修改向用户建议的锻炼。例如,如果应用135识别出用户的心率不正常地高于标准值,则应用135可以降低向用户建议的锻炼的重复次数或强度。
在一个实施例中,应用135可以从姿势监控设备、或者监控用户的姿势的设备的组合接收健康信息。应用135然后可以向用户提供反馈,反馈向用户通知在执行运动或活动时的不良姿势或不良形式。例如,应用135可以接收表示用户在办公室坐下的同时维持不良姿势的信息。应用135可以向用户通知不良姿势并且在视觉上向用户演示良好姿势的表示。
在一个实施例中,运动跟踪系统100允许一个或多个用户跟踪其他用户的锻炼和进展。例如,通过使得其用户简档对于其他用户可访问,用户可以选择将其锻炼与一个或多个不同用户连接。在一种情况下,这使得用户能够具有异步锻炼伙伴,因为两个用户可以在不同位置和不同时间执行相同的锻炼并且仍然能够跟踪每个其他人的进展和改善。在另一示例中,可以使用运动跟踪系统100监控竞赛或比赛的对手。例如,马拉松比赛的对手可以与竞争主机共享其用户简档。竞争主机因此可以准确地监控每个用户完成马拉松比赛的时间,而不管每个用户开始的当日时间或者开始组。
在一个实施例中,运动跟踪系统100可以用于在用户上班或通常执行特定任务时的伤害防止。例如,货运公司的拥有者可以监控其每个工人提升一组盒子并且将盒子移动某个距离的次数。拥有者可以设置工人应当执行的最大提升次数的极限以防止伤害。应用135因此可以向工人通知工人何时达到最大重复提升次数,并且要求工人不再执行更多提升。
在另一实施例中,运动跟踪系统100可以用于监控工作时执行例程的工人执行的动作。这可以帮助管理员监控在例程期间表现出紧张的雇佣者并且确定引起雇佣者表现出紧张的例程中的特定模式或动作。
在一个实施例中,运动跟踪系统可以用于在用户使用枪支时识别后坐力。这可以帮助用户或监督机构监控用户在一段时间内开枪的回合数。在一个示例中,监督机构可以基于用户在仿真期间的动作以及用户开枪的回合数来监控用户在仿真期间的表现。在另一实施例中,开枪范围可以准确地监控用户开枪的回合数,并且向用户收取适当费用。
在一个实施例中,应用135可以识别用户执行的姿势或一组姿势并且进行与用户执行的姿势相关的适当动作。例如,应用135基于运动数据可以识别出佩戴运动跟踪设备140的用户在连网情况下摇动也佩戴运动跟踪设备140的第二用户的手。基于与手部摇动姿势相关联的模式以及与第二姿势相关联的用户简档,应用135可以执行发送对一个或多个社交网络网站上的第二用户的一个或多个简档的连接访问的动作。因此,用户执行的物理运动(诸如摇手)可以用作使得设备或程序能够执行动作(诸如配对两个设备或者发送社交网络邀请)的钥匙。
在另一实施例中,应用135可以识别与用户和智能设备130上可获得的一组服务进行交互相关的姿势。例如,用户可以在智能设备130上接收电子邮件。用户可以通过执行手腕的圆形旋转(姿势)来打开电子邮件,从而导致应用135识别姿势并且通过在智能设备130上打开电子邮件来进行动作。
在一个实施例中,应用135可以用于监控用户执行的例程,其中例程不是健身例程。例如,应用135可以用于监控外科医生在执行复杂手术时执行的步骤。应用135可以监控外科医生执行的行动或动作,并且提醒外科医生手术是否跳过例程中的步骤。类似地,运动跟踪系统100可以用于监控工业工人执行的工业例程。例如,工人执行的例程可以包括工人执行运动A、然后执行运动B并且然后执行运动C,在这之后工人重复该循环。如果用户错过例程中的特定运动,则应用135可以提醒或通知用户。另外,应用135可以生成表示工人在执行例程时的效率或者工人执行例程的次数的量化度量。因此,运动跟踪系统100不限于跟踪用户的健身例程。
在一个实施例中,运动跟踪系统100可以对用户在执行活动时执行的重复运动计数,该活动不限于健身活动。例如,应用可以监控外科医生在对患者进行手术时拿起一个或多个海绵并且将海绵放置在患者的身体的打开的伤口或区域周围的次数。如果外科医生朝着手术的结尾忘记从患者的身体去除相同数目的海绵,则运动跟踪系统100基于外科医生在手术的开始时放置的海绵的数目的计数可以通知外科医生。因此,运动跟踪系统不限于识别和监控与健身活动或例程相关的重复运动。
说明书中对于“一个实施例”或“实施例”的引用表示结合这些实施例描述的特定特征、结构或特性被包括在至少一个实施例中。短语“在一个实施例中”或“在实施例中”在说明书各个地方的出现不一定全部指代相同的实施例。
详细描述的某些部分以对计算机存储器内的数据比特的操作的算法和符号表示来呈现。这些算法描述和表示是数据处理领域技术人员用于向本领域其他技术人员最有效地传达其工作的本质的方式。算法再次并且通常被构思为产生期望结果的步骤(指令)的自相合序列。步骤是需要物理量的物理处理的步骤。通常而非必须地,这些量采用能够存储、传输、组合、比较和处理的电信号、磁信号或光信号的形式。有时特别出于一般使用的目的将这些信号称为比特、值、元素、符号、字母、术语、数据等是很方便的。另外,不失一般性,有时将需要物理量的物理处理或变型或者物理量的表示的步骤的某些布置称为模块或代码设备也很方便。
然而,这些以及类似术语全部应当与适当的物理量相关联,并且仅是用于这些量的方便的标记。除非另外具体指出,如根据下面的讨论很清楚,否则应当理解,贯穿本说明书,使用诸如“处理”或“计算(computing)”或“计算(calculating)”或“确定”等术语的讨论指代计算机系统或者操纵和变换被表示为计算机系统存储器或寄存器或者其他这样的信息存储、传输或显示设备中的物理(电子)量的数据的类似电子计算设备(诸如特定计算机器)的动作和过程。
实施例的某些方面包括本文中描述的算法形式的步骤和指令。应当注意,实施例的过程步骤和指令可以用软件、固件或硬件来实施,并且在用软件实施时,可以被下载以驻留在各种操作系统上并且从各种操作系统使用的不同平台来操作。实施例也可以是能够在计算系统上执行的计算机程序产品的形式。
实施例还涉及用于执行本文中的操作的装置。本装置可以具体地被构造用于例如特定计算机等目的,或者其可以包括同计算机中存储的计算机程序被选择性地激活或重新配置的通用计算机。这样的计算机程序可以存储在计算机可读存储介质中,计算机可读存储介质诸如但不限于任何类型的盘,包括软盘、光盘、CD-ROM、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁或光卡、专用集成电路(ASIC)、或者任何类型的适合用于存储电子指令的介质,并且其每个耦合到计算机系统总线。存储器可以包括以上和/或能够存储信息/数据/程序并且能够是瞬态或非瞬态介质的其他设备中的任何设备,其中非瞬态或非暂态介质可以包括在大于最小持续时间期间存储信息存储器/存储装置。另外,本说明书中所指代的计算机可以包括单个处理器,或者可以是采用多个处理器设计用于增加计算能力的架构。
本文中所呈现的算法和显示并非固有地与任何特定计算机或其他装置相关。也可以根据本文中的教示与程序一起使用各种通用系统,或者可以证明构造更专门的装置来执行方法步骤是方便的。各种这些系统的结构根据本文中的描述将很清楚。另外,并没有参考任何特定编程语言描述实施例。应当理解,可以使用各种编程语言实现本文中所描述的实施例的教示,并且本文中对特定语言的任何引用被提供用于实现和最佳模式的公开。
另外,说明书中所使用的语言在原则上被选择用于可读性和说明目的,并且可以不被选择为划定或限制发明主题。因此,实施例的公开意图在于说明而非限制实施例的范围,实施例的范围在权利要求中给出。
虽然已经在本文中说明和描述了特定实施例和实施方式,然而应当理解,实施例不限于本文中所公开的精确构造和组成,并且可以在不偏离如所附权利要求书中限定的实施例的精神和范围的情况下对实施例的方法和装置的布置、操作和细节做出各种修改、变化和变型。
Claims (20)
1.一种用于解释由运动跟踪设备的用户执行的重复动作的方法,所述方法包括:
从所述运动跟踪设备接收运动数据,所述运动数据表示由所述运动跟踪设备的所述用户执行的、与重复动作相关联的运动;
基于所述运动数据和所述重复动作确定所述用户执行所述重复动作所使用的形式;
基于所确定的所述用户执行所述重复动作所使用的形式生成反馈,所述反馈向所述用户通知所述用户正在执行所述重复动作所使用的所述形式;以及
提供所述反馈用于向所述用户显示。
2.根据权利要求1所述的方法,其中基于所述运动数据和所述重复动作确定所述用户执行所述重复动作所使用的形式包括:
识别所述运动数据的一个或多个信号中的重复特征;
将所述重复特征与和所述重复动作相关联的正确动作数据相比较;以及
基于所述比较确定所述用户正在执行所述重复动作所使用的所述形式。
3.根据权利要求2所述的方法,其中基于所述比较确定所述用户正在执行所述重复动作所使用的所述形式包括:
基于否定比较识别出所述用户正在使用不正确的形式执行所述重复运动;以及
基于所述重复特征确定正在由所述用户执行的不正确形式的类型。
4.根据权利要求3所述的方法,其中基于所述重复特征确定正在由所述用户执行的不正确形式的所述类型包括:
将所述重复特征与和所述重复动作相关联的一个或多个不正确的动作数据相比较;以及
基于所述比较确定正在由所述用户执行的不正确形式的所述类型。
5.根据权利要求1所述的方法,还包括:
基于所述运动数据确定紧张信息,所述紧张信息表示用于执行所述重复动作或者所述重复动作的一部分的用户紧张;以及
基于所述紧张信息生成反馈信息。
6.根据权利要求5所述的方法,还包括:
提供要由所述用户来执行的健身例程,所述健身例程包括一个或多个重复动作集合。
7.根据权利要求6所述的方法,还包括:
基于与所述健身例程的所述一个或多个重复动作集合中的重复动作相关联的所述紧张信息修改所述健身例程。
8.根据权利要求7所述的方法,其中修改所述健身例程包括增加或减少与重复动作集合相关联的重复动作的数目,或者增加或减少与重复动作集合相关联的健身设备的重量。
9.一种用于监控由运动跟踪设备的用户执行的动作的方法,所述方法包括:
从所述运动跟踪设备接收运动数据,所述运动数据表示由所述运动跟踪设备的所述用户执行的动作;
识别所述运动数据的一个或多个信号中的一个或多个特征;
基于所述一个或多个特征监控由所述用户执行的例程;
基于所监控的例程生成反馈;以及
提供所述反馈用于向所述用户显示。
10.根据权利要求9所述的方法,其中基于所述一个或多个特征监控由所述用户执行的所述例程包括:
基于所述一个或多个特征识别由所述用户执行的所述例程的一个或多个步骤;
基于识别的所述一个或多个步骤确定所述用户是否错过与所述例程相关联的步骤。
11.根据权利要求9所述的方法,其中基于所监控的例程生成反馈包括:
基于所述一个或多个特征识别由所述用户执行的所述例程的一个或多个步骤;
基于识别的所述一个或多个步骤确定所述用户是否错过与所述例程相关联的步骤。
12.根据权利要求9所述的方法,其中所述反馈包括与所监控的例程相关联的表现数据。
13.一种用于解释由运动跟踪设备的用户执行的运动的方法,所述方法包括:
从所述运动跟踪设备接收运动数据,所述运动数据表示由所述运动跟踪设备的所述用户执行的运动;
识别所述运动数据的一个或多个信号中的一个或多个特征;
基于识别的所述一个或多个特征确定由所述用户执行的姿势;
基于所确定的姿势识别与所确定的姿势相关联的动作;以及
使用处理器执行所识别的动作。
14.根据权利要求13所述的方法,其中所识别的动作包括经由社交网络系统向与所述社交网络系统相关联的第二用户发送邀请。
15.一种包括计算机可读介质的计算机程序产品,所述计算机可读介质上编码有指令,所述指令在由处理器执行时使得所述处理器:
从所述运动跟踪设备接收运动数据,所述运动数据表示由所述运动跟踪设备的所述用户执行的、与重复动作相关联的运动;
基于所述运动数据和所述重复动作确定所述用户执行所述重复动作所使用的形式;
基于所确定的所述用户执行所述重复运动所使用的形式生成反馈,所述反馈向所述用户通知所述用户正在执行所述重复动作所使用的所述形式;以及
提供所述反馈用于向所述用户显示。
16.根据权利要求15所述的计算机程序产品,其中基于所述运动数据和所述重复动作确定所述用户执行所述重复动作所使用的形式包括:
识别所述运动数据的一个或多个信号中的重复特征;
将所述重复特征与和所述重复动作相关联的正确动作数据相比较;以及
基于所述比较确定所述用户正在执行所述重复动作所使用的所述形式。
17.根据权利要求16所述的计算机程序产品,其中基于所述比较确定所述用户正在执行所述重复动作所使用的所述形式包括:
基于否定比较识别出所述用户正在使用不正确的形式执行所述重复运动;以及
基于所述重复特征确定正在由所述用户执行的不正确形式的类型。
18.根据权利要求17所述的计算机程序产品,其中基于所述重复特征确定正在由所述用户执行的不正确形式的所述类型包括:
将所述重复特征与和所述重复动作相关联的一个或多个不正确的动作数据相比较;以及
基于所述比较确定正在由所述用户执行的不正确形式的所述类型。
19.根据权利要求15所述的计算机程序产品,还包括:
基于所述运动数据确定紧张信息,所述紧张信息表示用于执行所述重复动作或者所述重复动作的一部分的用户紧张;以及
基于所述紧张信息生成反馈。
20.根据权利要求5所述的方法,还包括:
提供要由所述用户来执行的健身例程,所述健身例程包括一个或多个重复动作集合;以及
基于与所述健身例程的所述一个或多个重复动作集合中的重复动作相关联的所述紧张信息修改所述健身例程。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361873347P | 2013-09-03 | 2013-09-03 | |
US201361873339P | 2013-09-03 | 2013-09-03 | |
US61/873,339 | 2013-09-03 | ||
US61/873,347 | 2013-09-03 | ||
PCT/US2014/053703 WO2015034824A1 (en) | 2013-09-03 | 2014-09-02 | System and method for identifying and interpreting repetitive motions |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105612556A true CN105612556A (zh) | 2016-05-25 |
Family
ID=52628877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480055463.6A Pending CN105612556A (zh) | 2013-09-03 | 2014-09-02 | 用于识别和解释重复运动的系统和方法 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3042360A4 (zh) |
CN (1) | CN105612556A (zh) |
WO (1) | WO2015034824A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109768845A (zh) * | 2018-12-28 | 2019-05-17 | 北京诺亦腾科技有限公司 | 数据处理方法、装置及存储介质 |
CN112137833A (zh) * | 2019-06-27 | 2020-12-29 | 丰田自动车株式会社 | 学习系统、复健辅助系统、方法、程序及学习完毕模型 |
CN113996013A (zh) * | 2020-07-28 | 2022-02-01 | 丰田自动车株式会社 | 训练系统、训练方法和程序 |
CN114391828A (zh) * | 2022-03-01 | 2022-04-26 | 郑州大学 | 一种用于脑卒中患者的积极心理护理干预系统 |
CN114522394A (zh) * | 2017-06-02 | 2022-05-24 | 苹果公司 | 定制通知的确定和呈现 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102254164B1 (ko) * | 2015-12-24 | 2021-05-20 | 삼성전자주식회사 | 웨어러블 장치 및 웨어러블 장치와 연결 가능한 사용자 단말장치 |
JP6699208B2 (ja) * | 2016-02-04 | 2020-05-27 | カシオ計算機株式会社 | トレーニング支援システム、トレーニング支援サーバおよびプログラム |
US20170225037A1 (en) * | 2016-02-04 | 2017-08-10 | Casio Computer Co., Ltd. | Training support system and training support method |
CA3018972A1 (en) | 2016-03-25 | 2017-09-28 | David BASSION, Sr. | Medical device tracking and reprocessing system |
CA3118245A1 (en) * | 2018-10-29 | 2020-05-07 | Intellisports Inc. | System and method for real-time activity classification and feedback |
JP7124796B2 (ja) * | 2019-06-27 | 2022-08-24 | トヨタ自動車株式会社 | リハビリ支援システム、リハビリ支援装置の作動方法、及びリハビリ支援プログラム |
CN110674708A (zh) * | 2019-09-06 | 2020-01-10 | 珠海格力电器股份有限公司 | 一种基于机器分类模型的感知器及其感知对象的方法 |
CN111657621B (zh) * | 2020-06-04 | 2022-05-13 | 福建奇鹭物联网科技股份公司 | 一种检测穿戴时间和运动力度的运动鞋及预防损伤方法 |
CN112957709A (zh) * | 2021-02-03 | 2021-06-15 | 邵阳学院 | 一种智能体育器材管理系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090319221A1 (en) * | 2008-06-24 | 2009-12-24 | Philippe Kahn | Program Setting Adjustments Based on Activity Identification |
US20120271143A1 (en) * | 2010-11-24 | 2012-10-25 | Nike, Inc. | Fatigue Indices and Uses Thereof |
US20120277891A1 (en) * | 2010-11-05 | 2012-11-01 | Nike, Inc. | Method and System for Automated Personal Training that Includes Training Programs |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2002255568B8 (en) * | 2001-02-20 | 2014-01-09 | Adidas Ag | Modular personal network systems and methods |
US7651442B2 (en) * | 2002-08-15 | 2010-01-26 | Alan Carlson | Universal system for monitoring and controlling exercise parameters |
EP2175941B1 (en) * | 2007-08-08 | 2012-05-30 | Koninklijke Philips Electronics N.V. | Process and system for monitoring exercise motions of a person |
US8500604B2 (en) * | 2009-10-17 | 2013-08-06 | Robert Bosch Gmbh | Wearable system for monitoring strength training |
US20110117528A1 (en) * | 2009-11-18 | 2011-05-19 | Marciello Robert J | Remote physical therapy apparatus |
US9557817B2 (en) * | 2010-08-13 | 2017-01-31 | Wickr Inc. | Recognizing gesture inputs using distributed processing of sensor data from multiple sensors |
DE102010060592A1 (de) * | 2010-11-16 | 2012-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Trainingssystem, mobiles Endgerät und Trainingsverfahren für eine Person |
US9474970B2 (en) * | 2012-01-26 | 2016-10-25 | David H. Kil | System and method for processing motion-related sensor data with social mind-body games for health application |
-
2014
- 2014-09-02 EP EP14841766.0A patent/EP3042360A4/en not_active Withdrawn
- 2014-09-02 WO PCT/US2014/053703 patent/WO2015034824A1/en active Application Filing
- 2014-09-02 CN CN201480055463.6A patent/CN105612556A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090319221A1 (en) * | 2008-06-24 | 2009-12-24 | Philippe Kahn | Program Setting Adjustments Based on Activity Identification |
US20120277891A1 (en) * | 2010-11-05 | 2012-11-01 | Nike, Inc. | Method and System for Automated Personal Training that Includes Training Programs |
US20120271143A1 (en) * | 2010-11-24 | 2012-10-25 | Nike, Inc. | Fatigue Indices and Uses Thereof |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114522394A (zh) * | 2017-06-02 | 2022-05-24 | 苹果公司 | 定制通知的确定和呈现 |
CN114522394B (zh) * | 2017-06-02 | 2023-05-12 | 苹果公司 | 定制通知的确定和呈现 |
CN109768845A (zh) * | 2018-12-28 | 2019-05-17 | 北京诺亦腾科技有限公司 | 数据处理方法、装置及存储介质 |
CN112137833A (zh) * | 2019-06-27 | 2020-12-29 | 丰田自动车株式会社 | 学习系统、复健辅助系统、方法、程序及学习完毕模型 |
CN113996013A (zh) * | 2020-07-28 | 2022-02-01 | 丰田自动车株式会社 | 训练系统、训练方法和程序 |
CN114391828A (zh) * | 2022-03-01 | 2022-04-26 | 郑州大学 | 一种用于脑卒中患者的积极心理护理干预系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3042360A4 (en) | 2017-06-07 |
WO2015034824A1 (en) | 2015-03-12 |
EP3042360A1 (en) | 2016-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10799760B2 (en) | System and method for identifying and interpreting repetitive motions | |
CN105612556A (zh) | 用于识别和解释重复运动的系统和方法 | |
US11745058B2 (en) | Methods and apparatus for coaching based on workout history | |
US20210008413A1 (en) | Interactive Personal Training System | |
US11887496B2 (en) | Methods and apparatus for coaching based on workout history and readiness/recovery information | |
US20180272190A1 (en) | Agent apparatus and agent method | |
Farrokhi et al. | Application of Internet of Things and artificial intelligence for smart fitness: A survey | |
US11273343B2 (en) | Systems and methods for computer vision and machine-learning based form feedback | |
US20180036591A1 (en) | Event-based prescription of fitness-related activities | |
CN109479110A (zh) | 动态创建个人化锻炼视频的系统和方法 | |
US20220296966A1 (en) | Cross-Platform and Connected Digital Fitness System | |
CN109416820A (zh) | 对用户满意度进行自动确定和响应 | |
US20220176201A1 (en) | Methods and systems for exercise recognition and analysis | |
Radhakrishnan et al. | ERICA: enabling real-time mistake detection & corrective feedback for free-weights exercises | |
KR20190047648A (ko) | 행동에 대한 피드백을 제공하는 웨어러블 디바이스 및 방법 | |
WO2017032635A1 (en) | System, method and computer program for providing a health advice to a subject | |
CN116529750A (zh) | 用于产品个性化或推荐的接口的方法和系统 | |
Mahendran | Deep learning for fitness | |
JP6048997B1 (ja) | 健康管理サーバおよび健康管理サーバ制御方法並びに健康管理プログラム | |
CN109243573A (zh) | 一种综合体育教育锻炼设备 | |
JP2019109859A (ja) | 指導支援システム、指導支援方法及び指導支援プログラム | |
Huang et al. | Intelligent scheduling of execution for customized physical fitness and healthcare system | |
Van Hooff | Performance assessment and feedback of fitness exercises using smartphone sensors | |
US20210068711A1 (en) | Computerized reward system of digital assets | |
US20240081689A1 (en) | Method and system for respiration and movement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160525 |
|
WD01 | Invention patent application deemed withdrawn after publication |