硬件材料说明

苹果的产品向来都走在时尚的前列,它的每一项创意都能引起全世界的疯狂追捧。比如它在iPhone中采用的多点触控技术,就引发了多点触控技术的热潮。如 今不论是仿iPhone的山寨机、高档的MP4还是LCD显示器,都以多点触控作为一大卖点,吸足了玩家们的眼球。就连微软公司也将多点触控技术应用独立 出来,专门成立了surface部门,并计划让名为Windows 7的Vista后续版本支持这一技术。根据IT界的规矩,如此让人眼热的新技术,带来的自然是让人肉痛的高价格。我们这些囊中羞涩的老百姓们只能瞧着它眼 馋了。不过,人民的智慧是无穷的,居然有高人研究出了用摄像头实现多点触控的办法!那,还等什么呢?

        首先准备好必要的硬件材料:一个摄像头、一个纸盒子、一张A4的打印纸、一张透明的塑料膜和一卷透明胶。摄像头用30万像素的廉价品足以,不过为了方便固定,可不要选择那些奇形怪状的摄像头。

        纸盒子用皮鞋盒那么大的即可,不过皮鞋盒的深度不够,不建议采用。如果家里有厚纸板,不妨自己做一个盒子。(嘿嘿,小学的手工劳动课内容还记得吧?)A4 的打印纸是用来做触控面板的,不过考虑到这薄薄的一张纸很容易在玩得High的时候被戳破,所以才要贴一张透明的塑料膜用于保护它。当然,如果你们家有毛 玻璃,那就更好了。直接用毛玻璃当触控面板,结实又耐用,还节省了打印纸和塑料膜的钱(呃,貌似毛玻璃的成本还高些,没有多余的毛玻璃可不要打邻居家窗户 的主意啊)!

 硬件部分的制作

 


图1

        制作方法很简单,把纸盒子的顶盖去掉,然后把摄像头用透明胶固定在盒底中央位置,并尽量让镜头保持水平。前面说过盒子的深度问题,盒子太深的话,摄像头就 会把盒子四周的盒壁拍下来,盒子太浅的话,摄像头就会漏拍很多内容,这都会导致触控面板的有效触控面积缩小。所以,在选择或制作盒子时,一定要打开摄像头,通过观察画面效果来确定盒子的最佳深度,这样才能让触控面板的有效面积最大(图1)。


图2

        接下来在盒子的一侧挖个小洞,把摄像头的USB线引出来,然后把小洞的空隙填充起来防止侧面漏光,简称防侧漏。最后把塑料薄膜和打印纸贴在一起,经过适当地裁剪,用透明胶粘在盒顶,一个简易的多点触控面板就做好了(图2)。

        好吧,也许你觉得那个外型很土的盒子与时尚的“多点触控面板”很不搭界,它看起来根本就是个演皮影戏的小箱子。其实这个想法很正确,实现多点触控靠的就是“演皮影戏”。盒子里的摄像头就是“观众”,白色的打印纸就是“幕布”,不过演戏的不是小皮人,而是我们的手指尖。摄像头通过捕捉我们的手指尖留在白色屏幕上的阴影,来进行多触点定位。当然,这一功能需要靠专门的软件来实现。

软件部分的调设 

这里就要用到一个名为Touchlib的程序,我们可以下载一个名为MTmini Software Package v1的软件包,它里面包含了开源软件Touchlib、设置程序、各种示例程序,以及相应的教程等等。由于程序是用Java开发的,所以要先安装Java Runtime Environment (JRE)才行,推荐安装JRE 1.6版。解压该软件包,可以看到有三个批处理文件。运行“1)Configuration.BAT”文件可以对软件进行设置。运行后,首先会出现一个数据流格式设置窗口,我们可以设置摄像头的分辨率,这个不需要设置太高,用默认分辨率即可。之后就会一下子蹦出7个图形窗口和1个CMD窗口,有4个图形窗口可以调节画面效果。


图3

        一般来说,采用默认的设置就行了。设置的时候,要把手指按在盒子上面,在dsvlcaptrue0窗口中会显示出原始画面,其他窗口则显示改变了灰度、粗 糙程度等属性的画面,在rectify6窗口中显示的是最终效果,如果该窗口里面只出现平滑的与指尖对应的白点,那效果就已经调节得很好了,按ESC键退 出设置(图3)。


图4

        现在可以开始激动人心的多点触控体验了。先玩玩Windows示例程序。打开Demos /C++ Demos文件夹,运行里面的“Smoke_Demo.bat”文件,就可以打开Demo Smoke窗口。把手指在触控面板上滑动,就可以看到窗口中出现五颜六色的烟雾轨迹,里面的白色圆圈则代表触控点(图4)。

        运行“Windows_Mousedriver.bat”文件,会弹出CMD窗口,我们把手指按在触控面板上,直到窗口内出现“Recap”字样,然后就 可以用多点触摸的方式来代替鼠标操作了。Flash示例程序更加精彩,不过首先要运行“2)Server.BAT”文件,会弹出CMD窗口和Touch Linsener窗口。把手指按在触控面板上,直到CMD窗口内出现“Blob Detected”的字样。接着再运行“3) Gateway.BAT”文件,会弹出CMD窗口和名为“Flosc 2.0”的窗口,点击该窗口内的Start按钮,多点触控功能就生效了,然后我们就可以运行Demos/Flash文件夹里面的Flash示例程序了。软 件包里还提供了更为详尽的英文说明书,有不懂地方可以去研究一下。在《计算机应用文摘》杂志官方博客网站还有一个完整步骤的演示视频,有兴趣的朋友可以去 看一看网址 。