《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 顯示光電 > 設(shè)計(jì)應(yīng)用 > 基于光學(xué)感應(yīng)的大尺寸多點(diǎn)觸摸控制技術(shù)
基于光學(xué)感應(yīng)的大尺寸多點(diǎn)觸摸控制技術(shù)
摘要: 在傳統(tǒng)的基于觸摸屏的觸摸控制解決方案中,大多都只是考慮用手指取代鼠標(biāo)的作用,即一般只考慮單點(diǎn)觸控的應(yīng)用情況。另一方面,無論是目前常見的電阻式還是電容式觸摸屏方案,大都應(yīng)用于面積較小的屏幕或者觸摸板上,對(duì)于40寸以上大尺寸觸摸控制設(shè)備上就鮮見傳統(tǒng)觸摸屏的應(yīng)用了,這其中不乏制作成本和制作工藝上的考慮。
Abstract:
Key words :

 引言

  與傳統(tǒng)的鼠標(biāo)、鍵盤的輸入方式相比,多點(diǎn)觸摸技術(shù)是一種更加自然和諧的人機(jī)交互方式。這種技術(shù)最突出的特點(diǎn)是用戶可以不借助任何外部設(shè)備直接在顯示屏幕上進(jìn)行操作,是一種真正的所見即所得的非常自然的人機(jī)交互方式,多個(gè)用戶可以同時(shí)與計(jì)算機(jī)進(jìn)行交互,而且各個(gè)用戶之間并不相互影響,系統(tǒng)甚至還可以識(shí)別用戶的觸摸姿態(tài)和手勢(shì)。然而,在傳統(tǒng)的基于觸摸屏觸摸控制解決方案中,大多都只是考慮用手指取代鼠標(biāo)的作用,即一般只考慮單點(diǎn)觸控的應(yīng)用情況。另一方面,無論是目前常見的電阻式還是電容式觸摸屏方案,大都應(yīng)用于面積較小的屏幕或者觸摸板上,對(duì)于40寸以上大尺寸觸摸控制設(shè)備上就鮮見傳統(tǒng)觸摸屏的應(yīng)用了,這其中不乏制作成本和制作工藝上的考慮。

  多點(diǎn)觸摸基本原理

  傳統(tǒng)觸摸屏的本質(zhì)是傳感器,它由觸摸檢測(cè)部件和觸摸屏控制器組成,常見的傳感器包括電阻式和電容式觸摸屏。而基于光學(xué)感應(yīng)的多點(diǎn)觸摸系統(tǒng)是用戶通過觸摸投影屏幕表面,影響光學(xué)感應(yīng)成像設(shè)備的輸入結(jié)果,成像設(shè)備將成像結(jié)果輸入軟件系統(tǒng)進(jìn)行處理,一般經(jīng)過3個(gè)步驟,首先是對(duì)原始輸入圖像進(jìn)行包括矯正、濾波等預(yù)處理,然后通過光斑跟蹤引擎對(duì)觸點(diǎn)進(jìn)行跟蹤,并將其解釋為各種輸入狀態(tài),最后將輸入位置、狀態(tài)等信息發(fā)送給上層應(yīng)用程序。應(yīng)用程序處理結(jié)果最終被投射到顯示屏幕表面上,從而與用戶產(chǎn)生真正的所見即所得的交互效果。其實(shí)現(xiàn)框架如圖1所示。

  根據(jù)不同的光學(xué)感應(yīng)原理,目前常見的多點(diǎn)觸摸實(shí)現(xiàn)方式包括FTIR(受抑全內(nèi)反射)、DI、LLP等技術(shù)。

 基于FTIR的多點(diǎn)觸摸實(shí)現(xiàn)原理如圖2所示。

  紅外LED(IR LED)發(fā)射紅外線進(jìn)入諸如亞克力板(Acrylic),當(dāng)亞克力面板的厚度大于8mm時(shí),光線會(huì)發(fā)生在亞克力內(nèi)不停反射,產(chǎn)生全內(nèi)反射現(xiàn)象,當(dāng)手指(或者其他材質(zhì)如硅膠等有一定韌性和反射性的材料)碰到亞克力表面時(shí),全內(nèi)反射被破壞,光線被手指反射出來,此時(shí),亞克力下方的紅外攝像頭(IR Camera)捕捉到手指反射的光斑,攝像頭捕捉到的光斑會(huì)送到計(jì)算機(jī)進(jìn)行處理,最終形成輸入點(diǎn)。

 這種技術(shù)的優(yōu)缺點(diǎn)如表1所示。DI方式原理比較簡(jiǎn)單,通過IR光源照射投影屏幕,形成均勻的照射效果,當(dāng)有手指觸摸屏幕表面時(shí),IR光線會(huì)被反射,從而在成像設(shè)備上形成光斑?;贒I技術(shù)的多點(diǎn)觸摸實(shí)現(xiàn)如圖3所示。

  DI技術(shù)的優(yōu)缺點(diǎn)如表2所示。LLP技術(shù)的基本原理是通過紅外激光發(fā)射裝置在投影屏幕表面上方形成一層紅外激光表面,當(dāng)手指觸摸到屏幕上時(shí),激光被散射到成像設(shè)備上從而形成光斑?;贚LP技術(shù)的多點(diǎn)觸摸實(shí)現(xiàn)原理如圖4所示。

 

 LLP技術(shù)同樣也有明顯的優(yōu)缺點(diǎn),如表3所示。

  系統(tǒng)實(shí)現(xiàn)硬件構(gòu)成

  目前的多點(diǎn)觸摸硬件常見實(shí)現(xiàn)方法都有各自的優(yōu)缺點(diǎn),特別是對(duì)于大尺寸多點(diǎn)觸摸控制系統(tǒng)而言更是明顯。我們的應(yīng)用目標(biāo)是要在一臺(tái)70寸的高清LCOS背投電視上實(shí)現(xiàn)多點(diǎn)觸摸控制效果,受到電視機(jī)本身結(jié)構(gòu)和背投屏幕材質(zhì)的光學(xué)特性的限制,無論是直接使用FTIR技術(shù)、DI技術(shù)還是LLP技術(shù)都不能取得理想的光學(xué)感應(yīng)效果。

鑒于此,我們使用了一種特殊的LLP的方式來進(jìn)行硬件設(shè)置,即通過具備主動(dòng)發(fā)射紅外光的觸筆來模擬手指的直接觸摸過程。具體來說:通過觸筆在背投屏幕上的觸壓發(fā)射紅外光信號(hào),光信號(hào)穿透背投屏幕后經(jīng)過背投內(nèi)部的大反射鏡作鏡面反射;鏡頭板接收鏡面反射的光信號(hào),再傳遞給計(jì)算機(jī);觸筆產(chǎn)生的信號(hào)會(huì)在屏幕上形成一個(gè)大的光斑,系統(tǒng)采用逐行掃描的方式對(duì)信號(hào)進(jìn)行采樣(30幀/秒),取光斑的最亮值,并記錄該點(diǎn)在CMOS上成像的坐標(biāo);計(jì)算機(jī)對(duì)感應(yīng)到的光信號(hào)進(jìn)行處理,形成一套坐標(biāo)系統(tǒng),并將處理后的數(shù)據(jù)通過特定的數(shù)據(jù)格式傳遞給上層應(yīng)用程序;從而達(dá)到跟蹤觸筆的運(yùn)動(dòng),模擬出多點(diǎn)觸摸的效果。圖5展現(xiàn)了實(shí)際起作用的光路示意圖。

  多點(diǎn)應(yīng)用軟件框架

  我們實(shí)現(xiàn)的多點(diǎn)觸摸控制上層應(yīng)用是基于Touchlib構(gòu)建的,Touchlib是一個(gè)開源的用于創(chuàng)建多點(diǎn)觸摸交互界面的庫,它能夠處理紅外線光斑跟蹤,并向上層應(yīng)用程序發(fā)送諸如按下、移動(dòng)、釋放等事件,使用該庫的多點(diǎn)觸摸應(yīng)用基本框架如圖6所示。

 目前,Touchlib庫使用TUIO協(xié)議(Table-Top User Interfaces Objects)發(fā)送事件,這使得Touchlib可以勝任于包括Adobe Flash在內(nèi)的任何支持此協(xié)議的應(yīng)用程序。TUIO是一套簡(jiǎn)單且通用的,特別為滿足可感知桌面用戶界面需要所設(shè)計(jì)的協(xié)議。因?yàn)門UIO協(xié)議本身是基于 OSC(OpenSound Control)的,所以TUIO協(xié)議可以看做是OSC數(shù)據(jù)的一種標(biāo)準(zhǔn)化實(shí)現(xiàn),可以用于所有支持該協(xié)議的設(shè)備上。

 TUIO協(xié)議定義了兩類主要的消息,即set消息和alive消息。其中,set消息用于目標(biāo)對(duì)象特定狀態(tài),如位置、姿態(tài)或其他任何可以識(shí)別狀態(tài)的通訊;alive消息則用于通過系列的sessionID來標(biāo)識(shí)當(dāng)前目標(biāo)對(duì)象。TUIO使用下面的格式來進(jìn)行數(shù)據(jù)通訊:

  /tuio/[profileName] set sessionID [parameterList]

  /tuio/[profileName] alive [list of active sessionIDs]

  /tuio/[profileName] fseq int32

  其中的profileName代表定義好的常用可感知用戶界面配置,該配置定義了set消息中目標(biāo)對(duì)象的狀態(tài)數(shù)據(jù)格式,比如常用的2D Profile:

  /tuio/2Dobj set s i x y a X Y A m r

  /tuio/2Dcur set s x y X Y m

  為了更好地展現(xiàn)多點(diǎn)觸控的視覺效果,我們?cè)谏蠈討?yīng)用中選擇了基于Flash的實(shí)現(xiàn)方式。需要指出的是,TUIO原生是通過UDP進(jìn)行數(shù)據(jù)傳送的,而Flash本身只能通過TCP鏈接接收數(shù)據(jù),因此還必需通過Flosc網(wǎng)關(guān)將OSC數(shù)據(jù)轉(zhuǎn)換為為Flash可以讀取的XMLSocket數(shù)據(jù)。上述流程如圖7所示。

  通過轉(zhuǎn)換,上層的Flash應(yīng)用程序就可以接收Touchlib發(fā)送的觸點(diǎn)位置、編號(hào)、觸控事件等各種數(shù)據(jù),進(jìn)而做出適當(dāng)?shù)捻憫?yīng),從而與用戶產(chǎn)生多點(diǎn)觸摸控制交互。綜合上文描述的硬件設(shè)置,我們以一臺(tái)70寸LCOS高清背投電視為基礎(chǔ),基于光學(xué)感應(yīng)開發(fā)出一套使用主動(dòng)紅外觸摸筆交互的多點(diǎn)觸摸控制應(yīng)用系統(tǒng),已經(jīng)成功應(yīng)用于某風(fēng)景區(qū)電子交互導(dǎo)覽的實(shí)際應(yīng)用中,為大尺寸多點(diǎn)觸摸控制系統(tǒng)的研究和應(yīng)用打下了一定的基礎(chǔ)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。