先分清“慢”是哪一种慢

同样说“识别很慢”,实际可能是三件不同的事,处理方式也不一样:

  • 实时预览延迟: 边做边看,骨架跟不上动作。问题出在每一帧的处理时间超出了帧间隔。
  • 训练后出结果慢: 拍完再分析,等待时间长。问题出在整段视频的总处理量。
  • 越练越慢: 开头正常,几分钟后逐渐卡顿。这多半是手机发热降频,不是模型本身的问题。

先判断自己属于哪一种,再往下看,可以少走很多弯路。

症状、原因、验证、处理

下面这张表把常见情况归纳在一起。表中的验证方法都可以自己动手做,不需要专业工具。

症状 常见原因 怎么验证 怎么处理
骨架整体落后动作半拍 帧率或分辨率过高,单帧处理超时 把分辨率降一档再试,延迟是否明显改善 用 1080p 或 720p、30 帧/秒
骨架抖动、忽有忽无 光线暗、逆光、衣服与背景颜色接近 换到光线均匀的位置,看抖动是否减轻 补光,避免逆光,换对比度更高的背景
前几分钟正常,后来越来越卡 手机发热降频,或后台还开着其它应用摸一下机身是否明显发烫,退出其它应用后再试取下手机壳、离开日晒、缩短单次拍摄
拍完等很久才出结果视频太长、分辨率太高,或手机在省电模式 拍一段 20 秒短视频,对比等待时间 分组拍摄,关闭省电模式,保持充电
只有某个动作识别很差 动作被杠铃或器械遮挡,视角不对 换个机位,比如从侧面改为斜前方调整摆放,参考姿态识别的边界说明

分辨率:不是越高越好

直觉上,画面越清晰,识别越准。但多数姿态估计模型在内部会先把画面缩放到一个相对较小的输入尺寸再处理,所以 4K 画面并不会让骨架关键点“多出细节”,反而会让解码、缩放和搬运数据的开销成倍增加。

按贝博体育目前的设计思路,对大多数室内动作来说,720p 到 1080p 已经够用。真正影响准确度的,往往是人在画面里占多大、有没有被遮挡:人只占画面一小块时,即便分辨率再高,实际用于识别的像素也不多。与其提高分辨率,不如把手机放近一点,让人占据画面的大部分高度。

帧率:慢速动作 30 就够,快速动作另说

60 帧每秒的处理量,大约是 30 帧每秒的两倍,这点在视频处理里是很直接的算术关系。深蹲、卧推、硬拉这类节奏较慢的力量动作,30 帧通常足以描出完整的轨迹。需要更高帧率的,是速度很快的动作,比如跳跃、快速挥臂,帧太少会导致中间的姿态被漏掉。

示意场景:假设某手机处理一帧需要 40 毫秒,那么它每秒最多处理 25 帧。你把摄像头设成 60 帧,系统只能丢帧或排队,结果就是延迟越积越大。这个数字仅用于说明道理,不代表任何具体机型。判断的办法很简单:如果预览明显延迟,先把帧率降到 30,再考虑其它。想了解动作速度分析对帧率的要求,可以参考 卧推速度分析 中对时间分辨率的讨论。

画面质量:模型“看不清”时也会拖慢

还有一类“慢”其实是模型在犹豫。画面太暗、人物与背景颜色接近、衣服宽松盖住了关节,都会让关键点的置信度下降,系统需要更多帧才能稳定判断,表现出来就是骨架抖动、结果迟迟不出。这类问题换性能更强的手机也未必解决,改善画面才是关键:

  • 光线从前方或侧前方均匀照到人身上,避免背对窗户;
  • 手机固定在三脚架或稳定的支撑物上,别手持,抖动会让每一帧都不同;
  • 穿贴身一些、和背景反差明显的衣服,膝盖和髋部的轮廓要看得见;
  • 全身入镜,头顶和脚下各留一点空间,人别站在画面边缘。

摄像头角度对不同动作的影响不同,比如硬拉时腰背的判断,对机位就非常敏感,具体边界见 硬拉姿态识别的能力边界

手机性能:芯片之外,还有散热

同一款处理器,在凉爽环境里跑几秒和跑十分钟,速度可能差很多。手机为了保护硬件,温度上升后会主动降低频率,这叫热降频。连续开着摄像头和 AI 推理,是最容易触发它的组合。

所以“越练越慢”的用户,先做这几件事:

  • 拍摄时不要边充电边高负载运行,充电本身会发热;
  • 摘掉厚手机壳,避免把手机放在暖气或日照下;
  • 关闭不需要的后台应用,减少同时占用处理器的程序;
  • 关闭系统的省电模式,它通常会限制性能。

至于手机的处理器、GPU 和神经网络加速单元各自起什么作用、旧手机能不能跑,有专门的一篇 旧手机能否运行动作分析 来讲。这里只强调一点:性能的瓶颈常常不是芯片本身,而是发热和内存。

补充一点:无论手机新旧,贝博体育下载页上公布的推荐配置,都比本文的经验之谈更有权威性。经验只能帮你判断设置怎么调,配置要求则决定了实时分析这条路能不能走通。已经完成贝博体育下载的用户,也可以回头对照一遍。

设置都试过了,还是慢,怎么办

有些情况并不能靠设置解决。手机的内存太小、系统版本过旧、处理器缺少足够的加速能力,都可能让实时分析勉强可用甚至不可用。这时的现实选择有:

  • 改用“先拍摄、后分析”的方式,接受等待,换取结果;
  • 缩短单次拍摄,把长训练拆成几组分别分析;
  • 只使用心率、距离等不依赖摄像头的分析功能;
  • 记录手机型号、系统版本、设置的分辨率与帧率、慢的具体表现,联系支持时提供,联系方式见联系页。

如果你打算通过贝博体育下载安装,系统要求以下载页公布的说明为准,建议在安装贝博体育App 之前先看一下。如果你发现在某个设置下识别得又快又稳,就把这组设置固定下来,不必追求参数最大。动作识别的目标是给出可靠的提示,而不是把手机压到极限。