來自開發者

找 AI 陪你練網球

看 Swupnil Sahai 將人工智慧帶進球場


‣ 公司:Mangolytics
‣ 創辦人:Swupnil Sahai 與 Richard Hsu
‣ 任務:讓大家都能體驗專業級網球比賽
‣ 發行年:2016 (Apple Watch 版)、2019 (iPhone 與 iPad 版)
‣ 開發團隊規模:七人
‣ 代表 emoji:🎾


在 Swupnil Sahai 著手開發《SwingVision: A.I. Tennis App》(以下簡稱《SwingVision》) 時,雖然已經擁有豐富的網球經驗,但卻還沒寫過任一行程式碼。他說:「我想跟專業球員一樣掌握相關的統計數據和分析資料。開發靈感就是這麼來的。」

這款 App 不但是你的虛擬網球教練,也能為你捕捉精彩片段。你只要將 iPhone 或 iPad 相機對準你打球的範圍,《SwingVision》就會顯示你的球速、是否穩定擊球,並告訴你該如何調整姿勢和腳步。

無論是錯失的反手拍或是精彩的回擊,這款 App 都能幫你捕捉記錄下來。Sahai 說:「我常常找出自己最好的五次拉鋸對攻,然後跟親友分享。」即將推出的新版本 App 甚至能負責線審的工作。

我們訪問了這位來自加州的開發者,和他聊聊以 Swift 寫程式碼的方便之處、網球計分的奇妙之處,以及他協助前職業好手 Andy Roddick 找到他 iPhone 的時刻。

你可以透過《SwingVision》清楚記錄擊球落點、最長拉鋸對攻,以及其他資料點。

現在《SwingVision》是以最先進人工智慧 (AI) 輔助的運動 App 之一,但你剛開始卻完全沒有寫程式的經驗?
是的,基本上我是自學 Swift 程式語言,這樣我才能讓 Apple Watch 的 App 追蹤我的每一拍並紀錄分數。在 Swift 剛推出的時候,我還在哥倫比亞大學 (Columbia University) 讀博士。Swift 看起來比 Objective-C 還更容易上手,所以我想:「或許可以自己學會。」Swift 真的很棒,對所有嘗試學寫程式語言的人來說,它是絕佳的第一個入門語言。

你是如何將 App 從 Apple Watch 轉移到 iPhone 上的?
我畢業後曾從事自動駕駛相關的工作,要運用 AI 追蹤汽車和行人,因此也精通了電腦的機器視覺。還在職時我就想過:「說不定可以應用在網球上。」當時 Apple 正在做仿生晶片的 iPhone,非常厲害,我就覺得這想法應該可行。Apple Watch 是《SwingVision》必不可缺的一環,再搭配 iPhone 的相機,更為這款 App 帶來更多可能。

目前為止的最大挑戰是什麼?
大概在一年半前,我們在開發能以單一相機追蹤擊球的 AI。大部分的機器學習模型都是在電腦上模擬訓練再轉成 Core ML,才進一步在 iPhone 上執行。當時轉換的步驟不太順利,我們都有點慌:「我們大概搞不定了!這公司要倒了!」接下來幾個禮拜我們一直找論壇爬文想找到修正方法,結果就只是一行程式碼出了問題。我們在電腦上用 Python 改掉一行程式碼後再轉換,接著一切運作無虞。

《SwingVision》會自動捕捉你在場上的精彩畫面。

職業網球好手 Andy Roddick 和 James Blake 也投資了這款 App,跟我們聊聊始末?
跟你說個故事:James 是我遇上的第一個職業好手。那是在德州的一場表演賽,當時 Andy Roddick、John McEnroe 和 Jim Courier 也在場。我趁著大夥在更衣室的時候介紹了 App,其中 Andy 最是興致勃勃。不過我覺得真正讓他買帳的是個意外:當時他正要去趕飛機,但怎麼都找不到他的 iPhone。James 撥到 Andy 的手機,但不巧手機又是靜音狀態。然後我就說:「只要你登入『尋找我的 iPhone』,它就會幫你定位 iPhone。」然後他說:「真的嗎?有這種事?」我們就是那樣找到他的 iPhone 的。

你覺得《SwingVision》的發展走向?
目前這款 App 在俱樂部會員之間最受歡迎,其中的成年人大概每週都會比賽一次。不過 App 主要是針對想要記錄自己成績的人所設計。我們發現有越來越多高中球員,還有和朋友享受網球樂趣的人在用,而這對我來說就是絕佳機會:我們該如何教別人打網球?能如何自動計算分數,而且還要能讓所有人輕鬆看懂?因為網球的計分系統真的很奇怪 (大笑)。運動場上幾乎都有裁判。棒球比賽有裁判,中學籃球賽也有裁判。但是我們打網球時卻都是自己來,像是判定壓線和計分等,這其中蘊藏了極大的需求。我們不是要取代原有的規則,而是想讓網球變得更平易近人。

Mangolytics 已經加入「App Store 小型企業方案」。如果同是開發者的你也想申請,歡迎點按下方連結。