本文转载自 机器之心

「知识就是力量」,在油管 up 主 Shane Wighton 的人生中,这句话绝不仅仅只是一句口号。他用一个又一个的奇思妙想证明,即使你手再残、再没有运动细胞,只要还有脑子,任何运动都难不倒你:之前是篮球,这次换成了台球。之前是在篮板上「做手脚」,这次换成了球杆。

如图所示,这个智能球杆的末端是可以活动的,球桌的上方还安装了智能摄像头,用于拍摄球桌战况和计算击球路线。

除了自娱自乐之外,这个系统还可以联网,邀请朋友或不认识的网友打一局「线上 + 线下」协同的台球比赛,可以说非常实用了。

当然,整个系统的设计并没有看起来那么简单,需要克服很多困难,如怎么控制球杆活动部位的运动,怎么控制击球的力度。

克服这些困难经历了一个痛苦的过程,我们慢慢来看。

首先,Shane Wighton 将打台球的过程分解为两个步骤:1)确定球的行进路线;2)精准击球,使其按照预想的路线滚入球洞。这也是智能击球系统需要完成的两项任务。

Wighton 所预想的系统是这样的:首先,在球桌的上方安装一个摄像头,用于记录球桌上的基本情况;这个摄像头与一个「大脑」相连,后者可以利用算法,根据摄像头拍摄到的信息计算出最佳击球路线;最后,构建一个末端可以活动的球杆,帮助玩家完成击球动作。

整个流程设计看起来非常流畅,但 Wighton 却表示,真正做起来才发现,「这可能是我做过的最复杂的一个系统」。

球杆:智能台球系统的肢体

首先来看球杆。这部分的第一个难点在于:如何让球杆的前端自由活动?不只是左右活动,还要上下活动。Wighton 首先想到了一个简单的模型,并造了一个原型出来。但无论怎么看,这个设计似乎都很难稳定控制:

其实,Wighton 知道,Stewart 平台能够满足他的要求,但这个平台做起来实在太麻烦了,所以并没有将其作为首选。但现在,他似乎没有选择了。

Stewart 平台是一种有六个棱柱接点的并联式机械手,其棱柱接点多半是油压或是电子式的线性致动器,两两成对装在平台的三个位置。棱柱接点的下方也是两两成对接在平台底盘的三个位罝,但配对会和平台的配对错开。六个棱柱接点两端共 12 个接点,都是用万向接头连接。平台上方的物体的移动有六自由度,包括三个方向的移动以及三个方向的转动。

Stewart 平台有很多优点(如稳固、体积小),甚至可以说,除了麻烦之外,似乎没有多大缺点。

为了做出 Stewart 平台,Wighton 首先需要做出很多小零件。

Stewart 平台的运动是利用一些拉紧的缆绳来控制的,缆绳的另一端连着控制器等装置。平台的精确运动则由算法借助微积分等知识来计算。

到这里,球杆的活动部分就大致完成了:

最后的击球动作通过一个气缸来完成。由于台球对击球的力度控制有要求(并非力度越大越好,比如有时候动作需要非常轻,避免白球落洞),Wighton 还给这个气缸安装了一个控制装置,可以通过放气阀等装置控制气流,从而达到控制击球力度的目的。

球杆做出来的确很酷,但它现在也只是充当一个灵活的肢体,没有「眼睛」和「大脑」。接下来,Wighton 就要给这个系统安装一个「眼睛」和「大脑」。

摄像头 + 算法:智能台球系统的眼睛和大脑

在这个系统中,悬挂在球桌上方的摄像头充当了整个系统的眼睛。但这双眼睛也遇到了一个难题:它拍出的图像并不是规则的矩形。如此一来,画面中每个球的位置就会偏离其实际位置,导致算出的击球路线不够准确(Garbage in, garbage out)。

为了校正拍摄画面,Wighton 给球桌的四个角贴上了一个基准点贴纸(类似于二维码三个角上的小方块)。这些贴纸不仅可以帮助计算机程序校正画面,还可以作为球洞、球等关键位置的参考。

为了确定球杆击球的方向,Wighton 给球杆也贴上了贴纸。球杆顶点的高低也有相应控制。

这些都准备就绪之后,Wighton 已经能够通过算法算出最佳击球路线,但问题是:路线只能显示在电脑的显示屏上,玩起来很不方便。要想玩得尽兴,还得安装一个投影仪。当然,投影仪也需要定点和校正,这里依然借助基准点来完成。

一切就绪,开始第一轮测试:

Wighton 妻子的脸上泛起了神秘的笑容:就这?

痛苦的复盘

到底是哪里出了问题?起初,他发现,球杆的最前端总是向错误的方向移动。为了找出导致这一问题的原因,Wighton 开始复盘整个系统:首先,他安装了一个摄像头来记录球桌画面,然后用一个计算机程序来校正拍到的画面,另一个程序来抽取每个关键点的位置。将这些信息输入计算机,相应算法就可以算出球杆最前端应有的角度,然后将这一信息转化为 Stewart 平台六个致动器的位置信息,完成击球动作。

经过复盘,Wighton 发现,原来是驱动球杆活动端的伺服电动机出了问题:其中两个电动机的转动量和自己预想的不一样。此外,电动机上的滑轮也有一些小问题。

把这些问题解决了就行了吧?naive。更大的问题还在后面:球还是打不进。

为了挽尊,Wighton 又进行了几天疯狂的复盘。终于,一个问题浮现在眼前:球的位置似乎有偏移。

Wighton 认为,这可能是因为广角镜头让画面产生了扭曲。但是,他的镜头是自带校正功能的,因此问题可能出在其他方面。

接下来又是四天筋疲力尽的复盘行动,Wighton 甚至自己做了一套校准系统,但一切并没有好转。

「有时候医生会把手术刀落在病人身体里,病人回家之后就会经常生病,还找不到原因。但这个病人怎么也想不到是肚子里的手术刀导致了这一切。」当最终问题浮现在眼前时,Wighton 想到了这个例子。

这里的「手术刀」就是代码里的 bug。那段代码里有校正功能,但针对的不是 Wighton 用的那台!

在经过数周的挣扎之后,这个智能台球系统终于能用了:

除了这些基本操作,一些专业进球路线现在也可以轻松实现:

独乐乐不如众乐乐,Wighton 还开发了一个线上系统,可以让其他人远程选择击球路线并控制击球,由 Wighton 代为完成球杆的摆放等活动。

Shane Wighton 是谁?

Shane Wighton 毕业于北卡罗来纳大学夏洛特分校,获得了机械工程学士学位和计算机科学硕士学位。他目前在 3D 打印技术开发商和制造商 Formlabs 公司担任首席工程师,热爱制作东西。曾发表专利:Additive fabrication support structures(增材制造支持结构)。Wighton 于 2020 年 3 月开通了自己的 YouTube 频道,现在已经有了 234 万的订阅者。

他在 YouTube 频道简介中这样写道:

我创造各种各样的事物,并且希望用有趣的方式来分享。我的大部分创造是制造项目,不过我也写软件、制作电子设备等。

打台球百发百中?油管博主球杆上“做手脚”相关推荐

  1. 油管博主路透 3080Ti 参数、黄教主烤箱中拿出 DGX A100 预热发布会

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 内容概要:众多资料都表明,黄仁勋将在 5 月 14 日 GTC 的主题演讲上,发布新一 ...

  2. 这五个数据科学家和机器学习工程师油管博主,你必须关注

    全文共1983字,预计学习时长5分钟 图源:unsplash 别再看没完没了地看油管上的猫咪视频!是时候利用它"武装"自己的大脑了.这5个油管博主,笔者强烈安利,让他们带你去了解如 ...

  3. 华强北山寨“AirPods 3”出圈,油管博主直夸好

    本文转载自IT之家 近日,国外 YouTube 博主 @EverythingApplePro 上传了一组 AirPods 3 仿品的开箱视频,并将其与苹果其他 AirPods 系列产品进行比较. 每次 ...

  4. 程序员博主被喷上热搜,天天以泪洗面

    请问敖丙被喷上热搜是一种什么样的体验? 谢邀,人在贵州,刚下飞机. 最近有小伙伴也看到了我被喷上了脉脉热搜,最高的时候热度一度控制不住. 十一假期刚刚开始,在老家的我,我还没来得及好好看看贵州的风景, ...

  5. 原力计划S5上榜博主名单公布(第四期已更新)

    原力计划S5第一周期上榜博主名单已出炉.还请原力计划博主到此查看获奖名单,往后每期上榜名单都将在此文章更新. 第一期上榜名单(3月14日-3月26日) 顺序并非排名,活动无具体排名 用户昵称 博客文章 ...

  6. 8岁网红博主蝉联YouTube收入榜第一,今年赚了1.8亿

    前有8岁程序员走红B站,后有8岁的油管博主直接登上福布斯. 12月18日,福布斯杂志公布了YouTube频道上收入最高的博主榜单. 万万没想到,年仅8岁的Ryan Kaji竟成为该平台上收入最高的创作 ...

  7. 因为修苹果电脑太贵,美国人自学当上百万粉博主,网友:坐标深圳,不存在这问题...

    杨净 发自 凹非寺 量子位 报道 | 公众号 QbitAI MacBook坏了,怎么办? 修呗!还能换了咋地. 最近,一位网友与苹果MacBook之间的"抗争"故事,在国外火了. ...

  8. #我要上首页# 新版博客首页来了,做明星博主还会远吗?

    千呼万唤始出来,新版博客首页终于如期与大家相见了! 这一次首页改版,除了发布全新LOGO,提升UI视觉体验外,更重要的是我们开疆扩土,增加了很多新分类,同时极大的开拓了原创文章的展示空间! 那么问题来 ...

  9. 原力计划·精英季来了!第一周周榜揭晓,你喜欢的博主上榜了吗?

    粉丝认可的,才是有价值的. 秉承着这一原则,CSDN重磅开启了原力计划·第三季-精英季! 本次原力计划首次通过邀请制,邀请优秀博主们加入.在活动期间,持续创作出专业.有深度.有趣的文章.CSDN不仅给 ...

最新文章

  1. linux使用世界时间,linux世界里的时间
  2. java 右键菜单_界面操作--添加右键菜单
  3. cad在哪里设置图幅大小_一看就懂!菜鸟也能快速入门CAD,关键掌握这4个诀窍...
  4. 使用Spring Boot和Logback登录到Redis
  5. opencms mysql_OpenCms for MySql安装图解
  6. 2016年6月 之 《设计模式》
  7. Hive操作语句实例讲解(帮助你了解 桶 bucket)
  8. wrapper php,PHP流Streams、包装器wrapper概念与用法实例详解
  9. 批量获取ip运营商_关于获取运营商的IP地址
  10. Nginx源码分析 - 基础数据结构篇 - 字符串结构 ngx_string.c(08)
  11. OC NSNumber NSValue
  12. js百度地图小车html,百度地图web开发(基于javascript)
  13. 1.2 安装 docker 容器并配置镜像加速器
  14. php laravel 图片下载
  15. 模拟电路全系列复习题 恶补知识点
  16. 中国航空标准件市场运行动态分析及十四五发展规划研究报告2022年版
  17. bigdecimal如何做除法_bigdecimal类型除法问题
  18. 怎么禁用计算机usb驱动,u盘驱动程序被禁用怎么办
  19. Cookie.js 源码解析
  20. 浅谈面向对象和面向过程

热门文章

  1. 在 react 中添加enter键出搜索
  2. android 通知栏授权,Android 消息通知栏Notification使用和权限
  3. 【渝粤教育】国家开放大学2018年秋季 1046t金融学 参考试题
  4. Nano Measurer 1.2.5 for win 纳米颗粒粒度分析
  5. ion orphaned memory
  6. 2018下半年计算机学科竞赛,2018年度下半年五大学科竞赛,其他赛事时间预告高一高二请收好,不要错过报名.doc...
  7. Win10下运行红色警戒2
  8. linux 硬盘报错日志,Linux内核I/O系统报错日志与硬盘故障对应关系
  9. 迷途emlog模板全站好看的变色模板源码
  10. webrtc Native C++视频旋转/裁减/绿屏问题