何明霞,寧福星,李 萌
(天津大學精密測試技術(shù)及儀器國家重點實驗室,天津 300072)
受主流顯示設備和應用軟件的限制,傳統(tǒng)的人機交互方式是一種限于二維平面內(nèi)的操作.隨著立體視覺、虛擬現(xiàn)實和增強現(xiàn)實技術(shù)的出現(xiàn),用戶喜歡以更自然的方式,在更富于想象力的虛擬環(huán)境中,與操作對象進行交互作用與相互影響,從而產(chǎn)生“沉浸”于等同真實環(huán)境中的感受和體驗[1].數(shù)據(jù)手套是一種能夠跟蹤使用者靈活多變的手勢及其空間方位,使操作者自然而然地將自己的意識傳遞給計算機[2].國內(nèi)外對數(shù)據(jù)手套技術(shù)的研究不斷得到發(fā)展,已有一些數(shù)據(jù)手套產(chǎn)品出現(xiàn)在軍事、制造業(yè)和教育等領(lǐng)域.
需要佩戴在手部使用的數(shù)據(jù)手套本體材料多為價格昂貴的彈性纖維.采用精密傳感器實現(xiàn)數(shù)據(jù)測量,所用傳感器決定測量精度和最大采樣頻率這2項技術(shù)指標.數(shù)據(jù)手套操作與計算機之間采用通信線連接,通訊接口多為 RS232.目前,數(shù)據(jù)手套產(chǎn)品因價格昂貴而多用于科研[3].
針對上述數(shù)據(jù)手套的不足,筆者開發(fā)了一種采用普通視頻攝像頭作為傳感器,在操作者手背部和指端粘貼特定標記,實現(xiàn)非接觸式獲取手部三維信息的新型人機交互技術(shù).擺脫了手套與通信線的束縛,提高了操作者手部的舒適度和自由度.整個系統(tǒng)簡單、成本低,適合民用商業(yè)化.
根據(jù)針孔成像模型,建立標記坐標系 Omxmymzm、攝像機坐標系 Oc-xcyczc和攝像機理想屏幕坐標系Ou-xuyu,坐標系之間的相互關(guān)系如圖1所示.手部標記點在標記坐標系和攝像機坐標系中的坐標分別為(xm,ym,zm)和(xc,yc,zc).標記坐標系與攝像機坐標系之間的變換關(guān)系[4]為
圖1 標記坐標系和攝像機坐標系間的關(guān)系Fig.1 Model of coordinate system
式中:V3×3為正交單位旋轉(zhuǎn)矩陣;W為平移向量;Tcm為轉(zhuǎn)換矩陣.由圖 1及透視投影基本原理可知,標記坐標系中某點(xm,ym,zm)與其在理想屏幕坐標系中的投影(xu,yu)之間的關(guān)系為
其中λ為比例因子,透視投影矩陣 C為攝像頭內(nèi)部參數(shù),通過攝像機標定獲得.矩陣 Tcm為三維待求變換矩陣,包含3個旋轉(zhuǎn)分量和1個平移分量.當尺寸已知的黑色正方形標記投影成像之后,可以得到標記的一組平行邊在屏幕坐標系中投影方程為
利用關(guān)系式(2),將式(3)中的 xu和 yu分別用 xc和 yc代替,可以得到
方程組(4)中 2個投影方程的單位矢量分別用n1和 n2表示,則正方形邊框的一組平行邊的方向矢量可表示為二者的外積n1×n2.假設正方形2組平行邊的方向矢量分別為u1和u2,理論上u1和u2應相互垂直.由于成像畸變的影響,u1和 u2并非絕對垂直.為了消除不垂直帶來的影響,采用 v1和 v2代替u1和 u2.垂直于 v1和 v2的單位方向矢量記做 v3,轉(zhuǎn)換矩陣Tcm中的旋轉(zhuǎn)矩陣表示為[v1,v2,v3].由正交單位旋轉(zhuǎn)矩陣 V3×3,利用針孔成像模型和透視投影模型所建立的式(1)和式(2),標記4個頂點的屏幕坐標為(xc,i,yc,i,1),標記坐標系中的坐標為(xm,i,ym,i,zm,i)(i=1,2,3,4).從而列出包含 Wx、Wy、Wz的 8 個等式并求得平移矩陣和轉(zhuǎn)換矩陣Tcm.
表1列出了幾種典型數(shù)據(jù)手套本體材料、傳感器以及技術(shù)指標.圖 2所示為該系統(tǒng)組成,由一個普通視頻攝像頭、固定支架、圖像數(shù)據(jù)傳輸線和計算機 4部分組成,采用普通數(shù)據(jù)傳輸線連接攝像頭與計算機.與市場現(xiàn)有數(shù)據(jù)手套產(chǎn)品相比,該系統(tǒng)硬件少、組裝簡便.
表1 幾種典型數(shù)據(jù)手套產(chǎn)品主要技術(shù)指標對比Tab.1 Comparison of performance indexes of datagloves
圖2 系統(tǒng)裝置示意Fig.2 Image of installation of system
ARToolKit軟件是由美國華盛頓人機接口實驗室的 HirokazoKato博士,用 C語言編寫設計開發(fā)的增強現(xiàn)實系統(tǒng)的二次開發(fā)包.它具有實時、精確的三維注冊功能,支持基于視覺或視頻的增強現(xiàn)實應用系統(tǒng),使用方便、快捷.為了縮短研發(fā)周期,本研究利用ARToolKit所提供的標記跟蹤算法,計算攝像機和標記之間的相對空間位置,獲得標記在標記坐標系中的三維坐標.本系統(tǒng)所采用的是大小一定的黑色正方形邊框類標記,并以標記符中心圖案的不同來區(qū)分.
特征標記符的探測程序,即標記跟蹤算法主要實現(xiàn)2個功能.探測圖像中具有所選用標記符特征的區(qū)域,并對其進行識別.另一功能是計算標記與相機之間的空間關(guān)系,求取標記點的坐標.探測程序的流程[5]如圖3所示.
圖3 標記符探測程序流程Fig.3 Flow chart of marker detection
1)初始化的功能
包括初始化視頻配置參數(shù),讀取標記樣本參數(shù)和攝像頭特征參數(shù).初始化視頻配置包括攝像機拍攝圖像的尺寸、采樣幀頻和顏色空間.標記樣本參數(shù)包括標記的邊長尺寸和中心圖案的幾何特征;攝像頭特征參數(shù)為通過相機標定獲取并存儲的數(shù)據(jù)文件.
2)主循環(huán)的功能
主循環(huán)的目的為探測并識別出特征標記,計算各標記中心點的三維坐標.具體執(zhí)行包括 3步:獲取視頻圖像,探測并識別視頻輸入圖像幀中的特征標記和標記位置信息的計算.探測和識別特征標記的處理過程如下.
(1)利用單攝像頭獲取包含全部標記的圖像輸入到系統(tǒng)中,采用合理閾值將采集到的彩色圖像轉(zhuǎn)換成二值圖像.
(2)對該二值圖像作連通域分析,搜索并識別所有具有矩形邊緣特征的圖像區(qū)域.通過對二值圖像進行連通域分析標記、特征提取(區(qū)域,位置)、輪廓提取和對正方形區(qū)域4條直線的匹配,找出匹配誤差小于設定閾值的區(qū)域,即認探測到正方形區(qū)域.
(3)利用模板匹配算法,將提取出的圖像區(qū)域與標記樣本庫中的標記進行比對,找出匹配度高于設定參數(shù)的區(qū)域即認定為識別出系統(tǒng)所用標記(歸一化).
(4)通過計算,求得被探測到的標記三維坐標.通過系統(tǒng)建立的針孔成像模型、標記中心點的理想屏幕坐標(xu,yu)調(diào)用相機內(nèi)部參數(shù)和轉(zhuǎn)換矩陣 Tcm,解算出不同標記中心點在標記坐標系中的三維坐標(xm,ym,zm).
3)關(guān)閉的功能
程序結(jié)束,關(guān)閉視頻采集和視頻的輸出顯示,停止對圖像的處理.
標記跟蹤算法的有效性取決于矩形區(qū)域探測和模板匹配.矩形區(qū)域提取采用連通域分析和 4條直線匹配來實現(xiàn),方法簡單,運行速度較快.模板匹配包括歸一化、模板匹配 2步.由于需要分辨率轉(zhuǎn)換,導致識別的精度和速度與標記尺寸關(guān)系密切,標記尺寸越大,其識別精度越高,但處理較復雜,速度較慢.相反,標記尺寸越小,其識別精度越低,處理速度越快.
本研究中采用2個標記實現(xiàn)了鼠標的基本功能.基于手部行為捕捉的三維虛擬鼠標的構(gòu)建示意圖如圖4所示.將標記A和B分別貼于操作者的手背和指端,按習慣通常貼在食指端.根據(jù)標記A在標記坐標系中 xm軸和 ym軸方向的坐標變化量,調(diào)用Windows API函數(shù)庫中的 SetCursorPos(xvalue,yvalue)函數(shù),控制鼠標在當前位置的基礎(chǔ)上的移動方向和移動像素點數(shù).利用標記B在標記坐標系中zm軸方向和xm-ym平面上的坐標變化量,調(diào)用Windows API函數(shù)庫中的 mouse_event函數(shù),控制鼠標產(chǎn)生各按鍵操作.操作者只需挪動相應標記就能實現(xiàn)鼠標的操作功能,完成對計算機的常規(guī)操作,如文件操作、瀏覽網(wǎng)頁等.
圖4 基于手部行為捕捉的人機交互方式示意Fig.4 Sketch map of man-machine interactive mode based on capture of hand’s behavior
本人機交互方式對手部標記點的捕捉能力,即是標記跟蹤算法的有效性,與標記尺寸的大小關(guān)系緊密.通過實驗獲得了標記尺寸參數(shù)大小與循跡有效范圍(即可以捕獲標記情況下攝像機與標記所在平面的最大距離)之間的關(guān)系.采用邊長為 1,cm、2,cm、3,cm、4,cm、5,cm、6,cm 和 7,cm 7種不同尺寸的正方形標記,分別獲得其有效范圍和二者間的關(guān)系,如圖5所示.
圖5 循跡有效范圍與標記尺寸關(guān)系Fig.5 Relationship between tracking range and marker Fig.草 size
通過實驗發(fā)現(xiàn):標記尺寸越大,循跡有效范圍越大,二者呈近似線性變化.實驗結(jié)果與前述標記跟蹤算法有效性的理論分析相符合.
根據(jù)標記跟蹤算法有效性的理論與實驗研究結(jié)果,以及一般操作者手部大小,標記符 A尺寸選為5,cm×5,cm,指端 B 標記 1.5,cm×1.5,cm,二者均可在25,cm的循跡范圍內(nèi)有效地被捕獲.由此確定固定支架的高度為 30,cm,攝像頭距標記所在平面距離為25,cm.
基于手部行為捕捉的人機交互方式已實現(xiàn)了鼠標的基本功能,為了量化這實際操作的效果,通過實驗測量其主要技術(shù)參數(shù),包括最大采樣頻率、光標的控制精度和按鍵控制的準確性.
通過測試 1,min內(nèi)該人機交互方式的有效數(shù)據(jù)輸出個數(shù),計算得到采樣頻率為15.6,Hz.攝像頭的最高采樣幀率為 30幀/s,理論上本技術(shù)的采樣頻率不高于 30,Hz,由于程序運行耗費一定時間,實際運行的采樣頻率比理論值偏低.攝像頭所獲取圖像的大小為 640×480像素,由標記中心點的理想屏幕坐標(xc,yc)求取其在標記坐標系中的坐標(xm,ym,zm).本研究采用手部標記 A的 xm-ym平面移動來實現(xiàn)光標在普通視頻顯示設備(1,024×768像素)的位置控制.采用相對坐標控制方式,測試在人手指平動靈敏度 2.2,mm 時的光標移動量,獲得該操作方式在觀測屏幕坐標系中xd和yd軸方向的光標控制精度分別為2個像素和 1.6個像素.在人機交互方式性能評測中,出錯率常被用于衡量按鍵控制準確度.出錯率定義為每100次按鍵操作中,未識別和誤識別按鍵操作發(fā)生的次數(shù).通過實驗測試了單擊、雙擊和右擊操作,得到采用這種人機交互方式代替實現(xiàn)鼠標基本操作的平均出錯率為4%,即按鍵功能識別率為96%.
所研究開發(fā)的這種基于手部行為捕捉的人機交互方式,采用ARToolKit軟件平臺提供的標記跟蹤算法,只需利用一個攝像頭和手部2個標記點,獲得攝像頭和標記之間的相對空間位置,以及手部標記 A和標記B在標記坐標系中的三維坐標(xm,ym,zm),實現(xiàn)傳統(tǒng)鼠標的基本功能—— 光標的移動和按鍵功能.實驗測試了這種人機交互方式的最高采樣頻率為15.6,Hz,光標移動的控制精度可以達到 2個像素,按鍵控制的識別率為96%.不同于傳統(tǒng)人機交互方式,采用了三維信息實現(xiàn)交互操作.與精密數(shù)據(jù)手套相比,組成設備簡單、成本低.采用非接觸測量,擺脫手套與通訊線的束縛,操作者手部自由舒適.這種人機交互與控制模式技術(shù),可以用于立體視覺、虛擬現(xiàn)實和增強現(xiàn)實系統(tǒng)[6]中,適合作為民用級產(chǎn)品的開發(fā).
[1]韓曉玲. 虛擬現(xiàn)實技術(shù)發(fā)展趨向淺析[J]. 多媒體技術(shù)及其應用,2007,2(10):549-550.
Han Xiaoling. Present situation and development about VR[J].Multimedia Technology and Application,2007,2(10):549-550(in Chinese).
[2]張文龍,賀 申. 虛擬現(xiàn)實與數(shù)據(jù)手套的研究[J]. 常州工學院學報,2005,18(5):26-31.
Zhang Wenlong,He Shen. Research on virtual reality and data glove[J]. Journal of Changzhou Institute of Tech-nology,2005,18(5):26-31(in Chinese).
[3]Dipietro L,Sabatini A M,Dario P. A survey of glovebased systems and their applications [J].IEEE Transactions on Systems,Man,and Cybernetics(Part C):Applications and Reviews,2008,38(4):461-482.
[4]Kato Hirokazu,Billinghurst Mark. Marker tracking and HMD calibration for a video-based augmented reality conferencing system[C]//Proceedings of the 2nd International Workshop on Augmented Reality(IWAR 99). San Francisco,USA,1999:85-94.
[5]管 濤,李利軍,王 乘. 利用單應性矩陣改進ARTOOLKIT三維注冊性能[J]. 微電子學與計算機,2007,24(1):82-84.
Guan Tao,Li Lijun,Wang Cheng. Using homography to improve the registration performance of ARTOOLKIT[J].Microelectronics and Computer,2007,24(1):82-84(in Chinese).
[6]蘇建明,張續(xù)紅,胡慶夕. 展望虛擬現(xiàn)實技術(shù)[J]. 計算機仿真,2004,21(1):18- 21.
Su Jianming,Zhang Xuhong,Hu Qingxi. The prospect of virtual reality[J].Computer Simulation,2004,21(1):18-21(in Chinese).
[7]Lepetit V,Plier J,F(xiàn)ua P. Point matching as a classification problem for fast and robust object pose estimation[C]// Proceedings of the 2004IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Lausam1e,Switzerland,2004:244-250.
[8]Placidi G. A smart virtual glove for the hand telerehabilitation[J].Computers in Biology and Medicine,2007,37(8):1100-1107.
[9]ARToolKit [EB/OL]. http://www.hitl.washington.edu/artoolkit/,2003-02.
[10]Inside ARToolKit[EB/OL]. http://at.in.turn.de/twiki/pub/,Hiroshiima City University,2001.