基于双目视觉的触摸技术研究

分享到:

触摸是人类最简单和最本能的行为之一,触摸屏技术方便了用户对计算机的操作。与鼠标、键盘、手写板相比,触摸屏技术实现了人机互动的最简单、最直接的方式。尤其是近年来iphone手机风靡全球,使得“多点触摸”成为另一热点话题。它将进一步推进触摸屏的流行,同时也将推升多点触控功能的深入人心。但目前对于超大触摸屏硬件实现成本很高,多点触摸技术还不成熟。因此,触摸行业仍有很大的提升空间,具有十分广阔的研究前景。
   

用软件代替昂贵的硬件从而降低成本将成为可能,计算机视觉技术成为首选。基于视觉的手势交互领域中存在许多困难和挑战[1],如复杂背景和光照变化的影响、人手快速运动的变形、手指之间的相互遮挡等,这无疑使得精确的图像分隔和特征提取成为难点[2]。为降低视觉处理的复杂性,人们用特殊标记手套等辅助工具来获取手的位置和方向[3]、手部自然色信息进行特征提取[4]、利用三路或四路摄像头分组获取图像,从而定位手指[5]等,以实现人机交互。
   

本文提出了一种新的基于双目视觉的手指屏幕交互方法。该方法主要采用两个摄像装置来构建,通过对获取的双图像进行分析,并计算触摸点位置和定义触摸的过程。
 

1 系统概述
   

基于双目视觉技术来[6]实现对普通显示屏的触摸功能,系统主要由两个一维图像采集装置(摄像头)、普通显示屏幕和计算机识别定位软件三部分组成。系统装置参考图如图1所示。

   

两个图像采集装置安装在显示屏幕的同侧任意位置,但要保证两者的视角范围覆盖整个显示屏幕。在每个图像采集装置获取到的一维图像中,显示屏幕均以一条直线形式呈现。构建一个虚拟的触摸屏平行于显示屏幕的正前方,当触摸物接触到虚拟触摸屏就能立即被摄像头捕捉到。在一维图像显示屏幕的直线上会有点出现,进而用识别定位软件进行转换处理,为虚拟触摸屏中的二维坐标,并完成相应的触控操作,以此来实现人机交互功能。系统实现原理示意图如图2所示。
 

2 系统标定
   

系统标定的目的是分别确定两个摄像头的图像坐标系与屏幕坐标系之间的映射关系[7]。本文的屏幕坐标系是指显示器用于图像显示的坐标系,本实验选用的是47英寸液晶电视机作为显示屏幕。
   

在显示屏幕的每边上逐一显示如图3所示的若干个均匀分布的参考点,一旦有接触物接触显示屏幕,分别由两个摄像头采集这组点在图像中的位置,计算机记录下图像坐标与屏幕坐标的对应关系(x1)(x2)(x,y)。其中,x1和x2分别为两个摄像头采集的一维图像中的坐标,(x,y)为对应的虚拟触摸屏四边上的二维坐标。

   

本系统的摄像头安装在屏幕的下边沿两角上。摄像头逻辑坐标的确立是在坐标映射之后自动完成的,默认采用的是屏幕上边沿中间和右上角两个参考点A1和A2,利用二分法查找[8]并确定屏幕下边的对应参考点B1和B2,连接参考点A1和B1获得屏幕内的左下角摄像头的一条直线,连接参考点A2和B2获得另一条直线,两条直线相交,获得左下角摄像头的逻辑坐标。同理,可以确定右下角摄像头的逻辑坐标。摄像头逻辑坐标确立方法如图4所示。

3 触摸定位和动作判定

3.1 触摸定位
   

在摄像头采集到的一维图像上,整个虚拟触摸屏显示为一条直线段;触摸物在虚拟触摸屏上的点击显示为在直线段上出现的一个点;触摸物在虚拟触摸屏上的运动显示为点在直线段上的移动。在两个摄像头采集的两幅图像中直线段上的点和二维虚拟触摸屏四边上的点存在一一对应的关系。
   

当触摸物在显示屏幕上任意一X处进行触摸时,其在两个摄像头采集的图像直线段上有对应位置X′和X″。根据坐标映射已知的一维图像坐标与二维屏幕四边上坐标的对应关系,可获得与X在两个摄像头的图像直线段上位置相同的屏幕边上的点Y1和Y2。连接Y1和已知的左下角摄像头以获得屏幕内的过触摸点X的一条直线,连接Y2和已知的右下角摄像头以获得屏幕内的过触摸点X的另一条直线,两条直线相交,得到的就是触摸点的坐标,从而完成触摸物的定位。图5(a)、(b)为左右两个摄像头采集的图像,中间区域为虚拟触摸屏的一维图像线阵,图5(c)为显示屏幕上的图像,亮点为对应的坐标位置。