多维循环符号的制作方法

文档序号:13426438
多维循环符号的制作方法

环形编码通过以结构化的、经限定的且一致的方式跨整个目标表面在代码中重复符号来嵌入信息。和使用针对二进制符号设计的方法一样,环形编码允许完整的有效载荷通过仅捕获较大的经编码表面的部分来恢复。

附图说明

图1图示了根据示例的利用多维循环符号表示数据的系统的概览。

图2-3图示了根据示例的利用多维循环符号表示数据的代码设备。

图4图示了根据示例的利用多维循环符号表示数据的方法的流程图。

图5-6图示了根据示例的多维循环符号和符号布置。

图7-8图示了根据示例的多维循环符号和符号布置。

具体实施方式

信息可以编码在表面上的图案中。图案可以包括来自M进制循环符号的集合的符号。M进制循环符号是选择成表示循环符号空间的M个值的集合。循环符号空间是其中空间中的值单调增加直到达到限制的一个,在所述限制点处空间中的值返回到空间中的最小值。M进制循环符号是有序的并且每一个M进制符号的布置通过范围[0,(M-1)]中的索引来标注,其中具有最大索引(M-1)的符号之后跟随零索引符号。

“循环编码”是使用环绕自身的域中的符号表示数据的系统。一个示例是位于色调空间中的不同位置处的颜色。色调空间的域类似于三角函数的域,即存在与不同测量相关联的“角度”,并且它是(2*pi)周期的。多维循环编码关注用于利用展现多个循环维度的符号表示信息的技术群组。多维循环符号空间是方便的,因为它们使得简洁且高效的数学模型的应用能够区分这种类型的空间中的不同符号或符号集合体。一维M进制符号可以用于环形编码方案(一种机制,按照这种机制,可以以紧凑的方式跨空间重复数据)。多维循环符号集合使得多个同时周期性能够沿不同循环维度存在,这可以用于增大纠错方案的功能。

本文提供了利用多维循环符号表示数据的系统的示例。系统包括表示引擎、符号引擎和翻译引擎。表示引擎提供从多维循环符号的集合选择的多个显示符号。符号引擎接收多个所接收符号。翻译引擎将所述多个所接收符号转换成多个显示符号。当相对于数据密度、编码效率和端对端鲁棒性而测量或优化性能时,多维循环符号空间具有方便的性质。附加的循环维度的并入帮助消除循环符号划分方案中的符号的歧义。附加的循环维度还使得能够实现使用较短消息对高效编码和解码过程的优化。

图1图示了根据示例的利用多维循环符号表示数据的系统的概览。系统100可以以数个不同的配置实现而不脱离所公开的示例的范围。在图1中,系统100可以包括代码设备120、内容设备140、数据库160和用于将代码设备120与数据库160和/或内容设备140连接的网络180。

代码设备120可以是执行与所公开的示例一致的各种功能的计算系统,各种功能诸如利用多维循环符号提供数据的表示。符号集合内的多维循环符号可以是结构化的、经限定的且一致的。代码设备120的示例包括台式计算机、膝上型计算机、平板计算设备、移动电话、服务器和/或任何其它类型的计算设备。代码设备120可以提供从多维循环符号的集合选择的多个显示符号。例如,显示符号可以包括具有大于二的基数(base)的符号。这些符号可以包括从例如颜色、数字、字母、字形、尺寸、位置和角度选择的任何两个或更多特征。例如,多维循环符号可以包括多个符号,每一个符号通过另一集合的多维循环符号之间的差异来限定。所述多个显示符号可以存储在数据库160中。将具有各种颜色和位置的显示符号122的集合图示为由代码设备120限定和提供。出于说明的目的,每一个方形位于五个位置之一处的单元内并且每一个方形被设计成颜色绿色G、青色C、品红M、黄色Y或黑色K。显示符号122的集合然后可以用于编码信息。

代码设备120还可以接收多个所接收符号。例如,所接收符号132可以是二进制代码。所述多个所接收符号132可以存储在数据库160中。代码设备120可以将所述多个所接收符号132转换成多个显示符号122。经转换的符号然后可以使用内容设备140经由目标表面142(诸如打印的媒介,或电子媒介-诸如显示屏)向用户呈现。以下相对于例如图2-4更加详细地描述代码设备120和可以由代码设备120执行的某些功能的示例。

内容设备140可以是维护、接收或转送来自内容数据集合体的内容数据的任何设备。例如,内容设备140可以是扫描设备、打印设备或计算设备,诸如台式计算机、膝上型计算机、平板计算设备、移动电话、服务器或任何其它类型的计算设备。内容设备140可以接收、转送或以其它方式访问用于收集用于代码设备120的数据的内容数据集合体,诸如文章和受控数据集合。例如,内容设备140可以从代码设备120接收显示符号122。内容设备140然后可以在目标表面(诸如打印媒介,或电子媒介-即显示设备)上打印显示符号122。例如,内容设备140可以包括处理器,并且可以经由处理器访问显示符号122的数字版本。数字版本可以包括要在内容设备140上显示的图像或要经由内容设备140在诸如包装之类的打印媒介上打印的数字版本。

显示符号122的集合可以布置在目标区域上,或者可以使用显示符号122的其它集合。出于说明的目的,示出显示符号122的另一示例。显示符号122的集合可以是在三维旋转中示出并且在目标表面142上打印的球体144的图像。球体144中的每一个可以在平面内位置、平面外经度位置或平面外纬度位置中。出于说明的目的而在经编码的图案146中示出九个球体144,并且还图示了包含六个球体144的捕获区域148。捕获区域148内的球体144可以用于解码从所接收符号132转换或翻译的信息或数据。每一个球体144是具有与其相关联的值的显示符号122。值可以链接到信息或数据,或者它可以被指定为用于代码的起始点。以下相对于例如图5-8更加详细地讨论显示符号122的示例。

数据库160可以是促进数据的存储的任何类型的存储系统配置。例如,数据库160可以促进数据的定位、访问和检索(例如SaaS、SQL、访问等数据库、XML文件等)。数据库160可以通过数个方法填充。例如,代码设备120可以利用由代码设备120生成的数据库条目来填充数据库160,并且将数据库条目存储在数据库160中。作为另一示例,代码设备120可以通过从另一组件、无线网络运营商和/或内容设备140的用户接收数据库条目集合并且将数据库条目存储在数据库160中来填充数据库160。在又一示例中,内容设备140可以通过例如从内容设备140获取数据-诸如通过连接到内容设备140的扫描仪或扫描设备的使用-来填充数据库160。数据库条目可以包含多个字段,多个字段可以包括与显示符号122和所接收符号132相关的信息,诸如用户偏好、编码数据和解码数据。虽然在图1中所示的示例中数据库160是在组件120和140外部的单个组件,但是数据库160可以包括分离的数据库和/或可以是设备120、140和/或另一设备的部分。在一些实现方式中,数据库160可以由能够通过网络180远程地访问、创建、控制和/或以其它方式管理数据的设备120和/或140的组件来管理。

网络180可以是促进远程组件(诸如代码设备120和内容设备140)之间的通信的任何类型的网络。例如,网络180可以是局域网(LAN)、广域网(WAN)、虚拟个人网络、专用内联网、因特网和/或无线网络。

图1中图示的布置简单地为示例,并且系统100可以实现在数个不同的配置中。例如,虽然图1示出一个代码设备120、内容设备140、数据库160和网络180,但是系统100可以包括任何数目的组件120、140、160和180,以及在图1中未描绘的其它组件。系统100还可以省略组件120、140、160和180中的任何一个。例如,代码设备120和内容设备140可以直接连接而不是经由网络180连接。作为另一示例,代码设备120和内容设备140可以组合为单个设备。

图2-3图示了根据示例的利用多维循环符号表示数据的代码设备。参照图2,图示了代码设备120。在某些方面中,代码设备120可以对应于图1的多个代码设备120。代码设备120可以以各种方式实现。例如,代码设备120可以是特殊目的计算机、服务器、大型计算机、执行接收和处理信息并且提供响应的指令的计算设备和/或任何其它类型的计算设备。在图2中所示的示例中,代码设备120可以包括机器可读存储介质250、处理器270和接口280。

处理器270可以是至少一个处理单元(CPU)、微处理器和/或执行指令以执行操作的另一硬件设备。例如,处理器270可以提取、解码和执行存储在机器可读存储介质250中的代码指令260(例如指令262、264和/或266)以执行涉及本文所提供的示例的操作。

接口280可以是促进信息在代码设备120与诸如内容设备140和/或数据库160之类的其它组件之间转送的任何设备。在一些示例中,接口280可以包括允许代码设备120从网络180接收和向网络180发送数据的网络接口设备。例如,接口280可以经由网络180从数据库160检索和处理涉及利用多维循环符号提供数据的表示的数据。

机器可读存储介质250可以是存储可执行指令的任何电子、磁性、光学或其它物理存储设备。因此,机器可读存储介质250可以是例如存储器、存储驱动器、光盘和/或类似物。在一些实现方式中,机器可读存储介质250可以是非暂时性的,诸如非暂时性计算机可读存储介质,其中术语“非暂时性”不涵盖暂时性的传播信号。机器可读存储介质250可以编码有指令,所述指令在由处理器270执行时执行与本文中的示例一致的操作。例如,机器可读存储介质250可以包括执行利用多维循环符号提供数据的表示的操作的指令。在图2中所示的示例中,机器可读存储介质250可以是存储指令的存储器资源,所述指令在被执行时使得处理资源(诸如处理器270)实现利用多维循环符号表示数据的系统。指令包括代码指令260(诸如表示指令262、符号指令264和翻译指令266)。

表示指令262可以起作用以提供从多维循环符号的集合选择的多个显示符号。例如,当表示指令262由处理器270执行时,表示指令262可以使得代码设备120的处理器270和/或另一处理器利用任何两个符号值之间的差分相位循环地布置多维循环符号的集合。M进制符号的性质在于M个符号可以循环地布置。每一个符号按照值的次序布置并且具有最大索引(M-1)的符号之后跟随零索引符号。符号之间的差分相位可以用作另一符号源。例如,在五进制(5进制)系统中,可以通过任何两个符号值之间的差分相位来描述任何两个符号值,使得第四符号值和第一符号值之间的相位是五分之二(2/5)周期。

表示指令262的执行还可以使得代码设备120的处理器270和/或另一处理器改变所述多个显示符号的至少两个特征。两个特征可以是从值集合、颜色集合、尺寸集合、位置集合、角度集合和字形集合选择的特征值的两个集合。依照示例,两个特征可以包括符号集合的旋转和改变符号集合的颜色以形成多维循环符号。

可以利用具有跨符号特征空间而改变的多个循环特征的符号集合体来形成符号的多维集合的生成。多维循环符号可以表示为不同特征值的N元组,即symbol_value=(feature_1_value,feature_2_value,...,feature_N_value)(符号_值=(特征_1_值,特征_2_值,...,特征_N_值))。换言之,每一个显示符号可以利用对应的N元组来表达。

第一改变的特征可以是颜色。第二改变的特征可以是位置。在图5中图示了以此形式表达的两个值,即symbol_value(符号_值)=(颜色值,形状值)。在另外的示例中,第一改变的特征可以是字母或字形。第二改变的特征可以是取向。在图7-8中图示了具有这些特征集合体的符号群组。以下相对于例如图4-8更加详细地描述牵涉在限定多维循环符号和示例符号中的步骤的示例。

符号指令264可以起作用以接收多个所接收符号。例如,当符号指令264由处理器270执行时,符号指令264可以使得代码设备120的处理器270和/或另一处理器获取所接收符号,诸如代码的二进制表示。符号指令264还可以将所述多个所接收符号拆分或划分成所接收符号的第一子集和所接收符号的第二子集。以下相对于例如图4-8更加详细地描述牵涉在接收所述多个所接收符号中的步骤的示例。

翻译指令266可以起作用以将所述多个所接收符号转换成多个显示符号。例如,当翻译指令266由处理器270执行时,翻译指令266可以使得代码设备120的处理器270和/或另一处理器将所述多个所接收符号编码成所述多个显示符号。将所接收符号的第一子集编码成多维特征值的第一集合体并且将所接收符号的第二子集编码成多维特征值的第二集合体。多维特征值的第一集合体可以是所述多个显示符号的性质的子集。多维特征值的第二集合体可以是所述多个显示符号的性质的子集。

取决于如何布置多维特征值的第一和第二集合体,可以引致数个不同的翻译行为。例如,在编码期间,可以通过使值沿多维循环符号的集合的一个维度变化来表示所接收符号的第一集合,并且可以通过使值沿多维循环符号的集合的另一维度变化来表示所接收符号的第二集合。在该示例中,可以通过相同的显示符号来(同时)表示与所接收符号的第一和第二子集相关联的信息。在另一示例中,特征值的第一和第二集合体可以设计成使得从所接收符号的第一和第二子集翻译的符号形成非相交集合,在该情况下各个多维显示符号将对应于或者第一所接收的子集或者第二所接收的子集,但是不同时对应于二者。例如,多维特征值的第一和第二集合体可以包括与所述多个显示符号的非相交子集相关联的值的非相交子集。

当空间和循环域划分策略变得复杂时,数据承载符号的功能可以在与多个循环性质相关联时增加。在一个示例中,集合体的第一和第二集合可以在显示符号跨空间重复时利用数学模型来修改。在该示例中,沿不同空间循环维度的不同周期性的循环移动可以增加符号的功能,在用于显示的受约束的空间中特别如此。在另一示例中,第一和第二集合体可以布置成表示沿多维显示符号特征空间中的不同的相应方向集合的移动。以上描述该示例的最简单的实例,即其中方向是沿特征值空间的各个维度轴。更复杂的实例包括这样的情况,其中与集合体相关联的方向随着显示符号在空间之上被重复而可能改变,可能地相对于已知形状或路径而被确定。以下相对于例如图4-8更加详细地描述牵涉在转换符号中的步骤的示例。

参照图3,将代码设备140图示成包括表示引擎362、符号引擎364和翻译引擎366。在某些方面中,代码设备120可以对应于图1-2的代码设备120。代码设备120可以以各种方式实现。例如,代码设备120可以是利用多维循环符号表示数据的计算系统和/或任何其它合适的组件或组件的集合体。

接口280可以是促进信息在代码设备120与外部组件之间转送的任何设备。在一些示例中,接口280可以包括允许代码设备120从网络接收和向网络发送数据的网络接口设备。例如,接口280可以从数据库160检索和处理涉及利用多维循环符号表示数据的数据。

引擎362、364和366可以是用于实现与所公开的示例一致的功能的电子电路。例如,引擎362、364和366可以表示实现与所公开的实现方式一致的功能的硬件设备和指令的组合。例如,用于引擎的指令可以是存储在非暂时性机器可读存储介质上的处理器可执行指令,并且用于引擎的硬件可以包括执行那些指令的处理器。在一些示例中,引擎362、364和366的功能可以对应于由图1-2的代码设备120执行的操作,诸如当代码指令260由处理器270执行时执行的操作。在图3中,表示引擎362可以表示执行类似于在处理器270执行表示指令262时所执行的那些操作的操作的硬件和指令的组合。类似地,符号引擎364可以表示执行类似于当处理器270执行符号指令264时执行的那些操作的操作的硬件和指令的组合,并且翻译引擎366可以表示执行类似于当处理器270执行翻译指令266时执行的那些操作的操作的硬件和指令的组合。

图4图示了根据示例的利用多维循环符号表示数据的方法的流程图。尽管以下参照系统100来描述过程400的执行,但是可以使用用于执行过程400的至少一个步骤的其它合适的系统和/或设备。例如,以下描述为由系统100执行的过程可以由代码设备120、内容设备140和/或任何其它合适的设备或系统来执行。过程400可以以存储在诸如机器可读存储介质之类的存储设备上的可执行指令的形式和/或以电子电路的形式实现。

过程400可以通过利用表示引擎提供从多维循环符号的集合选择的多个显示符号(步骤402)来开始。例如,代码设备120可以定位物理对象,其绕多个维度自由旋转,并且从特定固定视点捕获表示该对象的图像。当表示对象的图像旋转时,图像利用任何两个符号值之间的差分相位循环地捕获物理对象。例如,图像可以沿平面外纬度位置或沿平面外或平面内经度位置旋转。为了增加显示符号集合的维度性,可以对对象的(多个)物理属性做出附加的调节,诸如可以改变尺寸或颜色。

表示指令262的执行还可以使得代码设备120的处理器270和/或另一处理器改变至少两个特征以生成所述多个显示符号。特征和相关联的改变可以从数字集合、颜色集合、尺寸集合、位置集合、角度集合和字形集合选择。依照示例,两个特征可以包括符号集合的旋转和改变符号集合的颜色以形成多维循环符号。为了获取多维循环符号,可以将所述多个显示符号拆分成多维循环符号的第一集合体和多维循环符号的第二集合体。多维循环符号的第一集合体可以包括第一维度上的符号,诸如各种颜色的符号。多维循环符号的第二子集可以包括第二维度中的符号,诸如多个位置处的各种颜色的符号,如图5中所图示的。图5图示了非对称形状;然而,可以使用其它形状或图像,诸如世界图像、简单形状和对称对象。多维循环符号可以存储在诸如数据库160之类的存储设备中。系统100的代码设备120或内容设备140可以从数据库160访问多维循环符号以限定和提供显示符号。

过程400还可以包括利用符号引擎接收多个所接收符号(步骤404)。所述多个所接收符号可以不同于所述多个显示符号。例如,代码设备120和/或内容设备140可以接收二进制代码。二进制代码可以表示要编码的数据或信息。显示符号可以是不同的,在示例中,显示符号可以是形状并且所接收符号可以是二进制代码。二进制代码和形状二者可以是独特的或不同的;然而,在另外的示例中,所接收符号可以是二进制代码,并且显示符号可以是数字零到七。在另外的示例中,数字一和零在两个符号或数据集合中;然而,所接收符号中的符号一和零具有与显示符号中的一和零不同的含义,即便一和零使用在两个符号集合中也是如此。二进制代码可以存储在诸如数据库160之类的存储设备中,并且代码设备120和/或内容设备140可以查询数据库160以获取二进制代码。

过程400还可以包括利用翻译引擎将所述多个所接收符号转换成所述多个显示符号(步骤406)。例如,代码设备120可以通过将诸如二进制代码之类的信息编码成所述多个显示符号中以使得显示符号能够被嵌入在目标表面中来编码所述多个所接收符号。显示符号的示例包括跨目标表面在代码字中背对背地重复符号的环形编码。使用环形编码,可以利用经编码的表面的部分视图获取完整的有效载荷恢复。

利用某种程度的错误检查而允许整个有效载荷的恢复的最简单的编码策略之一牵涉仅三个显示符号,诸如(1)表示有效载荷中的数据的两个颜色元素以及(2)指示解码所需要的辅助信息(诸如有效载荷的起始位置和/或长度)的不同着色的元素。以下实践和设计选择帮助使得能够实现环形或循环解码。第一,有效载荷和解码有效载荷的相关联部件嵌合向其上编码显示符号的表面。针对二维平面表面,在x和y方向二者上复制显示符号。显示符号的部分被捕获以从给定x和y维度恢复整个有效载荷,诸如矩形,而不管所捕获的矩形的尺寸或位置。可以继续显示符号,其中将在与可能的显示符号子集相关联的特征值的集合体中或在所得显示符号自身中的数个可能的扰动应用于每一个重复。在一个示例中,以半线性形式指派显示符号,即可以使显示符号在多个行之上继续,并且可以在每行的基础上应用扰动。符号的完整集合中的各个符号的相对位置是可重配置的。在一个示例中,使用同样是嵌合符号的部分的非数据符号(诸如起始符号)没有歧义地指示经编码的符号的起始点。在另一示例中,编码数据符号,使得显示符号可以向回映射到所接收的数据符号,而不需要使用非数据符号来进行位置同步。

在一些示例中,系统100的代码设备120可以查询数据库160以获取显示符号。代码设备120然后可以使用多维特征值的第一集合体翻译所述多个所接收符号的第一子集并且使用多维特征值的第二集合体翻译所述多个所接收符号的第二子集。所述多个所接收符号的第二子集可以是空的。在这样的情况下,空的子集可以映射到在起始或结束为止处指定的显示符号,或者可以被完全省略(如果针对省略特征值的原因是改进鲁棒性的话)。在另一示例中,多维特征值的第二集合体可以包括多维特征值的第一集合体的所述多个显示符号特征值,其中数学模型被应用于每一个值。该方案可以例如用于使所显示的结果的某个性质跨空间变化。在再又一示例中,数学模型可以应用于所得显示符号值自身,诸如多维特征值的集合体。所述多个所接收符号的第一和第二子集和多维特征值的第一和第二集合体可以存储在诸如数据库160之类的存储设备中。在转换所述多个所接收符号已经完成之后,过程400可以结束。

过程400还可以包括读取显示符号的图案以及通过将显示符号向回翻译到所接收符号来解码显示符号的图案。然后可以分析数据和从其提取信息或值。

图5-6图示了根据示例的多维循环符号和符号的布置。参照图5,图示了作为循环八进制(8进制)符号520的集合的显示符号122的示例。符号集合可以包括每一个相应循环域521内的各种间距和特征522。例如,给定域中的符号数目可以跨每一个循环域变化。参照图5,在另外的示例中,给定域中的符号数目可以跨每一个循环域而是相同的。

在图5中,所图示的特征522是颜色523、x位置524、y位置525和尺寸526,以及平面内角度527。显示符号122是由每一个相应循环空间521中的均匀间隔的参数值组成的不规则的非对称对象528。在图5中图示了八分之一间距;然而,如本文所说明的,附加的间距可以用于生成中间值。换言之,存在每一个循环空间521中的样本的连续扩展,并且样本的连续扩展可以用于更改所使用的特征值的数目。多维循环符号集合可以通过改变这些参数来形成。所接收符号132的群组可以被映射到多维显示符号122的群组,诸如由y位置525和x位置524特征522组成的那些群组,如图6中所图示的。

图6图示了编码1位/单元/循环维度的作为4x6符号拼块630的经编码的图案146的示例。符号集合由周期性x和y差分位置524、525空间中的非有理差异组成。例如,矩形中的第一显示符号122是初始位置中的显示符号122。显示符号122可能受到周期性x位置中的±1/(3√3)并且受到周期性y位置中的±1/(2√2)的扰动。例如,在符号位置632处,已经应用了+1/(3√3)周期性x位置改变和-1/(2√2)周期性y位置改变的组合;在符号位置634处,已经应用了-1/(3√3)周期性x位置改变和-1/(2√2)周期性y位置改变的组合;在符号位置636处,已经应用了-1/(3√3)周期性x位置改变和+1/(2√2)周期性y位置改变的组合;以此类推。显示符号122被图示为拼块的4x6单元,但是还可以表示在符号的单个线条中或拼块或线条的任何变型中。显示符号122的实际格式可以适应所述格式在其上显示的空间。

图7-8图示了根据示例的多维循环符号和符号的布置。图7是作为由字形和角度特征组合组成的五进制(5进制)符号740的集合的显示符号122的示例。如在示例中所图示的,所接收符号132可以作为位于特定角度处的字形或字母A、B、C、D和E而编码在显示符号122中。每一个字母和角度组合提供唯一的代码或到可以被编码的数据或信息的链路。图8图示了使用字形和角度组合的经编码的图案146的示例。

在图8中图示了字母和角度的图案850以使用不出现在前两行R1、R2、R4、R5中的循环符号E和D生成每一个第三行R3、R6以形成消息“EDDED”。其它行包括字母A、B和C,其中存在在每一行之间重复并且以二移动的七周期字母消息“ABCBBAC”。图案是行R1、R2、R4和R5中的四周期角度区。换言之,字母位于四个不同角度(例如-45°、0°、45°和90°)处,并且该角度处的每一个字母群组包括三个符号或字母。图案还包括列C1、C2、C3和C4中的竖直方向上的二周期角度区。

如图5-8中所图示的,多维循环符号可以用于利用沿两个循环维度的任意不同的竖直和水平周期性来编码信息或消息。该方案可以被认为是基于拼块的重复代码。另外,取决于所牵涉的特定周期性,有效的拼块可能大于其中使用所述编码方案的整个文档、标签或表面。作为结果,多维循环数据表示使得能够实现重复编码方案,所述重复编码方案服从环形编码的许多原理但是事实上更加通用。

一些公知的数字调制技术出于实现方便且近乎逼近容量的错误校正编码和解码技术的目的而生成有效循环或准循环的符号空间。一般而言,可以使用传统的块代码,但是为了使一些“turbo(涡轮)”解码方案是有效的,在具有某些方便性质的空间中存在候选的经解码的符号。这些性质可以包括估计沿可能性的连续体的值的能力。在多维循环数据表示方案中,每一个单独的循环维度可以用于该目的。作为结果,所生成的多维循环符号可以比利用更简单的一维循环符号集合(诸如那些可能产生于某些传统调制技术的符号)生成的符号更加密集地拼装。该功能对于其中可用显示区域高度受限的标记应用是非常重要的。

在一维M进制符号表示方案中,信息可以利用循环域中的任意间隔的符号差分地编码。在真实的多维循环符号学中,可能的优化按数量级生长,尤其是因为对在任何循环维度中都具有规律间隔开的符号集合没有约束而导致。这考虑到了在设计鲁棒的数据恢复方案上的最大灵活性以及考虑到了使用特殊的符号群组来表达不同含义的灵活方法,诸如以预计方式使用来自不同层的信息片段。

将信息的总体密度示出为针对颜色条码化身的每个模块log2(πk Mk)/2位,其中Mk>1是沿给定维度的可允许的循环符号的数目。信息拼装中的功能最大密度是几何和颜色性质这二者的函数。用于表示信息的颜色的数目和每一个模块的尺寸这二者起到了作用。对于特定尺寸的模块,存在在评估样本时可以可靠地检测到的最小颜色差异。在大多数情况中,最优数目不太可能表示空间的整数划分。牵涉循环域的非整数划分的相同原理在此适用。

在涉及包装、标记和文档安全的各种应用中,重要的是能够从页面和/或表面的各种部分标识和分析内容,即使那些部分不表示多维循环数据也是如此。由于多维循环符号如此紧凑,因此它们使得能够实现这样的表面的灵活得多的自动化使用。相对小量的多维循环符号可以用于提供引导这样的活动所需要的信息。重要的是使得存在多个数据层,因为它们顾及到“自我校准”的信息提取方案,即那些可以利用质量测量来监视其自身的性能的方案,所述质量测量从与用于表示数据的那些性质正交的性质导出。在错误校正编码和用于促成信息的鲁棒传输的其它机制的更加传统的形式中,多个信息层的存在可以用于促进给定表面上的内容的更加有效的功能使用。

在一些应用中,特别是当多个信息层需要用于解释时,一个循环维度可以承载可以从总体经编码的消息的任何适当裁剪的部分解码的紧凑、重复的消息。区域特定信息可以通过另一层表示。一个示例会是这样的情形,其中可以在不同的时间执行对承载数据的硬拷贝信息进行解码的多个阶段。然后,来自一个层的信息可以馈送到下一层的解释中,即便用于生成两个层的符号存在于相同空间内也是如此。图8图示了示例,其中由字形的五循环字母表表示的长度为五的消息被使用来表示经重复编码的消息,并且其中字形的位置被使用来表示在没有任何重复编码的情况下完全不同的、更高密度的消息。

所公开的示例可以包括用于利用多维度循环符号表示数据的系统、设备、计算机可读存储介质和方法。出于解释的目的,参照图1-3中图示的组件描述某些示例。所图示的组件的功能可以重叠并且可以存在于更少或更大数目的元件和组件中。另外,所图示的元件的功能的全部或部分可以共存或者被分布在若干个地理上分散的位置之中。而且,所公开的示例可以实现在各种环境中并且不限于所图示的示例。

而且,如在说明书和随附权利要求中使用的,单数形式“一”、“一个”和“所述一个”意图也包括复数形式,除非上下文另行指示。此外,尽管术语第一、第二等可以在本文中用于描述各种元件,但是这些元件不应当受该术语限制。这些术语反而用于将一个元件与另一个区分开。

另外,结合图1-8描述的操作顺序是示例并且不意图是限制性的。附加的或更少的操作或操作的组合可以被使用或者可以变化而不脱离所公开的示例的范围。因此,本公开仅仅阐述实现方式的可能示例,并且可以对所描述的示例做出许多变动和修改。所有这样的修改和变动意图包括在本申请的范围内并且受随附权利要求保护。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1