基于Kinect多点触控系统设计及实现
摘要:针对传统的多点触控系统在安全性和适用范围等方
面的不足,提出了基于Kinect的多点触控系统。该系统利
用Kinect获取三维深度信息,
通过建立触控感应平面模型,
检测用户多点触控事件,并进行触控点的坐标变换,实现对电脑的控制。实验结果表明,在多点触控中,该系统具有较高的精度和稳定性,对人体不会造成任何伤害。
关键词:多点触控;Kinect;感应平面;目标检测 中图分类号:TP391.9文献标识码:A文章编号:
1009-3044(2012)16-3987-03
The Design and Realization of Multi—touch System
Based on Kinect
CAI Rui-yan
(Information and Engineering College of Dalian University, Dalian 116622, China)
AbstTact: According to the deficiency of aspects such as safety and application in traditional multi-touch system, a new multi—touch sys? tem based on Kinect is proposed・ This system uses Kinect to obtain three-dimensional depth information, models for induetion
plane,de? tects multi-touch events of user, transforms
thecoordinate system of touch point and controls the
computer.The experimentai resuIts show that the system
hashigh precision and stability, is harmless to human
beings・
Keywords:multi-touch;Kinect;induetionplane;
targetdetection
鼠标作为传统的图形人机交互界面的主要设备,长期以来在计算机操作中处于主导地位,但是鼠标只能用单手操作,无法将人自然生活的双手操作技能应用于人机交互之中。二十世纪以来,随着计算机技术和人机交互技术的发展,
出现了许多基于双手多点触控操作的新型设备,例如美国MERT
(三菱电器研究实验室)的DiamondTouch[l]、索尼的SmartSkin[2],以及微软最新推出的划时代多点触控人机交互设备SurfaceII等。这些设备通过识别双手的多点触控事件,将其应用到人机交互之中,取得了较为理想的效果。
虽然各种多点触控设备不尽相同,但原理基本相同,主要是利用摄像机采集触控物体在显示区域中的图像,建立背景模型,分离出前景图像,通过目标检测和跟踪算法获得图像中触控点的信息,经过坐标映射变换,将图像坐标系转换成交互界面的世界坐标系,使计算机能够识别触控物体在显示区域内的位置坐标和运动信息,实现预定义的各种触控操
作。由于上述方案实现简洁,主要处理模块由软件实现,被大多数制造厂商和爱好者采用,但是由于组成设备中采用了功率较大的红外激光光源,使用中会对操作者的眼睛造成潜在威胁,并且,摄像机对光线变化比较敏感,限制了设备的使用环境。
在分析各种多点触控方案的基础上,该文提出了基于kinect的多点触控解决方案,用kinect取代了上述方案中的红外激光器和摄像机,在不对操作者造成伤害的前提下,扩展了系统的使用范围,增强了系统的通用性。
个方面:
1)检测视场内是否有物体进入,如果有物体进入,通
过轮廓检测算法检测出进入物体的质心坐标、轮廓信息[4,51;
2) 求解进入物体的“凸包”信息;
3)确定进入物体中靠近"感应平面”点的坐标p(x,y); 4)确定进入物体中靠近“感应平面”点与该平面的距离d;
5)设定容差。,当dWo时,定义该进入物体实现'‘触
控”;
6)对触控点坐标世界坐标p(x,y)进行坐标映射,具体步骤为:首先将坐标p(x,y)映射到Kinect三维传感器的图像坐标I(x,y),然后将I(x,y)坐标映射到电脑屏幕的控制坐标
S(x,y) o |
|
7)将坐标S(x,y)通过控制协议发送给电脑,实现多点触控。
处理流程如图4所示。
在普通实验室环境下进行实验,测试平面表面最大起伏W3mm,Kinect距离平面垂直高度650mm,垂直倾角42°, 分别对处理效率和识别准确率进行了实验,结果如表1所示。
表1实验结果
在分析传统多点触控系统的基础上,该文提出了基于Kinect三维传感器的多点触控解决方案,该方案通过Kinect获取三维深度信息,对触控平面建模,检测用户多点触控事件并实现对电脑的控制,实验证明,该方案可以实现对触控
事件的实时处理,并且获得了较高的触控精度,满足对多点
触控设备的需要。