廖鈺,姜權財,廖明銘
(內江師范學院,四川 內江 641100)
隨著網絡虛擬技術的不斷推廣,人們對于計算機方面的需求也有了相應提高,特別是對鍵盤的需求。3D全息投射即可以將物體全部信息投射到特定屏幕或者某區域的一種投影技術,利用干涉和衍射原理,記錄并再現物體真實的三維圖像[1]。利用3D全息原理,實現物理鍵盤虛擬化,可極大地提高其使用壽命,同時也能夠提高其安全性和保密性。應用于高端的軍事、經濟等方面,虛擬鍵盤可以提升安全系數,更利于保密性高的工作的開展,還可以用于安全方面,如銀行、自動取款機等,能夠有效地防止因殘留下來的指紋而造成機密文件丟失、密碼泄露等情況的發生。
鍵盤的虛擬化,大大提高了計算機的使用效率及其使用范疇,打破了傳統物理鍵盤的局限性。若將其應用于軍事方面,能夠迅速地消除指紋痕跡,而且在微型化的情況下,可便于攜帶,在今后的科技發展中,完全可以依靠機器人技術進行操作,降低人工操作的不規范性等。在經濟與安全方面能夠大大地提升安全系數,增強保密性,更加利于保密性強的工作事項的開展,同時還具有極強的防御能力。3D虛擬鍵盤成功地取代傳統物理鍵盤,將科技應用于日常的工作中,擴大了科技的普及范疇。
本設計在3D全息投射技術的基礎上實現對傳統物理鍵盤的虛擬化,再通過在激光測距儀中使用一束線型激光照射目標物體,在目標物體的反射光被攝像頭捕捉到,結合三角測距原理,得出目標物體中被線激光照亮部分的坐標信息,及其按鍵坐標位置的定位,最后建立相應的映射機制,通過桌面坐標P(x,y)找到對應按鍵鍵值,并最終通知操作系統觸發一個對應鍵值的按鍵事件。
針對傳統物理鍵盤的諸多不足,在先前的研究基礎上,本文提出應用3D全息投射虛擬鍵盤的想法,全息投影技術是利用干涉和衍射原理記錄并再現物體真實的三維圖像記錄和再現的技術。主要通過干涉原理實現對物體光波信息的記錄,物體通過激光輻照所形成的物光束以漫射形式存在,作為參考光束的部分激光和物光束疊加產生干涉現象并投射在全息底片上,并記錄其全部信息。在干涉的基礎上,結合衍射原理再次體現物體光波信息,實現對物體的光波信息的再現。對于鍵盤的虛擬化的四個核心步驟如下:
鍵盤畫面的產生采用的是全息激光投射儀的全息投射技術。3D全息投射技術的原理是一種利用干涉和衍射原理記錄并再現物體,并以三維圖像的形式呈現,通過全息投影設備激光器組實現如圖1所示的虛擬鍵盤的投射。

圖1 虛擬鍵盤的投射成像
鍵盤的輸入事件及識別,利用三角測距的原理檢測鍵盤的輸入,基于三角測距原理的激光測距儀一致的辦法,通過主動投射激光來進行目標物體的三維坐標檢測。在激光測距儀中使用一束線型激光照射目標物體,在目標物體的反射光被攝像頭捕捉到,利用三角測距原理,可以求出目標物體中被線激光照亮部分的坐標信息。
利用三角測距原理,首先將線激光所產生的光線平面與桌面平行并緊貼在桌面之上,將攝像頭放置于激光發射器上方并俯視桌面,如圖2所示。此時若手指接近桌面,則會阻擋住激光的通路,產生反射,反射的光點畫面會被圖中攝像頭拍攝到。這是一個標準的三角測距的結構設置。

圖2 三角測距原理的應用
當手指遮擋激光平面后產生了反射,因此,會在攝像頭畫面中出現較為明亮的光斑,可以通過簡單的視覺算法來提取指尖部分。由于只有當手指靠近或者碰觸到桌面才會遮擋住激光產生反光,而在距離桌面較高的位置則不會被檢測算法察覺。只要當檢測算法檢測到手指反光,則可認為出現了按鍵事件,且可直接用當前檢測到的坐標來進行后續的處理。
建立一個映射機制,通過桌面坐標P(x,y)找到對應按鍵鍵值,并最終通知操作系統觸發一個對應鍵值的按鍵事件。這里的做法與GUI系統進行UI元素碰撞判斷的過程類似[2]。在圖形系統中,所有UI元素均保存有其相對于屏幕的坐標值。GUI系統不停地判斷當前鼠標指針位置是否落入了某一個按鈕或者選擇框的坐標范圍內。首先需要建立投射鍵盤圖案中每個按鍵的坐標信息,然后將指尖相對于桌面平面上的坐標P(x,y)映射到鍵盤圖案的坐標系內進行按鍵的判斷。

圖3 區域坐標的設定
上述過程涉及兩個步驟:①將以激光發射器為原點的指尖坐標P(x,y)映射到以鍵盤圖案左上角為原點坐標的平面內,得到映射點 P′(x,y)。
該過程用數學表達記作:

②將映射點P′(x,y)與事先記錄的每個按鍵的坐標值比對,求得當前對應按下的按鍵值。
該過程記作:

由于在組裝上會存在誤差,不能保證每次制作出來的成品激光發射器與鍵盤圖案投射的位置都完全一致,并且單個成品在使用過程中也會因為熱脹冷縮等原因,鍵盤圖案會發生偏移。一旦鍵盤圖案發生了移動,則先前以這種方式記錄的所有按鍵坐標都需要重新測量。但如果一開始就以鍵盤左上角為原點的方式記錄坐標,則每次組裝完成品或者發生圖案偏移后,只需進行簡單的矯正,求出一個新的fprojection()函數即可。
函數fmapping(),一種簡單的實現是依次按照前文例圖中的判斷代碼對每個按鍵輪流計算,判斷是否被“按下”。這種方式實現簡單直觀,但是性能較差。對于這類問題,可以使用Kd-Tree的數據結構進行快速查找。
通過攝像頭捕捉鍵盤區域的圖像并進行分析時,需要對攝像頭鏡頭進行一些改造,首先拆除鏡頭上的紅外光截至濾光片,并在鏡頭頭部安裝紅外帶通濾光片,從而實現測距時對可見光干擾的有效避免。
虛擬鍵盤以激光為投射光源,3D全息投射技術為鍵盤虛擬化的技術依靠,通過三角測距原理對鍵盤按鍵動作的捕捉,實現虛擬鍵盤與計算機的交互應用。通過以上所有步驟實現了鍵盤的虛擬化,其最終的組裝圖如圖4所示。

圖4 最終組裝圖
在網絡虛擬技術不斷發展的時期,虛擬鍵盤彌補了傳統鍵盤體積大不宜攜帶,且保密性不好易留下指紋、有噪音等缺點,可以應用于軍事和銀行等安全保密性要求較高的機構,具有巨大的市場潛力。