当前位置:网站首页>AI篮球裁判火了,走步算得特别准,就问哈登慌不慌
AI篮球裁判火了,走步算得特别准,就问哈登慌不慌
2022-08-01 09:34:00 【QbitAl】
Alex 发自 凹非寺
量子位 | 公众号 QbitAI
打篮球的友友们应该知道,走步是比赛中最常见的违规之一。

为了更好地监测篮球比赛中球员是否出现走步行为,一位网名叫@Ayush Pai的小哥(我们就叫他AP哥吧)搞出了一个AI裁判。

如你所见,计算机时刻“盯着”打篮球的人,并且立马能判断出这个人是否走步了。
这个AI篮球裁判很快吸引了一批网友前来围观。
有人调侃道,如果NBA用了该AI裁判,他们就完了。(因为NBA裁判有时候不吹走步)

也有人说,这个AI看起来对规范小孩子打篮球很有帮助。

还有位大聪明建议AP哥再设计一个奥斯卡奖的失误检测AI。(Doge)

所以话说回来,这个AI裁判是怎么具备如此“火眼金睛”的呢?
主要追踪球运动轨迹和步数
你可能已经猜到了,这个AI裁判就是主要基于计算机视觉(CV)创造出来的。
该AI主要跟踪两个东西:球的运动轨迹和人的步数。
为了达此目的,首先将检测运球的时间。
首先,AP哥编写了一套CV算法来检测球的弹跳情况,将摄像机的视图流化,即:按顺序提取视频帧。
然后,AP哥创建了一个Aegis v图片颜色掩码,来识别并筛选出篮球的颜色。
在计算机后台程序中,篮球显示为白色,而其其他和篮球不同色的物体都呈现为黑色;因为只有球被识别出并被放在遮罩中。

不过,干扰色彩导致篮球周围出现了一些不规则的像素块,为了优化这个问题,AP哥删除了一些后处理代码,并且在球周围做了一个圆,使其看起来更规整。

为了更好地跟踪篮球弹跳情况,AP哥测出了其半径,根据球的半径和中心点得出的一个顶点,然后用抛物线函数来表示球的运动轨迹。当顶点达到最小值时,说明篮球触地了。
搞定篮球识别问题后,下面还要计数人在运球过程中走了几步。
AP哥起初认为使用苹果手表上现成的步数计数器就行,不过事实证明他太天真了——
苹果手表上的计步器并不能实时更新。

所以AP哥干脆自己动手,设计出一个实时计数的计步器。
他创建了一个安卓应用程序,根据x、y、z三个轴上的加速度检测并计数步数,并将这些数据反馈给Python程序。
最后,将监测球运动轨迹和步数的两个数据集结合起来,即可判断出人是否出现走步行为。
不过,目前这个AI裁判还不够“完美”,有网友指出,这个AI貌似识别不到现在NBA里当今盛行的gather step(哈登应该比较熟悉这个)。
对此,AP哥表示,他之后将为其加上这个功能。

你是否看好这个AI篮球裁判?对了,AP哥已其算法开源在GitHub上了,感兴趣的伙伴们可以去看看~
传送门:
https://github.com/ayushpai/Basketball-Detector
参考链接:
[1]https://www.youtube.com/watch?v=3UeoKxw8UYs
[2]https://www.reddit.com/r/MachineLearning/comments/wbwkwb/i_created_a_cvbased_automated_basketball_referee_p/
边栏推荐
- mysql login in cmd and basic operations of database and table
- How to query database configuration parameters in GBase 8c, such as datestyle
- 杰理AD14N/AD15N---串口中断问题
- Shell: Conditional test action
- 静态Pod、Pod创建流程、容器资源限制
- Message queue interview latest finishing (2022)
- VS“无法查找或打开PDB文件”是怎么回事?如何解决
- Install GBase 8 c database, the error shows "Resource, how to solve?
- shell脚本------条件测试 if语句和case分支语句
- leetcode-6132:使数组中所有元素都等于零
猜你喜欢

VS“无法查找或打开PDB文件”是怎么回事?如何解决

various network protocols

mysql login in cmd and basic operations of database and table

rpm and yum

What's up with VS "Cannot find or open PDB file"?How to solve

【编程之外】当遮羞布被掀开,当人们开始接受一切

C language game - minesweeper

Comprehensive experiment BGP

Shell: Conditional test action

net stop/start mysql80 access denied
随机推荐
高级驾驶辅助系统ADAS简介
毕业论文写作技巧
Opencv creates a window - cv.namedWindow()
STM32个人笔记-程序跑飞
Custom IP used in PCIE
Detailed explanation of JVM runtime data area and JMM memory model
量化日常工作指标
rpm and yum
Leetcode - 6135: the longest part of the figure
Message queue interview latest finishing (2022)
leetcode 42. Catch the rain
In the background of the GBase 8c database, what command is used to perform the master-slave switchover operation for the gtm and dn nodes
获取页面数据的方法
Yang Hui Triangle (C language implementation)
Three chess (C language implementation)
Microsoft Azure & NVIDIA IoT developers season I | Azure IoT & NVIDIA Jetson development foundation
Explain / Desc execution plan analysis
优炫数据库支持Oracle哪几种时间及日期类型
Idea common plugins
【应用推荐】常见资源管理器整理,含个人使用体验和产品选型推荐