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

        ?

        基于Kinect的隔空人手鍵盤輸入

        2013-09-20 05:31:20張仲一楊成吳曉雨
        關(guān)鍵詞:人手指尖手部

        張仲一,楊成,吳曉雨

        (中國傳媒大學(xué)信息工程學(xué)院,北京100024)

        人手擁有人身體最靈活的肌肉,他不僅可以幫助我們完成日常的勞動,還可以幫助傳達(dá)豐富細(xì)致的信息,例如本文將要實(shí)現(xiàn)的人手三維空間虛擬鍵盤輸入功能?;谝曈X的手指交互現(xiàn)在及不久的將來在人機(jī)交互領(lǐng)域?qū)⒂袕V泛和重要的用武之地,主要包括四類:(1)手語識別,利用計算機(jī)視覺和紅外深度影像,應(yīng)用圖像處理技術(shù),完成手語、語音、文字指尖的相互轉(zhuǎn)換,以幫助聾啞人群。(2)手勢識別,利用靜態(tài)或動態(tài)手勢進(jìn)行人機(jī)交互,在身份識別、機(jī)器人控制和家用電器控制等方面具有廣闊的應(yīng)用前景。(3)虛擬觸控技術(shù),使用非接觸式的空間虛擬觸控系統(tǒng),通過手掌和軀干的運(yùn)動,操縱游戲、娛樂、多媒體設(shè)備。(4)手指書寫,使用手指的運(yùn)動軌跡判定識別方法取代傳統(tǒng)鍵盤的文字輸入方式。而最后一項內(nèi)容,就是本系統(tǒng)研究的主要目的。由于人手具有很高的復(fù)雜形變的特點(diǎn),所以手指運(yùn)動分析是一個很難的課題[1]。

        1 Kinect介紹及使用

        1.1 簡介

        Kinect是美國微軟公司為XBOX360游戲機(jī)開發(fā)的一款體感外設(shè),于2010年11月4日正式推出。如圖1所示。

        圖1 Kinect體感外設(shè)

        Kinect事實(shí)上的核心是三維體感攝影機(jī),并使用即時動態(tài)捕捉、影像辨識、麥克風(fēng)輸入、語音辨識功能讓玩家不在依賴于使用手柄,通過玩家的四肢運(yùn)動操作游戲。Kinect是由一個RGB攝像頭和一對由紅外發(fā)射器和CMOS接受器組成的深度攝像頭所組成的,可以得到場景的RGB顏色信息和深度數(shù)據(jù)。

        1.2 工作原理

        Light Coding技術(shù)理論是利用近紅外光對測量空間進(jìn)行編碼,經(jīng)感應(yīng)器讀取編碼的光線,交由晶片運(yùn)算進(jìn)行解碼后,產(chǎn)生成一張具有深度的圖像。Light Coding技術(shù)的關(guān)鍵e雷射光散斑,當(dāng)雷射光照射到粗糙物體、或是穿透毛玻璃后,會形成隨機(jī)的反射斑點(diǎn),稱之為散斑。散斑具有高度隨機(jī)性,也會隨著距離而變換圖案,空間中任何兩處的散斑都會是不同的圖案,等于是將整個空間加上了標(biāo)記,所以任何物體進(jìn)入該空間以及移動時,都可確切記錄物體的位置。Light Coding發(fā)出雷射光對測量空間進(jìn)行編碼,就是指產(chǎn)生散斑。Kinect就是以紅外線發(fā)出人眼看不見的雷射光,透過鏡頭前的光柵將雷射光均勻分布投射在測量空間中,再透過紅外線攝影機(jī)記錄下空間中的每個散斑,獲取原始數(shù)據(jù),再通過計算生成深度圖像。

        Kinect的優(yōu)勢是無論周圍環(huán)境的光照條件強(qiáng)弱,都可以被Kinect的CMOS紅外傳感器所感知。紅外傳感器通過灰度值的大小來標(biāo)度被測物體的深度值,也就是其傳感器的距離:越黑表示距離越遠(yuǎn),越白表示距離越近。Kinect測量感測范圍內(nèi)的所有物體距離攝像頭的深度,并保存為景深數(shù)據(jù)圖。傳感器以每秒30幀的速度生成景深圖像流,以達(dá)到實(shí)時的數(shù)據(jù)監(jiān)測[2]。

        1.3 驅(qū)動平臺及開發(fā)環(huán)境

        最初,微軟并沒有公布其它平臺的Kinect驅(qū)動程序。國外的Kinect開發(fā)者們以及開源社區(qū)對其破解,使其可以應(yīng)用到PC平臺之上,并且對于代碼開源。2月 1日 Microsoft正式使 Kinect支持于Windows系統(tǒng)平臺并公開發(fā)售 window版 Kinect。Microsoft同時推出 SDK 1.0,Kinect for Windows SDK是微軟 Kinect設(shè)備的開發(fā)工具包。目前最新的微軟Kinect SDK為Kinect for Windows Developer Toolkit v1.5.1。

        我們所使用的驅(qū)動為OpenNI。OpenNI(開放式的自然交互),Open Natural Interaction的縮寫而來,一個由業(yè)界領(lǐng)導(dǎo)的非營利組織。該組織專注于提高和改善自然交互設(shè)備,應(yīng)用軟件的互操作能力。通過使用這些硬件和中間件(軟件)來很方便的訪問和使用一些設(shè)備。主要成員之一是PrimeSense公司,Kinect的核心芯片正是這家公司提供的,因此它的使用較為廣泛。OpenNI定義了自然人機(jī)交互所需的很多API,提供一個多語言跨平臺的開發(fā)框架。

        2 系統(tǒng)原型及實(shí)現(xiàn)

        2.1 系統(tǒng)總體設(shè)計

        系統(tǒng)的原型設(shè)計流程圖圖2如下:

        圖2 系統(tǒng)流程圖

        圖2所示是系統(tǒng)的的實(shí)現(xiàn)過程,開始時在PC主機(jī)上獲取Kinect的RGB圖像和深度圖像。之后將獲取的原始數(shù)據(jù),進(jìn)行圖像的一些相關(guān)預(yù)處理工作,包括圖像校正和濾波降噪處理。為了得到手型的輪廓信息,系統(tǒng)使采用深度圖和RGB圖相結(jié)合的方法,進(jìn)行人手分割。然后再根據(jù)輪廓點(diǎn)序列,檢測出指尖的空間坐標(biāo)值。最后通過以上所得數(shù)據(jù),完成空間鍵盤輸入操作。

        2.2.1 圖像校正及預(yù)處理

        KINECT傳感器可以同時獲取RGB彩色圖像數(shù)據(jù)以及深度數(shù)據(jù)圖。本系統(tǒng)通過Depth Generator imageGenerator兩個OPENNI提供的接口獲取RGB圖和深度圖。為了抑制數(shù)據(jù)中的噪聲干擾,對于深度數(shù)據(jù)進(jìn)行高斯濾波處理。高斯濾波就是對整幅圖像進(jìn)行加權(quán)平均的過程,每一個像素點(diǎn)的值,都由其本身和鄰域內(nèi)的其他像素值經(jīng)過加權(quán)平均后得到。高斯濾波的具體操作是:用一個模板掃描圖像中的每一個像素,用模板確定的鄰域內(nèi)像素的加權(quán)平均灰度值去替代模板中心像素點(diǎn)的值[3]。

        2.2.2 圖像二值化

        首先,設(shè)計此系統(tǒng)的需要消除背景信息和其他多余的人物干擾。由于KINECT擁有深度攝像和RGB攝像頭,我們只獲取主操作者的數(shù)據(jù),丟棄背景數(shù)據(jù)和和其他攝像頭范圍內(nèi)人物。這識別人物,分割背景功能的實(shí)現(xiàn),使用了OPENNI的User Generator模塊。

        主操作者和背景信息的輸出存儲在一個標(biāo)簽數(shù)據(jù)圖之中。如果一個深度像素的被判定為背景像素則其值被標(biāo)記為0,如果像素點(diǎn)是屬于用戶的范圍,則這個像素被標(biāo)記為用戶的ID號。

        之后,系統(tǒng)將用戶的雙手部分從身體范圍內(nèi)分割出來。因為我們不要用戶的全身數(shù)據(jù),只需要雙手的區(qū)域。因為當(dāng)手伸出來時,手是身體離 KINECT最近的部分,所以系統(tǒng)設(shè)定一個深度閾值作為分割的門限把手部從身體分割出來[4]。

        公式(1)為手部深度分割公式

        將得到的包含手部多灰度級的圖像變成只有兩個灰度級的圖像。用閾值T作為分割值,T的值略大于手心點(diǎn)的深度值,從而得到手部的準(zhǔn)確輪廓。

        提取更為準(zhǔn)確的手部區(qū)域,以便于之后對于手掌輪廓的提取。雖然可能存在干擾區(qū)域,但手部區(qū)域應(yīng)該是所有可能區(qū)域中,最大的一片連續(xù)區(qū)域。檢索所有可能范圍內(nèi)最大的閉合區(qū)域,并計算該區(qū)域的幾何中心,作為手心點(diǎn)。一般來說,手掌的長寬小于20cm,所以切割以手心為中心,邊長為20cm的正方形區(qū)域[5]。

        圖示如下:

        圖3 手掌矩形

        2.3.1 指尖檢測

        對于凸包輪廓的檢測,本系統(tǒng)采用葛立恒掃描法[6]。該方法的具體步驟為:

        1)首先,檢索所有邊緣點(diǎn)之中Y值最小的點(diǎn)。當(dāng)Y值最小的點(diǎn)多于一處時,則在這幾個點(diǎn)之中選取X值最小的點(diǎn),將此點(diǎn)設(shè)為基點(diǎn)P。

        2)將所有邊緣點(diǎn)與基點(diǎn)P連線,并計算連線與X軸之間的夾角數(shù)值。依據(jù)夾角數(shù)值的大小順序,將所有點(diǎn)進(jìn)行排列編號,記為 P[0],P[1]…P[n]。

        3)假設(shè)存在一條從P[0]依序連接到P[n]的虛擬路徑。判斷一點(diǎn)到下一點(diǎn)的轉(zhuǎn)向是“向左轉(zhuǎn)”還是“向右轉(zhuǎn)”。如果是向右轉(zhuǎn),則證明之前一點(diǎn)不屬于凸包集。只有向左轉(zhuǎn),才把前一點(diǎn)判定為凸包點(diǎn),并加入堆之中棧。以此算法檢查所有邊緣點(diǎn),并得到凸包輪廓。

        4)對于向左轉(zhuǎn)還是向右轉(zhuǎn)的判定,算法是把三個連續(xù)的點(diǎn)看成一個夾角向量((P1,P0),(P2,P0)),d=(P1,P0)*(P2,P0)。如果 d 值大于 0 則為右轉(zhuǎn)(順時針方向),d值小于0則為左轉(zhuǎn)(逆時針方向),d等于0則為直線。

        在完成凸包點(diǎn)檢測之后,繼續(xù)計算凹缺陷點(diǎn)。

        2.3.2 指尖點(diǎn)篩選

        使用以上獲得的數(shù)據(jù)進(jìn)行更精確的指尖點(diǎn)篩選。把一個凸包點(diǎn)命名為起始點(diǎn)P1,下一個凸包點(diǎn)命名為終結(jié)點(diǎn)P3,在這兩點(diǎn)之間的凹陷點(diǎn)命名為深度點(diǎn)P2。起始點(diǎn)和終結(jié)點(diǎn)都有可能是指尖點(diǎn)。把(P2,P1),(P2,P3)設(shè)為兩個向量 V1,V2。當(dāng) V1,V2 的夾角小于100度,兩個向量的長度之和大于手掌矩形變長的一半,則把起始點(diǎn)和終結(jié)點(diǎn)判定為指尖點(diǎn)。

        圖4 指尖點(diǎn)和凹缺陷點(diǎn)(紫色點(diǎn)計算所得指尖點(diǎn),黃色點(diǎn)為凹缺陷點(diǎn))

        2.4 點(diǎn)擊事件的觸發(fā)

        使用之前得到的手部的指尖點(diǎn)以及凹缺陷點(diǎn)數(shù)據(jù)、掌心點(diǎn)數(shù)據(jù)建立一個手型點(diǎn)擊的的基本數(shù)據(jù)單元,它是由兩個相鄰指尖與一個他們之間的凹缺陷點(diǎn)組成的夾角結(jié)構(gòu)。這個數(shù)據(jù)模型需要以上所有點(diǎn)的三維坐標(biāo)值。然后計算一個凹缺陷點(diǎn)與相鄰的兩指尖點(diǎn)所組成的夾角的大小,也就是計算向量P1P2和P2P3在YZ投影平面的夾角值α。

        通過對希望觸發(fā)點(diǎn)擊事件時,手指動作數(shù)據(jù)的統(tǒng)計分析,得到一個合理的閾值α。每當(dāng)指尖夾角大于閾值α?xí)r,則判定點(diǎn)擊事件被觸發(fā)一次。

        圖5 手指點(diǎn)擊是指尖點(diǎn)在YZ軸上的示意圖

        3 實(shí)驗結(jié)果統(tǒng)計

        系統(tǒng)通過Open CV創(chuàng)建鍵盤窗口,在鍵盤窗口內(nèi)布置1到10十個數(shù)字鍵點(diǎn)擊區(qū)域。用戶在處于KINECT體感攝像頭前1米左右進(jìn)行空間鍵盤點(diǎn)擊動作。對于每個按鍵進(jìn)行樣本容量為50次的試驗測試,結(jié)果如下:

        表1 打開屏幕鍵盤文檔的輸入

        4 結(jié)果分析

        在虛擬鍵盤點(diǎn)擊實(shí)驗結(jié)果來看,人手處于KINECT攝像范圍中心時,點(diǎn)擊事件識別率較高,而處于KINECT攝像范圍邊緣時,識別概率相對較低。原因是人手處于邊緣區(qū)域時,由于手掌相對于攝像頭的拍攝角度的問題,在人手進(jìn)行深度分割之后所得手掌輪廓邊緣曲線有一定的變形,最后導(dǎo)致指尖識別定位效果下降。

        [1]李文生,解梅,鄧春健.基于多點(diǎn)手勢識別的人機(jī)交互技術(shù)框架[J].多點(diǎn)手勢識別的人機(jī),2011(6).

        [2]OpenNI User Guide[S].PrimeSensor Ltd.

        [3]湯勇,顧宏斌,周來.交互系統(tǒng)中實(shí)時手勢分割及指尖檢測方法[J]. 光電工程,2010,37(7).

        [4]He G,Kang S,Song W.Real-time Gesture Recognition using 3D Depth Camera[J].

        [5]Raheja J L,Chaudhary A,Singal K.Tracking of Fingertips and Centres of Palm using KINECT[J].

        [6]耿海進(jìn).基于三維視覺的手勢跟蹤及人機(jī)交互中的應(yīng)用[D].南京:南京大學(xué).

        猜你喜歡
        人手指尖手部
        手部皮膚軟組織缺損修復(fù)的皮瓣選擇
        治理“指尖亂像”不宜一散了之
        虔誠之花在指尖綻放
        指尖上的生活,指尖上的美
        木蘭從軍
        指尖童話
        Coco薇(2017年9期)2017-09-07 20:50:46
        從六個方面人手進(jìn)行類比推理
        兩種皮瓣修復(fù)手部軟組織缺損的比較
        發(fā)生于手部的硬下疳一例
        復(fù)明膠囊疑致手部腫痛1例
        欧美 丝袜 自拍 制服 另类 | 午夜一区二区三区免费观看| 日产精品高潮一区二区三区5月| 国产精品一卡二卡三卡| 亚洲av无码一区二区乱子伦as| 久久久久成人精品免费播放网站| 国产精品一品二区三区| 丝袜人妻一区二区三区| 日本成本人三级在线观看| 国产精品无码久久久久免费AV| 精品久久一区二区av| 亚洲夫妻性生活免费视频| 九九久久精品无码专区| 亚洲Av午夜精品a区| 亚洲天堂av在线免费看| 91精品亚洲成人一区二区三区| 久久久久久久久蜜桃| 99国产精品久久久蜜芽| 国产免费一区二区三区在线视频| 亚洲中文字幕日产无码| 射死你天天日| 国产激情无码Av毛片久久| 国产精品高清国产三级国产av | 91国际视频| 伊人狼人影院在线视频| 蜜臀久久99精品久久久久久| 丰满少妇被猛烈进入| 午夜国产精品久久久久| 中文乱码字幕在线亚洲av | 国产乱妇乱子在线播视频播放网站| 2021国产最新无码视频| 丝袜美腿在线观看视频| 性刺激的大陆三级视频| 在线看亚洲十八禁网站| 蜜桃视频在线免费观看完整版| 日本人妻免费在线播放| 中国农村熟妇性视频| 国产亚洲精品综合一区| 亚洲一区二区三区在线视频| 女人被弄到高潮的免费视频| 波多野结衣在线播放一区|