CN1701351A - 检测和定位用户-对象与虚拟传送设备的交互作用的准三维方法和装置 - Google Patents

检测和定位用户-对象与虚拟传送设备的交互作用的准三维方法和装置 Download PDF

Info

Publication number
CN1701351A
CN1701351A CN 01817826 CN01817826A CN1701351A CN 1701351 A CN1701351 A CN 1701351A CN 01817826 CN01817826 CN 01817826 CN 01817826 A CN01817826 A CN 01817826A CN 1701351 A CN1701351 A CN 1701351A
Authority
CN
China
Prior art keywords
plane
user
virtual
equipment
optical system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN 01817826
Other languages
English (en)
Inventor
卡洛·托马斯
阿巴斯·拉非
Original Assignee
Canesta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canesta Inc filed Critical Canesta Inc
Publication of CN1701351A publication Critical patent/CN1701351A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Position Input By Displaying (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

与虚拟设备(50)一起使用的系统(10)并将信息传送给伴随设备(80),并包括两个光学系统OS1(20)、OS2(60)。在结构光实施例中,OS1(20)发射平行于且在虚拟设备(50)上的光能的扇形射束平面(30)。当用户对象(110)透过感兴趣的射束平面,OS2(60)记录事件。三角测量方法能定位虚拟接触,并将用户意图信息传送给伴随设备(80,90)。在非结构光实施例中,OS1(20)最好是其视场定义感兴趣的平面的数字摄像机,由有效的光能源照亮平面。最好,有源源,OS1(20)以及OS2(60)同步操作以降低环境光的影响。除光能源是环境光外,非结构无源光实施例更小。扣除技术最好提高信号/噪声比。伴随设备(80)实际上可包含本发明。

Description

检测和定位用户-对象与虚拟传送设备的交互作用的 准三维方法和装置
               涉及的在前提交的申请
要求申请人2001年4月27提交的、名称“Input Methods UsingPlanar Range Sensors”的共同未决U.S.临时专利申请序列号No.60/287,115,2001年2月27日提交的、名称为“VerticalTriangulation System for a Virtual Touch-Sensitive Surface”的共同未决U.S.暑专利申请序列号No.60/272,120以及2000年9月7提交的、名称“Application of Image Processing Techniquesfor a Virtual Keyboard System”的共同未决U.S.临时专利申请序列号No.60/231,184的优先权。另外,本申请是2000年2月11日提交的、名称“Method And Apparatus for Entering data a VirtualInput Device”的共同未决U.S.专利申请序列号No.09/502,499的部分延续。所述申请的每一个在此合并作为参考。
技术领域
本发明通常涉及检测相对于设备的铁笔或用户手指的接近以便将命令和/或数据输入或传送到系统,以及更具体地说涉及相对于虚拟设备的这种检测,该虚拟设备用来将命令和/或数据和/或其他信息输入或传送到系统。
背景技术
通常希望使用虚拟输入设备来输入命令和/或数据和/或其他信息传送到电子系统,例如,计算机系统、乐器甚至电话。例如,尽管现在能以几乎袖珍型来实现计算机,但在迷你键盘上输入数据或命令却很费时且容易出错。虽然现今很多移动电话能处理e-mail通信,但实际上使用小型电话触摸键盘输入消息是很困难的。
例如,PDA具有许多计算机的功能但却得忍受极小的或不存在的键盘。如果系统可用来确定用户手指或铁笔何时接触到虚拟键盘,或哪个手指接触到哪个虚拟按键上,也许能将系统的输出输入到PDA中代替键盘信息(在此可交换地使用术语“手指”或“多个手指”以及“铁笔”。)在该例子中,虚拟键盘可是展开成键盘大小,在其上印刷有按键以引导用户手的一张纸。理解到虚拟键盘或其他输入设备只不过是工作面而且没有传感器或机械或电子部件。纸以及按键不是真正输入信息,而是用户手指以及纸部分间的交互作用或界面,或如果不是纸,在其上将存在按键的工作面部分能用来将信息输入到PDA。类似的虚拟设备和系统可用来将e-mail输入到移动电话。虚拟琴键盘可用来充当真正的乐器。问题是如何来检测或检测相对于虚拟设备用户手指或铁笔的位置。
Korth(1998)的名为“Method and Device for Optical Inputof Commands or Data”的U.S专利5,767,848试图使用二维TV摄像机实现虚拟设备。这种光学系统依赖亮度数据并要求稳定的环境光源,但不幸的是亮度数据能干扰成象系统。例如,图象前景中的用户手指可能无法从背景区域中区别开来。另外,由防碍虚拟设备的用户的手引起的阴影或其他图象块现象似乎使得在操作中实现Korth系统有点不精确。Korth也要求检验用户手指的轮廓、相对于虚拟设备的手指位置以及确定手指运动。
Bamji et al.(2001)1999年9月22日申请的、名为“CMOS-Compatible Three-Dimensional Image Sensor IC”,申请序列号No.09/406,059的U.S专利No.公开了能与虚拟设备一起使用的复杂的三维成象系统以便将命令和数据输入到电子系统中。在那个专利中,公开了各种测距系统,这些系统能用来确定用户指尖和虚拟输入设备如键盘间的界面。使用渡越时间(time of flight)测量在三维中确定成象。放出光能的光源朝着目标对象,例如虚拟设备的方向,以及通过光电二极管阵列检测由成象通路内的对象部分反射的能源。使用各种复杂的技术,确定光能发射及其通过光电二极管阵列的检测间的实际渡越时间。这种测量允许计算对三级中目标对象点,例如,(x,y,z)的矢量距离。上述系统检验反射的发射能源,并且能在没有环境光的情况下工作。如果例如,目标对象是计算机键盘的布局,也许是在其上具有印刷按键的一张纸,系统能确定哪个用户手指以何种顺序触摸在目标什么部分,例如哪个虚拟按键上。当然,纸是任选的并可用来引导用户手指。
用Bamji发明获得的三维数据能用软件处理以便当它们接触到触摸表面,例如虚拟输入设备时,能定位用户手指。当请求将键盘事件输入到由相关的电子设备或系统(例如,计算机、PDA、移动电话、信息站设备、销焦点设备等等)执行的应用时,软件能识别与表面上位置的手指接触。虽然Bamji系统能操作且可用来使用三维成象将命令和/或数据输入到计算机系统中以便分析手指和虚拟输入设备的界面,但需要不那么复杂而且也许不那么高级的系统。象Bamji系统,这种新系统应当相对便宜以便大量生产而且应当耗费相对少的负载功率以便电池供电是可行的。
本发明提供这种系统。
发明内容
本发明使用平面准三维检测,定位用户手指或铁笔和上述定义为工作面的无源触摸面(例如,虚拟输入设备)间的交互作用。准三维检测意思是使用二维平面作为基准,能基本上在三维中确定交互作用点,在三维空间中任意定向二维平面。只要检测到触摸,本发明定位触摸区以确定响应触摸,产生了与触摸的定位区域一致的在虚拟输入设备上何处发生了触摸,以及键入了什么数据或命令。另外,虚拟输入设备可包括虚拟鼠标或跟踪球。在该实施例中,本发明检测和报告与虚拟输入设备的接触点的坐标,这些坐标结合到应用中,可能用来移动显示器上的光标(用虚拟鼠标或跟踪球实现)和/或对制图或书写应用提交数字标记(虚拟笔或铁笔实现)。在各个实施例中,最好使用三角测量分析方法来确定在何处产生与虚拟输入设备的用户-对象“接触”。
在所谓的结构光实施例中,本发明包括第一光学系统(OS1),产生定义平行于且与工作面分开小平衡距离ΔY的光束角Φ的扇形射束,在工作面上定义虚拟输入设备。在该实施例中,感兴趣平面是由OS1产生的光平面,OS1通常是激光器或LED光发射器。两个平行的平面可通常是水平的,但它们可垂直以或方便的任何其他角度放置。本发明还包括第二光学系统(OS2),对由OS1发射的相同波长的光能起响应。最好,将OS2放在OS1上,且相对于扇形射束平面,朝定义虚拟输入设备的区域偏转θ角。OS2对由OS1发射的能源起响应,但光能的波长不需要人类可见。
本发明也可使用有源或无源的非结构光结构实现。在无源三角测量实施例中,OS1是摄像机而不是有效的光能源,以及OS2是摄像机,对与OS1相同的光能起响应,并且是最好如上所述放置。在这种实施例中,感兴趣平面是OS1摄像机的扫描线的投影平面。在非结构光实施例中,诸如有源三角测量实施例中,OS1和OS2是摄像机并且本发明还包括发射具有OS1和OS2响应的波长的光能。可选地,在这些实施例中,OS1和OS2每个包括与有源光源的输出同步的遮光器机构,以便当发射光能时,打开OS1和OS2中的遮光器,否则关闭。使用两个摄像机的非结构光结构的优点在于更能容忍工作面中的连续冲击或不规则性。通过选择检测象素无的OS1的适当行以便符合工作面的最高y-维点(例如,连续冲击),选择由OS1定义的平面。
在结构光实施例中,OS2将不检测光能直到对象,例如用户手指或铁笔开始触摸在其上定义虚拟输入设备的工作面区域。然而,只要对象透过由OS1发射的光能的平面,将照亮与平面相交的手指或铁笔部分(对用户可见或不可见)。OS2通过检测由照亮的对象区域反射到OS2的光能来检测与感兴趣平面的交叉。基本上只有一个平面对本发明有益,由OS1的结构确定,以及在三维空间中可定义的平行于虚拟输入设备的所有其他平面可根据无关性忽略。因此,平面三维传感器系统检测在发射的扇形光束平面上发生的与虚拟输入设备的交互作用,以及忽略在其他平面上的交互作用。
以这种方式,本发明检测已经触摸过虚拟输入设备的对象。发生检测相关的触摸相关,然后本发明以二维在虚拟设备的平面上定位触摸的位置。在优选实施例中,定位事件可包括识别在虚拟计算机键盘或乐器键盘上的哪些虚拟键由用户触摸过。用户可同时触摸不至一个键,例如“shift”键和另一键。同时注意由本发明确定触摸的时序。因此,如果用户触摸虚拟键“SHIFT”和“t”,然后是字母“h”和“e”,本发明将识别出正在输入的是“T”,然后是“h”和“e”,或“The”,因此能在即使存在环境光的情况下完美地操作,假定用户知道虚拟输入设备的位置。
结构光和/或非结构光有源三角测量方法可用来确定用户手和检测平面间的接触点(x,z)。由于OS和OS2间的基线距离B是已知的,在OS1、OS2和点(x,z)间形成三角形,其边分别是B、从OS,OS2至(x,z)的投影射线R1和R2。OS1和OS2允许确定远离基准面的三角形角度,以及由投影射线形成的角度α1和α2,以及三角法得出到表面点(x,z)的距离z以及投影射线的长度。
与本发明有关的处理器单元执行软件以识别用户控制的对象与虚拟输入设备的每次相交并由此确定适当的用户想要的输入数据和/或命令,最好使用三角测量分析。然后通过本发明,将数据和/或命令输出作为用于虚拟输入设备的设备或系统的输入。如果需要的话,本发明可在伴随设备或系统中实现,特别是对于PDAs、移动电话以及通常缺少大的用户输入设备如键盘的其他小型设备或系统。
本发明的其他特点和优点从下述描述将变得明白,其中已经结合它们的附图阐述过优选实施例。
附图说明
图1A根据本发明,描述用来检测对虚拟输入设备的用户输入的平面准三维检测结构光源系统;
图1B根据本发明,描述用来检测对虚拟输入设备的用户输入的平面准三维检测非结构化有源光源系统;
图1C根据本发明,描述用来检测对虚拟输入设备的用户输入的平面准三维检测非结构化无源光源系统;
图2A根据本发明,描述与使用三角测量的位置确定有关的几何结构;
图2B根据本发明,描述使用彼此分开的光发射器和反射器作为第一光学系统;
图3A-3E根据本发明,描述与改变OS2传感器的方向、OS2镜头以及有效视场上的检测平面以及图象质量有关的设计折衷;
图4是根据本发明的实施例,描述由图1B中的示例性系统中的处理器单元执行的功能的框图;
图5A根据本发明,描述虚拟设备具有5个用户可选择区域以及伴随设备(companion device)是监视器的实施例;
图5B根据本发明,描述虚拟设备是计算机键盘以及伴随设备是可移动收发器的实施例;
图5C根据本发明,描述虚拟设备是安装在墙上或在墙上凸出且伴随设备是监视器的实施例;
图6根据本发明,描述平面距离检测;
图7根据本发明,描述用在示例性触摸位置计算中的坐标距离测量,用在输入相应的信息或数据或命令中;
具体实施方式
图1A描述准平面三维检测系统10的优选实施例,在结构光源系统实施例中,包括第一光学系统(OS1)20,发射平行于平面工作面40的光能的扇形射束平面30,在扇形射束平面30上定义了虚拟输入设备50和/或50′和/或50″。最好,扇形射束定义扇形角Φ并与工作面分开小平衡(stand-off)距离ΔY。试图触摸工作面的任何对象(例如,用户手指或铁笔)必须首先接触扇形射束,从而将被发射的光能照亮(可见或不可见)。尽管在图1A中示出了水平放置扇形射束平面以及工作面平面40,但这两个平面可以垂直或甚至以系统期望的任何其他角度来放置。注意,没有限制,工作面40可是工作台的一部分、台面、交通工具的一部分,例如,飞机中的托盘、挡风玻璃或仪表板、墙、包括放映影象的显示器、或如CRT、LCD等等的显示器。如在此所使用的,应当将术语“平面”理解成包括全部平面的子集。例如,将扇形射束平面30称为平面,即使它具有有限的宽度而且在所有方向中不是无限地扩展。
对“虚拟输入设备”,它的意思是可将输入设备的图象呈现在工作面40上,可能通过放置含有印刷图象的纸,或可能系统10将输入设备的可视图象投影在工作面上,或完全没有无论如何在工作面40上可见的图象。同样地,虚拟输入设备50、50′、50″不需要诸如工作按键的机械部件且不需要对手指或铁笔的触摸灵敏;简单地说,虚拟输入设备最好是无源的。
在图1A的例子中,虚拟输入设备50是可是原尺寸或由实际大小键盘放大或缩小的计算机型键盘。如果需要的话,虚拟输入设备可包含或包括虚拟跟踪球50′和/或虚拟触摸键盘50″。当系统10与虚拟键盘输入设备50,或虚拟跟踪球50′或虚拟触摸键盘50″一起使用时,约50°至90°的扇形角Φ,最好是约90°将确保扇形射束30以通常使用的距离包围整个虚拟输入设备。另外,对这种虚拟输入设备,达到几mm的平衡距离ΔY工作良好,最好是约1mm。
系统10还包括第二光学系统(OS2)60,通常是具有平面传感器的摄象机,最好是与OS120分开放置且位于OS1之上,并且以约10°至约90°,并且最好是25°的角度θ朝工作面40和平面30倾斜。系统10还包括电子处理系统70,在其他任务中,监视OS1和OS2。系统70最好包括至少一个中央处理单元(CPU)以及能包括只读存储器(ROM)以及随机存取存储器(RAM)的相关的存储器。
在图1A中,示出了系统10元件OS1 20、OS2 60以及处理单元70放置在设备80上或位于设备80中。设备80可是系统10的独立实现或实际上是虚拟输入设备50用来输入数据或命令的系统或设备。在后一种情况下,设备80可是但不局限于计算机、PDA(如图1A中所示)、移动电话、乐器等等。如果系统或设备80不受虚拟输入设备的控制,受控的设备90可电耦合到系统/设备80以便从虚拟设备50接收数据和/或命令输入。在虚拟设备是跟踪球(或鼠标)50′或触摸键盘50″的情况下,用户与这些虚拟输入设备50′或50″的交互作用可直接输出由设备80使用的触摸坐标(x,z)的原信息或数据。例如,用户与虚拟输入设备50′或50″的交互作用可在显示器140上重新定位光标160,或者改变由设备80执行的应用程序,或拟定所谓的数字标记180的位置,该位置沿用户可能使用虚拟鼠标或跟踪球50′或使用铁笔120′和虚拟触摸键盘50″“书写”的位置。系统/设备90可通过媒介100电耦合到系统80,媒介100并无限制,可包括导线或无线的,或能是包括Internet的网络。
在结构光源的实施例中,OS1 20在平行于x-z平面30的扇形射束30中发射光能。OS1可包括激光线发生器或LED线发生器,尽管其他光能源也可用于发射平面30。线发生器OS1如此称谓是因为它发射光平面,当与第二平面交叉时,光平面照亮使OS的平面,使得OS2的平面视为第二平面上的线。例如,如果圆柱形对象与平面30交叉时,OS2将事件看作椭圆弧的照亮部分,椭圆弧的长宽比将由平面30和表面40上的OS2的距离而定。因此,除环境光外,由平面30上的椭圆弧的OS2的检测表示触摸事件,例如,对象如120R已经接触或穿过平面30。尽管可使用各种光发射器,可使用波长在300nm至1000nm间也许3mW平均功率的激光二极管输出。虽然也可使用环境光波长(例如,也许350nm至700nm),如果没有避开这些波长的话,没有过滤或遮光器,会最小化环境光的影响。因此,可使用约600nm(可见红光)至约1,000nm(远红外线)。输出850nm波长光能的激光二极管将代表经济发射器,尽管OS2最好包括过滤器以减小环境光的影响。
虽然在结构光实施例中OS1最好是固定的,但应当理解可通过机械扫描光能的单个发射线来限定扇形射束平面30以生成扇形射束30。如图2B所示,OS1实际上可包括发射扇形射束的光能发射器20-A以及控制扇形射束30基本上平行于表面40的反射镜20-B。对本发明来说,在结构光实施例中,由OS1 20发射的光能对人来说是可见的或不可见的。OS2 60最好包括摄象机系统,对由OS1 20发射的波长的光能起响应。对于“响应”,它的意思是OS2识别出由OS1发射的相同波长的能源,并且理想地,将不识别或响应实质上不同波长的能源。例如,OS2可包括过滤系统以便不检测除由OS1发射以外的波长的光能,例如滤色镜。
如果需要的话,通过在例如单元70的控制下,同时同步开和关OS1和OS2,可使OS2实质上仅对由OS1发射的光能起响应。OS1和OS2最好包括遮光器机构,如元件22所示,将以同步的方式功能性地打开和关闭。例如,通过想要的占空比,电子处理系统70可同步地接通OS1、OS2,或遮光器机构22持续时间周期t1,其中t1或许在约0.1ms至约35ms的范围内,然后断开Os1和OS2。如果需要的话,可在任何时间操作OS1,其中允许平面30仅在OS1 20前部的遮光器22打开时辐射。在各种遮光器结构中,同时开关的重复率最好在20Hz至大概300Hz的范围内以便促进适当的帧数据采集率。为守恒操作功率并降低计算开销,大概30Hz至100Hz的重复率表示可接受的比率。当然,也可使用用于确保OS2实质上仅响应由OS1发射的光能的其他设备和方法。为便于描述,将遮光器22描述成机械元件,但实际上遮光器的概念应当是包括以多种方式的任何一种接通和断开光源。
如果需要的话,可使用与本发明一起使用的光能源具有所谓的标记以便更好地从环境光能识别出这种能源。例如并且并不局限于,可以固定频率调制这种光源以便与本发明一起使用的摄像机或其他传感器单元能更容易识别这种能源同时由于缺少这种标记,能充分地抑制环境光能。简单地说,标记技术如选择用于光能的不同于环境光的波长、涉及光源和摄像机传感器的同步操作的技术、以及调制或者标记光源能源均能提高由本发明获得的信息的信号/噪间比。
注意,不要求工作面40可发射或不可发射关于由OS1发射的波长,因为扇形射束或者光能的其他发射不能到达表面本身。也注意最好虚拟输入设备是完全无源的。因为设备50是无源的,能将其比例化到小于实际大小的设备,如果需要的话。另外,无源虚拟输入设备的成本能为零,特别是如果“设备”只不过是一张含有实际输入设备的印刷图形图象的纸的话。
在图1A中,假定最初系统10的用户不是与虚拟输入设备极其接近。在结构光实施例中,尽管OS1可发射光能扇形射束平面30,OS2检测不到任何东西,因为没有对象与平面30交叉。现在假定用户的左或右手120L、120R的手指部分向下移动以便触摸在虚拟输入设备50上限定的工作面40的区域部分。另外,用户控制的铁笔120′部分110′可向下移动以触摸工作面40的相关部分。在本发明的情况中,当请求将键盘事件发送到在伴随设备或系统80或90,例如笔记本、PDA、移动电话、信息站设备、销售点等等上运行的应用程序时,由与本发明有关的软件来解释触摸。
在图1A中当用户手指向下移动并开始与光能平面30相交时,面对OS1的手指尖部分现在将反射光能130。OS2将检测到至少一些反射的光能130,因为反射能源的波长与由OS1反射的能源相同,而且OS2对这种波长的能源起作用。因此,平面准三维检测系统10检测由用户控制的对象(例如手指、铁笔等等)的交互作用反射的光能,交互作用发生在由扇形射束平面30定义的感兴趣的平面(plane ofinterest)处。在任何其他平面上可发生的交互作用被视为不相关且可被本发明忽略。
因此,直到诸如用户手指或可能铁笔部分的对象与由OS1 20发射的光能平面30相交为止,将没有反射光能130用来OS2 60检测。在这种情况下,系统10知道当前没有用户输入。然而,一旦穿过光能平面,OS2 60就能检测到穿过的对象(例如,手指尖、铁笔尖等等)的交互作用,以及可由与系统10有关的处理单元70确定穿过的位置(x,z)。在图1A中,如果用户左食指正触摸在定义为坐标(x7,z3)的虚拟输入设备50部分上,那么与本发明有关的软件能确定已经“按压”字母“t”。由于没有同时按“换档键”,因此按压的字母将被理解为小写“t”。
在所示的实施例中,系统10可生成表示用户将在实际键盘上输入的数据和/或命令的键击并输入到系统80或90中。这种对系统80或90的输入可用来在显示器150上显示信息140,当用户在虚拟输入设备50上输入信息时。如果需要的话,可实现放大的光标区160以提供另外的可视输入以帮助输入信息的用户。如果需要的话,处理单元70可使系统80和/或90发射可听的反馈以帮助用户,例如,与在虚拟输入设备50上按下的虚拟键一致的电键声170。应当理解如果系统80或90是乐器而不是计算机或PDA或移动电话的话,将发射音乐声170,并且虚拟输入设备50可另外具有与合成音乐发生器有关的琴键类似的结构。
图1B描述非结构有源光系统10,其中在第一光学系统OS1中的摄像机20′定义感光趣的平面30′,该平面30′实际上代替由图1A的实施例中的光发射器OS1定义的平面30。摄像机20′OS1最好与摄像机60 OS2类似,可与图1A的实施例中的摄像机60 OS2类似。例如,OS1 20′可具有传感器阵列,包含至少一条线并且最好是若干线的象素检测器元件。图1B的实施例是有源的,因为放置在OS1 20′和OS260中间的一个或多个光源190产生可由摄像机OS1 20′和摄像机OS260检测的波长的光能。为减小摄像机OS1和OS2检测时环境光的影响,最好通过例如单元70使最好每个摄像机以及每个光能发射器190与遮光器机构协同同步操作。因此,在遮光器22允许来自发射器190的光能辐射到虚拟输入设备50、50′、50″的时间期间,类似的遮光器22将允许摄像机OS1和OS2检测光能。由OS1和OS2检测用户-对象,例如120L与平面30′的交互作用。然后使用例如在此稍后所述的三角测量方法,来计算相交点的位置。
在图1B中,示出了用户-对象120L的接触点110附近的工作面40的平面中的连续冲击或不规则性。存在第二摄像机OS1 20′的好处在于可能通过单元70选择感光趣的平面30′以便正好位于工作面40的最不规则部分上。如果在图1A的实施例中在工作面40中存在不规则性,将有必要相对于工作面稍微重新定位激光面30。但在图1B中,简单地通过从具有OS1 20′的检测器阵列选择适当的象素线,则可电子地获得这种重新定位的效果。
注意图1B的结构本身适用于各处方法来提高信号/噪声比。例如,遮光器22能允许摄像机OC1和OS2在通过例如控制单元70断开发射器190的时间期间收集图象数据。然后由OS1和/或OS2采集的任何图象数据将表示由环境光引起的背景噪声。(同样,应当理解为最小化环境光的影响,发射器190以及摄像机OS1、OS2最好以从环境光去除的波长状态操作)。可将已经采集的数据称为背景噪声信号,摄像机OS1和OS2现在可正常操作并与发射器190同步。由与发射器190同步的摄像机OS1和OS2采集的图象数据将包括实际数据如用户-对象与平面30′的交互作用,加上由于环境光而导致的任何(期望的)结果。然后处理器70(或另一单元)可动态地将背景噪声信号从实际数据加上噪声信号中去除,以得出实际的数据信号,从而提高信号/噪声比。
图1C描述本发明的非结构无源实施例。图1C中的系统是无源的,因为存在的任何环境光源195提供在成象过程中使用的光能。与图1B的系统10类似,OS1是定义感兴趣的平面30′的摄像机20′以及OS2是摄像机60。通常,将平面30′定义成工作面40上的距离ΔY′,通常是几mm的距离。用户-对象与平面30′的交互作用由OS1和OS2使用来自环境光源195的光能检测。然后可使用三角测量方法来定位与平面30′的交互作用或交叉点,如本文中别处所述。
图2A描述几何结构,通过该几何结构,可使用三角测量来确定用户手指或对象120R以及平面30间的交点的位置(x,z)。图2A和图2B可用来描述图1A-1C所示的各种实施例的分析。
如在此所使用的,三角测量通过由投影光线如两个光学系统如OS1 20、OS2 60的R1、R2形成的三角形的几何分析,帮助确定感兴趣视场内表面的形状。基线B表示连接两个光学系统OS1、OS2的投影中心的已知长度的线。对感兴趣视场中可视面上的点(x,z),可用点的位置和OS1及OS2的位置来定义三角形。三角形的三个边是B、R1和R2。OS1和OS2可确定三角形到基准面的角距离,以及由投影光线形成的角度α1和α2,投影光线将表面点与两个光学系统的投影中心连接起来。角度α1和α2以及基线B完全确定三角形的形状。能使用简单的三角法来得出到表面点(x,z)的距离以及投影光线R1和/或R2的长度。
不需要以单个单元实现OS 120。例如,图2B描述结构化光实施例,其中第一光学系统分成两部分:一个部分OS1-A 20-A是与OS2和OS1-B 20-B相距距离B放置的光发射器,光反射设备诸如反射镜。由OS1-A生成的入射扇形射束由反射镜20-B偏转以形成平面30。在图2B的方向中,相对于水平面倾斜反射镜20-B约45°,以及从实质上垂直的平面偏转到实质上水平的平面。在图2B以及真正的无源光实施例中,OS2 60将是针对通常朝向感兴趣的视场的角度Φ的摄像机,即其中用户手指或铁笔将使用放置在扇形表面30下的虚拟输入设备。
根据本发明的三角测量最好使用具有如OS2 60的平面传感器的标准摄像机。OS1 20的特性区分两种相当宽的三角测量。在结构光三角测量中,OS1 20通常是其光束可是单线形状的激光器等等,移动光束以便将移动点投影在表面上。另外,激光束可是平面的并移动来投影平面曲线。如所提到的,另一种三角测量系统可称为无源三角测量,其中将摄像机用作OS1 20。结构光系统倾向于更复杂以便构成并消费更多的操作功率,因为需要投影光平面。无源系统很低廉,并消费较少的功率。然而,无源系统必须解决所谓的对应问题,例如,确定两个图象中的哪对点是真实世界中的相同点的投影。如将描述的,根据本发明,可使用无源非结构光三角测量实施例。
不管将系统10实现为其中OS1有源发射光以及OS2是摄像机的结构光系统,还是按其中OS1和OS2均是摄像机的无源系统来实现,都将把来自OS2和OS1的信息耦合到处理单元,例如70上,处理单元能确定正发生什么事件。在另一实施例中,当对象如120R和与OS120有关的投影面30交叉时,可检测交叉。在结构光实施例中,其中OS1发射光能,由从相交对象120R反射的光能表示交叉并由通常为摄像机的OS2检测。在无源光实施例中,由OS1、摄像机察看交叉同时由OS2、摄像机察看。在每个实施例中,检测与平面30的交叉,就象在(x,z)平面交叉下的表面40的区域被对象120R触摸过一样。系统10最好包括计算系统70,从OS1、OS2接收数据并使用几何结构来从结构光实施例中的反射图象坐标,或从无源系统中的摄像机图象坐标确定平面交叉位置(x,z)。同样地,从而可实现检测初始和连续接触以及穿透平面30(例如,触摸事件)以及确定平面上交叉点坐标位置的双重任务。
至此总之,当OS1识别出平面30与闯入对象如120R的交叉,检测并说明触摸事件。在两个摄像机的系统中,建立来自OS1的感知的图象与来自OS2的感知的图象间的对应关系。此后,将OS2摄像机坐标转换成触摸区(x轴,z轴)坐标以定位平面30中感兴趣的区域内事件的(x,z)坐标位置。最好,由处理单元70执行这些变换,处理单元执行算法来从对OS2可见的点的图象坐标计算平面30中交叉位置。另外,无源光系统必须将闯入对象与来自OS1和OS2的图象中的背景区分开来。在系统10是无源光系统的情况下,需要建立来自摄像机OS1和来自摄像机OS2的图象间的对应关系。在系统10是结构光系统的情况下,希望最小化来自环境光的干扰。
现在考虑计平面30上(x,z)交叉点或尖端位置。在透视投影中,通过称为单应的变换将世界上的平面及其图象关联。使该平面上的点(x,z)用列向量P=(X,Z,1)T表示,其中上标T表示对换。同样地,使相应图象点用P=(x,z,1)T表示。
然后,单应是线性变换P=Hp,其中H是3×3矩阵。
可用校准程序找出该单应矩阵。由于将传感器建立在表面上,相对于表面的传感器位置是恒定的,以及校准程序仅需要执行一次。对于校准,将已知行距的网格放在其上放置传感器的平面上。在图象中测量与网格顶点P1对应的图象点的坐标pi。可使用直接线性变换(DLT)算法来确定单应矩阵H。这种DLT变换在本领域是公知的,参见例如Richard Hartley以及Andrew Zisserman.,名为MultipleView Geometry in Computer Vision,Cambridge University Press,Cambridge,UK,2000。
只要H是已知的,那么与图象中的点p一致的表面点P可通过上述矩阵矢量乘法直接计算出来。最好这种计算由系统70执行。
现在将描述用于无源光实施例的图象对应关系。摄像机OS1 20和OS2 60察看空间中相同的平面。结果,来自OS1的行扫描摄像机图象以及来自OS2的摄像机图象间的映射本身将是单应的。这与上面描述过的关于尖端相交位置的计算,OS2摄像机图象以及平面30触摸表面间的映射类似。因此类似的程序可用来计算该映射。
注意由于行扫描摄像机OS1 20实质上察看或掠过折叠成单线的触摸表面,两个图象间的单应是退化。对每个OS2摄像机点,有一个OS1行扫描图象点,但对每个OS1行扫描图象点,有OS2摄像机点的全部线。由于这种退化,将修改上述DLT算法以得出点对线的对应关系。
通过定义,本发明的无源光实施例在环境光上没有控制,以及能要求将闯入的交叉对象或尖端与一般背景区分开来。简单地说,如何断定OS1图象或OS2中的具体图象象素表示对象z如120R上的点的图象,还是一般背景中的点,现在将描述可由系统70执行的算法。
最初,假定仅具有看得见的平面30的触摸表面部分的一个或多个背景图象I1,...,In。假定摄像机OS1和OS2能对颜色起响应,并使Rbi(x,z)、Gbi(x,z)、Bbi(x,z)为在象素位置(x,z)的背景图象亮度的红、绿以及蓝分量。使Sb(x,z)为所有图象上Rbi(x,z)、Gbi(x,z)、Bbi(x,z)的总和。例如,Sb(x,z)可以是具有平均值、中间值或可能标准化以降低图象亮度方面的变化的所有背景图象I1,...,In上象素位置(x,z)处Rbi(x,z)、Gbi(x,z)、Bbi(x,z)的统计数。
接着,收集用于新的图象序列J1,...,Jm上尖端象素的类似总和St。该第二总和是单个矢量,而不是关于Sb(x,z)的矢量图象。换句话说,St不依赖于象素位置(x,z)。可通过例如要求用户将手指尖或铁笔放在表面的敏感区中、并仅记录在其颜色非常不同于在(x,z)处背景总和Sb(x,z)的象素位置(x,z)处的值、并计算j,x,z的所有值上的统计来计算该新的总和。
然后,假定具有颜色分量c(x,z)=(R(x,z),G(x,z),B(x,z)的新图象),通过适当的判别规则,将在(x,z)的具体象素归因于尖端或背景。例如,可定义三个矢量间的距离d(c1,c2)(Euclidan距离是一个例子),以及基于下述示例规则分配象素:
背景  如果  d(c(x,z),Sb(x,z))<<d(c(x,z),st)
尖头  如果  d(c(x,z),Sb(x,z))>>d(c(x,z),st)
未知  其它
现在将描述用于降低环境光干扰,特别是用于结构光三角测量实施例的技术。在这种实施例中,OS2需要区分环境光和由线发生器产生的并由闯入对象再反射回来的光。
使用第一种方法,OS1在例如,在近红外区中的其中环境光具有较小的功率的光谱区域中发射能源。在摄像机OS2上的红外过滤器能确保由OS2传感器检测到的光主要从对象(例如,120R)发射到摄像机OS2的镜头中。
在第二种方法中,OS1在光谱的可见部分中操作,但比环境光要亮得多。尽管原则上这可通过任何颜色的光源来实现,但对室内应用,它可用来看见用于OS1(500nm至550nm)的蓝-绿光源,因为标准的荧光灯在该波段具有相对低的发射。最好,OS2将包含匹配的过滤器以确保充分衰减对其他波长的响应。
减小环境光影响的第三种方法将标准的可见激光源用作OS1,以及将彩色摄像机传感器用作OS2。该方法使用如上所述的相同的背景减算法。使用与上相同的术语学来定义下述组合。
C(x,z)=min{d(c(x,z),sb(x,z)),d(c(x,z),st)}
当c(x,z)等于代表的对象尖总和St(由于d(st,st)=0)以及对于背景图象Sb(x,z)(因为d(Sb(x,z),Sb(x,z)=0)时,该组合正好为零,以及对其他对象尖图象行距以及对背景的可见部分,该组合将接近于0。换句话说,对象尖和背景在图象C(x,z)中很难看见。通过比较,在来自激光发射器OS1的投影面30与对象尖120R相交的位置,项d(c(x,z))将是较大的非零值,反过来获得用于C(x,z)的相当大的非零值。该方法学实现期望的基本上只识别由激光(或其他发射器)OS1)照亮的对象尖象素的目的。可改变该方法以便利用不同颜色的光发射器,以便使用用于距离d的其他距离定义,以及以便使用不同总和Sb(x,z)和St
在图1A中,如果设备80是诸如PDA或移动电话的袖珍系统,就特别需要来降低需要来实现本发明的大小。如果如图1A-1C、2A、2B所示,将OS2相对于平面30或表面40倾斜某一角度θ,能产生较小的总体构成事实。但是当角度θ减小时,摄像机OS2从更窄的角度察看平面30。对用于平面30的敏感区的固定大小,即,由用户对象“触摸”以操纵下面的虚拟输入设备的表面矩形,当距离B和角度θ减小时,由视场对着的有效面积减小。该结果是减小有效的OS2分辨率,从而减小z深度测量的准确性,如图3A所示,其中L表示与OS2有关的摄像机镜头,其象素检测器的平面如用OS2标记的直线所示。
如图3A中提到的,将OS2移动到更靠近平面30导致更窄的视点以及更小和、更不准确感知的摄像机图象。这些不利的副作用可通过倾斜摄像机OS2中的象素检测器的平面、真正倾斜使其几乎平行于平面30来减小,如图3B所示。通过图3B的倾斜结构,注意实质上更多的图象扫描线与来自平面30上的敏感区的射线的锥形部分交叉,这相应地增加了深度分辨率。例如,将图3A中相对小的距离Dx与图3B中较大的距离Dx′进行比较,表示现在正在使用更多的图象扫描线。另外,当OS2摄像机传感器平面更平行于触摸面的平面或平面30时,导致较少的触摸面图象失真。这意味着触摸面(或平面30)上的平行线在OS2摄像机图象中仍然平行。优点是简化对仿射变换(移动和比例化)的单应H。另外,使得在感兴趣的视场内的整个敏感区上的图象分辨率更一致。
现在考虑图3C的结构。在平面30上感兴趣的触摸敏感区上的不同点处于与摄像机OS2的镜头L不同的距离是显而易见的。这意味着如果镜头L如图3A或图3B所示定位的话,则不能精确地集中于感兴趣的整个敏感区。虽然关闭摄像机光圈能增加视野的深度,合成图象将变得更模糊,并且将减小图象的信号/噪声比。
因此,可采用图3C的结构,其中相对于图3B重新定位透镜L。在该结构中,假定触摸表面30、摄像机OS2传感器、以及摄像机镜头L均满足所谓的scheimpflug条件,其中它们的各自的平面沿公共线、在图3C中无限远距离处的线交叉。另外,关于scheimpflug条件的详细情况可在The Optical Society of America、Handbook ofOptics,Michael Bass,Editor in Chief,McGraw-Hill,Inc.,1995中找到。在图3C中,当相关的光学系统满足该条件时,在触摸表面30上的所有点将焦点对准。因此,通过使用适当的倾斜传感器OS2,满足Scheimpflug条件的适当定位的镜头S、由表平面30上感兴趣的点的OS2所见的图象将焦点对准,并且显示出高分辨率以及较小失真。但满足Scheimpflug条件将导致损失图象亮度,因为当从平面30上的敏感区的中心看时,镜头对着的角度相对于图3B的结构被减小。因此,最好,可在某些应用中,通过将OS2摄像机镜头放在图3B和图3C的OS2摄像机镜头中间的方位中来实现焦点的锐度与图象亮度间的平衡。图3D描述一种这样的中间结构,其中相对于OS2的平面30,故意将镜头L稍微远离满足Scheimpflug的方向。
这种中间方位不满足Scheimpflug条件,但通过更小的角度并因此仍然显示出比镜头轴点直接对着平面3的敏感区的中心的结构更好的聚集。图3E描述另一种中间结构,其中精确地验证Scheimpflug条件,但倾斜摄像机传感器OS2使其远离水平方向。图3E的结构能实现精确的聚集但具有稍微低一些的图象分辨率并且比图3C的结构具有更大的失真。
图4是描述系统10中处理器单元70的操作部分的框图,处理器单元最好执行各种三角测量以及在此描述的其他计算以检测和识别与感兴趣的平面30的(x,z)截距。如图4的左边部分,分别将来自OS1 20和OS2 30的信息输入到象素图200-1、200-2中。在图4中,根据本发明,OS1和OS2输入指的是由平面距离传感器系统10中的光学系统1(20)以及光学系统2(60)生成的数字化图象帧流。在优选实施例中,光学系统每秒生成至少约30帧(fps)。需要较高的帧频,因为在30fps,用户手指或铁笔尖能移动几个象素同时在两帧之间在虚拟输入设备上“健入”。象素图模块200-1、200-2在与计算单元70有关的存储器中处理来自OS1和OS2的数字帧。合成器模块210确保两个光学系统在大约相同的时间产生数字化图象帧。如果需要的话,可实现双缓冲系统以允许在构成一帧的同时由其他模块(及时)处理在前帧。当手指尖或铁笔的轮廓出现在选定的帧行中时,触摸检测模块220检测触摸(例如,用户手指或铁笔与由OS1感测到的光平面的交叉点)。当检测到触摸时,尖端检测模块230将相应的手指尖的轮廓记录到适当的象素图200-1或200-2中。在图4中,在结构光实施例中,其中OS1是光束发生器,不产生象素图,以及触摸检测将使用来自OS2的输入而不是OS1的。
当报告不自触摸检测模块220的触摸时,触摸位置模块240使用来自尖端检测模块230的尖端象素坐标以找到触摸表面上触摸的(x,z)坐标。如所提到的,在结构光实施例中,触摸相当于穿透与光发射器OS1有关的平面,以及在无源光实施例中,相当于穿透与摄像机Os1的视图平面有关的平面。在本文的别处描述将象素坐标转换成X-Z触摸位置的数学方法。
键识别模块260使用触摸的X-Z位置并使用最好存在与计算单元70有关的存储器中的键盘布局表250映射位置以便键识别。键盘布局表250通常相对于零原点定义每个键的上/下/左和右坐标。同样,键识别模块260的功能是执行表250的搜索并确定哪个键包含触摸点的(x,z)坐标。当识别出触摸过的(虚拟)键时,变换模块270将键映射到预定的KEYCODE值。将该KEYCODE值输出并传送给正伴随设备或系统80上执行的应用程序(正在伴随设备上执行),应用程序正在等待接收键入事件的通知。正在执行的应用程序解释击键事件并赋予其含义。例如,文本输入应用程序使用该值来确定输入了什么符号。电子琴应用程序确定按下了什么音符并演奏那个音符等等。
另外,如图4所示,可直接将X-Z触摸坐标传送给应用程序280。在虚拟鼠标或虚拟跟踪球的初稿例中,应用程序280使用坐标数据来控制显示器上光标的位置,或在虚拟笔或虚拟铁笔的实施例中,用来控制数字标记源,对制图或手写输入应用程序,在显示器上显示其轨迹。
图5A是简化的系统10的图,其中虚拟设备50现在用5个区域控制,以及其中伴随设备80、90包括监视器。在该实施例中,所示的伴随设备80或90具有显示器150,显示器150可包括图标140,其中一个图标由光标310包围以及用户能使用虚拟设备50′移动,在此虚拟设备50′为虚拟跟踪球或鼠标。例如,在虚拟设备50′中,如果用户手120的(或铁笔)部分按压虚拟区300-1,将命令在伴随设备80工中显示的光标310向左移动。如果按压虚拟区300-2,光标应当向右移动,例如,选择一块面包的图标,以及如果按压虚拟区300-4,光标应当移向在设备80、90上的显示器的底部。如果用户按压第五区300-5,“翘拇指”区域,伴随设备80或90知道现在结束用户选择。在图5A中,如果用户现在按压区域300-5,选择“热狗”图标。如果设备80、90是在超级市场中的信息站,例如,选择“热狗”图标将使显示器显示在市场中何处可找到热狗,或正出售的各种商标的热狗的价格,或设备80、90可甚至分发热狗。如果设备80、90用在运输配置中,图标(或字)可是各种目的地,以及设备80或90可表示路线、时间表以及对目的地的费用,甚至可分发用于汽车、地铁、飞机、船等等的车票。例如,用户能按压表示行程起点和行程目的地点的输入设备50′的两个区,据此,系统10能使显示器显示适当的运输车辆、时间表、费用等等,以及如果需要的话,打印出来。将意识到由系统10生成的信息可简单的是由伴随设备执行的软件应用程序用来重新定位显示器上的光标或其他信息的原始(x,z)坐标。
在图5A中将理解到虚拟设备50′是无源的;其轮廓可是印刷或涂在下面的工作面上,或可能其轮廓可由系统10投影。虚拟设备50中的感兴趣的各种区可根据相对于x-z平面的坐标识别。考虑下面表1中的信息,其对应于图4中的键盘布局250中的信息。
表1
Figure A0181782600231
当用户手指(或铁笔)触摸虚拟输入设备50的区域时,触摸位置模块240(见图4)确定触摸点的(x,z)坐标。在图5中,触摸点110位于“B”区300-4中。在如表1所示的例子中,键识别模块260使用键盘布局250信息来确定在相关(x,z)平面中,何处产生触摸点坐标。通过例子,假定触摸坐标(x,z)为(1.5,0.5)。最好存储在与单元70有关的存储器(见图1A)中并由单元70执行的搜索例程确定1<x<2以及-1<z<1。搜索表1中的信息,键识别模块将确定触摸点110是否落在记录中。在该例子中,伴随设备80和90从通知已经触摸过区域B的系统10接收数据。系统10中的处理器单元能使伴随设备接收可能需要来执行与事件,例如,在显示器上向下移动光标有关的任何的其他信息。
图5B描述与图1A所示的类似的系统10的实施例。在图5B中,虚拟输入设备50是计算机键盘以及伴随设备80、90是例如移动收发器、移动电话。将理解到系统10实际上能在设备80、90内实现。同样地,OS1可从设备80、90的下面部分发射扇形射束30,以及OS2可放置在同样的设备的上面部分。如果需要的话,可从设备80、90任何投影虚拟输入设备50。另外,虚拟输入设备50可印刷在可折叠的衬底例如塑料、纸等等,其能保留在设备80、90中,然后去除或展开或铺开并放在设备80、90的前端的平的工作面上。在设备80、90的前部的虚拟输入设备50的位置可是OS1能发射包围虚拟输入设备的扇形射束30以及OS2能检测对象,例如用户手指或光标等等与覆盖在虚拟输入设备50中的任何感兴趣区的扇形射束中的位置的交点110。
在图5B中,OS2将不检测反射的光能直到对象120R与扇形射束130相交为止,因此,将反射(130)由OS1发射的一些光能并将由OS2检测。相对于图1A中所示的系统的(x,z)坐标,交叉点110约为位置(13,5)。参考图4,将理解到键盘布局表250将具有至少一条用于虚拟输入设备50上定义的每个虚拟键,如“1”、“2”,...,“Q”、“W”...“SHIFT”的记录。最好通过单元70执行与参考图5A描述的类似的记录搜索过程并能识别在触摸点110下的相关虚拟键。在图5B中,相关键是“1”,在显示器150上显示的字母“1”作为正由用户的手120R(或通过铁笔)部分输入到移动电话0、90中的e-mail消息正文140部分。与使用移动电话键盘费力地输入消息相比,使用虚拟键盘50将提高快速将消息盲打到移动电话80、90中的能力。
在图5C中,示出了系统10的实施例,其中工作间40是垂直墙,可能在商店或商场中,以及虚拟输入设备也是垂直放置。在该实施例中,所示的虚拟输入设备50具有几个图标和/或字320,当由用户的手120,例如在触摸点110上触摸时,将使适当的文本或/或图形图象140出现在伴随设备80、90中的显示器150上。在所示的例子中,图标320可表示商店中的位置或部门,以及响应图标区的用户触摸,显示器150将交互式地提供另外的信息。在商场中,各种图标可表示整个商店或部分或商店内的区域等等。最好如参考图3A和3B的实施例所述,执行诸如110的触摸点的检测和定位。最好,系统10内的处理器单元70执行存储在或下载到处理器单元70中的软件以确定已经触摸过虚拟输入设备50的什么图标或文本部分,以及应当将什么命令和/或数据传送到主机系统80、90中。
在图5C的实施例中,如果虚拟输入设备50适用于频繁改变,例如,可能是饭店中的菜单,其中显示器150可提供详细的信息如卡路里、调味器含量等等,设备50可是从墙40内向后凸出。理解到如果各个图标320的布局和位置改变,存储在系统10的单元70内的映射信息也将改变。快速改变虚拟输入设备的属性以及内容而不需要锁定为在固定的位置中具有固定大小的图标的能力非常有用。如果需要的话,在设备50上可真正固定一些图标的大小和位置,它们的通过用户触摸可用来选择重新映射在输入设备50上显示的东西以及通过单元70内的软件来映射。应当理解除简单地显示可包括广告的信息外,伴随设备80、90可用来向用户发行宣传性赠券330。
现在转到图6,在某种程度上,根据系统10是结构光系统还是无源光系统,由系统确定登记触摸事件以及定位其位置的方式。如前面所提到的,在结构光系统中,OS1可是线发生激光系统,以及在无源光系统中,OS1可是数字摄像机。每个系统定义平面30,当与120R的对象相交时,平面30将定义以后将确定其(x,z)坐标的触摸事件。只要确定虚拟触摸的(x,z)坐标,本发明能确定使用该系统,该个人打算什么输入或命令。这种输入或命令可传递到伴随设备,该设备实际上也可嵌入本发明。
如果系统10是无源光系统,当手指尖的轮廓出现在选定的OS1,数字摄像机的帧行中时,登记触摸事件。当在OS1中检测到触摸时,通过OS2中相应的对象尖端(例如,120R)的象素位置确定触摸的(x,z)平面30位置。如图6所示,从摄像机OS1到触摸点的范围或距离是来自象素帧的“近”端的象素的数量的仿射函数。
如所提到的,在结构光实施例中,OS1将通常是激光线发生器,以及OS2将为主要对由OS1发射的光能的波长敏感的摄像机。如所提到的,这可通过将窄波段光过滤器安装在OS2上以便仅与由OS1发射的波长一致的波长能通过来实现。另外,可将OS2理解成包括与OS1的脉冲输出同步打开和关闭的遮光器,例如,OS2能仅在OS1发射光能时察看光能。在结构光系统的实施例中,OS2最好将仅检测与平面30相关的对象并因此反射由OS1发射的能源。
在上述情况下,由系统10执行触觉检测和距离计算。因此,当对象的轮廓如手指尖120R出现在OS2的察看范围内时,记录触摸事件。如在上述例子中,可按来自象素帧的“近”端的象素的数量的仿射函数计算距离。
现在将给出由本发明执行的图4中的分析步骤的另一个例子。假定虚拟输入设备5O是键盘,如图1A中所述,以及希望系统10输出由至少与用户在虚拟键盘50上“触摸”过的虚拟键对应的扫描码组成的信息。在图1A和图2A中,假定上面部分(例如,具有虚拟键“ESC”、“F1”、“F2”等等的行)与光学系统OS1 20相距约20cm。假定摄像机OS2 60安装在PDA或高约10cm的其他设备80上,以及以相对于平面30的已知角α1=120°来放置。同时假定摄像机OS2 60具有焦距为4mm的镜头,以及按480行和640列排列的摄像机传感器。
按照惯例,将虚拟键盘50的左上角的Z坐标设置为x=0以及z=0,例如(0,0)。将图象中的点映射到虚拟设备上的点的单应性取决于摄像机OS2 60的倾斜。用于上述结构的示例性单应性矩阵如下:
H = 0.133 - 0.061 32.9 - 0.194 0.0 15.1 0.0 0.0 1.0
上述矩阵最好在校准过程期间仅需要确定一次,如本文别外所述。
现在参考图1A和图7,假定用户120L触摸与字母“T”一致的虚拟键盘50的区域,字母“T”可印刷在衬底上以引导用户手指或可是可能由系统10投影的虚拟输入设备的图象部分。使用如上定义的坐标系统,键“T”可假定为位于水平坐标Xmin=10.5以及Xmax=12.4cm之间以及位于垂直坐标Zmin=1.9和Zmax=3.8cm之间,如图7所示。
现在参考图6,在用户手指120L(或铁笔)与传感器OS1 20的平面相交前,后者检测到没有光,以及察看由黑色象素组成的图象,如图底部处的晕影(vignette)340所示。然而,只要用户-对象与光平面30相交,相交事件或界面变为对OS1 20来说可视。OS1 20现在产生与在图6的底部晕影350中所述的类似的图象。当用户对象(如手指120L)的向下移动尖端110到达表面40,手指变得更可视。现在可通过例如单元70使用边缘检测来确定手指轮廓。这种确定在图6的底部描述为“触摸”事件晕影360。然后图4中的触摸检测模块220确定用户对象已经触摸过表面40,并将该发生的事件通知尖端检测模块230。
如图1中所看到的,在虚拟键盘50的第二行中找到虚拟“T”键,因此相当接近于传感器0S1 20。在图6中,该位置与位置110′中的手指尖一致。如图6中进一步所示,在光学系统O82 60的传感器上的手指尖位置110′的底部投影相对接近于图象的顶部。因此产生的手指尖图象的边缘与在图6的顶部的晕影370中所示的类似。在晕影370中,所示的两个灰色方形表示手指尖的底部边缘象素。
使用户代替击非常接近于虚拟键盘50的底部的空格键或一些其他键,即,更远离传感器OS1 20,由图6中的手指尖位置110所述的位置将出现。将虚拟键盘上相对远的位置映射到更接近于图象的底部的象素,以及将出现与\在图6的顶部的晕影380中勾画出的类似的边缘图象。中间虚拟键接触情况将产生与图6的顶部的晕影390所述的非常类似的边缘图象。
在上述例子中,其中按虚拟键“T”,图4中的尖端检测模块230运行边缘检测算法,从而找出表示将在图象行65和列492处接触的概括区域的“模糊点”的底部中心。单应的图象坐标矢量p,假定由以下形成:
P = 65 492 1
然后将单应图象坐标矢量p乘以单应矩阵H以得出在虚拟键盘的基准帧中用户手指尖的坐标P。
P = Hp = 0.133 × 65 - 0.061 × 492 + 32.9 × 1 - 0.194 × 65 + 0.0 × 492 + 15.1 × 1 0.0 × 65 + 0.0 × 492 + 1.0 × 1 ≅ 11.53 2.49 1.00
因此确定用户-对象或手指120L已经在具有坐标x=11.53以及z=2.49cm的位置点触摸过虚拟键盘50。图4中的键盘识别模块260在键盘布局中搜索a键以便xmin≤11.53<xmax以及ymin≤2.49<ymax
虚拟“T”键满足这些条件,因为10.5<11.53<12.4并且1.9<2.49<3.8。参考图4,因此虚拟识别模块60确定用户对象正触摸虚拟键盘50上的虚拟键“T”,并通知变换模块270发出了该事件。
该事件不必是击键。例如,用户对象或手指可以前接触过“T”键并在此后保持该键接触。在这种情况下,不应当将击键事件传送给在伴随设备80或90上运行的应用程序280。
键变换模块270最好存储每个键固有的释放状态(up-state)或按下状态(down-state)。该模块确定在每帧处任何键是否已经改变过状态。在上述例子中,如果发现键“T”处于当前帧中的按下状态中且处于在前帧中的释放状态中,变换模块270将KEYCODE消息发送给应用280。KEYCODE码将包括“KEY DOWN”事件标识符以及标识“T”键的“KEY ID”标记,从而通知应用程序280“T”键正好已经由用户对象“按压”过。如果发现“T”键在在前帧期间已经处于按下状态中,KEYCODE将包括“KEY HELD”事件标识符以及与“T”键有关的“KEY ID”。将在其中键处于按下状态的每个帧(除第一帧外)处的“KEY HELD”事件将应用程序280从必须保持有关键的任何状态解脱出来。只要发现“T”键在当前帧中处理释放状态以及在在前帧中处于按下状态,变换模块270发送KEYCODE以及“KEY UP”事件标识符以及识别“T”键的“KEY ID”标记,通知应用程序280“T”键刚好由用户对象“释放”。
从上文,将意识到满足帧图象仅由用户对象的尖端例如手指尖组成。本发明的各个实施例小于全部三维图象信息,三维图象信息是从虚拟输入或虚拟传送设备上稍微定义的相对窄的容积内采样的。能相对便宜地制作实现这些实施例的系统并由自带的电池源操作。实际上,系统能构造在通用设备如PDAs、移动电话等等中以快速由用户输入或传送信息。如所提到的,在有源光实施例中,来自环境光的不希望的效果可通过选择波长、通过使摄像机和光源同步、通过采集并减去表示背景噪声的图象的信号处理技术来降低。
在不脱离由下述权利要求书定义的本发明的主题和精神的情况下,可对公开的实施例做出修改和变更。

Claims (27)

1、一种从用户-对象与虚拟传送设备的交互获得信息的方法,该方法包括下述步骤:
(a)定义基本上平行于且在所述虚拟传送设备的假定位置上与之隔开的平面;
(b)当用户-对象透过所述平面与所述虚拟传送设备交互作用时进行检测;以及
(c)确定在所述平面上所述用户-对象部分的相对位置。
2、如权利要求1所述的方法,还包括:
(d)将和相对于所述虚拟传送设备的所述用户-对象穿透的位置相当的信息传送给伴随设备;
其中用户-对象与所述虚拟传送设备交互作用影响所述伴随设备的操作。
3、如权利要求1所述的方法,其中步骤(a)包括生成光能的平面,以及其中步骤(b)包括当所述用户-对象透过所述平面时,检测所述光能的反射部分。
4、如权利要求1所述的方法,其中步骤(a)包括提供定义所述平面的摄像机,以及步骤(b)包括观察所述用户-对象与所述平面的交互作用。
5、如权利要求1所述的方法,其中步骤(b)和步骤(c)的至少一个步骤使用三角测量分析来执行。
6、如权利要求2所述的方法,其中所述伴随设备包括(i)PDA、(ii)、便携式通信设备、(iii)电子设备、(iv)电子游戏设备以及(v)乐器中的至少一种,以及所述虚拟传送设备是(I)虚拟键盘、(II)虚拟鼠标、(III)虚拟跟踪球、(IV)虚拟笔、(V)虚拟轨迹板以及(VI)用户界面选择器的至少一种。
7、如权利要求1所述的方法,其中将所述虚拟传送设备映射到从(i)桌面、(ii)台面、(iii)墙、(iv)销售点应用、(v)服务点应用、(vi)信息站、(vii)交通工具中的表面、(viii)投射显示器、(ix)物理显示器、(x)CRT以及(xi)LCD中选择的至少一个的工作面上。
8、如权利要求1所述的方法,其中步骤(a)和步骤(b)的至少一个包括提供具有镜头和成象平面的摄像机,以及还包括通过将所述镜头和所述成象平面的至少一个倾斜,提高所述摄像机的分辨率和视场深度中的至少一个。
9、如权利要求1所述的方法,其中:
步骤(a)包括使用光源定义所述平面;以及
步骤(b)包括提供摄像机以便检测透过所述平面。
10、如权利要求9所述的方法,还包括:
使所述光源和所述摄像机的操作同步;
其中降低环境光对步骤(b)和步骤(c)的至少一个步骤获得的信息的准确性的影响。
11、如权利要求9所述的方法,其中所述光源发射含有用来抑制环境光的标记的光能。
12、如权利要求1所述的方法,其中:
步骤(a)包括由第一摄像机定义的所述平面;
步骤(b)包括提供第二摄像机以检测透过所述平面;以及还包括:
将光能源通常引向所述虚拟传送设备;以及
使所述光能源与所述第一摄像机及所述第二摄像机的至少一个的操作同步;
其中降低环境光对步骤(b)和步骤(c)的至少一个获得的信息的准确性的影响。
13、如权利要求1所述的方法,其中:
步骤(b)包括当所述用户-对象远离所述平面时,通过检测,采集由环境光产生的信息;以及
步骤(b)和步骤(c)中的至少一个包括从当所述用户-对象与所述传送设备交互作用时采集的信息中扣除所述信息;
其中降低环境光的影响。
14、一种允许用户操纵的用户对象与虚拟传送设备一起使用以便将信息传送给伴随设备的系统,该系统包括:
中央处理单元,包括存储至少一个软件例程的存储器;
第一光学系统,定义基本上平行于且在所述虚拟传送设备的假定位置上与之隔开的平面;
第二光学系统,具有包含至少所述平面部分的相关视场,以及对用户-对象透过所述平面进行响应,从而与所述虚拟传送设备交互作用;
用于确定所述用户-对象部分在所述平面上的相对位置的装置;
其中所述系统将信息传送给所述伴随设备,使用户-对象和所述虚拟传送设备能影响所述伴随设备的操作。
15、如权利要求14所述的系统,其中用于确定的所述装置使用三角测量分析确定所述相对位置。
16、如权利要求14所述的系统,其中用于确定的所述装置包括执行所述例程来确定所述相对位置的所述处理器单元。
17、如权利要求14所述的系统,其中:
所述第一光学系统包括用于产生光能的平面的装置;以及
所述第二光学系统包括当所述用户-对象透过所述平面时,检测所述光能的反射部分的摄像机传感器。
18、如权利要求14所述的系统,其中:
所述第一光学系统包括(i)用以产生所述平面的激光器以及(ii)用以产生所述平面的LED中的至少一个;以及
所述第二光学系统包括当所述用户-对象透过所述平面时,检测所述光能的反射部分的摄像机传感器。
19、如权利要求14所述的系统,还包括用于增强所述第二光学系统对所述用户-对象透过的响应同时降低对环境光的响应的装置。
20、如权利要求19所述的系统,其中用于增强的所述装置包括(a)提供与生成所述平面有关的标记、(b)对于所述第一光学系统定义的所述平面内的能量以及所述第二光学系统的响应性选择同一波长;以及(c)使所述第一光学系统的操作和所述第二光学系统的操作同步。
21、如权利要求14所述的系统,其中所述第一光学系统包括定义所述平面的第一摄像机传感器。
22、如权利要求14所述的系统,其中:
所述第一光学系统包括定义所述平面的第一摄像机传感器;
所述第二光学系统包括第二摄像机以便检测所述透过;
以及还包括:
通常引向所述虚拟传送设备的光能源;以及
用于使同样的第一光学系统、所述第二光学系统以及所述光能源的至少两个操作同步的装置;
其中降低环境光对所述系统获得的信息的准确性的影响。
23、如权利要求14所述的系统,其中:
所述第一光学系统包括期望波长的光能发生器;以及
所述第二光学系统基本上仅对所述期望波长的光能敏感。
24、如权利要求14所述的系统,其中所述伴随设备包括(i)PDA、(ii)、便携式通信设备、(iii)电子设备、(iv)电子游戏设备以及(v)乐器中的至少一种,以及所述虚拟传送设备是(I)虚拟键盘、(II)虚拟鼠标、(III)虚拟跟踪球、(IV)虚拟笔、(V)虚拟轨迹板以及(VI)用户界面选择器的至少一种。
25、如权利要求14所述的系统,其中将所述虚拟传送设备映射到从(i)桌面、(ii)台面、(iii)墙、(iv)销售点应用、(v)服务点应用、(vi)信息站、(vii)交通工具中的表面、(viii)投射显示器、(ix)物理显示器、(x)CRT以及(xi)LCD中选择的至少一个的工作面上。
26、如权利要求14所述的系统,其中所述第一操作系统和述第二操作系统的至少一个是具有镜头和成象平面的摄像机传感器,
其中所述镜头和所述成像平面中的至少一个倾斜,提高分辨率和视场深度中的至少一个。
27、如权利要求14所述的系统,还包括用于增强所述用户-对象与背景对象的区别的装置。
CN 01817826 2000-09-07 2001-09-07 检测和定位用户-对象与虚拟传送设备的交互作用的准三维方法和装置 Pending CN1701351A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US23118400P 2000-09-07 2000-09-07
US60/231,184 2000-09-07
US60/272,120 2001-02-27
US60/287,115 2001-04-27

Publications (1)

Publication Number Publication Date
CN1701351A true CN1701351A (zh) 2005-11-23

Family

ID=35476746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 01817826 Pending CN1701351A (zh) 2000-09-07 2001-09-07 检测和定位用户-对象与虚拟传送设备的交互作用的准三维方法和装置

Country Status (1)

Country Link
CN (1) CN1701351A (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901106A (zh) * 2009-05-26 2010-12-01 美国智能科技有限公司 用于数据输入的方法及装置
CN101149653B (zh) * 2006-09-22 2011-01-26 时代光电科技股份有限公司 判读影像位置的装置
CN102089738A (zh) * 2008-06-11 2011-06-08 诺基亚公司 用于用户界面控制的相机姿态
CN102323863A (zh) * 2011-04-29 2012-01-18 范文斌 一种基于平面光源定位的装置及方法
CN102402277A (zh) * 2010-09-16 2012-04-04 联想(北京)有限公司 电子终端及信息输入处理方法
CN103019391A (zh) * 2011-09-22 2013-04-03 纬创资通股份有限公司 利用所撷取键盘影像作为指令输入依据的输入装置及方法
CN103135786A (zh) * 2008-04-18 2013-06-05 上海触乐信息科技有限公司 用于向电子设备输入文本的方法
CN103279225A (zh) * 2013-05-30 2013-09-04 清华大学 投影式人机交互系统及触控识别方法
CN103513499A (zh) * 2012-06-29 2014-01-15 建兴电子科技股份有限公司 影像投影装置及其侦测方法
CN103744607A (zh) * 2014-01-20 2014-04-23 联想(北京)有限公司 一种信息处理方法及电子设备
CN103809354A (zh) * 2012-11-13 2014-05-21 联想(北京)有限公司 一种电子设备
CN104049811A (zh) * 2013-03-15 2014-09-17 德克萨斯仪器股份有限公司 使用结构化光图像的交互检测
CN106462298A (zh) * 2014-04-28 2017-02-22 罗伯特·博世有限公司 模块和用于运行模块的方法
CN106462297A (zh) * 2014-04-28 2017-02-22 罗伯特·博世有限公司 电设备以及用于运行电设备的方法
CN108509138A (zh) * 2017-02-27 2018-09-07 华为技术有限公司 一种任务栏按钮显示的方法及其终端
CN110518497A (zh) * 2019-09-30 2019-11-29 哈尔滨工程大学 一种用于船舶的电缆自动敷设优化方法

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101149653B (zh) * 2006-09-22 2011-01-26 时代光电科技股份有限公司 判读影像位置的装置
CN103135786B (zh) * 2008-04-18 2016-12-28 上海触乐信息科技有限公司 用于向电子设备输入文本的方法
CN103135786A (zh) * 2008-04-18 2013-06-05 上海触乐信息科技有限公司 用于向电子设备输入文本的方法
CN102089738A (zh) * 2008-06-11 2011-06-08 诺基亚公司 用于用户界面控制的相机姿态
CN102089738B (zh) * 2008-06-11 2013-05-08 诺基亚公司 用于用户界面控制的相机姿态
CN104898879A (zh) * 2009-05-26 2015-09-09 美国智能科技有限公司 用于数据输入的方法及装置
CN104898879B (zh) * 2009-05-26 2019-07-23 杭州智棱科技有限公司 用于数据输入的方法及装置
CN101901106A (zh) * 2009-05-26 2010-12-01 美国智能科技有限公司 用于数据输入的方法及装置
CN102402277A (zh) * 2010-09-16 2012-04-04 联想(北京)有限公司 电子终端及信息输入处理方法
CN102402277B (zh) * 2010-09-16 2014-11-05 联想(北京)有限公司 电子终端及信息输入处理方法
CN102323863A (zh) * 2011-04-29 2012-01-18 范文斌 一种基于平面光源定位的装置及方法
CN103019391A (zh) * 2011-09-22 2013-04-03 纬创资通股份有限公司 利用所撷取键盘影像作为指令输入依据的输入装置及方法
CN103513499A (zh) * 2012-06-29 2014-01-15 建兴电子科技股份有限公司 影像投影装置及其侦测方法
CN103809354A (zh) * 2012-11-13 2014-05-21 联想(北京)有限公司 一种电子设备
CN104049811A (zh) * 2013-03-15 2014-09-17 德克萨斯仪器股份有限公司 使用结构化光图像的交互检测
CN104049811B (zh) * 2013-03-15 2019-05-28 德克萨斯仪器股份有限公司 使用结构化光图像的交互检测
CN103279225B (zh) * 2013-05-30 2016-02-24 清华大学 投影式人机交互系统及触控识别方法
CN103279225A (zh) * 2013-05-30 2013-09-04 清华大学 投影式人机交互系统及触控识别方法
CN103744607A (zh) * 2014-01-20 2014-04-23 联想(北京)有限公司 一种信息处理方法及电子设备
CN103744607B (zh) * 2014-01-20 2017-08-29 联想(北京)有限公司 一种信息处理方法及电子设备
CN106462298A (zh) * 2014-04-28 2017-02-22 罗伯特·博世有限公司 模块和用于运行模块的方法
CN106462297A (zh) * 2014-04-28 2017-02-22 罗伯特·博世有限公司 电设备以及用于运行电设备的方法
CN108509138A (zh) * 2017-02-27 2018-09-07 华为技术有限公司 一种任务栏按钮显示的方法及其终端
CN108509138B (zh) * 2017-02-27 2020-08-07 华为技术有限公司 一种任务栏按钮显示的方法及其终端
CN110518497A (zh) * 2019-09-30 2019-11-29 哈尔滨工程大学 一种用于船舶的电缆自动敷设优化方法

Similar Documents

Publication Publication Date Title
US6710770B2 (en) Quasi-three-dimensional method and apparatus to detect and localize interaction of user-object and virtual transfer device
EP1336172B1 (en) Quasi-three-dimensional method and apparatus to detect and localize interaction of user-object and virtual transfer device
US6437314B1 (en) Coordinate input pen, and electronic board, coordinate input system and electronic board system using the coordinate input pen
US8035625B2 (en) Touch screen
CN1701351A (zh) 检测和定位用户-对象与虚拟传送设备的交互作用的准三维方法和装置
US8937596B2 (en) System and method for a virtual keyboard
JP5950130B2 (ja) カメラ式マルチタッチ相互作用装置、システム及び方法
EP2898399B1 (en) Display integrated camera array
CA2620149A1 (en) Input method for surface of interactive display
US8890842B2 (en) Eraser for use with optical interactive surface
TWI511006B (zh) 光學影像式觸控系統與觸控影像處理方法
US11556211B2 (en) Displays and information input devices
JP2002149331A (ja) 座標板、座標入力装置、座標入出力装置
US10281997B2 (en) Identification of an object on a touch-sensitive surface
CN111813232A (zh) Vr键盘和vr办公装置
WO2018214691A1 (en) Optical touch sensing for displays and other applications
JP4560224B2 (ja) 情報入力装置、情報入出力システム、プログラム及び記憶媒体
JP4615178B2 (ja) 情報入出力システム、プログラムおよび記憶媒体
CN111782059A (zh) Vr键盘和vr办公装置
JP4603183B2 (ja) 情報入出力システム、表示制御方法、記憶媒体およびプログラム
CN212391777U (zh) Vr键盘和vr办公装置
JP6476626B2 (ja) 指示体判定装置、座標入力装置、指示体判定方法、座標入力方法、及びプログラム
JP2001290604A (ja) 座標入力/検出装置、電子黒板システム、座標位置検出方法及び記憶媒体
JP2001243015A (ja) 情報入力/表示システム
Fujieda et al. Detection of finger height for a multi-touch mouse

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20081226

Address after: Building 8, building 209, West Ping'an Street, Mudanjiang, Heilongjiang, China: 157000

Applicant after: Heilongjiang golden leap Group Co.,Ltd.

Address before: American California

Applicant before: Canesta, Inc.

ASS Succession or assignment of patent right

Owner name: HEILONGJIANG JINYUE GROUP CO.,LTD.

Free format text: FORMER OWNER: KANESTA CO.,LTD.

Effective date: 20081226

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20051123

CI01 Publication of corrected invention patent application

Correction item: Rejection of patent application

Correct: Dismiss

False: Reject

Number: 32

Volume: 26

ERR Gazette correction

Free format text: CORRECT: PATENT APPLICATION REJECTION OF AFTER PUBLICATION; FROM: REJECTION TO: REVOCATION REJECTED

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20051123