<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          耗時(shí)2天,我自制了一臺(tái)體感游戲機(jī)

          共 2471字,需瀏覽 5分鐘

           ·

          2022-05-16 01:06

          零基礎(chǔ)python入門教程:python666.cn


          大家好,歡迎來(lái)到 Crossin的編程教室~


          幾天不見(jiàn),Crossin 又去做什么游戲去了呢?這次我做的不是游戲,而是游戲機(jī)!而且是體感游戲機(jī)



          說(shuō)到體感游戲,現(xiàn)在大家可能最多想到的是 switch 上的健身環(huán)大冒險(xiǎn)。



          但往前幾年,其實(shí)還有另一個(gè)非常火的體感游戲設(shè)備,就是 xbox 上的 kinect。和 switch 用帶有傳感器的手柄來(lái)識(shí)別玩家動(dòng)作不同,kinect 使用的是一組攝像頭,通過(guò)圖像來(lái)識(shí)別玩家的動(dòng)作。



          我這次做的 demo,就是一個(gè)使用攝像頭的動(dòng)作識(shí)別系統(tǒng)。理論上來(lái)說(shuō),這個(gè)識(shí)別系統(tǒng)只需要普通的電腦和普通的攝像頭就可以運(yùn)行。不過(guò)我最近正好拿到一樣好東西,它可以讓我這次的開(kāi)發(fā)效率和運(yùn)行效率都大大提高。



          這就是我說(shuō)的好東西,全名是 Jetson AGX Orin,是 NVIDIA 的AI邊緣計(jì)算設(shè)備。什么叫做邊緣計(jì)算,簡(jiǎn)單來(lái)說(shuō)就是對(duì)于數(shù)據(jù)的處理盡可能和產(chǎn)生數(shù)據(jù)的應(yīng)用在一起。比如像機(jī)器人、像自動(dòng)駕駛。這種場(chǎng)景對(duì)計(jì)算的實(shí)時(shí)性要求高,不好說(shuō)把數(shù)據(jù)傳到計(jì)算中心,靠機(jī)房的大家伙們處理完再把結(jié)果返回給設(shè)備。所以對(duì)于邊緣計(jì)算設(shè)備來(lái)說(shuō),一是要計(jì)算能力夠強(qiáng),二就是要足夠小,不僅是體積小,而且要能耗小。


          這款 AGX Orin 就是 NVIDIA Jetson 系列的最新款。新到什么程度,就是目前市面上還沒(méi)有現(xiàn)貨可以買,只能預(yù)定。所以我這臺(tái)可以說(shuō)是一個(gè)全球限量版。和之前上一代 Jetson AGX Xavier 相比,它的性能提升到了8倍,可達(dá)到每秒 275 萬(wàn)億次計(jì)算。這個(gè)程度已經(jīng)相當(dāng)于內(nèi)置了GPU的服務(wù)器,而它的大小則小到可以托在手掌上。



          除了強(qiáng)大的硬件之外,這里面自然也少不了 NVIDIA AI 相關(guān)軟件的支持。并且對(duì)于大多數(shù)常見(jiàn)AI應(yīng)用,比如人臉識(shí)別、物體識(shí)別、動(dòng)作識(shí)別、自然語(yǔ)言處理、語(yǔ)音合成等等等等,它都提供了一些預(yù)訓(xùn)練好的模型。這個(gè)簡(jiǎn)直太方便了。


          開(kāi)機(jī)安裝好 JetPack 開(kāi)發(fā)套件,這里就有了很多可以運(yùn)行的測(cè)試程序來(lái)讓你體驗(yàn)。官方文檔里也提供了很多示例來(lái)幫助開(kāi)發(fā)者上手。


          這里是我運(yùn)行視覺(jué)和對(duì)話式AI基準(zhǔn)測(cè)試的結(jié)果:




          可以看到跟上一代產(chǎn)品相比有非常顯著提升:



          在官方的 Hello AI World 里,也提供了一些 demo。




          比如物體識(shí)別,識(shí)別一幀畫(huà)面只需要十幾毫秒,完全可以用在實(shí)時(shí)的視頻監(jiān)控,甚至正在進(jìn)行的游戲當(dāng)中。



          還有這樣一個(gè) demo:



          好家伙,這不我一半的工作量已經(jīng)完成了嘛。


          拿到人體姿態(tài)數(shù)據(jù)之后,我們就可以用各種動(dòng)作對(duì)應(yīng)的數(shù)據(jù)來(lái)訓(xùn)練一個(gè)分類器。然后通過(guò)分類器來(lái)識(shí)別攝像頭實(shí)時(shí)拍攝到的用戶姿態(tài),判斷出動(dòng)作。再根據(jù)識(shí)別出的動(dòng)作,向系統(tǒng)發(fā)送鍵盤(pán)指令。這樣就完成了一個(gè)簡(jiǎn)單的基于人體動(dòng)作的交互系統(tǒng)。



          在 NVIDIA 智能物聯(lián)網(wǎng)的 github 倉(cāng)庫(kù)里,我發(fā)現(xiàn)了一個(gè)類似的項(xiàng)目,用手勢(shì)去操作瀏覽網(wǎng)頁(yè)。


          https://github.com/NVIDIA-AI-IOT/trt_pose_hand


          里面使用 SVM 支持向量機(jī)來(lái)訓(xùn)練手勢(shì)分類器,這個(gè)用到 Python 的 scikit-learn 模塊。我們的第二部分也可以用同樣的方法,只不過(guò)我們使用的是人體全身模型。


          為了訓(xùn)練出分類器,我們需要一點(diǎn)樣本數(shù)據(jù)。



          之后,就是通過(guò) pynput 模塊發(fā)送鍵盤(pán)制令。



          將以上這些全部合在一起,就得到了我們想要的功能:


          一個(gè)可以用動(dòng)作來(lái)玩游戲的系統(tǒng)




          ?對(duì)于 Orin 來(lái)說(shuō),用在這個(gè)項(xiàng)目上其實(shí)有點(diǎn)大炮打蚊子了,因?yàn)樽藨B(tài)判斷和動(dòng)作識(shí)別用的都是預(yù)訓(xùn)練模型,實(shí)時(shí)的計(jì)算量并不算大。但它的軟件環(huán)境和開(kāi)發(fā)社區(qū)資源確實(shí)大大提升了我這次的開(kāi)發(fā)效率。


          唯一不足的就是從我家的網(wǎng)絡(luò)連 github、apt、pip 都太慢了,以至于花了不少時(shí)間在環(huán)境安裝上,如果相關(guān)資源能有一套國(guó)內(nèi)鏡像就更好了。


          最后有一個(gè)小彩蛋,你們是否留意到我用來(lái)演示的游戲 KOF97。在2009年,也就是 kinect 正式發(fā)布的前一年,我做的碩士畢業(yè)設(shè)計(jì),其實(shí)就是:使用單攝像機(jī)的人機(jī)交互系統(tǒng)

          而在其中的動(dòng)作識(shí)別部分,用的同樣也是 SVM 支持向量機(jī)。在答辯時(shí),我用的演示游戲,就是 KOF97



          在論文最后的工作展望里,我曾寫(xiě)到:


          沒(méi)想到,在13年后,我自己把這個(gè)坑填上了。這不禁讓我又想到喬布斯曾說(shuō)的:

          相信我們生命中曾經(jīng)經(jīng)歷的那些點(diǎn),將在未來(lái)的某一天以某種方式串連起來(lái)。
          史蒂夫·喬布斯


          本文代碼基于NVIDIA官方示例修改:

          https://github.com/NVIDIA-AI-IOT/trt_pose_hand


          運(yùn)行環(huán)境:

          NVIDIA Jetson AGX Orin

          JetPack 5.0

          Python 3.8.10


          代碼已開(kāi)源,獲取代碼請(qǐng)?jiān)诠娞?hào)“Crossin的編程教室”回復(fù)關(guān)鍵詞:

          動(dòng)作識(shí)別


          感謝轉(zhuǎn)發(fā)點(diǎn)贊的各位~

          _往期文章推薦_

          病毒傳播模擬實(shí)驗(yàn)2-清零還是共存?




          如需了解付費(fèi)精品課程教學(xué)答疑服務(wù)
          請(qǐng)?jiān)?strong style="max-width: 100%;overflow-wrap: break-word !important;box-sizing: border-box !important;">Crossin的編程教室內(nèi)回復(fù): 666

          瀏覽 80
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  精品国产色区 | 爱骚逼自拍偷拍精品视频 | 成人大香蕉 | 国产一区二区三区免费播放 | 撸一撸在线播放 |