多点触摸
概述
顾名思义,多点触摸(MultiTouch)技术指的是允许计算机用户同时通过多个手指来控制图形界面的一种技术。与多点触摸技术相对应的当然就是单点触摸,单点触摸设备已经有很多的年头了,小尺寸的有触摸式手机,大尺寸最常见的就是银行里的ATM机和排队查询机。多点触摸设备是由可触摸设备(例如:计算机显示器、桌子、墙壁)或者触摸板组成,通过软件识别同时发触摸行为的点。这与市场上常见的触摸显示屏(例如:计算机触摸板、银行的ATM柜员机)不同,市场上常见的触摸显示屏只能够识别单或双点。
硬件
多点触摸技术带来了许多惊人的开创,这不仅仅局限在多点触摸设备,还引发了更多相关的设备出现。到目前为止,已经有五项可以帮助爱好者搭建稳定的多点触摸平台的技术出现,它们分别是:由Jeff Han 教授开创的受抑全内反射多点触摸技术(FTIR);微软Surface采用的背面散射光多点触摸技术(Rear-DI);由Alex Popovich 提出的激光平面多点触摸技术(LLP); 由Nima Motamedi 提出发光二极管平面多点触摸技术(LED-LP);由Tim Roth 提出的散射光平面多点触摸技术(DSI)。
这五项技术主要基于光学原理和计算机视觉识别,除了这五种主流技术之外,,还有一些其它的技术同样可以搭建多点触摸设备,包括声波器、电容、电阻、动作捕 捉器、定位器、压力感应条等。通常情况下,这各种感应器结合起来,就可以搭建一个特别的多点触摸设备。在这里,我们将和大家探索这五种多点触摸技术。
基于光学的多点触摸技术
基于光学原理(如摄像头)的多点触摸技术搭建的设备体积相对较大,但它的可拓展性较强、成本较低以及容易搭建。受抑全内反射多点触摸技术(FTIR),正 面和背面散射光多点触摸技术(Front and Rear DI),激光平面多点触摸技术(LLP),发光二极管平面多点触摸技术(LED-LP),散射光平面多点触摸技术(DSI),这些都是基于光学原理多点触 摸技术。
每个基于光学原理的多点触摸技术都包含光学感应器(通常为摄像头或摄像机)、红外光源以及通过投影仪或者显示面板显示的屏幕。因为有这三个相通点,所以在系统探讨各项技术前,需要对这三点有个清晰认识和了解。受抑全内反射多点触摸技术
JeffHan教授(Han2005)。Han教授的⽅法是源⾃⼀个光学的基本现象,叫全内反射(⼜称全反射),它讲述的是在⼊射⾓⽐特许的⾓(Getty,KellerandSkove1989,p.799)⼤的情况下,光线经过两个不同折射率的介质,这个特许的⾓(称为临界⾓)基于物质的折射率⽽得到的,可以通过Shell法则以数学⽅式计算出来。当上述情况发⽣时,在物质上就不会产⽣折射,⽽是所有的光线会反射在内部。Han教授通过这个原理把红外线反射在⼀块遵守全内反射规则的压克⼒内部,当⽤户在压克⼒表⾯触摸时,光线就会被⽤户的接触部位反/折射(通过⽪肤),在触摸的地⽅就会将原本反射在内部的红外线折射回我们在压克⼒板⾯架设的红外摄像头(图1),通过对应的软件就可以侦测到我们相对应的信息点。这个原理在我们制作多点触摸显⽰设备的时候⾮常的有⽤,当光线的反射被我们破坏在对应的区域,然后折射出来时,架设在下⾯的红外摄像头便能够清晰地读取到相对的信息点。
散射光照明多点触摸技术
散射光照明多点触摸技术会有两种表达形式:正⾯散射光照明多点触摸技术和背⾯散射光照明多点触摸技术(如图2)。两种表达形式都基于同⼀个原理——画⾯与触摸在屏幕上⾯的⼿指形成对⽐。
激光平面多点触摸技术
红外激光头发射出来的红外⾯铺满整个屏幕,这个激光红外⾯的厚度⼤概在1mm左右,当⼿指触摸屏幕的时候,⼿指的尖部会作为⼀个红外点显⽰出来。利⽤激光平⾯多点触摸技术来实现多点触摸装置是种简易以及价格便宜的⽅法,多数的装置需要两到四个激光头,从屏幕的四个⾓落照射在平⾯上。激光光线的亮度取决于激光的功率(mw、w),功率越⼤亮度就越⾼。
散射光平面照明多点触摸技术
散射光平⾯照明多点触摸技术是利⽤⼀种特殊的压克⼒来使红外线照亮整个屏幕的。可以参照FTIR装置的步骤(不需要⽤到兼容层),把普通的压克⼒转成特殊压克⼒(如图3),这种压克⼒运⽤了许许多多的导光粒⼦作为主材料,就像在压克⼒⾥⾯装满了许许多多的镜⼦⼀样,当光照射进⼊内部的时候,就会被发射从⽽照明整个屏幕,市场上称这种压克⼒为导光板。这种效果有点类似散射光照明多点触摸技术(DI),不同的是没有特别明亮的区域以及它的设置和FTIR相同。
发光二极管平面多点触摸技术
红外发光⼆极管放置在触摸屏幕的四周,让光线更好地分布在表⾯上。这和激光平⾯多点触摸技术类似,⼆极管平⾯多点触摸技术同样在触摸屏幕上创造了⼀个红外线平⾯,光线会使放在屏幕上⽅的物体发亮⽽不是触摸,然后通过软件(Touchlib、CommUnityCoreVision)调节滤镜来设置仅当物体被提起或者接近屏幕的时候被照亮。但这个对于刚开始⽤⼆极管平⾯多点触摸技术来做设备的爱好者来说会是⼀个挑战,需要有更多的耐性去调节。装置中建议利⽤⼀块挡⽚(例如图4所⽰)放置在⼆极管的上⽅,这可以让更多的光在平⾯上。
软件
多点触摸输入编程和其他任何形式的编程一样,不过在多点触摸编程中,有一套固定的某些协议,作法和标准。通过NUIGroup与其他组织和社团的合作,多点触摸编程已经有了针对多种编程语言的开发框架,这些语言包括ActionScript3,Python,C,C++,C#以及Java。多点触摸编程分为两步:首先,从摄像头或者其他输出设备读取和转化输出的触点信息,传递这些原始的触点信息通过之前制定的协议组合,然后编程语言就可以使⽤⼿势来让⼀个应⽤程序配合。TUIO(Tangible User Interface Protocol,可触摸的用户界面协议)已经成为追踪触点信息的专业标准协议。
分类
从可触摸的点数上来分,有两点触摸(比较适合一个用户,现在市场上也把两点触摸归到多点触摸的行列)、真多点触摸(适合于多个用户)。
从设备尺寸上来分,有小尺寸的个人多点触摸设备,也有大尺寸的适合多人的多点触摸设备。通常以20英寸作为个人设备和多人设备的分界点,显然太小的设备多人用起来也不方便。
主要代表品牌