摘要:多點(diǎn)觸摸作為人機(jī)交互的一種模式,已經(jīng)被越來越多的人所熟悉并使用。針對(duì)展會(huì)演示的互動(dòng)需求以及設(shè)計(jì)行業(yè)的應(yīng)用需求,本文提出了一種基于FTIR的多點(diǎn)觸摸交互演示系統(tǒng),做到了低成本、高精度,同時(shí)兼容圖片、視頻并且支持多人手寫畫板功能,同時(shí)與操作系統(tǒng)無縫結(jié)合,適用于各種展會(huì)場合與設(shè)計(jì)平臺(tái)。
關(guān)鍵詞:FTIR;多點(diǎn)觸摸;展會(huì)互動(dòng);紅外觸點(diǎn)檢測;多屏多攝像頭;屏幕拼接
中圖分類號(hào):TP393.09 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 22-0000-02
1 概述
多點(diǎn)觸控技術(shù)憑借著易用性與直觀性,替代了普通的操作界面,使得人機(jī)交互摒棄了傳統(tǒng)的鍵鼠操作方式。多點(diǎn)觸控,按接觸方式可分為電容式和紅外反射式[1]。
2 系統(tǒng)設(shè)計(jì)
2.1 硬件結(jié)構(gòu)設(shè)計(jì)
多點(diǎn)觸摸技術(shù),是系統(tǒng)軟件與硬件的結(jié)合。在硬件結(jié)構(gòu)上,主要有LLP、FTIR、ToughtLight、Optical Touch 等幾種硬件方案。本系統(tǒng)中為了保證識(shí)別精度,采用FTIR方式。
2.2 軟件模塊設(shè)計(jì)
軟件層面上主要分觸點(diǎn)識(shí)別模塊、觸點(diǎn)發(fā)送模塊、前臺(tái)展示模塊。
觸點(diǎn)識(shí)別模塊:通過紅外線攝像頭捕獲顯示屏上的紅外信息。通過平滑、去噪、高斯變化、輪廓描繪等方法,最后去除面積過大或者過小的識(shí)別塊,最終識(shí)別到符合條件的觸點(diǎn)。
識(shí)別出觸點(diǎn)后,通過比較相鄰2幀之間的觸點(diǎn),使用最小距離法判別觸點(diǎn)的運(yùn)動(dòng)軌跡。如果相鄰2幀兩點(diǎn)之間的距離小于設(shè)定的閾值,就認(rèn)為是同一個(gè)觸點(diǎn),給予同一個(gè)觸點(diǎn)ID。
觸點(diǎn)發(fā)送模塊:使用TUIO協(xié)議,將觸點(diǎn)信息發(fā)送至前端應(yīng)用程序或者是操作系統(tǒng)。前者能夠使用TUIO協(xié)議接受觸點(diǎn)信息,之后使用ActionScript3.0實(shí)現(xiàn)用戶與所展示內(nèi)容之間的互動(dòng);后者能夠把觸點(diǎn)事件封裝成鼠標(biāo)事件,從而用戶能夠使用多點(diǎn)觸控技術(shù)操作計(jì)算機(jī)系統(tǒng)。
前臺(tái)顯示模塊:包括使用ActionScript3.0編寫代碼,對(duì)展會(huì)內(nèi)容進(jìn)行展示,實(shí)現(xiàn)觸控畫板以及大屏幕拼接。
3 系統(tǒng)關(guān)鍵技術(shù)與難點(diǎn)
3.1 多點(diǎn)觸摸點(diǎn)的識(shí)別
3.1.1 FTIR技術(shù)
當(dāng)手指(或者其他材質(zhì)如硅膠等有一定韌性和反射性的材料)碰到亞克力表面時(shí),全內(nèi)反射被破壞,光線被手指反射出來。此時(shí),亞克力下方正好有紅外攝像頭捕捉到手指反射的亮點(diǎn),攝像頭捕捉到的亮點(diǎn)會(huì)送到計(jì)算機(jī)進(jìn)行處理,形成輸入,有幾個(gè)亮點(diǎn),就形成幾個(gè)輸入點(diǎn)。
3.1.2 觸摸點(diǎn)的識(shí)別
使用紅外線攝像頭進(jìn)行原始圖像的捕獲,去除背景和噪聲后,使用平滑處理,進(jìn)一步去除圖像噪點(diǎn),再進(jìn)行輪廓描繪,得到符合要求的凸包。最后去除過大和過小的觸點(diǎn),得到正常范圍內(nèi)的觸摸點(diǎn)。觸摸點(diǎn)可以由多人發(fā)出。
3.2 大屏幕、多攝像頭拼接
由于投影儀分辨率的限制,要達(dá)到任意分辨率以及任意顯示大小,還是需要同時(shí)使用多臺(tái)投影儀與多個(gè)紅外線攝像頭。屏幕拼接方式主要分為有融合帶拼接與無融合帶拼接。由于用戶會(huì)近距離的進(jìn)行互動(dòng)操作,無融合帶的拼接方式會(huì)導(dǎo)致投影之間的黑線被用戶察覺,影響用戶體驗(yàn),因此采用有融合帶的拼接方式:即多個(gè)投影儀在融合帶顯示相同的內(nèi)容,使多個(gè)投影儀拼接產(chǎn)生一個(gè)邏輯上的大屏幕。
基于Adobe Air技術(shù)的拼接方法,其本質(zhì)是一種Alpha Mask方法。區(qū)別于使用OpenGL的軟拼接方法,使用flash最新的AIR技術(shù),讓flash文件在多個(gè)window中顯示,通過配置文件調(diào)整拼接帶(即重疊區(qū)域)的大小。同時(shí),使用flash本身支持的Alpha Mask,在光帶上配置遮罩,同時(shí)調(diào)整遮罩的大小以及透明度,人工觀測并對(duì)遮罩透明度進(jìn)行微調(diào),從而消除融合帶的亮帶問題。其優(yōu)點(diǎn)在于操作方便,能夠做細(xì)微調(diào)整直到達(dá)到預(yù)期效果。缺點(diǎn)是需要人工操作,自動(dòng)化程度不高。
3.3 視頻文件的嵌入與操作
本功能主要是前端實(shí)現(xiàn)完成。其中縮放、旋轉(zhuǎn)、拖動(dòng)等動(dòng)作基于touchlib部分功能,并在此基礎(chǔ)上進(jìn)行優(yōu)化。
3.2.1 縮放
3.2.2 旋轉(zhuǎn)
4 系統(tǒng)應(yīng)用
根據(jù)以上的設(shè)計(jì),使用Visual Studio2008(C++語言),OpenCV,ActionScript 3.0進(jìn)行軟件開發(fā),配合FTIR硬件架構(gòu),能夠?qū)崿F(xiàn)展會(huì)互動(dòng)展示系統(tǒng)。同時(shí)系統(tǒng)能夠有效兼容多種媒體格式,能夠在很小的開發(fā)成本下,滿足各種展會(huì)的展出需求。
5 系統(tǒng)前景展望
本系統(tǒng)通過不斷的內(nèi)容補(bǔ)充,可適用于不同的領(lǐng)域。將多點(diǎn)觸控進(jìn)一步與手勢識(shí)別、全息投影技術(shù)結(jié)合起來,能夠給人類帶來身臨其境的交互體驗(yàn)。當(dāng)然,從2D的多點(diǎn)觸控到3D的多點(diǎn)觸控,還有很多的工作要做。限于篇幅,關(guān)于3D的多點(diǎn)觸控不在此展開。
參考文獻(xiàn):
[1]Toni Da Luz ,3D Interaction for Puzzle Solving with the Cubtile,3D Multitouch Device. 3D User Interfaces (3DUI), 2011 IEEE Symposium on 19-20 March 2011,29–130.