相关申请的交叉引用
本申请要求于2019年1月4日提交的题为“electronictagforgolfshotdetection”的美国临时申请62/621,385的权益,出于任何和所有目的,该申请在此通过引用以其整体并入本文。
背景
本主题涉及在比赛期间检测工具的挥动。
背景技术:
人们进行的许多不同比赛都涉及挥动工具作为进行比赛的一部分。示例包括在一轮高尔夫球期间挥动高尔夫球杆击高尔夫球、在棒球、垒球或板球中挥动球棒击球、在槌球中挥动木槌击球以及在长曲棍球中挥动长曲棍球棒击球。球员用工具练习挥杆是很常见的。这可以在实际比赛期间使用的挥杆之前立即发生,或者在一些其它时间发生。
用于挥动工具的技术对于比赛期间击球(或其它目标)的有效性很重要。教练经常帮助球员了解他们在工具挥动期间所做的事情,并提供有关如何改进他们的挥杆的建议。
在一些比赛中,了解挥杆发生的时间和地点对比赛也很重要,诸如了解球员关于棒球中的投球(pitch)何时开始挥杆,或了解高尔夫球中击球的次数。在本领域中已知各种不同的装置来检测工具的摆动,诸如使用摄像机来监视球员。教练或球员可以使用此类视频来分析球员在做什么,并确定球员可以采取不同的措施来尝试改善他们的挥杆。诸如美国专利第8,617,005号中公开的系统的其他系统为球员提供了一种容易地跟踪比赛期间进行的挥杆次数的技术。
附图简述
包含在说明书中并构成说明书一部分的附图示出了各种实施例。附图与一般描述一起用于解释各种原理。在附图中:
图1示出用于在高尔夫球比赛期间跟踪挥杆的系统的实施例;
图2示出适于附接到高尔夫球杆的电子标签的实施例的框图;
图3示出使用用于在高尔夫球比赛期间跟踪挥杆的系统的实施例的高尔夫球手;
图4示出高尔夫球杆的各种取向;
图5a、图5b和图5c示出用于附接到高尔夫球杆的电子标签中的功率管理的方法的实施例的流程图;
图6示出用于确定高尔夫球杆的状态的方法的实施例的流程图;
图7示出在高尔夫球杆的挥杆期间电子标签的实施例中的示例传感器数据;
图8示出用于电子标签中的人工神经网络的实施例的图示;以及
图9示出通过附接到高尔夫球杆的电子标签来检测高尔夫击球的方法的实施例的流程图。
详细描述
在以下详细描述中,通过示例阐述了许多具体细节以提供对相关教导的透彻理解。然而,对于本领域技术人员来说应该明显的是,可以在没有这些细节的情况下实践本教导。在其它情况下,众所周知的方法、程序和组件已经在相对高层次处进行了描述,没有详细说明,以避免不必要地模糊本概念的各方面。许多描述性术语和短语用于描述本公开的各种实施例。除非在本说明书中给出不同的定义,否则这些描述性术语和短语用于向本领域技术人员传达普遍同意的含义。现在具体参考在附图中示出并在下面讨论的示例。
图1示出用于在高尔夫球比赛期间跟踪挥杆的系统100的实施例。该系统包括适于附接到高尔夫球杆110的电子标签120。高尔夫球杆110可以包括附接到杆头114用于击打高尔夫球的杆身112,并且还可以包括握把116以允许高尔夫球手在挥杆期间握住高尔夫球杆110。电子标签120可以是具有有源电子器件的电子设备并且可以包括诸如电池的电源。电子标签120可以以任何合适的方式附接到高尔夫球杆110,包括但不限于夹子或某个其它种类的紧固件以附接到杆身112、握把116或杆头114,嵌入到杆身112、握把116或杆头114中,或附接到电子标签120的主体122以拧入握把116端部上的孔的螺钉部分124。
系统100还可以包括徽章(medallion)130,该徽章130是用于从电子标签120接收信息的第二电子设备并且适于在一轮高尔夫球期间由高尔夫球手佩戴。徽章130可以是仅用于从电子标签120接收信息的目的的特制设备,或者可以是运行应用以从电子标签120接收信息的通用设备,诸如智能电话。徽章130包括gps接收器131以在一轮高尔夫球期间确定徽章的位置,并且从而确定高尔夫球手的位置。它还包括从电子标签120接收信息的无线接收器132和处理从电子标签120接收的信息的处理系统134。还可以包括计算机接口138以允许处理系统134与外部计算机140通信,该外部计算机140可以是智能电话、个人计算机或任何其它类型的计算设备。包括电源136以向有源电子器件供电,诸如gps接收器131、无线接收器132、处理系统134和计算机接口138。
一些系统100可以包括计算机140以用作徽章130通过互联网155到基于云的服务150的接口,但是在一些实施例中,奖章130能够通过互联网155直接与基于云的服务150通信,消除了对系统100中的计算机140的需要。
在高尔夫球比赛期间,电子标签120能够确定高尔夫击球已经发生并且向徽章130发送指示此类的消息。徽章130可以将高尔夫击球信息连同来自gps接收器131的时间标签和位置一起存储在处理系统134中,以在高尔夫比赛已经完成之后稍后上传到基于云的服务150。但是在其它实施例中,徽章130可以与计算机140通信以向高尔夫球手提供比赛中的信息,诸如已经检测到的击球次数或关于高尔夫球手击打高尔夫球多远的信息。基于云的服务150可以为用户存储来自多场高尔夫比赛的信息并向用户提供关于他们的高尔夫技能的统计信息,诸如得分统计、差点信息或球杆击打距离信息。
图2示出适于附接到高尔夫球杆110的电子标签120的实施例的框图。电子标签120包括耦合到存储器212的处理器210和用于通过天线222与徽章130通信的无线接口220。根据实施例,无线接口220可以支持任何类型、频率或协议,包括但不限于
根据实施例,存储器212可以是任何类型并且具有任何量的存储容量。计算机代码214可以存储在存储器212中以对处理器210进行编程以执行本文描述的任何方法,这取决于实施例。
电子标签120还包括光传感器230以允许处理器210确定电子标签120上的环境光量。光传感器230可用于确定高尔夫球杆110是否已被放置在高尔夫球袋内,并且因此,它本质上没有为高尔夫球手的挥杆做好准备。电子标签120还包括加速度计232。加速度计232可以包括任何数量的任意类型的加速度计。在至少一个实施例中,电子标签120包括nxpfxos8700cq加速度计232,其在单个封装中包括3轴14位线性加速度计和3轴16位磁力计,并且可以以高达800个样本/秒的速度读取读数。电子标签120还可以包括陀螺仪234,诸如nxpfxas21002,其以高达2000°/秒的速度以16位分辨率测量偏航、俯仰和滚动,并且可以以高达800个样本/秒的速度读取读数。加速计、磁力计或陀螺仪中的任何一个都可以被认为是电子标签120中的传感器。
电子标签包括电源205,诸如一个或更多个可更换纽扣电池(例如cr2032锂电池),以为电子标签中的有源电子器件供电。其它实施例可以具有任何其它种类的电源,包括但不限于可充电电池、太阳能电池、动能发电机或燃料电池。电池寿命长是理想的特征,因为这意味着电子标签120中的电池可以较少更换,从而降低了高尔夫球手的成本和麻烦。因此,虽然为电子标签选择的组件可具有固有的低功率要求,但是可以使用本文描述的各种方法来进一步降低电子标签120的功率消耗。
图3示出使用系统100的实施例的高尔夫球手320用于在高尔夫球比赛期间跟踪挥杆。高尔夫球手320拿着带有附接到球杆110末端的电子标签120的高尔夫球杆110并且准备挥动高尔夫球杆110。高尔夫球手320佩戴徽章130以与电子标签120通信。高尔夫球手的高尔夫球袋330在附近保持高尔夫球手的一套球杆340的其余部分,包括推杆344。注意,该一套球杆340的其余部分在高尔夫球袋330中都倒置,并且使它们的握把深深插入高尔夫球袋330,其中几乎没有环境光。公开的方法允许附接到高尔夫球袋330中的高尔夫球杆340的电子标签在非常大百分比的时间内保持在非常低的功率状态以最小化它们的功率使用的方法。
当高尔夫球手320从高尔夫球袋330中取出高尔夫球杆110并将其带到他的球的位置时,电子标签120中的处理器210被光传感器230唤醒,因为它从高尔夫球袋330的黑暗中移除。然后使用加速度计232来确定高尔夫球杆110处于准备挥杆的位置,从而最小化直到那时的功率使用。一旦高尔夫球杆110处于准备挥杆的位置,有用的是电子标签120中的子系统被打开并且处理器正在主动监视传感器232、234的输出以检测高尔夫击球是否已经发生。
图4示出高尔夫球杆110的各种取向400。在实施例中,来自附接到高尔夫球杆110的电子标签120中的传感器的数据可用于确定高尔夫球杆110的取向。高尔夫球杆110的取向(此处和权利要求中使用的术语)是指高尔夫球杆110相对于重力矢量(即向下方向)的角度,使用高尔夫球杆110的握把的末端(在所示的实施例中,这是电子标签120所在的位置)作为角度测量的顶点。在至少一些实施例中,来自电子标签120中的3轴加速度计232的信息可由电子标签120中的处理器210获得以在三维(3d)空间中定义重力矢量相对于高尔夫球杆110的位置。在一些实施例中,加速度计232的轴之一可以与高尔夫球杆110的杆身112对齐,诸如“z轴”,使得高尔夫球杆110在静止时的取向可以计算为:
其中,(x,y,z)是3d加速度矢量,并且z平行于高尔夫球杆的杆身。
可以使用其它方法来计算高尔夫球杆110的取向,诸如使用来自电子标签120中的磁力计的信息。在一些实施例中,可以使用从徽章接收的纬度信息来校正从磁力计信息获得的取向,但在其它实施例中,可以使用磁力计读数而无需对纬度进行校正。其它实施例可以使用来自陀螺仪234的信息来确定高尔夫球杆110的取向。这可以通过整合从陀螺仪234随时间推移接收的角加速度信息来实现。
高尔夫球杆110被示为处于直立取向410,该直立取向410将具有0°的取向角。高尔夫球杆的各种其它位置示为412-418,包括水平位置415、417和倒置位置416。为了本公开的目的,如果高尔夫球杆110的取向角在90°的位置415到270°的位置417之间的范围426内,则认为高尔夫球杆110是倒置的(或倒转的)。
在一些实施例中,位置414和位置418之间的取向的第一范围422可被定义为指示高尔夫球杆110可能准备使用但可能处于或可能不处于挥动高尔夫球杆110的实际位置的位置范围。查看第一范围422的另一种方式在于,如果高尔夫球杆110在第一范围422之外,则高尔夫球挥杆不会迫在眉睫,并且电子标签120可以再返回休眠另一时间段。例如,如果高尔夫球杆110不在范围422内,那么如果仅使用加速度计232来计算取向,则不用于确定取向的传感器(诸如磁力计和/或陀螺仪234)可以保持不通电。在一些实施例中,可以取决于高尔夫球杆的类型来选择第一范围424。电子标签120可以从徽章130接收关于它附接到哪种类型的高尔夫球杆的信息。高尔夫球杆110的类型可以是一般类型,诸如推杆与非推杆或推杆、铁杆或木杆,或者高尔夫球杆的类型可以是特定的,诸如铁杆号(例如,4号铁杆或9号铁杆)或木杆号/类型(例如驱动器或3号木杆)。在一些实施例中,高尔夫球杆110的杆底角(lieangle)(即杆身112与杆头114的底部之间的角度)可提供给电子标签120并用于确定第一范围422(或第二范围424)。不倒置的取向的任何范围(即不在范围426内)都可以用作第一范围422,但在至少一些实施例中,第一范围422在60°和-60°之间或从高尔夫球杆110的直立取向410到与高尔夫球杆110的直立取向410的最大角度60°(位置414)的范围。
在一些实施例中,高尔夫球杆110的取向在位置412和位置413之间的第二范围424可以被定义为高尔夫球杆110准备好使用的位置;高尔夫球杆110可以随时挥动以击球。一旦确定高尔夫球杆110在第二范围424内,电子标签120内的各种子系统就被开启以准备好捕捉确定击球是否发生所需的信息。在一些实施例中,一旦高尔夫球杆110处于取向的第二范围424中,就可以增加从传感器232、234接收信息的速率。
一旦检测到挥杆,就可以评估挥杆以确定高尔夫击球是否发生(例如,球是否被击中)。如果在预定时间段之后没有检测到挥杆,则高尔夫球杆可能只是停留在取向的第一范围422内,诸如靠墙支撑。为了避免仅仅因为高尔夫球杆110处于那种状态而耗尽电池的电力,可以确定高尔夫球杆110在预定时间段期间是否有任何移动。高尔夫球杆110的移动可以通过寻找高尔夫球杆110的取向的变化来近似。在一些实施例中,如果两个取向读数之间的取向差小于预定差,则可以确定高尔夫球杆110实际上并未被高尔夫球手握住。可以使用任何预定差,但是在一些实施例中,预定差可以在0.5°到10°之间的范围内,其中至少一个实施例使用约5°的预定差。
在一些实施例中,取向角可以映射到0°到180°之间的角度,其中在该范围之外的角度(诸如位置417、418)通过从360°减去它们的角度而镜像到0°-180°范围。因此,例如,位置417的270°角将映射到90°,使位置417等效于位置415。但在一些实施例中,整个360°范围(0°到360°或-180°到180°)可用于允许确定球杆头114是否正确取向以击球,即杆身112具有与球杆头114相对的与地面的锐角,如范围424中所示。注意,当高尔夫球杆110在挥杆平面中在那个位置挥动时,范围424的镜像(即,位置410和位置418之间的范围)不会使球杆头114进入击球的位置。
如本领域普通技术人员将理解的,各种实施例的方面可以体现为系统、方法或计算机程序产品。因此,各种实施例的方面可以采用完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)或组合软件和硬件方面的实施例的形式,这些方面通常都可以在本文中称为“手持控制器”、“计算机”、“服务器”、“电路”、“模块”、“网络控制器”、“逻辑”或“系统”。此外,各种实施例的方面可以采用体现在其上存储有计算机可读程序代码的一个或更多个计算机可读介质中的计算机程序产品的形式。
可以利用一个或更多个计算机可读存储介质的任何组合。计算机可读存储介质可以体现为例如电子、磁、光、电磁、红外或半导体系统、装置或设备,或本领域普通技术人员已知的其它类似存储设备,或本文描述的计算机可读存储介质的任何合适组合。在本文件的上下文中,计算机可读存储介质可以是可以包含或存储程序和/或数据以供指令执行系统、装置或设备使用或与其结合使用的任何有形介质。
用于执行各种实施例的方面的操作的计算机程序代码可以用一种或更多种编程语言的任何组合编写,包括面向对象编程语言,诸如java、smalltalk、c++等,以及传统的过程编程语言,诸如“c”编程语言或类似的编程语言。根据各种实现方式,程序代码可以完全在用户计算机上、部分在用户计算机上、作为独立软件包、部分地在用户计算机上且部分地在远程计算机上或完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(lan)或广域网(wan),或者可以连接到外部计算机(例如,使用互联网服务提供商通过互联网)。
参考根据本文公开的各种实施例的方法、装置、系统和计算机程序产品的流程图和/或框图来描述各种实施例的方面。应当理解,流程图和/或框图的各个块以及流程图和/或框图中的块的组合可以通过计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器以生产机器,使得经由计算机或其它可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个块或更多个块中指定的功能/动作的装置。
这些计算机程序指令也可以存储在计算机可读介质中,该计算机可读介质可以指导计算机、其它可编程数据处理装置或其它设备以特定方式运行,使得存储在计算机可读介质中的指令产生制品,该制品包括实现流程图和/或框图的一个块或更多个块中指定的功能/动作的指令。计算机程序指令也可以加载到计算机、其它可编程数据处理装置或其它设备上,以使在计算机、其它可编程装置或其它设备上执行一系列操作步骤以产生计算机实现的过程,使得在计算机或其它可编程装置上执行的指令提供用于实现流程图和/或框图的一个块或更多个块中指定的功能/动作的过程。
图中的流程图和/或框图有助于说明各种实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。就这一点而言,流程图或框图中的每个块可表示模块、段或代码的一部分,其包括用于实现指定逻辑功能的一个或更多个可执行指令。还应当注意,在一些替代实现方式中,块中标注的功能可以不按照图中标注的顺序发生。例如,根据所涉及的功能,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行。还将注意,框图和/或流程图说明的每个块以及框图和/或流程图说明中的块的组合可以由执行指定功能或动作的基于专用硬件的系统或专用硬件和计算机指令的组合来实现。
电子标签的功率管理
图5a、图5b和图5c(统称为图5)示出用于附接到高尔夫球杆110的电子标签120中的功率管理的方法的实施例的流程图500a、500b、500c(统称为流程图500)。请注意,流程图分为三页,但应作为一个整体来解释,其中连接符(标记为5a、5b和5c)示出流程在页之间移动的位置。
流程图500开始于处理器210处于断电状态501,其可被称为第一低功率状态。在断电状态中,电子标签120中的处理器210处于其最低功率状态,但它仍可以通过被配置为在处理器210进入断电状态之前这样做的事件唤醒。在至少一个实施例中,使用支持断电模式的nxpqn9080处理器210,该断电模式在被启用以从通用输入/输出(gpio)引脚唤醒时使用小于1μa的电流,或当启用以从休眠定时器、实时时钟(rtc)或gpio引脚唤醒时使用小于2μa的电流。因此,处理器210具有可在第一低功率状态501中使用的多个唤醒源。处理器210的一些上下文在断电状态中被保存,诸如处理器状态、寄存器和sram值。此外,处理器210的引脚的逻辑电平在断电状态中保持静态。注意,在流程图500中,处理器210在块501中处于断电状态(即,第一低功率状态)并且在块560中处于休眠状态(即,第二低功率状态)。处理器210处于活动状态,执行流程图500的所有其它块中的指令。
在进入断电状态501之前,基于光传感器230对光的检测的第一唤醒事件被启用。这可以根据实施例通过任何机制来实现,但是在至少一个实施例中,它可以至少部分地通过向光传感器230提供功率来实现,并且禁用第一唤醒事件可以至少部分地通过从光传感器230移除功率来实现。处理器210中的某些寄存器可能还需要被配置为启用/禁用来自光传感器的唤醒事件。在一些实施例中,光传感器230可以由处理器210的gpio引脚直接供电,允许处理器210将处理器210的第一输出引脚设定为高状态以使光传感器230能够提供第一唤醒事件。处理器210还可被编程为将第一输出设定为低电压电平以在光传感器不使用的时间段期间禁用光传感器230并节省功率。在其它实施例中,可以使用由处理器210的gpio引脚控制的电路系统来切换光传感器230的功率。光传感器230的输出可以耦合到处理器210的另一个gpio引脚(或专用唤醒引脚)以用作唤醒事件。
·从高尔夫球袋中取出高尔夫球杆
流程图500继续从电子标签120中的光传感器230接收第一唤醒事件502,这可以由高尔夫球手从高尔夫球袋中取出高尔夫球杆110而引起,在高尔夫球袋中电子标签120受到保护以避免环境光照射。第一唤醒事件基于光传感器对光的检测。第一唤醒事件导致响应于第一唤醒事件将位于电子标签120内部的处理器210从第一低功率状态(例如断电状态)唤醒到活动状态。在活动状态中,处理器210能够执行存储在存储器212中的计算机代码214。处理器210中的各种功能块可以在活动状态中被启用或禁用,并且对于所执行的当前操作不需要的子系统可以被禁用以节省功率。
在处理器210被唤醒后,它启用电子标签210中的第一传感器504。第一传感器可以是可用于确定高尔夫球杆110的取向的任何类型的传感器,但在一些实施例中,第一传感器是加速度计232并且可以是3轴加速度计。在各种实施例中,第一传感器可以与处理器210一起集成到soc中,但是在一些实施例中,第一传感器可以由单独的集成电路提供,该单独的集成电路可以使其功率由处理器210的引脚控制。在至少一个实施例中,启用第一传感器504可以包括将处理器210的输出引脚设定为高状态以启用第一传感器232。根据实施例,处理器210的输出引脚可以电连接到第一传感器232的功率输入端以直接向第一传感器232供电,或者输出引脚可以控制开关,该开关控制到第一传感器232的功率。
可以从电子标签120中的第一传感器232获得505信息并且将其用于计算506高尔夫球杆110的第一取向。因此,高尔夫球杆110的第一取向基于来自第一传感器232的信息。在一些实施例中,第一取向可被计算为由第一传感器232进行的多次测量的平均值。高尔夫球杆110的第一取向被评估507以查看其是否在取向的第一预定范围内,该第一预定范围可指示高尔夫球杆110即将使用。非倒转取向的任何范围可用于取向的第一预定范围,但在至少一个实施例中,第一预定范围包括从高尔夫球杆的直立取向到距高尔夫球杆直立取向60°的最大角度的取向。
在一些实施例中,可以在电子标签120处接收用于高尔夫挥杆的上下文。该上下文可以包括高尔夫球杆110的类型、关于高尔夫球手的信息(例如该高尔夫球手的各种挥杆参数)或者甚至专为高尔夫球手定制的取向范围。在一些实施例中,第一预定范围可以基于上下文(诸如高尔夫球杆的类型)选自一组预定范围。在一个非限制性示例中,电子标签120中包括取向的两个预定范围,其中预定范围中的一个预定范围由附接到推杆的电子标签使用,而另一个由附接到除推杆之外的球杆的电子标签使用。
如果第一取向在第一预定范围之外,则高尔夫球杆110的取向可以被保存510以供以后使用,并且可以至少部分地通过从光传感器移除功率来禁用第一唤醒事件511。响应于确定第一取向在第一预定范围之外并且使得513处理器210进入第一低功率状态501,基于第一传感器的运动检测的第二唤醒事件被启用512。等待高尔夫球杆110的进一步移动以确定挥杆是否明显。
·高尔夫球杆返回到球袋
流程图500还包括确定高尔夫球杆110是否已经返回球袋的途径。在处理器210处于断电状态501时高尔夫球杆110的移动可以导致从第一传感器232接收520第二唤醒事件,其将处理器210从第一低功率状态501唤醒521到活动状态。评估522光传感器230的输出,并且如果确定由光传感器230接收的光低于预定水平,指示高尔夫球杆110可能已经放回高尔夫球袋中,则第二唤醒事件可以被禁用523。此外,基于光传感器对光的检测的第一唤醒事件被启用524,并且使得513处理器进入第一低功率状态501。等待高尔夫球杆110再次从袋中取出以由于光传感器230检测到光而引起第一唤醒事件。
·高尔夫球杆无人看管
如果高尔夫球杆110无人看管,但在取向的第一预定范围内(例如,靠墙支撑),则轻微的振动(诸如由路过的人引起的振动)可能导致第二唤醒事件将被接收520以唤醒521处理器210。因为高尔夫球杆110在球袋外部,所以将很可能确定522光照水平高于预定水平,因此将从加速度计获得505信息并计算506高尔夫球杆110的第二取向。如果第二取向在第一预定范围内507,则将第二取向与高尔夫球杆110的保存取向进行比较508。响应于第二取向与保存取向相差509小于预定差,指示高尔夫球杆110没有移动,则高尔夫球杆110的第二取向可以被保存510并且第二唤醒事件重新启用512。各个实施例对于预定差可以使用不同的值,但是许多实施例可以使用0.5°到10°之间的预定差,其中至少一个实施例使用约5°的预定差。虽然第一唤醒事件已经被禁用,但一些实施例还可以简单地经历再次禁用511来自光传感器的第一唤醒事件的过程。然后使得513处理器210进入第一低功率状态501,直到发生高尔夫球杆的下一次移动。
·高尔夫球杆准备好使用
流程图500还包括确定高尔夫球杆110是否准备好供高尔夫球手使用的途径。当处理器210处于断电状态501时高尔夫球杆110的移动可导致从第一传感器232接收520第二唤醒事件,其将处理器从第一低功率状态501唤醒521到活动状态。评估522光传感器230的输出,并且如果确定由光传感器230接收的光高于预定水平,则从电子标签120中的第一传感器232获得505第二信息。基于第二信息计算506高尔夫球杆的第二取向,并且如果第二取向在第一预定范围内507,则将第二取向与高尔夫球杆110的保存取向进行比较508。预定范围可以是取向的任何范围,但是在实施例中,第一预定范围可以是与直立成±90°、±60°或±45°。第一预定范围并不意味着限于高尔夫挥杆实际上可以从其开始的那些取向,而仅仅是指示高尔夫球手可能开始为高尔夫击球做准备的范围。如果第二取向在第一预定范围内507,则将第二取向与高尔夫球杆110的保存取向进行比较508。响应于第二取向与保存取向相差509超过预定差,可以保存540高尔夫球杆110的第二取向(在图5b中)。各种实施例可以使用预定差的不同值,但是许多实施例可以使用0.5°到10°之间的预定差,其中至少一个实施例使用约5°的预定差。另外,可以响应于第二取向与保存取向相差超过预定差而启用541电子标签120中的可以是陀螺仪的第二传感器234。在至少一些实施例中,可以在启用第二传感器234的时段期间增加第一传感器232的采样率,在启用第二传感器234的时间附近增加第一传感器232的采样率,并且在第二传感器234被禁用的时间附近降低第一传感器232的采样率。
·等待高尔夫击球
一旦确定球杆准备好使用,处理器210就等待检测到挥杆。可以在至少第一预定时间长度内接收542来自第一传感器232和第二传感器234的第一数据。第一预定时间长度可以是任何时间长度,但在各种实施例中可以是0.1秒、0.5秒、1.0秒或2秒。然后分析第一数据以确定挥杆是否发生543。如果挥杆没有被识别出544,则可以评估548运动量。如果高尔夫球杆110有某种运动,但不足以构成挥杆,则从第一传感器和第二传感器(例如加速度计和陀螺仪)接收542更多数据以继续寻找挥杆543。如果有非常小的运动,则高尔夫球杆110可能是不活动的,因此第二传感器549可以被禁用并且使得547处理器210进入第二低功率状态560,诸如休眠状态,其中启用周期性唤醒。这可以构成基于第一数据中的至少一些数据确定高尔夫球杆在第一预定时间长度期间没有挥杆,并且作为响应,禁用第二传感器并使处理器进入第二低功率状态。周期性唤醒可以通过任何技术来执行,诸如外部实时时钟、处理器210内部的定时器或任何其它机制。处理器210的第二低功率状态使用比处理器210在活动状态中使用的更少的功率,但比处理器210在第一低功率状态中使用的更多的功率。注意,当处理器210处于第二低功率状态560时,第一传感器232仍被启用并收集数据。
如果挥杆基于第一数据中的至少一些数据被识别544,则禁用545第二传感器234以节省功率并且可以通过无线通信链路将关于高尔夫球杆的挥杆的信息发送546到徽章130。在一些实施例中,徽章130可以分析关于挥杆的信息以确定挥杆是否导致击中高尔夫球并且应该被识别为高尔夫击球,但是在其它实施例中,电子标签120本身可以分析关于挥杆的信息以确定挥杆是否导致击中高尔夫球。如果电子标签120执行分析,则除非发现高尔夫击球,否则它可能不会向徽章发送关于挥杆的信息。在识别到挥杆并且关于挥杆的信息被分析和/或发送546到徽章130之后,可以使处理器210进入第二低功率状态560,其中周期性唤醒被启用。唤醒的周期可以根据实施例而变化,并且可以与第一预定时间长度相同,或者如果第一传感器没有足够大的缓冲器来存放第一预定时间长度的数据,则可以短于第一预定时间长度。因此,在一些实施例中,周期性唤醒的长度可以基于第一传感器中的缓冲器可以存储的数据量以及第一传感器生成数据的速率。
·电子标签的休眠状态循环
在流程图500的块560(图5c)中,处理器210处于第二低功率状态(即休眠状态),其继续周期性地接收561唤醒事件并且将处理器从第二低功率状态560唤醒562到活动状态。如上所述,用于唤醒事件的周期可以基于加速度计232的采样率和缓冲器大小,或者可以由对分析挥杆/击球检测有用的数据量来确定并且可以是任何时间长度,这取决于实施例。一旦处于活动状态,处理器210就可以确立563高尔夫球杆110的状态。确立高尔夫球杆的状态的方法在图6中更详细地示出,但高尔夫球杆的状态可以是“不活动”、“准备好”或“握住但未准备好”。如果确定高尔夫球杆是倒置的、在高尔夫球袋中或没有移动,则高尔夫球杆110可以是不活动的。如果确定由光传感器接收的光在预定时间段内低于预定水平,则高尔夫球杆110也可以是不活动的。
如果高尔夫球杆处于不活动的状态564,则使得565处理器210进入第一低功率状态501。注意,可以将处理器210从第一低功率状态501唤醒的第二唤醒事件仍然被启用,但是通过主动禁用周期性唤醒事件,或者通过周期性唤醒事件不能将处理器210从第一低功率状态501唤醒的事实,此时可以禁用周期性唤醒事件。
如果球杆被握住但未准备好566,即不是不活动且未准备好,则可使得567处理器210回到第二低功率状态560以等待下一个周期性唤醒事件。然而,如果球杆准备好566,则处理器210处于活动状态的挥杆检测过程通过返回到图5b中的流程图500b而开始。
·高尔夫球杆状态确定
图6示出用于确定高尔夫球杆601的状态的方法的实施例的流程图600。流程图600提供了图5c中所示的流程图500的块563的更多细节。为了得到流程图600,电子标签120可能已经在处理器210处接收到来自加速度计232的第一数据和来自陀螺仪234的第二数据。可以已经基于第一数据和/或第二数据中的至少一些数据确定高尔夫球杆110没有挥杆,并且作为响应,陀螺仪234被禁用并且处理器210进入休眠状态。处理器210可以已经被配置为周期性地从休眠状态唤醒到活动状态,然后它将执行流程图600中描述的方法以确立高尔夫球杆110的状态。
流程图600确定光传感器是否在预定时间段期间检测到光602。如果由光传感器接收的光在第一预定时间内低于预定水平,该第一预定时间可以是任何时间量但取决于实施例可以是约2秒、约8秒、约15秒或约30秒,则高尔夫球杆不活动610并且可以进入需要检测光以便被唤醒的第一低功率状态。如果由光传感器检测到光602,则可以打开(如果被禁用)加速度计232,并且从加速度计232获得603信息然后可以用来计算604高尔夫球杆110的取向。该取向可以与先前存储的取向一起使用以确定高尔夫球杆110在第一预定时间段内的活动/取向。如果高尔夫球杆110已经倒置605第一预定时间,则高尔夫球杆110不活动610并且可以进入断电状态。因此,可以通过从第一传感器232获得第二数据、基于第二数据计算高尔夫球杆110在第二预定时间长度内的取向范围并确定取向的范围在与直立成90°到270°的范围内,来确定高尔夫球杆110不活动。根据实施例,第二预定时间长度可以与第一预定时间段相同或者可以更短或更长,但是在一些实施例中可以在0.5秒到8秒的范围内。
一旦确定高尔夫球杆110没有倒转,运动的指示被计算606。运动的计算可以使用任何传感器数据来完成,但是可以使用取向的变化、加速度(线性和/或角度)的变化的检测、接收光量的变化或通过任何其它技术来完成。如果在预定时间段内有大量的球杆移动,该预定时间段可以是任何时间量,但在各种实施例中可以是0.5秒、2秒或8秒,则高尔夫球杆110不活动610并且可以进入第一低功率状态。解释为大量移动的移动量可以取决于实施例而变化,但可以对应于将高尔夫球杆110携带到球袋外侧的典型移动。
如果高尔夫球杆110没有移动太多,则通过从第一传感器232获得第二数据、基于第二数据计算高尔夫球杆110的当前取向并确定当前取向在第二预定范围内,来检查612高尔夫球杆的取向以查看其是否在第二取向范围内。取向的第二预定范围与用高尔夫球杆110瞄准高尔夫球一致并且可以基于高尔夫球杆110的类型选自一组预定范围。因此,一个范围可以用于推杆而另一范围用于其它球杆,不同的范围用于不同组的球杆(例如用于推杆、铁杆和木杆的不同范围),或者不同的范围用于每个球杆。在其它实施例中,第二预定范围可以基于其它上下文,诸如高尔夫球手的身高、技巧或挥杆特性,或者甚至基于高尔夫球手的个人偏好来选择。在至少一个实施例中,第二预定范围具有与直立成4°至8°之间的下限和与直立成40°至60°之间的上限。如果当前取向在第二预定范围之外,则高尔夫球杆110可具有握住但未准备好620(即,非不活动且未准备好)的状态并且可使处理器210回到休眠状态。
然后可以再次检查614高尔夫球杆的移动。如果移动量很大,则高尔夫球手可能仍在为击球做准备,指示高尔夫球杆110可具有握住但未准备好620(即,未激活且未准备好)的状态,并且可使处理器210回到休眠状态。如果高尔夫球杆110在第一预定时间内没有移动,则高尔夫球杆110可以是不活动的610。但是如果存在某种移动,但是小于预定量的移动,则高尔夫球杆110可以具有准备好630的状态并且挥杆检测可以开始。可以通过从加速度计232获得加速度数据并在第二预定时间长度内计算加速度数据的至少一个统计测量结果来检查移动。统计测量结果可以是任何类型的统计计算,但可以是平均加速度或取向范围。如果至少一个统计测量结果小于预定量,则可以确定低运动。
挥杆检测可通过启用陀螺仪234、在处理器210处接收来自加速度计232的第二数据和来自陀螺仪234的第三数据以及基于第一数据和/或第二数据中的至少一些数据来识别高尔夫球杆110的挥杆来完成。可以通过无线通信链路220从电子标签120发送关于高尔夫球杆110的挥杆的信息,该信息可以包括在挥杆中是否检测到高尔夫击球。
·高尔夫击球检测
在高尔夫球杆110的挥杆期间收集的来自电子标签120中的各种传感器230、232、234的数据可用于确定挥杆是否导致高尔夫击球。当高尔夫挥杆击中高尔夫球时产生高尔夫击球。图7示出在高尔夫球杆110的挥杆710、720期间电子标签120的实施例中的示例传感器数据700。x轴表示时间,其中网格标记间隔2秒。y轴表示信号的幅度,并且虽然由各种传感器收集的数据具有适当的单位,但可以忽略特定单位,并且每个信号内的相对幅度用于分析。传感器数据700包括来自陀螺仪234的三组传感器数据,绕x轴的角加速度702用实线示出,绕y轴的角加速度704用虚线示出,以及绕z轴的角加速度706用点划线示出。各种实施例可包括任何数量的传感器数据流,诸如来自加速度计232的x轴线性加速度、y轴线性加速度和z轴加速度、来自磁力计的一个或更多个数据流、来自光传感器的数据或来自包括在电子标签120中的任何其它传感器的数据。
当从传感器230、232、234收集传感器数据700时,它可以被累积到缓冲器中使得可以对其进行分析。在一个实施例中,缓冲器保存在第一预定时间量内累积的数据,并且当缓冲器已满时,数据被分析并且然后被丢弃以允许重新填充缓冲器。实施例可以具有单个缓冲器或多个缓冲器以允许缓冲器之间的所谓乒乓(ping-ponging),其中一个缓冲器被分析而另一个缓冲器被填充。在另一实施例中,缓冲器被视为循环缓冲器,其保存在第一预定时间量或更长时间内累积的数据。对累积数据的分析可以基于在第一预定时间段内累积的数据,但是可以比图7中所示的分析更频繁地进行分析。当缓冲器继续累积数据时,可以分析来自第一时间段712的数据。附加时间段可以被分析为数据的滑动窗口,使得来自时间段712的数据具有与时间段714共享的其数据的一半,并且时间段714与时间段716共享其数据的另一半。
传感器数据700表示在第一次挥杆710和第二次挥杆720期间收集的数据的示例。第一次挥杆710没有导致高尔夫击球;这可能是练习挥杆。第二次挥杆720表示可以通过数据702、706中的倾角708看到的高尔夫击球。
可以使用任何技术来分析传感器数据700,但是在实施例中,可以使用在电子标签120中运行的人工神经网络(ann)来确定是否发生了高尔夫击球。虽然执行击球检测的ann可以在电子标签120中实现,但基于在电子标签120之外执行的训练数据来配置ann。来自表示高尔夫击球或没有击球的挥杆的数以千计的高尔夫挥杆的数据被收集并手动标记为挥杆是否为高尔夫击球以及其它信息,诸如所使用的球杆类型、高尔夫球手的技能水平或与挥杆相关的其它上下文数据。然后从训练数据中提取特征。特征可以是基于特定时间范围内的一个或更多个传感器输出的任何类型的计算。特征的示例包括一个传感器输出流(例如绕x轴的角加速度)的统计量度(例如最小值、最大值、平均值、标准偏差等)、传感器输出流的组合的统计量度(例如,大小或3d线性加速度矢量或高尔夫球杆的取向)或某个其它计算,诸如可以使用傅立叶变换或其它计算来计算的参数。在一个实施例中,针对3个线性加速度数据流和3个角加速度数据中的每一个以及针对线性加速度3d大小和角加速度3d大小计算样本之间的增量(delta)的最小值、最大值、范围、平均值、标准偏差、均方根(rms)值和平均绝对值,总共54个特征。特征从训练数据中提取的,用于训练数据上的滑动窗口。评估了各种窗口和时间步长,并且发现具有100毫秒步长的2秒时间的窗口是有效的。
图8示出用于电子标签120中的人工神经网络(ann)800的实施例的图示。ann可以具有任何数量的层,其中示例ann800具有用于接收输入的输入层810、用于生成指示击球是否已经发生的输出的输出层850以及三个隐藏层820、830、840。发现具有至少两个隐藏层的多层感知器ann是有效的。在一些实施例中,可以使用具有20个、5个和5个神经元或19个、7个和3个神经元的三个隐藏层的多层感知器ann。图8示出的多层感知器ann800具有54个输入神经元层810、由19个神经元组成的第一隐藏层820、由7个神经元组成的第二隐藏层830、由3个神经元组成的第三隐藏层以及具有单个神经元的输出层。所示神经元之间的连接是说明性的,并且可以不表示任何实际实施例,因为来自一层的任何和所有神经元的输出可能会或可能不会用作下一层中每个神经元的输入。给予每个连接的实际连接和权重取决于特定训练的ann的配置。
使用随机梯度下降的机器学习实现用于使用训练数据配置目标ann中每个感知器(即,神经元,这些术语在本文中可互换使用)的偏差和权重。反向传播用于优化随机梯度下降。此外,在训练期间从提取的54个特征中选择特征以减小输入层的大小。来自推杆击球的训练数据用于训练第一ann检测推杆,并且来自其它球杆(例如铁杆和木杆)的挥杆的训练数据用于训练第二ann检测高尔夫击球。训练的输出是两个ann,每个ann具有用作输入的特定一组特征,并基于针对前一级每个感知器的权重和来自前一级的偏差(b)具有每个感知器的函数。例如,ann800的输出感知器将实现以下函数:
ann输出=∑(w300p30+w310p31+w320p32+b3)
其中,wlnm是权重,并且pln是第l层中感知器n的感知器输出(其中输入层是第0层),并且m是第l+1层中要使用加权的感知器。请注意,输出层只有一个感知器,即感知器0。因此,具有19个、7个和3个感知器的隐藏层并使用54个特征中的20个特征的ann将具有20x19+19x7+3x1个权重和4个偏差,总共540个参数来配置ann。
一旦完成训练,就生成供电子标签120使用的ann。在一些实施例中,生成代码,该代码直接实现具有权重、偏差和硬编码到实现中的感知器的特定配置的训练ann。在其它实施例中,生成用于特定ann配置(例如{20,5,5}或{19,7,3}个隐藏层)的代码,然后访问存储由训练生成的参数的表。用于训练的ann的代码/数据然后作为数据和/或计算机代码214存储在电子标签120的存储器212中。代码/数据可以在制造时存储在电子标签120中,或者在电子标签120被部署到高尔夫球手之后通过在无线接口220上经由徽章130提供更新,作为对电子标签120的更新。
图9示出用于通过附接到高尔夫球杆110的电子标签120检测高尔夫击球的方法的实施例的流程图900。高尔夫球杆的挥杆开始901,并且在处理器210处从至少一个传感器232、234接收920数据。处理器210和至少一个传感器232、234位于电子标签120内。在实施例中,该至少一个传感器包括加速度计232和陀螺仪234,并且数据包括对应于特定时间来自加速度计232的多个参数和来自陀螺仪234的多个参数,诸如来自加速度计232的时间相关的x轴线性加速度、y轴线性加速度、z轴加速度样本,以及来自陀螺仪234的时间相关的绕x轴的角加速度、绕y轴的角加速度和绕z轴的角加速度样本。注意,来自加速度计232的样本和来自陀螺仪234的样本可具有不同的采样率,并且可能彼此时间相关或可能彼此时间不相关,尽管它们来自同一时间段。因此,数据可以包括在一时间段内周期性获得的多个样本,其中多个样本中的一个样本包括由至少一个传感器232、234提供的多个参数。
流程图900继续从数据中提取922多个特征。多个特征可以包括跨越多个样本取得的多个参数中的单个参数的统计量度,诸如但不限于最小值、最大值、范围、平均值、标准偏差、均方根(rms)值或样本之间增量的平均绝对值。多个特征还可以包括跨越多个样本取得的多个参数中的两个或更多个参数的函数的统计量度,诸如但不限于3d线性加速度的大小或3d角加速度的大小的上述统计量度之一。
在一些实施例中,可以接收910高尔夫挥杆的上下文。当电子标签120被附接到特定高尔夫球杆110时,可以在配置电子标签120时接收该上下文,或者可以在一轮或一洞开始时提供上下文,或者可以在高尔夫球杆110挥动时提供上下文。上下文可以包括高尔夫球杆110的类型、与电子标签120相关联的球员的技能水平、与电子标签120相关联的球员的身体属性、从电子标签120到高尔夫球洞的距离或其任何组合。因此,该方法可以包括响应于用户对电子标签的注册,在电子标签120处接收910附接到电子标签120的高尔夫球杆110的类型的指示,并且将高尔夫球杆110的类型存储在电子标签120中以用于在用于高尔夫击球的检测的第一组函数和用于高尔夫击球的检测的第二组函数之间进行选择,其中第一组函数和第二组函数二者都存储在电子标签120中。
在一些实施例中,一组标准特征被提取922(即被计算)以供由存储在标签的存储器212中的计算机代码214实现的ann使用,并用于确定高尔夫击球是否已经发生,但在其它实施例中,提取的特征922可以取决于高尔夫挥杆的上下文。因此在实施例中,电子标签120可以基于高尔夫挥杆的上下文在第一组特征和第二组特征之间进行选择912以确定一组选定特征,其中多个特征由一组选定特征组成。特征的选择可以从已经提取922的特征中发生,或者选择可以在提取特征之前发生,使得仅提取将使用的特征。此外,电子标签120可以基于高尔夫挥杆的上下文在第一人工神经网络(ann)和第二ann之间进行选择912以确定选定ann。第一ann和第二ann二者都可以存储在电子标签120内。在至少一个实施例中,如果所使用的高尔夫球杆的类型是推杆,则选择第一组特征和/或第一ann,但是如果高尔夫球杆的类型不是推杆,则选择第二组特征和/或第二ann。第一ann可以包括用于与多层感知器人工神经网络一起使用的第一组权重和/或可以被配置为接收第一组特征作为输入,并且第二ann可以包括用于与多层感知器人工神经网络一起使用的第二组权重和/或被配置为接收不同于第一组特征的第二组特征作为输入。另外,第一ann可以包括具有第一配置的第一多层感知器人工神经网络,并且第二ann可以包括具有不同于第一配置的第二配置的第二多层感知器人工神经网络。
流程图900继续使用多个特征作为输入来执行924神经网络分析以确定高尔夫击球是否已经发生。神经网络分析由电子标签120中的处理器210执行。多层感知器人工神经网络可用于执行神经网络分析,其中多层感知器人工神经网络包括两个或更多个隐藏层。在一些实施例中,多层感知器人工神经网络的至少一个隐藏层的感知器利用线性激活函数。
ann的输出可以用于确定击球是否已经发生930。如果击球已经发生,则通过无线通信接口220发送932指示高尔夫击球已经发生并且击球检测完成942的消息。如果没有检测到击球,则可以评估高尔夫球杆110的运动以查看挥杆是否完成940。如果高尔夫挥杆仍在进行中,则从传感器接收920更多数据并且采用ann执行另一分析。
由于ann的附加开发或改进/增加的训练数据,电子标签120中的一个或更多个ann可以在电子标签120的寿命期间得到改进或更新。在一些实施例中,可以更新电子标签120中的ann以提供改进的性能。因此在一些实施例中,第一ann包括存储在电子标签中的第一组指令并且第二ann包括存储在电子标签中的第二组指令。可以在电子标签处接收第三组指令作为对第一ann的更新。第三组指令可以通过无线接口220从徽章130接收,或者第三组指令可以从另一个实体接收,诸如使用无线接口220或另一个有线或无线接口的智能电话或个人计算机。电子标签120中的第一组指令然后可以用第三组指令替换而不改变用于更新第一ann的第二组指令。在其它实施例中,可以提供用于第一ann的一组新参数替换用于更新第一ann的一组新指令。
除非另有说明,在说明书和权利要求中使用的所有表达元素数量、光学性质等的数字应理解为在所有情况下都被术语“约”修饰。因此,除非有相反的指示,在前述说明书和所附权利要求中阐述的数值参数是近似值,其可以根据本领域技术人员利用本公开的各种原理寻求获得的期望性质而变化。至少,而不是试图将等同原则的应用限制在权利要求的范围内,每个数值参数至少应根据报告的有效数字的数量并通过应用普通的舍入技术来解释。尽管阐述本公开的广泛范围的数值范围和参数是近似值,但在具体实施例中阐述的数值尽可能精确地报告。然而,任何数值都固有地包含某些误差,这些误差由在它们相应的测试测量中发现的标准偏差必然产生。端点对数值范围的引用包括包含在该范围内的所有数字(例如,1到5包括1、e、2.0、2.78、π、
在以下段落中描述了各种实施例的示例:
实施例1.一种用于附接到高尔夫球杆的电子标签中的功率管理的方法,该方法包括:从电子标签中的光传感器接收第一唤醒事件,该第一唤醒事件基于光传感器对光的检测;响应于第一唤醒事件,将位于电子标签内部的处理器从第一低功率状态唤醒到活动状态;启用电子标签中的第一传感器;由处理器从电子标签中的第一传感器获得第一信息;基于来自第一传感器的第一信息计算高尔夫球杆的第一取向;并确定高尔夫球杆的第一取向在第一预定范围之外,并且作为响应,基于第一传感器对运动的检测启用第二唤醒事件,并使处理器进入第一低功率状态。
实施例2.根据实施例1所述的方法,所述第一低功率状态包括处理器的断电状态。
实施例3.根据实施例1-2所述的方法,进一步包括至少部分地通过从光传感器移除功率来禁用第一唤醒事件。
实施例4.根据实施例1-3所述的方法,第一传感器包括加速度计。
实施例5.根据实施例1-4所述的方法,第一预定范围基于高尔夫球杆的类型选自一组预定范围。
实施例6.根据实施例1-5所述的方法,第一预定范围包括从高尔夫球杆的直立取向到与高尔夫球杆的直立取向成60°的最大角度的取向。
实施例7.根据实施例1-6所述的方法,进一步包括从第一传感器接收第二唤醒事件,响应于第二唤醒事件将处理器从第一低功率状态唤醒到活动状态;并且确定由光传感器接收的光低于预定水平,并且作为响应,基于光传感器对光的检测启用第一唤醒事件并使处理器进入第一低功率状态。
实施例8.根据实施例7所述的方法,进一步包括响应于确定由光传感器接收的光低于预定水平,至少部分地通过从第一传感器移除功率来禁用第二唤醒事件;以及响应于确定高尔夫球杆的取向在第一预定范围之外而向第一传感器提供功率,其中,在处理器处于第一低功率状态时向第一传感器提供所述功率。
实施例9.根据实施例7-8所述的方法,进一步包括响应于由第一唤醒事件唤醒,至少部分地通过从光传感器移除功率来禁用第一唤醒事件;以及响应于确定由光传感器接收的光低于预定水平而向光传感器提供功率,其中,在处理器处于第一低功率状态时向光传感器提供所述功率。
实施例10.根据实施例1-9所述的方法,进一步包括:从第一传感器接收第二唤醒事件;响应于第二唤醒事件将处理器从第一低功率状态唤醒到活动状态;从电子标签中的第一传感器获得第二信息;基于第二信息计算高尔夫球杆的第二取向;确定高尔夫球杆的第二取向在第一预定范围内;将高尔夫球杆的第二取向与高尔夫球杆的保存取向进行比较;响应于第二取向与保存取向相差小于预定差,启用第二唤醒事件并使处理器进入第一低功率状态;以及响应于第二取向与保存取向相差超过预定差,启用电子标签中的第二传感器。
实施例11.根据实施例10所述的方法,进一步包括在获得第二信息之前确定由光传感器接收的光高于预定水平。
实施例12.根据实施例10-11所述的方法,进一步包括在所述比较之后将高尔夫球杆的第二取向保存为高尔夫球杆的保存取向。
实施例13.根据实施例10-12所述的方法,预定差在0.5°到10°之间。
实施例14.根据实施例10-12所述的方法,预定差约为5°。
实施例15.根据实施例10-14所述的方法,第二传感器包括陀螺仪。
实施例16.根据实施例10-15所述的方法,进一步包括:从第一传感器和第二传感器接收第一数据;基于第一数据中的至少一些数据识别高尔夫球杆的挥杆;禁用第二传感器;通过无线通信链路发送有关高尔夫球杆的挥杆的信息;以及使处理器进入第二低功率状态。
实施例17.根据实施例16所述的方法,进一步包括在启用第二传感器的时段期间增加第一传感器的采样率。
实施例18.根据实施例16-17所述的方法,进一步包括:周期性地将处理器从第二低功率状态唤醒到活动状态;由处理器在从低功率状态唤醒之后,确立高尔夫球杆的状态;响应于确立高尔夫球杆具有不活动状态,使处理器进入第一低功率状态;响应于确立高尔夫球杆具有准备就绪状态,在处理器处于活动状态时开始挥杆检测过程;以及响应于确立高尔夫球杆不具有不活动状态并且不具有准备就绪状态,使处理器回到第二低功率状态。
实施例19.根据实施例10-18所述的方法,进一步包括:在至少第一预定时间长度内从第一传感器和第二传感器接收第一数据;基于第一数据中的至少一些第一数据确定高尔夫球杆在第一预定时间长度期间没有挥杆;并且作为响应,禁用第二传感器并使处理器进入第二低功率状态;周期性地将处理器从第二低功率状态唤醒到活动状态;由处理器在从低功率状态唤醒之后,确立高尔夫球杆的状态;响应于确立高尔夫球杆具有不活动状态,使处理器进入第一低功率状态;响应于确立高尔夫球杆具有准备就绪状态,在处理器处于活动状态时开始挥杆检测过程;以及响应于确立高尔夫球杆不具有不活动状态并且不具有准备就绪状态,使处理器回到第二低功率状态。
实施例20.根据实施例19所述的方法,第二低功率状态包括处理器的休眠状态。
实施例21.根据实施例19-20所述的方法,确立高尔夫球杆具有不活动状态包括确定高尔夫球杆在高尔夫球袋中或没有移动。
实施例22.根据实施例19-21所述的方法,确立高尔夫球杆具有不活动状态包括确定由光传感器接收的光在第二预定时间长度内低于预定水平。
实施例23.根据实施例19-22所述的方法,确立高尔夫球杆具有不活动状态包括:从第一传感器获得第二数据、基于第二数据在第二预定时间长度内计算高尔夫球杆的取向范围、确定取向范围小于预定量。
实施例24.根据实施例19-23所述的方法,确立高尔夫球杆具有不活动状态包括:从第一传感器获得加速度数据、在第二预定时间长度内计算加速度数据的至少一个统计测量结果、确定至少一个统计测量结果小于预定量。
实施例25.根据实施例19-24所述的方法,确立高尔夫球杆具有不活动状态包括:从第一传感器获得第二数据、基于第二数据在第二预定时间长度内计算高尔夫球杆的取向范围、确定取向范围在与直立成90°到270°的范围内。
实施例26.根据实施例19-25所述的方法,确立高尔夫球杆具有准备就绪状态包括:从第一传感器获得第二数据、基于第二数据计算高尔夫球杆的当前取向、基于第二数据计算高尔夫球杆的移动指示、确定当前取向在第二预定范围内并且移动指示小于预定量。
实施例27.根据实施例26所述的方法,第二预定范围基于高尔夫球杆的类型选自一组预定范围。
实施例28.根据实施例26-27所述的方法,第二预定范围具有与直立成4°到8°之间的下限和与直立成40°到60°之间的上限。
实施例29.根据实施例26-28所述的方法,计算高尔夫球杆的移动指示包括基于第二数据计算在以当前时间结束的第三预定时间长度内高尔夫球杆的取向范围。
实施例30.根据实施例26-29所述的方法,计算高尔夫球杆的移动指示包括:在第三预定时间长度内计算加速度数据的至少一个统计测量结果,其中,第一传感器包括加速度计并且第二数据包括加速度数据,确定至少一个统计测量结果小于预定量。
实施例31.一种用于附接到高尔夫球杆的电子标签中的功率管理的方法,该方法包括:在处理器处接收来自加速度计的第一数据和来自陀螺仪的第二数据,该处理器、加速度计和陀螺仪位于电子标签内;基于第一数据和/或第二数据中的至少一些数据确定高尔夫球杆没有挥杆;并且作为响应,禁用陀螺仪并使处理器进入休眠状态;周期性地将处理器从休眠状态唤醒到活动状态;在从低功率状态唤醒之后,由处理器确立高尔夫球杆的状态;响应于高尔夫球杆具有不活动状态,使处理器进入断电状态;并响应于高尔夫球杆不具有不活动状态并且不具有准备就绪状态,使处理器回到休眠状态。
实施例32.根据实施例31所述的方法,进一步包括结合陀螺仪的禁用降低加速度计的采样率。
实施例33.根据实施例31-32所述的方法,确立高尔夫球杆具有不活动状态包括确定以下中的至少一项:由光传感器接收的光在第一预定时间内低于预定水平、高尔夫球杆在第一预定时间内没有移动或高尔夫球杆在第一预定时间内被倒置。
实施例34.根据实施例31-33所述的方法,确立高尔夫球杆具有准备就绪状态包括确定高尔夫球杆的当前取向与用高尔夫球杆瞄准高尔夫球一致,并且高尔夫球杆的移动量小于预定量。
实施例35.根据实施例31-34所述的方法,进一步包括:响应于高尔夫球杆具有准备就绪状态而启用陀螺仪,在处理器处接收来自加速度计的第二数据和来自陀螺仪的第三数据,基于第一数据和/或第二数据中的至少一些数据来识别高尔夫球杆的挥杆,以及通过无线通信链路从电子标签发送有关高尔夫球杆的挥杆的信息。
实施例36.根据实施例35所述的方法,进一步包括结合陀螺仪的启用来增加加速度计的采样率。
实施例37.一种制品,包括在其中存储指令的一个或更多个非暂态计算机可读设备,指令在由处理器执行时,导致任一前述实施例的方法的执行。
实施例38.一种适于附接到高尔夫球杆的电子标签,该电子标签包括:处理器,该处理器具有支持多个唤醒源的至少第一低功率状态;耦合到该处理器的光传感器;以及耦合到处理器的第一传感器,处理器被编程为:响应于基于光传感器对光的检测从光传感器接收第一唤醒事件,从第一低功率状态唤醒进入活动状态,启用第一传感器,从第一传感器获得第一信息,基于第一信息计算电子标签附接到的高尔夫球杆的第一取向,确定高尔夫球杆的第一取向在第一预定范围之外,并且作为响应,基于第一传感器对运动的检测启用第二唤醒事件并进入第一低功率状态。
实施例39.根据实施例38所述的电子标签,第一传感器包括加速度计。
实施例40.根据实施例38-39所述的电子标签,处理器进一步被编程为将处理器的第一输出引脚设定为高状态以使光传感器能够提供第一唤醒事件,处理器的第一输出引脚电连接到光传感器的功率输入。
实施例41.根据实施例38-40所述的电子标签,处理器进一步被编程为将处理器的第二输出引脚设定为高状态以启用第一传感器,处理器的第二输出引脚电连接到第一传感器的功率输入。
实施例42.根据实施例38-41所述的电子标签,所述第一低功率状态包括断电状态。
实施例43.根据实施例38-42所述的电子标签,处理器进一步被编程为:响应于从第一传感器接收第二唤醒事件,从第一低功率状态唤醒到活动状态,以及确定由光传感器接收的光低于预定水平,并且作为响应,基于光传感器对光的检测启用第一唤醒事件并进入第一低功率状态。
实施例44.根据实施例43所述的电子标签,处理器的第一输出端电耦合到光传感器的功率输入端,处理器进一步被编程为:响应于确定高尔夫球杆的取向在第一预定范围之外,将第一输出端设定为低电压电平,以及
响应于确定由光传感器接收的光低于预定水平,将第一输出端设定为适合向光传感器供电的电压电平,其中,当处于第一低功率状态时,第一输出端的电压电平由处理器保持。
实施例45.根据实施例43-44所述的电子标签,处理器的第二输出端电耦合到第一传感器的功率输入端,处理器进一步被编程为:响应于确定由光传感器接收的光低于预定水平,将第二输出端设定为低电压电平,以及响应于确定高尔夫球杆的取向在第一预定范围之外,将第二输出端设定为适合向第一传感器供电的电压电平,其中,当处于第一低功率状态时,由处理器保持第二输出的电压电平。
实施例46.根据实施例38-45所述的电子标签,该电子标签进一步包括第二传感器,该处理器进一步被编程为:响应于从第一传感器接收第二唤醒事件,从第一低功率状态唤醒到活动状态,从第一传感器获得第二信息,基于第二信息计算高尔夫球杆的第二取向,确定高尔夫球杆的第二取向在第一预定范围内,将高尔夫球杆的第二取向与高尔夫球杆的保存取向进行比较,响应于第二取向与保存取向相差小于预定差,启用第二唤醒事件并进入第一低功率状态,以及响应于第二取向与保存取向相差超过预定差,启用第二传感器。
实施例47.根据实施例46所述的电子标签,第二传感器包括陀螺仪。
实施例48.根据实施例46-47所述的电子标签,处理器具有第二低功率状态,第二低功率状态是比第一低功率状态更高的功率状态,处理器进一步被编程为:接收来自第一传感器的第一数据和来自第二传感器的第二数据,基于第一数据中的至少一些数据和/或第二数据中的至少一些数据确定高尔夫球杆没有挥杆,并且作为响应,禁用第二传感器并进入第二低功率状态,周期性地从第二低功率状态唤醒到活动状态以确立高尔夫球杆的状态,响应于高尔夫球杆具有不活动状态而进入第一低功率状态,响应于高尔夫球杆具有准备就绪状态,开始挥杆检测过程,以及响应于高尔夫球杆不具有不活动状态并且不具有准备就绪状态,重新进入第二低功率状态。
实施例49.根据实施例46-48所述的电子标签,电子标签进一步包括无线通信接口,处理器具有第二低功率状态,该第二低功率状态是比第一低功率状态更高的功率状态,处理器进一步被编程为接收来自第一传感器的第一数据和来自第二传感器的第二数据,基于第一数据中的至少一些数据和/或第二数据中的至少一些数据识别高尔夫球杆的挥杆,禁用第二传感器,通过无线通信链路发送关于高尔夫球杆的挥杆的信息,以及进入第二低功率状态。
实施例50.根据实施例49所述的电子标签,处理器进一步被编程为:周期性地从第二低功率状态唤醒到活动状态以确立高尔夫球杆的状态,响应于高尔夫球杆具有不活动状态而进入第一低功率状态,响应于高尔夫球杆具有准备就绪状态,开始挥杆检测过程,以及响应于高尔夫球杆不具有不活动状态并且不具有准备就绪状态,再次进入第二低功率状态。
实施例51.一种通过附接到高尔夫球杆的电子标签检测高尔夫击球的方法,该方法包括:在处理器处从至少一个传感器接收数据,该处理器和至少一个传感器位于电子标签内;从数据中提取多个特征;由处理器使用多个特征作为输入来执行神经网络分析以确定高尔夫击球是否已经发生;以及通过无线通信接口发送指示高尔夫击球已经发生的消息。
实施例52.根据实施例51所述的方法,该至少一个传感器包括加速度计和陀螺仪,并且数据包括对应于特定时间的来自加速度计的多个参数和来自陀螺仪的多个参数。
实施例53.根据实施例51-52所述的方法,数据包括在一时间段内周期性获得的多个样本,多个样本中的一个样本包括由至少一个传感器提供的多个参数。
实施例54.根据实施例53所述的方法,多个特征包括:跨越多个样本取得的多个参数中的单个参数的统计量度。
实施例55.根据实施例53-54所述的方法,多个特征包括:跨越多个样本取得的多个参数中的两个或更多个参数的函数的统计量度。
实施例56.根据实施例51-55所述的方法,进一步包括:基于高尔夫挥杆的上下文在第一组特征和第二组特征之间进行选择以确定选定一组特征,其中,多个特征包括选定一组特征。
实施例57.根据实施例56所述的方法,高尔夫挥杆的上下文包括高尔夫球杆的类型、与电子标签相关联的球员的技能水平、与电子标签相关联的球员的身体属性、从电子标签到高尔夫球洞的距离或其任何组合。
实施例58.根据实施例56-57所述的方法,高尔夫挥杆的上下文包括高尔夫球杆的类型,该方法进一步包括:响应于确定高尔夫球杆的类型是推杆而选择第一组特征,以及响应于确定高尔夫球杆的类型不是推杆而选择第二组特征。
实施例59.根据实施例51-58所述的方法,进一步包括使用多层感知器人工神经网络来执行神经网络分析。
实施例60.根据实施例59-59所述的方法,多层感知器人工神经网络包括两个或更多个隐藏层。
实施例61.根据实施例59-60所述的方法,多层感知器人工神经网络的至少一个隐藏层的感知器利用线性激活函数。
实施例62.根据实施例51-61所述的方法,进一步包括:基于高尔夫挥杆的上下文在第一人工神经网络(ann)和第二ann之间进行选择以确定选定ann,其中,神经网络分析利用选定ann。
实施例63.根据实施例62所述的方法,高尔夫挥杆的上下文包括高尔夫球杆的类型、与电子标签相关联的球员的技能水平、与电子标签相关联的球员的身体属性、从电子标签到高尔夫球洞的距离或其任何组合。
实施例64.根据实施例62-63所述的方法,高尔夫挥杆的上下文包括高尔夫球杆的类型,该方法进一步包括:响应于确定高尔夫球杆的类型是推杆而选择第一ann,以及响应于确定高尔夫球杆的类型不是推杆而选择第二ann。
实施例65.根据实施例62-64所述的方法,第一ann和第二ann二者都存储在电子标签内。
实施例66.根据实施例62-65所述的方法,第一ann包括与多层感知器人工神经网络一起使用的第一组权重,并且第二ann包括与多层感知器人工神经网络一起使用的第二组权重。
实施例67.根据实施例62-66所述的方法,第一ann包括具有第一配置的第一多层感知器人工神经网络,并且第二ann包括具有不同于第一配置的第二配置的第二多层感知器人工神经网络。
实施例68.根据实施例62-67所述的方法,第一ann被配置为接收第一组特征作为输入,并且第二ann被配置为接收不同于第一组特征的第二组特征作为输入。
实施例69.根据实施例62-68所述的方法,第一ann包括存储在电子标签中的第一组指令,而第二ann包括存储在电子标签中的第二组指令,该方法进一步包括:在电子标签处接收第三组指令作为对第一ann的更新,以及用第三组指令替换电子标签中的第一组指令而不改变第二组指令。
实施例70.根据实施例51-69所述的方法,进一步包括:响应于用户对电子标签的注册,在电子标签处接收附接到电子标签的高尔夫球杆类型的指示;以及将高尔夫球杆的类型存储在电子标签中以用于在用于高尔夫击球的检测的第一组函数和用于高尔夫击球的检测的第二组函数之间进行选择,其中,第一组函数和第二组函数二者都存储在电子标签中。
实施例71.一种制品,包括在其中存储指令的一个或更多个非暂态计算机可读设备,该指令在由处理器执行时,导致实施例51至70中任一项所述的方法的执行。
实施例72.一种适于附接到高尔夫球杆的电子标签,该电子标签包括:处理器;传感器,其耦合到处理器;无线通信接口,其耦合到处理器;存储器设备,其耦合到处理器并存储由处理器可执行的指令,该指令对处理器进行编程以执行实施例51至70中任一项所述的方法。
在本说明书和所附权利要求书中使用的单数形式“一(a)”、“一(an)”和“该”包括复数所指对象,除非内容另有明确规定。此外,在本说明书和所附权利要求书中使用的术语“或”通常以其包括“和/或”的含义使用,除非内容另有明确规定。如本文所用,术语“耦合”包括直接和间接连接。此外,在第一和第二设备耦合的情况下,包括有源设备的中间设备可以位于其间。
以上提供的各种实施例的描述本质上是说明性的而并不旨在限制本公开、其应用或使用。因此,超出本文描述的那些变型的不同变型旨在落入实施例的范围内。此类变型不应被视为偏离本公开的预期范围。因此,本公开的广度和范围不应受上述示例性实施例的限制,而应仅根据所附权利要求及其等同物来限定。