如何自制简易多点触摸屏

其实这个应该算是火星了,相信喜欢逛YouTube的朋友可能已经看到过相关的视频。在这里主要是介绍一下我自己的经验,感兴趣的朋友可以自己做一个,很方便的。

硬件:
1、摄像头一个。用不着太好,30W像素的杂牌子也是可以的,但是最好用可以全方位旋转的那种,至少能够达到60度以上的仰角,当然如果能够到90度就很完美了。
2、除去顶盖的硬纸板盒一个。不能太小,纸板越硬越好,开口尽量宽敞点。
3、白纸一张。普通的打印纸就可以了。
4、透明材料。最理想的材料是半透明玻璃,可以直接省去材料3,搞不到的话就用普通玻璃,其实我的感觉是,用贴液晶显示器的保护膜就够了,可以选稍微硬一点的那种。

软件:MTmini Software Package v1 ,包含了开源软件Touchlib(整个制作的核心)、设置程序、各种示例程序,以及相应的教程等等,总之就是All-in-One。

制作方法:
1、把摄像头固定在纸板盒的底部,并使得摄像头的有效部分和水平面尽量成0度角,在纸板盒的侧面开一个口,引出数据线,口不要开太大,避免过多的光线射入。
2、把材料3和材料4(我这里用的是液晶保护膜)裁剪成同样大小,用透明胶带站在一起,粘有白纸的一面向上,并固定在材料2的上方,这一步的关键在于固定的时候尽量不要在盒子的边缘留下缝隙。
3、如果你用的是那种半透明玻璃桌面的电脑桌,那可以直接把盒子粘在桌子下方,就像这样子,超级省事:
 

软件设置部分:
1、配置Touchlib
运行Configuration.bat,会出现一个CMD控制台和图形界面,这里没有什么特别需要改动的地方,一般按默认就可以了,分辨率不用调得太高。
确定之后会出现一系列的窗口,每个窗口里面都有一个滑块可以调节,把你的手指按在刚刚做好的盒子上面,你会看到窗口里面会出现手的大概模样(没看到?你该不会是没有开摄像头吧?),调整滑块以改变灰度、粗糙程度等属性,直到名为Rectify7的窗口里面只出现平滑的与你的手相对应的白点。调整好后按ESC退出。
2、Windows示例程序
运行Demos/C++ Demos里面的Smoke_Demo.bat,移动你的手指,看看具体效果。如果烟雾的效果不是很明显,重复步骤2;如果有大于手指数量的烟雾点,按B键进行背景重捕捉。一般来说,Smoke Demo里面的效果应该还是不错的。满意的话按Q键退出。
运行Demos/C++ Demos里面的Windows_Mousedriver.bat,弹出CMD控制台,直到出现“Recap”字样时,就可以用多点触摸的方式来代替鼠标操作了。
3、Flash示例程序
首先运行Server.bat,弹出CMD控制台和一个灰色的窗口(无图像),用手指按在盒子上,直到CMD内出现“Blob Detected”的字样,然后运行“Gateway.bat”,弹出CMD控制台和名为“FLOSC 2.0”的窗口,点击该窗口内的“Start”,CMD控制台应该会显示“Server Started”,如果没有的话,可能是没有安装 Java runtime 1.6以上的版本的缘故。
然后你就可以运行Demos/Flash文件夹里面的Flash示例程序了。

以上内容其实都在教程文档里面了,如果遇到问题,可以看看文档里面的Help部分(推荐),或者到这个地方进行提问:NUI Group Forum

最后附上一个完整步骤的演示视频:

Tags: |

21 comments:

  1. Corey, 31. 05月 2008, 20:38

    1、配置Touchlib
    ……直到名为Rectify7的窗口里面……
    运行之后没有Rectify7窗口,只到Rectify6……

    谁知道是怎么回事?

    [回复此评论]

    MooN reply on 2008年5月31日 21:03:

    如果是6,那就看6,反正是黑白对比最强烈的那个窗口

    [回复此评论]

     
  2. 小白, 31. 05月 2008, 21:13

    Server.bat运行时指向的OSC.exe无法执行。没有你文中提到的,“弹出CMD控制台和一个灰色的窗口(无图像)”,该怎么办?

    [回复此评论]

    MooN reply on 2008年5月31日 22:01:

    有什么错误提示吗?

    [回复此评论]

    小白 reply on 2008年6月1日 09:11:

    错误提示是:系统无法运行指定的程序。

    可能是我的系统环境有问题。在朋友的机器上可以运行。

    [回复此评论]

     
  3. 小白, 31. 05月 2008, 21:14

    另外。C++烟花那个示例我已经成功执行。

    [回复此评论]

     
  4. Right, 31. 05月 2008, 22:13

    (没看到?你该不会是没有开摄像头吧?)

    打开摄像头是指?如何操作?
    我打开1) Configuration 只有灰低 无图像

    [回复此评论]

    MooN reply on 2008年5月31日 23:07:

    请参看文档里面的Help部分:Do you have grey screens or the wrong camera loading?Here’s how to fix it

    [回复此评论]

    Right reply on 2008年6月1日 12:01:

    看了 没有用 这个Help写的乱七八糟 连DSVL和DSLV都打错…

    Google一下发现有的人加入了@device:pnp:\\?\usb#vid_06a2&pid_0003#6&69b1099&0&2#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global”

    类似的行 但还是没有效果

    能否发下你的DSVL_config内容好吗?

    [回复此评论]

    MooN reply on 2008年6月1日 12:20:

    我也是在朋友机器上调的,config还在他机器上,我看下午能不能去看一下

    [回复此评论]

    MooN reply on 2008年6月1日 19:24:

    我的配置文件内容:

    [回复此评论]

     
  5. 小白 (Trackback), 1. 06月 2008, 17:29
     

    如何自制简易多点触摸屏…

    原文见:MooN

    在网上看了这个篇文章,觉得有点意思,呵呵,自己弄了一个。硬件:
    1、摄像头一个。用不着太好,30W像素的杂牌子也是可以的,但是最好用可以全方位旋转的…

     
  6. Corey, 1. 06月 2008, 19:36

    最大的问题还是在于光源。
    如何让手指与玻璃板接触的部分和未接触的阴影部分从黑白对比上区分出来,这是最关键的地方,我在想弄成两层,中间有几毫米的间隔,这样似乎好一些,还没有实验的说。。。。。

    [回复此评论]

    MooN reply on 2008年6月1日 20:20:

    对,光线平均的房间是最合适的,只要没有直射光源照到触摸屏上,效果还是不错的。
    这一点经验我在写的时候忘记加上去了

    [回复此评论]

     
  7.  

    [...] 原文链接 [...]

     
  8. linlin, 13. 06月 2008, 9:42

    为什么我总对不准手指头呢?总是歪的,小圆圈在一边,没有和我的手指头重叠。请问MooN知道吗?MooN,你的联系方式是什么,我在北京,希望和你联系。请将你的联系方式发给我们。并希望能与在北京的同志交流一下。

    [回复此评论]

    MooN reply on 2008年6月13日 14:48:

    摄像头放在箱子底部中间比较好,关于调整摄像头这方面可以看看这篇文章:
    http://littlewhitetwo.blogbus.com/logs/22050930.html

    [回复此评论]

     
  9. kk, 24. 06月 2008, 11:59

    下载了之后不懂得如何操作。按里面的步骤123来操作。什么都没有显示。所有的窗体都是打开了后自动关闭的。请问是怎么回事
    加上里面全是英文看不懂,有人能讲我听吗

    [回复此评论]

     
  10. 李彬, 14. 07月 2008, 2:34

    对啊..
    打开了软件后所以窗口都自动关闭..

    [回复此评论]

     
  11. 郭博学, 3. 08月 2008, 15:14

    你好,我在分析源码的时候出现了问题。
    我运行了//demos//touch.cpp,但按B后不管用,它只是把第一帧做为背景??、
    请问一下是怎么回事?

    [回复此评论]

     
  12. 鱼, 12. 10月 2008, 14:04

    我的程序无法运行呀,运行Configuration.bat后并没有出现任何的窗口。我还单独去运行了一下Touchlib_Tracking_Software\configapp.exe,结果是说程序配置不正确无法运行。
    这是怎么回事请各位高手帮帮一下小弟吧!

    [回复此评论]

     

添加评论: