2011-12-03 27 views
0

我目前正在研究如何做這件事。想要創建一個基於在線Java遊戲的機器人

我需要一個程序來讀取我的計算機屏幕(像素,邊緣等),我認爲可能會工作的答案是opencv。然而,我所看到的有關opencv的所有內容都是從攝像機讀取的,而不是從計算機屏幕讀取的。是否有可能錄製屏幕並以與我在opencv中使用攝像機相同的方式使用它?

如果有的話,任何人都可以點我看看這個?到目前爲止,我還沒有找到適用於我所尋找的任何示例

編輯:我不想找人爲我寫代碼。我只是問是否可以使用屏幕作爲opencv的視頻源。我不熟悉opencv,也沒有使用過它。

+2

1)作弊不好2)爲什麼不從遊戲的內存中讀取遊戲狀態?第二個就是 –

+1

。解析整個屏幕以獲取一些信息,已經在內存中的某處可用,這是一個非常糟糕的主意。如果遊戲編寫的是java,則可以自由修改其代碼並重新編譯它。最好的方法是在java中編寫一個加載程序,以管理正在運行的遊戲。 –

+0

在這裏看到我的答案: http://stackoverflow.com/questions/1032489/how-can-a-program-control-another-program/1032530#1032530 –

回答

1

系統是否必須使用OpenCV和C++?我知道,Java可以做到這一點很容易利用其內置它的機器人類的代碼之中:

try { 
    Robot robot = new Robot(); 
Rectangle captureSize = new Rectangle(0, 0, 500, 500); 
    BufferedImage bufferedImage = robot.createScreenCapture(captureSize); 
} 
catch(AWTException e) { 
    System.err.println("Error"); 
} 

如果你真的想使用的OpenCV和C++,你可以通過JNI連接到他們,但是這很可能會使得生活困難比它需要。

相關問題