相信大家重溫《復仇者聯盟》的時候,都會被鷹眼的箭藝所震懾。但現實中一個普通人是否可以擁有鷹眼般的神技呢 ? 任職工程師父的 Shane,在去年開設了 Youtube 頻道 Stuff Made Here,展示自己的創作及設計能力,除了自動理髮器、爆炸斧頭等作品,今次他要製作一個能自動瞄準的弓箭,用來向學習射箭已經有數年的老婆挑戰…
當然,要將鷹眼那樣,可以輕鬆命中高速移動的目標,相信只能荷里活特技才可以。而現實中 Shane 先把「射擊固定靶」作為首個目標。Shane 表示拉弓射箭時,要擊中目標,會有一個瞄準的過程,就好似槍械需要透過即瞄點、準星、眼睛三點成一直線,然後弓箭就是對上靶子的延長線。當然射箭還需要計算風向、風速、射程、拉弓力度等等因素…
要令弓箭可以自動瞄準,當然需要為它裝上「眼睛」,那是一套 OptiTrack 的動態捕捉套裝,用作弓、箭、靶子的定位,然後利用 Python 編寫程式,進行對物體的跟蹤定位工作。這套動態捕捉系統可以做到 50 fps 的掃描效率,理論上只要他舉弓向著目標,這把弓都能瞄準靶心。
當然機械人和真實箭手在開始時間會有相當差距,例如,初試時,箭支每次射出都會往左上方偏移,原來是程式碼的問題,只要小小修改就可以。在修正之後,準度已經可以有初學者的水平,至少沒有脫靶。
不過,當開始攻克「移動靶」的時候,問題就開始出現,首先是舊有的自動瞄準編程,因為有大多 Bug,所以無法直接套用在「移動靶」上,所以 Shane 需要從頭開始編寫新的程式碼。並為新系統加入機器學習,讓每一次射擊都成為訓練自瞄弓的素材,懂得不斷修正箭道。
而最後 Shane 發現目前使用的反曲弓,當放箭後箭尾產生左右搖擺的動作,大大影響準確度。最後,他改用專業的複合弓,成功解決箭尾搖擺的問題。不過由於複合弓很重,所以 Shane 需要為特制一套可穿在身上的外骨架套裝,用於固定複合弓。最終有了這套裝備,他成功擊中移動中的目標,甚至可以命中假人頭上的蘋果。