亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于DTW 和CNN的仿真駕駛手勢識別及交互

        2021-03-22 04:26:56楊尊儉張淑軍
        關(guān)鍵詞:深度動作

        楊尊儉,張淑軍

        (青島科技大學 信息科學技術(shù)學院,山東 青島 266061)

        手勢是非語言交流的重要方式,也是非接觸式的人機交互中的重點研究課題。其在各個領(lǐng)域取得了廣泛的應(yīng)用,如汽車自動駕駛過程中需要能夠識別交警手勢并做出正確響應(yīng),基于手勢交互的車輛控制[1]、智能教學[2],基于手勢的機器人控制[3-4]、3D模型控制等[5]。其中手勢的識別速度和精準度是研究和應(yīng)用的關(guān)鍵。

        非接觸式交互設(shè)備的出現(xiàn),如Kinect、Leap Motion、HTC VIVE等,推動了基于手勢的交互技術(shù)的進一步發(fā)展。Shotton等[6]從Kinect提供的深度數(shù)據(jù)中評估出3D關(guān)節(jié)點的位置,為人體動作識別提供了重要的數(shù)據(jù)基礎(chǔ)。傳統(tǒng)的手勢識別主要通過數(shù)字圖像處理的方式對手勢進行跟蹤、分割等處理,對圖像進行分類。以骨架研究分為兩大類[7]:一種是將骨架用點來表示,對點的信息進行分析處理;另一種則是將部分骨架表示為剛體片段進行分析[8]。曹國強等[9]使用動態(tài)時間規(guī)整(dynamic time warping,DTW)與樸素貝葉斯分類(naive bayes classification,NBC)相結(jié)合進行模板訓練與匹配的方法,對手勢進行分類。石祥濱等[10]通過K-均值聚類算法提取視頻序列中關(guān)鍵幀的關(guān)節(jié)點位置和人體剛體部分之間的骨架角度來對動作序列分類。Ju等[11]結(jié)合RGB-D顏色空間的最大期望對Kinect捕獲的手勢進行分割。王鑫等[12]用LE(laplacian eigenmaps)流形學習對Kinect設(shè)備獲取的人體關(guān)節(jié)點信息進行降維運算,提取特征。

        隨著卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)的提出,基于深度學習的識別方法得到了迅速發(fā)展。Sanchez-Riera等[13]使用Kinect進行數(shù)據(jù)采集,利用深度學習方法對手勢的運行軌跡進行姿勢和方向上的評估。Dardas等[14]對圖像進行尺度不變性特征變換特征提取,使用多分類支持向量機(SVM)進行手勢識別。

        本文以仿真駕駛為背景,提出了一種結(jié)合DTW 與深度學習的手勢識別技術(shù),使用Kinect進行數(shù)據(jù)采集,以無人車在城市中行駛為背景,利用Unity進行場景搭建及定義交互事件,構(gòu)建無人車駕駛仿真交互系統(tǒng)。

        1 方法概述

        在無人車行駛中,車輛的行進方向與行進速度是研究的關(guān)鍵。車輛需要對交警手勢、用戶自定義手勢等做出及時的反饋,以保證智能化行進。本文提出改進的DTW 算法與卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合的識別方法應(yīng)用于無人車駕駛,并通過虛擬現(xiàn)實技術(shù)對其進行模擬仿真。系統(tǒng)流程如圖1所示。

        圖1 系統(tǒng)流程框圖

        通常的手勢交互以上肢動作為主,識別需要做到實時才具有可用性。同一個人多次做相同手勢和不同的人做相同的手勢,手勢的速度和細節(jié)都存在差異,因此,適合使用DTW 算法進行識別。又考慮到在識別過程中,不同關(guān)節(jié)點貢獻率不同,所以本文提出了一種加權(quán)的DTW 算法,對手勢進行粗粒度識別。由于背景光照、顏色、遮擋等各種客觀因素影響,部分手勢在RGB圖像中比較模糊,使用傳統(tǒng)方法穩(wěn)定性和魯棒性較差。為此,本文使用基于卷積神經(jīng)網(wǎng)絡(luò)的手勢識別方法與DTW算法相結(jié)合,充分利用Kinect提取的關(guān)節(jié)點信息對手進行局部聚焦,同時識別上肢粗粒度手勢及手部細粒度語義,提高識別的速度與準確率。

        本文通過Kinect獲取用戶的實時圖像并進行人體識別獲取關(guān)節(jié)點信息,改進的DTW 算法利用關(guān)節(jié)點信息進行特征向量的提取和匹配,對手勢進行粗粒度識別?;谏疃葘W習的方法使用CNN網(wǎng)絡(luò)對手勢圖像進行細粒度識別。在仿真駕駛系統(tǒng)中,粗粒度識別結(jié)果決定汽車的行駛方向,細粒度識別結(jié)果對行駛速度等進行控制,2種方式同時作用,實現(xiàn)虛擬環(huán)境與用戶的實時無縫虛實交互。

        2 基于K inect的人體關(guān)節(jié)點提取

        Kinect由RGB攝像頭獲取彩色圖像,由紅外線發(fā)射器和紅外攝像機配合獲取深度圖像。紅外線發(fā)射器作為光源將結(jié)構(gòu)光打在物體上,形成激光散斑,而紅外攝像機作為接收器,對這些激光散斑進行標定,計算得到深度數(shù)據(jù),最后使用插值算法得到場景的三維數(shù)據(jù)。

        Kinect獲取人體關(guān)節(jié)點的過程包括3個步驟:前景提取、人體骨骼分類和關(guān)節(jié)點定位。前景提取通過深度圖像上的深度信息,設(shè)置相應(yīng)的閾值提取目標主體和形狀。人體骨骼分類用機器學習的算法對提取的形狀信息進行訓練,訓練出決策樹分類器依據(jù)形狀信息來匹配人體的各個部位。最后通過計算來匹配關(guān)節(jié)點在人體中的位置。

        Kinect傳感器數(shù)據(jù)采集標準:Kinect設(shè)備水平放置于桌面上,目標面對Kinect傳感器,距離為0.8~2.5 m。獲取的彩色圖像與深度圖像分辨率均為640*480,幀頻為30 fps。傳感器使用的三維坐標為:以Kinect為原點,通過右手定則建立空間坐標系,x軸的正方向為水平向左,y軸的正方向垂直向上,z軸方向為攝像頭拍攝方向。三維空間坐標使用(x,y,z)表示,如圖2所示。

        圖2 Kinect空間坐標系

        通過Shotton等[6]提出的方法從深度圖像中提取人體25個關(guān)節(jié)點,如圖3所示。

        圖3 Kinect25個關(guān)節(jié)點示意圖

        從圖3中可以看出,左右雙臂和雙手各有不同的關(guān)節(jié)點,這為后續(xù)識別左側(cè)或右側(cè)手勢提供了有利的數(shù)據(jù)支持。

        3 基于加權(quán)的DTW 算法識別粗粒度手勢

        3.1 動態(tài)時間規(guī)整(DTW)

        DTW 方法是Sakoe等[15]提出用于判斷時間序列相似性的方法。DTW 可以很好地匹配2個不同時間軸上的時序序列之間的匹配代價[16]。

        基于DTW 的手勢識別主要分為3個步驟:建立樣本庫、訓練樣本、識別樣本。在識別時首先截取部分手勢幀作為測試樣本,然后與樣本庫中的樣本進行對比,找出與之最匹配的樣本。手勢樣本庫中的樣本表示為R={R(1),R(2),…,R(m),…,R(M)},測試樣本為T={T(1),T(2),…,T(n),…,T(N)},其中m和n為樣本幀的序號,R(m)為第m幀的動作特征矢量,T(n)為第n幀的動作特征矢量,M、N為模板中所包含的動作總幀數(shù)。構(gòu)建一個M×N的矩陣,樣本庫樣本R為橫軸,測試樣本T為豎軸。將測試動作矢量T(n)映射到樣本庫動作矢量R(m),這種映射關(guān)系表示為(Rm,Tn),計算二者映射后對應(yīng)的歐幾里得距離,對R和T中所有對應(yīng)項求和:

        式中:K表示該幀特征向量的維數(shù);Rmk表示樣本庫樣本的第m幀的第k個特征值;Tnk表示測試樣本的第n幀的第k個特征值。D越小說明測試樣本T與樣本庫樣本R相似度越大,D越大則相似度越小。

        3.2 加權(quán)的DTW 方法

        動態(tài)時間規(guī)整默認每個手勢的關(guān)節(jié)點在軌跡上的貢獻度是相同的,對樣本中的所有關(guān)節(jié)點使用相同處理標準,而在實際手勢中不同關(guān)節(jié)點的位移變化對手勢識別所起的作用并不相同,某些關(guān)節(jié)點起到?jīng)Q定性作用,因此,本文提出一種改進的DTW 算法,通過對關(guān)節(jié)點進行加權(quán)來進行更優(yōu)的動態(tài)規(guī)劃,更精準地識別手勢。充分考慮各關(guān)節(jié)在上肢手勢中所起的作用,選取頸椎中部(1)、左肩(4)、左肘(5)、左手腕(6)、右肩(8)、右肘(9)、右手腕(10)、頸下脊椎(20)等8個關(guān)節(jié)(括號中的數(shù)字對應(yīng)圖3中的關(guān)節(jié)點編號)用于連續(xù)手勢識別,可有效減少運算的復雜度。每一個關(guān)節(jié)由一個三維坐標表示,因此,一幀骨骼數(shù)據(jù)可以表示為由8個關(guān)節(jié)點坐標組成的24維的動作矢量:

        人與攝像頭之間的位置以及骨架的大小等都會造成關(guān)節(jié)坐標的改變,因此需要對關(guān)節(jié)坐標進行預處理。以人體頸椎關(guān)節(jié)為原點,將坐標系平移到人體,并以脊柱的距離作為標準,分別對各關(guān)節(jié)坐標進行標準化,以消除干擾因素的影響,獲得較為標準的關(guān)節(jié)數(shù)據(jù)。根據(jù)中國成年人人體尺寸(GB/T 10000—1988),以雙臂平伸站立姿態(tài),左肘(5)、左手腕(6)、右肘(9)、右手腕(10)關(guān)節(jié)點到頸椎中部(1)、左肩(4)、右肩(8)、頸下脊椎(20)4點中心的距離作為權(quán)重標準,如左肘的權(quán)重為:

        l為關(guān)節(jié)點到中心的距離,整體匹配代價如式(3)所示:

        其中λ={wi},通過加權(quán)后的手勢序列匹配,對大幅度手勢動作得到識別結(jié)果。

        4 基于深度學習方法識別細粒度手勢

        DTW 算法能夠完成2個手勢序列的整體匹配,但對于手部的細節(jié)動作識別不夠準確,為此,本文采用基于深度學習的方法對動態(tài)手勢中的手部語義進行細粒度識別。深度學習方法已成功應(yīng)用于圖像識別領(lǐng)域,并且具有較好的穩(wěn)定性和魯棒性。

        4.1 卷積神經(jīng)網(wǎng)絡(luò)(CNN)

        卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)由輸入層、卷積層、池化層、全連接層以及輸出層組成。一般有若干卷積層與池化層交替設(shè)置,卷積層的每個節(jié)點通過卷積核與上一層局部信息相連,卷積的結(jié)果經(jīng)過激活函數(shù)得到該層特征圖;池化層中的每個特征面與上一層的一個特征面對應(yīng),對特征信息稀疏處理,獲取具有空間不變行的特征;在全連接層中,每個節(jié)點與上一層的節(jié)點全連接,整合卷積層和池化層中具有區(qū)分性的信息;在輸出層,通過Softmax分類器處理后的數(shù)據(jù)按概率返回分類結(jié)果。

        4.2 手部ROI的計算

        要想通過手部動作表達不同的語義,必須要對手部進行準確的定位和識別。傳統(tǒng)方法對復雜背景中的手分割和識別效果較差,本文通過Kinect提取的手部關(guān)節(jié)點來定位手部ROI,使用7層的CNN對手部圖像進行識別。

        在Kinect獲取的25個關(guān)節(jié)點中,手部的關(guān)節(jié)點位一共有8個,左右手各4個,分別為腕、手、拇指和指尖,根據(jù)這4個關(guān)節(jié)點與手整體位置之間的關(guān)系,4個點的質(zhì)心即可作為手部ROI的中心點,而ROI的邊長設(shè)定為人體前臂的長度,以保證手部區(qū)域的完整性。人體前臂的長度L可通過手肘到手腕的距離來計算:

        式中,(x5,y5)與(x6,y6)分別表示圖3中編號為5的關(guān)節(jié)點ElbowL以及編號為6的關(guān)節(jié)點WristL當前幀的坐標值。不同手勢情況下手部ROI的部分計算結(jié)果如圖4所示。

        圖4 手部ROI的計算結(jié)果

        4.3 基于CNN對手部ROI進行訓練和識別

        本文使用的CNN模型分為輸入層、卷積層、池化層、全連接層和輸出層。對提取的ROI手部圖像進行歸一化處理,得到90×90大小的圖片,將其輸入到CNN網(wǎng)絡(luò)中。歸一化尺寸的選取是根據(jù)實驗中多次采集到圖像的統(tǒng)計結(jié)果確定的。7層卷積神經(jīng)網(wǎng)絡(luò)對輸入圖像進行特征提取和采樣,再送入全連接層,最后通過Softmax函數(shù)得到分類結(jié)果,如圖5所示。

        圖5 基于CNN進行手勢識別的分類結(jié)果

        5 實驗結(jié)果與分析

        實驗環(huán)境:采用Unity3.6.1f1建立仿真駕駛環(huán)境,使用Kinect采集用戶信息,通過手勢識別與虛擬環(huán)境進行自然交互。軟硬件配置如表1所示。

        5.1 系統(tǒng)建模與界面

        本文使用3DMax創(chuàng)建虛擬環(huán)境中的模型,導出為FBX場景文件,并在Unity中導入到Scene中,調(diào)整好度量單位、燈光、動畫、嵌入媒體以及骨骼幾何體等,保證導出的場景中包含所有模型的元素,在Unity-Scene中對模型進行合理布局。

        所有的貼圖文件在Assets-Material文件夾中保存,F(xiàn)BX等模型文件在Models中保存,在導入好的模型的Inspector視圖中通過“Add Component”查找“MeshCollider”,加入網(wǎng)格碰撞功能。

        表1 軟硬件配置

        Unity中車輛與場景模型通過坐標等修改使得輪胎與道路路面接觸,設(shè)置好車輛動力學特性、重力場、觸發(fā)器和碰撞器的檢測等各項技術(shù)參數(shù),讓車輛模型能夠與場景的物體進行實時檢測。

        構(gòu)建了一個包含道路、車輛、交通信號燈、建筑物、樹木等在內(nèi)的虛擬城市場景,系統(tǒng)交互界面如圖6所示。

        圖6 系統(tǒng)交互界面

        5.2 手勢及交互效果定義

        為了在虛擬環(huán)境中更好地展現(xiàn)無人車對手勢指令的反饋效果,定義5種動態(tài)手勢,分別控制無人車前進、停止、左轉(zhuǎn)彎、右轉(zhuǎn)彎、后退,同時為了交互控制汽車行駛速度,定義4種模式的手部動作,可以疊加在上述5種手勢過程中,構(gòu)成復合手勢,使無人車同時在行駛方向和速度上有相應(yīng)的反饋。手勢名稱及動作語義如表2所示。

        表2 手勢名稱及動作語義

        表2中,手勢1—5由DTW 算法識別,手勢6—9由深度學習方法識別,二者組合,得到完整的手勢識別結(jié)果。手勢6—7中,每次識別之后速度按1個標準單位變化。

        5.3 關(guān)節(jié)點數(shù)據(jù)分析

        記錄實驗數(shù)據(jù),以備后續(xù)數(shù)據(jù)分析。手勢數(shù)據(jù)按照關(guān)節(jié)點X、Y、Z軸分別存儲,以便于數(shù)據(jù)分析。表3給出了TurnRight手勢的右手腕關(guān)節(jié)點(編號為10)的坐標序列值。

        表3 TurnRight的右手腕(10)點坐標

        由此可見,在TurnRight中,X軸數(shù)值逐漸上升,Y、Z軸無明顯變化。對于TurnRight,右手腕(10)關(guān)節(jié)點的X軸坐標影響較大,以此作為賦予權(quán)重依據(jù)。

        5.4 基于深度學習的識別

        該識別方法分為離線訓練與實時識別2個階段。離線訓練階段分為2個步驟:

        1)數(shù)據(jù)集

        數(shù)據(jù)集使用馬德里自治大學視頻處理與理解實驗室的HGDs數(shù)據(jù)集[17],選取其中的4種:手掌張開、手握拳、剪刀手和食指伸出。每種手勢200幅圖像。每類手勢按9∶1的比例分為訓練集與測試集,如圖7所示。

        圖7 手勢數(shù)據(jù)集

        2)訓練網(wǎng)絡(luò)模型

        本網(wǎng)絡(luò)由7個帶有relu層的卷積層與一個全連接層組成,使用softmax作為分類器。加載在ImageNet上預訓練的網(wǎng)絡(luò)模型,在上述手勢數(shù)據(jù)集上進行訓練,batch_size=64,迭代次數(shù)為2 000次。在測試集上的最終識別準確率為96.6%。存儲該訓練參數(shù)模型用于實時識別階段。

        5.5 手勢識別及虛實交互結(jié)果

        對粗粒度和細粒度手勢識別的結(jié)果及虛擬車輛的交互反饋效果如圖8所示。

        圖8(a)~(e)分別展示了舉起左手配剪刀手動作——汽車減速前進、舉起右手配拳頭動作——汽車加速后退、手左揮配手掌動作——汽車勻速左轉(zhuǎn)、手右揮配手掌動作——汽車勻速右轉(zhuǎn)、食指動作——后視鏡開關(guān)變化的交互效果。圖中左上角紅字為手勢識別結(jié)果,分別為DTW 算法識別結(jié)果(運動行進方向)、當前行駛速度、深度學習方法識別結(jié)果(速度或后視鏡變化)。

        圖8 手勢識別及交互結(jié)果

        為了進一步驗證本文方法的可行性,對每種手勢在仿真系統(tǒng)中測試其識別的精度,每種手勢分別測試100次,識別準確率如表4所示。

        表4 實驗結(jié)果

        實驗結(jié)果分析:從表4中可以看出SpeedUp和SpeedDown識別較為穩(wěn)定,手部的左右移動識別較好,手部細粒度識別整體較好,行進方向控制的平均準確率為95.8%,平均FPS為27.6 Hz,行進速度控制平均準確率為95.75%,平均FPS為28.75 Hz,實驗表明本文提出的方法在無人車仿真中的有效性。

        6 結(jié)論

        隨著社會的進步,智慧城市的發(fā)展,汽車智能化與網(wǎng)聯(lián)化即將到來,無人車自動駕駛是重點研究項目。本文主要面向仿真駕駛場景,將改進的DTW 算法與卷積神經(jīng)網(wǎng)絡(luò)方法相結(jié)合,對用戶的動態(tài)與靜態(tài)復合手勢進行實時識別,虛擬車輛根據(jù)識別結(jié)果進行交互反饋。

        猜你喜歡
        深度動作
        下一個動作
        深度理解一元一次方程
        深度觀察
        深度觀察
        深度觀察
        深度觀察
        動作描寫要具體
        畫動作
        讓動作“活”起來
        動作描寫不可少
        黄色大片国产精品久久| 午夜精品一区二区三区在线观看| 国产在线91观看免费观看| 久久AⅤ无码精品色午麻豆| 国产日产亚洲系列首页| 性久久久久久| 欧美国产日本高清不卡| 激情 一区二区| 亚洲美女一区二区三区三州| 男女性杂交内射女bbwxz| 国产精品久久久久影院嫩草| 久久人人做人人妻人人玩精| 午夜精品人妻中字字幕| 国产精品女老熟女一区二区久久夜 | 人妻中文字幕不卡精品| 99久久国产免费观看精品| 亚洲精品色午夜无码专区日韩| 亚洲av成人综合网| 91精品国产综合久久青草| 被灌醉的日本人妻中文字幕| 国产农村熟妇videos| 一级毛片60分钟在线播放| 国产一区二区三区经典| 97成人精品国语自产拍| 日本道精品一区二区三区| 妞干网中文字幕| 偷拍偷窥在线精品视频| 97se亚洲国产综合在线| 亚洲不卡av不卡一区二区| 一本大道久久精品一本大道久久| 视频在线观看国产自拍 | 中国一级黄色片久久久| 国产精品无码成人午夜电影| 亚洲中文字幕巨乳人妻| 中文字幕人妻av一区二区| 看全色黄大色黄大片 视频| 狠狠躁夜夜躁人人爽超碰97香蕉| 看全色黄大黄大色免费久久| 白白白在线视频免费播放| 乱人伦中文无码视频| 91亚洲欧洲日产国码精品|