CN107103350B - 物理介质表面多维度位置编码方法、装置和可读存储介质 - Google Patents
物理介质表面多维度位置编码方法、装置和可读存储介质 Download PDFInfo
- Publication number
- CN107103350B CN107103350B CN201710308734.XA CN201710308734A CN107103350B CN 107103350 B CN107103350 B CN 107103350B CN 201710308734 A CN201710308734 A CN 201710308734A CN 107103350 B CN107103350 B CN 107103350B
- Authority
- CN
- China
- Prior art keywords
- code
- differential
- sequence
- bit
- coding
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06037—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06046—Constructional details
Abstract
本申请提供了一种用于物理介质表面多维度位置编码的编解码方法、装置、设备及计算机可读存储介质。该编码方法包括:基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表;根据至少一个第三维度信息,将至少一个第三维度信息编码为多个Y*Y矩阵的块状码,其中,Y*Y矩阵中的每个元素包括位数至少为1的二进制数;以及根据第一方向二进制编码表、第二方向二进制编码表及块状码,确定呈现于物理介质表面的编码图案;其中,第一维度信息及第二维度信息分别为物理介质表面第一方向及第二方向的坐标信息。该方法一方面对其他维度信息进行了编码,另一方面提高了对坐标定位的精度。
Description
技术领域
本发明的实施方式涉及位置编码技术领域,更具体地,本发明的实施方式涉及用于物理介质表面多维度位置编码的编解码方法、装置、设备及计算机可读存储介质。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
现有技术中,可以将包含了一定信息(如数值信息、网址信息、坐标信息、文本信息或加密信息等)的编码图案打印在物理介质表面上。从而可以通过采集、分析编码图案来得到其中包含的信息。常见的编码图案如二维码、条形码等。
目前,有一种打印于物理介质表面(如纸张)上、用于表示该物理介质表面的坐标位置的编码图案。在该编码图案中包含若干可读标记符号。该可读标记符号很小,例如直径小于0.5mm。该可读标记符号可以通过如数码笔等工具读出,并由此确定数码笔在该物理介质表面上的书写笔迹。用来生成该种表示位置信息的编码图案的编码算法被称为位置编码算法。
现有的位置编码算法如Anoto公司的位置编码算法,是通过位置编码算法对物理介质表面的坐标位置进行编码,得到由非常细小的点符号组成的点阵图案,并将其打印到普通的纸张上成为数码纸,从而为数码笔提供坐标参数信息,保证数码笔在数码纸上书写时,能够准确地记录书写时的笔尖坐标,进而记录书写笔迹。
发明内容
但是,现有的位置编码算法中,通常为两个维度的位置编码方法,其仅对物理介质表面的横、纵坐标进行编码定位。此外,现有算法简单的编码方案虽然运算量低,对CPU等硬件的要求低,但所提供的编码的坐标数量有限,即坐标编码的范围有限,无法满足位置获取的精度要求;而算法复杂的编码方案运算量非常高,对硬件要求高。
为此,非常需要一种改进的编解码方法,以使编码算法的运算量小且确定位置信息的限制条件低。
在本上下文中,本发明的实施方式期望提供一种用于物理介质表面多维度位置编码的编解码方法、装置、设备及计算机可读存储介质。
在本发明实施方式的第一方面中,提供了一种用于物理介质表面多维度位置编码的编码方法,包括:基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表;根据至少一个第三维度信息,将所述至少一个第三维度信息编码为多个Y*Y矩阵的块状码,其中,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;以及根据所述第一方向二进制编码表、所述第二方向二进制编码表及所述块状码,确定呈现于所述物理介质表面的编码图案;其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息。
在本发明的一些实施例中,其中所述第三维度信息为所述物理介质表面所对应的页面序号信息,和/或,为所述物理介质表面所对应的教学科目。
在本发明的一些实施例中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表包包括:确定位置码的比特数目M;根据所述位置码的比特数目M,确定差分码的位数为N,其中N大于等于2,且小于等于M-1;在0-(2M-1)之间选择由T个整数值构成的整数值集合,并从所述整数值集合中选择1到N个整数值作为第一个差分码的各位数,形成第一个差分码,其中,T大于等于2,且小于等于(2M-1);以及通过对所述第一个差分码进行循环移位,建立所述差分码与差分码序号之间的差分位置编码表;其中,在所述差分位置编码表中所述差分码与所述差分码序号一一对应,且所述差分码序号按照一预先设定的第二顺序排列。
在本发明的一些实施例中,通过对所述第一个差分码进行循环移位,建立所述差分码与差分码序号之间的差分位置编码表包括:将所述第一个差分码列入所述差分位置编码表;将所述第一个差分码沿第一方向移1位,并将末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第P个数值,生成第二数值序列;以及执行下述将第二数值序列列入所述差分位置编码表的步骤:确定所述第二数值序列是否已出现在所述差分位置编码表中;当所述第二数值序列未出现在所述差分位置编码表中时,将所述第二数值序列确定为第二个差分码,按所述差分码序号的第二顺序,在所述差分位置编码表中将所述第二个差分码排列在所述第一个差分码之后;及当所述第二数值序列已出现在所述差分位置编码表中时,将所述末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第P+1个数值,生成新的第二数值序列,并将P的值赋值为P+1;其中,P的初始值为1;并重新执行所述将第二数值序列列入所述差分位置编码表的步骤。
在本发明的一些实施例中,通过对所述第一个差分码进行循环移位,建立所述差分码与差分码序号之间的差分位置编码表,还包括:对K依次取值2、3、4……、(2M-1),相应的依次执行以下操作:将所述第K个差分码列入所述差分位置编码表;将所述第K个差分码沿第一方向移1位,并将末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第L个数值,生成第K+1数值序列;以及执行下述将第K+1数值序列列入所述差分位置编码表的步骤:确定所述第K+1数值序列是否已出现在所述差分位置编码表中;当所述第K+1数值序列未出现在所述差分位置编码表中时,将所述第K+1数值序列确定为第K+1个差分码,按所述差分码序号的第二顺序,在所述差分位置编码表中将所述第K+1个差分码排列在所述第K个差分码之后;及当所述第K+1数值序列已出现在所述差分位置编码表中时,将所述末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第L+1个数值,生成新的第K+1数值序列,并将L的值赋值为L+1;其中,L的初始值为1;并重新执行所述将第K+1数值序列列入所述差分位置编码表的步骤。
在本发明的一些实施例中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:根据所述差分位置编码表中的差分码,建立坐标序号与起始位置码序号之间的起始位置编码表;其中,在所述起始位置编码表中所述坐标序号与所述起始位置码序号一一对应。
在本发明的一些实施例中,根据所述差分位置编码表中的差分码,建立所述坐标序号与起始位置码序号之间的起始位置编码表包括:从0-(2M-1)中选择一个整数,作为第一个起始位置码序号;以及将所述差分位置编码表中的第X个差分码的N位中每一位上的数值及其他每个差分码最末位上的数值,按照各差分码在所述差分位置编码表中的顺序,组装一[TN+N-1]位的码序列,以所述码序列中每一位数为步进,确定所述起始位置编码表中所述第一个起始位置码序号之后的其余[TN+N-1]个起始位置码序号,其中,X为预设自然数。
在本发明的一些实施例中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:将所述起始位置编码表中[TN+N]个所述起始位置码序号分别作为第一方向编码表中[TN+N]行的第一个位置码序号;以及从各行中所述第一个位置码序号开始,依次加1并对2M取模,得到各行后续的位置码序号,以构成所述第一方向编码表。
在本发明的一些实施例中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:将所述起始位置编码表中[TN+N]个所述起始位置码序号分别作为第二方向编码表中[TN+N]列的第一个位置码序号;以及从各列中所述第一个位置码序号开始,依次加1并对2M取模,得到各列后续的位置码序号,以构成所述第二方向编码表。
在本发明的一些实施例中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:确定第一个位置码;以及通过对所述第一个位置码进行循环移位,建立所述位置码与位置码序号之间的序号比特编码表;其中,在所述序号比特编码表中所述位置码与所述位置码序号一一对应,且所述位置码序号按照一预先设定的第一顺序排列。
在本发明的一些实施例中,通过对所述第一个位置码进行循环移位,建立所述位置码与位置码序号之间的序号比特编码表包括:将所述第一个位置码列在所述序号比特编码表中;将所述第一个位置码沿第一方向移1位,并将末位补0或1中的一个,生成第二比特序列;确定所述第二比特序列是否已出现在所述序号比特编码表中;当所述第二比特序列未出现在所述序号比特编码表中时,将所述第二比特序列确定为第二个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第二个位置码排列在所述第一个位置码之后;以及当所述第二比特序列已出现在所述序号比特编码表中时,将所述末位补0或1中的另一个,生成新的第二比特序列,将所述新的第二比特序列确定为第二个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第二个位置码排列在所述第一个位置码之后。
在本发明的一些实施例中,通过对所述第一个位置码进行循环移位,建立所述位置码与位置码序号之间的序号比特编码表,还包括:对K依次取值2、3、4……、(2M-1),相应的依次执行以下操作:将第K个位置码沿第一方向移1位,并将末位补0或1中的一个,生成第K+1比特序列;确定所述第K+1比特序列是否已出现在所述序号比特编码表中;当所述第K+1比特序列未出现在所述序号比特编码表中时,将所述第K+1比特序列确定为第K+1个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第K+1个位置码排列在所述第K个位置码之后;以及当所述第K+1比特序列已出现在所述序号比特编码表中时,将所述末位补0或1中的另一个,生成新的第K+1比特序列,将所述新的第K+1比特序列确定为第K+1个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第K+1个位置码排列在所述第K个位置码之后。
在本发明的一些实施例中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:根据所述序号比特编码表,分别将所述第一方向编码表中的位置码序号及所述第二方向编码表中的位置码序号转换为所述位置码,以构建所述第一方向二进制编码表及所述第二方向二进制编码表。
在本发明实施方式的第二方面中,提供了一种用于物理介质表面多维度位置编码的解码方法,包括:获取物理介质表面的位置编码图案;根据所述位置编码图案,解码出第一维度信息及第二维度信息;根据所述位置编码图案,获取Y*Y矩阵的块状码,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;解码所述块状码,以确定至少一个第三维度信息;以及将包含所述第一维度信息、所述第二维度信息及所述至少一个第三维度信息的位置信息发送,和/或根据所述位置信息回放所述物理介质表面之上的书写笔迹;其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息。
在本发明的一些实施例中,根据所述位置编码图案,解码出第一维度信息及第二维度信息包括:根据所述位置编码图案,获取(N+1)*(N+1)比特的第一二进制编码矩阵;根据如上述任一种方法中的序号比特编码表,将所述第一二进制编码矩阵转换为排列为一列的N+1个第一位置码序号;分别确定相邻的两两所述第一位置码序号之间的差值,并分别将所述差值模2M,以获取所述第一二进制编码矩阵的差分码;以及根据如上述任一种方法中的差分位置编码表,确定所述第一二进制编码矩阵的差分码对应的所述第一二进制编码矩阵在所述第一方向上的坐标序号;其中,M为所述序号比特编码表中的位置码的比特数,N为所述差分码的位数。
在本发明的一些实施例中,根据所述位置编码图案,解码出第一维度信息及第二维度信息,还包括:根据所述位置编码图案,获取(N+1)*(N+1)比特的第二二进制编码矩阵;根据所述序号比特编码表,将所述第二二进制编码矩阵转换为排列为一行的N+1个第二位置码序号;分别确定相邻的两两所述第二位置码序号之间的差值,并分别将所述差值模2M,以获取所述第二二进制编码矩阵的差分码;以及根据所述差分码位置编码表,确定所述第二二进制编码矩阵的差分码对应的所述第二二进制编码矩阵在所述第二方向上的坐标序号。
在本发明实施方式的第三方面中,提供了一种用于物理介质表面多维度位置编码的编码装置,包括:第一编码模块,用于基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表;第二编码模块,用于根据至少一个第三维度信息,将所述至少一个第三维度信息编码为多个Y*Y矩阵的块状码,其中,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;以及编码图案确定模块,用于根据所述第一方向二进制编码表、所述第二方向二进制编码表及所述块状码,确定呈现于所述物理介质表面的编码图案;其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息。
在本发明实施方式的第四方面中,提供了一种用于物理介质表面多维度位置编码的解码装置,包括:编码图案获取模块,用于获取物理介质表面的位置编码图案;第一解码模块,用于根据所述位置编码图案,解码出第一维度信息及第二维度信息;编码矩阵获取模块,用于根据所述位置编码图案,获取Y*Y矩阵的块状码,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;第二解码模块,用于解码所述块状码,以确定至少一个第三维度信息;以及坐标信息处理模块,用于将包含所述第一维度信息、所述第二维度信息及所述至少一个第三维度信息的位置信息发送,和/或根据所述位置信息回放所述物理介质表面之上的书写笔迹;其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息。
在本发明实施方式的第五方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述任一种方法。
在本发明实施方式的第六方面中,提供了一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-13任一项所述的方法。
根据本发明实施方式的用于物理介质表面位置编码的编解码方案,一方面其增加了对独立于第一维度及第二维度的其他维度信息的编码(如页面序号信息),且编码方案接单,保证了位置编码中对其他维度信息的包含量。另一方面,在对第一维度及第二维度的编码方案中,通过空间换时间,来降低运算量,从而降低算法对CPU等硬件性能的要求;此外该编解码方案无需使用“浮动”窗口,即对于编码的比特位数为m位的位置编码,解码时仅需任意m*m个可读符号即可解码,从而减低了求位置信息的限制条件,使得方案设计更加灵活,同时减低了对高速摄像头分辨率及视场(fov)的要求。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1示意性地示出了具有点阵编码图案的数码纸的示意图;
图2示意性地示出了根据本发明实施方式的用于物理介质表面多维度位置编码的编码方法;
图3示意性地示出了根据本发明另一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图4示意性地示出了根据本发明又一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图5示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图6示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图7示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图8示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图9示意性地示出了第一方向编码表的示意图;
图10示意性地示出了第二方向编码表的示意图;
图11示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图12示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图13示意性地示出了根据本发明又一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图14示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图;
图15示意性地示出了第一方向二进制编码表与块状码的叠加示意图;
图16示意性地示出了根据本发明实施方式的用于物理介质表面多维度位置编码的解码方法的流程图;
图17示意性地示出了根据本发明一实施例的用于物理介质表面多维度位置编码的解码方法的流程图;
图18示意性地示出了根据本发明另一实施例的用于物理介质表面多维度位置编码的解码方法的流程图;
图19示意性地示出了根据本发明实施方式的用于物理介质表面位置编码的编码装置的框图;
图20示意性地示出了根据本发明另一实施方式的用于物理介质表面位置编码的编码装置的框图;
图21示意性示出本发明实施方式的电子设备800的框图;
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提出了一种用于物理介质表面多维度位置编码的编解码方法、装置、设备及计算机可读存储介质。
此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
发明概述
发明人发现现有的位置编码算法中,通常为两个维度的位置编码方法,其仅对物理介质表面的横、纵坐标进行编码定位。此外,现有算法简单的编码方案虽然运算量低,对CPU等硬件的要求低,但所提供的编码的坐标数量有限,即坐标编码的范围有限,无法满足位置获取的精度要求;而算法复杂的编码方案运算量非常高,对硬件要求高。
因此,发明人经过研究发明了一种用于物理介质表面多维度位置编码的编解码方案,其一方面在保证较低运算量的基础上,提高坐标定位的精度;通过空间换时间,来降低运算量,从而降低算法对CPU等硬件性能的要求;此外该编解码方案无需使用“浮动”窗口,即对于编码的比特位数为m位的位置编码,解码时仅需任意m*m个可读符号即可解码,从而减低了求位置信息的限制条件,使得方案设计更加灵活,同时减低了对高速摄像头分辨率的要求;另一方面对其他维度(如物理介质表面所对应的页面序号信息和/或所对应的教学科目等),通过识别特定的矩阵点阵来编码,保证了对其他维度信息的包含量。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
应用场景总览
图1示意性地示出了具有点阵编码图案的数码纸的示意图。参考图1,通过位置编码算法对数码纸表面的位置信息进行编码后得到的编码图案中包括很多肉眼几乎不可见的可读符号,可读符号可由直径为50μm的圆点组成,相邻符号之间的间距可为300μm。每6*6=36个点,构成一个最小的数据单元,分布在1.8mm*1.8mm=3.24mm2面积上。可读符号例如可以根据圆点位置的不同分为四种,如图1中最右边的示意图所示,分别为圆点位于两条参考线相交点右边、左边、上边及下边四种符号,每种符号可以使用两位二进制比特表示,例如00、01、10及11,其中如第一位比特表示该物理介质表面X方向的坐标,第二位比特表示该物理介质表面Y方向的坐标。
数码笔在数码纸上书写时,对笔尖经过的点的信息(如点阵的坐标、书写速度、时间及压力等)进行提取、存储和发送,其本身并不对这些信息进行处理。数码笔将生成的信息传输到处理器通过解码算法进行解析处理,从而还原笔迹坐标及其他笔迹动态数据等。
上述应用场景中数码纸上的编码图案示例不对本发明的保护范围形成限制,本发明的方案可以使用其他的编码图案呈现位置编码结果,本发明的重点在于改进的位置编码算法,重点并不在于用何种图案来呈现位置编码结果。
示例性方法
下面结合图1的应用场景,参考图2至图15来描述根据本发明示例性实施方式的用于物理介质表面多维度位置编码的编解码方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
图2示意性地示出了根据本发明实施方式的用于物理介质表面多维度位置编码的编码方法。如图2所示,方法10包括:
在步骤S12中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表。
其中,第一维度信息及第二维度信息分别为物理介质表面第一方向即第二方向的坐标信息,如Y轴方向坐标信息及X轴方向坐标信息。
在步骤S14中,根据至少一个第三维度信息,将至少一个第三维度信息编码为多个Y*Y矩阵的块状码。
其中,该Y*Y矩阵中的每个矩阵中元素包括位数至少为1的二进制数。Y*Y矩阵可对应于Y*Y个上述的可读符号。每个矩阵中元素中包含的每个二进制比特用于表示一个维度信息。如每个元素中有1个比特时,表示第三维度信息;每个元素中有2个比特时,表示第四维度信息等等。其中,Y为自然数。
在一些实施例中,第三维度信息例如可以为物理介质表面所述对应的页面序号信息,和/或物理介质表面所对应的教学科目。
以第三维度信息为物理介质表面所对应的页面序号信息为例,将当前页面的序号进行编码,例如可以采用现有的二维码的编码形式进行编码,再如二维码中的数据码,加上纠错码后,形成Y*Y矩阵的块状码。需要说明的是,二维码的编码形式为本领域技术人员所知悉,在此不再赘述。
在步骤S16中,根据第一方向二进制编码表、第二方向二进制编码表及块状码,确定呈现于物理介质表面的编码图案。
得到编码图案后,例如可以如上述“应用场景总览”部分所述,将其打印于数码纸之上,用于确定数码笔的书写笔迹。需要说明的是,与图1中采用两个维度(X方向及Y方向)确定的可读符号不同,本发明实施方式中的编码方法中的可读符号采用多个维度来定义,以三个维度为例,可读符号的映射表如表一所示:
表一 可读符多维度映射表
下面以对物理介质表面所对应的一个页面进行位置编码为例说明:
图3示意性地示出了根据本发明另一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图3为图2中步骤S12提供了一种实施方法。如图3所示,步骤S12包括:
在步骤S121中,确定位置码的比特数目M。
首先,确定位置码采用的比特数目,以M=4为例,则有0000~1111共2M=16个位置码。
在步骤S122中,根据位置码的比特数目M,确定差分码的位数为N,其中N大于或等于2,且小于或等于M-1。
例如,仍以M=4为例,则差分码的位数N大于或等于2,且小于或等于3。
在步骤S123中,在0-(2M-1)之间选择由T个整数值构成的整数值集合,并从该整数值集合中选择1到N个整数值作为第一个差分码的各位数,形成第一个差分码,其中T大于或等于2,且小于或等于(2M-1)。
例如,仍以M=4为例,T大于或等于2,且小于或等于15。以N=3,T=3为例,在0~15之间选择0、1及2共3个整数值作为该整数值集合,如可以选择222作为第一个差分码。
在步骤S124中,通过对第一个差分码进行循环移位,建立差分码与差分码序号之间的差分位置编码表。
在差分位置编码表中,差分码与差分码序号一一对应,且差分码序号按照一预先设定的第二顺序排列。
例如,差分码序号通过十进制数表示,仍以M=4,N=3及T=3为例,则共有TM=27个差分码,差分码序号为0~26;第一顺序例如为由小到大的顺序,则在该差分位置编码表中,确定的第一个差分码对应的位置码序号为0。
通过对第一个差分码进行循环移位,例如将第一个差分码沿第一方向移1位,并将末位设为按预先设定的第三顺序排列的、整数值集合T个数值中的第P个数值,生成第二数值序列。同上,末位是指第一方向的反方向的最后一位,如果第一方向为左,则末位指最右边的一位,如果第一方向为右,则末位指最左边的一位。
图4示意性地示出了根据本发明又一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图4为图3中步骤S124提供了一种实施方法。如图4所示,步骤S124包括:
在步骤S1241中,将第一个差分码列在差分位置编码表中。
同上,仍以M=4,N=3及T=3为例,序号为0~26;第一顺序例如为由小到大的顺序,则在该序号比特编码表中,确定的第一个位置码对应的位置码序号为0。
不失一般性地,为了便于说明书,在下述说明中,均以第一个差分码为222为例。
在步骤S1242中,将第一个差分码沿第一方向移1位,并将末位补为按预先设定的第三顺序排列的、整数值集合T个数值中的第P个数值,生成第二数值序列。
其中,P的初始值为1。
同上,末位是指第一方向的反方向的最后一位,如果第一方向为左,则末位指最右边的一位,如果第一方向为右,则末位指最左边的一位。
以第一方向为左,整数值集合为0、1及2,第三顺序为由小到大,P=1为例。将第一个差分码222左移1位,且末位补0,则可得到第二比特序列220。
在步骤S1243中,确定第二数值序列是否已出现在差分位置编码表中,如果否,则进入步骤S1244;否则,则进入步骤S1245。
在一些实施例中,可以通过一标志映射图来确定第二数值序列是否已出现在序号比特编码表中。具体地,构建一第二标志映射图,其中包括序号分别为0~(TN-1)的TN个标志位,初始时每个标志位被设置为未占用(如置位为0)。首先确定第一个差分码的十进制数值,例如可以3为底,计算第一个差分码的十进制数值,如222的十进制数值为2*32+2*31+2*30=26。将以第一个差分码换算得到的十进制数为序号的标志位置位为已占用(如置位为1)。之后,确定第二数值序列的十进制数值,判断在第二标志映射图中以该十进制数为序号的标志位是否为未占用,如果是,则该第二数值序列未出现在差分位置编码表中;否则,该第二数值序列已出现在差分位置编码表中。
在步骤S1244中,当第二数值序列未出现在差分位置编码表中时,将第二数值序列确定为第二个差分码,按照差分码序号的第二顺序,在差分位置编码表中,将第二个差分码排列在第一个差分码之后。
在步骤S1245中,当第二数值序列已出现在差分位置编码表中时,将末位设为按预先设定的第三顺序排列的、整数值集合T个数值中的第P+1个数值,生成新的第二数值序列,并将P的值赋值为P+1;并重新进入步骤S1243。
图5示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图5为图3中步骤S124提供了一种进一步的实施方法。如图5所示,步骤S124还包括:
对K依次取值2、3、4、……、(2M-1),并依次的执行以下步骤:
在步骤S1246中,将第K个差分码列在差分位置编码表中。
以K=2为例,第二个差分码如为上述的220,则将220列入序号比特编码表中。
在步骤S1247中,将第K个差分码沿第一方向移1位,并将末位补为按预先设定的第三顺序排列的、整数值集合T个数值中的第P个数值,生成第K+1数值序列。
其中,P的初始值为1。
同上,末位是指第一方向的反方向的最后一位,如果第一方向为左,则末位指最右边的一位,如果第一方向为右,则末位指最左边的一位。
以第一方向为左,整数值集合为0、1及2,第三顺序为由小到大,P=1为例。将第二个差分码220左移1位,且末位补0,则可得到第三数值序列200。
在步骤S1248中,确定第K+1数值序列是否已出现在差分位置编码表中,如果否,则进入步骤S1249;否则,则进入步骤S1250。
在一些实施例中,仍可以通过标志映射图来确定第K+1数值序列是否已出现在差分位置编码表中。具体地,将第K+1数值序列换算为十进制数,例如可以3为底,计算第二个差分码的十进制数值,如220的十进制数值为2*32+2*31+0*30=24。判断在第二标志映射图中以该十进制数为序号的标志位是否为未占用,如果是,则该第K+1数值序列未出现在差分位置编码表中;否则,该第K+1数值序列已出现在差分位置编码表中。
在步骤S1249中,当第K+1数值序列未出现在差分位置编码表中时,将第K+1数值序列确定为第K+1个差分码,按照差分码序号的第二顺序,在差分位置编码表中,将第K+1个差分码排列在第K个差分码之后。
在步骤S1250中,当第K+1数值序列已出现在差分位置编码表中时,将末位设为按预先设定的第三顺序排列的、整数值集合T个数值中的第P+1个数值,生成新的第K+1数值序列,并将P的值赋值为P+1;并重新进入步骤S1248。
仍以M=4,N=3,T=3,第一个位置码为222,第一方向为左,整数值集合为0、1及2且第三顺序为从小到大为例,依次执行上述各步骤后,得到的差分位置编码表例如如表二所示:
表二 差分位置编码表
图6示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图6为图2中步骤S12提供了一种进一步的实施方法。如图6所示,步骤S12还包括:
在步骤S125中,根据差分位置编码表中的差分码,建立坐标序号与起始位置码序号之间的起始位置编码表。
其中,在起始位置编码表中坐标序号与起始位置码序号一一对应。
图7示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图7为图6中步骤S125提供了一种实施方法。如图7所示,步骤S125包括:
在步骤S1251中,从0-(2M-1)中选择一个整数,作为第一个起始位置码序号。
仍以M=4为例,例如,可以选择第一个起始位置码序号为0。
在步骤S1252中,将差分位置编码表中的第X个差分码的N位中每一位上的数值及其他每个差分码最末位上的数值,按照各差分码在所述差分位置编码表中的顺序,组装一[TN+N-1]位的码序列,以该码序列中每一位数为步进,确定起始位置编码表中第一个起始位置码序号之后的其余[TN+N-1]个起始位置码序号。
其中,X为预设自然数。
例如,以表二中的差分位置编码表中的差分码及其顺序为例,由第一个差分码的三位数及其后的每个差分码的最末位上的数值组成的[TN+N-1]=29位的码序列为2、2、2、0、0、0、1、……、2、1、2、2,以该码序列中每一位数为步进,确定起始位置编码表中第一个起始位置码序号之后的其余[TN+N-1]个起始位置码序号,由此构建如表三所示的起始位置编码表。
表三 起始位置编码表
图8示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图8为图2中步骤S12提供了一种进一步的实施方法。如图8所示,步骤S12还包括:
在步骤S126中,将起始位置编码表中[TN+N]个起始位置码序号分别作为第一方向编码表中[TN+N]行的第一个位置码序号。
例如,第一方向编码表为Y轴方向编码表。
在步骤S127中,从各行中第一个位置码序号开始,依次加1并对2M取模,得到各行后续的位置码序号,以构成第一方向编码表。
以表三所示的起始位置编码表为例,第一方向编码表如图9所示。
在步骤S128中,将起始位置编码表中[TN+N]个起始位置码序号分别作为第二方向编码表中[TN+N]列的第一个位置码序号。
例如,第二方向编码表为X轴方向编码表。
在步骤S129中,从各列中第一个位置码序号开始,依次加1并对2M取模,得到各列后续的位置码序号,以构成第二方向编码表。
以表三所示的起始位置编码表为例,第二方向编码表如图10所示。
图11示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图11为图2中步骤S12提供了一种进一步的实施方法。如图11所示,步骤S12还包括:
在步骤S130中,确定第一个位置码。
例如,仍以M=4为例,可以从0000~1111中选择一个位置码作为第一个位置码。
在步骤S131中,通过对第一个位置码进行循环移位,建立位置码与位置码序号之间的序号比特编码表。
其中,在该序号比特编码表中,位置码与位置码序号一一对应,且位置码序号按照一预先设定的第一顺序排序。
例如,位置码序号通过十进制数表示,仍以M=4为例,位置码序号为0~15;第一顺序例如为由小到大的顺序,则在该序号比特编码表中,确定的第一个位置码对应的位置码序号为0。
通过对第一个位置码进行循环移位,例如将该第一个位置码沿第一方向移1位,并将末位补0或1从而得到下一个位置码。末位是指第一方向的反方向的最后一位,如果第一方向为左,则末位指最右边的一位,如果第一方向为右,则末位指最左边的一位。
图12示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图12为图11中步骤S131提供了一种进一步的实施方法。如图12所示,步骤S131还包括:
在步骤S1311中,将第一个位置码列在序号比特编码表中。
同上,仍以M=4为例,位置码序号为0~15;第一顺序例如为由小到大的顺序,则在该序号比特编码表中,确定的第一个位置码对应的位置码序号为0。
不失一般性地,为了便于说明书,在下述说明中,均以第一个位置码为1111为例。
在步骤S1312中,将第一个位置码沿第一方向移1位,并将末位补0或1中的其中之一,生成第二比特序列。
同上,末位是指第一方向的反方向的最后一位,如果第一方向为左,则末位指最右边的一位,如果第一方向为右,则末位指最左边的一位。
以第一方向为左,末位补0为例。将第一个位置码1111左移1位,且末位补0,则可得到第二比特序列1110。
在步骤S1313中,确定第二比特序列是否已出现在序号比特编码表中,如果否,则进入步骤S1314;否则,则进入步骤S1315。
在一些实施例中,可以通过一标志映射图来确定第二比特序列是否已出现在序号比特编码表中。具体地,构建一第一标志映射图,其中包括序号分别为0~(2M-1)的2M个标志位,初始时每个标志位被设置为未占用(如置位为0)。首先将以第一个位置码换算得到的十进制数为序号的标志位置位已占用(如置位为1)。之后,将第二比特序列换算为十进制数,判断在第一标志映射图中以该十进制数为序号的标志位是否为未占用,如果是,则该第二比特序列未出现在序号比特编码表中;否则,该第二比特序列已出现在序号比特编码表中。
在步骤S1314中,当第二比特序列未出现在序号比特编码表中时,将第二比特序列确定为第二个位置码,按照位置码序号的第一顺序,在序号比特编码表中,将第二个位置码排列在第一个位置码之后。
在步骤S1315中,当第二比特序列出现在序号比特编码表中时,将末位补0或1中的另外一个,生成新的第二比特序列,将新的第二比特序列确定为第二个位置码,按照位置码序号的第一顺序,在序号比特编码表中,将第二个位置码排列在第一个位置码之后。
图13示意性地示出了根据本发明又一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图13为图11中步骤S131提供了一种进一步的实施方法。如图13所示,步骤S131还包括:
对K依次取值2、3、4、……、(2M-1),并依次的执行以下步骤:
在步骤S1316中,将第K个位置码列在序号比特编码表中。
以K=2为例,第二个位置码如为上述的1110,则将1110列入序号比特编码表中。
在步骤S1317中,将第K个位置码沿第一方向移1位,并将末位补0或1中的其中之一,生成第K+1比特序列。
同上,末位是指第一方向的反方向的最后一位,如果第一方向为左,则末位指最右边的一位,如果第一方向为右,则末位指最左边的一位。
以第一方向为左,末位补0为例。将第二个位置码1110左移1位,且末位补0,则可得到第三比特序列1100。
在步骤S1318中,确定第K+1比特序列是否已出现在序号比特编码表中,如果否,则进入步骤S1319;否则,则进入步骤S1320。
在一些实施例中,仍可以通过标志映射图来确定第K+1比特序列是否已出现在序号比特编码表中。具体地,将第K+1比特序列换算为十进制数,判断在第一标志映射图中以该十进制数为序号的标志位是否为未占用,如果是,则该第K+1比特序列未出现在序号比特编码表中;否则,该第K+1比特序列已出现在序号比特编码表中。
在步骤S1319中,当第K+1比特序列未出现在序号比特编码表中时,将第K+1比特序列确定为第K+1个位置码,按照位置码序号的第一顺序,在序号比特编码表中,将第K+1个位置码排列在第K个位置码之后。
在步骤S1320中,当第K+1比特序列出现在序号比特编码表中时,将末位补0或1中的另外一个,生成新的第K+1比特序列,将新的第K+1比特序列确定为第K+1个位置码,按照位置码序号的第一顺序,在序号比特编码表中,将第K+1个位置码排列在第K个位置码之后。
仍以M=4,第一个位置码为1111,第一方向为左为例,依次执行上述各步骤后,得到的序号比特编码表例如如表四所示:
表四 序号比特编码表
图14示意性地示出了根据本发明再一实施例的用于物理介质表面多维度位置编码的编码方法的流程图。图14为图2中步骤S12提供了一种进一步的实施方法。如图14所示,步骤S12还包括:
在步骤S132中,根据序号比特编码表,分别将第一方向编码表中的位置码序号及第二方向编码表中的位置码序号转换为位置码,以构建第一方向二进制编码表及第二方向二进制编码表。
以图9的方框中的如下位置编码序号为例:
14 15 0 1
15 0 1 2
15 0 1 2
15 0 1 2
转换为部分的第一方向二进制编码表如下:
表五 部分的第一方向二进制编码表
1 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
以图10的方框中的如下位置编码序号为例:
13 13 15 15
14 14 0 0
15 15 1 1
0 0 2 2
转换为部分的第二方向二进制编码表如下:
表六 部分的第二方向二进制编码表
在确定了上述的第一方向二进制编码表及第二方向二进制编码表后,将第一方向二进制编码表与第二方向二进制编码表的左上角对齐,组成若干重叠的、包含由第一方向二进制编码表和第二方向二进制编码表中的各1比特组成的2比特的小格。每个小格中的2比特第一位例如表示第一方向(如Y轴方向),第二位例如表示第二方向(如X轴方向)。此外,再根据块状码,在每个小格中,增加第三个维度的编码。以Y为4,且每个矩阵元素包含1个比特为例,即块状码为4*4比特矩阵,块状码与第一方向(如Y轴方向)二进制编码表的叠加如图15所示,其中每4*4比特矩阵块状码例如用于表示当前的页面序号(如123456)。
需要注意的是,对第三维度信息编码得到的块状码,从第一方向二进制编码表或第二方向二进制编码表的左上角开始,依次开始叠加Y*Y个矩阵块状码(如图中4*4比特矩阵)。因此,在解码时,对Y*Y个块状码的获取,同样需要从第一方向二进制编码表或第二方向二进制编码表的左上角开始依次选取,例如不能从图15中的第2行、第2列的比特1开始获取4*4的比特矩阵。而只能从第0行、第0列或从第4行、第4列或从第8行、第8列,依次类推,开始获取该4*4的比特矩阵。
再从上述叠加的第一方向二进制编码表、第二方向二进制编码表、块状码构成的小格中,确定第一维度、第二维度及第三维度的比特,该3个比特分别可以为000、001、010、011、100、101、110、111,分别表示如表一种的8种可读符号,由此可根据不同的可读符号构成编码后的编码图案。
图16示意性地示出了根据本发明实施方式的用于物理介质表面多维度位置编码的解码方法的流程图。如图16所示,方法20包括:
在步骤S22中,获取物理介质表面的位置编码图案。
在步骤S24中,根据该位置编码图案,解码出第一维度信息及第二维度信息。
其中,该第一维度信息及该第二维度信息分别为物理介质表面第一方向及第二方向的坐标信息。
在步骤S26中,根据该位置编码图案,获取Y*Y矩阵的块状码。
其中Y*Y矩阵中的每个矩阵元素包括位数至少为1的二进制数。
需要说明的是,如上所述,在获取Y*Y矩阵的块状码时,需要从第一方向二进制编码表或第二方向二进制编码表的左上角开始依次选取,例如不能从图15中的第2行、第2列的比特1开始获取4*4的比特矩阵。而只能从第0行、第0列或从第4行、第4列或从第8行、第8列,依次类推,开始获取该4*4的比特矩阵。
在步骤S28中,解码该块状码,以确定至少一个第三维度信息。
对应所采用的编码算法,相应地对该块状码进行解码。
在步骤S30中,将包含该第一维度信息、第二维度信息及该至少一个第三维度信息的位置信息发送,和/或根据该位置信息回放该物理介质表面之上的书写笔迹。
图17示意性地示出了根据本发明一实施例的用于物理介质表面多维度位置编码的解码方法的流程图。图17为图16中步骤S24提供了一种实施方法。如图17所示,步骤S24包括:
在步骤S241中,根据所述编码图案,获取(N+1)*(N+1)比特的第一二进制编码矩阵。
例如,通过“应用场景总览”部分所述的数码笔中的摄像头采集到一幅图片,经过剪切、旋转、去噪、二值化等处理后,得到解析出的二进制编码矩阵。以N=3为例,分别取前一位的比特,得到如表七所示的第一二进制编码矩阵:
表七
1 | 0 | 1 | 1 |
0 | 1 | 1 | 1 |
0 | 1 | 1 | 1 |
0 | 1 | 1 | 1 |
在步骤S242中,根据序号比特编码表,将第一二进制编码矩阵转换为排列为一列的N+1个第一位置码序号。
如将表九中的第一二进制编码矩阵转换为位置码序号:
14
15
15
15
在步骤S243中,分别确定相邻的两两第一位置编码序号之间的差值,并分别将差值模2M,以获取第一二进制编码矩阵的差分码。
其中M为序号比特编码表中的位置码的比特数,N为差分码的位数。
以M=4为例,如求各位置码序号的差值:
15-14=1;15-15=0;15-15=0
对各差值取模:
1mod 16=1;0mod 16=0;0mod 16=0
得到差分码:1 0 0。
在步骤S244中,根据差分位置编码表,确定第一二进制编码矩阵的差分码对应的第一二进制编码矩阵在第一方向上的坐标序号。
如根据表二可查得,第一方向上的坐标序号为6,第一方向例如为Y轴方向,即y=6。
在一些实施例中,获取的第一二进制编码矩阵还可以很大,再将其分割成(N+1)*(N+1)矩阵。分别计算各(N+1)*(N+1)矩阵的第一方向的坐标,再将计算出的第一方向的坐标中重复值最多的坐标值作为第一方向的坐标。
图18示意性地示出了根据本发明另一实施例的用于物理介质表面多维度位置编码的解码方法的流程图。图18为图16中步骤S24提供了一种进一步的实施方法。如图18所示,步骤S24还包括:
在步骤S245中,根据位置编码图案,获取(N+1)*(N+1)比特的第二二进制编码矩阵。
分别取前一位的比特,例如得到如表八所示的第二二进制编码矩阵:
表八
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
0 | 0 | 1 | 1 |
1 | 1 | 1 | 1 |
在步骤S246中,根据序号比特编码表,将第二二进制编码矩阵转换为排列为一行的N+1个第二位置码序号。
如将表十中的的第二二进制编码矩阵转换为位置码序号:
13 13 15 15
在步骤S247中,分别确定相邻的两两第二位置码序号之间的差值,并分别将差值模2M,以获取第二二进制编码矩阵的差分码。
仍以M=4为例,如求各位置码序号的差值:
13-13=0;15-13=2;15-15=0
对各差值取模:
0mod 16=0;2mod 16=2;0mod 16=0
得到差分码0 2 0。
在步骤S248中,根据差分码位置编码表,确定第二二进制编码矩阵的差分码对应的第二二进制编码矩阵在第二方向上的坐标序号。
如根据表二可查得,第二方向上的坐标序号为8,第二方向例如为X轴方向,即x=8。
在一些实施例中,获取的第二二进制编码矩阵也可以很大,再将其分割成(N+1)*(N+1)矩阵。分别计算各(N+1)*(N+1)矩阵的第二方向的坐标,再将计算出的第二方向的坐标中重复值最多的坐标值作为第二方向的坐标。
根据本发明实施方式的用于物理介质表面位置编码的编解码方案,一方面其增加了对独立于第一维度及第二维度的其他维度信息的编码(如页面序号信息),且编码方案接单,保证了位置编码中对其他维度信息的包含量。另一方面,在对第一维度及第二维度的编码方案中,通过空间换时间,来降低运算量,从而降低算法对CPU等硬件性能的要求;此外该编解码方案无需使用“浮动”窗口,即对于编码的比特位数为m位的位置编码,解码时仅需任意m*m个可读符号即可解码,从而减低了求位置信息的限制条件,使得方案设计更加灵活,同时减低了对高速摄像头分辨率及视场(fov)的要求。
示例性装置
在介绍了本发明示例性实施方式的方法之后,接下来,参考图19及图20对本发明示例性实施方式的用于物理介质表面多维度位置编码的解码装置及解码装置进行说明。
图19示意性地示出了根据本发明实施方式的用于物理介质表面位置编码的编码装置的框图。如图19所示,该装置30包括:第一编码模块31、第二编码模块32及编码图案确定模块33。
其中,第一编码模块31用于基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表。
所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息。
第二编码模块32用于根据至少一个第三维度信息,将所述至少一个第三维度信息编码为多个Y*Y矩阵的块状码,其中,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数。
编码图案确定模块33用于根据所述第一方向二进制编码表、所述第二方向二进制编码表及所述块状码,确定呈现于所述物理介质表面的编码图案。
图20示意性地示出了根据本发明另一实施方式的用于物理介质表面位置编码的编码装置的框图。如图20所示,该装置40包括:编码图案获取模块41、第一解码模块42、编码矩阵获取模块43、第二解码模块44及坐标信息处理模块45。
其中,编码图案获取模块41用于获取物理介质表面的位置编码图案。
第一解码模块42用于根据所述位置编码图案,解码出第一维度信息及第二维度信息。
所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息。
编码矩阵获取模块43用于根据所述位置编码图案,获取Y*Y矩阵的块状码,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数。
第二解码模块44用于解码所述块状码,以确定第至少一个三维度信息,
坐标信息处理模块45用于将包含所述第一维度信息、所述第二维度信息及所述至少一个第三维度信息的位置信息发送,和/或根据所述位置信息回放所述物理介质表面之上的书写笔迹。
示例性设备
在介绍了本发明示例性实施方式的方法和装置之后,接下来,介绍根据本发明的另一示例性实施方式的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
在一些可能的实施方式中,根据本发明实施方式的电子设备可以至少包括至少一个处理单元、以及至少一个存储单元。其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述处理单元执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的用于物理介质表面多维度位置编码的编码方法及解码方法中的步骤。例如,所述处理单元可以执行如图2中所示的步骤S12~S16,或者如图16中所示的步骤S22~S30等。
下面参照图21来描述根据本发明的这种实施方式的电子设备的框图。图21示意性示出本发明实施方式的电子设备800的框图,该电子设备设备800仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图21所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元801、上述至少一个存储单元802、连接不同系统组件(包括存储单元802和处理单元801)的总线803。
总线803表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储单元802可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)8021和/或高速缓存存储器8022,还可以进一步包括只读存储器(ROM)8023。
存储单元802还可以包括具有一组(至少一个)程序模块8024的程序/实用工具8025,这样的程序模块8024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备800也可以与一个或多个外部设备804(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个能与电子设备800交互的设备通信,和/或该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口805进行。并且,电子设备800还可以通过网络适配器806与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图8所示,网络适配器806通过总线803与用于会话控制的设备800的其它模块通信。应当明白,尽管图21中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
示例性程序产品
在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的用于物理介质表面多维度位置编码的编码方法及解码方法中的步骤,例如,所述终端设备可以执行如图2中所示的步骤S12~S16,或者如图16中所示的步骤S22~S30等。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于物理介质表面多维度位置编码的编码装置及解码装置的的若干装置或子装置,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (21)
1.一种用于物理介质表面多维度位置编码的编码方法,包括:
基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表;
根据至少一个第三维度信息,将所述至少一个第三维度信息编码为多个Y*Y矩阵的块状码,其中,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;以及
根据所述第一方向二进制编码表、所述第二方向二进制编码表及所述块状码,确定呈现于所述物理介质表面的编码图案;
其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息;
其中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表包括:
确定位置码的比特数目M;
根据所述位置码的比特数目M,确定差分码的位数为N,其中N大于等于2,且小于等于M-1;
在0-(2M-1)之间选择由T个整数值构成的整数值集合,并从所述整数值集合中选择1到N个整数值作为第一个差分码的各位数,形成第一个差分码,其中,T大于等于2,且小于等于(2M-1);以及
通过对所述第一个差分码进行循环移位,建立所述差分码与差分码序号之间的差分位置编码表;
其中,在所述差分位置编码表中所述差分码与所述差分码序号一一对应,且所述差分码序号按照一预先设定的第二顺序排列。
2.根据权利要求1所述的方法,其中所述第三维度信息为所述物理介质表面所对应的页面序号信息,和/或,为所述物理介质表面所对应的教学科目。
3.根据权利要求1所述的方法,通过对所述第一个差分码进行循环移位,建立所述差分码与差分码序号之间的差分位置编码表包括:
将所述第一个差分码列入所述差分位置编码表;
将所述第一个差分码沿第一方向移1位,并将末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第P个数值,生成第二数值序列;以及
执行下述将第二数值序列列入所述差分位置编码表的步骤:
确定所述第二数值序列是否已出现在所述差分位置编码表中;
当所述第二数值序列未出现在所述差分位置编码表中时,将所述第二数值序列确定为第二个差分码,按所述差分码序号的第二顺序,在所述差分位置编码表中将所述第二个差分码排列在所述第一个差分码之后;及
当所述第二数值序列已出现在所述差分位置编码表中时,将所述末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第P+1个数值,生成新的第二数值序列,并将P的值赋值为P+1;其中,P的初始值为1;并重新执行所述将第二数值序列列入所述差分位置编码表的步骤。
4.根据权利要求3所述的方法,通过对所述第一个差分码进行循环移位,建立所述差分码与差分码序号之间的差分位置编码表,还包括:对K依次取值2、3、4……、(2M-1),相应的依次执行以下操作:
将所述第K个差分码列入所述差分位置编码表;
将所述第K个差分码沿第一方向移1位,并将末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第L个数值,生成第K+1数值序列;以及
执行下述将第K+1数值序列列入所述差分位置编码表的步骤:
确定所述第K+1数值序列是否已出现在所述差分位置编码表中;
当所述第K+1数值序列未出现在所述差分位置编码表中时,将所述第K+1数值序列确定为第K+1个差分码,按所述差分码序号的第二顺序,在所述差分位置编码表中将所述第K+1个差分码排列在所述第K个差分码之后;及
当所述第K+1数值序列已出现在所述差分位置编码表中时,将所述末位设为按预先设定的第三顺序排列的、所述整数值集合T个数值中的第L+1个数值,生成新的第K+1数值序列,并将L的值赋值为L+1;其中,L的初始值为1;并重新执行所述将第K+1数值序列列入所述差分位置编码表的步骤。
5.根据权利要求1所述的方法,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:
根据所述差分位置编码表中的差分码,建立坐标序号与起始位置码序号之间的起始位置编码表;
其中,在所述起始位置编码表中所述坐标序号与所述起始位置码序号一一对应。
6.根据权利要求5所述的方法,根据所述差分位置编码表中的差分码,建立所述坐标序号与起始位置码序号之间的起始位置编码表包括:
从0-(2M-1)中选择一个整数,作为第一个起始位置码序号;以及
将所述差分位置编码表中的第X个差分码的N位中每一位上的数值及其他每个差分码最末位上的数值,按照各差分码在所述差分位置编码表中的顺序,组装一[TN+N-1]位的码序列,以所述码序列中每一位数为步进,确定所述起始位置编码表中所述第一个起始位置码序号之后的其余[TN+N-1]个起始位置码序号,其中,X为预设自然数。
7.根据权利要求5所述的方法,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:
将所述起始位置编码表中[TN+N]个所述起始位置码序号分别作为第一方向编码表中[TN+N]行的第一个位置码序号;以及
从各行中所述第一个位置码序号开始,依次加1并对2M取模,得到各行后续的位置码序号,以构成所述第一方向编码表。
8.根据权利要求7所述的方法,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:
将所述起始位置编码表中[TN+N]个所述起始位置码序号分别作为第二方向编码表中[TN+N]列的第一个位置码序号;以及
从各列中所述第一个位置码序号开始,依次加1并对2M取模,得到各列后续的位置码序号,以构成所述第二方向编码表。
9.根据权利要求8所述的方法,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:
确定第一个位置码;以及
通过对所述第一个位置码进行循环移位,建立所述位置码与位置码序号之间的序号比特编码表;
其中,在所述序号比特编码表中所述位置码与所述位置码序号一一对应,且所述位置码序号按照一预先设定的第一顺序排列。
10.根据权利要求9所述的方法,通过对所述第一个位置码进行循环移位,建立所述位置码与位置码序号之间的序号比特编码表包括:
将所述第一个位置码列在所述序号比特编码表中;
将所述第一个位置码沿第一方向移1位,并将末位补0或1中的一个,生成第二比特序列;
确定所述第二比特序列是否已出现在所述序号比特编码表中;
当所述第二比特序列未出现在所述序号比特编码表中时,将所述第二比特序列确定为第二个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第二个位置码排列在所述第一个位置码之后;以及
当所述第二比特序列已出现在所述序号比特编码表中时,将所述末位补0或1中的另一个,生成新的第二比特序列,将所述新的第二比特序列确定为第二个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第二个位置码排列在所述第一个位置码之后。
11.根据权利要求10所述的方法,通过对所述第一个位置码进行循环移位,建立所述位置码与位置码序号之间的序号比特编码表,还包括:对K依次取值2、3、4……、(2M-1),相应的依次执行以下操作:
将第K个位置码沿第一方向移1位,并将末位补0或1中的一个,生成第K+1比特序列;
确定所述第K+1比特序列是否已出现在所述序号比特编码表中;
当所述第K+1比特序列未出现在所述序号比特编码表中时,将所述第K+1比特序列确定为第K+1个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第K+1个位置码排列在所述第K个位置码之后;以及
当所述第K+1比特序列已出现在所述序号比特编码表中时,将所述末位补0或1中的另一个,生成新的第K+1比特序列,将所述新的第K+1比特序列确定为第K+1个位置码,按照所述位置码序号的第一顺序,在所述序号比特编码表中将所述第K+1个位置码排列在所述第K个位置码之后。
12.根据权利要求9所述的方法,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表,还包括:
根据所述序号比特编码表,分别将所述第一方向编码表中的位置码序号及所述第二方向编码表中的位置码序号转换为所述位置码,以构建所述第一方向二进制编码表及所述第二方向二进制编码表。
13.一种用于物理介质表面多维度位置编码的解码方法,包括:
获取物理介质表面的位置编码图案;
根据所述位置编码图案,解码出第一维度信息及第二维度信息;
根据所述位置编码图案,获取Y*Y矩阵的块状码,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;
解码所述块状码,以确定至少一个第三维度信息;以及
将包含所述第一维度信息、所述第二维度信息及所述至少一个第三维度信息的位置信息发送,和/或根据所述位置信息回放所述物理介质表面之上的书写笔迹;
其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息;
其中,所述根据所述位置编码图案,解码出第一维度信息及第二维度信息包括:
根据所述位置编码图案,获取(N+1)*(N+1)比特的第一二进制编码矩阵;
根据如权利要求9-11任一项所述的方法中的序号比特编码表,确定所述第一二进制编码矩阵的差分码;
根据如权利要求1-4任一项所述的方法中的差分位置编码表,确定所述第一二进制编码矩阵的差分码对应的所述第一二进制编码矩阵在所述第一方向上的坐标序号;以及
根据所述位置编码图案,获取(N+1)*(N+1)比特的第二二进制编码矩阵;
根据所述序号比特编码表,确定所述第二二进制编码矩阵的差分码;
根据所述差分位置编码表,确定所述第二二进制编码矩阵的差分码对应的所述第二二进制编码矩阵在所述第二方向上的坐标序号;
其中,N为所述差分码的位数。
14.根据权利要求13所述的方法,根据如权利要求9-11任一项所述的方法中的序号比特编码表,确定所述第一二进制编码矩阵的差分码包括:
根据所述序号比特编码表,将所述第一二进制编码矩阵转换为排列为一列的N+1个第一位置码序号;
分别确定相邻的两两所述第一位置码序号之间的差值,并分别将所述差值模2M,以获取所述第一二进制编码矩阵的差分码;
其中,M为所述序号比特编码表中的位置码的比特数。
15.根据权利要求14所述的方法,根据所述序号比特编码表,确定所述第二二进制编码矩阵的差分码包括:
根据所述序号比特编码表,将所述第二二进制编码矩阵转换为排列为一行的N+1个第二位置码序号;
分别确定相邻的两两所述第二位置码序号之间的差值,并分别将所述差值模2M,以获取所述第二二进制编码矩阵的差分码。
16.一种用于物理介质表面多维度位置编码的编码装置,包括:
第一编码模块,用于基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表;
第二编码模块,用于根据至少一个第三维度信息,将所述至少一个第三维度信息编码为多个Y*Y矩阵的块状码,其中,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;以及
编码图案确定模块,用于根据所述第一方向二进制编码表、所述第二方向二进制编码表及所述块状码,确定呈现于所述物理介质表面的编码图案;
其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息;
其中,基于循环编码,将第一维度信息及第二维度信息分别编码为第一方向二进制编码表及第二方向二进制编码表包括:
确定位置码的比特数目M;
根据所述位置码的比特数目M,确定差分码的位数为N,其中N大于等于2,且小于等于M-1;
在0-(2M-1)之间选择由T个整数值构成的整数值集合,并从所述整数值集合中选择1到N个整数值作为第一个差分码的各位数,形成第一个差分码,其中,T大于等于2,且小于等于(2M-1);以及
通过对所述第一个差分码进行循环移位,建立所述差分码与差分码序号之间的差分位置编码表;
其中,在所述差分位置编码表中所述差分码与所述差分码序号一一对应,且所述差分码序号按照一预先设定的第二顺序排列。
17.一种用于物理介质表面多维度位置编码的解码装置,包括:
编码图案获取模块,用于获取物理介质表面的位置编码图案;
第一解码模块,用于根据所述位置编码图案,解码出第一维度信息及第二维度信息;
编码矩阵获取模块,用于根据所述位置编码图案,获取Y*Y矩阵的块状码,所述Y*Y矩阵中的每个元素包括位数至少为1的二进制数;
第二解码模块,用于解码所述块状码,以确定第至少一个三维度信息;以及
坐标信息处理模块,用于将包含所述第一维度信息、所述第二维度信息及所述至少一个第三维度信息的位置信息发送,和/或根据所述位置信息回放所述物理介质表面之上的书写笔迹;
其中,所述第一维度信息及所述第二维度信息分别为所述物理介质表面第一方向及第二方向的坐标信息;
其中,所述根据所述位置编码图案,解码出第一维度信息及第二维度信息包括:
根据所述位置编码图案,获取(N+1)*(N+1)比特的第一二进制编码矩阵;
根据如权利要求9-11任一项所述的方法中的序号比特编码表,确定所述第一二进制编码矩阵的差分码;
根据如权利要求1-4任一项所述的方法中的差分位置编码表,确定所述第一二进制编码矩阵的差分码对应的所述第一二进制编码矩阵在所述第一方向上的坐标序号;以及
根据所述位置编码图案,获取(N+1)*(N+1)比特的第二二进制编码矩阵;
根据所述序号比特编码表,确定所述第二二进制编码矩阵的差分码;
根据所述差分位置编码表,确定所述第二二进制编码矩阵的差分码对应的所述第二二进制编码矩阵在所述第二方向上的坐标序号;
其中,N为所述差分码的位数。
18.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-12任一项所述的方法。
19.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求13-15任一项所述的方法。
20.一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-12任一项所述的方法。
21.一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求13-15任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710308734.XA CN107103350B (zh) | 2017-05-04 | 2017-05-04 | 物理介质表面多维度位置编码方法、装置和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710308734.XA CN107103350B (zh) | 2017-05-04 | 2017-05-04 | 物理介质表面多维度位置编码方法、装置和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107103350A CN107103350A (zh) | 2017-08-29 |
CN107103350B true CN107103350B (zh) | 2020-06-09 |
Family
ID=59658035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710308734.XA Active CN107103350B (zh) | 2017-05-04 | 2017-05-04 | 物理介质表面多维度位置编码方法、装置和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107103350B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110110573B (zh) * | 2019-05-06 | 2022-05-13 | 伊睿特科技(北京)有限公司 | 多进制编码图案的位置码确定方法、装置、系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1377488A (zh) * | 1999-10-01 | 2002-10-30 | 阿诺托股份公司 | 位置确定-计算 |
CN1494675A (zh) * | 2001-04-12 | 2004-05-05 | ��������³���о�����˾ | 循环位置代码 |
CN1806249A (zh) * | 2003-06-13 | 2006-07-19 | 阿诺托知识产权许可贸易公司 | 编码图案的按需打印 |
CN101198968A (zh) * | 2005-06-17 | 2008-06-11 | 阿诺托股份公司 | 用于组合位置和信息码的方法和系统 |
CN102171705A (zh) * | 2008-10-02 | 2011-08-31 | 西尔弗布鲁克研究股份有限公司 | 具有由循环位置码的经移位的子序列编码的标记坐标的位置编码图案 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6667695B2 (en) * | 2001-06-25 | 2003-12-23 | Anoto Ab | Position code |
US8891113B2 (en) * | 2010-10-21 | 2014-11-18 | Konica Minolta Business Technologies, Inc. | Image forming apparatus, data processing program, data processing method, and electronic pen |
-
2017
- 2017-05-04 CN CN201710308734.XA patent/CN107103350B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1377488A (zh) * | 1999-10-01 | 2002-10-30 | 阿诺托股份公司 | 位置确定-计算 |
CN1494675A (zh) * | 2001-04-12 | 2004-05-05 | ��������³���о�����˾ | 循环位置代码 |
CN1806249A (zh) * | 2003-06-13 | 2006-07-19 | 阿诺托知识产权许可贸易公司 | 编码图案的按需打印 |
CN101198968A (zh) * | 2005-06-17 | 2008-06-11 | 阿诺托股份公司 | 用于组合位置和信息码的方法和系统 |
CN102171705A (zh) * | 2008-10-02 | 2011-08-31 | 西尔弗布鲁克研究股份有限公司 | 具有由循环位置码的经移位的子序列编码的标记坐标的位置编码图案 |
Also Published As
Publication number | Publication date |
---|---|
CN107103350A (zh) | 2017-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090119573A1 (en) | Global metadata embedding and decoding | |
CN108108342B (zh) | 结构化文本的生成方法、检索方法及装置 | |
CN107220689B (zh) | 位置编码图案生成方法、装置、设备和可读存储介质 | |
CN113767371B (zh) | 用于高性能向量处理的地址生成的方法 | |
AU2017380263B2 (en) | Method for detecting and recognising long-range high-density visual markers | |
CN101859398B (zh) | 二维阵列码 | |
CN112035857B (zh) | 数据保护方法、装置、设备及介质 | |
CN107103350B (zh) | 物理介质表面多维度位置编码方法、装置和可读存储介质 | |
CN107122067B (zh) | 物理介质表面位置编解码的方法、装置和可读存储介质 | |
EP2044558B1 (en) | Position location using error correction | |
US9754134B2 (en) | Creating mechanical stamps to produce machine-readable optical labels | |
CN102467664A (zh) | 辅助光学字符识别的方法和装置 | |
CN114327244A (zh) | 数据迁移的方法、装置、处理器和计算设备 | |
US8300941B2 (en) | Method and apparatus for reading a surface coded pattern | |
JP5184672B2 (ja) | 二次元コードの読取方法およびプログラム | |
US10977466B2 (en) | Multi-dimensional cyclic symbols | |
CN103136559A (zh) | 可变条码的光栅化方法和装置 | |
CN108196799B (zh) | 存储设备的写入方法及写入装置 | |
WO2009095449A2 (en) | Pattern for identifying a location on a surface | |
KR100904171B1 (ko) | 표면상 객체 인식용 코드 패턴을 갖는 제조물과 그 객체인식용 코드 패턴의 형성 방법 | |
CN116257146B (zh) | 编码、解码的方法、装置、电子设备及存储介质 | |
JP2007042141A (ja) | デジタル情報坦体 | |
Heindl | py-microdots: Position Encoding in the Euclidean Plane Based on the Anoto Codec | |
CN114861128A (zh) | 一种矩阵数据存储及其解析方法以及电子设备、存储介质 | |
KR101547019B1 (ko) | 최장 공통 부분 수열을 추출하는 방법 및 컴퓨터 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |