CN1152346C - 图像检测操作者输入装置 - Google Patents

图像检测操作者输入装置 Download PDF

Info

Publication number
CN1152346C
CN1152346C CNB998031674A CN99803167A CN1152346C CN 1152346 C CN1152346 C CN 1152346C CN B998031674 A CNB998031674 A CN B998031674A CN 99803167 A CN99803167 A CN 99803167A CN 1152346 C CN1152346 C CN 1152346C
Authority
CN
China
Prior art keywords
pattern
information
image
computer
mouse
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.)
Expired - Fee Related
Application number
CNB998031674A
Other languages
English (en)
Other versions
CN1291316A (zh
Inventor
马诺利托・E・阿丹
马诺利托·E·阿丹
M・利普斯科姆
特里·M·利普斯科姆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1291316A publication Critical patent/CN1291316A/zh
Application granted granted Critical
Publication of CN1152346C publication Critical patent/CN1152346C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • G06F3/0317Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • G06F3/0383Signal control means within the pointing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/039Accessories therefor, e.g. mouse pads
    • G06F3/0395Mouse pads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K11/00Methods or arrangements for graph-reading or for converting the pattern of mechanical parameters, e.g. force or presence, into electrical signal
    • G06K11/06Devices for converting the position of a manually-operated writing or tracing member into an electrical signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Position Input By Displaying (AREA)
  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Image Input (AREA)

Abstract

一种计算机输入装置(42)检测在表面(116)上的图像。计算机输入装置(42)产生代表当装置(42)从第一个预定图形切换到读另一个预定图形时的变化事件。本发明也可以是对于使用输入装置(42)的方法或在其上存有预定图形的可印刷媒体。

Description

图像检测操作者输入装置
技术领域
本发明涉及电脑系统的输入装置。更具体地说,本发明涉及基于输入装置的移动向计算机系统提供位置信息的输入装置。
背景技术
传统的计算机输入装置,例如鼠标,包括一个壳体,在壳体中安装有一个球状物。该球状物既可以按传统方式配置,其中在正常工作位置,该球状物接合一工作表面,并且根据用户的使鼠标移过该工作表面的移动而旋转。该球状物也可以设置为一个轨道球,它是通过来自用户的数字操作旋转的。在任一情况下,位置编码器被用于检测在鼠标中的球状物的旋转,并且对这台电脑提供表示旋转的位置信息。在许多情况中,位置信息被用于控制在电脑的显示屏幕上的可视图像的移动(例如一只鼠标指针)。
而且,在一个已有装置中,鼠标被配置成具有在上面描述的轨道球结构。轨道球是预先印制有一个均匀的预定图像的。一电荷耦合装置被用于检测在轨道球上的图像和检测该图像的移动。预先定义的图像的移动被用于向计算机提供位置信息。
然而,使用电荷耦合器件的已有技术的电脑鼠标具有许多明显的缺点。首先,电荷耦合器件的反应时间是相当慢的。另外,处理来自电荷耦合器件的图像信号计算较集中并且需要比较大且昂贵的处理器。而且,电荷耦合器件对状态是非常敏感的。换句话说,如果周围环境光的情况是可变的,电荷耦合器件不能很好的工作。另外,如果一外来的光源,例如一个较为明亮的光指向图像产生表面,那么电荷耦合器件可以轻易地变成饱和的,并且它们的性能快速降低。
此外,另一种现有的商业上可用的电脑鼠标来自CA的鼠标系统,它包括一个具有LED的鼠标,LED与在其上具有预定均匀图案的一鼠标衬垫结合使用。图案是由蓝线和红线的均匀网格形成的。来自LED的光发射被鼠标衬垫反射到提供模拟输出信号的一个检测器上。该信号是具有与不同的色彩的网格线相应的峰值的波形状。根据这个波形,线条被计数和内插以获得位置信息。这样的一个鼠标系统需要一个在那上面具有实现一个特殊的均匀图案的一个鼠标衬垫。
另外,典型的鼠标指向装置是利用固定标度和分辨率工作的。固定标度指的是鼠标必须始终在一件工作表面上移动一个给定的距离,以便在电脑屏幕上将光标图像移动一个给定数的像素。例如,为了在具有200每英寸点数(dpi)的分辨率的电脑屏幕上将光标移动200象素,鼠标必须在工作表面上移动一个固定距离,例如两英寸。每次鼠标移动两英寸,无论它移动过什么表面,移动将始终对应于光标图像的移动到200象素。
固定分辨率是指计算机屏幕的分辨率,就此而言鼠标的最小可发觉的不连续的移动将只是按照单个象素改变在电脑屏幕上的光标位置。例如,一些传统的鼠标通常具有在200-400dpi范围内的分辨率。这是指在鼠标中可由位置编码机构发觉的鼠标的最小不连续的移动,对于具有200-400dpi范围内的分辨率的屏幕来说,在显示屏幕上将只是单个象素的改变光标位置。然而,如果计算机屏幕具有更高的分辨率,例如1200点/每寸,鼠标的最小可发觉的不连续的移动可能引起光标图像在显示屏幕上移动4-6个象素。当前某些鼠标具有非常精确的位置编码机构,能实现1200点/每寸的分辨率。
如上所述,传统的鼠标指向装置的标度和分辨率是固定的。为了改变标度或分辨率,用户通常需要装载不同的鼠标驱动器,改变鼠标的工作情况,以改变分辨率或改变标度。做为选择,用户也可以使用一个分开的控制面板小应用程序,以触发软件设备驱动程序,从而改变所述标度和分辨率。利用一个控制小应用程序以改变标度或分辨率可以是相当麻烦的。
在一些应用中,在屏幕上将被选择的条目是相当少的。因此,当使用高分辨率监视器时,选定项可能是困难的。在一些实例中,单个象素偏移量可以改变从一个目标条目(或选项)到另一个的选择。可用于克服这样的应用中的这个困难的一种方法,它以正常水平保持计算机屏幕的分辨率和缩放比例并且降低指向装置的分辨率。然而,如上所述,传统的用于改变指向装置分辨率的方法可能是相当麻烦的,特别是当在单个应用程序内操作的时候当用户要求改变分辨率许多次数时。
发明内容
本发明的一方面,提供了一种用于向计算机提供输入信息的计算机输入系统,其中包括:
一个计算机输入装置,其被设置为根据所述计算机输入装置相对于一个面的位置提供位置信息,所述计算机输入装置包括被设置为检测所述表面上的图案的一个图案检测器,以及连接所述图案检测器的一个控制器;
布置在所述表面上的图案,所述图案至少具有第一和第二预定图案部分,所述控制器根据所述图案检测器在检测第一预定图案部分和检测第二预定图案部分之间的切换,自动地产生一个变化事件;
其中控制器被设置为对所述图案检测器在检测第一预定图案部分和检测第二预定图案部分之间的切换做出响应,改变计算机输入装置的输入模式。
根据本发明的另一方面,提供了一种向计算机提供用户输入的方法,所述方法包括以下步骤:
在其上具有第一预定图案的一表面的第一部分上放置一个用户输入装置;
检测表示第一预定图案的第一图像;
向所述计算机提供表示检测的所述第一图像的第一图案信息;
在其上布置有第二预定图案的所述表面的第二部分上放置所述用户输入装置;
检测表示第二预定图案的第二图象;
向所述计算机提供表示检测的所述第二图像的第二图案信息;
基于第一和第二图案信息控制计算机;
根据从检测第一图像到检测第二图像的变化,至少自动改变用户输入装置的操作参数或计算机的操作模式之一。
根据本发明的另一方面,提供了一种控制计算机的方法,其特征在于包括以下步骤:
提供可相对于一表面移动的一计算机输入装置;
利用所述计算机输入装置检测在所述表面上的光学的图案;
设置所述的计算机,按照基于检测的所述表面上的所述光学的图案的操作特性运转;
其中控制器被设置为对所述图案检测器在检测第一预定图案部分和检测第二预定图案部分之间的切换做出响应,改变计算机输入装置的输入模式。
根据本发明的另一方面,提供了一种用于向计算机提供输入信息的计算机输入装置,其特征在于包括:
一个位置变换器,它被设置成根据所述计算机输入装置相对于一表面的位置提供位置信息;
所述位置信息用于在计算机屏幕上定位显示单元;
一个图案检测器,它被设置为检测在所述表面上的表面图案的光学图案的第一和第二预定图像;
一个控制器,它连接到所述图案检测器,并被配置成产生用于向所述计算机传输的图案信息以便控制计算机的操作模式,所述图案信息是表示所述图案检测器是否正在检测光学图案的第一预定图像或第二图案的图案信息。
附图说明
图1是实现根据本发明输入装置的示例环境方块图;
图2A是使用于本发明的一个实施例中的计算机和输入指向装置的功能方块图;
图2B举例说明由输入指向装置产生的向计算机传输的一个信息包;
图3举例说明以部分截面的和部分方块图形式显示的根据本发明一个实施例的计算机输入装置;
图4是结合一个鼠标衬垫或其上具有预定图案的工作表面举例说明图3所示指向装置的使用的一个方块图;
图5A和5B举例说明在识别图4所示预定图案中输入装置的操作;
图6举例说明为具有可变的分辨率的输入装置提供的在其上布置有各种的预定图案的一个鼠标衬垫或工作表面;
图7是在其上具有预定编码图像的一个鼠标衬垫或工作表面的视图;
图8是举例说明在X-Y坐标系上预定编码图像的突出部分的图;
图9举例说明由本发明的一个实施例的输入装置产生的信息包;
图10A和10B表示阐明利用图9所示数据信息包根据本发明一个实施例的输入装置的操作流程图;
图11是举例说明根据本发明另一实施例使用输入装置以向计算机提供专门信息的功能方块图;
图12A和12B表示举例说明图11所示的输入装置的操作的流程图;
图13是举例说明结合本发明另一实施例输入装置的应用程序操作的流程图,在其中应用程序生成在其上面布置应用特定的图像的一图表;
图14举例说明其上布置有多种的图案的另一鼠标衬垫或工作表面;
图15A是举例说明本发明另一实施例在学习模式中使用输入装置的功能方块图;
图15B举例说明方向补偿码的一个说明性实施例;
图16是举例说明根据本发明一个实施例在学习模式中使用输入装置的操作的一个流程图。
具体实施方式
本发明提供一种用户输入装置,用于产生位置信息和向一个计算机系统提供信息。该位置信息是根据检测的用户输入装置的移动或它的一个部分的移动产生的。该移动是通过识别在相对于用户输入装置可移动的一个表面上图案或图像并且监视图案的相对移动进行检测的。
概述
图1和有关的讨论是有意提供对于可以实现本发明的一个适当的计算环境的简短的、通用描述。虽然并不需要,本发明至少将被部分地描述在被个人计算机或其它计算装置执行的计算机可执行指令,如程序组件的通用描述表中。通常,程序模块包括例行程序、目标、成分、数据结构等执行特别的任务或实现特别的抽象数据类型。此外,对于那些熟悉本领域的人来说将能够理解本发明可以利用其它计算机系统配置所执行,包括掌上型装置、多处理器系统、基于微处理器或可编程的消费电子装置、网络PC机、小型机、大型主机等等。本发明也可适用在分布式计算环境中,其中所述任务是由经过通信网络链接的远程处理装置执行的。在一种分布式计算环境中,程序模块可以位于本地和远程两者的存储器存储装置中。
参照图1,用于本发明的一种示例性的环境包括传统的个人计算机20形式的一个通用目的计算装置,其包括处理单元21、系统存储器22以及将包括系统存储器的各种系统组件连接于处理单元21的系统总线23。系统总线23可以是包括存储器总线或存储器控制器、外围总线以及利用多种总线体系中的任何一个的局部总线等几种类型的总线结构中的任何一种。系统存储器包括只读存储器(ROM)24、随机访问存储器(RAM)25。包含帮助在个人计算机20内的各元件之间(例如在启动的时候)传送信息的基本例行程序的基本输入输出26(BIOS)被储存在ROM24中。个人计算机20还包括用于从一个硬盘(未显示)读出和向硬盘写入的一个硬盘驱动器27,用于从可移动的磁盘29读取或向其写入的一个磁盘驱动器28,以及一光盘驱动器30,用于从可移动的光盘31例如CD ROM或其它光学媒体读取和向其写入。硬盘驱动器27、磁盘驱动器28以及光盘驱动器30是分别通过硬盘驱动器接口32、磁盘驱动器接口33以及光盘驱动器接口34连接到系统总线23。这些驱动器和关联的计算机可读媒体为了个人计算机20提供非易失的计算机可读的指令、数据结构、程序模块以及其它数据的存储。
虽然在此处描述的示例性环境使用硬盘、可移动的磁盘29和可移动的光盘31,但应该理解,对于那些熟悉本技术领域的人来说,其它类型的可以存储能由计算机存取的数据的计算机可读的媒体也可以被使用在这个示例性操作环境中,例如磁录音带、快擦写存储卡、数字视频盘、柏努利(技术)粉盒、随机访问存储器(RAM)、只读存储器芯片(ROM)等等。
许多程序模块可以被储存在硬盘、磁盘29、光盘31、只读存储器(ROM)24或随机访问存储器(RAM)25上,包括操作系统35、一个或更多应用程序36,其它程序模块37以及程序数据38。用户可以通过输入装置例如键盘42和鼠标40将命令和信息输入个人计算机20。其它输入器件(未示出)可以包括麦克风、游戏杆、游戏衬垫、人造卫星碟、扫描仪等等。这些以及其它输入装置经常是通过连接到系统总线23的一个串行端口接口46连接到处理单元21,但是也可能是由其它接口连接的,例如声卡、并行端口、游戏端口或通用的串行总线(USB)。监视器47或其它类型的显示装置也可通过一接口例如视频适配器48被连接到系统总线23。除了监视器47,个人计算机通常可包括其它外围输出设备,例如扬声器45和打印机(未示出)。
个人计算机20可以在利用与一个或多个远程计算机,例如与一台远程计算机49逻辑连接,在网络环境中运行。远程计算机49可以是另外一个个人计算机、服务器、路由器、网络PC机、同等的装置或其它网络节点,并且通常包括许多或者所有上面相对于个人计算机20描述的那些部件,即使图1中仅画出一个存储器存储装置50。图1中所述的逻辑连接包括局域网(LAN)51和广域网(WAN)52。这样的网络环境在办公室、企业内的广域计算机网络和互联网络中是普通的东西。
当使用于局域网网络环境时,个人计算机20通过一个网络接口或适配器53被连接到局域网51。当使用于广域网网络环境时,个人计算机20通常包括一台调制解调器54或者其它用于在广域网52之上建立通信的装置,例如因特网。调制解调器54可以是内部或者外部的,其通过串行端口接口46连接到系统总线23。在一个网络环境中,相对于个人计算机20描述的程序模块或它的一部分可以被储存在远程记忆存储装置中。显然,所示网络连接是示例性的,也可以被使用在计算机之间建立通信链接的其它装置。
为了更好地理解本发明,现在给出对于鼠标信息处理的简短讨论。图2A是本发明一种实施例的使用输入装置42的计算机20的功能方块图。所示鼠标42具有左和右按钮并且在其间有一个可抑压可旋转的轮子103。在图2A所示的计算机20的方块图包括相对于图1讨论的许多内容,并且那些项目是同样地编号的。然而,图2A所示方块图也更详细地显示许多被用于处理鼠标信息的零组件。计算机20包括鼠标驱动器60、信息挂钩程序62以及集中应用64。为更好的理解图2A所示计算机系统20中的输入装置42的工作,结合图2B画出的数据结构讨论系统的零组件。
图2B举例说明一个成行与列格式的四字节鼠标信息包66,利用以整行和在列中显示每个字节的每一位显示的字节68、70、72和74表示。字节68是由输入装置42提供的第一字节,字节70是第二字节,字节72是第三字节,字节74是第四字节。各列比特位是利用在远的右边的最小的有效位和在远的左边的最大有效位组成的。因此,列76包括四字节中的每一个的最小有效位,列78包括四字节的最大有效位。
在鼠标信息包66内部,第一字节68包括左键位80、右键位82和中间按钮位84。在左边按钮位80中的1显示左边按钮是压低而在左键位80中的0显示左边按钮未被降低的。同样地,在右边按钮位82或中间按钮位84中的1分别地显示右键或中间按钮是压低,而在这些位的任一个中的0显示它们各自的按钮未被压低。
第四位86被设置为一个1。
字节68的第五比特位88是由字节70完成的9位符号值的第九位。由位88和字节70组合产生的9位值表示鼠标沿着X坐标移动的方向和大小。由于9位值是二的补足格式,位88显示鼠标移动的方向,如此以致如果它有一个值如零,鼠标在正X方向移动,而如果它有一个值一,鼠标是沿负X方向移动。
第一字节68的第六比特位90是一个值其显示字节72完成的9位符号值的第九位。位90和字节72的组合产生一个值,其表示鼠标沿着Y坐标移动的方向和大小。由于这个值是二的补足有符号值,位90指出沿着Y坐标移动的方向,如此以致如果它有一个值1,鼠标沿负Y方向移动,而如果它有一个值0,鼠标在正Y方向移动。
第一字节68的第七位92和第八位94分别显示由位88和字节70和由位90和字节72形成9比特值已经引起溢出的情况。这出现在由鼠标已经检测到比九个位多的移动时。在这个情况中,各个9位值应该设置为对于移动方向的它的最大的量。
第四字节74的最小的有效四位96、98、100和101表示轮子103(在图2A画出的)的移动方向和移动量大小。由位96-101表示的值是一个带符号的值,其中正值显示轮子向用户移动,负值显示轮子自用户离开的移动。
位105和107分别是字节74的第五和第六位,并分别显示相应于鼠标42的左和右键的开关的关闭。因此,当位105有一个值1时,与左边按钮关联的开关被关闭显示相应的鼠标键已经被压下。位107以相似的方式反映利用右边鼠标键关联的开关的关闭。
第四字节74的位109和111是留给后面使用的,而且被设定为0。熟悉本领域的人员将知道,图2B中画出的鼠标信息包66和在下面描述的串行接口46是使用于PS/2和串行的鼠标连接。对于通用串行总线(USB)连接,鼠标信息被发送给利用公众可用的USB通信协议鼠标的鼠标驱动器。
为了描述传统的鼠标信息处理,将参照图2A和2B。要发出一个鼠标信息,用户首先操作鼠标42。根据这个操作,鼠标42产生一个鼠标信息包,它通过串行接口46并且是表示操作事件的。当串行接口46收到鼠标信息包66时,它将鼠标信息包66中的串行信息转换成为一组并行信息包,并且将并行信息包提供到鼠标驱动器60。鼠标驱动器60根据操作事件产生一则鼠标信息。鼠标信息的生成是以与在其中存在鼠标的相同方式产生鼠标信息。
然后,鼠标信息被传输到操作系统35。在做为例证的实施例中,操作系统35是“WINDOWS NT”、“WINDOWS95”或“WINDOWS98”商标的操作系统(由美国微软公司提供)。操作系统35包括鼠标信息挂钩列表,它识别一系列鼠标信息挂钩过程62。当操作系统35从鼠标驱动器60收到鼠标信息时,它检查鼠标信息挂钩列表,以确定是否任何鼠标信息挂钩程序已经与操作系统35注册。如果至少一个鼠标信息挂钩程序已经利用操作系统35注册,操作系统35传递这个鼠标信息向注册的鼠标信息挂钩程序62,其出现在列表上的第一位。
调用的鼠标信息挂钩执行并且返回一个值到操作系统35,其命令操作系统将这只鼠标信息传递到下一个注册的鼠标信息挂钩。
例如,鼠标信息可以表示对一应用程序的命令,该应用程序拥有当前聚焦在计算机20之下的视窗。在本实例中,信息挂钩程序62将聚焦视窗应用程序发布命令。作为响应,聚焦视窗Windows应用程序64执行要求的功能。
在信息挂钩程序62向聚焦应用程序64发布命令之后,信息挂钩程序62通过从信息链除去信息而使用鼠标信息。这是通过返回一个值到操作系统35实现的,其指示操作系统不应该向任何其它信息挂机程序传递鼠标信息。
图3是部分方块形式和部分示意形式的一个更详细的图,举例说明根据本发明一个实施例的操作者输入装置,例如鼠标42。鼠标42包括壳体102、电磁的发射源(其可以简单地是一个光源例如LED)104、限定在壳体102的底部的孔106、透镜108、图像或图案检测器110、控制器112和电流驱动器114。图3中表示鼠标42被相对于工作表面116所支持。图案检测器110可以是适当的检测器,其能够从由撞击到图像或图案上并提供表示图像或图案的电磁辐射所携带的信息中检测图像或图案,并且可以是一个人造的视网膜图案检测器,例如,在下面所详细描述的。
光源104可以任何适当的电磁辐射源,其可用于提供用于撞击一个图案或图像的辐射线,并且其因此能够通过图案检测器110检测。在所示的一个实施例中,光源104包括LED118和透镜120。从LED118发出的辐射穿过透镜120,以致它经过壳体102中的孔106并且照射到其上可以具有预定图案或图像的工作表面上。然后光从工作表面116反射向透镜108。透镜108聚集从表面116反射的放射线并且将其引导到图像检测器(例如,人造的视网膜)110。应该注意到,利用在LED118、图像检测器110中的任何一个上或者它们两个上增加透镜,可以去掉透镜108。同样地,如果辐射是可由检测器检测的,即以致可以没有透镜地检测图像或者图案,那么透镜也可以简单地除去。
图像检测器110生成表示在工作表面116上的图像或图案的图像信号。在一个做例证的实施例中,图像信号被提供到控制器112,控制器112根据该图像信号计算位置信息。该位置信息显示鼠标42相对于工作表面116的移动,如在下面将更详细地描述的。位置信息以信息包的形式由控制器112经过一输出例如一电缆(未示出)提供到图1和2A中画出的计算机20。鼠标42也可以经过一个无线的传输链路例如红外线的超声波,或无线电频率链路,从控制器112提供输出。在一做例证的实施例中,控制器112提供的位置信息是按照一个传统的格式提供的,例如经过一个串行接口、一通用的串行总线(USB)接口,或任何其它适当的接口格式。
在一个做例证的实施例中,图像检测器110是由三菱电气公司制成的人造视网膜,而且包括按已知方式操作的一个可变灵敏度光电检测器(VSPD)的二维排列。简要地说,VSPD是由集成的彼此邻接并且由半绝缘GaAs层(pn-np结构)分开的二极管对构成。在一个实施例中,该阵列是一个32×32元素排列,但是根据要求可以是更大的或更小的。光电检测器电流在符号和大小上取决于所施加的电压。这样的VSPD表现一种模拟记忆效应,即当存在一个光写入脉冲情况下加给电压时,储存导电率信息。这个信息是通过注入一光读出脉冲检取的。
在这样的装置中的图像处理是基于光矩阵向量乘法的。输入图像被投射在该装置上作为加权矩阵。所有的VSPD具有沿着行连接的一个电极,产生灵敏度控制矢量。因此,在每一行中,VSPD灵敏度可以被设置为在某一个范围内的任意的值。另外,剩余VSPD电极被沿着列连接,产生到加权矩阵乘灵敏度控制矢量的矩阵矢积定义的输出电流矢量。
在一做例证的实施例中,图像检测器110被控制以执行边缘取出操作。两个相邻的检测器行的灵敏度分别被设定为+1和-1,而所有的其它灵敏度被设置为0。在这个实施例中,输出电流是与两个有效的行的光线照强度中的差别成比例的。通过按周期方式(0,+1,-1,0,0等)移动控制电压图案,感测出输入图象的水平边缘。因此系统以一时间连续的和半并行方式操作。
在一个做例证的实施例中,鼠标42还包括连接到光源104的电流驱动器114。在该实施例中,控制器112间歇地检测由光源104产生的辐射强度,并调整通过电流驱动器114提供到光源104的电流。换句话说,如果感测的强度比所要求范围低,控制器112提供一个反馈信号到电流驱动器114,以提高提供到光源104的电流,以便增加自光源104发射的电磁辐射线。另一方面,如果辐射线的强度比所要求范围更高,控制器112提供反馈信号到电流驱动器114以减少提供到光源104的电流,从而降低从光源104发射的辐射强度。这个可能被做为降低鼠标42的总体功率消耗。
图4和5A-5B举例说明按照本发明一个方面的鼠标42的操作情况。控制器112包括A/D转换器122、控制组件124、图像匹配组件126并且图象表128。图4也举例说明显示32×32VSPD(象素)阵列123的图像检测器110,来自表面116的图像被引导到该阵列123上。图像检测器110的整个观察区域123是与32×32象素排列一致的。然而,在整个观察区域123内定义的是采样区域125。采样区域125是比观察区域更小的,并且在一个做例证的实施例中包括通常围绕观察区域123的中心127居中的大致10象素乘10象素的区域。在图4所示实施例中,在表面116上的图像只是一个网格图案。
操作时,控制器112首先触发该源104以致辐射线撞击工作表面116。鼠标42可以在具有预定义图案(例如网格结构)或没有预定义图案的表面上操作。例如,如果只是在显微镜的水平上,每个表面实质上具有某些不规则的或表面凹凸。假设光源足够强大,商业上可用的人造的视网膜能够分辨几微米大小的图象。因此,辐射线被从表面116反射回以撞击观察区域123,携带具有表示在表面116上预定图案或由表面116上表面凹凸形成的图像或者图案两方的信息。
在控制器112尚未寻找工作表面116上预定图案的实施例中,表示由表面116的表面凹凸形成的图案的模拟信号被提供到A/D转换器122。A/D转换器122将本信号转换成为一个数字值,其被提供到控制组件124。控制组件124执行许多适当的算法中的一个,例如上面的识别边缘取出算法,以识别在采样区域125反射的来自表面116的图案或图像。这个信息由控制组件124按照一记忆关联储存。然后控制组件124等候一个预定超时期,其是根据在表面116上鼠标的最大的预期速度做例证的确定的。在做例证的实施例中,超时持续时间大约是1-10毫秒。
在暂停周期之后,控制组件124使源104(如果它已经是未被启动的)重新启动,并且确定在采样区125内的图象是否已经移动。在采样区域125内部的图象的移动是表示鼠标42和表面116之间的相对的移动。根据检测的移动,控制组件124按照惯用的和可接受的格式(例如在图2B画出的信息包66)在一输出端(例如通过一个电缆)提供位置信息。这个信息被用于许多情况,包括鼠标光标在计算机显示器上的移动。
在观察区域125内图像或图案的移动被检测之后,在采样区域125内一个新的图像或图案是检测。然后表示新的图像的图像数据由控制组件124储存。然后控制组件124再一次等待另外一个暂停周期并且确定新的图象是否已经移动。继续这个处理,使鼠标42继续提供表示鼠标42和工作表面116的相对的移动的位置信息。
在采样区域125中图像移动的检测可以以许多方式实现。这样的技术包括交叉相关、循环的谐函数、图案瞬间特性以及弦直方图检测。如果需要,也可以检测鼠标42相对于表面116的鼠标42的转动的移动。在一个做例证的实施例中,透镜120被成形为按照一延长或椭圆的图案传送辐射。因此,如果鼠标旋转,椭圆形状的旋转也可以被检测。所有的的这些技术被详细地描述在上面标出的待决的美国专利申请中。
控制器112还可以被配置成检测在观察区域123内的预定图案(例如网格结构),并且检测预定图案相对于鼠标42的移动。例如,图5A和5B举例说明在采样区域125内预定图案的移动。在图5A和5B画出的实施例中,预定网格图案(为了清楚的缘故只是用垂直线显示)是由交互的蓝和红的线条形成的,致使反射回到图像检测器110的辐射携带蓝或红的网格线是否在采样区域125内的信息。当然,交互的网格线可以是由交互的厚度不同的阴影形成的,或具有其它当检测图像时容许控制组件124识别交互的网格线的有区别的特性。
在图5A中,两个蓝线条132和134是在采样区域125内部,一个红的线条136是在采样区域125内,并在蓝线条132和134之间。在鼠标移动之后,一新的图案住留在采样区域125内部,如图5B所画出的。新的图案说明线条132、134和136已经转变到相对于采样区域125的左边,而且另外一个红的线条138已经进入采样区域125的右边。
所示的图像检测器110的采样率是足够高的,而且是基于鼠标的预期的最大速度的,鼠标42在一个新的图像是取出之前无法移动一个完整的网格间隔。在一个做例证的实施例中,控制组件124在网格线之间设定一个预定不变的距离。按照该方式,控制组件124只是需要跟踪经过采样区域125的网格线数和那些网格线的移动方向,以便确定鼠标相对于表面116已经移动的距离和方向。当然,这是对于在X和Y两个方向上网格线做例证的实现。然后控制组件124生成一个鼠标信息包,类似于图2B画出的,其是表示鼠标42相对于表面16的移动的。
可变的分辨率操作
图6举例说明一个鼠标衬垫或表面116,其上布置有四个不同的分区140、142、144和146。表面116上的分区140没有预定图案。分区142有均匀地间隔的网格线的一个网格线图案。分区144具有一个高的分辨率网格线图案,在其中网格线是均一地间隔的,但是间隔得比分区142中的要近一点。分区146也具有一个网格线图案,但是图案为非正交的,即网格线之间的间隔从分区146的一侧到分区146的另外一侧是变化的。分区140-146允许鼠标42按可变的分辨率方式操作而不必需要改变设备驱动程序,也不用激活一个控制面板小应用程序。
当鼠标142通过分区140时,控制组件124基于上面讨论的随机的(或者总之是非预定的)模式提供位置信息。换言之,控制组件124根据在分区140中的表面凹凸获得在采样区域125内部识别的图案或图像的周期的“瞬象”,并且确定那些图像相对于采样区域125的移动以提供位置信息。
然而,当鼠标42移动通过分辨率分区142,控制组件124识别在鼠标42之下的网格线结构。由于网格线被做例证的远比表面116的表面凹凸更显著,所以控制组件124可以轻易地识别鼠标42是在有预定图案的一个分区上。因此,当鼠标42是在分区142之上时,控制组件124只是如在上面相对于图5A和5B讨论的处理图像,计算沿着两个坐标轴经过采样区域125的网格线,以确定鼠标42的移动。
同样地,当鼠标42移动通过高分辨率分区144时,控制组件124可以很快地决定鼠标42是通过具有预定图案的一个分区,并按有关分区142所讨论的方式操作。控制组件124被配置为在网格线之间假定一个预定距离。在分区144中的网格线是均一地间隔的,它们间隔的比在分区142中的近一点(例如,在分区144中的网格线具有在分区142位于网格线间隔的一半的间隔)。控制组件124只是计算经过采样区域125的线条数。因此,对于鼠标42相对于分区144移动的给出的量,控制组件124将提供显示鼠标42已经移动如鼠标42相对于分区142的相对移动量的两倍的位置信息。通过从分区142到分区144简单地移动鼠标42,用户可以有效地减半鼠标42的标度和加倍它的分辨率,而不必改变任何软件和不用访问控制面板。
分区146还有布置在其上的一个网格图案。然而,不象分区142和144,在分区146中的网格线之间的间隔地跨过该区域变化。如图6画出的,在分区146的中心的区域中网格线的间隔是最大的,而在分区146的任一端(以及上到下)的网格线之间的间隔向分区146的边缘递减。如相对于分区142和144描述的,控制组件124检测鼠标42是在具有预定义图案的一区域之上。鼠标42的分辨率和标度基于在分区146中网格线的间隔变化,随着它移动通过分区146而变化。因此,通过简单地将鼠标放置在分区146之上,用户可以将鼠标42转换成为一个可变比例和可变分辨率输入装置,此外不用更改设备驱动程序和不用激活控制面板小应用程序。
特别编码图像的检测
与图像传感器110相结合,控制器112被表示成配置以实质上检测在表面116上任何图像,不论它是一个预定义图像或者表示表面凹凸的随机的图像。因此,鼠标控制器112和图像检测器110还可以检测特别地编码图像,该图像具有特殊的意义并且布置在表面116上。
图7表示可以在表面116上给出分区中重复的一个非常简单的编码图案。在一个做例证的实施例中,使用图8画出的简单的投影技术,由控制组件124识别编码图案。可以控制在图像传感器110中象素阵列以提供一输出,该输出表示在每一行中和在每一列中有效的象素的总数。这个信息被投影在图8画出的XY坐标轴上。
换句话说,在图7以及8画出的图案是颠倒的三角形的图案,当反射在检测器阵列时,它激活在它的底部的三个象素,以及在它的颠倒的尖峰端的一个象素。这个图案可以被投影在单个轴上,并且由在X轴上的电压信号150和在Y轴上的电压信号152表示。信号150具有第一电平154,其表示在观察区域中没有有效的象素。信号150也有一个第二电平156,它表示在观察区域中的单个有效的象素。更进一步,信号150具有表示在观察区域中两个有效的象素的第三电平。因此,信号电平154、156和158表示当图像投影在X轴上时,与该图像关联的由有效的象素产生的信号总数。
信号152阐明在Y中上图像的投影。信号152具有表示三个有效的象素的第一电平160,以及分别地表示两个活性的象素和一个有效的象素的第二和第三电平。
在接收这些数字化信号时,控制组件124识别编码图案并且将它提供到匹配组件166。匹配组件166访问存储有可以表示由控制器112识别的所有的被编码图像的图像表128。匹配组件126使用任何适当的以及简单的匹配算法以将控制组件124识别的图像与在图像表128中储存的预定编码图像相比。图像表128不只是存储表示将被识别的图像数据,而且包括与识别图像关联的一值,并且它可被用于由控制组件124产生的鼠标信息包中,传递想要的信息回到计算机20。
为了产生鼠标信息包,控制组件124最好产生通常由图9中数字170画出的一个新的鼠标信息包。信息包170类似于图2B中画出的信息包66,只是它包括一个附加的信息字节172。如在信息包170中的其它字节那样,字节172最好包括八位的信息,它被用于编码控制组件124已经真正地识别一个预定图像这一事实,该预定图像是在图像表128中的,而且它也包括在图像表128中的与已经被识别的编码图案关联的值。
用举例的方法,在图7中画出的编码图案能重复地布置在表面116上,以显示计算机20是以某一个模式运转,或被改变模式。在一个做例证的实施例中,当探测到图7画出的编码图案时,与在图像表128中图案关联的功能/模式变化值显示计算机20是将以视觉削弱模式运转,其中所有字型的尺寸在正常水平之上极大地增加。
图10A和10B描述一张流程图,举例说明在这样的环境下鼠标42和计算机20的操作过程。首先,用户有如功能块174所示那样操作鼠标。换句话说,用户简单地将鼠标移动或放置在一个区域或包含重复的编码图案的表面116的分区之上。接下来,图像传感器110检测图像并且传递表示被检测图像的数据到控制组件124。然后控制组件124如在上面讨论的识别本图像,并且传递该图像到匹配组件126。这个是由功能块176和178显示的。
匹配组件126访问图像表128,并且将识别的图象(如果可能)与包含在图像表128中的图像比较。这是由功能块128显示的。然后比较表126把与来自图像表128的匹配图像关联的功能/模式变化值传递到控制组件124。控制组件124依次产生具有包含在信息包的字节中的功能/模式变化值的鼠标信息包。这是由功能块182显示的。
然后控制组件124传递信息包到串行接口46,有如功能块184所显示的。串行接口46将串行的鼠标信息包转换成并行鼠标信息包信息,并且将该信息提供到鼠标驱动器60。鼠标驱动器60检查在字节5的信息,并且基于功能/模式变化信息产生一个鼠标信息,该变化信息也是建立在已经被识别的预定编码图案基础上的。这是由功能块186和188显示的。鼠标驱动器60传递鼠标信息到操作系统35,如功能块190显示的。
应该注意,鼠标信息可以是对于操作系统的一个专门的信息。例如,为了在视觉削弱方式运转,鼠标信息可以指示操作系统字型大小需要被增加。鼠标信息是否是一个专门信息的确定是由方块192显示的。如果鼠标信息是特意用于该操作系统的一个信息,那么操作系统基于鼠标信息中的信息,采取必要步骤,以改变计算机20的操作方式。这是由功能块194显示的。在该实例中,计算机20是被更改为一个视觉削弱方式,操作系统激活控制面板改变字型大小到一个想要的水平,例如通过调用一应用程序接口(API)。然后操作系统使用鼠标信息。这个是由功能块194和196显示的。
在方块192处,如果确定鼠标信息不是特意用于该操作系统的一个专门信息,操作系统简单地传递该鼠标信息到注册的鼠标信息挂钩。这是由功能块196显示的。信息挂钩可以是由一应用程序注册的,该应用程序被配置为利用包含在鼠标信息中的信息。例如,这样的信息可以指示一个命令是以被传递到应用程序,该应用程序自己的视窗当前在计算机20的聚焦之下。因此,有如功能块200和202所示的那样,通过识别聚焦,信息挂钩进行。然后信息挂钩发布要求命令到聚焦应用程序和使用鼠标信息。这是由功能块204和196显示的。
当已经进行相对于改变计算机20的操作方式从正常视觉模式到视觉削弱方式的时候,本技术可用于对于计算机20的操作方式作出任何实质上改变。字型大小的改变仅是一个例子。应该注意到,当鼠标42可以识别在表面116上的编码图像时,它可以基于上面所描述的在采样区域123内部编码图像的移动,或基于在采样区域123内部由表面116的凹凸表面产生的图像的移动同时地提供位置信息。在这种情况下,鼠标信息包170不只是包括包含在字节5中的信息,而且包括表示沿X和Y方向鼠标42移动的位置信息。当然,鼠标42还可以同时地在信息包170中提供信息,其表示在鼠标42上按钮的动作和轮子的旋转。
此外,以做例证的方式使用鼠标衬垫,它在相对的侧面上包含不同的编码信息。换句话说,削弱视觉码可以被提供在鼠标衬垫的一侧上,并且沿着具有许多的分区的网格线(例如图6所示的那些网格线)在鼠标衬垫的整个表面重复。在实例中,鼠标衬垫的单独一侧提供一个指示给电脑20,即它是按视觉削弱模式运转,并且也提供给用户具有在上面相对于图6讨论的可变的分辨率性能。同时,该鼠标衬垫的相对一侧可以包含相同的可变分辨率分区(或任何其他适当的图案),而在那上面没有视觉削弱编码符号。因此,如果用户是视觉削弱的,该用户可以简单地将老鼠衬垫翻过来,放置鼠标42在本衬垫上,而计算机20将自动地切换到视觉削弱模式。
本发明还可以被用于完成其它所需的功能。例如,鼠标42还可以被使用作为用户输入装置用于输入用户ID或口令以执行一个登录操作。图11是类似于图4所示内容的一方块图,而且相似的项目是相对应地被标号的。不过,图11表示布置在表面116上的一个不同的图像210。在图11所示的实施例中,图像210被表示为一个条形码。然而,能使用任何其它可辨别的图像。在一个实施例中,图像210被放置在一个人格化的鼠标衬垫上,或用户携带用于安全目的一个ID标记上,或在另一类似的人格化条目上。
在一些传统的计算机系统中,在用户被允许访问计算机系统的某些特定的方面之前,需要一个登录过程。当一个电脑被启动时,引导序列可以需要操作系统调用一种登录应用程序,它产生一个用户界面需要用户输入识别信息,例如姓名或ID号,以及口令。根据这个用户输入信息,该登录应用程序可以允许用户完整访问计算机系统,只是部分访问(在此执行不同的安全级别),或根本拒绝访问(例如用户输入信息反映这个用户不是经认可的具有对该系统的任何访问的)。
例如,一些财务或记帐系统应用程序只是允许经认可的用户能接近某些特定的包含机密的财务信息的数据库。同样地,在一个网络环境中,某些登录应用程序将基于用户的身分和安全级别控制对网络驱动器的访问。此外,在利用“视窗(WINDOWS)”商标操作系统的系统中实现的自动登录程序,在登录程序将被执行以前,需要用户重新启动电脑(例如通过执行CTL-ALT-DEL键序列)。这样的登录操作可能是有点麻烦的。
因此,本发明提供一种系统,通过它登录可以简单地通过将鼠标42放置在包含用户的个人登录信息的一个编码图像之上,或者通过扫描鼠标42通过编码用户个人登录信息的一个图像(例如在图像210中画出的条形码)被实现。
在此编码图像是足够小的,它可以被控制器112识别而不必移动鼠标42(也即它是足够小的,它将全部出现在观察区域123内部),该图像是如上面描述的那样简单地如任何其它编码图像那样处理的。换句话说,该图像被图像检测器110捕获,提供到A/D转换器122,它将该图像信号转换成为一个数字信号并且传递到控制组件124。然后控制组件124识别该图像并且将它提供到匹配组件126,匹配组件126将该识别的图像与在图像表128中储存的一相应的图象比较。在该实例中,图像表128还包括一个相关的图像值,它标识该图象作为用户的登录信息。
这个信息提供回到控制组件124,它产生鼠标信息包,并经串行接口46将鼠标信息包提供到鼠标驱动器60。鼠标驱动器60接着产生一鼠标信息传输到操作系统35。在一个操作系统35处理登录操作的实施例中,鼠标信息被规定为一个用于操作系统35的专门鼠标信息。在另一个单独的应用程序处理登录程序实施例中,鼠标信息只不过是规定为一个普通鼠标信息,其将被传递到注册的信息挂钩程序62。在这种情况下,操作系统35传递鼠标信息到信息挂钩程序直到它达到登录应用程序为止。登录应用程序向计算机20的其它零组件发布命令以配置计算机20将允许对于用户的一个想要级别的访问,或者拒绝用户访问并且简单地发布一出错信息给该用户。
在鼠标42对整个图像210扫描的实施例中(例如图像210是一个条形码),操作通常是由在图12A和12B所示的流程图显示的。值得注意的是在开始时,鼠标42可以被配置为接收来自用户的选择输入(例如一个按钮的下压),显示用户希望进入登录方式。
然后用户扫描鼠标整个图像210,即如功能块212所显示的那样。通过鼠标42扫描整个图像210,将产生一个序列不连续的图像,它们表示在条形码中编码的信息。图像检测器110捕获这个图像序列,并依次将它提供到A/D转换器122,A/D转换器122将表示该图像序列的数字信息提供到控制组件124。这是由功能块214显示的。
控制组件124识别在图像序列中的每一图像,有如功能块216所显示的那样,并且将图像序列提供到匹配组件126。匹配组件126使图象序列与在图像表128中储存的图像序列相符。控制组件124接收来自图像表128的关联的信息并产生包括与匹配的图像序列关联的登录信息的鼠标信息包。这是由功能块220所显示的。控制组件124传递鼠标信息包到串行接口46如功能块222所显示的。然后串行接口46将串行的鼠标信息包转换成为并行鼠标信息包信息,并且提供该并行鼠标信息包信息到鼠标驱动器60,如功能块224所显示。
驱动器60基于收到的登录事件信息产生一个鼠标信息,有如功能块226所显示的那样,并且传递这则鼠标信息到操作系统35,有如功能块228所显示的那样。在一个登录程序将是由与操作系统35分开的一应用程序处理的实施例中,登录应用程序必须已经将它自己与操作系统35注册作为一鼠标信息挂钩。这是由功能块230所显示的。
然后操作系统35传递鼠标信息到下一个注册的鼠标信息挂钩如功能块232所显示,而且该信息挂钩程序被执行如功能块234所显示。在一个做例证的实施例中,信息挂钩简单地发布命令到登录应用程序,要求登录应用程序校验在鼠标信息中的标识和口令信息。这是由功能块236显示的。然后从登录应用程序发出命令,它设定计算机20允许对于用户的合适的访问。这是由功能块238显示的。然后与登录应用程序关联的信息挂钩使用鼠标信息,就如功能块240所显示的。应该注意到,在上面的相对于登录操作进行的讨论的同时,那些熟悉本领域的技术人员将承认,按照本发明实现的技术可用于执行任何其它想要的功能,或者也能发布命令到任何其它应用程序。
自定义模板的产生
本发明还可以被用于产生自定义模板,或印刷的表面116,其包括在其上面的自定义的编码图像(在纸、聚酯薄膜等上印制的),它作用于用于一个特定用户或者一个特殊的需要自定义该系统。例如,某些游戏应用程序表明附加的功能性根据用户在游戏中达到较高的级别。换句话说,随着用户达到某一个得分,或者经过某一个屏幕,游戏应用程序提供附加的“生命”或者“弹药”或提供给用户对另外的“武器”,或者其它可被用于该游戏的工具或者设备的访问。同样地,在一些这样的应用程序中,在用户达到某一个级别之后,应用程序通过利用一现有的工具触发一个不同的应答。本发明可用于增强这样的游戏的功能性。
为了增强功能性,应用程序是设定为打印一个自定义模板放置在表面116。模板包括自定义编码图像,它们是由鼠标42读取的并且导致一个鼠标信息的创建,该信息由应用程序解释以修改该应用程序的功能性。这个过程通常是由在图13中设置的流程图显示。
首先,应用程序接收一个触发事件以印制包含自定义编码图像的一个新的自定义模板。这是由功能块242显示的。如在上面讨论的,这个事件可以只是用户达到在游戏中的一个预定级别。触发事件还可以相当于用户输入或扫描一个密码,该密码是该应用程序透露给该用户的。在该实施例中,用户利用鼠标42扫描这样的一个密码,这个密码被传输到使用(作为例子)在上面相对于图10A和10B识别的通信协议的应用程序。
然后应用程序发布命令,以打印应用程序特殊的自定义模板。这是由功能块244显示的。当然,应用程序也必须对于操作系统35注册任何其它需要的鼠标信息挂钩,如此以致它将接收包含表示在新的模板上的自定义编码图像的信息的鼠标信息。这是由功能块246显示的。然后新的模板被放置在表面116上并且由用户使用。
应予说明的是,虽然上面已经进行对于游戏应用程序的讨论,但本发明并不限制于这些内容。那些熟悉本领域的技术人员将能理解,本发明可以被使用于打印对一种应用程序自定义的任何模板,而与在其中它将被使用的应用程序无关。
鼠标42作为绝对位置装置使用
本发明还可以被用于以选择的方式将鼠标42从一相对位置装置转换为一绝对位置装置。这是在图14中画出的。图14举例说明其上具有三个分开的分区250、252和254的鼠标衬垫或模板248。在一个实施例中,分区250上面既没有预定图案也没有网格结构图案,或者其它类似的图案,例如相对于图5A和5B描述的图案。因此,当鼠标42在分区250之上时,它只是作为一种相对的定位装置。
分区252上面具有一个重复的密码。换句话说,分区252具有许多单元格256,每一单元格包含相同的编码符号258。在分区254中的重复的编码区域能像上面讨论的使用,以将计算机20布置在一个想要的操作模式,并且还可以被用于产生与鼠标42在分区252之上的移动对应的相对的位置信息。
然而,模板248也包括包含多个单元格260的分区254,每一单元格利用一个唯一编码图像262编码。由于在单元格260中的每一编码图像262不同于在其它单元格260中的其它编码图像262,在分区254之上鼠标42的放置可用于将鼠标42转换成为一绝对的定位装置。
每个被唯一编码的图像262被储存在图像表128中。每个编码图像还具有一个与其关联的值(在图像表128中),它表示鼠标42在分区254内部的绝对的位置。因此,当一个编码图像262由控制组件124识别时,它被传递到匹配组件126,匹配组件126使编码的图像与在图像表128中的一个相应的图像相符。然后图像表128提供绝对的位置信息到控制组件124,控制组件124产生包括绝对的位置信息的传递到计算机20的鼠标信息包。这个绝对位置信息可用于在计算机20的显示屏幕上的与所述绝对位置信息对应的一个预定位置上布置一个光标,而与鼠标42的相对的移动无关。那么,鼠标42可以选取模板248,并且设置在分区254内的另外一个位置。然后光标将移到在显示屏幕上的与从分区254读取的绝对的位置相应的另一位置,该绝对的位置是鼠标所放置的位置。
在图像表128中图像的生成
最好是在将识别的图像与在图像表128中的图像相比之前,必须设法产生图像并且放置于图像表128中。图15A、15B和16举例说明用于完成这个任务的许多实施例。
开始时,图像可以是简单地装入计算机20的预先形成的图像。然后预先形成的图像被下载到控制器112中的控制组件124,它将图象放置在图象表128中。下载图像可以使用任何适当的协议实现。例如,在计算机20中的图象装载组件可以访问在计算机20中储存的预先形成的图象,并且生成被传递到操作系统35的图象信息包。在该实例中,鼠标驱动器60装备有一图像信息包传输组件,其接收来自操作系统35的图象信息包和将它们并行地提供到串行接口46。然后,串行接口46使信息包连续并且经过一适当的链路将它们提供到控制组件124,控制组件124简单地将图像放置在图像表128中。然后这些图像匹配组件126使用在由图像检测器110捕获的图像和由控制组件124识别的图像的匹配中。
在一个做例证的实施例中,当预先形成的图像实质上可以采取任何形式时,它们是方位补偿码。例如,该码将是由控制组件124可辨别的,与鼠标42所放置的表面116的平面中鼠标42的矩形方位无关。因此,如果用户在表面116的平面中稍微旋转鼠标42,如用户相对于表面116移动鼠标42,编码图像将被构成为以致它可以被识别,而与鼠标42的特别的方向无关。
图15B是这样的一个编码图像的一个说明性实施例。图15B显示一编码图像264,其包含一对同心的圆266和268,以及一方向标记270。图像264还包含多个编码图像单元格272,它们包含由编码信息264显示的信息。当表示图像264的图像信号被提供给控制组件124时,控制组件124使用一个简单的算法,以识别同心的圆266和268,还使用标记270。基于标记270的位置,控制组件124可以轻易地确定图象264相对于鼠标42的方位,并且能因此对于在单元格272中的信息进行图像264的剩余部分的检查。
当多种多样的这样的方位补偿码能被使用的时候,以及在方位补偿码不是必须需要在本发明的所有的实施例中使用的时候,一些这样的方位补偿码是商业上可用的,而且是通过USS-MaxiCode(最大码系统)条款指定的。利用这个系统的码也展现出可能是理想的某些容错功能特性。
编码的图像不仅仅可以预先形成和从计算机20下载到鼠标42,而且它们也可以被计算机系统20和鼠标42学习。图15A是一个说明计算机20的功能方块图。图15A类似于图2A,而且相似的内容被标以相应的编号。然而,图15A说明计算机20还装备有一个学习模式组件274。学习模式组件274是做例证的与一个学习模式应用程序关联的,该应用程序已经注册为操作系统35的一个信息挂钩。
图16是说明鼠标42和计算机20在学习模式中操作的流程图。首先,用户启动学习模式。这可以通过将鼠标放置在鼠标衬垫上的一个预编码的图案上,通过下压鼠标上的激励按钮,通过下压在键盘上的一个键或键序列等简单地做到。响应学习模式开始,操作系统35调用提供用户界面的学习模式组件274给用户,指示将分配给由鼠标42捕获的并且学习的下一个编码图像的特别的功能或模式变化。在指定的功能/模式变化中学习的开始是由图16中的功能块276和278显示的。
然后用户将鼠标在表面16上的包含要被捕获的编码图像的一个选择的区域上扫描。另外,用户可以简单地将鼠标42设置在该区域上,如果编码图像在表面116上重复并且是间隔足够接近,即不管用户如何设置鼠标42,至少一个编码图像将被图像检测器110捕获。这是由功能块280显示的。
然后由鼠标42中的图像检测器110捕获图像,而且表示图像的图像数据由控制组件124提供。鼠标信息包被传送到串行接口46和鼠标驱动器60,在那里产生携带图像数据的鼠标信息并且提供给操作系统35。这是由功能块282和284显示的。操作系统35将鼠标信息传送到已经对于操作系统35注册的信息挂钩程序,以致鼠标信息将最终被提供到学习模式组件274。这是由功能块286显示的。
学习模式组件274通过下述步骤赋予图像以特色,对于在识别图象过程中能被控制组件124使用的图像分配一个图案键或图案署名键,以及在匹配图像过程中通过匹配组件126将该图像与在图像表128中储存的其它图像比较。这是由功能块286和288显示的。然后学习模式组件274将产生的图案键与表示功能或模式变化的一个值关联,该值将是由编码图像表示的。这个值与图像键关联以形成在鼠标42中用于图像表128的图像表条目,这是由功能块290显示的。
然后使用任何适当的通信协议将图像表条目传输回到鼠标42,比如开始着手从计算机20发送预先形成的编码图像到鼠标42。这是由功能块292显示的。被发送给鼠标42的图像表条目也被发送到在电脑20上的储存位置,使得它们稍后可以被下载到另一鼠标42,例如,在计算机20操作期间的一个鼠标被转换为另一鼠标的时候。
应该注意到,虽然明确的学习模式的讨论只是对于捕获将与给定功能关联的单个图像进行的,但也可以使用其它方法。例如,学习模式组件可以命令用户再一次将鼠标放置在将被学习的相同的编码图像之上,以便可以捕获两个相同的编码图像的范例。然后两个范例由学习模式组件274平均,以便获得表示将被学习的编码信息的一平均值。在图像捕获处理中,这个处理做例证的重复许多次,以便帮助降低噪音或其它异常的情况的影响。
结论
因此可以看出,本发明提供了一种机构,图案信息可以由它提供到电脑。图案信息能被计算机使用用于多种多样的目的。计算机可以被配置成致使计算机的操作特性可以根据图案信息改变。该操作特性实质上可以表示在计算机如何操作上的任何改变。操作特性中的变化可以被称为从表面116读取的基于图像产生的改变事件(它包括部分图像或模)。改变事件可以反映例如计算机输入装置的动作的特性变化,附加有该改变事件的计算机操作方式的变化,计算机操作系统的操作特性的变化,对应用程序的命令的变化,或用户标识信息输入的变化。由于变化事件是根据由光学的跟踪器件例如鼠标从设置在表面116上的模板或图案中“读出”的内容产生的并且被提供到计算机20,所以本发明克服了与已有技术关联的明显的缺点,在已有技术中为了作出这样的改变需要操作或唤醒软件驱动程序或控制面板小应用程序。
虽然已经参照优选的实施例描述了本发明,但那些熟悉本领域的技术人员将能理解,可以做出形式和细节上的变化,而这些变化并没有脱离本发明的精神和范围。

Claims (35)

1.一种用于向计算机提供输入信息的计算机输入系统,其中包括:
一个计算机输入装置,其被设置为根据所述计算机输入装置相对于一个面的位置提供位置信息,所述计算机输入装置包括被设置为检测所述表面上的图案的一个图案检测器,以及连接所述图案检测器的一个控制器;
布置在所述表面上的图案,所述图案至少具有第一和第二预定图案部分,所述控制器根据所述图案检测器在检测第一预定图案部分和检测第二预定图案部分之间的切换,自动地产生一个变化事件;
其中控制器被设置为对所述图案检测器在检测第一预定图案部分和检测第二预定图案部分之间的切换做出响应,改变计算机输入装置的输入模式。
2.如权利要求1所述的计算机输入系统,其特征在于所述控制器被设置为通过提供变化信息产生变化事件,以变化计算机输入装置的操作特性。
3.如权利要求2所述的计算机输入系统,其特征在于所述控制器被设置为根据图案检测器是否检测第一或第二预定图案部分,改变对于计算机输入装置相对于所述图案的给出的相对移动距离的位置信息。
4.如权利要求3所示的计算机输入系统,其特征在于所述第一预定图案部分包括以第一距离分别间隔的第一多个预定图像,而第二预定图案部分包括以第二距离分别间隔的第二多个预定图案。
5.如权利要求4所述的计算机输入系统,其特征在于所述第一多个预定图像包括以第一距离间隔的第一多个网格线,第二多个预定图像包括以第二距离间隔的第二多个网格线。
6.如权利要求3所述的计算机输入系统,其特征在于所述第一预定图案部分包括按照通过所述图案变化的一个距离彼此间隔的第一多个预定图像。
7.如权利要求2所述的计算机输入系统,其特征在于所述控制器被配置为当图像检测器检测第一预定图案部分时,其提供表示计算机输入装置相对于所述图案的相对移动的相对位置信息,而当图像检测器检测第二预定图案部分时,其提供表示计算机输入装置相对于所述图案的绝对位置的绝对位置信息。
8.如权利要求7所述的计算机输入系统,其特征在于所述第二预定图案部分包括在所述表面上彼此间隔的多个唯一预定图像。
9.如权利要求1所述的计算机输入系统,其特征在于所述表面包括:
在基片的第一面上并且在其上布置有第一预定图案部分的第一表面部分;
在基片的第二面上并且在其上布置有第二预定图案部分的第二表面部分。
10.如权利要求1所述的计算机输入系统,其特征在于所述控制器被设置为通过向计算机提供输入信息产生改变事件,其中所述输入信息包括用于改变计算机操作特性的变化信息。
11.如权利要求10所述的计算机输入系统,其特征在于所述变化信息包括表示在计算机操作方式中想要的变化的模式变化信息,并且所述控制器基于在检测第一预定图案部分和第二预定图案部分之间图象检测器的切换,提供模式变化信息。
12.如权利要求11所述的计算机输入系统,其特征在于所述第一预定图案部分包括至少一个表示第一计算机操作方式的预定图像,其中第二预定图案部分包括表示第二计算机操作方式的一个第二预定图像。
13.如权利要求1所述的计算机输入系统,其特征在于所述控制器被设置成通过向计算机提供输入信息以产生变化事件,其中输入信息包括用于向计算机运行的应用程序发布命令的命令信息,基于图像检测器检测第一和第二预定图案部分中的至少一个,控制器产生命令信息。
14.如权利要求13所述的计算机输入系统,其特征在于所述应用程序包括登录应用程序,并且其中所述命令消息是表示登录命令和用户身份验证信息的,所述登录应用程序根据登录命令和用户身份验证信息控制提供给用户的访问。
15.如权利要求14所述的计算机输入系统,其特征在于所述表面包括一个用户标识标记部分。
16.如权利要求1所述的计算机输入系统,其特征在于所述第一和第二预定图案部分是被学习的图案,它们是响应学习模式操作的开始由控制器学习的。
17.如权利要求1所述的计算机输入系统,其特征在于所述控制器是坐落在计算机内部的。
18.一种向计算机提供用户输入的方法,其特征在于所述方法包括以下步骤:
在其上具有第一预定图案的一表面的第一部分上放置一个用户输入装置;
检测表示第一预定图案的第一图像;
向所述计算机提供表示检测的所述第一图像的第一图案信息;
在其上布置有第二预定图案的所述表面的第二部分上放置所述用户输入装置;
检测表示第二预定图案的第二图象;
向所述计算机提供表示检测的所述第二图像的第二图案信息;
基于第一和第二图案信息控制计算机;
根据从检测第一图像到检测第二图像的变化,至少自动改变用户输入装置的操作参数或计算机的操作模式之一。
19.如权利要求18所述的方法,其特征在于所述控制步骤包括:
根据从检测第一图象到检测第二图像的变化,改变计算机的操作模式。
20.如权利要求19所述的方法,其特征在于所述检测第一图像的步骤包括:
用一图像检测器捕获第一图象;
使表示第一图像的信息与表示在图像存储器中储存的第一储存的图象的信息相符。
21.如权利要求20所述的方法,其特征在于所述改变操作模式的步骤包括:
提供与第一储存的图像关联的一模式值,所述模式值是表示计算机操作的第一模式的。
22.如权利要求19所述的方法,其特征在于所述检测第二图像的步骤包括:
用一图像检测器捕获第二图象;
使表示第二图像的信息与表示在图像存储器中储存的第二储存的图象的信息相符。
23.如权利要求22所述的方法,其特征在于所述改变操作模式的步骤包括:
提供与第二储存的图像关联的一模式值,所述模式值是表示计算机操作的第二模式的。
24.如权利要求18所述的方法,其特征在于所述控制步骤包括:改变用户输入装置的操作参数。
25.如权利要求24所述的方法,其特征在于所述用户输入包括表示所述输入装置相对于所述表面的移动的位置信息,其中所述控制步骤包括:
根据用户输入装置是否移动通过所述表面的第一部分或所述表面的第二部分,对于所述用户输入装置相对于所述表面的一给出距离的移动,改变由用户输入装置输出的位置信息。
26.如权利要求24所述的方法,其特征在于所述用户输入包括表示所述输入装置相对于所述表面的移动的位置信息,其中所述控制步骤包括:
根据从检测第一图像到检测第二图像的变化,改变与所述输入装置相对于所述表面的给出距离的移动关联的位置信息。
27.如权利要求24所述的方法,其特征在于所述用户输入包括位置信息,其中所述控制步骤包括:
根据用户输入装置是否检测第一图像或第二图像,将位置信息从表示所述用户输入装置相对于所述表面的移动的相对位置信息改变到表示所述用户输入装置相对于所述表面的的绝对位置的绝对位置信息。
28.一种控制计算机的方法,其特征在于包括以下步骤:
提供可相对于一表面移动的一计算机输入装置;
利用所述计算机输入装置检测在所述表面上的光学的图案;
设置所述的计算机,按照基于检测的所述表面上的所述光学的图案的操作特性运转;
其中控制器被设置为对所述图案检测器在检测第一预定图案部分和检测第二预定图案部分之间的切换做出响应,改变计算机输入装置的输入模式。
29.如权利要求28所述的方法,其特征在于还包括:
根据所述计算机输入装置相对于所述表面的移动向计算机提供位置信息。
30.如权利要求29所述的方法,其特征在于所述提供位置信息的步骤包括:
检测在所述表面上的非预定图像;
相对于所述表面移动所述用户输入装置;
检测所述非预定图像相对于所述用户输入装置的相对位置中的变化。
31.一种用于向计算机提供输入信息的计算机输入装置,其特征在于包括:
一个位置变换器,它被设置成根据所述计算机输入装置相对于一表面的位置提供位置信息;
所述位置信息用于在计算机屏幕上定位显示单元;
一个图案检测器,它被设置为检测在所述表面上的表面图案的光学图案的第一和第二预定图像;
一个控制器,它连接到所述图案检测器,并被配置成产生用于向所述计算机传输的图案信息以便控制计算机的操作模式,所述图案信息是表示所述图案检测器是否正在检测光学图案的第一预定图像或第二图案的图案信息。
32.如权利要求31所述的计算机输入装置,其特征在于所述控制器被设置成产生第一信息包,所述第一信息包包括包含代表所述图案检测器检测的所述第一图案的第一图案信息的一图案部分。
33.如权利要求31所述的计算机输入装置,其特征在于所述控制器被设置成产生第二信息包,所述第二信息包包括包含代表所述图案检测器检测的所述第二图案的第二图案信息的一图案部分。
34.如权利要求33所述的计算机输入装置,其特征在于所述控制器被配置为产生具有第一多个预定光学图像图案信息的所述第一信息包,所述第一多个预定光学图像图案信息表示以第一距离间隔开的第一多个预定图像,其中所述控制器被配置为产生具有第二图案信息的第二信息包,所述第二图案信息表示以第二距离间隔开的第二多个预定光学图像。
35.如权利要求33所述的计算机输入装置,其特征在于所述控制器被配置为产生具有所述第一图案信息的所述第一信息包,所述第一图案信息表示按跨过所述第一光学图案在变化的一个距离彼此间隔开的第一多个光学图像。
CNB998031674A 1998-12-21 1999-12-21 图像检测操作者输入装置 Expired - Fee Related CN1152346C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/217,403 1998-12-21
US09/217,403 US6303924B1 (en) 1998-12-21 1998-12-21 Image sensing operator input device

Publications (2)

Publication Number Publication Date
CN1291316A CN1291316A (zh) 2001-04-11
CN1152346C true CN1152346C (zh) 2004-06-02

Family

ID=22810933

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB998031674A Expired - Fee Related CN1152346C (zh) 1998-12-21 1999-12-21 图像检测操作者输入装置

Country Status (8)

Country Link
US (2) US6303924B1 (zh)
EP (2) EP1062627B1 (zh)
JP (1) JP4994532B2 (zh)
KR (3) KR100709078B1 (zh)
CN (1) CN1152346C (zh)
AU (1) AU3127200A (zh)
DE (1) DE69919521T2 (zh)
WO (1) WO2000038103A2 (zh)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256016B1 (en) 1997-06-05 2001-07-03 Logitech, Inc. Optical detection system, device, and method utilizing optical matching
US6303924B1 (en) 1998-12-21 2001-10-16 Microsoft Corporation Image sensing operator input device
AUPQ363299A0 (en) * 1999-10-25 1999-11-18 Silverbrook Research Pty Ltd Paper based information inter face
US6483101B1 (en) 1999-12-08 2002-11-19 Amkor Technology, Inc. Molded image sensor package having lens holder
US6766456B1 (en) 2000-02-23 2004-07-20 Micron Technology, Inc. Method and system for authenticating a user of a computer system
US8013840B1 (en) 2000-04-06 2011-09-06 Microsoft Corporation User notification system with an illuminated computer input device
US7161578B1 (en) 2000-08-02 2007-01-09 Logitech Europe S.A. Universal presentation device
US7116807B1 (en) * 2000-09-22 2006-10-03 Ge Medical Systems Global Technology Company, Llc Method and apparatus for linking images and reports at remote view station
US6583781B1 (en) * 2000-10-17 2003-06-24 International Business Machines Corporation Methods, systems and computer program products for controlling events associated with user interface elements by capturing user intent based on pointer movements
US6781570B1 (en) 2000-11-09 2004-08-24 Logitech Europe S.A. Wireless optical input device
GB0029590D0 (en) * 2000-12-05 2001-01-17 Univ Heriot Watt Bio-strings
US7059040B1 (en) 2001-01-16 2006-06-13 Amkor Technology, Inc. Optical module with lens integral holder fabrication method
US6922488B2 (en) * 2001-02-16 2005-07-26 International Business Machines Corporation Method and system for providing application launch by identifying a user via a digital camera, utilizing an edge detection algorithm
US6977645B2 (en) * 2001-03-16 2005-12-20 Agilent Technologies, Inc. Portable electronic device with mouse-like capabilities
US7061468B2 (en) 2001-04-10 2006-06-13 Logitech Europe S.A. Hybrid presentation controller and computer input device
US7333083B1 (en) 2001-05-10 2008-02-19 Logitech Europe S.A. Optical based performance improvement for an optical illumination configuration
US6823077B2 (en) * 2001-07-30 2004-11-23 Agilent Technologies, Inc. Simplified interpolation for an optical navigation system that correlates images of one bit resolution
US6847353B1 (en) 2001-07-31 2005-01-25 Logitech Europe S.A. Multiple sensor device and method
US6661410B2 (en) * 2001-09-07 2003-12-09 Microsoft Corporation Capacitive sensing and data input device power management
US7034805B2 (en) * 2001-11-02 2006-04-25 Kye Systems Corp. Optical trackball
US6750846B2 (en) * 2001-12-05 2004-06-15 Em Microelectronic - Marin Sa Sensing device for optical pointing devices such as an optical mouse
US7131751B1 (en) 2002-04-12 2006-11-07 Logitech, Inc. Attachment system for use in an optical illumination system
US6954867B2 (en) * 2002-07-26 2005-10-11 Microsoft Corporation Capacitive sensing employing a repeatable offset charge
US7146106B2 (en) 2002-08-23 2006-12-05 Amkor Technology, Inc. Optic semiconductor module and manufacturing method
US6891143B2 (en) * 2002-10-30 2005-05-10 Microsoft Corporation Photo-sensor array with pixel-level signal comparison
US6906304B2 (en) * 2002-11-27 2005-06-14 Microsoft Corporation Photo-sensor array for motion detection
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US7113087B1 (en) 2003-04-08 2006-09-26 Microsoft Corporation Proximity sensing based on antenna impedance variation
US20040227954A1 (en) * 2003-05-16 2004-11-18 Tong Xie Interferometer based navigation device
US7321359B2 (en) * 2003-07-30 2008-01-22 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Method and device for optical navigation
US7161585B2 (en) * 2003-07-01 2007-01-09 Em Microelectronic-Marin Sa Displacement data post-processing and reporting in an optical pointing device
US20050009605A1 (en) * 2003-07-11 2005-01-13 Rosenberg Steven T. Image-based control of video games
US20050012022A1 (en) * 2003-07-17 2005-01-20 Kye Systems Corp. Optical input device with variable illumination for detecting movement on working surfaces having different optical characteristics
CN1545074A (zh) * 2003-11-17 2004-11-10 炼 杨 一种具有视觉识别功能的遥控装置
US20050135659A1 (en) * 2003-12-19 2005-06-23 Smith John D. Optical motion sensor
US9229540B2 (en) 2004-01-30 2016-01-05 Electronic Scripting Products, Inc. Deriving input from six degrees of freedom interfaces
US7961909B2 (en) 2006-03-08 2011-06-14 Electronic Scripting Products, Inc. Computer interface employing a manipulated object with absolute pose detection component and a display
US7613329B2 (en) 2004-03-08 2009-11-03 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Apparatus for controlling the position of a screen pointer that detects defective pixels
US7295183B2 (en) 2004-03-09 2007-11-13 Em Microelectronic-Marin Sa Extension of battery life in a battery-powered optical pointing device
US7474297B2 (en) 2004-03-22 2009-01-06 Avago Technologies Ecbu Ip (Singapore) Pte. Contaminant-resistant optical mouse and cradle
US7446756B2 (en) 2004-03-22 2008-11-04 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Apparatus for controlling the position of a screen pointer with low sensitivity to particle contamination
US7439954B2 (en) 2004-04-15 2008-10-21 Logitech Europe S.A. Multi-light-source illumination system for optical pointing devices
US7369230B1 (en) 2004-04-30 2008-05-06 Donald Scott Rogers Apparatus and method for measuring particulate flow rate
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
TWI238358B (en) * 2004-05-12 2005-08-21 Sunplus Technology Co Ltd Optical mouse with shielding compensation, and the method for shielding compensation
US7315013B2 (en) 2004-06-17 2008-01-01 Avago Technologies Ecbu Ip (Singapore) Pte Ltd. Optical navigation using one-dimensional correlation
US8872899B2 (en) * 2004-07-30 2014-10-28 Extreme Reality Ltd. Method circuit and system for human to machine interfacing by hand gestures
US8928654B2 (en) 2004-07-30 2015-01-06 Extreme Reality Ltd. Methods, systems, devices and associated processing logic for generating stereoscopic images and video
KR101323966B1 (ko) 2004-07-30 2013-10-31 익스트림 리얼리티 엘티디. 이미지 프로세싱을 기반으로 한 3d 공간 차원용 시스템 및 방법
US8681100B2 (en) 2004-07-30 2014-03-25 Extreme Realty Ltd. Apparatus system and method for human-machine-interface
US7528824B2 (en) * 2004-09-30 2009-05-05 Microsoft Corporation Keyboard or other input device using ranging for detection of control piece movement
US7359579B1 (en) 2004-10-08 2008-04-15 Amkor Technology, Inc. Image sensor package and its manufacturing method
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US8464348B2 (en) * 2004-11-15 2013-06-11 Microsoft Corporation Isolated computing environment anchored into CPU and motherboard
US8176564B2 (en) 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US7679605B2 (en) * 2005-02-25 2010-03-16 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Optical mouse with barcode reading function
US20060213997A1 (en) * 2005-03-23 2006-09-28 Microsoft Corporation Method and apparatus for a cursor control device barcode reader
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US7230727B2 (en) * 2005-04-22 2007-06-12 Agilent Technologies, Inc. System for sensing an absolute position in two dimensions using a target pattern
US7227236B1 (en) 2005-04-26 2007-06-05 Amkor Technology, Inc. Image sensor package and its manufacturing method
US7399953B2 (en) * 2005-05-06 2008-07-15 Avago Technologies Ecbu Ip Pte Ltd Light source control in optical pointing device
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8353046B2 (en) 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
WO2006137077A1 (en) * 2005-06-20 2006-12-28 Hewlett-Packard Development Company, L.P. A pointing device with absolute and relative positioning capability
US7898524B2 (en) 2005-06-30 2011-03-01 Logitech Europe S.A. Optical displacement detection over varied surfaces
US7557795B2 (en) * 2005-06-30 2009-07-07 Microsoft Corporation Input device using laser self-mixing velocimeter
KR100639681B1 (ko) * 2005-07-04 2006-10-30 주식회사 애트랩 광 마우스 및 광 마우스 시스템 및 이들의 방법
US7576401B1 (en) 2005-07-07 2009-08-18 Amkor Technology, Inc. Direct glass attached on die optical module
US9404882B2 (en) * 2005-08-11 2016-08-02 New Mexico Tech Research Foundation Method of producing a multi-microchannel, flow-through element and device using same
US7399954B2 (en) * 2005-08-16 2008-07-15 Avago Technologies Ecbu Ip Pte Ltd System and method for an optical navigation device configured to generate navigation information through an optically transparent layer and to have skating functionality
US8224024B2 (en) * 2005-10-04 2012-07-17 InterSense, LLC Tracking objects with markers
US20070285554A1 (en) 2005-10-31 2007-12-13 Dor Givon Apparatus method and system for imaging
US9046962B2 (en) 2005-10-31 2015-06-02 Extreme Reality Ltd. Methods, systems, apparatuses, circuits and associated computer executable code for detecting motion, position and/or orientation of objects within a defined spatial region
US7543750B2 (en) * 2005-11-08 2009-06-09 Microsoft Corporation Laser velocimetric image scanning
EP1946152B1 (en) * 2005-11-10 2014-03-12 Halliburton Energy Services, Inc. Displaced electrode amplifier
US20070109267A1 (en) * 2005-11-14 2007-05-17 Microsoft Corporation Speckle-based two-dimensional motion tracking
US7505033B2 (en) * 2005-11-14 2009-03-17 Microsoft Corporation Speckle-based two-dimensional motion tracking
US8063881B2 (en) * 2005-12-05 2011-11-22 Cypress Semiconductor Corporation Method and apparatus for sensing motion of a user interface mechanism using optical navigation technology
US7488926B2 (en) * 2006-01-06 2009-02-10 Microsoft Corporation Pixel array with shared pixel output lines
US7714844B2 (en) * 2006-04-21 2010-05-11 Avago Technologies General Ip (Singapore) Pte. Ltd. Dynamic self-switchable CPI resolution for an optical mouse sensor
EP1860529A1 (fr) 2006-05-24 2007-11-28 Stmicroelectronics Sa Souris a gain variable
US9141230B2 (en) * 2006-08-30 2015-09-22 Avaoo Technologies General IP (Singapore) Pte. Ltd. Optical sensing in displacement type input apparatus and methods
US7675630B2 (en) * 2007-01-24 2010-03-09 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. System and method for selectively setting optical navigation resolution
FR2911996A1 (fr) 2007-01-31 2008-08-01 St Microelectronics Sa Protection des circuits electroniques integres contre les decharges electrostatiques.
US7886978B2 (en) * 2007-09-20 2011-02-15 Microsoft Corporation Techniques for decoding images of barcodes
US8169420B2 (en) * 2008-02-05 2012-05-01 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Reporting optical tracking data based on integrated resolution switching and surface detection
US8696458B2 (en) * 2008-02-15 2014-04-15 Thales Visionix, Inc. Motion tracking system and method using camera and non-camera sensors
US20110157070A1 (en) * 2009-12-31 2011-06-30 Silicon Laboratories Inc. System and method for configuring capacitive sensing speed
CA2735992A1 (en) * 2008-09-04 2010-03-11 Extreme Reality Ltd. Method system and software for providing image sensor based human machine interfacing
US8548258B2 (en) 2008-10-24 2013-10-01 Extreme Reality Ltd. Method system and associated modules and software components for providing image sensor based human machine interfacing
US8188419B2 (en) 2009-05-08 2012-05-29 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Eccentric field imaging lens with titlted and decentered surfaces
EP2441031B1 (en) * 2009-06-11 2014-10-01 Hewlett-Packard Development Company, L.P. Decoding a physical image
US8878779B2 (en) 2009-09-21 2014-11-04 Extreme Reality Ltd. Methods circuits device systems and associated computer executable code for facilitating interfacing with a computing platform display screen
JP2013505493A (ja) 2009-09-21 2013-02-14 エクストリーム リアリティー エルティーディー. 電子機器とのヒューマン・マシン・インタフェーシングの為の方法、回路、装置及びシステム
DE102011014968A1 (de) * 2011-03-24 2012-09-27 Peter Schmidt Daten-Eingabegerät und Datenübertragungsverfahren unter Verwendung des Eingabegerätes
WO2012142254A2 (en) * 2011-04-15 2012-10-18 Saint Louis University Input device
JP5433812B1 (ja) * 2013-08-27 2014-03-05 株式会社 ディー・エヌ・エー 認証装置及び認証プログラム
US9778749B2 (en) 2014-08-22 2017-10-03 Google Inc. Occluded gesture recognition
US11169988B2 (en) 2014-08-22 2021-11-09 Google Llc Radar recognition-aided search
US9600080B2 (en) 2014-10-02 2017-03-21 Google Inc. Non-line-of-sight radar-based gesture recognition
KR102236958B1 (ko) 2015-04-30 2021-04-05 구글 엘엘씨 제스처 추적 및 인식을 위한 rf―기반 마이크로―모션 추적
US10088908B1 (en) 2015-05-27 2018-10-02 Google Llc Gesture detection and interactions
US10817065B1 (en) 2015-10-06 2020-10-27 Google Llc Gesture recognition using multiple antenna
US11003345B2 (en) 2016-05-16 2021-05-11 Google Llc Control-article-based control of a user interface
WO2017197549A1 (zh) * 2016-05-16 2017-11-23 深圳维盛半导体科技有限公司 一种dpi自动调节的鼠标及方法
US11577159B2 (en) 2016-05-26 2023-02-14 Electronic Scripting Products Inc. Realistic virtual/augmented/mixed reality viewing and interactions
CN108108030B (zh) * 2016-11-24 2021-01-29 哈帝斯科技股份有限公司 计算机输入设备及其输入方法
US10852856B2 (en) * 2017-03-14 2020-12-01 Hades-Gaming Corp. Computer input apparatus and input method thereof
TW201835727A (zh) * 2017-03-15 2018-10-01 原相科技股份有限公司 光學滑鼠及其參數校正方法
EP4004686A1 (en) 2019-07-26 2022-06-01 Google LLC Authentication management through imu and radar
US11868537B2 (en) 2019-07-26 2024-01-09 Google Llc Robust radar-based gesture-recognition by user equipment
JP7346595B2 (ja) 2019-07-26 2023-09-19 グーグル エルエルシー レーダーベースのジェスチャー認識の状況感知型制御
KR102479012B1 (ko) 2019-08-30 2022-12-20 구글 엘엘씨 일시정지된 레이더 제스처에 대한 시각적 표시자
KR20210151957A (ko) 2019-08-30 2021-12-14 구글 엘엘씨 모바일 디바이스에 대한 입력 방법

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4364035A (en) 1981-05-18 1982-12-14 Kirsch Steven T Electro-optical mouse
US4390873A (en) * 1981-05-18 1983-06-28 Kirsch Steven T Electronic mouse
US4856785A (en) 1983-03-01 1989-08-15 Williams Electronics, Inc. Optical dual function joystick
US4578674A (en) 1983-04-20 1986-03-25 International Business Machines Corporation Method and apparatus for wireless cursor position control
USD281776S (en) 1983-11-21 1985-12-17 Illinois Tool Works Inc. Remote control hemisphere switch
KR920002254B1 (ko) 1983-12-05 1992-03-20 닛신 고오기 가부시끼가이샤 광학식 마우스
US4799055A (en) 1984-04-26 1989-01-17 Symbolics Inc. Optical Mouse
US4682159A (en) 1984-06-20 1987-07-21 Personics Corporation Apparatus and method for controlling a cursor on a computer display
US4712101A (en) 1984-12-04 1987-12-08 Cheetah Control, Inc. Control mechanism for electronic apparatus
US4736191A (en) 1985-08-02 1988-04-05 Karl E. Matzke Touch activated control method and apparatus
US4857903A (en) 1986-05-06 1989-08-15 Summagraphics Corporation Electro-optical mouse with improved resolution for compensation of optical distortion
US4751505A (en) 1986-06-23 1988-06-14 Xerox Corporation Optical mouse
USD302010S (en) 1986-07-21 1989-07-04 Itac Systems, Inc. Computer cursor control
US4797544A (en) 1986-07-23 1989-01-10 Montgomery James R Optical scanner including position sensors
US4804949A (en) 1987-03-20 1989-02-14 Everex Ti Corporation Hand-held optical scanner and computer mouse
US4961138A (en) 1987-05-01 1990-10-02 General Datacomm, Inc. System and apparatus for providing three dimensions of input into a host processor
US4906843A (en) 1987-12-31 1990-03-06 Marq Technolgies Combination mouse, optical scanner and digitizer puck
US4922236A (en) 1988-04-25 1990-05-01 Richard Heady Fiber optical mouse
USD315896S (en) 1989-04-20 1991-04-02 Northern Telecom Limited Keypad
US5367315A (en) 1990-11-15 1994-11-22 Eyetech Corporation Method and apparatus for controlling cursor movement
JPH07117872B2 (ja) 1991-04-22 1995-12-18 株式会社デジタルストリーム ワイヤレス方式コンピュータ入力装置
US5349371A (en) 1991-06-04 1994-09-20 Fong Kwang Chien Electro-optical mouse with means to separately detect the changes in contrast ratio in X and Y directions
US5298919A (en) 1991-08-02 1994-03-29 Multipoint Technology Corporation Multi-dimensional input device
US5274361A (en) 1991-08-15 1993-12-28 The United States Of America As Represented By The Secretary Of The Navy Laser optical mouse
US5347275A (en) 1991-10-03 1994-09-13 Lau Clifford B Optical pointer input device
JPH05181598A (ja) 1991-12-27 1993-07-23 Nisshin Koki Kk 光学式マウス及び樹脂製レンズユニット
US5420943A (en) 1992-04-13 1995-05-30 Mak; Stephen M. Universal computer input device
US5517211A (en) 1992-05-14 1996-05-14 Kwang-Chien; Fong Optical signal detector for an electro-optical mouse
US5355149A (en) 1992-05-27 1994-10-11 Spacelabs Medical, Inc. Scanning system for touch screen keyboards
US5680157A (en) 1992-08-10 1997-10-21 Logitech, Inc. Pointing device with differential optomechanical sensing
US5577848A (en) 1992-08-24 1996-11-26 Bowen; James H. Light controlled touch pad for cursor and selection control on a computer display
US5729009A (en) 1992-10-05 1998-03-17 Logitech, Inc. Method for generating quasi-sinusoidal signals
US5703356A (en) 1992-10-05 1997-12-30 Logitech, Inc. Pointing device utilizing a photodetector array
DE4237440C1 (de) 1992-11-06 1994-03-10 Deutsche Forsch Luft Raumfahrt Vorrichtung zur dreidimensionalen Bestimmung von Strömungen
GB2272763B (en) 1992-11-14 1996-04-24 Univ Sheffield Device and method for determining movement
US5471542A (en) 1993-09-27 1995-11-28 Ragland; Richard R. Point-of-gaze tracker
JP3419050B2 (ja) 1993-11-19 2003-06-23 株式会社日立製作所 入力装置
US5557440A (en) 1994-01-05 1996-09-17 Microsoft Corporation Noise-insensitive optoencoding techniques with compensation for device variations
GB2289756B (en) 1994-05-26 1998-11-11 Alps Electric Co Ltd Space coordinates detecting device and input apparatus using same
US5428369A (en) 1994-06-07 1995-06-27 Kensington Microware Limited Computer pointing device
US5525764A (en) 1994-06-09 1996-06-11 Junkins; John L. Laser scanning graphic input system
US5686942A (en) 1994-12-01 1997-11-11 National Semiconductor Corporation Remote computer input system which detects point source on operator
US5532476A (en) 1994-12-21 1996-07-02 Mikan; Peter J. Redundant indicator for detecting neutral position of joystick member
JP3006448B2 (ja) 1995-02-09 2000-02-07 富士ゼロックス株式会社 情報入出力システム
US5558329A (en) 1995-03-01 1996-09-24 Liu; William S. Y. Photoelectric digitized joystick
US5644337A (en) 1995-06-06 1997-07-01 Zenith Electronics Corporation Trackball having single emitter-detector detecting chopper wheel direction
US5694153A (en) 1995-07-31 1997-12-02 Microsoft Corporation Input device for providing multi-dimensional position coordinate signals to a computer
GB9516441D0 (en) 1995-08-10 1995-10-11 Philips Electronics Uk Ltd Light pen input systems
DE29515871U1 (de) 1995-10-09 1995-11-16 Top Display Beratungs Und Prod Spielset
US5848231A (en) 1996-02-12 1998-12-08 Teitelbaum; Neil System configuration contingent upon secure input
GB2312040A (en) 1996-04-13 1997-10-15 Xerox Corp A computer mouse
US6303924B1 (en) 1998-12-21 2001-10-16 Microsoft Corporation Image sensing operator input device

Also Published As

Publication number Publication date
WO2000038103A3 (en) 2000-10-26
CN1291316A (zh) 2001-04-11
KR20070015231A (ko) 2007-02-01
US6303924B1 (en) 2001-10-16
AU3127200A (en) 2000-07-12
KR100767655B1 (ko) 2007-10-17
EP1291810A3 (en) 2006-02-01
KR100709078B1 (ko) 2007-04-19
KR20010041167A (ko) 2001-05-15
DE69919521D1 (de) 2004-09-23
DE69919521T2 (de) 2005-09-01
KR100771064B1 (ko) 2007-10-30
KR20070015230A (ko) 2007-02-01
WO2000038103A2 (en) 2000-06-29
EP1291810A2 (en) 2003-03-12
US6373047B1 (en) 2002-04-16
JP4994532B2 (ja) 2012-08-08
EP1062627A2 (en) 2000-12-27
EP1062627B1 (en) 2004-08-18
JP2002533817A (ja) 2002-10-08

Similar Documents

Publication Publication Date Title
CN1152346C (zh) 图像检测操作者输入装置
CN1855013A (zh) 用于识别数据输入终止的系统和方法
CN1862590A (zh) 使用识别文本处理交易的方法和系统
CN1294525C (zh) 用于产生位置编码图案的打印输出方法、系统、打印机装置和打印机
CN1269014C (zh) 字符输入装置
CN1947125A (zh) 自适应光学图像读取器
CN1589426A (zh) 电子笔以及用于记录手写信息的方法
US20060082557A1 (en) Combined detection of position-coding pattern and bar codes
CN1866184A (zh) 2-d阵列中的译码和差错校正
CN1637698A (zh) 通用计算设备的光学系统设计
US20130140354A1 (en) Dual resolution two-dimensional barcode
CN1932739A (zh) 字符读取器、字符读取方法和字符读取程序
JP2016076210A (ja) 情報コードの生成方法、情報コードを生成するプログラム、及び情報コード生成装置
CN1691052A (zh) 用于光学设备和预制表面的编码图案
WO2008002239A1 (en) Operation control and data processing in an electronic pen
CN104548586A (zh) 信息输出装置、媒体及信息输入/输出装置
CN1402855A (zh) 用于编码的电子墨水表面的检测元件
JP4973310B2 (ja) 電子筆記具、コンピュータシステム
CN1722071A (zh) 用于复合跟踪系统的方法和装置
CN1514402A (zh) 数据处理装置
CN107425019A (zh) 具有量子点成像器的成像和解码装置
CN1499443A (zh) 被动嵌入的交互编码
CN1739084A (zh) 快速输入设备
CN1691729A (zh) 图像数据通信系统、图像服务器、便携式电子装置及控制方法
CN100342318C (zh) 用于位置确定的设备、方法和计算机程序

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040602

Termination date: 20131221