客座博文,發(fā)布人:SignAll | MediaPipe 團(tuán)隊(duì)
請(qǐng)注意,以下內(nèi)容中體現(xiàn)的信息、用途及應(yīng)用完全是 SignAll 客座作者的觀點(diǎn)。
SignAll SDK:使用 MediaPipe 的手語(yǔ)接口現(xiàn)對(duì)開發(fā)者開放
當(dāng) Google 發(fā)布第一個(gè)基于 MediaPipe 的設(shè)備端手部追蹤技術(shù)時(shí),它便成為了開發(fā)者構(gòu)建手語(yǔ)識(shí)別解決方案應(yīng)用的基礎(chǔ)。Google 之后對(duì)這個(gè)手部跟蹤解決方案的進(jìn)一步更新,將其準(zhǔn)確率提升至其他技術(shù)所無(wú)法達(dá)到的水平。
SignAll 是一家研發(fā)手語(yǔ)翻譯技術(shù)的初創(chuàng)公司,致力于為失聰人士普及手語(yǔ)翻譯,讓他們能夠與聽力正常的人群以及計(jì)算機(jī)進(jìn)行交流。SignAll 的產(chǎn)品采用了復(fù)雜的多攝像頭設(shè)置和帶有彩色標(biāo)記的手套,廣泛用于美國(guó)的通信和教育領(lǐng)域。
雖然手語(yǔ)的復(fù)雜性不僅限于手形(還包括面部特征、肢體、語(yǔ)法等),但準(zhǔn)確追蹤手部確實(shí)已經(jīng)給預(yù)處理程序(即計(jì)算機(jī)視覺)造成了巨大阻礙。MediaPipe 為 SignAll 的解決方案提供了更多可能性,不僅能夠免除手套,還可以使用單攝像頭設(shè)置。SignAll 已經(jīng)宣布針對(duì)此類型開放首版 SDK,所以開發(fā)者現(xiàn)在能夠在自己的應(yīng)用中啟用手語(yǔ)輸入。
SignAll
https://www.signall.us/
開放首版 SDK
https://signall.us/sdk
近期,該公司在 App Store 上發(fā)布了一個(gè)互動(dòng)式教育應(yīng)用,該應(yīng)用可以讓用戶通過(guò)即時(shí)反饋來(lái)練習(xí)手語(yǔ),還能夠展現(xiàn)出 SDK 的潛力。
SignAll 與 MediaPipe Hands
我們的系統(tǒng)在手語(yǔ)識(shí)別方面采用多個(gè)數(shù)據(jù)層,各層數(shù)據(jù)的抽象性越來(lái)越高。低級(jí)數(shù)據(jù)層從 2D 和 3D 攝像頭中提取關(guān)鍵的手部、軀體和面部數(shù)據(jù)。在我們的第一個(gè)實(shí)現(xiàn)中,此數(shù)據(jù)層會(huì)檢測(cè)手套的顏色,并創(chuàng)建 3D 手部數(shù)據(jù)。將其替換為 MediaPipe Hands(MediaPipe Pose 和 MediaPipe Face Mesh 作為補(bǔ)充)具有顛覆性的重要意義,因?yàn)槟悴辉傩枰痔谆蛱厥夤饩€來(lái)使用我們的系統(tǒng)。
MediaPipe Hands
https://google.github.io/mediapipe/solutions/hands.html
MediaPipe Pose
https://google.github.io/mediapipe/solutions/pose.html
MediaPipe Face Mesh
https://google.github.io/mediapipe/solutions/face_mesh.html
如上文所述,我們使用了多個(gè)帶有深度傳感器的攝像頭,并在實(shí)際中對(duì)這些傳感器進(jìn)行了校準(zhǔn)。相較于本地?cái)z像頭或張量空間,這種方法能夠?qū)崿F(xiàn)更加準(zhǔn)確的 3D 世界空間探測(cè),但每個(gè)攝像頭都需要進(jìn)行手部特征點(diǎn)檢測(cè)。攝像頭的位置和屏幕方向各不相同,因此可以實(shí)現(xiàn)更高的手部可視頻率,因?yàn)閺囊粋€(gè)攝像頭的角度來(lái)看,手部可能會(huì)被另外一只手遮擋,但從另一個(gè)攝像頭的角度來(lái)看,可能并不存在遮擋。
接下來(lái)的步驟是過(guò)濾數(shù)據(jù),并進(jìn)行數(shù)據(jù)平滑處理,以復(fù)制彩色手套標(biāo)記提供的精確測(cè)量值。雖然 SignAll 的標(biāo)記與 MediaPipe 提供的界標(biāo)不同,但我們使用了手部模型并根據(jù)界標(biāo)生成彩色標(biāo)記。因此,新的動(dòng)作捕捉數(shù)據(jù)與之前的數(shù)據(jù)完全兼容。
雖然我們主要關(guān)注手部,但我們同時(shí)整合了 MediaPipe Pose 和 MediaPipe Face Mesh。即便在彼此接觸,或距離很近的情況下,姿態(tài)界標(biāo)都能提供準(zhǔn)確的手部姿態(tài)信息。
雖然這兩個(gè)版本的動(dòng)作捕捉是兼容的,但工件的性質(zhì)不同:一種是直接測(cè)量各個(gè)標(biāo)記,另一種是根據(jù)全局檢測(cè)的手部模擬標(biāo)記。因?yàn)榇嬖诓町?,所以我們必須在更高層?jí)對(duì)參數(shù)進(jìn)行優(yōu)化。另一方面,我們?nèi)钥梢岳梦覀兊拇笮褪终Z(yǔ)數(shù)據(jù)庫(kù)來(lái)進(jìn)行無(wú)手套配置。我們可以通過(guò)替換低級(jí)數(shù)據(jù),優(yōu)化高級(jí)數(shù)據(jù),以無(wú)手套形式測(cè)試我們的系統(tǒng)。實(shí)現(xiàn)無(wú)手套化,對(duì)于手語(yǔ)識(shí)別技術(shù)的全球推廣具有重要意義。
使用 MediaPipe 框架的 SignAll 系統(tǒng)
將 MediaPipe Hands 整合至系統(tǒng)后,我們還希望能夠利用 MediaPipe 框架在多個(gè)平臺(tái)上提供的自定義和擴(kuò)容機(jī)會(huì)。這樣我們不僅可以用 Python 原型化我們的狀態(tài)研究方法,而且還可以為 Windows、iOS、Android 甚至 Web 提供最終用戶解決方案。
由于我們的模塊圖系統(tǒng)和 MediaPipe 的計(jì)算圖之間具有相似性,現(xiàn)有的處理單元只需稍作修改就可以在這個(gè)新框架中重用。盡管如此,擴(kuò)展平臺(tái)組還面臨著其他挑戰(zhàn),例如在大多數(shù)情況下我們只能使用單個(gè) 2D 攝像頭而不是經(jīng)過(guò)校準(zhǔn)的多攝像頭系統(tǒng)。
我們開發(fā)并使用的模型、算法和技術(shù),主要是為了在 3D 全局世界中處理動(dòng)作捕捉數(shù)據(jù)。毫無(wú)疑問,從單攝像頭設(shè)置中提取的數(shù)據(jù)達(dá)不到同樣的詳細(xì)程度。所以我們必須對(duì)實(shí)現(xiàn)進(jìn)行一些調(diào)整,微調(diào)算法并添加一些額外邏輯(例如,動(dòng)態(tài)適應(yīng)手持?jǐn)z像頭用例導(dǎo)致的空間變化)。幸運(yùn)的是,MediaPipe 框架讓我們能夠用 C ++ 實(shí)現(xiàn)核心處理單元,因此我們?nèi)匀豢梢詮南惹伴_發(fā)的運(yùn)行時(shí)優(yōu)化核心解決方案中受益。
為了更好地處理來(lái)自單個(gè) 2D 源的數(shù)據(jù),一些基于 3D 數(shù)據(jù)訓(xùn)練的高級(jí)模型需要重新訓(xùn)練。MediaPipe 界標(biāo)由 3D 坐標(biāo)定義,因此可以重復(fù)使用現(xiàn)有的訓(xùn)練方法和概念。另一方面,2D 信息的提取比三維坐標(biāo)更為直接也更為穩(wěn)定,在修改設(shè)計(jì)訓(xùn)練時(shí)需要考慮到這一點(diǎn)。
幸運(yùn)的是,我們無(wú)需為實(shí)現(xiàn)此目標(biāo)而進(jìn)行全新的數(shù)據(jù)記錄。我們?nèi)匀豢梢允褂米⑨屧敿?xì)的大型視頻數(shù)據(jù)庫(kù)。預(yù)處理的動(dòng)作捕捉數(shù)據(jù)可以從我們的記錄中提取,并在 3D 世界中解釋,從而用來(lái)模擬任何虛擬攝像頭視圖中的手部、骨架或面部界標(biāo)檢測(cè)。
在虛擬攝像頭視圖的數(shù)據(jù)中,我們同時(shí)使用傳統(tǒng)的 2D 記錄,以足夠的比例覆蓋界標(biāo)檢測(cè)的獨(dú)特噪點(diǎn)特征。由于大多數(shù)此類數(shù)據(jù)已經(jīng)提前收集了,所以我們可以專注于嘗試最新技術(shù)并訓(xùn)練新模型。
總結(jié)
在 MediaPipe 助力的改進(jìn),讓 SignAll 可以更改其模型。除了提供用于手語(yǔ)教學(xué)和翻譯的多合一產(chǎn)品之外,SignAll 現(xiàn)在也開始提供面向開發(fā)者的 SDK。此 SDK 的功能取決于攝像頭的類型和可用的算力。SDK 可以啟用的功能包括:
面向開發(fā)者的 SDK
https://signall.us/sdk
通過(guò)用手語(yǔ)表示聯(lián)系人的姓名來(lái)發(fā)起視頻通話
通過(guò)手語(yǔ)(與語(yǔ)音輸入相對(duì)應(yīng))在導(dǎo)航中添加地址,或在快餐店的信息亭或直通車道中進(jìn)行點(diǎn)餐。
SignAll 的使命是讓手語(yǔ)能夠全方位替代語(yǔ)音,而我們非常高興看到越來(lái)越多的應(yīng)用實(shí)現(xiàn)了此功能。
我們十分期待 MediaPipe 未來(lái)的更新,這些更新能夠幫助我們進(jìn)一步實(shí)現(xiàn)終極目標(biāo)——讓所有人在任何設(shè)備上都能使用我們的解決方案。最值得期待的更新是能夠建立自定義的 MediaPipe 圖,并添加我們自己的計(jì)算器,從而在 WebAssembly 技術(shù)的輔助下實(shí)現(xiàn)基于網(wǎng)絡(luò)的解決方案,這樣網(wǎng)站就能夠?yàn)槭斣L問者提供全新水平的無(wú)障礙功能。
-
3D
+關(guān)注
關(guān)注
9文章
2836瀏覽量
107006 -
C++
+關(guān)注
關(guān)注
21文章
2085瀏覽量
73302 -
SDK
+關(guān)注
關(guān)注
3文章
1006瀏覽量
45420
原文標(biāo)題:SignAll SDK:基于 MediaPipe 的手語(yǔ)接口現(xiàn)對(duì)開發(fā)者開放
文章出處:【微信號(hào):tensorflowers,微信公眾號(hào):Tensorflowers】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論