6 月 27 日,又拍云 Open Talk 第九期《软硬之间:架构设计与技术融合》重返杭城,邀请到蘑菇街中间件团队负责人刘传双、WeCoach 软件开发负责人王圣捷、BiCi 技术负责人胡伟,共同分享架构设计相关的前沿技术。软件开发会给智能硬件带来更多的灵感,而硬件设计更像是“软+硬+云”的极致混合,相互学习又共同进步,一起致力于提升整体的用户体验。WeCoach 软件开发负责人王圣捷在活动上作了题为《虚拟私人教练 WeCoach 的软件架构分享》的分享,以下是演讲实录:

image.png

一个运动智能硬件,并不单单应该告诉用户今天走了多少步,而是告诉你应该怎么去锻炼,用什么样的节奏去跑,除了跑步,我应该做多少俯卧撑,我到底应不应该做拉伸。现在就这个痛点,我们开发出了 WeCoach 。

WeCoach 区别于传统手环,更加着重于运动方面,支持五种运动:

1. 健身,包括器械及无器械锻炼,支持健身房的绝大多数动作,安排合理的健身计划,包括运动时间、休息时间。

2. 跑步,拥有极大的市场需求。手环一般在跑步完统计公里数,而 WeCoach 会在跑步时,实时提醒心率以及步频。更重要的是 WeCoach 可以监测膝盖冲击系数,因为不恰当的跑步姿势和方式会对膝盖造成损伤,而这种损失是不可逆的。

3. 骑行,可以监测心率和踏频;

4. 游泳,记录泳姿和具体锻炼情况;

5. 瑜珈。

image.png

运动评估算法

WeCoach 的运动评估算法有运动报告、运动计划优化;自适应运动算法有运动姿姿势矫正、生物运动学数据监测;心率检测算法有动态心率除噪,传感器检测基础数据有线性加速度、角加速度、磁偏转心率。

心率检测算法:实时的心率检测,传感器到界面显示非常耗电。然而 WeCoach,倾向于运动时间的心率检测,在用户的运动时间实时记录心率的变化。

运动评估算法:对于整体的运动做一个评估,每次运动结束都会对下一次的运动计划进行优化,让用户更完美地适应计划,每天的锻炼都有进步,但不至于筋疲力尽。


九轴运动传感系统

与传统手环只有三轴加速度计不同,WeCoach Pro 拥有三轴加速度计、三轴陀螺仪、三轴磁罗盘。芯片可以检测到角加速度的旋转,围绕一个中心旋转,作变速运动,中间的加速度始终变换,最后实时计算出结果,即用户对于左右的变化。磁罗盘,一般是固定在南北方向,在没有干扰的情况下,可将芯片理解成一个平面。比如说水平传过来的磁感线,就可以检测到它的角度。当有偏转发生,水平磁感线就与传感器垂直,不断地偏航,选取跟磁感线之间差异角度,就可以结算出它的空间姿态。

正因为有 WeCoach 九轴传感器,所以可以在三维空间内,做实时距离分析。比如说两点之间,经过什么路径,直线走还是偏移走,都能够实时捕捉到它的计划。因为传感器的精度极其灵敏,它的采样频率也是非常高,选择这种传感器,一般采样频率是 1000 赫兹,相当于一秒钟采集一千次数据。

image.png
以十一个感应点为例,首先选择起始点和终点建立一段遍历虚线内所有点的直线,选出距离这个直线段最远的点(A 点)进行连接。连接之后,生成第二幅图片。起点和 A 点,以及 A 点和终点组成新的线段,叫作迭代。重复遍历曲线中所有的点,分别取出距离这两条直线最远的点,又会得到一条曲线,不断进行迭代,在某一个点之后,无论怎样都会保持原来的曲线,这就是收敛曲线。

运动方向是基础的原理,距离计算、动作捕捉和传感器获取到加速度,经过曲线简化,将无效的点去除,进行结算。加速度函数可以积分得到速度,速度函数可以积分得到距离,如果一些值有偏差,最终的结果会有很大的差异。因此在计算过程中,WeCoach 加入滤波器和经验公式,通过不断计算,得到速度到某个点以后的速度都会出现问题的结论,避免用户出现重大的数据偏差。

3D 动作捕捉:捕捉到距离和距离偏转角度,都是单纯的点,并不能判断到底是何运动。因此除了计算用户的运动细节外,还需采集众多专业教练对某种运动的动作数据。通过对教练的数据统计,计算出特定参数以及收敛系数。同时还要采样常见的错误动作,在用户运动动作不标准的时候,通过手机实时语音播报,并进行指导,在用户结束时对每一个动作进行评估。

激烈运动的心率:通过市场调研,国外在运动心率捕捉的设备上,市场售价都在 1000 人民币以上,包括手表、心率带等。WeCoach 可以做到激烈运动时的心率监控,在心率检测的时候,是将光打到手臂上面,通过手臂反射,读取到血液的变化,至少是血液的颜色、血液浓度的变化。但是在运动时候,传感器和皮肤会有相对位移,有可能光会偏移,这也就增加了检测的难度。另一方面传感器的贴合度变化,对于心率的检测也有很大影响,运动时候肌肉的收缩、肌肉组织的密度变化以及供血量都会让传感器读出的数据有所偏差。然而 WeCoach 针对这些难点,做出了独特的解决方案:

1. 动态信号优化:通过九轴传感器实时捕捉运动方向,把异常信号滤除。

2. 高信噪比前端电路设计:根据毛细血管分布读取数据,并采用大面积光学敏感期间,包括一些电路设计捕捉心律频段的分拨器。

3. 惯性传感器辅助的降噪算法:将干扰信号在硬件提取和软件提取之前,做初步分离。

WeCoach 两大基石

1. 动作到位的 3D 动态分析系统以及强度适合自身的动态心率检测系统——监控运动的姿势、心率,通过心率检测,提醒用户在每次剧烈运动前先热身,防止剧烈运动对身体造成的损伤。

2. 机器学习推荐算法:除了传统手环上面记录的用户年龄、性别、身高、体重这些常规信息之外,WeCoach 会捕捉到用户计划,通过调节运动计划和监控用户的身体状态,对每次运动以及计划进行评分,通过 WeCoach 的算法,不断完善用户的运动计划。

每当信息技术发生突破时,人们都会用新的方式获取虚拟私人教练。互联网之前,大家习惯使用电视、VCD 之类的方式了解运动方式。2005 年的时候,优酷土豆一些视频网站推出教练健身计划的视频,用户可以通过视频学习;2009 年之后,微信微博以及很多 APP 的分享会告诉我们到底应该如何去锻炼;2012 年之后,传感器的普及和动作算法的提升,WeCoach 有更加进步的智能运动教练,不单单是 APP 提示你如何锻炼,而是实时捕捉锻炼状况。

WeCoach 希望通过科技改变人文生活,用辅助设备增加能力边界,让人们对于私人教练这个服务的获取,就像听音乐一样这么简单。用户不需要为了专业私教的体验,去健身房购买一年几万元的套餐,用低成本的方式获得专业的指导。


image.png