搜尋

阿爾比恩

返回清單
切換到指定樓層
通知這文章過時或找檔案 發表主題

阿爾比恩OL Albion 自動採集石頭+木材+農作物 視覺演算輔助機器人

[複製連結]
1
b412364841 ( Lv.50 智天使 ) 發表於 2023-3-4 12:30:17 | 只看該作者 |只看大圖 回覆獎勵 |降序瀏覽 |閱讀模式
lXqJVur.jpg


RUbVcxE.jpg




影片演示
youtube
外連至此YOUTUBE影片連結



您好,這並不是一個非常優化的機器人,但它運作得還算不錯。

這是使用YOLOv5和OpenCV製作的。該模型使用CPU運作,如果您知道如何使用PyTorch,可以實現GPU處理以獲得更好的性能。但您可以將此代碼用作任何類型的PVE(不太依賴高FPS)機器人的範本。您可以使用自己的.pt檔案加載自己的自定義YOLO模型。
我還在研究如何操作源代碼以新增自己的自定義機器人動作並使用自己的數據集來訓練模型的完整指南。現在我建議您按照此教學進行自定義訓練。

這是使用Python運行的,您需要按照以下步驟運行它:
1. 前往GitHub並克隆存儲庫(下載檔案)。

GITHUB 原始碼


所有站內附件皆會附上安全掃描報告
請會員查看純淨度百分比後判斷使用



相關檔案須知:
取得檔案前,請先詳細閱讀文章內容
避免不必要錯誤與誤會發生。
也可多參考文章討論樓層內容
了解附件檔案相關討論資訊。






2. 安裝Anaconda。
https://www.anaconda.com/products/distribution

在Anaconda提示命令符處 使用以下命令創建一個Python 3.8環境:
  1. conda create -n "myenv" python=3.8
複製代碼
(您可以為env選擇任何名稱)

3. 啟用環境,打開下載機器人源代碼的目錄。運行以下行安裝所有依賴項:
  1. pip install -r requirements.txt
複製代碼
4.
現在,您可以通過使用conda環境運行main.py檔案:
  1. conda activate myenv
複製代碼
接著是:
  1. python main.py
複製代碼
5.
機器人的默認窗口螢幕尺寸為1024x768解析度,並將遊戲移動到螢幕的左上角。但您可以使用任何解析度,並在代碼中調整兩個變量。說明在本帖結尾處。
祝您使用愉快!

注意:機器人和視覺是獨立的,您可以在未啟用計算機視覺功能的情況下運行機器人。該模型始終在後台運行。

我用於機器人操作的熱鍵有點尷尬,因此我建議在阿爾比恩中解除綁定它們,這樣您就不會在遊戲中經常打開菜單。

可惜我無法成功將代碼編譯為.exe以方便使用,因此目前這就是我得到的。

Update: 更新

新增了一個調整大小的功能,以便機器人的視覺可以僅在一個顯示器上使用。轉到functions.py檔案,您可以在那裡修改尺寸。只需記住在以下代碼開頭刪除“#”即可:
  1. #resized = cv2.resize(frame, (720,480), interpolation = cv2.INTER_AREA)
複製代碼
  1. def toggle_vision(vision_status, frame):
  2.     if vision_status:
  3.         #resized = cv2.resize(frame, (720,480), interpolation = cv2.INTER_AREA)
  4.         cv2.imshow("Matches", resized)
  5.     else:
  6.         cv2.destroyAllWindows()
複製代碼
調整機器人識別圖像的大小(我建議使用自己的解析度以避免被檢測到)(此外,更高的解析度可能會影響性能)。轉到window_capture.py檔案的第25和26行,然後輸入您的遊戲解析度即可。
  1. self.w = 1024 #Width
  2. self.h = 768 #Height
複製代碼
Q&A

對於我來說,當我啟用視覺時,它並不起作用,我得到了像這樣的結果
O4MGELd.jpg

然後啟用機器人時,它只是在隨機點擊螢幕。我的螢幕解析度是1366x768,我在遊戲設置中使用1024x768的窗口模式。

這可能是因為視覺螢幕大小與您的實際螢幕大小不匹配。請確保您已按照先前的說明中的指示修改了視覺螢幕大小,以與您的螢幕大小匹配。此外,您可以在functions.py檔案中找到resize_screen函數,嘗試調整大小以適應您的螢幕。此外,也請確保您的遊戲窗口與螢幕的左上角對齊。


Q2

我有兩個問題,請問Python 3.8.5可以代替3.8使用嗎?另外,Anaconda並不是必需的,對嗎?我認為這是對的,但是在沒有使用Anaconda的情況下,性能似乎不是最佳的。

答:是的,Python 3.8.5可以代替3.8使用,因為它們之間沒有太大的區別。而且,Anaconda並不是必需的,但它可以提供一個方便的環境管理器和許多有用的庫。性能問題可能與您的電腦組態有關,而不是Python版本或使用Anaconda與否。


Q3

"pip install -r requirements.txt" 的錯誤訊息可能有兩個原因:一是您沒有安裝Python或系統變數未設置(可以嘗試重新安裝Python),或者您沒有在requirements.txt文件所在的文件夾中運行該命令。

至於建議,您可以考慮從pyautogui轉換到pywinauto,這樣您就可以使用遠程執行,讓滑鼠不會一直被佔用,並且可以在另一個顯示器上實時觀看。


Q4
這個機器人在屏幕上找不到任何東西,即使屏幕上有很多可以收集的東西,它仍然會顯示“無結果”。


確保遊戲以1024x768的視窗模式運行。

確認機器人在螢幕上尋找正確的對象。您可以修改識別圖像或調整代碼中的對象檢測算法的參數。

檢查機器人是否在螢幕上的正確位置運行。如果遊戲視窗不在螢幕的左上角,機器人可能無法找到對象。

確保機器人有必要的權限訪問遊戲視窗。在某些操作系統上,這可能需要將機器人作為管理員運行。

最後,通過在不同的螢幕或不同的遊戲中測試它來檢查機器人是否正常工作。這將有助於確定問題是特定於遊戲還是機器人本身。














評分

參與人數 1GP +1 收起 理由
xiaoxer2012 + 1 樓主佛心耶 但我有疑問 有加您好有了

檢視全部評分




大家正在看啥


收藏收藏 分享文章到FB上分享
回覆 使用道具 檢舉
複製專屬你的推廣連結:發至FB與各論壇宣傳:累積點數換GP商品 & 藍鑽
每五點閱率就可以兌換藍鑽積分或遊戲點卡 夢遊推廣文章換GP商品
2
xiaoxer2012 ( Lv.10 見習生 ) 發表於 2023-3-31 17:41:37 | 只看該作者
您好 有發送交友給您 請您查看一下
回覆 使用道具 檢舉

你需要登入後才可以回覆 登入 | 加入會員

本版積分規則

Copyright (C) 2010-2020 夢遊電玩論壇

廣告合作:請直接聯繫我們,並附上您預刊登位置的預算。  

快速回覆 返回頂端 返回清單