小米手环是如何保证运动数据的准确性?

上个月买了小米4手环,初心有二:体验新鲜电子产品;用来计算步数 。在使用过程中我一直对其计算方式比较好奇,索性今天满足下自己的好奇心,enjoy~

                                                    

                     ①  小米手环怎么解决数据叠加问题呢?

简单列举两个场景:

场景一:

早上我只带了手环去了篮球场,显示步数5000;下午我只带了手机外出,显示步数3000.

场景二:

早上我只带了手环去了篮球场,显示步数5000;中午我同时带了手机和手环走了1小时,手机显示步数3000.

那么,今天我的微信运动步数是多少呢?

这个问题,我小侄子都能算出。正确应该是5000+3000=8000步。

但我想表达的是,微信运动在读取数据时,是如何做到精确统计呢?

我的推理是这样的:

小米手环和iPhone的健康数据作为一个数据源,可以简单理解为数据ID,那么在汇总统计时,会对每一条上传的数据打上数据来源标签。对于在同一时间段内的重复数据进行合并处理。

即,将一天24小时按照时间长度依次叠加数据,这样就可以保证数据的准确性。

那么,事实上是不是这样呢?

                 

                                    ②  揭秘时刻

下面这张图是我选取上周日的数据。

可以看到,每条数据由3部分构成:数据来源+步数+时间点。每个上传的数据都按照时间进行展示,最终一天的数据就是这些数据的累加。

完美!


                             

                           ③  小米手环的计步原理是什么呢?

是的,我就是来自本山大叔刨根问底栏目组的那个谁谁谁。

根据小米官方文档看出,小米手环能够精准计步由硬件和软件算法两方面组成。

硬件:

是指小米手环里内置的那枚强悍的三轴加速度传感器,军用级。

那么,啥是三轴加速度传感器呢?

这里的三轴是指空间坐标轴X/Y/Z。物理知识告诉我们,运动就会产生加速度,通过传感器获取这些数据,接下来的事情交给软件算法。

软件算法:

程序猿根据三轴加速度实时捕捉到的三维数据,经过滤波、峰谷检测等过程,使用各种算法和逻辑计算,最终将这些数据转变成手环里的可读数字,包括步数、距离、消耗的卡路里等数值。


好了,大概就是这些了,算是给自己在这块的一个基本交代。

下周有时间好好学习下硬件传感器方面的知识。

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容