国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

視覺導引裝配場景動態(tài)手勢識別方法

2023-07-25 02:55:50梁釗銘段旭洋
機械設計與研究 2023年2期
關鍵詞:指節(jié)關鍵點手勢

梁釗銘, 段旭洋, 王 皓

(1.上海交通大學 巴黎卓越工程師學院,上海 200240,E-mail: lionski@sjtu.edu.cn;2.上海交通大學 弗勞恩霍夫協(xié)會智能制造創(chuàng)新中心,上海 201306;3.上海交通大學 機械與動力工程學院,上海 200240)

在產(chǎn)品制造過程中,零件裝配是十分重要的一環(huán)。在面對部分工藝復雜、難以通過自動化方式進行裝配的產(chǎn)品時,需要采取人工方式進行。為減少人工裝配過程中的裝配錯誤或裝配缺漏,現(xiàn)有的一類解決方案采用機器視覺結(jié)合人工智能技術,對人工裝配過程進行輔助與監(jiān)督[1]。

現(xiàn)階段的人工裝配視覺監(jiān)督場景中,主要使用的方法有如下幾種思路。一種思路是對裝配人員在物料拾取時的手部位置進行定位,通過識別手部停留的物料框判斷是否拾取正確的裝配零件[2],這類方法主要針對零件的錯誤拿取問題;另一種思路通過識別事先劃定的錨框區(qū)域內(nèi)是否有正確安裝的零部件,對零件是否得到正確安裝進行識別[3];上述兩種思路分別從裝配步驟的起始階段即物料抓取階段,以及結(jié)束階段即零件裝配完成階段進行識別,有效地彌補了人工目視檢查方式的不足,在人工裝配視覺監(jiān)督場景中取得了較好的步驟判定效果。但現(xiàn)有方法仍存在不足之處,例如在旋緊螺栓等部分裝配工序中,裝配零件較為細小,視覺組件在不干擾裝配人員操作的安全距離外識別能力有限;其次,部分裝配工序?qū)τ诓僮魅藛T的特定操作流程有一定要求,例如螺絲擰動的動作方向以及圈數(shù)等等,這些無法通過上述的兩種思路進行識別;同時,受限于相機安裝的固定視角,對于一些安裝后會受到遮擋的零部件,單純使用錨框法難以識別,需要將操作人員的動態(tài)手勢動作納入考量,作為視覺監(jiān)督中判斷步驟是否正確完成的依據(jù)。

現(xiàn)階段對于操作人員手勢識別的研究主要集中于以下幾個方面:首先數(shù)據(jù)采集方式主要分為數(shù)據(jù)手套式與計算機視覺式,前者在提升精確度的同時會對操作者的動作形成限制;后者不影響操作者的手部動作,但容易受到環(huán)境條件、拍攝角度及手部自遮擋的干擾[4]。崔虎等人使用Kinect設備采集RGB信息以及深度信息,結(jié)合卷積神經(jīng)網(wǎng)絡與卷積長短期記憶網(wǎng)絡的方法提取動態(tài)手勢的短期異步特征[5];于安鈺使用調(diào)頻連續(xù)波(Frequency Modulated Continuous Wave, FMCW)雷達進行動態(tài)手勢的采集識別[6];趙雅等人結(jié)合Kinect設備與Leap Motion采集的信息使用XBoost算法對動態(tài)和靜態(tài)的手勢進行識別[7];郭放等人采用MEMS加速度傳感器進行數(shù)據(jù)采集,以進行后續(xù)對手勢的研究[8];以上手勢識別的方法需要使用Microsoft Kinect、Leap Motion、傳感器或數(shù)據(jù)手套等特定設備,基于經(jīng)濟性與使用便利性的考量,常見的二維工業(yè)相機相對具有更為廣泛的應用潛力。就對采集到的動態(tài)手勢數(shù)據(jù)使用的識別算法而言,谷學靜等人采用串聯(lián)CNN-LSTM的方式實現(xiàn)了對數(shù)據(jù)手套采集的簡單手勢的識別[9],將特定手部位置的加速度、角度等信息以及時序信息納入考量;Yu等人提出了一種基于CNN與特征融合的手勢識別方法[10],通過特征提取層識別特定點位;孫博文等人使用小型卷積對二值化手勢數(shù)據(jù)進行訓練,以通過指尖檢測的方式檢測手部并建立動作映射[11],但在面對手指距離較近時效果不甚理想。Hussain 等人使用遷移學習的方式,嘗試同時對靜態(tài)及動態(tài)的手勢進行識別[12]。以上方法針對的動作往往較為簡單,不涉及手部各部分或與零件之間的遮擋情況,在此場景下適應性有所欠缺。

本文對人工裝配視覺監(jiān)督場景下特定裝配動作的識別方法進行研究,提出并比較了基于手部特征點空間位姿信息的動態(tài)手勢數(shù)據(jù)集構(gòu)建方法及結(jié)合手部特征點空間域與時序信息的動態(tài)手勢識別方法,使用三種較為復雜的動作進行測試及驗證,實現(xiàn)了以較低的部署成本、較高的精度及魯棒性完成人工裝配過程中特定動作的識別目標,為視覺監(jiān)督步驟判斷提供了新的可參考依據(jù)。

1 動態(tài)手勢數(shù)據(jù)集構(gòu)建方法

首先需要實現(xiàn)的是動態(tài)手勢數(shù)據(jù)集的構(gòu)建。本段內(nèi)容將對人工裝配視覺監(jiān)督場景以及不同的數(shù)據(jù)采集與處理方法進行描述。

1.1 場景描述及原始數(shù)據(jù)采集方法

在人工裝配視覺監(jiān)督場景中,除常見的裝配體與機器視覺采集設備保持相對位置固定的情形之外,亦存在部分涉及到拆卸、重新組裝及體積較小、非固定相對位置的情形,例如筒形零件與軸狀零件的互相組裝過程,裝配體位置不固定且內(nèi)部的螺栓等零件存在遮擋。為實現(xiàn)成本控制以及減少對裝配者操作的影響,本研究使用固定安裝角度的二維工業(yè)相機對裝配操作過程中的動態(tài)手勢進行識別。二維工業(yè)相機采用俯視視角拍攝,視野需要覆蓋裝配臺及裝配員實際進行操作的區(qū)域。

為使數(shù)據(jù)更加輕量化進而降低模型尺寸及對運算能力的要求,原始手勢數(shù)據(jù)考慮使用手部關鍵點的識別及提取方法。目前常用的手部關鍵點提取開源庫有OpenPose[13]及Mediapipe Hands。鑒于后者不依賴軀干檢測,故采用Mediapipe Hands進行關鍵點提取。

▲圖1 手部關鍵點示意圖

初步提取的原始數(shù)據(jù)中所包含的是如圖1所示的21個特征點位在相機視野中的二維像素坐標[w,h]以及相對特征點0的深度估計值z;基于手部關鍵點的靜態(tài)手勢識別方法以及識別視野內(nèi)平移等簡單動作的方法通常直接對以上信息進行使用[14]。記為C:

(1)

為消除相機拍攝畫面畸變對特征點位定位造成的影響,首先需要對相機畫面的畸變進行處理:出于降低計算負荷的考量,此處僅考慮二階及以下的徑向畸變并忽略切向畸變。記[h′,w′] 為考慮上述畸變的像素坐標,r為像素點到圖像中心點的距離,一階徑向畸變系數(shù)為k1,二階徑向畸變系數(shù)為k2,可得畸變模型為:

(2)

利用上述公式(2)即可求解每個關鍵點近似的實際像素坐標[w,h]。

1.2 基于掌根-端點特征的方法

在本場景下,為進一步提取出復雜動態(tài)手勢中所包含的信息,需要對此原始數(shù)據(jù)進行進一步處理。首先需要將相機視野中的二維像素坐標[w,h]轉(zhuǎn)換為以手部關鍵點0為原點的手部坐標系PHAND下相對坐標[x,y]。為此需要進行坐標系的轉(zhuǎn)換。記相機內(nèi)參矩陣為K,坐標變換矩陣為[R|T)],原始數(shù)據(jù)消除徑向畸變后的坐標[w,h,z],手部坐標系下每個點位對應坐標[x′,y′,z′]:

(3)

由于原始數(shù)據(jù)消除徑向畸變后的坐標[w,h,z]的z分量為相機坐標系PCAM下的估計值,即以關鍵點0的估計深度為參照原點,為便于表示及計算,設坐標變換矩陣如下:

(4)

其中:w0為手部關鍵點0在消除徑向畸變后的橫坐標,hmid為所有手部關鍵點消除徑向畸變后的最大縱坐標與最小縱坐標之平均值:

(5)

在以[w0,hmid,z0]為原點的手部坐標系PHAND下,使用縮放矩陣S對每個點位的坐標進行處理,以消除手部相對相機距離變化以及不同裝配者手部尺寸變化造成的影響

(6)

其中縮放系數(shù)Sx、Sy、Sz的計算方法如下:

(7)

轉(zhuǎn)換完成后手部關鍵點的提取效果如圖2所示。

▲圖2 手部關鍵點坐標示意圖與實際手勢圖片

以位于手掌根部的關鍵點0為出發(fā)點,以其余關節(jié)處的20個關鍵點為端點,如圖3所示,通過坐標運算得到20個掌根-端點特征向量并組合為矩陣,記為:

Vtip=[Vtip,1|Vtip,2|…|Vtip,20]

(8)

(9)

▲圖3 關鍵點6、7、8對應的掌根-端點特征向量示意圖與實際手勢圖片

(10)

1.3 基于指節(jié)特征的方法

基于指節(jié)(指骨)的特征是手勢識別的可利用特征之一[15]。在本場景中,為進一步提取原始數(shù)據(jù)中潛在的可利用信息,選取多對關鍵點之間的空間坐標差值向量,使用包括擰、抓取、握在內(nèi)的多種動作進行了初步的觀察。如圖4所示,以順時針擰動螺絲刀這一動作進行時3組指節(jié)之間夾角關系為例,發(fā)現(xiàn)各手指指節(jié)之間的相對夾角在執(zhí)行特定手勢時存在具有一定規(guī)律的波動現(xiàn)象。

為在提取上述關鍵點對間信息的同時避免將數(shù)據(jù)量由O(n)(n為關鍵點數(shù)量)上升至O(n2),采取如表1所示的16對關鍵點對納入指節(jié)夾角特征的數(shù)據(jù)提取方法。

表1 納入指節(jié)夾角特征的手部關鍵點對

▲圖4 擰動動作指節(jié)夾角關系變化曲線示例

分別以上述表1中的16個指節(jié)特征關鍵點對為首末端點構(gòu)成點集Σfingers,如圖5所示,通過坐標運算得到16個指節(jié)特征向量并組合為矩陣,記為:

Vfingers=[Vf-1,2|Vf-0,5|…|Vf-19,20)]

(11)

▲圖5 納入指節(jié)夾角特征的手部關鍵點對構(gòu)成的特征向量示意圖與實際手勢

(12)

(13)

1.4 基于掌面-指節(jié)夾角特征的方法

在上一提取方法的基礎上,為進一步提取指節(jié)相對于手掌整體的彎曲程度信息,本文繼續(xù)提出基于掌面-指節(jié)夾角特征的提取方法。

首先,如圖6所示,將手部特征點0、5、17確定的平面設為手掌掌面參考平面,同時利用向量V0-5和V0-17向量外積提取掌面參考平面法向量Npalm:

(14)

▲圖6 掌面參考平面法向量Npalm示意圖與實際手勢

在掌面參考平面法向量的基礎上,考慮其與表1的指節(jié)關鍵點對之間的關系。由于指節(jié)向量與掌面之間的夾角一般情況下介于0°至180°,因此指節(jié)向量與Npalm的夾角一般情況下介于-90°至90°之間,因此使用向量外積的方式能通過正弦函數(shù)的性質(zhì)較好地反映包含夾角在內(nèi)的相互位置關系。因此,分別以上述表1中的16個指節(jié)特征關鍵點對為首末端點構(gòu)成點集Σfingers,通過外積運算得到16個掌面-指節(jié)特征向量并組合為矩陣,記為:

Vpalm=[Vp-1,2|Vp-0,5|…|Vp-19,20]

(15)

(16)

(17)

2 動態(tài)手勢識別方法

在動態(tài)手勢數(shù)據(jù)集構(gòu)建完成之后,需要對每個滑動窗口內(nèi)的動態(tài)手勢進行識別,以確定當前是否執(zhí)行了特定裝配動作。

由圖4可見,針對部分動作進行時存在輸出信號規(guī)律性波動的現(xiàn)象,首先考慮使用基于時序特征的閾值分割方法:對符合特定遞增/遞減閾值的特征向量進行周期性的模板匹配是其中一種思路[16]。然而,在本場景下此類方法存在以下不足:識別夾角變化較小的動作時,閾值可能難以被觸發(fā);并且針對不同的動作,需要人為對閾值進行調(diào)整以更好地契合實際的振幅及信號一階微分范圍。為提高識別模型針對不同動態(tài)裝配手勢的識別準確度及減少人工調(diào)整閾值的工作量,本節(jié)接下來主要探討基于神經(jīng)網(wǎng)絡(Neural Network)的識別方法。

2.1 循環(huán)神經(jīng)網(wǎng)絡的構(gòu)建

由于裝配動態(tài)手勢具有時間上的連續(xù)性,單一時刻的手部關鍵點及特征向量不足以反映動態(tài)的變化過程,為充分將時序信息納入考量,可以引入循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network)對手勢信息進行分類識別[17]。經(jīng)典的循環(huán)神經(jīng)網(wǎng)絡結(jié)構(gòu)包括長短期記憶網(wǎng)絡(Long short-term memory,LSTM)及其改進版本的循環(huán)門控單元(Gated Recurrent Unit ,GRU)[18],利用隱藏層輸出h向下一幀輸入傳遞時序特征。本文構(gòu)建的LSTM與GRU網(wǎng)絡基本架構(gòu)如圖7所示。

為進一步探究特定動態(tài)手勢中潛在的長期時序特征,對LSTM及GRU的模型深度進行增加[19]:在單層GRU/LSTM的基礎上,分別對時序傳遞過程中的隱藏狀態(tài)(hidden state)進行提取,作為傳入第二層GRU/LSTM的輸入數(shù)據(jù);同理將第二層的隱藏狀態(tài)作為輸入傳入第三層。其網(wǎng)絡結(jié)構(gòu)分別如圖8、9所示。

▲圖8 雙層LSTM與GRU模塊每層參數(shù)數(shù)量與基本架構(gòu)圖

▲圖9 三層LSTM與GRU模塊每層參數(shù)數(shù)量與基本架構(gòu)圖

2.2 卷積神經(jīng)網(wǎng)絡的構(gòu)建

鑒于卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network, CNN)在圖像分類問題上的出色表現(xiàn)[20],本文基于手勢識別中對結(jié)果分類的相似需求,將滑動窗口內(nèi)的三維輸入矩陣進行扁平化(Flatten),轉(zhuǎn)化為二維的矩陣,輸入卷積神經(jīng)網(wǎng)絡進行研究。

經(jīng)典的用于圖像分類的CNN模型包括:VGG (Visual Geometry Group)[20]、GooLeNet以及深度殘差網(wǎng)絡(Deep Residual Network, ResNet)[21]等。VGG的特點之一在于,卷積層均采用了相同的較小的3x3卷積核參數(shù),池化層亦采用相同的池化核參數(shù),堆疊為規(guī)整的模塊,結(jié)構(gòu)相對簡單之余具有一定的深度,預期具有較好的擬合能力;GoogLeNet引入了Inception模塊,使用不同尺寸的卷積核提取非線性特征,并利用中間層作為輔助分類器進行識別,并使用平均池化與Dropout替代全連接層的方式防止過擬合;ResNet根據(jù)擬合殘差相對于擬合潛在映射更為簡易的思路引入了殘差塊的概念,通過殘差塊的shortcut平滑誤差曲面(error surface),使用卷積層的stride取代池化層、平均池化層替代輸出端全連接層等方式,在易于修改與拓展的同時,取得了更好的性能表現(xiàn)。

對三維輸入矩陣進行扁平化之后,本文針對輸入矩陣相對傳統(tǒng)圖像維度較小的特點,對上述三種經(jīng)典模型進行了一定程度的改進。其中,改進后的類VGG-13模型結(jié)構(gòu)如下圖10所示;將GoogLeNet中使用的Inception模塊維度均調(diào)整為默認值的1/4;深度殘差網(wǎng)絡類別中,選用類ResNet-50的結(jié)構(gòu),并使用Bottleneck類型的殘差塊,同時在末尾的平均池化層使用2×2的小型池filter。

▲圖10 改進的類VGG-13模型示意圖

3 動態(tài)手勢識別實驗結(jié)果與分析

為對人工裝配視覺監(jiān)督場景下動態(tài)手勢識別任務中章節(jié)1所建立的手勢數(shù)據(jù)提取方法及章節(jié)2所討論的識別方法的效果進行對比研究與分析,本節(jié)使用章節(jié)1中建立的三種數(shù)據(jù)集,分別隨機分割為80%,20%作為訓練集和驗證集。

所有實驗均在3.6 GHz CPU (Inter i7-6850k)、NVIDIA GeForce GTX 1080 Ti 顯卡和16GB RAM 的臺式電腦以單線程進行。實驗基于Linux 系統(tǒng),開發(fā)工具為VS Code,編程語言為Python,深度學習框架為Keras。

3.1 實驗場景及數(shù)據(jù)采集

依據(jù)實際人工裝配過程中常見的裝配動作,本節(jié)選擇了擰(screw)、握(grasp)、抓取(pick)三個動作作為識別對象類別;同時,為契合實際,采集一定數(shù)量的裝配過程中常見的、與步驟判斷無相關性的動作作為第四類其他動作(others)納入數(shù)據(jù)集中。四類動作示例如圖11 (a)-(d)所示。

▲圖11 實驗場景選擇的4個動作類別示例

實驗數(shù)據(jù)采集場景及裝置如上圖所示,使用海康MV-CS-050-10GC工業(yè)相機對上述四類動作的動態(tài)手勢進行視頻采集,采集幀率為為20 fps,每個樣本包含連續(xù)30幀對應動作圖像。樣本包括單次動作和連續(xù)多次動作,動作執(zhí)行的速度亦有一定差別。實驗中的動態(tài)手勢由5名不同操作人員完成,具有一定的代表性。剔除采集過程中由于環(huán)境干擾、動作偏離采集范圍等原因造成數(shù)值異常的樣本后,每個有效原始動態(tài)手勢樣本均分別經(jīng)由章節(jié)2所述的三種方法進行處理并標簽化,消除原始數(shù)據(jù)差異對數(shù)據(jù)處理方式的影響。

實驗場景采集的有效原始數(shù)據(jù)樣本類別及數(shù)量如表2所示:經(jīng)亂序混合后,隨機選擇80%的樣本(合計962件)作為訓練集,剩余20%樣本(合計240件)作為驗證集。

表2 實驗場景采集的數(shù)據(jù)樣本類別及數(shù)量

表3 基于掌根-端點特征數(shù)據(jù)集實驗結(jié)果

表4 基于指節(jié)特征數(shù)據(jù)集實驗結(jié)果

表5 基于掌面-指節(jié)夾角特征數(shù)據(jù)集實驗結(jié)果

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

使用經(jīng)章節(jié)1所述三種方法處理后的上述樣本,分別使用章節(jié)2所述的3種LSTM算法、3種GRU算法、3種CNN算法進行實驗。訓練最大輪數(shù)(epoch)設置為200, 學習率(learning rate)為10-3,梯度剪裁范數(shù)(clipnorm)為0.1。各數(shù)據(jù)集各方法訓練收斂所用輪數(shù)(訓練時均值平均精度達到95%所需的epoch數(shù)量)、均方誤差和(loss)、驗證集上的各類別精度(categorical accuracy)如表3-5所示。

由上述實驗結(jié)果對比可知,整體而言基于掌面-指節(jié)夾角特征數(shù)據(jù)的模型準確率優(yōu)于基于掌根-端點特征或基于指節(jié)特征數(shù)據(jù)的模型;此場景下循環(huán)神經(jīng)網(wǎng)絡類模型的層數(shù)深度與準確率之間無顯著關聯(lián);卷積神經(jīng)網(wǎng)絡類模型中最深的殘差神經(jīng)網(wǎng)絡整體準確率優(yōu)于其余兩種模型。

準確率最高的動態(tài)手勢數(shù)據(jù)采集方法與算法模型組合為掌面-指節(jié)夾角特征數(shù)據(jù)集-深度殘差網(wǎng)絡,其次為掌面-指節(jié)夾角特征數(shù)據(jù)-單層GRU。此兩種方法的可訓練參數(shù)數(shù)量及浮點運算數(shù)(FLOPs,Floating Point Operations)如表6所示。

表6 準確率大于95%的兩種較優(yōu)模型的模型復雜度對比

實驗結(jié)果表明,利用圖像分類思路將滑動窗口內(nèi)逐幀矩陣展平導入卷積神經(jīng)網(wǎng)絡之中,可以有效實現(xiàn)動態(tài)裝配手勢分類的目標;而單層GRU模型在參數(shù)數(shù)量及前向傳播所需算力遠低于卷積神經(jīng)網(wǎng)絡模型的前提下,依然能充分提取不同動作類別在滑動窗口內(nèi)各幀之間的時序特征關系,并取得相對較好的識別準確率。針對不同場景的不同手勢重新訓練模型時,如訓練過程中或部署設備的算力或內(nèi)存有限,結(jié)合基于掌面-指節(jié)夾角特征的動態(tài)手勢數(shù)據(jù)采集方法與單層GRU循環(huán)神經(jīng)網(wǎng)絡亦可實現(xiàn)較高的手勢識別類別準確率,基本滿足該場景下視覺監(jiān)督對手勢識別的需求。

4 結(jié)論

針對在人工裝配視覺監(jiān)督場景下,依賴物料與裝配體的識別方法視線易受遮擋、可識別裝配步驟有限的問題,本文提出的三種基于手部關鍵點的動態(tài)手勢數(shù)據(jù)采集方法均能較好保留動態(tài)手勢的空間域與時序信息,其中基于掌面-指節(jié)夾角特征數(shù)據(jù)的模型準確率最高:結(jié)合單層GRU循環(huán)神經(jīng)網(wǎng)絡與改進型類ResNet-50卷積神經(jīng)網(wǎng)絡類算法,均能在裝配場景采集視頻流的連續(xù)時序滑動窗口中較好地識別特定裝配動作,有效彌補依賴裝配物料目標檢測類型視覺監(jiān)督方法存在的不足,相比現(xiàn)有方法將可進行視覺監(jiān)督的裝配步驟拓展到了擰轉(zhuǎn)、抓握等操作手勢及內(nèi)嵌螺栓螺柱等視野受限的零件。但目前本文所用方法僅實現(xiàn)了特定動態(tài)裝配動作識別的目標,針對可能的動態(tài)手勢定量分析及與工裝目標檢測的結(jié)合將是未來的研究方向。

猜你喜歡
指節(jié)關鍵點手勢
基于特征模板的外指節(jié)紋特征提取方法
聚焦金屬關鍵點
肉兔育肥抓好七個關鍵點
挑戰(zhàn)!神秘手勢
V字手勢的由來
便攜式手外骨骼康復裝置結(jié)構(gòu)研究
勝利的手勢
多按小拇指防早生白發(fā)
創(chuàng)造(2016年5期)2016-02-01 00:44:09
醫(yī)聯(lián)體要把握三個關鍵點
鎖定兩個關鍵點——我這樣教《送考》
語文知識(2014年7期)2014-02-28 22:00:26
宣威市| 武强县| 永新县| 昭觉县| 宁都县| 阿勒泰市| 红原县| 香河县| 福安市| 延川县| 延吉市| 景东| 靖远县| 宿迁市| 荣昌县| 崇左市| 河源市| 汕头市| 通城县| 商丘市| 肥西县| 海城市| 卓资县| 香港 | 高要市| 冷水江市| 民权县| 遵化市| 玉林市| 综艺| 定南县| 奉节县| 玉环县| 都匀市| 沭阳县| 禹州市| 邵阳市| 施甸县| 韶关市| 罗源县| 东台市|