閆洪猛
(德州職業技術學院,山東德州 253034)
人機交互系統是人工智能技術下的重要分支,近年來無人機技術的不斷進步使得人機交互系統受到了廣泛關注,越來越多的人機交互方案相繼提出。傳統的無人機操控模式包含遙控器或搖桿以及地面站設備儀器等,對操作者的技術要求較高,在無人機的交互與控制方面具有較高的門檻,對無人機技術的推廣有不利影響。近年來新型無人機控制模式被提出,只需要穿戴特殊的輔助設備便能實現便利的無人機控制,如基于視覺的無人機控制方法便獲得了廣闊的發展空間。但因為傳感器傳輸距離限制,系統需要領航員RGB-D 傳感器保持一定距離之內,室外運行受到此機制約束。為了進一步拓展人機交互的功能性,克服現有的系統缺陷,通過深度學習分析手勢動作,實現在室外進行應用,并且在響應效率上有了進一步提高。
本文所述的無人機人機交互系統,在動作識別功能方面具有3 個結構:①視覺中對于操作人員的辨識和跟蹤,在圖像獲取方面,跟蹤的結果提取將操作者作為中心,對包含操作者的所在位置進行立體匹配,并生成深度圖;②結合深度視頻序列,形成包括操作者人物動作特點和時間特點的彩色紋理圖;③通過卷積神經網絡,在嵌入式開發板中實現人物動作的識別。
為了實現無人機手勢控制系統在戶外的應用,在系統啟用設計方面,結合回傳視頻明確操作者的位置信息,結合位置信息利用快速視覺跟蹤算法來持續跟蹤操作者。結合跟蹤位置在雙目攝像機獲取的視頻序列,從中裁剪出一個只有人物內容的視頻,按照裁剪的視頻經過立體匹配算法形成深度圖。在系統啟動階段結合攝像機顯示內容,在地面站利用鼠標點擊的方式將操作者面部范圍設定為跟蹤區域。跟蹤期間按照跟蹤位置,在高分辨率的視頻中裁剪一個小范圍視頻,經過視頻預處理和視頻壓縮,不僅能解決相機漂移問題、清除操作者附近的其他外部影響因素,同時也降低了視頻運算量,提高響應效率。按照裁剪獲得的兩個圖像計算深度圖,可以選擇基于塊匹配的立體匹配算法,在匹配期間操作者會和地面深度信息差縮小,若地面深度信息抽取穩定性不足,地面深度信息通常會影響到深度圖中的人物提取;可以設計紋理匹配閾值,將地面細微紋理過濾掉,得到一幅較為干凈完整的人物動作畫面。
在獲取雙目深度圖之后,根據特征描述方法嘗試改進深度圖,運用彩色信息描述時間信息,將空間信息在同一張圖中疊加顯示。以雙目深度圖作為基準,視頻序列中的動作空間信息與時間信息都在一張圖片中投射,生成彩色紋理圖。視頻序列中臨近的兩幀深度圖差分出的運動空間特征,都結合運動時間特點具有不同顏色,而且可以疊加,形成包括運動時間特征和空間特征的彩色紋理圖。再對圖片上的像素位置進行操作處理,使視頻序列能夠壓縮為一張色彩較為飽滿的彩色紋理圖,以像素點值的空間位置描述動作序列的空間特征,像素點相對的顏色值便是動作序列的時間特征。
雖然卷積神經網絡可以自動提取圖片特征進行分類處理,但分類功能過于完善導致在訓練數據不充足的情況下出現過擬合的問題。為了改善這一問題,可以選擇旋轉圖片的方式拓展訓練數據集,緩解過擬合現象。訓練卷積神經網絡在ImageNet 數據集中獲得顯著成績的AlexNet 網絡結構,這一網絡結構通過5個卷積層以及3 個全鏈接層形成。后一卷積層的核與前一層中的全部核映射相連,全鏈接層的神經元鏈接到前一層的所有神經元中,響應歸一化層和第1、2 卷積層之后。最大池化層與在響應歸一化層和第5 個卷積層后,ReLU 非線性在所有卷積層和全鏈接層的輸出中應用。這一網絡結構讓多分類Logistic 回歸目標最大化,能夠最大化預測分布下訓練樣本中正確標簽的對數概率均值。為保證卷積網絡的結果正確,AlexNet 網絡結構在ImageNet 中完成訓練的模型可以用作初始網絡參數,網絡中各層權重利用梯度下降法進行計算,其中的參數一般會使迭代次數和學習率產生變化,網絡一次迭代使用250 余張圖片,按照訓練數據集的具體情況進行訓練循環。
通過深度學習來分類數據信息,這種方法需要明確很多位置的具體參數,也要通過神經網絡針對不同類型的數據信息進行預先的學習過程。建立完善樣本數據集來實現神經網絡的訓練,確保神經網絡能夠獲得全面可靠的參數。為了達到預定的訓練網絡目標,還要通過其他的分類數據實現所獲網絡參數的可靠性驗證,以下便為數據集的構建過程。
神經網絡參數通常根據所用訓練的數據集決定,訓練結果的質量水平也直接取決于數據集:①樣本越大的數據集效果越好,但若數據集過大則可能對訓練的過程及其結果帶來不利影響,所以數據集的構建需要明確合理的數據量,這是基本環節;②用作訓練的數據集需要盡量包括正確動作的不同狀況,在各種光照和外部背景環境的條件下進行采集;③用作訓練的數據集要實現數據集中各類圖片的統一性,圖片內容分類不能混亂。
無人機所獲得到的畫面信息與靜態相機能夠拍到的畫面對比可能會出現相機飄移,所以在系統設計方面,神經網絡算法需要具備較強的適應能力:選擇雙目攝像機和無人機,在多種背景和光照條件下建立數據集;設計自控無人機的多種動作。無人機的實際應用會遇到環境光照不一致等問題,應用環境通常比正常環境所知的數據集更具不確定性,為了規避誤差、誤判,在動作設計方面需要盡量選擇特征差異較大的動作,將其作為有效動作,這在有關實驗中已得到了證實。
為了辨識無關動作,構建的數據集要包括多種無關動作,在系統數據集的構建上選擇多個小動作和個別的無關動作,在畫面采集期間盡量讓多個不同的人在不同環境下分別完成采集工作,采集距離設定在4~10 m,采集時需要盡量確保任務在左右兩個攝像頭的公共區域內。采集到的數據信息盡量包括不同的使用環境,如不同的光照環境和其他復雜環境等,無關動作數據信息也可以利用采集數據集之外的視頻序列建立。
在視頻信息獲取完成后,按要求處理為彩色紋理圖,選擇出較為標準的動作,刪除無關動作,并把不同的動作分類、建立列表,便于之后的訓練過程。在一番篩選后,確保只有在動作完畢后才能被判定為有效動作,避免動作誤判等問題。在生成的數據集中,各個類型的圖片可以達到幾千張,而每一類的彩色紋理圖片都要進行標注,確保所有彩色紋理圖在輸入神經網絡時便于分類。無人機在運作期間受到環境影響,如在刮風的條件下運作會傾斜,無人機運行姿態判斷,結合姿態數據旋轉圖片的運算,對無人機的嵌入式計算機帶來更高的壓力,對此可以通過數據拓展的方式擴充數據集,避免無人機圖像采集期間受環境影響而傾斜的現象。在數據集中先隨機抽調一些圖像,將這一部分圖像以4°之內的范圍進行隨機方向旋轉以補充數據集,避免神經網絡過擬合的同時也進一步加強了神經網絡的適應能力。
深度學習下的無人機人機交互系統,系統的構成特征基本在于以下3 點:①將卷積神經網絡應用于實時人機交互系統中,通過生成彩色紋理圖描述視頻序列中時間特征和空間特征,根據這些描述對后續圖片進行訓練與分類,進一步提高了圖片和視頻的辨識度;②以雙目視覺的方式生成深度圖,以新型的能夠適應更復雜環境的手勢識別方法,根據動作標準進行手勢運動便可以識別,并不需要重新訓練用作動作識別的模型,相對其他傳感器的識別精準性和范圍進一步提高;③在無人機中搭載處理器實現人機交互,能夠有效提高信息傳輸效率,降低傳輸延遲。
無人機利用飛行控制器和GPS 模塊能夠做到自主懸停,搭載嵌入式平臺實現圖像與動作的自動識別。無人機平臺通過電壓22.2 V、容量5200 mA·h 的鋰離子電池作為電能來源。嵌入式平臺可以選擇Jetson TK1 平臺,這一平臺所搭載的處理器具有多個CPU,可以保證圖像處理效率和性能。圖像采集處理與動作識別一般在這一平臺中實現,而且平臺是飛行控制和地面站信息傳輸的重要節點,利用串口連接飛控,應用WiFi與地面站連接;而地面站則可以實現飛行器狀態監控,可以查看運算結果。
基于雙目視覺和深度學習的無人機人機交互系統,解決了深度相機傳輸范圍制約和光照制約的問題,能夠在室外的更多場景下應用。當前這一系統依然有很多地方需要繼續完善,以優化動作識別和識別響應效率。