這個計畫是我所在大學達姆施塔特工業大學 VR/AR 課程的一部分。該專案的目的是開發一個自動飛鏢計分器應用程序,兩個玩家可以玩飛鏢遊戲,而無需專注於計分。該應用程式使用 OpenCV 作為電腦視覺部分,使用 Pyside2 作為 GUI。
我們使用校準的網路攝影機捕捉視訊串流並使用 OpenCV 對其進行處理,以提取板上的飛鏢並追蹤玩家。
完整的檢測管道如下圖所示:
此流程圖總結了整個流程(目前僅提供德語):
您將需要:
將標記放置在飛鏢周圍,如下圖所示,並確保它們可見。將網路攝影機放置在飛鏢靶前約 1 公尺遠且稍微偏右的位置,這樣就不會妨礙投擲飛鏢。
重要提示:您需要良好的照明才能獲得良好的效果。只有飛鏢靶正上方的照明是不好的。最佳的選擇是帶有擴散器的環形燈,如下所示:
我們遇到了一些問題,電路板的晃動會在偵測中引起噪音。我們透過 3D 列印電路板安裝座解決了這個問題:
只需克隆存儲庫並運行以下命令:
pip install -r requirements.txt
首先您需要校準相機。這可以透過校準腳本來完成。然後你可以啟動main_with_gui.py。圖形使用者介面如下所示: