當前位置:
首頁 > 科技 > 三行代碼實時追蹤你的手,只要有瀏覽器就夠了

三行代碼實時追蹤你的手,只要有瀏覽器就夠了

栗子 發自 凹非寺

量子位 報道 | 公眾號 QbitAI

「Are You OK?」

「O!K!」

人臉不管做了多麼一言難盡的表情,五官也不太會四處亂跑。

手就不一樣了,手勢百媚千嬌,鏡頭看到的畫面就百媚千嬌。

所以,AI怎麼識別手呢?

一位叫做Victor Dibia的程序猿說,「三行代碼」就能實時追蹤你的手,只要有個瀏覽器

你還可以用手在屏幕上塗鴉,成為實至名歸的靈魂畫「手」:

Victor說,只要召喚出他的Handtrack.js庫,模型便可以在網頁上跑起來。

他還提供了線上Demo給大家玩耍。

十魔亂舞

進了Demo,按下開始檢測的按鈕,打開攝像頭,就可以放飛自我了。

在下的手不甚優美,但還是忍不住亂舞了好一陣子。

手指自由揮舞,邊框就敏捷地跟隨。

除了隨性活動手指之外,還嘗試了一下狼人夜間的戰術交流:

翻譯一下:你,起跳預言家,給8號發個查殺。

(作為一個菜雞玩家,通常夜裡是輪不到我分配工作的,此處純屬藉機過癮。)

書歸正傳,手勢頻繁變換,AI依然緊追不捨

除了打叉叉的時候,只識別了一隻手。也許是因為手的側面朝著屏幕,面積小,不容易識別吧。

如果你伸了兩隻手,AI卻畫了三個邊框,可以調整一下左邊的滑動條:

這是置信閾值 (Confidence Threshold) ,默認0.7,分值高於0.7就會認定是手,顯示出邊框;如果調高到0.8,那些得分0.7的疑似人手,就不會顯示邊框了。

除此之外,Demo也有塗鴉功能:

鑒於在下繪畫功力有限,略去動態展示,大家可以自己去畫一波。

模型如何食用?

Handtrack.js庫,是程序猿用TensorFlow.js搭起來的。

裡面的模型是用Egohands數據集養成,4800張人手的圖片,背景有室內也有戶外。

有了它,就不用自己訓練模型了。直接拿來用,方法有兩種:

第一種方法是在腳本標籤 (Script Tag) 里,填上它的URL:

把腳本標籤添加到html頁面之後,就可以用handTrack變數來引出這個庫了:

上面這幾句代碼,是給手加了邊框。只要提交每一幀視頻,就可以追蹤裡面的手了,不論是攝像頭實時拍攝的,還是已經拍好的視頻。

第二種方法,是把這個庫當做一個NPM包來安裝:

然後,從NPM導入就可以了。

Victor說,大家可以用這個方法,來開發自己喜歡的應用。比如,做個遊戲:

One More Thing

這個模型是訓練好了。

但Victor說,也不是不讓大家訓練。

還說,想自己養成一隻實時手部追蹤模型的同學們,可以參照這個項目 (600星) :

https://github.com/victordibia/handtracking

最後,送你Handtrack.js庫的源代碼:

https://github.com/victordibia/handtrack.js

線上Demo傳送門:

https://victordibia.github.io/handtrack.js/

Egohands數據集:

http://vision.soic.indiana.edu/projects/egohands/

訂閱AI內參,獲取AI行業資訊

購買AI書籍

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。

喜歡就點「好看」吧 !


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 量子位 的精彩文章:

德國學者給CNN潑冷水:圖像分類策略太簡單,提高準確率全靠調參
谷歌大腦發現神經網路的「牛頓法」:網路足夠寬,就可以簡化成線性模型

TAG:量子位 |