夜雨聆风学习资料网

ARTICLE · 1179203

AI 视觉看跳绳:为什么不数绳子,去数人

AI 视觉看跳绳:为什么不数绳子,去数人

先说清楚这件事难在哪——后面的设计才有必要讲。

第一是快。一分钟跳 130 次,是每秒 2.2 次;练得好的孩子能到 180 次以上,也就是一秒 3 次,绳子过脚的窗口压到 0.3 秒以内。这个速度下,「看一会儿再回忆」这种观察方式,从采样频率上就不成立。

第二是杂。到学校采集,环境基本不可控:室外广场、正午顶光、下午逆光、全班穿同色校服、队列里互相遮挡,手机可能就架在消防栓上。

第三是多。一个班三十几个孩子,一节课四十分钟。逐个测,测不完。

快、杂、多这三个字,决定了后面几乎所有设计。这篇讲的就是为应付它们,我们一个一个定下来的决定。

从画面到结论,这条链路是:画面采集 — 多人分配 — 关键点解算 — 可观测量的量化 — 阈值分级 — 卡点输出。
01 | 为什么不数绳,去数人

做这件事,最直觉的思路是:数绳子转了几圈。

不少方案就是这么做的——手柄里装个计数器,或者用视觉识别绳子转过的圈数。这条路线成熟、便宜、够用,如果你只要个数,它是最优解。所以下面的比较不是「谁不行」,而是我们要回答的问题不一样。

绳子在画面上有个绕不过去的性质:它是一根细的、移动的、会被身体挡住的线。于是有几种情况会让「数绳」变得吃力——手柄计数看不到绳体状态;视觉数绳时,浅色绳对着浅色地面、深色绳对着深色地面、透明绳,都会让这根线在画面里时有时无;孩子跳起来时,绳体还会被身体挡掉一段。

更根本的一点:绳子回答不了「为什么」。

绳子是一个整体,它只有两种状态:转过去了,或者没转过去。一次绊绳,你只知道「这次没过」,不知道是手腕慢了、跳早了、还是跳高了。这三个原因,练法完全不一样。

所以我们换了个对象:不数绳,数人。

用视觉把人体拆成一组关键点——头、肩、肘、腕、髋、膝、踝。一分钟 60 秒,每秒 30 帧,就是 1800 帧。每一帧里,这些点的位置都记下来。

画面上叠出来的,就是系统真正「看到」的东西:逐帧的关键点与轨迹

02 | 只挑能稳定测出来的量

有了这些点,那 0.3 秒就不再是黑箱了。但我们没有直接去「猜原因」,而是先做了一件更基础的事:只挑那些在画面上能稳定测出来的量。

可观测的量
从哪来
为什么选它
摇绳半径
手腕轨迹的范围
手在画面里最完整,不像绳体那样时有时无
滞空时长
踝关节离地到落地的时间
直接对应「跳多高」,而且测时间比测高度抗机位差异
手腕角速度
腕与肘之间的角度变化速度
用来区分「甩手腕」和「甩整个小臂」,两种完全不同的发力
节奏周期
相邻两次起跳的时间差
判断「后半程乱」到底是体力问题还是节奏掉线
挑观测量的时候,先问一句:这个量,换一个操场、换一个机位,还测得住吗?
测不住的量,再接近「原因」,也不能作为判定依据。

其中摇绳半径、滞空时长、手腕角速度这三个量,正好对应三种「卡住」的方式——这是下一篇要重点讲的事。

从关键点算出的三个量:摇绳半径、滞空时长、手腕角速度——每个量对应一种典型的卡法

03 | 代价:这不是一条免费的路线

这个选择不是免费的。数绳子,可以在手柄里跑;数人,得跑视觉模型,还得跑得动、跑得稳,还得在孩子跳得很快、画面里还有家具和路人时依然稳。这是第一个决策,也是后面所有难度的源头。

选观测对象的时候,先想清楚你要回答什么问题。
你要的是个数,就去数绳;你要的是原因,就只能去数人。

下一篇讲整个系列的核心:同一个「绊了」,画面上其实是三种完全不同的错法——这是家长最有用的一篇。

👪本篇讲的是个人版:一部手机,采一个孩子。学校体测那套(1 机 6 采、场次、机位、班级名单)单独有一篇,见系列目录。

相关学习资料