999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于頭部姿態與面部特征混合手勢的設計與研究

2018-12-13 09:17:20殷繼彬
計算機應用與軟件 2018年12期

于 鯤 殷繼彬

(昆明理工大學信息工程與自動化學院 云南 昆明 650000)

0 引 言

人機交互是指計算機通過相關的設備實現人與計算機“對話”的技術[1]。多通道交互是一種混合交互系統,它遵守了“以人為中心”的自然交互法則,促進了人機交互的發展。它允許用戶通過多個不同的人體交互通道方式,并自動提取語義,識別出最終的交互目的。主要包括眼動跟蹤、姿勢識別、三維輸入、語音識別、人臉識別、自然語言理解等,目的在于提高人機交互的自然性和高效性。多通道研究成為人機交互領域的重要方向[2]。目前的人臉識別主要用于身份鑒別,而對于交互方面涉及較少。而面部手勢正好解決了這一缺陷,使得人的面部動作特征得以充分利用。

目前在手勢研究領域主要集中在筆手勢、手勢,而對于頭部姿態和面部手勢混合交互的研究較少。基于這種趨勢,本文提出了“臉表情+頭部姿態”的混合交互。混合手勢依靠面部特征和頭部姿態與計算機進行交互,從而解放雙手負擔。同時對于雙手不便的殘疾人與計算機交互具有重大的意義。隨著人工智能在包括人臉識別、聲紋識別、語音識別、手勢識別、姿態識別、情感識別等方面的進步,智能算法與人機交互出現了相互融合的趨勢。因為符合人的交互模式,基于人工智能的多通道智能人機交互被認為是未來自然的人機交互的主要方式之一[3]。在人工智能迅速發展的今天,人工智能與人機交互的結合已經成為必然的趨勢,這將會給未來人機交互帶來巨大的前景。同時將面部手勢和頭部姿態結合起來,能更好地探討新的交互通道存在的應用價值。實現基于混合交互手勢的人機交互,能夠更好地幫助雙手殘疾的人士與計算機的溝通,減少他們使用計算機的身體負擔,同時可以解放正常人的雙手,對于多通道人機交互技術的探索與研究具有重大的意義。

在設計手勢交互時候,需要著重考慮四大設計原則。1) 可靠性。由于手勢交互與日常活動有相同的特征和模式,為了避免誤操作應該考慮可靠性。2) 容錯性。充分考慮用戶的習慣,允許一定的差異。3) 連貫性。設計手勢時候,應當考慮前后的銜接,前后流暢。4) 繼承性。在對手勢形勢的選擇和引導與反饋機制的設計上,應該考慮與日常交流的繼承性[4],因此我們設計“臉表情+頭部姿態”的混合手勢交互應該更加尊重這四大原則。混合交互手勢是通過攝像頭獲取靜態面部手勢和頭部姿態的特征信息后,系統會把數據傳給Face++的后臺服務器,服務器會返回一些基本的面部信息數據和頭部姿態數據。通過編寫代碼對我們所需要的數據進行解析,然后按照指定的面部手勢和頭部姿態的定義標準進行識別,讓計算機執行相應的交互命令。

手勢識別包含人工智能、心理學、模式識別、語言學、生理學范疇,從其出現開始一直是研究者關注的熱點問題。在手勢識別中,無論是數據獲取還是模式分類方法都有許多種類[5]。手勢在現實生活中起到了不可或缺的作用,對于推動人與計算機的交互,具有重大的意義。手勢可以分為不同的種類,按照傳感器分類,可以分為基于傳感器和基于非傳感器[6]。基于傳感器的手勢數據獲取方式主要通過數據手套進行獲取,通過數據手套獲取和捕捉手指各個關節在操作過程中變化角度、各個手指之間的夾角以及傾斜角等有用信息,并把采集到的信息作為識別過程需要用到的信息[7]。基于非傳感器的手勢識別是通過設備的攝像頭對手勢操作過程的手勢數據進行采集和記錄的[8]。對于手勢識別的研究可以分為兩種:動態手勢識別和靜態手勢識別。利用攝像頭進行手勢識別的技術分為兩種:單目的圖像識別和雙目的圖像識別[9]。本文就是基于靜態圖像的面部手勢和頭部姿態的手勢識別。

目前國內外對于面部手勢涉及較少,而對于人臉身份鑒別方面涉及較多。比如2017年發布的Iphone X的Face ID就采用了人臉識別技術進行解鎖。國外有一項關于面部手勢的研究就是FaceSwitch[10],它是基于眼動儀的凝視點檢測和beyond reality face的人臉關鍵點跟蹤技術實現的,是動態的人臉跟蹤和眼部跟蹤。而本文是利用Face++平臺基于靜態圖像的人臉關鍵點檢測技術和頭部姿態檢測技術,自定義出來一套基于“臉表情+頭部姿態”的混合交互手勢,同時加入了頭部姿態的跟蹤。FaceSwitch能夠定義的面部手勢只有4種,本文提出的基于“臉表情+頭部姿態”的混合手勢,可以定義的混合手勢共有28種,大大增加了交互手勢的多樣性,同時對于探索多通道人機交互具有重大的意義。

1 “臉表情+頭部姿態”混合手勢

1.1 面部手勢

在正常情況下,人的左眼和右眼分別有兩種狀態:睜開和閉上。嘴巴也有兩種狀態:張開嘴巴和閉上嘴巴。按照排列和組合原理,我們能定義的面部手勢共有2×2×2=8種。這8種狀態分別是:左眼睜開右眼睜開嘴巴張開、左眼睜開右眼睜開嘴巴閉上、左眼睜開右眼閉上嘴巴張開、左眼睜開右眼閉上嘴巴閉上、 左眼閉上右眼睜開嘴巴張開、左眼閉上右眼睜開嘴巴閉上、左眼閉上右眼閉上嘴巴張開、左眼閉上右眼閉上嘴巴閉上。然而在正常情況下,我們的臉部狀態是左邊的眼睛和右邊的眼睛都睜開,嘴巴處于閉合狀態,同時遵守手勢設計原則的可靠性,因此我們將這種情況去除掉。因為我們能夠定義并且識別的面部手勢共有7種。

1.2 頭部手勢

在現實生活中,人的頭部姿態可以分為6種狀態:抬頭、低頭、向左歪頭、向右歪頭、向左扭頭、向右扭頭。因為我們的面部手勢是基于攝像頭的面部特征采集,當我們向左扭頭和向右扭頭的時候,會影響我們面部特征的采集,大大降低面部手勢的識別準確率。因此我們能夠和面部手勢結合起來的頭部姿態只有四種。

1.3 “臉+頭部姿態”的混合手勢

我們能夠識別使用的面部手勢共有7種,能跟面部手勢結合起來的頭部姿態共有4種,根據排列和組合原理,我們能夠設計和識別的基于“臉表情+頭部姿態”的混合手勢共有28種。我們將它們分為四組,它們分別是:

第一組:左眼睜開右眼睜開嘴巴張開抬頭、左眼睜開右眼閉上嘴巴張開抬頭、左眼睜開右眼閉上嘴巴閉上抬頭、 左眼閉上右眼睜開嘴巴張開抬頭、左眼閉上右眼睜開嘴巴閉上抬頭、左眼閉上右眼閉上嘴巴張開抬頭、左眼閉上右眼閉上嘴巴閉上抬頭。

第二組:左眼睜開右眼睜開嘴巴張開低頭、左眼睜開右眼閉上嘴巴張開低頭、左眼睜開右眼閉上嘴巴閉上低頭、 左眼閉上右眼睜開嘴巴張開低頭、左眼閉上右眼睜開嘴巴閉上低頭、左眼閉上右眼閉上嘴巴張開低頭、左眼閉上右眼閉上嘴巴閉上低頭。

第三組:左眼睜開右眼睜開嘴巴張開向左歪頭、左眼睜開右眼閉上嘴巴張開向左歪頭、左眼睜開右眼閉上嘴巴閉上向左歪頭、 左眼閉上右眼睜開嘴巴張開向左歪頭、左眼閉上右眼睜開嘴巴閉上向左歪頭、左眼閉上右眼閉上嘴巴張開向左歪頭、左眼閉上右眼閉上嘴巴閉上向左歪頭。

第四組:左眼睜開右眼睜開嘴巴張開向右歪頭、左眼睜開右眼閉上嘴巴張開向右歪頭、左眼睜開右眼閉上嘴巴閉上向右歪頭、 左眼閉上右眼睜開嘴巴張開向右歪頭、左眼閉上右眼睜開嘴巴閉上向右歪頭、左眼閉上右眼閉上嘴巴張開向右歪頭、左眼閉上右眼閉上嘴巴閉上向右歪頭。

1.4 “臉表情+頭部姿態”混合交互命令

由于我們定義的“臉+頭部姿態”的混合手勢共有28種,為了減少任務復雜度,提高實驗的精確性,因此我們只定義7種命令分別為:選中、右擊、重置、放大、縮小、移動、取消選中。然后我們將這28種混合手勢每7個一組,分為4組分別進行驗證。這7種命令與混合手勢的對應關系如表1-表4所示。

表1 “臉+頭部姿態”混合手勢與交互命令(1)

表2 “臉+頭部姿態”混合手勢與交互命令(2)

續表2

表3 “臉+頭部姿態”混合手勢與交互命令(3)

表4 “臉+頭部姿態”混合手勢與交互命令(4)

1.5 面部手勢識別算法

“臉+頭部姿態”混合手勢定義完之后需要進行混合手勢識別,此時攝像頭會處于一直工作狀態,并且自動拍成一張靜態圖片存到本地,然后傳給服務器進行檢測。服務器會通過JSon的方式返回給我們人臉和頭部姿態的檢測信息,我們將這些信息融入到自己設計的混合手勢識別算法,等待系統識別相應的面部手勢之后,然后做出相應的反饋。本文用到服務器返回數據中的兩個字段,它們分別是eyestatus、mouthstatus和headpose。eyestatus下又包括left_eye_status 和right_eye_status。headpose中包括pitch_angle、roll_angle、yaw_angle。這些屬性并不是直接給出眼睛和嘴巴的張開、閉合狀態和頭部姿態的具體信息,而是返回了一些浮點數。我們根據這些浮點數,定義了一些閾值,來控制混合手勢識別算法當中眼睛和嘴巴的張開和閉合狀態以及頭部的狀態,從而根據這些狀態設計出相應“臉+頭部姿態”的混合交互手勢。

1.6 頭部姿態檢測原理

本文是根據頭部姿態角來獲取頭部姿態,頭部姿態角與飛行器姿態角類。通常所說的飛行器姿態角是指機體坐標系與地面慣性坐標系之間的夾角,可以用橫滾角—roll、俯仰角-pitch、偏航角-yaw三個角表示。頭部姿態也是采用這三個參數來檢測的。

Pitch-angle對應的抬頭和低頭,roll-angle對應的是左右歪頭。坐標系采用的是地軸系。地軸系原點選擇為地面上某一點,X0軸與地面平行指向正北方向,Z0軸與重力加速度的方向一致垂直地面向下,Y0軸指向正東并與X0-Z0構成右手坐標系[11]。本文中頭部姿態的檢測也是參照此坐標系進行定義的,如圖1所示。

圖1 頭部姿態坐標原理圖

2 總體框架設計

2.1 結構設計

本文提出的基于頭部姿態與面部特征混合手勢應用是以C/S(客戶端/服務器端)體系結構為基礎進行開發的。整個面部手勢交互系統有人臉信息采集模塊、面部手勢和頭部姿態分析模塊及交互模塊四部分組成(見圖2)。人臉信息采集使用ANC酷睿攝像頭(1080P高清版);人臉檢測分析在Face++服務器端進行;服務器返回的信息根據我們混合手勢的定義規則和算法然后做出相應的交互和反饋。

圖2 “臉表情+頭部姿態”流程圖

2.2 環境配置

為了實現面部手勢的采集,首先要對Java和JMF進行環境變量配置,使攝像頭能夠和Java環境正常的通信,我們才能夠采集到混合交互手勢識別所需要的人臉和頭部信息。這是進行混合手勢識別最關鍵的一步。同時登錄Face++官方網站,注冊一個新的賬號并登錄。點擊“管理應用”項目下的API Key,點擊添加,選擇正式使用,輸入應用名稱、應用分類等信息,然后選擇應用平臺Java,點擊創建之后,會自動生成相對應的“API Key”和“API Secret”,只有取得這兩個參數,我們的應用才可以被調用。

2.3 “臉表情+頭部姿態”核心算法

環境全部配置好以后,我們可以編寫面部手勢核心代碼了,根據前邊提到的面部手勢的定義,我們將眼睛張開的最小值判定設為30,眼睛閉上的最小值判定為10。嘴巴閉上的狀態判定值為0,嘴巴張開的判定值大于0。對于頭部姿態的檢測,我們可以根據姿態角原理獲取頭部角度的三個參數,根據不同參數的正負和大小,定義出頭部姿態的判斷算法。根據“臉+頭部姿態”的定義規則和最小值的限制,編寫出混合手勢識別和定義的核心算法,部分代碼如下所示:

//嘴巴

float open=mouthstatus.getLong(″open″);

String value=glass.getString(″value″);

System.out.println(value);

//pitch-angle 抬頭低頭

double UpDownHead=headpose.getDouble(″pitch_angle″);

System.out.println(UpDownHead);

//roll_angle 左右歪脖子

float SwingNeck=headpose.getLong(″roll_angle″);

//眼睛

Floatno_glass_eye_open=left_eye_status.getLong(″no_glass_eye_open″);

float normal_glass_eye_open=left_eye_status.getLong(″normal_glass_eye_open″);

float right_eye_open=right_eye_status.getLong(″no_glass_eye_open″);

float right_eye_glass_open=right_eye_status.getLong(″normal_glass_eye_open″);……

3 實驗環境搭建和數據

3.1 硬件環境搭建

“臉表情+頭部姿態”的混合面部手勢是基于攝像頭采集獲取面部特征和頭部姿態的,整體設備安裝如圖3 所示。其中攝像頭設備位于顯示器的上方,正對著人臉。

圖3 設備安裝示意圖

3.2 界面展示

打開混合交互手勢交互識別程序的主界面菜單如圖4所示。演示程序主界面主要有一個攝像頭實時采集窗口和一個測試目標組成。該系統實現了面部手勢識別界面和面部手勢反饋界面的分離,兩者互不干擾。

圖4 實驗程序主界面

3.3 放大功能演示

由于混合手勢種類繁多,這里只演示放大操作,當我們做出即右眼睜開左眼睜開嘴巴張開向左歪頭手勢時,此時混合手勢識別系統識別手勢,并執行放大功能,目標成功被放大。結果如圖5所示。

圖5 放大命令效果圖

3.4 實驗數據

本文中的測試工作以功能驗證為主要測試目的,評估“臉+頭部姿態”的混合手勢系統是否達到預定的功能目標。根據操作的特點安排的測試主要有“臉+頭部姿態”混合手勢識別的成功率。針對不同的手勢種類,進行成功率測試。實驗前允許實驗者進行練習并熟悉實驗環境,針對不同的混合手勢種類,每個混合手勢設計測試用例20個,其中平均成功率為90.995%。具體測試結果如表5-表8所示。

表5 “臉表情+頭部姿態”混合手勢成功率測試(1)

表6 “臉表情+頭部姿態”混合手勢成功率測試(2)

表7 “臉表情+頭部姿態”混合手勢成功率測試(3)

表8 “臉表情+頭部姿態”混合手勢成功率測試(4)

3.5 實驗數據分析

經過對系統的功能性測試和面部手勢成功率分析,由數據可以看出,面部手勢識別交互系統基本實現了我們所設計的功能,滿足自然人機交互的需求。“臉+頭部姿態”混合手勢成功率可以達到90%,但是根據實驗結果可以知道,面部手勢識別率與光線、攝像頭的遠近有一定的影響,有待進一步改進。

4 結 語

本文的創新點基于Face++的人臉關鍵點檢測技術,設計出了面部手勢識別算法,定義出了28種基本的混合手勢,能夠流暢地進行人機交互。通過理論分析及實驗研究人與設備之間的交互通道和交互過程,并結合面部手勢的設計方法探討新的交互通道,豐富了三維手勢交互方式。同時本文設計的面部手勢是基于攝像頭的面部特征和頭部姿態采集,因此光線、攝像頭的方位、距離人臉的位置、頭部位置對于面部手勢識別

的準確性具有一定的影響,需要我們進一步改進。

主站蜘蛛池模板: 国产丰满大乳无码免费播放| 热久久综合这里只有精品电影| 91免费在线看| 欧美成人精品在线| 亚洲欧洲一区二区三区| A级毛片无码久久精品免费| 九色综合伊人久久富二代| 少妇精品在线| 亚洲va精品中文字幕| 国产爽歪歪免费视频在线观看 | 亚洲欧美日韩另类在线一| 激情午夜婷婷| 永久天堂网Av| 98超碰在线观看| 久久精品这里只有国产中文精品 | 中文字幕 91| 亚洲精品无码久久毛片波多野吉| 亚洲欧美综合另类图片小说区| 91综合色区亚洲熟妇p| 五月天香蕉视频国产亚| 人妻精品全国免费视频| 国产精品美乳| 一级毛片免费观看久| 国产女同自拍视频| 狠狠色成人综合首页| 欧美影院久久| 久夜色精品国产噜噜| 黑人巨大精品欧美一区二区区| 97亚洲色综久久精品| 成人日韩欧美| 日韩a在线观看免费观看| 亚洲乱伦视频| 在线永久免费观看的毛片| 亚洲天堂视频在线观看| 黑色丝袜高跟国产在线91| 欧美丝袜高跟鞋一区二区 | 国产精品成人一区二区不卡| 91香蕉国产亚洲一二三区| 国产视频自拍一区| 欧美成人怡春院在线激情| 免费欧美一级| 福利一区三区| 国产亚洲欧美在线中文bt天堂| 国产精品亚洲一区二区三区z| 国产精品99一区不卡| 丝袜亚洲综合| 国产成人综合日韩精品无码首页| 国产成人精品免费av| 久久久久久高潮白浆| 亚洲天堂免费在线视频| 日韩视频福利| 久久精品只有这里有| 亚洲欧美激情小说另类| 永久成人无码激情视频免费| 男女精品视频| 制服丝袜一区| 五月激激激综合网色播免费| 伊人天堂网| 亚国产欧美在线人成| 国产成人久视频免费| 毛片在线播放a| 精品黑人一区二区三区| 有专无码视频| 国产成人a毛片在线| 三区在线视频| 亚洲精品国偷自产在线91正片| 久久伊人操| m男亚洲一区中文字幕| 国产一线在线| 亚洲毛片一级带毛片基地| 国产一线在线| a色毛片免费视频| 午夜国产大片免费观看| 欧洲极品无码一区二区三区| 久热99这里只有精品视频6| 毛片大全免费观看| 尤物亚洲最大AV无码网站| 在线a视频免费观看| 亚洲精品第一页不卡| 免费播放毛片| 日韩精品高清自在线| 国产视频一二三区|