CN100433044C - 用于以表面上的符号图案对数据进行编码的方法和系统 - Google Patents

用于以表面上的符号图案对数据进行编码的方法和系统 Download PDF

Info

Publication number
CN100433044C
CN100433044C CNB2005100659965A CN200510065996A CN100433044C CN 100433044 C CN100433044 C CN 100433044C CN B2005100659965 A CNB2005100659965 A CN B2005100659965A CN 200510065996 A CN200510065996 A CN 200510065996A CN 100433044 C CN100433044 C CN 100433044C
Authority
CN
China
Prior art keywords
symbol
window
binary
sequence
deep
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
CNB2005100659965A
Other languages
English (en)
Other versions
CN1691052A (zh
Inventor
C·拉扎斯
G·拉森
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 Technology Licensing LLC
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 CN1691052A publication Critical patent/CN1691052A/zh
Application granted granted Critical
Publication of CN100433044C publication Critical patent/CN100433044C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • 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
    • G06F3/0321Detection 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 by optically sensing the absolute position with respect to a regularly patterned surface forming a passive digitiser, e.g. pen optically detecting position indicative tags printed on a paper sheet

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Processing (AREA)
  • Character Input (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请涉及用于光学设备和预制表面的编码图案。以表面上的符号图案对数据进行编码。处理器将可以表示编码数据的有序数字序列分割成多个连续窗口。该连续窗口中的每一个包括有序数字序列中的一部分序列。该处理器进一步将每个连续窗口中所包括的部分序列转换成一系列数字。符号被配置在表面的多个表面窗口内。每个表面窗口对应于该连续窗口中的一个。基于数字的被转换的系列中的一个,该符号被置于每个表面窗口内。而且,表面窗口内的符号的位置可以指示编码数据。

Description

用于以表面上的符号图案对数据进行编码的方法和系统
技术领域
本发明的实施例涉及与表面进行交互以便确定该表面上被编码的信息的光学设备。尤其是,此发明的实施例涉及具有一种图案的表面,它包括符号,所述符号基于被划分到多个窗口中的有序数字序列并且指示被编码信息。
发明背景
计算机用户习惯于使用鼠标或键盘作为与个人计算机进行交互的方式。虽然通过鼠标或键盘输入信息提供了许多优点,但是大多数用户依旧通过(例如,在纸上或在手写板上)对手写文档进行排版来实现某些功能。手写文档优于电子文档的一些优点包括其可读性和便携性。其它优点包括能方便地完成手写文档的归档的简易性。然而,撰写手写文档的难点之一是需要将手写文档转换成电子形式。这就要求初始用户或另一个用户将写在所述文档中的信息人工输入到个人计算机中。在一些情况下,用户将会扫描手写文档,由此创建新的电子文档。如此多的步骤使得初始文档和电子形式的文档之间的交互难于在重复的基础上进行处理。还有,被扫描输入的图像常常是不可修改的。这使用户难以以电子形式更改信息。
在预先存在的文档上创建注释方面也存在类似的难点。当把手写注释转换成电子形式时,用户常常需要将注释人工地输入到个人计算机中或者扫描所述注释。因为被扫描输入的图像常常是不可修改的,所以难以将所述注释与预先存在的文档的原始信息分离开。因此,需要一种将手写信息转换成电子形式的改进方法。
已经研究出分析在表面上被编码的图案来确定所述表面上的光学设备的位置的方法和系统。然而,一些现有图案不具备有效的墨水用法。也就是,现有的方法和系统往往需要大量的墨水或其它手段来将一种图案嵌在一个表面上。还有,一些现有方法和系统并不提供一种图案,当在用所述图案编码的表面上执行一种功能(例如,在所述表面上写)时,所述图案外表上足够光滑以致有效地防止了用户通过这种图案被分散注意。还有,现有方法和系统无法提供具有可变信息密度的图案。因此,现有方法和系统通常不允许按照希望编码数据的墨水密度的按比例缩放。此外,一些现有图案不易产生、解码和/或有效地编码各种有效负载数据。
因此,希望有一种以符号图案有效地编码数据和解码符号图案以便确定对应于所述图案的数据的方法,以解决这些和其它缺点中的一个或多个问题。
发明概述
通过,尤其是,提供用于编码和解码在表面例如纸或计算机显示器上的一种符号图案的系统和方法,本发明的实施例克服了现有技术中的一个或多个不足。所述符号图案可以表示编码数据,例如位置数据、多媒体(例如,音频、图像等)、安全应用、生物统计学、识别管理、其它大宗数据或到其它数据的链路。在一个实施例中,本发明唯一地识别与所述表面有关的位置。按照本发明的一个或多个实施例,通过检测对应于在所述表面上编码的位置数据的符号,光学设备例如数字笔或触针(stylus)有利地跟踪其在预制表面上的绝对位置。在本发明的一个或多个实施例中,依据通过打印处理,例如激光打印机或喷墨打印机而被嵌入的图案,用可表示所述位置数据的符号,编码所述表面。接着,光学设备的传感器可以检测所述符号并且解码所述符号图案表示的所述数据。此外,此处所描述的本发明的实施例的特征在经济上是切实可行的、在商业上是可实施的,并且比当前可用的技术更易于实现。
如简要描述的,利用本发明的多个方面的方法以表面上的符号图案对数据进行编码。该方法包括将可表示编码数据的有序数字序列划分为多个连续窗口。每个连续窗口包括有序数字序列的一部分序列。该方法还包括将每个连续窗口中所包括的部分序列转换为一系列数字。该方法还包括在所述表面上的多个表面窗口内排列符号。每个表面窗口对应于连续窗口中的一个。每个表面窗口内的符号的位置是基于所述被转换系列的数字中的一个的。而且,表面窗口内的符号的位置可以表示编码数据。
在本发明的另一实施例中,利用本发明的多个方面的方法对表面上的符号图案进行解码以便确定对应于该图案的数据。该图案被划分为该表面上的多个窗口。该方法包括检测该表面上的符号以确定其图案。该方法还包括为已被确定的图案确定窗口边界。窗口边界指定所述窗口中的至少一个。而且每个被指定的窗口包括与其相关的被检测符号中的至少一个。该方法还包括确定所述相关窗口内被检测符号的位置。所述相关窗口内被检测符号的被确定的位置指示对应于所述图案的数据。
在本发明的又一实施例中,利用本发明的多个方面的产品包括表面和该表面上的图案。该图案具有位于该表面上的符号。并且每个符号具有基于可表示编码数据的有序数字序列并且被划分为多个窗口的位于该表面上的位置。每个窗口包括所述符号中的至少一个。而且,所述窗口内的符号的位置指示所述编码数据。
在本发明的又一实施例中,利用本发明的多个方面的系统适用于以表面上的符号图案对数据进行编码。该系统包括被配置为执行用于将表示编码数据的有序数字序列分成多个连续窗口的计算机可执行指令的处理器。每个连续窗口包括所述数字有序序列中的一部分序列。该处理器还被配置为执行用于将每个连续窗口中所包含的所述部分序列转换成一系列数字的计算机可执行指令。该系统还包括用于在所述表面上的多个表面窗口内排列符号。每个表面窗口对应于所述连续窗口中的一个。每个表面窗口内的符号的位置是基于数字的被转换系列中的一个的。而且,所述表面窗口内的符号的位置可以表示编码数据。
在本发明的又一实施例中,利用本发明的多个方面的系统适用于对表面上的符号图案进行解码,以便确定对应于所述图案的数据。该图案被划分为该表面上的多个窗口。该系统包括用于检测该表面上的符号以便确定其图案的传感器。该系统还包括被配置为能执行计算机可执行指令的处理器,以为被确定的图案确定窗口边界。该窗口边界指定所述窗口中的至少一个。而且每个被指定的窗口包括与其相关的被检测符号中的至少一个。该处理器还被配置为执行计算机可执行指令识别相关窗口内被检测符号的位置,以便确定对应于所述图案的数据。
具有计算机可执行指令的计算机可读介质进一步体现了本发明的多个方面,所述计算机可执行指令用于实现对表面上的符号图案进行编码和解码的方法。
可替换地,本发明的实施例可以包括各种其它方法和装置。
下文中,其它特征将在某种程度上变得明显并且在某种程度上被指明。
附图的简要说明
图1A是说明了按照本发明的一个实施例的示例性光学设备的方块图。
图1B是说明了按照本发明的一个实施例的由光学设备检测的示例性图像的配置的方块图。
图2是说明了按照本发明的一个实施例的被配置为矩形阵列/矩阵的示例性数字序列的方块图。
图3A至3C是说明了按照本发明的一个实施例的将数字的序列编码成表面上的符号图案的示例性处理的步骤的图。
图4A至4E是说明了按照本发明的一个实施例的对表面上的符号图案进行解码的示例性处理的步骤的图。
图5是说明了按照本发明的一个实施例的用于确定被检测图像的位置的处理流程的示例性流程图。
图6是说明了按照本发明的一个实施例的用于对有序数字序列进行编码的处理流程的示例性流程图。
图7是说明了其中可以实现本发明的实施例的合适的计算机系统环境的示例性实施例的方块图。
所有附图中,对应的参考标记指示对应的部分。
本发明的详细说明
示例性光学设备
本发明的实施例涉及与表面进行交互以便确定所述表面上编码信息的光学设备(例如,光学图像传感器或光学读取设备)。在本发明的一个实施例中,该光学设备可以被实现为多功能笔或触针。本发明的多个方面还包括以显示的形式放置符号图案。该符号图案可以表示编码数据,例如位置数据、多媒体(例如,音频、视频、图像等)、安全应用、生物统计、识别管理、其它大宗数据、或者到其它数据的链路。在一个实施例中,所述显示形式是打印纸(或其它物理介质)或者显示器,能投影或者包含与其它图像或图像集合相结合的符号的编码图案。例如,符号的被编码图案可以被表示为所述纸上的物理图像、覆盖在另一个被显示图像上的或位于另一个被显示图像下面的图像、或者与显示屏幕组合或者覆盖在显示屏幕上的被理编码的图案(例如,不可修改的图案)(由此被光学设备检测到的图像可以置于显示屏幕上)。
在本发明的一个实施例中,光学设备被实现为用于在纸上写的墨水笔。在本发明的另一个实施例中,光学设备被实现为用于在计算机显示器的表面上写的触针。通过对表面上的光学设备的位置反复地检测一段时间,系统可以跟踪与写相关的光学设备在表面上的移动和位置。由此,这种移动可以表示“数字墨水”。
图1A示出了按照本发明一个实施例的实现为具有相机104或其它检测器的笔102的示例性光学设备。笔102包括笔尖106,它可以包括也可以不包括墨水容器。相机104检测和捕获来自表面110的位置108的图像。笔102还可以包括如用虚线框112所表示的辅助传感器和/或处理器。这些传感器和/或处理器112具有(例如,通过蓝牙或其它无线协议)将与被检测图像有关的信息传输给另一个笔102和/或另一台设备的能力,所述另一台设备例如个人计算机、个人数字助理(PDA)、电话等。如果笔102不包括传感器和/或处理器112,它可以通过有线(即,不是无线发射器)将与被检测图像有关的信息传输给另一个笔102和/或个人计算机。
图1B说明了按照本发明的实施例的如用相机104所观察到的示例性图像的配置。在此示意性图像中,相机104的视域是32×32象素(其中N=32)。因此,图1B示出了32个象素长乘32个象素宽的视域。N的大小是基于所期望的图像分辨率的程度而被指定的。还有,虽然为了说明起见,相机104的视域在图1B中被显示为正方形,但是视域也可以包括其它形状。
从相机104到笔102的输入定义为图像帧序列{li},l=1,2,...,A,其中图像帧li在采样时间ti时由笔102检测。采样率可以是固定的或者可以基于许多因素变化,所述许多因素包括在表面上被编码的符号图案的大小。依赖于多种因素例如编码符号图案的大小和所期望的检测准确性,被检测的图像帧的大小可大可小。还有,基于待检测的编码符号图案的大小,可以确定相机图像的大小。
由相机104检测到的图像可以被处理系统直接使用或者可以进行预过滤处理。这种预过滤处理可以发生在笔102中或者可以发生在笔102之外(例如,在个人计算机中)。
图1B的图像大小是32×32象素。如果每个编码单元的大小是3×3象素,那么被检测的编码单元的数量就近似于100。如果编码单元的大小是5×5象素,那么被检测的编码单元的数量就近似于36。
图1A还示出了图像平面114,在图像平面114上,形成了来自位置108的所述符号图案的图像116。透镜118聚焦从表面110上的所述符号图案中接收到的光线。透镜118可以是单个透镜或者由多个部分组成的透镜系统,但是此处为简明起见,它被表示为单个透镜。图像捕获传感器122检测并捕获图像116。在本发明的一个实施例中,图像捕获传感器122大到足以检测图像116。可替换地,图像捕获传感器122大到足以捕获位置126上的笔尖106的图像124。作为参考,位置126上的图像124被称作虚拟笔尖。注意,由于笔尖106、透镜118以及图像捕获传感器122之间的恒定关系,固定相对于图像捕获传感器122的虚拟笔尖的位置是固定的。基于从虚拟笔尖的位置(用Lvirtual-pentip表示)到真实笔尖的位置(用Lpentip表示)的转换,可以确定与被检测图像116有关的真实笔尖的位置。
下面的转换FS→P将被相机检测到的图像转换为表面上的真实图像:
Lsurface=FS→P(Lsensor)
当在表面上写时,笔尖和表面位于相同的平面。因此,从虚拟笔尖到真实笔尖的转换也是FS→P
Lpentip=FS→P(Lvirtual-pentip)
转换FS→P被称作透视变换(perspective transformation)。因此,按照下式估算FS→P
F ′ s → p = s x cos θ , s y sin θ , 0 - s x sin θ , s y cos θ , 0 0 , 0 , 1
在此等式中,θ是在位置108上检测的图案的旋转,而sx和sy是被检测图案的两个旋转方位的尺度。还有,通过将被检测图像与表面上的对应的背景图像相匹配,F’S→P被提炼为FS→P。即,通过一种被称作递归方法的优化算法,获得更精确的透视矩阵FS→P(8个参数)。所述递归方法将矩阵F’S→P看作初始值。FS→P比F’S→P更精确地描述S和P之间的转换。
为了通过校准确定虚拟笔尖的位置,用户将笔尖106放置在表面的已知位置Lpentip上。然后,用户使笔102倾斜,以允许相机104检测具有不同的笔的姿势的一系列图像。为每个被检测的图像,接收转换FS→P。根据此转换,可以获得虚拟笔尖106的位置(即,Lvirtual-pentip):
Lvirtual-pentip=FS→P(Lpentip)
以及
FS→P=[[FS→P]-1
通过对从所述图像中接收到的Lvirtual-pentip取平均值,可以确定虚拟笔尖106的准确位置(即,Lvirtual-pentip)。
由于现在知道了虚拟笔尖106的位置,所以可以从被检测的图像中获得转换FS→P。接着,这个信息被用于确定真实笔尖106的位置(即,Lpentip):
Lpentip=FS→P(Lvirtual-pentip)
图案编码
要被编码为表面上的符号图案的数据可以被表示为数字序列,例如二进制数字的序列{0,1}。不同类型的位流可以用作为这种数字序列。例如,可以使用数字的随机或伪随机序列。这种随机或伪随机序列具有一种属性,从而如果m宽度的窗口(例如,连续窗口)沿着序列Sm滑动,则2m-1个非零m元组的每一个只能被看到一次。换言之,数字序列具有一种特性,从而清楚地确定在预定长度的一部分序列的数字序列中的位置。在本发明的一个实施例中,以利用表面的几何形状的方式,编码为符号图案的数据被分布在表面上。例如,数字序列可以被配置为用于在矩形表面上编码的矩形矩阵或阵列。图2说明了按照本发明的实施例的数字的示例性矩形阵列/矩阵。
图2中所示的矩形阵列/矩阵可以以行、以列、对角地或者下面任何其它根据公式的排序来进行排列。例如,如果从左向右然后向下处理,则可以通过下面的位流形成图2的阵列/矩阵:
0100 0111 0111 0100 1000 1110 0111 0100 1100
如果由顶向底然后向右处理,则可以通过下面的位流形成图2的阵列/矩阵:
0101 1100 0111 0010 0110 1001 1001 1110 0010
在另一个例子中,如果位流被对角线地排序并且叠起,则可以通过下面的位流形成图2的阵列/矩阵:
0110 0000 0101 0101 1000 0011 1111 1010 1110
代替将数字序列配置到矩形阵列/矩阵中,所述序列还可以被配置为紧密压缩的圆形或者任何其它平面填充(plane-filling)函数。如果数字序列作为矩形阵列/矩阵被分布在所述表面上,则此序列可以被看作行和列的有序序列。本发明的一个实施例涉及对作为表面上的符号图案的数字的矩形阵列/矩阵进行编码和解码的方法。但是本发明的实施例可以应用于被配置为任何其它平面填充函数的数字。
按照本发明的一个实施例,如果n可以被k整除(即,n mod k=0),长度为n的数字的行可以划分为长度为k(基于图像捕获系统的大小和分辨率可以修改长度k)的m个非交叠连续窗口(Wseq)。因此,对于特定的矩形阵列/矩阵(或其它平面填充函数)的数字的示例性行:
100110001101111110100010000101100101
如果k=3并且m=12,那么非交叠连续窗口将是:
100|110|001|101|111|110|100|010|000|101|100|101
图3A中也进行了说明。
使X作为m个长度为k的非交叠连续窗口的集合。即,X=(x0,x1,...,xn-1)。因此,对于以上示出的数字的示例性行,形成了下面的集合X:
(100,110,001,101,111,110,100,010,000,101,100,101)
或者在另一个系统中例如以十进制的形式:
(4,6,1,5,7,6,4,2,0,5,4,5)
使Y作为m个值(y0,y1,...,yn-1)的集合,其中,yi=2xi,0≤i<m,并且xi是集合X的第i个元素。因此,为以上所示的集合X形成下面的集合Y:
(24,26,21,25,27,26,24,22,20,25,24,25)
或者在另一个数字系统中例如以二进制的形式:
(00010000,01000000,00000010,00100000,10000000,01000000,00010000,00000100,00000001,00100000,00010000,00100000)
在本发明的一个实施例中,Y集合(例如,按二进制形式)直观地被表示为表面上的一个或多个表面窗口(Wsurface)内的符号(或象素)的1×(2km)阵列/矩阵以形成一个图案。图3A中说明了对应于以上所示的示例性Y集合的符号的示例性阵列/矩阵。特别地,一个符号例如一个点被配置在贯穿所述表面的m个非交叠表面窗口中的每一个内。基于Y集合的每个元素内被选出的数字类型的位置,每个符号被置于所述表面上的其相关表面窗口内。因此,对于二进制形式的Y集合,基于Y集合的每个元素内的二进制数字“1”的位置,每个符号被置于其相关表面窗口内。例如,数字“1”被置于以上所示Y集合的元素00010000中从左边起的第四个位置。因此,配置所述符号,以便定位于所述表面上的相关表面窗口内从左边起的第四个位置上。注意,由此,此符号图案包括一个或多个“虚拟”窗口边界,以便建立非交叠的并且相等大小的表面窗口。而且,所述表面上其相关表面窗口内的符号的位置或定位(例如,两个相邻表面窗口内两个符号的位置)可以表示所述表面上的数据例如唯一的位置。因此,所述表面上的符号的整个图案对与所述表面有关的多个位置进行编码。还有,可以理解,可以使用任何色彩表示每个符号。还有,所述符号可以是任何类型的形状。在本发明的实施例中,符号的色彩和形状提供了将由图像捕获系统区分的与所述表面的背景的对比度。
图3B说明了由向量序列形成的符号的示例性图案,该示例性图案表示特定的矩形阵列/矩阵中行的初始序列。图3C进一步说明了由向量序列形成的符号的另一种示例性图案,该示例性图案具有比图3B中的更高的信息含量或平均信息量。图3C的方框302内的图案对应于图3B中所示的符号图案,但具有较低分辨率。如在图3C中可以看到的,如果被编码为符号图案的数据具有高的信息含量或平均信息量,那么所述表面上的符号图案就具有非显而易见的结构并且作为背景噪声呈现给人类观察者。如果相对于白色表面背景使用黑色符号(或象素),那么背景的平均色彩强度可以是12.5%,这对于观察者而言是相当地清晰的。在本发明的一个实施例中,通过增加表面上的符号的连续的行之间的空格,可以以与编码密度成比例的成本照亮表面背景。也可以以较少的稳固的图像处理费用减少符号的大小,以便降低相对于表面背景的图案对比度。
图案解码
虽然图3B和3C中所示的符号图案随机地呈现给人类观察者,但是解码系统可知,它并不是由随机处理产生的。如果采用以上具有k=3和m=6的处理编码符号图案,那么所述表面上的符号的每一行就可以被分割成大小为m个2k的非交叠表面窗口。例如,如果Y集合是二进制的形式,则m个非交叠表面窗口中的每一个都包括一个有色符号(或象素),因为形式2n的二进制数字具有一个数字,该数字具有一个值“1”,剩余数字具有一个值“1”。一种有所帮助的情况包括在所述表面上发现比相隔的2k个位置更近的两个有色符号。在这种情况下,共享表面窗口边界出现在所述表面上它们之间相对很少可能的位置中,如图4A中所示。但是即使两个符号彼此分离多于2k个位置,单独的表面窗口边界可以出现在两个有色符号之间。还有,所述表面上每个连续的可能的表面窗口边界旨在限定表面上其它可能的表面窗口边界的可能的范围或位置,如图4B中所示。在图4B中,括号<>内的空格表示可能的表面窗口边界的可能的范围,而标记|表示已建立的表面窗口边界。
因为检测表面上符号的连续行,所以表面上可能的表面窗口边界的可能的位置集中到了少数几种选择上。而且,给定表面上符号的足够的行,在所述表面上出现所述表面窗口边界的唯一选择,如图4C所示。
图4D示出了如果确定表面上至少一个唯一的表面窗口边界,那么由符号图案所表示的数据值就可以被解码。特别地,在已知相关表面窗口内至少一个符号的位置之后,就能够确定具有长度2k的数字系列(例如,二进制系列)。此数字系列具有位于对应于相关表面窗口内所述符号的位置的位置的一种选择的数字类型(例如,二进制数字“1”),具有另一种数字类型(例如,二进制数字“0”)的剩余数字。基于如此确定的数字系列,通过将以上所述的编码过程反向,可以确定被用于对所述表面上的符号图案进行编码的数字的初始有序序列的一部分序列。在一个例子中,对于确定的数字系列00000010,y值(在Y集合中)将是21。因此,如果X集合是以十进制的形式,则对应的x值将是1。将此x值转换成另一种数字系统例如以二进制的形式,可以确定一部分序列例如001。通过对表面上其它已建立的表面窗口重复此处理,则可以解码符号图案,以便确定数字的初始有序序列(例如,被配置为矩形阵列/矩阵)。
在某些情形中,表面窗口边界可以含糊地给出表面上采用符号图案被编码的区域。如果是这种情况,那么基于被编码为表面上符号图案的数据的已知意义,就能够消除表面窗口边界的歧义。例如,如果符号图案表示表面上的多个绝对位置,那么符号图案的相邻被解码值将表示表面上的相邻位置。如果被解码值不表示相邻位置,那么可能的表面窗口边界中的至少一个可能是不正确的,并且可以估计此可能的表面窗口边界的下一个可能的位置。可以重复此处理,直到找到可能的表面窗口边界的正确位置为止。可替换地,光学设备最近的轨迹的历史可以被存储在存储器区域中。尽管表面上符号图案允许直接且随机的解码,光学设备的许多应用,例如笔或触针,具有特性运动,该特性运动可以被用于:当给出在表面上该设备最近的位置的历史时,可预测光学设备可能的当前位置。
在其它情形中,光学设备可以不与表面的矩形轴对准(例如,当用户用该设备在表面上写注释时)。用户可以握住该光学设备,从而使该设备相对于表面的坐标轴旋转。通过将表面上的符号的连续行之间使用连续的空格用作为掩码函数(mask function),可以补偿这些情形。然后,可以使位于表面上给定位置的符号图案的采样图像绕被采样的图像中心旋转,直到空格掩码没有数据编码符号为止。此后,采样图像将以正确的角度对准,以用于对表面上的符号图案解码的解码处理。
图4E说明了按照本发明的一个实施例的被检测图像部分的旋转。可以分析由图像捕获系统所检测的图像402,以便确定其旋转方位,从而解码系统可以准确地解释由图像402所表示的数据。如图4E中可以看到的,图像402的一些掩码函数(例如,用虚线箭头所表示的)包括数据编码符号(例如,虚线箭头403交叠一些符号)。因此,分析图像402,以便确定旋转图像402的角度θ,从而掩码函数不包括数据编码符号。在图像402被旋转角度θ之后,创建图像404,它位于正确的角度方位并且与表面的轴对准。
按照本发明的一个实施例,在进行了此方位校准之后,图像404被输出并且与被用于创建符号图案的数字的初始序列相关联。可以以不同的方式实现该关联。例如,可以通过递归方法实现,在该递归方法中,将被恢复的部分序列与数字的初始序列内的其它部分序列进行比较。进一步,例如,通过使用两序列之间的加权平均距离,可以在被恢复的部分序列和数字的初始序列之间实现统计分析。可以理解,各种不同的方法都可以用于确定数字的初始序列内的被恢复的部分序列的位置。
位置确定
图5示出了按照本发明一个实施例的用于确定光学设备的位置的示例性处理。输入是由光学设备检测的图像,而输出可以是与整个图像相比被检测的图像的位置坐标。还有,输出可以包括检测图像的旋转角。
在502,检测并接收来自光学设备的传感器(例如,相机)的图像。然后,在504,接收到的图像可以被有选择地预处理,以便调整符号(或象素)与表面之间的对比度,力图确定检测图像的旋转角,等等。
在506,分析接收到的图像,以便确定由该图像所表示的数字的序列。特别地,基于表面上每个“虚拟”表面窗口的已知长度,可以确定位于两个符号之间的可能的表面窗口边界,所述两个符号被定位在离所述表面至多已知长度的位置上。基于这种可能的表面窗口边界,可以递增地确定在接收到的图像的第一方向上的其它可能的表面窗口边界。还有,可以递增地建立在接收到的图像的第二方向上的表面窗口边界。在建立了所述表面窗口边界之后,可以根据表面上已建立的表面窗口内的符号的位置确定数字系列。接着,此数字系列可以被解码,以便获得用于对表面上的符号图案进行编码的数字的初始有序序列的一部分序列。
在508,将所获得的部分序列与数字的初始序列进行比较,并且确定所获得部分序列在数字的初始序列内的位置。当该系统知道如何对数字的初始序列进行排序和编码以便创建表面上的符号图案(例如,如图3B中所示)时,可以进行这种比较。在508确定了被检测图像的位置之后,在510,可以确定光学设备的位置。
数据流编码
图6示出了用于对有序数字序列例如二进制有序数字序列进行编码的示例性处理。在602,数字有序序列是由处理器定义或接收的。在604,有序数字序列被编码为符号图案。尤其是,有序数字序列被划分为一个或多个连续窗口(例如,基于表面的几何形状),其中每个连续窗口包括有序数字序列的一部分序列。此部分序列被转换为另一种数字系统(例如,八进制、十进制、十六进制等)。例如,所述部分序列可以被表示为十进制数字。然后,该数学函数被应用于已转换的部分序列。在本发明的一个实施例中,如果该部分序列被表示为十进制数字,则该数学函数包括取预定数字(例如,2)的十进制数字的值的幂。然后,已经被应用于该数学函数的十进制数字被转换为另一种数字系统,例如预定长度的二进制表示。然后,基于二进制表示的长度内的被选出的数字类型(例如,二进制数字“1”)的位置,符号(例如,点或者象素)被配置在表面上的一个或多个表面窗口内。表面上的每个表面窗口对应于所述连续窗口中的一个。因此,表面上的对应的表面窗口内的符号的位置指示数据(例如,表面上的唯一位置)。
在606,处理器输出一个图像,它包括从有序数字序列中创建的符号图案。接着,在608该输出可以被有选择地打印在介质例如纸上或者在610被有选择地显示在显示器上。为了与在608要被打印的介质相关,该输出图像可以以图形的形式提交并且被发送给打印机(例如,激光打印机或喷墨打印机)作为将被打印的图像,位于另一个图像或文档内容下或者覆盖到另一个图像或文档内容上。类似地,可以将该输出图像与其它信息相结合并且被提交用于在610的显示。将输出图像的提交形式与其它内容相关联的处理一般可以被称作水印。例如,图像可以被显示为显示器上的水印,或者可以被嵌入到其显示中(例如,在显示的形成处理期间或者后来被用作对于人而言视觉上是透明的但是可以被光学设备检测(例如,通过红外线波长)的层)。在本发明的一个实施例中,打印机和显示器(或者用于提交输出图像的其它技术)组成用于将符号排列在表面上的表面窗口内的装置。
应用
可以以许多种方式来使用此处所述的符号图案。在本发明的一个实施例中,符号图案被结合到打印纸中作为与现有图像相组合的图像或作为该纸上已打印的图像。表示符号图案的图像可以被打印在一张空白纸上,或者可以被打印在已经包括其它信息(例如,电子数据表)的一张纸上。用于将该图像与已嵌入信息相加的处理包括水印一文档或页面。它还可以进一步包括将水印嵌入在图像上,打印具有已嵌入水印的纸,组合并打印具有另一图像的水印,及其不同的组合。例如,符号图案可以被打印在纸面文档的背景上,该纸面文档包括用于为人类阅读者解释的的文本和图形。然而,此符号图案并不会降低文档的可读性,并且利用少量的打印机墨水可以用打印机来产生。
在本发明的另一实施例中,表示符号图案的图像被结合到被覆盖在设备或系统的显示屏幕上的透明的纸张内,或者被结合在用于与显示器相组合的表面内,包括保护膜。在一个例子中,符号图案被嵌入到液晶显示器(LCD)中。LCD的每个象素间距具有它的帧,并且所有LCD象素的帧凑到一起以便形成一个栅格。本发明的实施例允许将符号图案添加到该栅格上。例如,包括符号图案的薄膜可以被应用于该栅格。此薄膜可以被调整,以便以可视亮度提供符号图案。可替换地,该薄膜可以有选择地吸收红外线(IR)的光或者可以在某种光线波长下发荧光。还有,可以控制LCD,以便发射或吸收光线,从而将符号图案投射给笔或相机。符号图案也可以被应用于LCD的防护玻璃罩或者覆盖材料。
在另一个例子中,具有被编码其上的符号图案的并且带有特定光谱例如800-900nm的IR反射膜被置于LCD的栅格上。当光学设备在LCD表面上移动时,带有IR发光二极管(IRLED)和相机(可以具有IR滤波器)的光学设备检测IR图像。在这个例子中,LCD栅格上的符号的被编码图案反射特定的IR光线,例如800-900nm。由此IR图像中的符号图案有别于该膜的其它区域。IR图像可以被处理和解码,以便确定光学设备的位置。IR膜允许被显示图像的无阻碍的传输。
按照透镜设计参数和分辨率要求,可以选择符号图案的大小。例如,为了达到相机的0.213mm×0.213mm象素间距和5mm×5mm透镜视觉范围,图案大小可以被设置为2×2象素。
符号图案也可以体现在膝上型电脑、基于写字板/触针的输入计算机、个人数字助理、电话或任何其它设备中的显示器。
符号图案的其它应用包括与文档有关的文档标识符。通常,用户可以在文档中打印文档标题或参考标号。在本发明的一个实施例中,在文档中被编码的符号图案可以表示文档的参考标号或者其它信息(一般被称作文档标识符)。然后,用户可以检测包括文档上的符号图案的图像,解码被检测图像以便获得由符号图案所表示的文档标识符,以及将写文档上的注释与所获得的文档标识符相关联。文档标识符还可以是到位于远程位置中的文档的链路或参考,它可以通过计算机网络来进行访问。
示例性操作环境
图7示出了以计算机130的形式的通用计算机设备的一个例子。在本发明的一个实施例中,计算机例如计算机130可以适用于用在光学设备例如笔102中或者此处所示并描述的其它图中。计算机130具有一个或多个处理器或处理单元132以及系统存储器134。在示意性实施例中,系统总线136将不同的系统组件包括系统存储器134耦接到处理器132上。总线136表示多种类型的总线结构中的任何的一个或多个,总线136包括存储器总线或存储器控制器、外围总线、加速图形端口、以及处理器或使用多种总线结构中的任何一个的本地总线。作为示例而非限定,此结构包括工业标准结构(ISA)总线、微通道结构(MCA)总线、增强的ISA(EISA)总线、视频电子标准协会(VESA)本地总线、以及外围设备交互(PCI)总线,还有已知的Mezzanine总线。
计算机130典型地具有至少某种形式的计算机可读介质。计算机可读介质,包括易失性和非易失性介质、可移动的和不可移动的介质,可以是可被计算机130访问的任何可用的介质。作为示例而非限定,计算机可读介质包括计算机存储介质和通信介质。计算机存储介质包括以用于信息存储的任何方法或技术来实现的易失性和非易失性、可移动的和不可移动的介质,该信息例如计算机可读指令、数据结构、程序模块或其它数据。例如,计算机存储介质包括RAM、ROM、EEPROM、闪速存储器或其它存储器技术、CD-ROM、数字通用盘(DVD)或其它光盘存储、盒式磁带、磁带、磁盘存储或其它磁存储设备、或者可以被用于存储所期望的信息并且可以被计算机130访问的任何其它介质。通信介质典型地以调制的数据信号的方式具体表达计算机可读指令、数据结构、程序模块或其它数据,该数据信号例如载波或其它传送机制,并且通信介质包括任何信息传递介质。本领域技术人员是熟悉调制数据信号,它具有一种或多种以一种在该信号中编码信息的方式被设置或改变的特性。有线介质例如有线网络或直接有线连接,以及无线介质例如声音、RF、红外线以及其它无线介质,都是通信介质的例子。以上介质的任意组合也都被包含在计算机可读介质的范围内。
系统存储器134包括以可移动的和/或不可移动的、易失性的和/或非易失性的存储器的形式的计算机存储介质。在示意性实施例中,系统存储器134包括只读存储器(ROM)138和随机存取存储器(RAM)140。基本输入/输出系统142(BIOS),包括例如在启动过程中,有助于在计算机130内的元件之间传送信息的基本线程,通常被保存在ROM 138中。RAM 140通常包括可以由处理单元132立即访问和/或目前正被处理单元132操作的数据和/或程序模块。以示例的方式而非限定的方式,图7说明了操作系统144、应用程序146、其它程序模块148以及程序数据150。
计算机130还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。例如,图7说明了硬盘驱动器154,它从不可移动的、非易失性磁性介质中读取或者向不可移动的、非易失性磁性介质写。图7还示出了磁盘驱动器156以及光盘驱动器160,磁盘驱动器156从可移动的、非易失性磁盘158中读取或者向可移动的、非易失性磁盘158写,光盘驱动器160从可移动的、非易失性磁盘162中读取或者向可移动的、非易失性磁盘162写,该可移动的、非易失性磁盘162例如CD-ROM或其它光学介质。
其它可以被用在示例性操作环境中的可移动/不可移动、易失性/非易失性计算机存储介质包括,但并不限于,磁带盒、闪速存储器卡、数字通用盘、数字视频带、固态RAM、固态ROM等。通过非易失性存储器接口例如接口166,硬盘驱动器154、磁盘驱动器156以及光盘驱动器160通常被连接到系统总线136。
以上讨论并在图7中示出的驱动器或其它大容量存储器设备及其相关计算机存储介质,为计算机130提供了计算机可读指令、数据结构、程序模块以及其它数据的存储。在图7中,例如,将硬盘驱动器154描述为用于储存操作系统170、应用程序172、其它程序模块174以及程序数据176。注意,这些组件可以与操作系统144、应用程序146、其它程序模块148和程序数据150相同,也可以不同。此处为操作系统170、应用程序172、其它程序模块174以及程序数据176给出不同的标号,以便最小限度地说明它们是不同的复制品。
通过输入设备或用户接口选择设备例如键盘180和指示设备182(例如,鼠标、跟踪球、笔或触摸板),用户可以将命令和信息输入到计算机130中。其它输入设备可以包括麦克风、操纵杆、游戏垫、圆盘式卫星天线、扫描仪等。这些或其它输入设备通过被耦接到系统总线136的用户输入接口184被连接到处理单元132,但也可以通过其它接口和总线结构例如并行端口、游戏端口或通用串行总线(USB)进行连接。监视器188或其它类型的显示设备也可以通过接口例如视频接口190被连接到系统总线136。除了监视器188之外,计算机常常包括其它外围输出设备(未示出),例如打印机和扬声器,它们可以通过输出外围接口(未示出)进行连接。
利用到一个或多个远程计算机例如远程计算机194的逻辑连接,计算机130可以在网络化环境中运行。远程计算机194可以是个人计算机、服务器、路由器、网络PC、对等设备或其它公共网络结点,并且通常包括以上所述与计算机130相关的元件中的许多或所有。图7中所描绘的逻辑连接包括局域网(LAN)196和广域网(WAN)198,但也可以包括其它网络。LAN 136和/或WAN 138可以是有线网络、无线网络、其组合,等等。这样的网络化环境在办公室、企业范围的计算机网络、企业内部互联网以及全球计算机网络(例如,因特网)中是很常见的。
当用在局域网环境中时,通过网络接口或适配器186,计算机130被连接到LAN 196。当被用在广域网环境中时,计算机130通常包括调制解调器178或其它用于在WAN 198例如因特网上建立通信的装置。调制解调器178,可以是内部的或外部的,通过用户输入接口184或其它适当的机制,被连接到系统总线136。在网络化环境中,与计算机130有关的所描绘的程序模块,或其部分,可以被存储在远程存储器存取设备(未示出)中。作为示例而非限定,图7说明了驻留在存储器设备上时的远程应用程序192。所示的网络连接是示例性的,并且可以使用其它在计算机之间建立通信链路的装置。
一般地,计算机130的数据处理器是由在不同时间被存储在计算机的不同计算机可读存储介质中的指令来编程的。程序和操作系统通常被分布在,例如,软盘或CD-ROM上。从那里,将它们安装或载入到计算机的次级存储器中。在执行时,将它们至少部分地载入到计算机的主电子存储器中。当此介质包括用于与微处理器或其它数据处理器一起执行以下所述步骤的指令或程序时,此处所述的本发明的实施例包括这些和其它各种类型的计算机可读存储介质。本发明的一个实施例还包括当按照此处所述的方法和技术被编程时的计算机本身。
为了说明起见,此处将程序或其它可执行程序组件例如操作系统作为离散框进行了说明。然而,将承认,这样的程序和组件是在不同的时间驻留在计算机的不同存储组件中的,并且由计算机的数据处理器(多个)来执行。
尽管有关示例性计算机环境,包括计算机130进行了描述,但是本发明的一个实施例可以采用许多其它通用或专用计算机系统环境或配置来操作。所述计算机系统环境并不旨在建议对本发明的实施例的使用或功能性的范围的任何限定。而且,所述计算机系统环境不应当被解释为具有与所述示例性操作环境中所示的组件的任何一个或组合有关的任何依赖性或要求。适用于本发明的实施例的公知的计算机系统、环境和/或配置的例子包括,但并不限于,个人计算机、服务器计算机、手持型或膝上型设备、笔、鼠标、键盘、电话、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、移动电话、网络PC、小型计算机、大型计算机、包括任何以上系统或设备的分布式计算环境,等等。
可以以一台或多台计算机或其它设备执行的计算机可执行指令例如程序模块的一般环境设置情况来描述本发明的实施例。一般地,程序模块包括,但并不限于,线程、程序、对象、组件、以及实现特定任务或实现特定抽象数据类型的数据结构。也可以在分布式计算环境中实施本发明的实施例,在该分布式计算环境中,由远程处理设备执行任务,该远程处理设备通过通信网络进行链接。在分布式计算环境中,程序模块可以被置于包括存储器存取设备的本地和远程计算机存储介质中。
在运行时,计算机130执行诸如此处所描述的计算机可执行指令用于以表面上的符号图案对数据进行编码。计算机可执行指令适于将可表示编码数据的有序数字序列划分为多个连续窗口。连续窗口中的每一个包括有序数字序列中的一部分序列。计算机可执行指令也适于将每个连续窗口中所包含的所述部分序列转换为一系列数字。计算机可执行指令还适于将符号配置在表面上的多个表面窗口中。每个表面窗口对应于所述连续窗口中的一个。每个表面窗口内的符号的位置是基于所转换的一系列数字中的一个。而且,所述表面窗口内的符号位置可以指示编码数据。
计算机130还执行例如此处所述的计算机可执行指令用于解码表面上的符号图案以便确定对应于所述图案的数据。所述图案被划分为表面上的多个窗口。计算机可执行指令适于检测表面上的符号,以便确定其图案。计算机可执行指令也适于确定被确定图案的窗口边界。所述窗口边界规定所述窗口中的至少一个。而且,每个所规定的窗口包括与其相关的被检测符号中的至少一个。计算机可执行指令还适于确定相关窗口内被检测符号的位置。相关窗口内被检测符号的所确定的位置指示对应于所述图案的数据。
除非有另外的规定,此处所示出并描述的方法的执行或实现的顺序并不是必要的。即,发明人期望,可以以任何顺序实现所述方法的元素,除非有另外的规定,并且所述方法可以包括比此处所公开的元素更多或更少的元素。
当引入了本发明或其实施例的元素时,冠词“一个”、“该”和“所述的”旨在意指一个或多个元素。术语“包括”、“包含”以及“具有”旨在包含并意指除了所列出的元素之外也可以是附加的元素。
鉴于以上所述,将看到,实现了本发明的多个目的,并且获得了其它的优点。
当在不脱离本发明的实施例的范围的情况下可以用以上的结构和方法进行不同的改变时,意味着,以上说明中所包含的并且在所附附图中所示出的所有内容将被解释为是示意性的而非限定性的理解。

Claims (12)

1、一种用于以表面上的符号图案对数据进行编码的方法,所述方法包括:
将表示编码数据的有序二进制数字序列划分为多个预定大小的非交叠的连续窗口,其中,所述连续窗口中的每一个包括所述有序二进制数字序列中的一部分序列;
将每个连续窗口中所包括的所述部分序列转换为一系列二进制数字,所述转换包括:
将每个连续窗口中包括的所述部分序列表示为十进制数字,
将一数学函数应用到所述十进制数字,其中所述将一数学函数应用到所述十进制数字包括将预定数字应用到所述十进制数字的值的幂,
将已经应用了数学函数的所述十进制数字转换为二进制表示,以及
其中,所述二进制表示指示该二进制数字的系列;以及
在所述表面上的多个表面窗口内排列符号,其中,每个表面窗口对应于所述连续窗口中的一个,其中,每个表面窗口内所述符号的位置是基于所转换的二进制数字系列中的一个,并且其中,所述表面窗口内所述符号的位置表示编码数据,
其中转换所述十进制数字包括将已经被应用了数学函数的所述十进制数字转换为具有预定长度的二进制表示,并且其中,所述在表面上的表面窗口内排列符号包括确定所述二进制表示的长度内所选择的二进制数字类型的位置,以及基于被确定的所选择的二进制数字类型的位置在所述表面窗口内排列所述符号。
2、根据权利要求1所述的方法,其特征在于,所述编码数据指示所述表面上的唯一位置,使得每个表面窗口内所述符号的位置指示所述表面上的该唯一位置。
3、根据权利要求1所述的方法,其特征在于,所述划分有序二进制数字序列包括将所述有序二进制数字序列划分为多个大小相等的连续窗口。
4、根据权利要求1所述的方法,其特征在于,所述预定数字是2。
5、根据权利要求1所述的方法,其特征在于,所选择的二进制数字类型是“1”。
6、根据权利要求1所述的方法,其特征在于,还包括根据所述表面的几何形状排列所述有序二进制数字序列,并且其中,划分所述有序二进制数字序列包括基于所述表面的几何形状将所述有序二进制数字序列划分为多个连续的窗口。
7、根据权利要求6所述的方法,其特征在于,所述表面的几何形状是矩形,并且其中,排列所述有序二进制数字序列包括将所述有序二进制数字序列排列为矩形阵列。
8、根据权利要求1所述的方法,其特征在于,所述有序二进制数字序列具有一种能唯一地识别预定长度的每个部分序列在有序二进制数字序列中的位置的特性。
9、一种用于以表面上的符号图案对数据进行编码的系统,所述系统包括:
用于将表示所述编码数据的有序二进制数字序列分割成多个预定大小的非交叠的连续窗口的装置,其中,所述连续窗口中的每一个包括所述有序二进制数字序列的一部分序列,以及
用于将每个连续窗口中所包括的所述部分序列转换成一系列二进制数字的装置,其中所述转换装置进一步包括:
用于将每个连续窗口中包括的所述部分序列表示为十进制数字的装置,
用于将一数学函数应用到所述十进制数字的装置,其中所述将一数学函数应用到所述十进制数字包括将预定数字应用到所述十进制数字的值的幂,
用于将已经应用了数学函数的所述十进制数字转换为二进制表示的装置,
其中,所述二进制表示指示该二进制数字的系列;以及
用于在所述表面上的多个表面窗口内排列符号的装置,其中,每个表面窗口对应于所述连续窗口中的一个,其中,每个表面窗口内所述符号的位置是基于所转换的二进制数字的系列中的一个,并且其中,所述表面窗口内所述符号的位置指示所述编码数据;
其中,所述二进制表示具有预定的长度,并且其中,通过确定所述二进制表示的长度内选择的二进制数字类型的位置,并且基于所选择的二进制数字类型的所确定的位置将所述符号放置在所述表面窗口内,在每个表面窗口内排列所述符号。
10、根据权利要求9所述的系统,其特征在于,所述编码数据指示所述表面上的唯一位置,使得每个表面窗口内所述符号的位置指示所述表面上的该唯一位置。
11、根据权利要求9所述的系统,其特征在于,所述预定数字是2。
12、根据权利要求9所述的系统,其特征在于,所选择的二进制数字是“1”。
CNB2005100659965A 2004-04-22 2005-04-22 用于以表面上的符号图案对数据进行编码的方法和系统 Expired - Fee Related CN100433044C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/829,632 US7048198B2 (en) 2004-04-22 2004-04-22 Coded pattern for an optical device and a prepared surface
US10/829,632 2004-04-22

Publications (2)

Publication Number Publication Date
CN1691052A CN1691052A (zh) 2005-11-02
CN100433044C true CN100433044C (zh) 2008-11-12

Family

ID=35094419

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100659965A Expired - Fee Related CN100433044C (zh) 2004-04-22 2005-04-22 用于以表面上的符号图案对数据进行编码的方法和系统

Country Status (4)

Country Link
US (2) US7048198B2 (zh)
EP (1) EP1605341B1 (zh)
JP (1) JP3983774B2 (zh)
CN (1) CN100433044C (zh)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7133563B2 (en) 2002-10-31 2006-11-07 Microsoft Corporation Passive embedded interaction code
US7048198B2 (en) * 2004-04-22 2006-05-23 Microsoft Corporation Coded pattern for an optical device and a prepared surface
US7826074B1 (en) 2005-02-25 2010-11-02 Microsoft Corporation Fast embedded interaction code printing with custom postscript commands
US7571855B2 (en) * 2005-03-29 2009-08-11 Hewlett-Packard Development Company, L.P. Display with symbology
JP4569359B2 (ja) * 2005-04-05 2010-10-27 富士ゼロックス株式会社 電子文書管理システム、画像形成装置、印刷媒体、電子文書管理方法およびプログラム
US7403943B2 (en) * 2005-04-15 2008-07-22 E. I. Du Pont De Nemours And Company Pattern discovery using PINA and PIBA arrays
US20060235845A1 (en) * 2005-04-15 2006-10-19 Argentar David R Identifying patterns of symbols in sequences of symbols using a binary array representation of the sequence
US7421439B2 (en) 2005-04-22 2008-09-02 Microsoft Corporation Global metadata embedding and decoding
US7400777B2 (en) 2005-05-25 2008-07-15 Microsoft Corporation Preprocessing for information pattern analysis
US7729539B2 (en) 2005-05-31 2010-06-01 Microsoft Corporation Fast error-correcting of embedded interaction codes
US7580576B2 (en) * 2005-06-02 2009-08-25 Microsoft Corporation Stroke localization and binding to electronic document
GB2428952B (en) * 2005-07-30 2010-10-06 Hewlett Packard Development Co Digital pen and paper system
US7817816B2 (en) 2005-08-17 2010-10-19 Microsoft Corporation Embedded interaction code enabled surface type identification
US7756526B2 (en) 2005-09-19 2010-07-13 Silverbrook Research Pty Ltd Retrieving a web page via a coded surface
US7558597B2 (en) 2005-09-19 2009-07-07 Silverbrook Research Pty Ltd. Retrieving a ringtone via a coded surface
US7621442B2 (en) 2005-09-19 2009-11-24 Silverbrook Research Pty Ltd Printing a subscription using a mobile device
US7738862B2 (en) * 2005-09-19 2010-06-15 Silverbrook Research Pty Ltd Retrieve information via card on mobile device
GB2432233B (en) * 2005-10-29 2011-04-20 Hewlett Packard Development Co User-interface system, method & apparatus
AU2006252239B2 (en) * 2006-12-22 2010-04-01 Canon Kabushiki Kaisha Barcode pattern
CA2675689A1 (en) * 2007-02-08 2008-08-14 Silverbrook Research Pty Ltd Bar code reading method
GB2457018B (en) * 2008-01-29 2012-04-04 Hewlett Packard Development Co Pattern for identifying a location on a surface
US20090309854A1 (en) * 2008-06-13 2009-12-17 Polyvision Corporation Input devices with multiple operating modes
US20110240739A1 (en) * 2008-06-13 2011-10-06 Universite De Mons Authentication method and device for protecting manufactured goods
US8300252B2 (en) * 2008-06-18 2012-10-30 Livescribe, Inc. Managing objects with varying and repeated printed positioning information
AU2008255212A1 (en) * 2008-12-10 2010-06-24 Canon Kabushiki Kaisha Page mark-up using printed dot barcodes
US9576230B2 (en) 2010-07-06 2017-02-21 Marcelo Amaral Rezende Dot code pattern for absolute position and other information using an optical pen, process of printing the dot code, process of reading the dot code
AU2010257220B2 (en) 2010-12-15 2014-03-06 Canon Kabushiki Kaisha Data block offset encoding method for coordinates
CN102063206A (zh) * 2010-12-31 2011-05-18 黄天麒 一种光电输入设备
US8619065B2 (en) * 2011-02-11 2013-12-31 Microsoft Corporation Universal stylus device
TWI492162B (zh) * 2011-05-25 2015-07-11 Generalplus Technology Inc 等灰度二維光學辨識碼裝置
WO2013090494A1 (en) * 2011-12-16 2013-06-20 3M Innovative Properties Company Optical digitizer system with position-unique photoluminescent indicia
JP6064211B2 (ja) * 2012-09-04 2017-01-25 パナソニックIpマネジメント株式会社 手書き入力システム
US9958954B2 (en) 2012-12-13 2018-05-01 3M Innovative Properties Company System and methods for calibrating a digitizer system
US20140267016A1 (en) * 2013-03-18 2014-09-18 James Michael Stavoe Digital interface media
US9442185B2 (en) 2014-05-01 2016-09-13 Raytheon Company Non-contacting electro-magnetic spherical planar motor providing 3-axis control of a ball joint gimbal mounted electro-optic system
US9372340B2 (en) 2014-05-01 2016-06-21 Raytheon Company Ball joint gimbal imaging system with an off-gimbal directional electro-optic component
CN105224543A (zh) * 2014-05-30 2016-01-06 国际商业机器公司 用于处理时间序列的方法和装置
TW201604722A (zh) * 2014-07-31 2016-02-01 佳世達科技股份有限公司 手寫輸入系統及手寫輸入方法
DE112015005883T5 (de) 2015-01-30 2017-09-28 Hewlett-Packard Development Company, L.P. M-äre zyklische codierung
US10289875B2 (en) 2015-07-31 2019-05-14 Portland State University Embedding data on objects using surface modulation
CN107016428A (zh) 2016-01-28 2017-08-04 阿里巴巴集团控股有限公司 一种二维码的初始化方法及装置
WO2019199324A1 (en) 2018-04-13 2019-10-17 Hewlett-Packard Development Company, L.P. Surfaces with information marks

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1041049A (zh) * 1988-09-05 1990-04-04 富冈信 信息代码法及其代码的识别方法
CN1043015A (zh) * 1989-11-02 1990-06-13 林宇威 汉字音形兼容二用信息交换码编码方案
EP0867825A2 (en) * 1997-03-24 1998-09-30 Olympus Optical Co., Ltd Code pattern image recording apparatus
JPH10320497A (ja) * 1997-05-16 1998-12-04 Olympus Optical Co Ltd コード読取記録装置
US5936228A (en) * 1994-11-15 1999-08-10 Olympus Optical Co., Ltd. Dot-code recording method and dot-code recording and reproducing apparatus
US20030029919A1 (en) * 2001-06-26 2003-02-13 Stefan Lynggaard Reading pen
US20030146286A1 (en) * 2002-02-01 2003-08-07 William Berson Pen and system for writing encoded lines
US20040035935A1 (en) * 2002-05-30 2004-02-26 Sadao Takahashi 2-Dimensional code pattern, 2-dimensional code pattern supporting medium, 2-dimensional code pattern generating method, and 2-dimensional code reading apparatus and method

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US85868A (en) * 1869-01-12 Improvement in steam water-elevators
US95725A (en) * 1869-10-12 And drying-stove
US95726A (en) * 1869-10-12 Improvement in reversible axle for carriages
US128194A (en) * 1872-06-18 Improvement in machines for cutting cloth
US128196A (en) * 1872-06-18 Improvement in pump-pistons
US95098A (en) * 1869-09-21 Improvement in carriage-wheels
US29919A (en) * 1860-09-04 Improved method of converting iron into steel
AUPQ055999A0 (en) 1999-05-25 1999-06-17 Silverbrook Research Pty Ltd A method and apparatus (npage01)
US4499374A (en) 1981-06-01 1985-02-12 Mitutoyo Mfg. Co., Ltd. Photoelectrical encoder employing an optical grating
GB8616470D0 (en) * 1985-11-05 1986-08-13 Hilton C Optical scanner
DE3852153T2 (de) * 1987-07-11 1995-05-11 Hirokazu Yoshida Verfahren zum Lesen von Blättern mit Identifikationscode.
US5051736A (en) * 1989-06-28 1991-09-24 International Business Machines Corporation Optical stylus and passive digitizing tablet data input system
US5410620A (en) * 1989-08-02 1995-04-25 Teiryo Sangyo Co., Ltd. Digital data reader of digital data recording sheet
WO1992017859A1 (en) * 1991-04-03 1992-10-15 Hewlett Packard Company Position-sensing apparatus
US5155355A (en) 1991-04-25 1992-10-13 Mitutoyo Corporation Photoelectric encoder having a grating substrate with integral light emitting elements
US5852434A (en) * 1992-04-03 1998-12-22 Sekendur; Oral F. Absolute optical position determination
US5758574A (en) 1992-04-15 1998-06-02 Bernardo; Joseph A. Manually written, machine readable code system
EP0996083B1 (en) * 1992-09-28 2003-03-26 Olympus Optical Co., Ltd. Information reproducing system for optically reading a dot code from a recording medium
JP2695623B2 (ja) 1994-11-25 1998-01-14 株式会社ミツトヨ 光学式エンコーダ
JPH08250151A (ja) * 1995-03-14 1996-09-27 Matsushita Electric Ind Co Ltd 密閉形アルカリ蓄電池の単位電池
US5937110A (en) * 1996-12-20 1999-08-10 Xerox Corporation Parallel propagating embedded binary sequences for characterizing objects in N-dimensional address space
JP4093618B2 (ja) * 1997-10-08 2008-06-04 富士通株式会社 デジタルコード信号を記録した記録担体の発行/読取装置および記録担体
US7055739B1 (en) 1999-05-25 2006-06-06 Silverbrook Research Pty Ltd Identity-coded surface with reference points
JP4785310B2 (ja) * 1999-05-28 2011-10-05 アノト アクティエボラーク 情報の記録に用いられる製品
SE516522C2 (sv) * 1999-05-28 2002-01-22 Anoto Ab Positionsbestämning
KR100745298B1 (ko) * 1999-05-28 2007-08-07 아노토 아베 달력
SE517445C2 (sv) * 1999-10-01 2002-06-04 Anoto Ab Positionsbestämning på en yta försedd med ett positionskodningsmönster
WO2001030591A1 (en) * 1999-10-25 2001-05-03 Silverbrook Research Pty Ltd Electronically controllable pen with sensor
US7143952B2 (en) * 2000-03-21 2006-12-05 Anoto Ab Apparatus and methods relating to image coding
SE0000949L (sv) * 2000-03-21 2001-09-22 Anoto Ab Positionsinformation
US6586688B2 (en) * 2000-04-05 2003-07-01 Anoto Ab Information-related devices and methods
US6686579B2 (en) * 2000-04-22 2004-02-03 International Business Machines Corporation Digital pen using speckle tracking
JP3589621B2 (ja) 2000-07-03 2004-11-17 株式会社ミツトヨ 光電式エンコーダ及びそのセンサヘッドの製造方法
US6650320B1 (en) * 2000-08-16 2003-11-18 International Business Machines Corporation Digital pen using visible image and autocorrelation of substrate pattern
US6592039B1 (en) * 2000-08-23 2003-07-15 International Business Machines Corporation Digital pen using interferometry for relative and absolute pen position
US6667695B2 (en) * 2001-06-25 2003-12-23 Anoto Ab Position code
US7175095B2 (en) * 2001-09-13 2007-02-13 Anoto Ab Coding pattern
US7145556B2 (en) 2001-10-29 2006-12-05 Anoto Ab Method and device for decoding a position-coding pattern
SE520682C2 (sv) * 2001-12-06 2003-08-12 Anoto Ab Rekonstruering av ett virtuellt raster
JP3622960B2 (ja) 2002-02-20 2005-02-23 株式会社ハーモニック・ドライブ・システムズ 投影型エンコーダ
US7293697B2 (en) * 2002-06-05 2007-11-13 Anoto Ab Method for managing information
US6781694B2 (en) * 2002-07-16 2004-08-24 Mitutoyo Corporation Two-dimensional scale structures and method usable in an absolute position transducer
US7134606B2 (en) * 2003-12-24 2006-11-14 Kt International, Inc. Identifier for use with digital paper
US7048198B2 (en) * 2004-04-22 2006-05-23 Microsoft Corporation Coded pattern for an optical device and a prepared surface

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1041049A (zh) * 1988-09-05 1990-04-04 富冈信 信息代码法及其代码的识别方法
CN1043015A (zh) * 1989-11-02 1990-06-13 林宇威 汉字音形兼容二用信息交换码编码方案
US5936228A (en) * 1994-11-15 1999-08-10 Olympus Optical Co., Ltd. Dot-code recording method and dot-code recording and reproducing apparatus
EP0867825A2 (en) * 1997-03-24 1998-09-30 Olympus Optical Co., Ltd Code pattern image recording apparatus
JPH10320497A (ja) * 1997-05-16 1998-12-04 Olympus Optical Co Ltd コード読取記録装置
US20030029919A1 (en) * 2001-06-26 2003-02-13 Stefan Lynggaard Reading pen
US20030146286A1 (en) * 2002-02-01 2003-08-07 William Berson Pen and system for writing encoded lines
US20040035935A1 (en) * 2002-05-30 2004-02-26 Sadao Takahashi 2-Dimensional code pattern, 2-dimensional code pattern supporting medium, 2-dimensional code pattern generating method, and 2-dimensional code reading apparatus and method

Also Published As

Publication number Publication date
EP1605341A2 (en) 2005-12-14
EP1605341B1 (en) 2015-06-17
US7290719B2 (en) 2007-11-06
US20060151621A1 (en) 2006-07-13
US7048198B2 (en) 2006-05-23
US20050236492A1 (en) 2005-10-27
EP1605341A3 (en) 2012-03-07
JP3983774B2 (ja) 2007-09-26
CN1691052A (zh) 2005-11-02
JP2005310169A (ja) 2005-11-04

Similar Documents

Publication Publication Date Title
CN100433044C (zh) 用于以表面上的符号图案对数据进行编码的方法和系统
CN100442216C (zh) 确定电子笔尖相对于表面的位置的系统
JP2005310169A5 (zh)
CN100489897C (zh) 有效的嵌入式交互编码
US8500026B2 (en) Dual resolution two-dimensional barcode
KR101251695B1 (ko) 임베딩된 상호작용 코드 지원 디스플레이
KR101122822B1 (ko) m-어레이 디코딩 및 오류 정정에 대한 향상된 접근
CN100576234C (zh) 使用快速图像匹配的局部定位方法
CN100472554C (zh) 照相机-笔尖映射和校准方法和系统
RU2360303C2 (ru) Анализ изображения позиционно кодированного документа и нанесение метки
US20060213997A1 (en) Method and apparatus for a cursor control device barcode reader
WO2010099738A1 (zh) 在印刷图像中埋入并识别信息的方法
US7729539B2 (en) Fast error-correcting of embedded interaction codes
RU2347271C2 (ru) Глобальная локализация путем быстрого согласования изображений
CN103098075B (zh) 使用光笔的绝对位置和其他信息的点码图案、打印点码方法、读取点码方法
JP2008544365A (ja) 位置符号化されたベースのオンデマンド生成
JP2009181363A (ja) 画像処理装置、画像生成装置、及びプログラム

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
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150421

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150421

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081112

Termination date: 20190422