当前位置:网站首页>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/
边栏推荐
- redis
- leetcode-6132: Make all elements in array equal to zero
- Node's traditional and advanced practices for formatting time (moment)
- Explain / Desc 执行计划分析
- 将Servlet项目改为SSM项目
- 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
- leetcode-6135:图中的最长环
- Prime Ring Problem(素数环问题)
- 网络基础学习
- Yang Hui Triangle (C language implementation)
猜你喜欢
HoloView--Customization
C language game - minesweeper
VS“无法查找或打开PDB文件”是怎么回事?如何解决
net stop/start mysql80 拒绝访问
[Software Architecture Mode] The difference between MVVM mode and MVC mode
Get the Token from the revised version of Qubutu Bed
Meeting OA (Upcoming Meetings & All Meetings)
How to get page data
HoloView 在 jyputer lab/notebook 不显示总结
自定义IP在PCIE中使用
随机推荐
A problem with writing to the database after PHP gets the timestamp
高级驾驶辅助系统ADAS简介
微服务:事务管理
Shell: Conditional test action
How programmers learn open source projects, this article tells you
Go-Excelize API源码阅读(八)——GroupSheets(sheets []string)、UngroupSheets()
notes....
leetcode-6134:找到离给定两个节点最近的节点
Intensive reading of ACmix papers, and analysis of its model structure
可视化——Superset安装与部署
Analysis of High Availability Solution Based on MySql, Redis, Mq, ES
静态Pod、Pod创建流程、容器资源限制
SkiaSharp 之 WPF 自绘 五环弹动球(案例版)
灵魂发问:MySQL是如何解决幻读的?
PHP获取时间戳后写数据库的一个问题
Get the Token from the revised version of Qubutu Bed
50.【Application of dynamic two-dimensional array】
TiDB的真实数据库数据是存在kv和还是pd上?
Custom IP used in PCIE
Microsoft Azure & NVIDIA IoT developers season I | Azure IoT & NVIDIA Jetson development foundation