摘要: | 近年來,人機互動介面的領域已經廣泛此採用了多點觸控技術。但這項技術除了改善人機之間的互動之外,作者還發現它有更大的潛能將此技術推廣到在人們做面對面溝通與合作的輔助平台,用來改善人與人之間的互動。為了完成這樣的系統,這篇研究設計和實作了一個支援多人多點觸控的運算系統,這系統一共包含了三層的軟體堆疊,從底層到最上層的分別是: 1.多點觸控的追蹤演算法、2. 支援多人多點互動的應用程式開發介面,和3.應用程式。在多點觸控追蹤演算法方面,作者使用了OpenCL的運算模型來實作針對GPU最佳化的演算法,以提高運算的速度與品質,並將這套軟體命名為diTouch。結果顯示diTouch即使在處理百萬像素的解析度下,也擁有每秒五十格以上的處理速度,在相同的測試環境下比知名的Open Source 專案TouchLib還快五到七倍。除了速度之外,作者還加入了以像素為單位的臨界值查表法(threshold map)、二維條碼追蹤,和手指中心位置偵測等技術來增加辨識的精準度。更重要的是現代的作業系統並沒有支援在單一螢幕下的多人使用情境。為了克服這樣的困難,作者在Java Swing的基礎之上,用OpenGL改寫整個UI的底層繪圖系統,來支援可自由旋轉,和多重鎖定的視窗功能,讓使用者介面針對多人多點互動最佳化,並命名Surface Application Framework (SAF)。並且基於這樣的架構開發了多套的應用程式,證實這樣的系統是可行的。最後,作者基於這套系統的研究經驗,提出多個可行的改善方案,包括子像素(sub-pixel)精準度的演算法、使用者辨識和以HTML5為基礎的應用程式開發介面,來改善應用程式開發環境和使用者經驗。Recently, the multi-touch technology has become widely available for human-computer interaction. We found it has a great potential to facilitate more awareness of human-to-human interaction than conventional computers in co-located collaborative work. To complete such a computing system, this study builds three layers of software stack; they are multi-touch tracking layer, multi-touch and multi-user-supported UI framework layer, and applications layer. In the multi-touch tracking layer, this study proposes a novel GPU computing framework, name diTouch for robust multi-touch tracking. It utilizes the OpenCL programming model benefited greatly from GPU. The results of the test showed that diTouch promises to have more than 50 frames process speed per second on million pixels image sequence, which is 5 to 7 times faster than that of optimized CPU implementation. Besides the speed, more features, like recursive and symmetric highpass-filter, threshold map and, 2D tag detection, hand detection and fingertip locating are investigated in the proposed system. Moreover, co-located interactions rarely been concerned by other studies, is also being explored. Therefore, the user interface framework, namely Surface Application Framework (SAF), is designed to support multi-touch and multi-user applications on the proposed computing system. Finally, this study suggests some future improvements of the propose system, like sub-pixel precision tracking, three dimensions CSCW design approaches, user recognition and novel HTMl5 based UI framework. |