本發明(ming)涉(she)及(ji)虛擬(ni)現實技術領域,尤(you)其涉(she)及(ji)一種VR頭戴設(she)備的手(shou)勢(shi)跟蹤方(fang)法(fa)以及(ji)VR頭戴設(she)備。
背景技術:
虛(xu)(xu)擬現實技術(shu)(shu)是仿真(zhen)(zhen)技術(shu)(shu)的(de)一個(ge)重要分支方向。虛(xu)(xu)擬現實技術(shu)(shu)使(shi)用(yong)計算(suan)機,利用(yong)相(xiang)關技術(shu)(shu)和(he)軟、硬件工具生成實時動(dong)態的(de)、三維立(li)體而且(qie)紋理逼真(zhen)(zhen)的(de)圖像(xiang)和(he)場景,并(bing)使(shi)其可以模仿人類的(de)各種感知(zhi),并(bing)利用(yong)傳感器與用(yong)戶進行交互。從(cong)1963年虛(xu)(xu)擬現實技術(shu)(shu)萌芽至今,虛(xu)(xu)擬現實技術(shu)(shu)的(de)理論已經比較完善,而且(qie)近年來,虛(xu)(xu)擬現實技術(shu)(shu)在軍(jun)事仿真(zhen)(zhen)、娛樂游戲、醫療、建筑等多(duo)個(ge)行業中得到廣泛(fan)和(he)深入的(de)研究和(he)使(shi)用(yong)。
在(zai)現有(you)的(de)虛擬現實(shi)設(she)備的(de)人機(ji)交(jiao)互過(guo)(guo)程(cheng)中(zhong),除了傳統的(de)按鍵操作之外,還有(you)手(shou)勢識別(bie)功能,VR頭戴設(she)備通(tong)過(guo)(guo)設(she)置在(zai)設(she)備中(zhong)的(de)攝像頭采集視野中(zhong)的(de)圖像,并從(cong)圖像中(zhong)分(fen)離(li)識別(bie)手(shou)部(bu)圖像,對手(shou)部(bu)圖像進(jin)行模型匹配來判(pan)別(bie)手(shou)勢類(lei)別(bie)或(huo)者跟蹤(zong)手(shou)勢坐(zuo)標。其中(zhong)分(fen)離(li)識別(bie)動作建立(li)模型訓練(lian)的(de)基礎上(shang)且通(tong)常采用卷積神(shen)經網絡進(jin)行手(shou)勢數據訓練(lian)。
在現有(you)的(de)虛擬現實(shi)設備跟蹤手(shou)(shou)勢(shi)坐標(biao)的(de)過程中,通(tong)常是采(cai)集手(shou)(shou)勢(shi)深度數(shu)據(ju)并利用CNN進(jin)行回歸訓(xun)練得(de)到模型(xing)。而現有(you)CNN網絡的(de)訓(xun)練核心(xin)是對二維(wei)圖卷(juan)積(ji)提(ti)取(qu)特征,僅僅利用手(shou)(shou)勢(shi)深度數(shu)據(ju)進(jin)行訓(xun)練,所獲得(de)的(de)信(xin)(xin)息可(ke)以(yi)說(shuo)是從二維(wei)平面(mian)上提(ti)取(qu)的(de)信(xin)(xin)息,手(shou)(shou)部的(de)三維(wei)空間立(li)體結構基本沒有(you)得(de)到有(you)效(xiao)利用,由于(yu)CNN采(cai)集到的(de)信(xin)(xin)息是平面(mian)信(xin)(xin)息,所以(yi)CNN的(de)訓(xun)練難度大(da),得(de)到的(de)數(shu)據(ju)誤差大(da)、跟蹤的(de)手(shou)(shou)勢(shi)坐標(biao)也不夠準確(que)。
技術實現要素:
為解決現有(you)VR頭戴設備圖像(xiang)采集時,手部的(de)(de)(de)三維空間立體結構基本(ben)沒有(you)得到有(you)效利用,導致數據誤差大、跟蹤手勢(shi)坐標不準確的(de)(de)(de)問題(ti),本(ben)發明公開了一種VR頭戴設備的(de)(de)(de)手勢(shi)跟蹤方法。
一種VR頭(tou)戴設備的手(shou)勢跟蹤(zong)方法,包括(kuo)以下(xia)步驟:
通(tong)過攝像頭采集得(de)到多個(ge)訓練圖像;
從多個所述訓練圖像(xiang)中分離(li)多個手部深度(du)圖像(xiang);
對多個(ge)所(suo)述(shu)手(shou)部(bu)深度(du)圖像(xiang)中的(de)三維手(shou)勢的(de)關(guan)鍵點進(jin)行標(biao)記,利用手(shou)部(bu)深度(du)圖像(xiang)形成原始點云數據,所(suo)述(shu)關(guan)鍵點包括掌心和(he)多個(ge)手(shou)部(bu)關(guan)節;
計(ji)算(suan)根據手部深度圖像形成的原始點云數據的法向量和曲率;
將法(fa)向(xiang)量、曲率和手部深(shen)度圖像去均值歸一化到[-1,1];
搭建(jian)CNN網絡(luo)(luo),所(suo)述CNN網絡(luo)(luo)的(de)輸入(ru)端分別輸入(ru)根據多個訓(xun)練圖像生成并歸一(yi)化(hua)后的(de)法向量(liang)、曲(qu)率和手(shou)部深度(du)圖像三路數據,輸出(chu)端輸出(chu)包(bao)括掌心在內的(de)多個關節點的(de)三維坐(zuo)標;
訓練(lian)完成的CNN網絡作為三維手(shou)勢的特征(zheng)提取(qu)(qu)器,通過深(shen)度(du)攝像頭(tou)采(cai)集實時動(dong)作深(shen)度(du)圖(tu)像,所述(shu)特征(zheng)提取(qu)(qu)器提取(qu)(qu)所述(shu)實時動(dong)作深(shen)度(du)圖(tu)像中(zhong)的法(fa)向量(liang)、曲率(lv)和手(shou)部深(shen)度(du)圖(tu)像信(xin)息,輸出(chu)實時動(dong)作深(shen)度(du)圖(tu)像中(zhong)三維手(shou)勢的三維坐標,所述(shu)處理器對識(shi)別出(chu)的三維手(shou)勢進行跟蹤(zong)。
進一步(bu)的,計算(suan)所(suo)述原(yuan)(yuan)始(shi)點(dian)云(yun)數據的法向(xiang)量和曲(qu)率時,使用(yong)kd-tree算(suan)法構(gou)建所(suo)述原(yuan)(yuan)始(shi)點(dian)云(yun)的樹(shu)結(jie)構(gou),并利用(yong)原(yuan)(yuan)始(shi)點(dian)云(yun)的樹(shu)結(jie)構(gou)查找計算(suan)手部(bu)深度圖像原(yuan)(yuan)始(shi)點(dian)云(yun)數據的法向(xiang)量和曲(qu)率。
進一步(bu)的(de),利用隨(sui)機(ji)森(sen)林算法將通過攝像頭采(cai)集得到(dao)的(de)多幅訓練圖(tu)像中的(de)手(shou)部(bu)深(shen)度圖(tu)像與(yu)背景深(shen)度數據分離;對(dui)所(suo)述手(shou)部(bu)深(shen)度圖(tu)像進行降(jiang)噪。
進一(yi)步的,將(jiang)降(jiang)噪(zao)后(hou)的手部深(shen)度圖像歸一(yi)化降(jiang)維,生成256×256的二(er)維圖像;
將降(jiang)噪后的手部深度(du)圖(tu)像中(zhong)的關(guan)鍵點(dian)進行(xing)標(biao)記(ji),所述(shu)關(guan)鍵點(dian)包括多個關(guan)節點(dian)和掌(zhang)心;
生成手部深度圖像中任一點的圖像坐標m=(x,y)T;
利用手部深度圖像中任一點的圖像中坐標m=(x,y)T和相機坐標系下的空間坐標的關系求解所述手部深度圖像中任一點的相機坐標系中的空間坐標xc,yc和zc,圖像坐(zuo)標和相機坐(zuo)標系(xi)下空間(jian)坐(zuo)標的關系(xi)如下:
其中zc為相機的光軸;
在相機坐(zuo)標系下(xia)建(jian)立對應所述手(shou)部深度圖(tu)像且包括多個關節點和掌心(xin)坐(zuo)標的原始點云(yun);利用kd-tree算(suan)(suan)法構(gou)建(jian)對應原始點云(yun)數(shu)據的樹結構(gou),并分別利用原始點云(yun)數(shu)據的樹結構(gou)查找計算(suan)(suan)法向量和曲(qu)率。
為了提高(gao)處理(li)效率,并(bing)盡可能的保(bao)存圖像特征,搭建CNN網絡之(zhi)前(qian),利用PCA算法(fa)對(dui)手部(bu)深度(du)圖像降維到96×96。
進一步的,所述CNN網(wang)絡包(bao)括卷(juan)積(ji)(ji)層(ceng)(ceng)、池化層(ceng)(ceng)和全連接(jie)層(ceng)(ceng),其中所述卷(juan)積(ji)(ji)層(ceng)(ceng)包(bao)括并行的第(di)(di)一卷(juan)積(ji)(ji)通(tong)道(dao)(dao)、第(di)(di)二卷(juan)積(ji)(ji)通(tong)道(dao)(dao)和第(di)(di)三卷(juan)積(ji)(ji)通(tong)道(dao)(dao),所述第(di)(di)一卷(juan)積(ji)(ji)通(tong)道(dao)(dao)、第(di)(di)二卷(juan)積(ji)(ji)通(tong)道(dao)(dao)和第(di)(di)三卷(juan)積(ji)(ji)通(tong)道(dao)(dao)的輸(shu)入端分別輸(shu)入法向量、曲率和手部(bu)深度圖(tu)像。
進(jin)一(yi)步(bu)的,所述(shu)第(di)(di)一(yi)卷積(ji)(ji)(ji)通(tong)(tong)道(dao)、第(di)(di)二(er)卷積(ji)(ji)(ji)通(tong)(tong)道(dao)和(he)第(di)(di)三(san)卷積(ji)(ji)(ji)通(tong)(tong)道(dao)均包括(kuo)三(san)級(ji)卷積(ji)(ji)(ji),且每一(yi)級(ji)卷積(ji)(ji)(ji)層后均跟隨一(yi)層池化層,第(di)(di)一(yi)卷積(ji)(ji)(ji)通(tong)(tong)道(dao)、第(di)(di)二(er)卷積(ji)(ji)(ji)通(tong)(tong)道(dao)和(he)第(di)(di)三(san)卷積(ji)(ji)(ji)通(tong)(tong)道(dao)輸出至(zhi)全連接層,所述(shu)全連接層包括(kuo)三(san)級(ji)全連接層。
優選的,所述CNN網絡的激活函數為Relu函數。
優選的,所(suo)述(shu)(shu)卷積(ji)層(ceng)(ceng)的卷積(ji)核(he)為5×5,所(suo)述(shu)(shu)池(chi)化(hua)層(ceng)(ceng)的池(chi)化(hua)核(he)為2×2。
本發明在對原始手(shou)(shou)勢(shi)深度數(shu)據的(de)(de)(de)(de)預處理過(guo)程中(zhong)(zhong)對數(shu)據的(de)(de)(de)(de)法(fa)向量、曲(qu)率這兩種三(san)維(wei)空(kong)間(jian)特(te)征信息(xi)(xi)進行了提(ti)(ti)取,并在橫(heng)向尺(chi)度和(he)縱向層深上(shang)做(zuo)了改進。通過(guo)對采(cai)集(ji)數(shu)據三(san)維(wei)空(kong)間(jian)描(miao)述(shu)信息(xi)(xi)的(de)(de)(de)(de)提(ti)(ti)取和(he)利用(yong),彌(mi)補了手(shou)(shou)部深度圖(tu)像特(te)征紋理單一的(de)(de)(de)(de)不(bu)足,強化了手(shou)(shou)勢(shi)深度數(shu)據所具有的(de)(de)(de)(de)三(san)維(wei)空(kong)間(jian)特(te)征,三(san)維(wei)手(shou)(shou)勢(shi)無需做(zuo)分類,因此(ci)本發明所提(ti)(ti)供的(de)(de)(de)(de)方法(fa)可以(yi)適用(yong)于對連續變動手(shou)(shou)勢(shi)的(de)(de)(de)(de)追蹤,同時,由于在采(cai)集(ji)數(shu)據中(zhong)(zhong)增加了三(san)維(wei)空(kong)間(jian)的(de)(de)(de)(de)描(miao)述(shu)信息(xi)(xi),因此(ci)可以(yi)最大可能的(de)(de)(de)(de)排(pai)除相機(ji)采(cai)集(ji)角(jiao)度帶(dai)來的(de)(de)(de)(de)誤差。本發明提(ti)(ti)高了CNN訓(xun)練(lian)模型(xing)的(de)(de)(de)(de)精確度,進而提(ti)(ti)高了VR頭戴(dai)設備對手(shou)(shou)勢(shi)跟蹤的(de)(de)(de)(de)精確度。
一種VR頭(tou)(tou)戴設備(bei),采(cai)用VR頭(tou)(tou)戴設備(bei)的(de)手(shou)勢跟蹤方法控制,所(suo)述VR頭(tou)(tou)戴設備(bei)的(de)手(shou)勢跟蹤方法包括以下步驟:
通過攝像頭(tou)采集得到(dao)多個(ge)訓練圖像;
從多個所述訓練圖(tu)像中分離多個手部深度圖(tu)像;
對多個所(suo)述(shu)手(shou)部(bu)深度(du)圖像中(zhong)的三維手(shou)勢的關鍵(jian)點進行標記,利(li)用手(shou)部(bu)深度(du)圖像形成原始點云數(shu)據,所(suo)述(shu)關鍵(jian)點包括掌心和多個手(shou)部(bu)關節;
計算(suan)根(gen)據手(shou)部深度圖像形(xing)成的(de)原(yuan)始點云數據的(de)法向量和曲率;
將法向(xiang)量、曲率和(he)手部深度圖像去均(jun)值歸(gui)一化到[-1,1];
搭建(jian)CNN網(wang)絡(luo),所述(shu)CNN網(wang)絡(luo)的(de)輸入端分別(bie)輸入根據(ju)多個訓練圖像(xiang)生成(cheng)并歸一化后的(de)法向(xiang)量、曲率和手部深度圖像(xiang)三路數據(ju),輸出端輸出包括掌心(xin)在內的(de)多個關節點的(de)三維坐標;
訓(xun)練完成的CNN網絡作(zuo)為三(san)(san)維(wei)手(shou)勢的特征提取器,通過深(shen)度攝像頭采集(ji)實(shi)時動(dong)(dong)作(zuo)深(shen)度圖像,所(suo)述特征提取器提取所(suo)述實(shi)時動(dong)(dong)作(zuo)深(shen)度圖像中的法向量(liang)、曲率和手(shou)部深(shen)度圖像信息,輸(shu)出實(shi)時動(dong)(dong)作(zuo)深(shen)度圖像中三(san)(san)維(wei)手(shou)勢的三(san)(san)維(wei)坐標,所(suo)述處理器對識別出的三(san)(san)維(wei)手(shou)勢進(jin)行跟蹤。
本發明所公開的VR頭(tou)戴(dai)式設備,所采用的手勢(shi)跟蹤方法(fa)中提取融(rong)合(he)的三維手勢(shi)的空間特征,并(bing)且通過CNN網絡充分利用手部三維信息,提升了(le)卷積神(shen)經(jing)網絡的訓練(lian)效果,足(zu)以滿足(zu)高精確度的仿真場景,擴大了(le)VR頭(tou)戴(dai)式設備的使用范圍。同時由于本發明可以對連續變(bian)化(hua)的手勢(shi)實(shi)(shi)現識(shi)別,因(yin)此可以脫離(li)實(shi)(shi)體(ti)控(kong)制(zhi)按鍵,實(shi)(shi)現遠距(ju)離(li)多種手部命令控(kong)制(zhi)。
附圖說明
為了更(geng)清(qing)楚(chu)地說明本發明實施例(li)(li)或現有技(ji)術(shu)中的(de)(de)技(ji)術(shu)方案,下面將對實施例(li)(li)或現有技(ji)術(shu)描述中所需要使(shi)用的(de)(de)附(fu)圖作一簡單地介紹,顯而易見(jian)地,下面描述中的(de)(de)附(fu)圖是(shi)本發明的(de)(de)一些實施例(li)(li),對于本領域(yu)普通技(ji)術(shu)人(ren)員來講,在不(bu)付出創造性勞(lao)動性的(de)(de)前提下,還可以根(gen)據(ju)這(zhe)些附(fu)圖獲得其他的(de)(de)附(fu)圖。
圖1為(wei)本發明(ming)所(suo)公開的VR頭戴設備手勢(shi)跟蹤方法一種實施例的流程圖;
圖2為圖1所公開的VR頭(tou)戴(dai)設(she)備手勢跟蹤(zong)方法(fa)中所搭建(jian)的CNN網絡的網絡架構圖。
具體實施方式
為使本(ben)發明實(shi)(shi)(shi)施(shi)(shi)例(li)的(de)目的(de)、技術(shu)方案和優點更(geng)加清楚,下面將結合本(ben)發明實(shi)(shi)(shi)施(shi)(shi)例(li)中的(de)附圖(tu),對本(ben)發明實(shi)(shi)(shi)施(shi)(shi)例(li)中的(de)技術(shu)方案進行清楚、完整(zheng)地描述,顯(xian)然,所(suo)描述的(de)實(shi)(shi)(shi)施(shi)(shi)例(li)是(shi)本(ben)發明一(yi)部(bu)分實(shi)(shi)(shi)施(shi)(shi)例(li),而不是(shi)全部(bu)的(de)實(shi)(shi)(shi)施(shi)(shi)例(li)。基(ji)于本(ben)發明中的(de)實(shi)(shi)(shi)施(shi)(shi)例(li),本(ben)領域普通技術(shu)人員在沒有作出(chu)創造性(xing)勞動前提(ti)下所(suo)獲得的(de)所(suo)有其他實(shi)(shi)(shi)施(shi)(shi)例(li),都屬于本(ben)發明保(bao)護的(de)范圍(wei)。
參見圖1所(suo)(suo)示為本發明(ming)所(suo)(suo)公開的VR頭(tou)戴(dai)設備的手勢跟蹤(zong)方法一種(zhong)實(shi)施例(li)的流程示意圖。具體來說(shuo),本實(shi)施例(li)所(suo)(suo)公開的跟蹤(zong)方法包括圖像預處理(li)、三維特征提(ti)取、搭建卷積神經網絡(luo)、卷積神經網絡(luo)訓練(lian)、識別(bie)(bie)、利用識別(bie)(bie)結果操控等幾個步驟,以下按(an)照上述過程分(fen)別(bie)(bie)詳細描述。
首先為建立卷積神經網絡進(jin)行前(qian)期準備(bei)。通過攝像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)頭(tou)(tou)采(cai)集(ji)多個(ge)訓(xun)練(lian)樣(yang)(yang)本(ben)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)。訓(xun)練(lian)樣(yang)(yang)本(ben)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)優選(xuan)在5000張左(zuo)右,也(ye)可以(yi)(yi)根據實際識(shi)別(bie)精度(du)(du)的要求調(diao)整訓(xun)練(lian)樣(yang)(yang)本(ben)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)的數量,訓(xun)練(lian)樣(yang)(yang)本(ben)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)中(zhong)均包含一(yi)(yi)個(ge)三(san)(san)維(wei)手(shou)(shou)(shou)勢圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)。攝像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)頭(tou)(tou)可以(yi)(yi)選(xuan)擇(ze)使用(yong)設(she)置在VR頭(tou)(tou)戴設(she)備(bei)上的攝像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)頭(tou)(tou),也(ye)可以(yi)(yi)選(xuan)擇(ze)其(qi)它(ta)獨立設(she)置的高清攝像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)頭(tou)(tou)。對(dui)訓(xun)練(lian)樣(yang)(yang)本(ben)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)預(yu)處理(li)時,假定三(san)(san)維(wei)手(shou)(shou)(shou)勢是距(ju)離(li)攝像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)頭(tou)(tou)最(zui)近的目標物體,考慮到VR頭(tou)(tou)戴設(she)備(bei)的應用(yong)場景(jing),對(dui)于VR頭(tou)(tou)戴式設(she)備(bei)會(hui)采(cai)集(ji)到的圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)數據來說,圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)背(bei)景(jing)中(zhong)人體數據較多,其(qi)它(ta)因素基本(ben)可以(yi)(yi)忽略。利用(yong)隨機森林(lin)算法將訓(xun)練(lian)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)中(zhong)的手(shou)(shou)(shou)部(bu)深度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)塊和背(bei)景(jing)物體的深度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)分離(li),提取出(chu)對(dui)應每一(yi)(yi)個(ge)三(san)(san)維(wei)手(shou)(shou)(shou)勢圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)的手(shou)(shou)(shou)部(bu)深度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)塊作為手(shou)(shou)(shou)部(bu)深度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang),并進(jin)一(yi)(yi)步對(dui)手(shou)(shou)(shou)部(bu)深度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)進(jin)行去噪(zao)處理(li),去除(chu)手(shou)(shou)(shou)部(bu)深度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)上的噪(zao)點(dian),完成圖(tu)(tu)(tu)(tu)像(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)(xiang)分離(li)預(yu)處理(li)。
將降噪后(hou)的(de)(de)(de)(de)(de)手(shou)(shou)(shou)部(bu)深度圖(tu)像(xiang)(xiang)圖(tu)像(xiang)(xiang)歸一(yi)化降維(wei),獲得(de)分辨(bian)率(lv)為256×256的(de)(de)(de)(de)(de)二維(wei)圖(tu)像(xiang)(xiang)。256×256的(de)(de)(de)(de)(de)像(xiang)(xiang)素選擇是基于長期對(dui)(dui)VR生(sheng)成圖(tu)像(xiang)(xiang)的(de)(de)(de)(de)(de)處理經(jing)驗,這(zhe)一(yi)分辨(bian)率(lv)可以(yi)(yi)盡可能保持圖(tu)像(xiang)(xiang)信息的(de)(de)(de)(de)(de)完整并(bing)降低后(hou)續圖(tu)像(xiang)(xiang)處理系統(tong)的(de)(de)(de)(de)(de)信息處理量。在(zai)本(ben)實施例中,識(shi)別(bie)手(shou)(shou)(shou)勢(shi)的(de)(de)(de)(de)(de)最終目的(de)(de)(de)(de)(de)是可以(yi)(yi)自動(dong)判定(ding)三維(wei)手(shou)(shou)(shou)勢(shi),并(bing)利用三維(wei)手(shou)(shou)(shou)勢(shi)圖(tu)像(xiang)(xiang)特征(zheng)的(de)(de)(de)(de)(de)變(bian)化產(chan)生(sheng)的(de)(de)(de)(de)(de)控制信號進行VR頭戴(dai)設備的(de)(de)(de)(de)(de)下一(yi)步(bu)操作(zuo)。在(zai)本(ben)方法中,識(shi)別(bie)的(de)(de)(de)(de)(de)基準在(zai)于形成不同(tong)手(shou)(shou)(shou)勢(shi)變(bian)化時手(shou)(shou)(shou)部(bu)各個(ge)指關(guan)節(jie)會(hui)產(chan)生(sheng)對(dui)(dui)應的(de)(de)(de)(de)(de)變(bian)化以(yi)(yi)及各個(ge)指關(guan)節(jie)會(hui)出現(xian)不同(tong)位置的(de)(de)(de)(de)(de)組(zu)合(he),所以(yi)(yi)在(zai)對(dui)(dui)手(shou)(shou)(shou)部(bu)深度圖(tu)像(xiang)(xiang)預處理時,對(dui)(dui)手(shou)(shou)(shou)部(bu)各個(ge)指關(guan)節(jie)的(de)(de)(de)(de)(de)圖(tu)像(xiang)(xiang)坐標(biao)進行標(biao)記,同(tong)時標(biao)記圖(tu)像(xiang)(xiang)中掌心的(de)(de)(de)(de)(de)圖(tu)像(xiang)(xiang)坐標(biao),生(sheng)成每一(yi)個(ge)關(guan)鍵點的(de)(de)(de)(de)(de)二維(wei)圖(tu)像(xiang)(xiang)坐標(biao)。
標記完成后,通過計算機系統記錄手部深度圖像中任一點的圖像坐標m=(x,y)T,利用手部深度圖像中任一點的圖像坐標m=(x,y)T和相機坐標系下的空間坐標的關系求解所述手部深度圖像中任一點的相機坐標系中的空間坐標xc,yc和zc,圖像坐(zuo)標和(he)相機(ji)坐(zuo)標系下(xia)(xia)空間坐(zuo)標的關系如(ru)下(xia)(xia):
其中zc為相機的光軸;
在zc已知的條件下,可以求出每一點對應xc和yc,利用相機坐(zuo)標系下的(de)空間坐(zuo)標建立對(dui)應(ying)每一幅手部(bu)深度圖像且(qie)包括關節點(dian)和掌(zhang)心坐(zuo)標的(de)原始點(dian)云。
為(wei)(wei)了在彌補手部深(shen)度圖(tu)像特(te)(te)(te)征(zheng)紋理單一的(de)(de)(de)(de)(de)缺點(dian)(dian),在本實施例中(zhong),對訓練樣本的(de)(de)(de)(de)(de)預處理重點(dian)(dian)增加了手勢(shi)的(de)(de)(de)(de)(de)三維空間特(te)(te)(te)征(zheng)。具(ju)體來說,三維空間特(te)(te)(te)征(zheng)優選包(bao)括(kuo)根據(ju)手部深(shen)度圖(tu)像生成(cheng)的(de)(de)(de)(de)(de)原(yuan)始(shi)點(dian)(dian)云(yun)數(shu)(shu)據(ju)中(zhong)包(bao)含的(de)(de)(de)(de)(de)法(fa)向(xiang)(xiang)量(liang)(liang)和曲(qu)率。在獲得對應每一幅手部深(shen)度圖(tu)像且包(bao)括(kuo)關節點(dian)(dian)和掌(zhang)心坐(zuo)標的(de)(de)(de)(de)(de)原(yuan)始(shi)點(dian)(dian)云(yun)后,首先計(ji)(ji)(ji)算(suan)根據(ju)手部深(shen)度圖(tu)像形成(cheng)的(de)(de)(de)(de)(de)原(yuan)始(shi)點(dian)(dian)云(yun)數(shu)(shu)據(ju)的(de)(de)(de)(de)(de)法(fa)向(xiang)(xiang)量(liang)(liang)和曲(qu)率。原(yuan)始(shi)點(dian)(dian)云(yun)數(shu)(shu)據(ju)的(de)(de)(de)(de)(de)法(fa)向(xiang)(xiang)量(liang)(liang)可以通過(guo)擬(ni)合法(fa)計(ji)(ji)(ji)算(suan),曲(qu)率可以通過(guo)拋物面擬(ni)合法(fa)計(ji)(ji)(ji)算(suan)。在擬(ni)合計(ji)(ji)(ji)算(suan)的(de)(de)(de)(de)(de)過(guo)程(cheng)中(zhong),為(wei)(wei)了提(ti)高(gao)運算(suan)的(de)(de)(de)(de)(de)速率,使用(yong)kd-tree算(suan)法(fa)構(gou)建原(yuan)始(shi)點(dian)(dian)云(yun)的(de)(de)(de)(de)(de)樹結構(gou),并利用(yong)原(yuan)始(shi)點(dian)(dian)云(yun)的(de)(de)(de)(de)(de)樹結構(gou)查(cha)找(zhao)計(ji)(ji)(ji)算(suan)原(yuan)始(shi)點(dian)(dian)云(yun)數(shu)(shu)據(ju)的(de)(de)(de)(de)(de)法(fa)向(xiang)(xiang)量(liang)(liang)和曲(qu)率。
在得(de)到原始點云數(shu)據的法向量(liang)和(he)曲率后,對手(shou)(shou)部(bu)深(shen)度(du)圖(tu)像(xiang)、對應(ying)每一(yi)幅(fu)手(shou)(shou)部(bu)深(shen)度(du)圖(tu)像(xiang)的法向量(liang)和(he)曲率進(jin)(jin)一(yi)步進(jin)(jin)行去均值,利(li)用方差歸一(yi)化至[-1,1],并進(jin)(jin)一(yi)步利(li)用PCA算法將手(shou)(shou)部(bu)深(shen)度(du)圖(tu)像(xiang)降維到96×96,減少后續卷積神經網絡的數(shu)據處理量(liang),同時保(bao)證有(you)效特征保(bao)留(liu)充分(fen)。
獲得歸一化后的曲率、法向量(liang)和(he)降(jiang)維(wei)到96×96的手部深度(du)圖(tu)像后,基本完成了對(dui)訓練(lian)圖(tu)像的預處理。
下(xia)一(yi)步利用預(yu)(yu)處理(li)后的(de)圖(tu)像(xiang)和(he)(he)數(shu)(shu)據(ju)訓練(lian)CNN網絡。在本(ben)實(shi)施例(li)中(zhong),參見圖(tu)2所(suo)示,搭建(jian)的(de)CNN網絡包(bao)(bao)(bao)(bao)括(kuo)并行的(de)第(di)(di)(di)(di)一(yi)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao),第(di)(di)(di)(di)二卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)和(he)(he)第(di)(di)(di)(di)三(san)(san)(san)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao),其中(zhong)第(di)(di)(di)(di)一(yi)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)、第(di)(di)(di)(di)二卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)和(he)(he)第(di)(di)(di)(di)三(san)(san)(san)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)的(de)輸(shu)入(ru)端(duan)分別輸(shu)入(ru)預(yu)(yu)處理(li)生(sheng)成的(de)對應(ying)手部(bu)深(shen)度(du)圖(tu)像(xiang)的(de)原始點云的(de)法向量、曲(qu)率(lv)和(he)(he)手部(bu)深(shen)度(du)圖(tu)像(xiang),在并行的(de)第(di)(di)(di)(di)一(yi)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)、第(di)(di)(di)(di)二卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)和(he)(he)第(di)(di)(di)(di)三(san)(san)(san)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)中(zhong)均(jun)包(bao)(bao)(bao)(bao)括(kuo)三(san)(san)(san)級(ji)卷(juan)(juan)積(ji)(ji)(ji)(ji),如(ru)圖(tu)2所(suo)示C1,C2,C3,在每一(yi)級(ji)卷(juan)(juan)積(ji)(ji)(ji)(ji)層(ceng)后均(jun)跟隨一(yi)層(ceng)池化層(ceng),如(ru)圖(tu)2所(suo)示P1,P2,P3,即(ji)采樣層(ceng),第(di)(di)(di)(di)一(yi)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)、第(di)(di)(di)(di)二卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)和(he)(he)第(di)(di)(di)(di)三(san)(san)(san)卷(juan)(juan)積(ji)(ji)(ji)(ji)通(tong)(tong)道(dao)(dao)(dao)(dao)輸(shu)出(chu)至全(quan)(quan)連(lian)(lian)接(jie)(jie)層(ceng)。全(quan)(quan)連(lian)(lian)接(jie)(jie)層(ceng)包(bao)(bao)(bao)(bao)括(kuo)三(san)(san)(san)級(ji)全(quan)(quan)連(lian)(lian)接(jie)(jie)層(ceng),如(ru)圖(tu)2所(suo)示f1,f2,f3,其中(zhong)優(you)選(xuan)第(di)(di)(di)(di)一(yi)級(ji)全(quan)(quan)連(lian)(lian)接(jie)(jie)層(ceng)f1包(bao)(bao)(bao)(bao)括(kuo)1024個(ge)神(shen)經(jing)元,第(di)(di)(di)(di)二級(ji)全(quan)(quan)連(lian)(lian)接(jie)(jie)層(ceng)f2包(bao)(bao)(bao)(bao)括(kuo)1024個(ge)神(shen)經(jing)元,第(di)(di)(di)(di)三(san)(san)(san)級(ji)全(quan)(quan)連(lian)(lian)接(jie)(jie)層(ceng)f3包(bao)(bao)(bao)(bao)括(kuo)512個(ge)神(shen)經(jing)元。第(di)(di)(di)(di)三(san)(san)(san)級(ji)全(quan)(quan)連(lian)(lian)接(jie)(jie)層(ceng)f3輸(shu)出(chu)包(bao)(bao)(bao)(bao)、對應(ying)手部(bu)深(shen)度(du)圖(tu)像(xiang)中(zhong)多個(ge)關(guan)(guan)節點,包(bao)(bao)(bao)(bao)括(kuo)掌心在內的(de)三(san)(san)(san)維坐(zuo)標3J,其中(zhong)J代表關(guan)(guan)節數(shu)(shu)。如(ru)圖(tu)2所(suo)示,在本(ben)實(shi)施例(li)中(zhong),優(you)選(xuan)每一(yi)級(ji)卷(juan)(juan)積(ji)(ji)(ji)(ji)層(ceng)的(de)卷(juan)(juan)積(ji)(ji)(ji)(ji)核(he)為5×5,優(you)選(xuan)選(xuan)擇8個(ge)卷(juan)(juan)積(ji)(ji)(ji)(ji)核(he),池化層(ceng)的(de)池化核(he)為2×2。在CNN網絡中(zhong),激活函數(shu)(shu)為Relu函數(shu)(shu)。
通(tong)過(guo)訓練得到的(de)(de)(de)(de)(de)CNN網(wang)絡(luo)作為三(san)維(wei)(wei)手(shou)(shou)勢(shi)(shi)的(de)(de)(de)(de)(de)特(te)征提(ti)取器存(cun)儲(chu)在VR頭戴式(shi)設備(bei)的(de)(de)(de)(de)(de)存(cun)儲(chu)單元中。當(dang)VR頭戴式(shi)設備(bei)運行時,通(tong)過(guo)VR頭戴式(shi)及設備(bei)本身(shen)帶有(you)的(de)(de)(de)(de)(de)深(shen)(shen)(shen)度(du)(du)攝(she)像(xiang)(xiang)頭采集(ji)含有(you)三(san)維(wei)(wei)手(shou)(shou)勢(shi)(shi)的(de)(de)(de)(de)(de)實(shi)時動(dong)(dong)作深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang),對實(shi)時動(dong)(dong)作深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)進(jin)行預(yu)處(chu)(chu)理(li),將(jiang)實(shi)時動(dong)(dong)作深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)中的(de)(de)(de)(de)(de)手(shou)(shou)部(bu)(bu)深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)和背景深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)區(qu)分(fen)開,提(ti)取前部(bu)(bu)的(de)(de)(de)(de)(de)手(shou)(shou)部(bu)(bu)深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang),并(bing)對手(shou)(shou)部(bu)(bu)深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)進(jin)行去(qu)噪。對手(shou)(shou)部(bu)(bu)深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)進(jin)行降維(wei)(wei),將(jiang)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)分(fen)辨率降為256×256,根據實(shi)時動(dong)(dong)作深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)建立(li)點(dian)(dian)云(yun)數據,利(li)用(yong)點(dian)(dian)云(yun)數據計算法向(xiang)量和曲率,并(bing)將(jiang)實(shi)時動(dong)(dong)作深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)、法向(xiang)量和曲率輸入至CNN網(wang)絡(luo)的(de)(de)(de)(de)(de)三(san)個卷積通(tong)道的(de)(de)(de)(de)(de)輸入端,利(li)用(yong)特(te)征提(ti)取器識別(bie)實(shi)時動(dong)(dong)作深(shen)(shen)(shen)度(du)(du)圖(tu)(tu)(tu)(tu)像(xiang)(xiang)中的(de)(de)(de)(de)(de)三(san)維(wei)(wei)手(shou)(shou)勢(shi)(shi),并(bing)生成識別(bie)出的(de)(de)(de)(de)(de)三(san)維(wei)(wei)手(shou)(shou)勢(shi)(shi)中關節點(dian)(dian)和掌心的(de)(de)(de)(de)(de)坐標,定(ding)位三(san)維(wei)(wei)手(shou)(shou)勢(shi)(shi)動(dong)(dong)作,并(bing)將(jiang)識別(bie)結果輸出至處(chu)(chu)理(li)器,處(chu)(chu)理(li)器對識別(bie)出的(de)(de)(de)(de)(de)手(shou)(shou)勢(shi)(shi)進(jin)行跟蹤。
本(ben)(ben)發(fa)明(ming)(ming)在(zai)對原始手(shou)勢深度(du)數(shu)據的(de)(de)(de)預(yu)處理(li)(li)過(guo)程中(zhong)對數(shu)據的(de)(de)(de)法向(xiang)量、曲(qu)率這兩種三(san)維空(kong)(kong)間特征(zheng)信(xin)息(xi)進(jin)行了(le)提(ti)(ti)取,并在(zai)橫向(xiang)尺度(du)和(he)縱(zong)向(xiang)層深上(shang)做了(le)改(gai)進(jin)。通過(guo)對采集(ji)數(shu)據三(san)維空(kong)(kong)間描述信(xin)息(xi)的(de)(de)(de)提(ti)(ti)取和(he)利(li)用,彌補了(le)手(shou)部深度(du)圖(tu)像(xiang)特征(zheng)紋理(li)(li)單(dan)一的(de)(de)(de)不足(zu),強化了(le)手(shou)勢深度(du)數(shu)據所具有的(de)(de)(de)三(san)維空(kong)(kong)間特征(zheng),三(san)維手(shou)勢無需做分類(lei),因此本(ben)(ben)發(fa)明(ming)(ming)所提(ti)(ti)供的(de)(de)(de)方法可(ke)以適用于對連續變動手(shou)勢的(de)(de)(de)追蹤(zong),同時(shi),由(you)于在(zai)采集(ji)數(shu)據中(zhong)增加(jia)了(le)三(san)維空(kong)(kong)間的(de)(de)(de)描述信(xin)息(xi),因此可(ke)以最大(da)可(ke)能(neng)的(de)(de)(de)排除(chu)相機采集(ji)角度(du)帶來(lai)的(de)(de)(de)誤差。本(ben)(ben)發(fa)明(ming)(ming)提(ti)(ti)高了(le)CNN訓(xun)練模(mo)型的(de)(de)(de)精確度(du),進(jin)而提(ti)(ti)高了(le)VR頭戴設備對手(shou)勢跟蹤(zong)的(de)(de)(de)精確度(du)。
本發明同時公開(kai)了一種VR頭(tou)戴(dai)式(shi)顯(xian)示設備(bei),采用如上(shang)(shang)述實施(shi)(shi)例(li)所詳(xiang)細描(miao)述的(de)(de)VR頭(tou)戴(dai)式(shi)顯(xian)示設備(bei)的(de)(de)手勢跟蹤方法(fa)。手勢跟蹤方法(fa)的(de)(de)具體數據采集、處理和識別(bie)過程(cheng)參見(jian)上(shang)(shang)述實施(shi)(shi)例(li),在此(ci)不再贅述,本發明所公開(kai)的(de)(de)VR頭(tou)戴(dai)式(shi)顯(xian)示設備(bei)具有同樣的(de)(de)技術效果。
最后應(ying)說明的(de)是:以(yi)上實(shi)施(shi)(shi)例(li)僅用以(yi)說明本(ben)發(fa)明的(de)技(ji)(ji)(ji)術(shu)(shu)(shu)方案(an),而(er)非對(dui)(dui)其限制;盡管參照(zhao)前(qian)述(shu)(shu)實(shi)施(shi)(shi)例(li)對(dui)(dui)本(ben)發(fa)明進(jin)行了詳細的(de)說明,本(ben)領域的(de)普通技(ji)(ji)(ji)術(shu)(shu)(shu)人(ren)員應(ying)當(dang)理解:其依(yi)然可以(yi)對(dui)(dui)前(qian)述(shu)(shu)各實(shi)施(shi)(shi)例(li)所記載的(de)技(ji)(ji)(ji)術(shu)(shu)(shu)方案(an)進(jin)行修(xiu)改,或者(zhe)對(dui)(dui)其中部分技(ji)(ji)(ji)術(shu)(shu)(shu)特征進(jin)行等同替換(huan);而(er)這些修(xiu)改或者(zhe)替換(huan),并(bing)不使(shi)相應(ying)技(ji)(ji)(ji)術(shu)(shu)(shu)方案(an)的(de)本(ben)質脫(tuo)離本(ben)發(fa)明各實(shi)施(shi)(shi)例(li)技(ji)(ji)(ji)術(shu)(shu)(shu)方案(an)的(de)精神和范(fan)圍。