掌桥专利:专业的专利平台
掌桥专利
首页

辅助健身的方法和电子装置

文献发布时间:2023-06-19 09:36:59


辅助健身的方法和电子装置

本申请是2019年8月30日递交的,申请号为201910817978.X的申请的分案申请。

技术领域

本申请涉及人工智能(artificial intelligence,AI)领域,具体涉及图像处理领域,尤其涉及一种辅助健身的方法及装置。

背景技术

健身需要专业的指导,否则不仅难以达到锻炼效果,还可能会产生较严重的运动损伤。专业的教练指导价格较高,难以满足广大健身爱好者的需求。通过图像识别用户的健身动作,根据健身动作的关键指标评价用户的完成质量,并指出错误动作和改进方式,可以为用户提供指导,让用户可以科学的运动。

用户在健身的过程中,可能进行其他与健身无关的动作,对于这些动作进行评价,计算量较大,且用户体验较差。将用户的动作模板与标准模板比对,通过相似度或差异度判断用户是否进行健身动作,判断结果的准确性较低。

发明内容

本申请提供一种辅助健身的方法及电子装置,能够准确识别健身动作,提高用户体验。

第一方面,提供一种辅助健身的方法,包括:电子设备获取用户动作;所述电子设备从所述用户动作中确定所述用户动作中第一肢体的运动轨迹满足第一预设条件的备选动作;所述电子设备确定第二肢体在所述备选动作中的动作变化幅度;所述电子设备根据所述动作变化幅度,确定输出指导信息。

通过确定肢体动作轨迹满足第一预设条件的备选动作,根据备选动作中的肢体动作变化幅度,可以准确确定指导信息的输出,能够提高用户体验。

结合第一方面,在一些可能的实现方式中,所述方法还包括:所述电子设备获取输入信息;所述电子设备根据所述输入信息确定所述第一预设条件。

通过获取的输入信息,确定第一预设条件,减小计算量,提高输出的指导信息的准确定。

结合第一方面,在一些可能的实现方式中,所述电子设备确定与第一位置信息对应的第一评价信息,所述第一位置信息包括第二肢体的动作变化幅度、所述第二肢体的动作起始位置、所述第二肢体的动作终止位置、所述第二肢体的运动轨迹中的至少一种,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述运动轨迹确定的;所述电子设备根据所述第一评价信息,输出指导信息。

通过第一肢体的位置信息与评价信息的对应关系,确定与用户动作视频中的用户的第一肢体的第一位置信息对应的第一评价信息,从而为用户的健身动作提供指导。在仅有第一肢体的位置信息的情况下,能为用户动作提供指导,提高适用性。

结合第一方面,在一些可能的实现方式中,所述方法还包括::所述电子设备确定与所述用户的第二位置信息对应的第二评价信息,所述第二位置信息包括第三肢体的动作变化幅度、所述第三肢体的动作起始位置、所述第三肢体的动作终止位置、所述第三肢体的运动轨迹中的至少一种,所述第三肢体的动作起始位置和所述第三肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的;所述电子设备根据所述第一评价信息,输出指导信息,包括:所述电子设备根据所述第二评价信息和所述第一评价信息,输出所述指导信息。

用户动作中还包括第二肢体时,可以根据第二肢体的位置信息与评价信息的对应关系,确定与用户动作视频中的用户的第二肢体的第二位置信息对应的第二评价信息,从而为用户的健身动作提供更为全面、详细的指导。

结合第一方面,在一些可能的实现方式中,识别所述用户动作中的关节点,以确定所述用户动作中的所述第一肢体和所述第二肢体。

通过识别骨骼节点确定第一肢体,能够减小计算量。

结合第一方面,在一些可能的实现方式中,所述方法还包括:所述电子设备获取输入信息,所述输入信息用于指示所述健身动作;所述电子设备确定与所述健身动作对应的所述第一肢体。

通过指示健身动作的输入信息,确定第一肢体,可以减小计算量。

结合第一方面,在一些可能的实现方式中,所述电子设备根据所述动作变化幅度,确定输出指导信息,包括:所述电子设备根据所述动作变化幅度和所述第二肢体的在所述备选动作中的动作起始位置,确定输出所述指导信息;或者,所述电子设备根据所述动作变化幅度和所述第二肢体的在所述备选动作中的动作终止位置,确定输出所述指导信息;或者,所述电子设备根据所述动作变化幅度、所述第二肢体的在所述备选动作中的动作起始位置和动作终止位置,确定输出所述指导信息,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的。

通过所述动作变化幅度,以及第二肢体的在所述备选动作中的动作起始位置、动作终止位置中的一个或多个,确定输出所述指导信息,即通过第二肢体更多的位置信息对用户动作进行判断,提高健身动作识别的准确性,能够输出更加准确的指导信息,提高用户体验。

第二方面,提供一种辅助健身的装置,包括:获取模块,用于获取用户动作;确定模块,用于从所述用户动作中确定所述用户动作中第一肢体的运动轨迹满足第一预设条件的备选动作;所述确定模块还用于,确定第二肢体在所述备选动作中的动作变化幅度;所述确定模块还用于,根据所述动作变化幅度,确定输出指导信息。

结合第二方面,所述装置还包括判断模块,用于判断所述动作变化幅度满足第二预设条件;所述确定模块用于,确定输出指导信息。

结合第二方面,在一些可能的实现方式中,所述获取模块还用于,获取输入信息;所述确定模块还用于,确定所述输入信息对应的所述第一预设条件。

结合第二方面,在一些可能的实现方式中,所述确定模块还用于,确定与第一位置信息对应的第一评价信息,所述第一位置信息包括第二肢体的动作变化幅度、所述第二肢体的动作起始位置、所述第二肢体的动作终止位置、所述第二肢体的运动轨迹中的至少一种,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体动作的运动轨迹确定的;所述装置还包括输出模块,用于根据所述第一评价信息,输出指导信息。

结合第二方面,在一些可能的实现方式中,所述确定模块还用于,确定与所述用户的第二位置信息对应的第二评价信息,所述第二位置信息包括第三肢体的动作变化幅度、所述第三肢体的动作起始位置、所述第三肢体的动作终止位置、所述第三肢体的运动轨迹中的至少一种,所述第三肢体的动作起始位置和所述第三肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的;输出模块还用于,根据所述第二评价信息和所述第一评价信息,输出所述指导信息。

结合第二方面,在一些可能的实现方式中,所述装置还包括识别模块,用于识别所述用户动作中的关节点,以确定所述用户动作中的所述第一肢体和所述第二肢体。

结合第二方面,在一些可能的实现方式中,所述确定模块还用于,根据所述动作变化幅度,以及所述第二肢体的在所述备选动作中的动作起始位置,确定输出所述指导信息,或者,根据所述动作变化幅度和所述第二肢体的在所述备选动作中的动作终止位置,确定输出所述指导信息;或者,根据所述动作变化幅度、所述第二肢体的在所述备选动作中的动作起始位置和动作终止位置,确定输出所述指导信息,所述第二肢体的动作起始位置和动作终止位置是根据所述运动轨迹确定的。

第三方面,提供一种辅助健身的装置,包括处理器,通信接口。通信接口用于,获取用户动作;处理器用于:从所述用户动作中确定所述用户动作中第一肢体的运动轨迹满足第一预设条件的备选动作;确定第二肢体在所述备选动作中的动作变化幅度;根据所述动作变化幅度,确定输出指导信息。

结合第三方面,在一些可能的实现方式中,处理器用于:判断所述动作变化幅度满足第二预设条件;确定输出指导信息。

结合第三方面,在一些可能的实现方式中,通信接口还用于,获取输入信息;处理器还用于,确定所述输入信息对应的所述第一预设条件。

结合第三方面,在一些可能的实现方式中,处理器用于:确定与第一位置信息对应的第一评价信息,所述第一位置信息包括第一肢体的动作变化幅度、所述第一肢体的动作起始位置、所述第一肢体的动作终止位置、所述第一肢体的运动轨迹中的至少一种,所述第一肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的;根据所述第一评价信息,确定所述指导信息。

结合第三方面,在一些可能的实现方式中,处理器用于:所述电子设备确定与所述用户的第二位置信息对应的第二评价信息,所述第二位置信息包括第三肢体的动作变化幅度、所述第三肢体的动作起始位置、所述第三肢体的动作终止位置、所述第三肢体的运动轨迹中的至少一种,所述第三肢体的动作起始位置和所述第三肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的;根据所述第二评价信息和所述第一评价信息,确定所述指导信息。

结合第三方面,在一些可能的实现方式中,处理器还用于:识别所述用户动作中的关节点,以确定所述用户动作中的所述第一肢体和所述第二肢体。

结合第三方面,在一些可能的实现方式中,处理器还用于:根据所述动作变化幅度,以及所述第二肢体的在所述备选动作中的动作起始位置,确定输出所述指导信息;或者,所述电子设备根据所述动作变化幅度和所述第二肢体的在所述备选动作中的动作终止位置,确定输出所述指导信息;或者,所述电子设备根据所述动作变化幅度、所述第二肢体的在所述备选动作中的动作起始位置和动作终止位置,确定输出所述指导信息,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的。

第四方面,提供一种计算机存储介质,当所述计算机指令在电子设备上运行时,使得所述电子设备执行第一方面所述的方法。

第五方面,提供一种芯片系统,所述芯片系统包括至少一个处理器,当程序指令在所述至少一个处理器中执行时,使得所述芯片系统执行第一方面所述的方法。

附图说明

图1是一种电子设备的硬件结构示意图。

图2是一种电子设备的软件结构示意图。

图3是本申请一个实施例提供的一种辅助健身的方法的示意性流程图。

图4是本申请另一个实施例提供的一种辅助健身的方法的示意性流程图。

图5是本申请一个实施例提供的一种辅助健身的用户界面示意图。

图6是本申请另一个实施例提供的一种辅助健身的用户界面示意图。

图7是本申请又一个实施例提供的一种辅助健身的方法的示意性流程图。

图8是深蹲运动的示意图。

图9是本申请一个实施例提供的一种电子装置的示意性结构图。

图10是本申请另一个实施例提供的一种电子装置的示意性结构图。

具体实施方式

下面将结合附图,对本申请中的技术方案进行描述。

健身爱好者群体逐渐增大,而健身需要专业的指导,否则不仅难以达到锻炼效果,还可能会产生较严重的运动损伤。而专业的私教不仅数量少,价格也较高,难以满足所有健身爱好者的需求。

通过图像识别用户的健身动作,可以记录用户完成动作的次数,也可以根据健身动作的关键指标评价用户的完成质量,并指出错误动作和改进方式,可以为用户提供科学的指导。通过采集的用户健身动作的图像,可以采集用户的身体的关节点的信息,根据用户的关节点信息和标准动作的关节点信息,对用户的姿态与标准动作的姿态进行对比,从而确定用户的动作与标准动作之间的差异,为用户提供反馈和指导。

在健身的过程中,用户可能进行一些与健身无关的动作,如拿东西、接电话、走动等。在用户未进行健身动作时,将这些无关的动作视为不标准的健身动作,提供评价和指导,会导致较差的用户体验。

当用户的动作与标准动作的相似度低于预设值时,可以不进行用户动作的评价和指导。

对于不同的动作,身体不同部位对于动作完成的程度影响不同。可以对不同的身体部位设置不同的权重,仅对于该动作有关的身体部位的姿态进行评价。举例来说,对于深蹲动作,最重要的评价指标有三个,分别是小腿角度,大腿角度和躯干角度,其他肢体的角度几乎不影响深蹲动作的准确性。将其他肢体的姿态对动作完成程度的影响的权重设为0,只有小腿、大腿、躯干的权重大于0。其他肢体的姿态与标准动作之间的差异不会影响对深蹲动作的评价,可以避免其他肢体的动作与标准动作差异较大导致相似度过低,从而能够触发正确的评价和指导。

但是实际中,健身初学者的动作可能非常不标准,尤其对于需要身体不同部位配合的复杂动作,初学者进行的动作可能无法达到相似度要求,以至于被判断为无关动作,无法提供有效的指导,用户体验较差。

仍然以深蹲为例,当用户的动作很不标准时,如躯干过度前倾,小腿过度前倾,此时整体的相似度仍然较低,可能低于预设的阈值,以至于被判断为无关动作,不会触发评价和指导。

因此,针对健身场景,通过静态地比较用户动作的姿态与标准动作的姿态的相似度,无法准确识别用户是否进行健身动作。

用户动作可以是一个时间段内的连续动作。用户动作与标准动作比较时,是将某一个时间点或时间段内的用户动作与静态的标准动作进行比较。为了进行用户动作的姿态与标准动作的姿态的相似度的比较,通常可以需要采用动态时间调整(dynamic timewarping,DTW)技术,确定时间窗口,将时间窗口内的用户动作与标准动作进行比较。理想情况,确定用户动作的起始时间和结束时间,将其分别作为时间窗口的起点和终点,将时间窗口内的用户动作与标准动作进行比较。实际中,不同用户不同动作的持续时间不同,用户动作的起始时间和结束时间很难准确的确定,即时间窗口难以确定。若窗口过大则计算开销较大,且计算得到的相似度较低,窗口过小则可能无法识别用户是否进行健身动作。同时,该方法比较用户动作的姿态与标准动作的姿态的相似度,无法准确识别用户是否进行健身动作。

为了解决上述问题,本申请提供了一种辅助健身的方法,能够识别用户是否进行健身动作。该方法可以在电子设备中执行。

示例性的,图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。

可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

例如,本申请实施例中的电子设备可以包括处理器110,音频模块170,扬声器170A,无线通信模块160中的蓝牙模块通信,显示屏194、摄像头193,内部存储器121等。

处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,神经网络处理器(neural-network processing unit,NPU)等中的至少一种。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。

其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。

处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。

在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,通用串行总线(universal serial bus,USB)接口等中的至少一种。

I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。

I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。

PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。

UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。

MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。

GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。

USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。

可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。

充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。

电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。

电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。

天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。

移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。

调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。

无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。

在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,IR技术等中的至少一种。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS),星基增强系统(satellite based augmentation systems,SBAS)。

电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。

显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。

电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。

ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。

摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。

例如,在本申请提供的辅助健身的方法中,摄像头可以采集用户动作视频。感光元件把采集到的光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP,做相关的图像加工处理。

数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。

视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。

NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。

外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。

内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。

电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。

音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。

扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。

受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。

麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。

耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。

压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。

陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。

气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。

磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。

加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。

距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。

接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。

环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。

指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。

温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。

触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。

骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。

按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。

马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。

指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。

SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。

电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。

图2是本申请实施例的电子设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。应用程序层可以包括一系列应用程序包。

如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。

应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。

例如,在本申请中,处理图像的算法等都可以包括在应用程序框架层。

如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。

窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。

内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。

例如,在本申请中,内容控制器可以实时获取预览界面中采集到的图像,并将处理之后的图像显示在预览界面中。

视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。

例如,在本申请中,显示器界面上显示的“用户动作视频”、“标准的健身动作”、“指导信息”等内容,可以由视图系统接收处理器的指示进行显示。

电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。

资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。

通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。

Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。

核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。

应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。

系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。

表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。

媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。

三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。

2D图形引擎是2D绘图的绘图引擎。

内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。

为了便于理解,本申请以下实施例将以具有图1和图2所示结构的电子设备为例,结合附图和应用场景,对本申请实施例提供的辅助健身的方法进行具体阐述。

本申请实施例提供的辅助健身的方法可以应用于电视机、手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等电子设备上,本申请实施例对电子设备的具体类型不作任何限制。

图3是本申请实施例提供的一种辅助健身的方法的示意性流程图。

在步骤S301,电子设备获取用户动作。

该用户动作可以是摄像头采集的实时视频中的用户动作。也可以说,电子设备可以获取摄像头采集的用户动作。电子设备获取的包含用户动作的视频可以称为用户动作视频。

在步骤S302或步骤S303之前,用户可以从动作评价指标集合中的至少一个健身动作中选择一个特定的健身动作。后续的步骤中,均根据该特定的健身动作对用户动作中进行处理。动作评价指标集合可以是根据专业知识确定的。即电子设备可以获取输入信息,作数输入信息用于指示健身动作。

在步骤S302,电子设备识别用户动作中的用户骨骼节点。

电子设备可以识别用户动作中每一帧图像中的用户骨骼节点,也可以在用户动作中间隔固定或不固定的多帧图像中识别用户骨骼节点。用户的骨骼节点可以用于表示用户的肢体。

用户骨骼节点可以包括图像中的用户的身体上的所有骨骼节点。或者用户骨骼节点可以包括与动作评价指标集合中的特定的健身动作的第一标准节点对应的第一关键节点、与第二标准节点对应的第二关键节点、与第三标准节点对应的第三关键节点、与第四标准节点对应的第四关键节点中的一种或多种。第一关键节点、第二关键节点、第三关键节点、第四关键节点均为图像中的用户的身体上的骨骼节点。

在步骤S303,电子设备匹配第一关键节点的轨迹。

根据动作评价指标集合,匹配用户骨骼节点中的第一关键节点的轨迹。

在步骤S303之前,电子设备还可以确定用户动作的水平方向、竖直方向中的至少一个方向。根据水平方向或竖直方向,可以确定用户的肢体的位置、位置的变化、运动轨迹等的方向。可以利用电子设备中的陀螺仪传感器等装置,在用户动作采集的过程中确定用户动作的水平方向、竖直方向。对于不经常移动的电子设备如电视机、台式计算机等,可以为采集的图像设置默认的水平方向、竖直方向。可以根据默认的水平方向、竖直方向中的至少一个方向,确定用户动作的水平方向、竖直方向。

对于特定的健身动作,专家可以通过专业知识,确定至少一个第一标准节点以及在健身动作中该至少一个第一标准节点中的每个节点的运动轨迹,并将该第一标准节点的运动轨迹保存在动作评价指标集合中。动作评价指标集合包括至少一个健身动作与至少一个第一标准节点的运动轨迹的对应关系。第一标准节点的运动轨迹是特定的健身动作标准的动作中的人体的骨骼节点的运动轨迹。人体的骨骼节点包括第一标准节点。第一标准节点可以理解为用户的肢体的节点。

第一关键节点是用户动作中与第一标准节点对应的骨骼节点,或者说,第一关键节点是用户动作中与第一标准节点相同部位的骨骼节点。

在一些实施例中,电子设备可以将第一关键节点的运动轨迹与第一标准节点的运动轨迹进行对比。如果第一标准节点的运动轨迹的相似度大于相似度预设值,则匹配失败,认为用户未进行健身动作,进行步骤S301,重新获取用户动作。如果第一标准节点的运动轨迹的相似度小于或等于相似度预设值,则匹配成功。

在另一些实施例中,电子设备可以判断第一关键节点的运动轨迹是否符合预设特征,即第一关键节点的运动轨迹是否具有预设特征。预设特征也可以理解为预设条件。电子设备可以从用户动作中确定符合第一标准节点对应的肢体的预设运动轨迹特征的备选动作。

预设特征可以是以是运动轨迹的形状、运动轨迹的周期性等,例如可以是周期性位置变化规律。预设的第一标准节点的周期性位置变化规律也可以理解为第一标准节点的周期性位置变化规律。

根据第一标准节点的位置变化的周期性,电子设备可以确定备选动作。不同的健身动作,可以对应于相同或不同的备选动作的选取规则。根据备选动作的选取规则,电子设备可以将第一关键节点的运动轨迹对应第一关键节点一个周期的一段视频图像作为备选动作,即确定了备选动作中的用户的备选动作。或者,电子设备也可以将第一关键节点的运动轨迹中第一关键节点位于某一点或某一范围对应的用户动作中的一段视频图像作为备选动作。

动作评价指标集合可以包括预设特征,预设特征用于指示第一标准节点的位置变化的方式。第一标准节点的位置变化的方式可以是第一标准节点的运动方向,如向上或向下运动,或者上下往复运动过程的全部或向上的运动等。第一标准节点的位置变化的方式也可以是运动轨迹的形状,如运动轨迹为三角形、圆形、弧形、折线形等形状,或者该第一标准节点完成的完整形状中的部分,如第一标准节点轨迹为三角形,当第一标准节点位于某一条边的运动。。

确定的备选动作例如可以是第一关键节点在上下往复运动过程中,向上运动的一段对应的用户动作,或者第一关键节点运动轨迹为三角形,第一关键节点在三角形的某一条边运动时对应的一段用户动作。

确定备选动作之后,进行步骤S304。在步骤S304-S307,电子设备对备选动作中进行处理。

例如,深蹲动作,第一标准节点可以是臀部节点。电子设备可以在用户动作中识别每帧图像中的用户的臀部节点作为第一关键节点。在进行深蹲运动时,臀部节点的高度呈现周期性的起伏。电子设备可以将第一关键节点的运动轨迹与第一标准节点的运动轨迹进行匹配,确定臀部节点上下运动的周期起止点,将周期起止点之间的一段视频作为备选动作,或者将一个周期内臀部节点向上运动或向下运动的一段视频作为备选动作。即,预设的运动轨迹特征可以是臀部节点上下运动的一个周期的运动,也可以是臀部节点上下运动的一个周期中臀部节点向上运动。

对于一个特定的健身运动,触发条件为第一关键节点的运动轨迹与第一标准节点的运动轨迹匹配成功。满足触发条件时,进行步骤S304。

在步骤S304,电子设备判断用户进行健身动作。

电子设备可以通过识别条件,确定用户动作中的用户动作是否为特定的健身动作。识别条件即预设的条件。

对确定的备选动作进行处理。判断备选动作中的用户的备选动作是否满足动作评价指标集合中的特定动作的识别条件。当备选动作满足识别条件时,确定备选动作为用户进行的特定动作。当备选动作不满足识别条件时,确定备选动作为用户不是进行的特定动作。

识别条件包括与第二标准节点对应的第二关键节点满足的条件。第二标准节点可以包括第一标准节点的全部或部分节点,第二标准节点也可以包括其他骨骼节点。识别条件可以包括第二标准节点的位置变化信息。第二标准节点的位置变化信息可以包括第二标准节点在视频中的位置变化范围。第二标准节点的位置变化信息也可以第二标准节点之间的相对位置变化的范围。

第二标准节点的位置变化信息可以用于指示肢体的动作变化范围。肢体的动作变化范围可以包括肢体角度变化的变化范围,也可以包括肢体之间相对位置的变化范围。肢体角度变化的变化范围,可以理解为用户动作中,肢体与水平方向或竖直方向之间夹角的最大值和最小值之间的区间范围。肢体之间相对位置的变化范围,可以理解为肢体之间的距离最大值和最小值之间的区间范围。两个肢体之间的距离,可以根据肢体的长度等确定,例如,两个肢体之间的距离为其中某个肢体的长度的倍数或比例。

识别条件可以是根据专业知识确定的。第二关键节点是用户动作中与第二标准节点对应的骨骼节点,或者说,第二关键节点是用户动作中与第二标准节点相同部位的骨骼节点。

例如,对于深蹲运动,在臀部节点的高度从波峰到波谷的过程中,大腿角度从竖直逐渐向水平方向变化。深蹲运动的识别条件可以包括大腿角度变化满足第一预设范围。第二标准节点可以包括臀部节点和大腿两端点的节点(即膝盖节点和臀部节点),根据备选动作中的大腿两端点的节点可以确定的大腿角度。也就是说,备选动作中的大腿角度变化满足第一预设范围时,认为用户进行深蹲运动。

参见图8,判断用户进行深蹲运动。图8的(a)中,用户站立,图8的(b)中,用户下蹲至最低位置。深蹲运动过程中,用户的臀部节点A上下运动,大腿与水平方向夹角大小变化,即大腿角度发生变化。通过大腿角度的变化反应大腿的动作变化。

对于深蹲运动,动作评价指标集合中的预设特征可以是臀部节点A进行上下运动过程中向下的运动。根据该预设特征,可以确定用户动作中的备选动作。

对于深蹲运动,动作评价指标集合中的识别条件可以包括大腿角度的幅度的范围。

电子设备可以判断备选动作中大腿角度的幅度,是否满足识别条件,以确定是否输出指导信息。

动作评价指标集合可以包括大腿角度的最大值对应的运动轨迹的位置,以及大腿角度的最小值对应的运动轨迹的位置。或者,动作评价指标集合可以包括大腿动作的起始动作位置对应的臀部节点在运动轨迹中的位置,或者,动作评价指标集合可以包括大腿动作的动作终止位置对应的臀部节点在运动轨迹中的位置。通过臀部节点A的运动轨迹,可以确定备选动作的第一帧图像中大腿位置为大腿的动作起始位置,备选动作的最后一帧图像中大腿位置为大腿的动作终止位置。

通过臀部节点A和膝盖节点B,电子设备可以确定大腿角度。在用户动作进行过程中,电子设备确定大腿的动作变化是否满足预设动作变化范围的最大值和最小值要求。也就是说,电子设备确定大腿的动作变化的范围,该范围的最大值满足预设动作变化范围的最大值的要求,且该范围的最小值满足预设动作变化范围的最小值的要求。

最大值要求可以是一个区间,即电子设备判断大腿的动作变化的范围的最大值在预设动作变化范围最大值的区间内。最小值要求也可以是一个区间,电子设备判断大腿的动作变化的范围的最小值在预设动作变化范围最小值的区间内。

图中用虚线表示预设动作变化范围的最小值范围对应的大腿动作的方向的范围,以及预设动作变化范围的最大值范围对应的大腿动作的方向的范围。当用户动作中,当大腿与地面的角度最小时,大腿的方向在最小值范围对应的大腿动作的方向的范围内,且当大腿与地面的角度最大时,大腿的方向在最大值范围对应的大腿动作的方向的范围内,电子设备可以确定用户进行深蹲动作。

图中的用户,大腿的动作变化的最大值在预设动作变化范围的最大值范围内,大腿的动作变化的最小值在预设动作变化范围的最小值范围内,即该用户的大腿的动作变化满足预设动作变化范围的最大值要求和最小值要求。如果没有其他的识别条件,可以确定图中的用户在进行深蹲动作。

深蹲运动的识别条件还可以包括臀部节点相对脚踝节点的相对距离的变化范围。第二标准节点可以包括臀部节点、膝盖节点和脚踝节点。臀部节点和膝盖节点之间的距离,以及膝盖节点和脚踝节点之间的距离,确定臀部节点相对脚踝节点的相对距离的变化范围。臀部节点相对脚踝节点的相对距离可以通过臀部节点相对脚踝节点之间的距离除以臀部节点和膝盖节点之间的距离与膝盖节点和脚踝节点之间的距离之和,即可以通过臀部节点相对脚踝节点之间的距离与腿长之间的比值表示臀部节点相对脚踝节点的相对距离。用户动作中该比值的最小值与最大值之间的区间范围,即为臀部节点相对脚踝节点的相对距离的变化范围。

如果判断结果是用户进行健身动作,则进行步骤S305;否则,进行步骤S301,重新获取用户动作。

当确定用户进行健身动作时,对于不同的健身动作,可以设计不同的指导体系,从而评价健身动作的标准程度。每个动作的指导体系可以包括核心指标和次要指标。核心指标用于确定用户动作的基础评分和指导,次要指标用于修正评分并提供综合指导。

在步骤S305,电子设备根据核心指标进行评分和评价。

动作评价指标集合包括核心指标。核心指标可以包括对某些肢体的位置信息的评价标准。肢体通过骨骼节点表示。即核心指标可以包括对第三标准节点的评价标准。根据核心指标,获取用户动作中的第三标准节点对应的评分和评价。

肢体的位置信息,可以包括肢体的动作变化范围、肢体的动作变化范围的极限值、肢体的运动轨迹中等的一种或多种。肢体的动作变化范围的极限值即肢体的动作变化范围的最大值或最小值。

核心指标可以包括肢体的动作变化范围与评价信息的对应关系,也可以包括肢体的动作变化范围的极限值与评价信息的对应关系,还可以包括肢体的运动轨迹与评价信息的对应关系。

根据核心指标进行评分和评价,可以对备选视频中与第三标准节点对应的第三关键节点之间的相对位置、位置变化情况等进行评分和评价。第三关键节点是用户动作中与第三标准节点对应的骨骼节点,或者说,第三关键节点是用户动作中与第三标准节点相同部位的骨骼节点。

核心指标可以包括多种第三标准节点的位置信息与多种评分和/或评价之间的对应关系。核心指标也可以包括多种第三标准节点的位置信息与多种分数增加或减少量的对应关系,和/或,核心指标可以包括多种第三标准节点的位置信息与多种评价之间的对应关系。根据第三标准节点的位置信息可以在预设分数的基础上增加或减少,确定评分。评价也可以理解为指导建议。

第三标准节点的位置信息可以包括第三标准节点之间的相对位置和/或每个第三标准节点位置变化情况。第三标准节点可以包括第一标准节点中的全部或部分节点,第三标准节点可以包括第二标准节点中的全部或部分节点,第三标准节点还可以包括其他骨骼节点。第三标准节点可以是第一标准节点和第二标准节点中的部分节点。

电子设备可以根据第一关键节点的运动轨迹,在备选动作或用户动作中确定一帧或多帧图像。电子设备可以根据第三关键节点的运动轨迹,在备选动作或用户动作中确定一帧或多帧图像。电子设备可以根据该一帧或多帧图像中第三关键节点之间的相对位置,获取对应的评分或评价。电子设备可以根据健身动作确定该一帧或多帧图像的选取方式。第三关键节点之间的相对位置,可以反映用户肢体的位置,如该肢体的角度、肢体间的距离等。

电子设备可以根据第三关键节点的运动轨迹,获取与第三关键节点的运动轨迹对应的评分和/或评价。

电子设备可以在备选动作或用户动作中,确定第三关键节点位置的变化范围。可以获取与第三关键节点位置的变化范围或变化范围的极限值对应的评分和/或评价。

例如,对于深蹲运动,核心指标可以包括大腿角度范围的最小值与评分之间的对应关系,以及大腿角度范围与评价之间的对应关系。当大腿与地面角度的最小值小于75度时,认为用户完成了一个深蹲动作,当角度为0度时,认为该指标达到最好的完成度。大腿与地面即水平方向角度的最小值小于75度,可以分为若干个区间(如小于0度、0-25度(不含25度)、25-50度(不含50度)、50-75度(不含75度)四个区间),每个区间对应于不同的评分,每个区间对应于相同或不同的评价。当根据第三关键节点确定的大腿与地面角度为某一数值,确定该数值所属的范围,确定对应的评分和评价,从而为用户提供相应的指导(如根据第三关键节点确定的大腿与地面角度的最小值为32度,所属的区间为25-50度,该区间对应的评分为80分,该范围对应的评价为蹲的再深一点)。

在步骤S306,电子设备根据次要指标进行评分和评价。

动作评价指标集合包括次要指标。次要指标可以包括第四标准节点的评价标准。根据次要指标进行评分和评价,电子设备可以对备选视频中第四关键节点之间的相对位置、位置变化情况等进行评分和评价。第四关键节点是用户动作中与第四标准节点对应的骨骼节点,或者说,第四关键节点是用户动作中与第四标准节点相同部位的骨骼节点。

次要指标可以包括第四标准节点的位置信息与评分减少量和/或评价之间的对应关系。也可以理解为,次要指标包括第四标准节点对应的肢体的位置信息与评分减少量和/或评价之间的对应关系。当用户动作不满足次要指标的阈值时,可以降低通过核心指标计算出的评分,并可以确定相应的指导。

第四标准节点的位置信息可以包括第四标准节点之间的相对位置和/或每个第四标准节点位置变化情况。第四标准节点可以包括第三标准节点中的全部或部分节点,第四关键节点还可以包括第三标准节点之外的其他骨骼节点。位置变化情况例如可以是位置变化的幅度、范围、运动轨迹等。

例如,对于深蹲运动,次要指标可以包括小腿角度范围与评分之间的对应关系,以及小腿角度范围与评价之间的对应关系。第四标准节点可以包括膝盖节点与脚踝节点。根据膝盖节点与脚踝节点之间的相对位置,电子设备可以确定小腿角度。次要指标还可以包括躯干角度范围与评分之间的对应关系,以及躯干角度范围与评价之间的对应关系等。次要指标可以包括小腿与地面夹角大于50度。当备选动作不满足次要指标时,可以为用户提供相应的评价进行指导,如提醒用户小腿不要过度前倾。

对于不同的健身动作,评价的指标可以完全不同,每个肢体动作在不同的健身动作中的影响也不同(如深蹲中手臂动作通常无关紧要,而哑铃弯举动作中手臂动作是核心,下肢动作反而不重要)。如果对每个肢体的动作都进行判断、评价和指导,则会向用户输送过多的无用信息,影响用户体验。通过步骤S305-S306,能够确定对应于特定健身运动的评价,为用户提供有效指导。

在步骤S307,电子设备反馈评分和评价。

电子设备可以输出反馈信息,反馈信息包括步骤S306确定的评分以及步骤S305-S306确定的评价,从而将评分和评价反馈给用户。例如,可以通过在屏幕上弹出文字、播放提示语音等方式,反馈评分和评价。

当用户的使用场景不适合公放语音播报时,电子设备可以将语音通过蓝牙耳机播放评分和/或评价,或者,通过屏幕显示评分和/或评价。公放即通过扬声器播放。

例如,通过图像识别,确定用户动作中包括多个人,电子设备可以通过屏幕显示评分和/或评价。

在确定不通过扬声器播放评分和/或评价时,电子设备可以进行图像识别,确定进行健身动作的用户是否佩戴蓝牙耳机。当确定用户佩戴蓝牙耳机,且蓝牙耳机与辅助健身装置通过蓝牙连接时,通过蓝牙耳机播放评分和/或评价。

电子设备也可以获取反馈方式指示信息,所述反馈方式指示信息用于指示进行反馈的方式,即输出评分和/或评价的方式。

电子设备可以根据第一关键节点的运动轨迹,对用户的健身动作进行计数,记录用户完成健身动作的数量。电子设备可以在运动评价指标集合中保存第一标准节点的周期数量与健身动作数量的对应关系。

例如,第一关键节点的运动轨迹的一个周期,对应于用户完成一个健身动作。对于不同的健身动作,也可以是第一关键节点的运动轨迹的多个周期对应于用户完成一个健身动作,或第一关键节点的运动轨迹的一个周期对应于用户完成一个健身动作。

电子设备也可以根据第二关键节点或第三关键节点的运动轨迹,对用户的健身动作进行计数。

根据步骤S301-S304,电子设备可以确定多个备选动作。根据备选动作的数量,电子设备可以确定用户完成健身动作的次数。可以将完成健身动作的次数反馈给用户。

通过最核心的动作评判规则,即识别条件,确定用户进行的是特定的健身动作。当用户的动作满足识别条件时,即使其他部位很不标准,也认为用户在尝试学习该健身动作,只是动作不标准。而如果用户的动作不满足识别条件,即使肢体与该健身动作的标准动作相似度很高,也不是健身动作,避免了健身动作的误识别问题。因此,本申请实施例能够准确识别用户动作是否为健身动作。即使用户的动作不标准,通过本申请实施例提供的方法,能够确定用户进行健身动作。

通过第一关键节点运动轨迹与第一标准节点运动轨迹的匹配,可以确定用户进行健身动作的起止时间,从而能够度该起止时间内的用户动作进行判断。判断用户是否进行健身动作并对用户的动作进行评分,即通过特定健身动作的最低完成指标即识别条件判断用户是否进行健身动作。将不满足该识别条件的动作过滤掉,即对于用户的非健身动作不进行评分和评价,仅对满足该识别条件的动作进行评分和评价,对于该动作为用户提供指导。

由于环境限制,可能存在部分肢体超出屏幕的情况,即用户动作可能不包括用户的一些骨骼节点。

在步骤S303之前,电子设备可以确定第一关键节点是否包括全部的第一标准节点,第二关键节点是否包括全部的第二标准节点。

若第一关键节点包含第一标准节点中的所有节点,且第二关键节点包含第二标准节点中的所有节点,进行步骤S303。

若第一关键节点不包含第一标准节点中的任一个节点,或第二关键节点不包含第二标准节点中的任一个节点,进行步骤S301,重新获取用户动作。这种情况下,电子设备可以输出第一提示信息,第一提示信息用于提示用户调整用户动作采集的用户的身体的范围。

第一提示信息可以用于提醒用户调整与摄像头之间的相对位置。第一提示信息还可以包括第一关键节点不包含的第一标准节点和/或第二关键节点不包含第二标准节点的信息,或者,第一提示信息还可以包括全部第一标准节点和第二标准节点的信息,以提醒用户调整与摄像头之间的相对位置,以使得用户动作包括第一标准节点和第二标准节点中的全部节点,第一标准节点和第二标准节点不超出用户动作采集的范围。

在步骤S305之前,电子设备可以确定备选动作中是否存在第三标准节点,即第三关键节点是否包含全部的第三标准节点。

在一些实施例中,若备选动作中不存在第三标准节点中的任何一个节点,可以进行步骤S301,重新获取用户动作。若备选动作中存在第三标准节点中的所有节点,进行步骤S305。如果第三标准节点是第一标准节点和第二标准接节点中的全部或部分节点,在确定第一关键节点包括全部的第一标准节点,第二关键节点包括全部的第二标准节点时,电子设备就可以确定备选动作中存在第三标准节点中的所有节点。

在另一些实施例中,若不存在第三标准节点中的任何一个节点,电子设备可以确定备选动作的评分为最低评分。若存在第三标准节点中的全部或部分节点,可以进行步骤S305。

对于备选动作中不存在的第三标准节点,可以在确定评分时考虑该节点的影响,即扣除该节点对应的评分。可以不再确定不存在的第三标准节点对应的评价。

若不存在第三标准节点中的全部或部分节点,可以输出第二提示信息,第二提示信息用于提示用户调整用户动作采集的用户的身体的范围。也就是说,第二提示信息用于提醒用户调整与摄像头之间的相对位置。第二提示信息可以包括第三关键节点不包括的第三标准节点的信息,以提醒用户调整与摄像头之间的相对位置,使得用户动作包括第三标准节点中的全部节点,第三关键节点与第三标准节点一一对应,第三标准节点对应的身体部位不超出用户动作采集的空间范围。

在步骤S306之前,电子设备可以确定备选动作中是否存在第四标准节点。若不存在第四关键节点中的任何一个节点,可以确定备选动作的评分为最低评分。若存在第四关键节点中的全部或部分节点,可以进行步骤S306。对于不存在第四关键节点中部分节点的情况,可以适当降低总评分。电子设备可以根据动作评价指标集合中不存在的第四关键节点中部分节点对应的评分减少量,降低通过核心指标计算出的评分。

若不存在第四关键节点中的全部或部分节点,电子设备可以输出第三提示信息,第三提示信息用于提示用户调整用户动作采集的用户的身体范围。也就是说,第三提示信息用于提醒用户调整与摄像头之间的相对位置。第三提示信息可以包括第四关键节点不包括的第四标准节点的信息,以提醒用户调整与摄像头之间的相对位置,使得用户动作包括第四标准节点中的全部节点,第四标准节点不超出用户动作采集的范围。

对于备选动作中不存在的第四标准节点,即第四关键节点不包含的第四标准节点,电子设备可以在确定评分时考虑该节点的影响,即扣除该节点对应的评分。电子设备可以不再确定不存在的第四标准节点对应的评价。

电子设备可以输出第四提示信息,第四提示信息用于提醒用户反馈信息不完整,未对对所有标准节点进行评价。未进行评价的标准节点可以是第三标准节点或第四标准节点。也就是说,在能够识别用户进行健身动作的情况下,确定第四关键节点信息中缺少部分第四标准节点时,电子设备可以对用户进行提醒。

通过上述方式,提供了用户部分肢体不在用户动作内时的容错机制。对于基于图像的健身辅助场景,尤其是在家庭中的使用场景,由于空间有限,以及图像获取设备通常位置和角度是固定的,导致用户在做健身动作的过程中,部分肢体可能在屏幕外无法识别(比如距离较近,脚踝在屏幕外看不到)。当部分肢体由于环境限制导致超出用户动作范围,即屏幕范围或视频采集范围时,采用本申请实施例提供的方法,仍能对用户进行的健身动作进行计数、评分和评价,避免用户部分骨骼节点不在图像识别范围内造成的识别和评价错误。

对于每个健身动作,建立一个可以识别该动作的最小关节点集,即第一关键节点和第二关键节点组成的点集。当用户动作中存在该最小关节点集中的所有节点时,可以识别用户进行健身动作,可以对用户完成的健身动作进行计数。

对于每个健身动作,建立一个基础指导点集,即第三标准节点组成的点集。当用户动作中存在该基础指导点集中的所有节点时,可以对用户进行的健身动作进行基本的评分和评价。基础指导点集可以与最小关节点集相同或不同。如深蹲运动,基础指导点集与最小关节点集均可以由臀部节点和膝盖节点组成。

如果用户动作包含基础指导点集中的全部节点时,电子设备可以为用户提供基础的评分和指导。

如果用户动作中不包括基础指导点集和/或最小关节点集中的全部节点,电子设备可以输出提醒信息,以提醒用户调整用户动作的采集范围,从而使得采集的用户动作包括基础指导点集和/或最小关节点集中的全部节点。

对于每个健身动作,建立一个扩展指导点集,即第四标准节点组成的点集。第四标准节点不是全部位于用户动作中的情况,无法确定用户的动作是否满足次要指标,可以不再输出次要指标对应的评价,可以适当减低评分。

通过步骤S301-S307,能够准确判断用户是否进行健身动作,记录用户完成动作的次数,评价用户完成动作的质量,识别出错误的局部动作,并给予用户反馈和指导。

应当理解,位置变化范围、运动轨迹等与用户肢体的位置相关的信息,可以用于指示二维空间的位置,即在用户动作中的位置,也可以用于指示三维空间中的位置,即根据用户动作确定的在三维空间中的位置,本申请实施例对此不作限定。

图4是本申请实施例提供的一种辅助健身的方法。该方法可以由辅助健身装置执行,辅助健身装置是一种电子设备。辅助健身装置包括摄像头、处理器、存储器、显示器/扬声器/蓝牙通信模块等。处理器包括CPU,还可以包括GPU、NPU等。

在步骤S201,摄像头获取用户动作视频。

在步骤S202,CPU/GPU/NPU运行骨骼节点识别算法,以识别用户动作视频中的用户的骨骼节点。

在步骤S203,存储器存储动作评价指标集合。存储器例如可以是ROM。

在步骤S204,CPU判断健身动作并进行评分和评价。CPU根据存储器存储的动作评价指标集合和识别的骨骼节点,判断用户是否进行健身动作,并在确定用户进行健身动作时,对用户的动作进行评分和评价。

在步骤S205,显示器/扬声器/蓝牙耳机等,输出反馈信息。蓝牙通信模块可以将反馈信息发送至蓝牙耳机,蓝牙耳机可以输出反馈信息。反馈信息可以包括用户的动作的评分和评价。通过显示器输出反馈信息,图形用户界面可以参见图5。

图5是本申请实施例提供的一种图形用户界面(graphical user interface,GUI)的示意图。本申请以辅助健身装置是手机为例进行说明。

图5中的(a)图示出了手机的解锁模式下,手机的屏幕显示系统显示了当前输出的界面内容501,该界面内容501为手机的主界面。该界面内容501显示了多款第三方应用程序(application,App),例如支付宝、任务卡商店、微博、相册、微信、卡包、设置、健身等。应理解,界面内容501还可以包括其他更多的应用程序,本申请对此不作限定。

当手机检测到用户点击主界面501上的健身应用的图标502的操作后,可以启动健身应用,显示如图5中的(b)图所示的健身应用界面503。健身应用界面503上可以包括多种健身动作。

当手机检测到用户点击健身应用界面503上的一种健身动作后,可以显示如图5中的(c)图所示的该健身动作的指导界面。指导界面中可以包括标准的健身动作504,摄像头实时采集的用户动作即用户动作视频505,以及评价即指导信息506,用户动作计数507等。

图6是本申请实施例提供的一种图形用户界面的示意图。电视机可以显示如图6所示的该健身动作的指导界面。

应当理解,图5和图6仅是示例性的说明,其他具有显示功能的电子设备如平板电脑、个人计算机的显示器等也可以显示如图5中的(c)图、图6所示的该健身动作的指导界面。

图7是本申请实施例提供的一种辅助健身的方法的流程性示意图。

在步骤S601,电子设备获取用户动作。

电子设备可以获取用户动作的实时图像。或者说,电子设备可以获取用户动作视频。用户动作视频中,用户正在进行用户动作。用户动作视频可以是电子设备实时采集的图像形成的视频。

电子设备可以识别所述用户动作中的关节点,以确定所述用户动作中的所述第一肢体和所述第二肢体。

电子设备可以识别用户动作中的用户的骨骼节点。骨骼节点也可以称为关节点。用户的骨骼节点可以表示用户的肢体。通过用户的骨骼节点位置的变化,电子设备可以确定用户的肢体的位置、动作等。或者,也可以通过其他方式,识别用户的肢体。肢体也可以理解为身体部位。

电子设备可以根据关节点识别第一肢体和第二肢体。

在步骤S602,电子设备确定所述用户动作中第一肢体的运动轨迹。

第一肢体可以是身体的某个或某些部位。

第一肢体的运动轨迹可以指第一肢体从开始位置到结束为止所经过的路线组成的动作的空间特征。运动轨迹可以包括运动轨迹方向、运动轨迹形状等。第一肢体的运动轨迹方向可以是第一肢体在进行用户动作时所形成的移动方向。运动轨迹形状可以是直线、曲线或者两者的组合。

电子设备可以根据第一肢体的运动轨迹,从用户动作中确定备选动作。电子设备判断第一肢体的运动轨迹是否满足第一预设条件,将满足第一预设条件的运动轨迹对应的一段用户动作作为备选动作。备选动作即第一肢体的运动轨迹满足第一预设条件的用户动作。

第一预设条件也可以理解为对第一肢体的预设的位置变化特征。在用户动作中,电子设备可以确定所述用户的第一肢体的运动轨迹符合预设的位置变化特征的一段用户动作作为备选动作。即电子设备可以从用户动作中确定符合所述第一肢体的预设运动轨迹特征的备选动作。电子设备可以根据所述第一肢体的运动轨迹的特征,从所述用户动作视频中确定备选动作。

预设的位置变化特征可以包括运动轨迹的形状、运动轨迹的周期性等中的一种或多种。

电子设备可以选取所述第一肢体的运动轨迹符合预设特征的一段视频作为备选动作,即备选动作是运动轨迹具有某一特征的一段视频。

例如电子设备可以根据第一肢体的运动轨迹的周期性,从用户动作中确定备选动作。或者,电子设备可以选取第一肢体的运动轨迹与预设轨迹的相似度小于预设值的一段用户动作作为备选动作。

备选动作可以是对应于第一肢体的运动轨迹一个周期的视频,可以是对应于第一肢体的运动轨迹一个周期中的某一段的视频或图像,例如一个周期中第一肢体位于特定位置范围的轨迹对应的视频或图像。备选动作的选取方式可以是根据特定的健身动作确定的。

预设特征可以用于指示第一肢体对应的骨骼节点的位置变化的方式。第一肢体的位置变化的方式可以是第一肢体的运动方向变化。

第一肢体的运动方向变化例如可以是如向上或向下运动,或者上下往复运动等。第一肢体的运动方向,也可以理解为第一肢体的全部或部分骨骼节点的运动方向。第一关键节点为第一肢体中的骨骼节点。第一关键节点的位置变化的方式也可以是运动轨迹的形状,如运动轨迹为三角形、圆形、弧形、折线形等形状。

第一肢体的角度变化即第一肢体动作的角度变化,第一肢体的节点之间的方向改变,相对位置改变。

第一肢体的运动轨迹可以理解为第一肢体中的第一关键节点的运动轨迹。确定的备选动作例如可以是第一关键节点在上下往复运动过程中,向上运动的一段对应的用户动作,或者第一关键节点运动轨迹为三角形,第一关键节点在三角形的某一条边运动时对应的一段用户动作。

在步骤S603,电子设备确定第二肢体在所述备选动作中的动作变化幅度。

电子设备可以确定在备选动作中,确定第二肢体的动作变化幅度。

第二肢体的动作变化幅度,也可以理解为第二肢体的位置变化幅度,即第二肢体的位置变化最大范围之间的差值。动作变化幅度可以包括变化角度、变化距离等。也就是说,第二肢体的动作变化幅度可以是第二肢体与水平方向或竖直方向的夹角的最大值与最小值的差值,第二肢体的动作变化幅度也可以是在第二肢体的位置变化过程中经过的各个位置之间的最远距离,第二肢体的动作变化幅度还可以是第二肢体之间距离变化量的最大值。

电子设备可以判断所述用户动作中第二肢体的动作变化满足预设动作变化范围的最大值要求和最小值要求,以确定所述用户动作为健身动作。

第二肢体可以包括一个或多个身体部位。第二肢体可以包括第一肢体中的全部或部分。第二肢体也可以是用户的第一肢体之外的肢体。

电子设备还可以判断所述用户动作满足预设的第二肢体的动作变化范围,以确定所述用户动作为健身动作。

第二肢体在所述备选动作中的动作变化范围,可以包括第二肢体在备选动作中的动作变化幅度。第二肢体在所述备选动作中的动作变化范围,可以包括所述第二肢体的在所述备选动作中的动作起始位置,所述第二肢体的在所述备选动作中的动作终止位置中的至少一种。

可以根据第一肢体的运动轨迹确定第二肢体在所述备选动作中的动作起始位置和动作终止位置。例如,第二肢体在所述备选动作中的动作起始位置可以是备选动作第一帧图像中第一肢体的位置。第二肢体在所述备选动作中的动作终止位置是备选动作第一帧图像中第一肢体的位置。或者,可以确定第一肢体位于其运动轨迹上的某一点对应的备选动作中的图像中第二肢体的位置为第二肢体的动作起始位置或动作终止位置。

电子设备可以保存有第一肢体在其运动轨迹上的位置与第二肢体的动作起始位置或动作终止位置的对应关系。

备选动作中的所述第二肢体的位置的变化范围可以是在备选动作中第二肢体的位置的变化幅度对应的范围。通过备选动作的选取,使得第二肢体的位置的变化幅度为第二肢体在备选动作中的动作起始位置和动作终止位置对应的差值。或者,备选动作中的所述第二肢体的位置的变化范围用于指示所述第二肢体的位置在所述备选动作的最后一帧图像相对于所述备选动作的第一帧图像的变化。

预设动作变化范围的最大值要求,即预设动作变化范围的最大值的区间范围;预设动作变化范围的最小值要求,即预设动作变化范围的最小值的区间范围。当第二肢体的动作变化范围的最大值在预设动作变化范围的最大值区间内,且第二肢体的动作变化范围的最小值在预设动作变化范围的最小值区间内,可以认为用户动作为健身动作,即该用户进行健身动作。

第二肢体可以包括一个或多个身体部位。电子设备可以根据第二肢体的位置的变化的范围,确定用户是否进行健身动作。电子设备可以根据用户动作获取第二肢体的位置的变化范围。根据保存的健身运动对应识别条件,电子设备确定用户是否进行健身动作。

识别条件可以是第二肢体的位置的变化的范围等。

动作变化范围可以包括位置的变化方式。位置的变化的方式例如可以是上下运动、水平运动、环形移动、角度变化等。第二肢体的动作变化范围可以包括第二肢体角度变化的变化范围,也可以包括第二肢体之间相对位置的变化范围。

电子设备可以识别所述用户动作中的骨骼节点,以确定所述用户动作中的第二肢体。电子设备可以判断所述用户动作中的第二肢体满足所述预设的第二肢体的动作变化范围。

电子设备可以根据第二肢体的位置的变化范围,确定用户进行的健身运动的种类。根据第二肢体的位置的变化满足的识别条件,可以确定该识别条件对应的健身运动的种类。

电子设备可以在步骤S601之前,或者在步骤S602之前,获取输入信息,输入信息用于指示健身动作。所述电子设备根据所述输入信息确定第一预设条件,即第一肢体的运动轨迹满足的预设条件。

电子设备可以确定与所述健身动作对应的第一肢体、第二肢体、第三肢体、第四肢体等中的至少一种。

根据输入信息,电子设备可以确定健身运动。也就是说,电子设备可以根据输入信息,确定健身运动的种类。对于不同的健身动作,第二肢体可以是不同的身体部位。识别条件可以是第二肢体的位置的变化范围。因此,对于不同的健身动作,识别条件可以不同。电子设备可以根据该种类的健身运动对应识别条件,确定用户是否进行该健身动作。

识别条件可以包括第二肢体的动作变化幅度,识别条件还可以包括第二肢体的动作起始位置、第二肢体的动作终止位置中的至少一种。当用户动作中的第二肢体满足识别条件,可以确定用户动作为健身动作,即用户在进行健身动作。

通过输入信息指示健身动作,电子设备可以仅根据该健身动作对应的第二肢体的范围,确定用户是否进行健身动作,无需判断用户的动作是否满足其他健身动作的识别条件,减少计算量。第二肢体的动作变化范围可以包括第二肢体的动作变化幅度,还可以包括第二肢体的动作起始位置、第二肢体的动作终止位置。

第二肢体的动作起始位置、第二肢体的动作终止位置可以根据第一肢体的运动轨迹确定。第二肢体的动作起始位置可以是备选动作中第二肢体的动作起始位置,即备选动作对应的第一帧图像中第二肢体的位置。第二肢体的动作起始位置也可以是第一肢体位于运动轨迹中某一点时,该点对应的备选动作的图像中第二肢体的位置。

用户的第二肢体的位置的变化范围,可以是第二肢体在整个用户动作中的位置变化范围,即可以是第二肢体在所述用户动作中第二肢体的位置的变化幅度的最大值对应的范围。电子设备可以在用户动作中每次选取任意两帧图像,将第二肢体的位置进行比较,通过多次的图像的帧的选取和第二肢体的位置的比较,从而确定第二肢体的位置的变化幅度的最大值。

或者,用户的第二肢体的位置的变化范围也可以是在用户动作中备选动作中的位置变化范围。备选动作是用户动作中的一段视频。

在步骤S602之前,电子设备可以确定用户动作中是否包含用户的第一肢体。

当用户动作中包含用户的第一肢体,进行步骤S602。

当所述第一肢体位于所述用户动作之外,电子设备可以输出提醒信息。所述提醒信息可以用于提醒所述用户调整所述用户动作的图像采集范围。此时,电子设备可以不再进行步骤后续步骤。

电子设备还可以确定用户动作中是否包含用户的第二肢体。当所述第二肢体位于所述用户动作之外,可以输出提醒信息。所述提醒信息可以用于提醒所述用户调整所述用户动作的图像采集范围。

在步骤S602之前,电子设备还可以确定用户动作中的水平方向或竖直方向。根据水平方向或竖直方向,电子设备可以确定用户的肢体的位置、位置的变化、运动轨迹等。

在步骤S604,电子设备根据所述动作变化幅度,确定输出指导信息。

当所述用户进行健身动作时,电子设备可以对用户的动作进行评价和指导。

可以根据第二肢体的动作变化幅度是否满足第二预设条件,确定是否输出指导信息。第二预设条件也可以称为识别条件。

电子设备判断所述动作变化幅度满足第二预设条件;电子设备确定输出指导信息。当第二肢体的动作变化幅度满足第二预设条件时,即认为用户进行健身动作。

在一些实施例中,电子设备可以比较用户动作与该健身动作的标准动作的相似度,对用户的动作进行评价和指导。

在另一些实施例中,对于健身动作,电子设备可以保存用户动作与评价信息的对应关系。电子设备可以通过用户的肢体的位置信息表示用户的动作。电子设备可以保存有用户的第一肢体的位置信息与评价信息的对应关系。

第二肢体的位置信息可以用于指示第二肢体的位置,第二肢体的位置可以是位置的变化范围,或者可以是具体某一时间点的位置。

第二肢体的位置信息包括第二肢体的动作变化幅度、所述第二肢体的动作起始位置、所述第二肢体的动作终止位置、所述第二肢体的运动轨迹中的至少一种。

电子设备可以根据第一肢体的运动轨迹,确定当第二肢体位于某一位置的时间点,确定该时间点的用户动作,确定该时间点第二肢体的位置信息,从而根据第二肢体的位置信息与评价信息的对应关系,确定对应的评价信息。

电子设备可以根据保存的所述第二肢体的动作起始位置、所述第二肢体的动作终止位置与第一肢体在其运动轨迹中的位置的对应关系,确定所述第二肢体的动作起始位置、所述第二肢体的动作终止位置。根据第二肢体的动作起始位置、所述第二肢体的动作终止位置是否满足识别条件,确定是否输出指导信息。

电子设备可以根据第一肢体的运动轨迹,确定当第一肢体位于某一范围的时间段,确定该时间段第二肢体的位置信息,从而根据第二肢体的位置信息与评价信息的对应关系,确定对应的评价信息。

电子设备可以根据第一肢体的位置变化的情况,确定对应的评价信息。

例如,第二肢体的位置可以是第二肢体在用户动作或备选动作中的与水平或竖直方向的夹角的最大值或最小值,可以是夹角的变化范围,即夹角的最小值至最大值或最小值至最大值,第二肢体的位置也可以是第二肢体的运动距离与第二肢体的长度等尺寸的比值,第二肢体的位置还可以是第二肢体与其他肢体的相对位置关系或第二肢体之间的相对关系等。

当所述用户进行健身动作时,确定与第一位置信息对应的第一评价信息。所述第一位置信息用于指示在所述用户动作中所述第二肢体的位置。

第二肢体的位置信息可以与评价信息一一对应。第二肢体的位置信息可以包括所述第二肢体的动作变化范围、所述第二肢体的动作变化范围幅度、所述第二肢体的动作变化范围的极限值、所述第二肢体的运动轨迹中的至少一种。

第二肢体的动作变化范围的极限值,即第二肢体的动作变化范围的最大值或最小值。例如可以包括第二肢体的角度的最大值或最小值,也可以包括第二肢体中之间的距离的最大值或最小值,即的一个身体部位与另一个身体部位距离的最大值或最小值等。

第二肢体的动作变化幅度,也可以称为动作变化范围的幅度,即第二肢体的动作变化范围的最大值或最小值之间的差值。

第二肢体的运动轨迹与评价信息的对应关系,例如可以是第二肢体的运动轨迹的形状、周期等与评价信息的对应关系。

电子设备可以根据所述第一评价信息,输出指导信息。第一评价信息可以包括评分和/或评价。指导信息可以与第一评价信息相同或不同。电子设备可以根据用户的其他肢体的动作完成情况,对第一评价信息进行调整,以得到指导信息。

电子设备可以确定与所述用户的第二位置信息对应的第二评价信息。所述第二位置信息用于指示在所述用户动作中所述第三肢体的位置。第二评价信息例如可以是评分和/或评价。第二位置信息可以包括所述第三肢体的动作变化范围、第三肢体的动作变化幅度、所述第三肢体的动作变化范围的极限值、所述第三肢体的运动轨迹等中的一种或多种。

电子设备可以根据所述第二评价信息和所述第一评价信息,输出指导信息。

在第二肢体位置对应的评分大于预设值时,指导信息可以包括第二评价信息中的评价。电子设备可以在第二肢体位置对应的第一评价信息中的评分大于或等于预设值时,输出第二评价信息中的评价;反之,在第二肢体位置对应的第一评价信息中的评分小于预设值时,指导信息可以仅包括第一评价信息中的评价。

对于健身动作,可以在用户的主要肢体动作完成的不标准时,仅对主要肢体动作进行指导,在用户的主要肢体动作完成较为标准时,为其他的肢体的动作进行指导。可以在评分小于预设值时,不进行第二评价信息的确定。

电子设备可以根据第二评价信息中的评分对第一评价信息中的评分进行调整,从而确定指导信息中的评分。

第二评价信息中的评分可以是增加或减少的分数数值,可以在第一评价信息中的评分基础上增加或减少该分数数值。或者,第二评价信息中的评分也可以是第三肢体的动作的分值。电子设备可以根据第三肢体的权重,在第一评价信息中的评分基础上增加或减少对第二评价信息中的评分乘以权重得到的数值。

第三肢体可以包括一个或多个身体部位。第三肢体可以是用户的第二肢体之外的肢体。

电子设备可以确定用户动作中是否包含用户的第三肢体。当所述第三肢体位于所述用户动作之外,电子设备可以输出提醒信息。所述提醒信息可以用于提醒所述用户调整所述用户动作的图像采集范围。

通过步骤S601-S602,能够准确判断用户是否进行健身动作,从而能够在用户进行健身动作时提供指导,提高用户体验。

图9是本申请实施例提供的一种电子装置的示意性结构图。装置700包括获取模块701,确定模块702。

获取模块701,用于获取用户动作。

确定模块702,用于从所述用户动作中确定所述用户动作中第一肢体的运动轨迹满足第一预设条件的备选动作。

确定模块702还用于,确定第二肢体在所述备选动作中的动作变化幅度。

确定模块702还用于,根据所述动作变化幅度,确定输出指导信息。

可选地,装置700还包括判断模块,用于判断所述动作变化幅度满足第二预设条件。

确定模块702还用于,确定输出指导信息。

可选地,获取模块701还用于,获取输入信息。

确定模块702还用于,确定所述输入信息对应的所述第一预设条件。

可选地,确定模块702还用于,确定与第一位置信息对应的第一评价信息,所述第一位置信息包括第二肢体的动作变化幅度、所述第二肢体的动作起始位置、所述第二肢体的动作终止位置、所述第二肢体的运动轨迹中的至少一种,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的。

装置700还包括输出模块,用于根据所述第一评价信息,输出指导信息。

可选地,确定模块702还用于,确定与所述用户的第二位置信息对应的第二评价信息,所述第二位置信息包括第三肢体的动作变化幅度、所述第三肢体的动作起始位置、所述第三肢体的动作终止位置、所述第三肢体的运动轨迹中的至少一种,所述第三肢体的动作起始位置和所述第三肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的。

输出模块还用于,根据所述第二评价信息和所述第一评价信息,输出所述指导信息。

可选地,装置700还包括识别模块,用于识别所述用户动作中的关节点,以确定所述用户动作中的所述第一肢体和所述第二肢体。

可选地,确定模块702还用于,根据所述动作变化幅度,以及所述第二肢体的在所述备选动作中的动作起始位置,确定输出所述指导信息;或者,所述电子设备根据所述动作变化幅度和所述第二肢体的在所述备选动作中的动作终止位置,确定输出所述指导信息;或者,所述电子设备根据所述动作变化幅度、所述第二肢体的在所述备选动作中的动作起始位置和动作终止位置,确定输出所述指导信息,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的。

图10是本申请实施例提供的一种电子装置的示意性结构图。装置800包括处理器801,通信接口802。

通信接口802用于,获取用户动作。

处理器801用于:从所述用户动作中确定所述用户动作中第一肢体的运动轨迹满足第一预设条件的备选动作;确定第二肢体在所述备选动作中的动作变化幅度;根据所述动作变化幅度,确定输出指导信息。

可选地,处理器801用于:判断所述动作变化幅度满足第二预设条件;确定输出指导信息。

可选地,通信接口802还用于,获取输入信息。

处理器801还用于,确定所述输入信息对应的所述第一预设条件。

可选地,处理器801用于:确定与第一位置信息对应的第一评价信息,所述第一位置信息包括第二肢体的动作变化幅度、所述第二肢体的动作起始位置、所述第二肢体的动作终止位置、所述第二肢体的运动轨迹中的至少一种,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的;根据所述第一评价信息,确定所述指导信息。

可选地,处理器801用于:确定与所述用户的第二位置信息对应的第二评价信息,所述第二位置信息包括第三肢体的动作变化幅度、所述第三肢体的动作起始位置、所述第三肢体的动作终止位置、所述第三肢体的运动轨迹中的至少一种,所述第三肢体的动作起始位置和所述第三肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的;根据所述第二评价信息和所述第一评价信息,确定所述指导信息。

可选地,处理器801还用于:识别所述用户动作中的关节点,以确定所述用户动作中的所述第一肢体和所述第二肢体。

可选地,处理器801还用于:根据所述动作变化幅度,以及所述第二肢体的在所述备选动作中的动作起始位置,确定输出所述指导信息,或者,根据所述动作变化幅度和所述第二肢体的在所述备选动作中的动作终止位置,确定输出所述指导信息;或者,根据所述动作变化幅度、所述第二肢体的在所述备选动作中的动作起始位置和动作终止位置,确定输出所述指导信息,所述第二肢体的动作起始位置和所述第二肢体的动作终止位置是根据所述第一肢体的运动轨迹确定的。

本申请实施例还提供一种电子装置,包括:至少一个处理器和通信接口,所述通信接口用于所述电子装置与其他装置进行信息交互,当程序指令在所述至少一个处理器中执行时,使得所述电子装置执行上文中的方法。

本申请实施例还提供一种计算机程序存储介质,其特征在于,所述计算机程序存储介质具有程序指令,当所述程序指令被直接或者间接执行时,使得前文中的方法得以实现。

本申请实施例还提供一种芯片系统,其特征在于,所述芯片系统包括至少一个处理器,当程序指令在所述至少一个处理器中执行时,使得前文中的方法得以实现。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,除非另有说明,“多个”是指两个或多于两个。

术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

技术分类

06120112235801