一、準(zhǔn)備工作
Windows電腦端安裝拳皇游戲
(因?yàn)槭前存I模擬,理論上只要是按鍵控制的游戲都可以玩,本文用MAME模擬器作例子,下載MAME:MAMEdev.org | Home of The MAME Project)
Windows可直接從該目錄下載,下載完成后需先解壓,解壓完成即可看到啟動(dòng)程序。
現(xiàn)在,我們已經(jīng)搞定了模擬器,還需要有游戲的roms才能運(yùn)行,大家可以自行在網(wǎng)上找各種資源(相關(guān)資源點(diǎn)擊文末鏈接即可獲取)。
下載之后,將下載的zip文件直接放到剛才解壓出來文件夾下面的roms下面。接下來,在剛才解壓出來的文件夾目錄下,在地址欄輸入cmd,回車。
在彈出的命令行里,輸入“mame -keyboardprovider win32 sfiii3nr1”,即可啟動(dòng)游戲。
查看操控按鍵的信息,可以按下按鍵,彈出設(shè)置界面,選擇(雙擊或者回車)Input Settings,Input Assignments(this system),就可以看到所有的按鍵介紹,例如kbd up就是鍵盤的向上按鍵。修改某個(gè)按鍵,雙擊或回車,然后輸入新的按鍵即可。
這里有一點(diǎn)需要注意,游戲默認(rèn)的按鍵和代碼中給的按鍵有部分不同,需要提前修改。可按照以下對(duì)應(yīng)關(guān)系修改按鍵。
ACTION2KEY = { 'COIN_P1': '5', 'COIN_P2': '6', 'P1_START': '1', 'P2_START': '2', 'P1_JPUNCH': 'L-CTRL', 'P2_JPUNCH': 'A', 'P1_RIGHT': 'RIGHT', 'P2_RIGHT': 'G', 'P1_LEFT': 'L', 'P2_LEFT': 'D', 'P1_DOWN': 'DOWN', 'P2_DOWN': 'F', 'P1_UP': 'UP', 'P2_UP': 'R', 'P1_SKICK': 'L-SHIFT', 'P2_SKICK': 'W', }
Windows電腦端啟動(dòng)信號(hào)接收程序
由于Windows電腦的MAME沒法用腳本控制(ubuntu可以使用mametoolkit控制),所以只能用通過模擬按鍵的形式來控制游戲。腳本如下,啟動(dòng)命令為:
python3 your_python_file --ip your_ip #代碼可閱讀全文獲取
旭日X3派運(yùn)行人體檢測(cè)代碼
由于街頭霸王游戲動(dòng)作太過于激烈,所以對(duì)人體骨骼檢測(cè)的實(shí)時(shí)性要求也很高,目前市面上能做到又準(zhǔn)確、又實(shí)時(shí)、價(jià)格也便宜的,就地平線的旭日X3派,不多說,直接開搞。
首先,先確保你有一塊旭日X3派,以及攝像頭(最好是usb的,線比較長(zhǎng)一點(diǎn)),本文也將借助地平線機(jī)器人開發(fā)平臺(tái)上的手勢(shì)識(shí)別算法。
機(jī)器人開發(fā)平臺(tái)的手勢(shì)識(shí)別算法,目前只支持mipi輸入,不能使用usb相機(jī)作為輸入。可以通過修改ros的config文件實(shí)現(xiàn)這個(gè),打開/opt/tros/share/hand_gesture_detection/launch/hobot_hand_gesture_detection.launch.py。mipi原來的節(jié)點(diǎn)(如下圖):
兩個(gè)node節(jié)點(diǎn)替換為usb相機(jī)的節(jié)點(diǎn)即可:
代碼如下:
# usb cam圖片發(fā)布pkg Node( package='hobot_usb_cam', executable='hobot_usb_cam', name='hobot_usb_cam', parameters=[ {"frame_id": "default_usb_cam"}, {"image_height": 480}, {"image_width": 640}, {"zero_copy": False}, {"video_device": "/dev/video8"} ], arguments=['--ros-args', '--log-level', 'error'] ), # nv12圖片解碼&發(fā)布pkg Node( package='hobot_codec', executable='hobot_codec_republish', output='screen', parameters=[ {"channel": 1}, {"in_mode": "ros"}, {"in_format": "jpeg"}, {"out_mode": "shared_mem"}, {"out_format": "nv12"}, {"sub_topic": "/image"}, {"pub_topic": "/hbmem_img"} ], arguments=['--ros-args', '--log-level', 'error'] ),
另外,還需要將websocket的監(jiān)聽節(jié)點(diǎn),從"/image_jpeg" 改成"/image",就可以使用usb相機(jī)作為手勢(shì)檢測(cè)的輸入了。
其次,安裝了地平線機(jī)器人開發(fā)平臺(tái)的軟件包(apt install tros),能夠跑起來。
最后,請(qǐng)將這個(gè)python文件下載到你的旭日X3派上。其中,第11行的ACTION2KEY 一定要和上文安裝拳皇游戲時(shí)游戲控制保持一致,否則發(fā)送的按鍵不被識(shí)別。
相關(guān)資源點(diǎn)擊文末即可獲取
二、使用操作
具體操作步驟主要分為三步:
①在window電腦端,運(yùn)行前文下載的python文件(ip查詢:在cmd命令行輸入ipconfig,找到你的ip地址):
python3 your_python_file --ip your_ip
②啟動(dòng)游戲(啟動(dòng)之前,一定要先設(shè)置輸入法為英文模式),游戲啟動(dòng)命令如下:
mame -keyboardprovider win32 sfiii3nr1
③在旭日X3派上,先啟動(dòng)手勢(shì)檢測(cè)的示例,然后在另外一個(gè)終端運(yùn)行人體檢測(cè)的python腳本(注意:ip地址是你Windows電腦的ip地址,與第一步地址一樣);
python3 your_python_file --ip your_remote_computer_ip
三、手勢(shì)說明
本文轉(zhuǎn)自地平線開發(fā)者社區(qū)
原作者:lucky
-
人工智能
+關(guān)注
關(guān)注
1791文章
47350瀏覽量
238754 -
計(jì)算機(jī)視覺
+關(guān)注
關(guān)注
8文章
1698瀏覽量
46015
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論