CN113557530B - 混合二维条形码和混合二维条形码生成器 - Google Patents
混合二维条形码和混合二维条形码生成器 Download PDFInfo
- Publication number
- CN113557530B CN113557530B CN202080020216.8A CN202080020216A CN113557530B CN 113557530 B CN113557530 B CN 113557530B CN 202080020216 A CN202080020216 A CN 202080020216A CN 113557530 B CN113557530 B CN 113557530B
- Authority
- CN
- China
- Prior art keywords
- data
- hybrid
- bar code
- data set
- dimensional bar
- 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
- 238000000034 method Methods 0.000 claims description 37
- 238000006243 chemical reaction Methods 0.000 claims description 17
- 239000011159 matrix material Substances 0.000 claims description 14
- 238000012937 correction Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000012795 verification Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 238000002156 mixing Methods 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 235000014676 Phragmites communis Nutrition 0.000 description 1
- 241000270295 Serpentes Species 0.000 description 1
- 241001441724 Tetraodontidae Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- 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
- G06K19/06056—Constructional details the marking comprising a further embedded marking, e.g. a 1D bar code with the black bars containing a smaller sized coding
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Error Detection And Correction (AREA)
Abstract
二维条形码编码器生成混合二维条形码图像,该混合二维条形码图像具有与第一格式化标准的控制特征相对应的控制特征。条形码编码器以第二格式对二维条形码的数据部分中的第一数据集进行编码,该第二格式不同于第一格式化标准的数据编码格式。编码器还可以以第一格式化标准的数据编码格式对二维条形码的数据部分中的第二数据集进行编码。编码器还可以对第一数据集进行星座编码。
Description
背景技术
二维条形码(例如,快速响应(QR)码、Aztec码、数据矩阵码、Maxicode和PDF417码)被广泛用于访问网站、下载个人信息、发布信息、访问社交网络、发起电话呼叫、播放视频、路由分组或查看文本文档。这些二维条形码中的每一个由相应的标准管理,该标准定义了如何将数据编码到条形码中,使得条形码可以由兼容的解码器解码。这些码的流行至少部分地归功于具有相机和资源(例如,web浏览器)的智能电话的可用性,用户可以通过智能电话仅通过扫描二维条形码来访问内容。这种多功能性使二维条形码成为在寻求通过印刷材料吸引移动用户的任何行业中的宝贵工具。二维条形码(尤其是QR码)无处不在。
发明内容
本发明内容不是对要求保护的主题的广泛概述。本发明内容既不旨在标识要求保护的主题的关键要素,也不旨在描绘要求保护的主题的范围。其唯一目的是以简化形式呈现要求保护的主题的一些概念,作为稍后呈现的更详细描述的序言。
根据一个方面,二维条形码编码器生成具有控制特征的混合二维条形码图像,该控制特征对应于第一格式化标准的控制特征。条形码编码器以第二格式对二维条形码的数据部分中的第一数据集进行编码,该第二格式不同于第一格式化标准的数据编码格式。
根据另一方面,编码器以第一格式化标准的数据编码格式对二维条形码的数据部分中的第二数据集进行编码。
根据又一方面,编码器星座(constellation)对第一数据集进行编码,并且将经星座编码的第一数据集以第二格式编码到二维条形码的数据区域中。
以下描述和附图详细阐述了要求保护的主题的某些说明性方面。然而,这些方面指示了可以采用本发明的原理的各种方式中的一些方式,并且要求保护的主题旨在包括所有这些方面及其等同物。当结合附图考虑时,根据以下具体实施方式,要求保护的主题的其他优点和新颖特征将变得显而易见。
附图说明
图1A、图1C、图1D和图1E示出了不同的二维条形码。
图1B示出了示例QR码的格式化信息。
图2是根据示例实施例的混合二维条形码生成器的框图。
图3是示出根据示例实施例的用于组织数据以在混合二维条形码中进行编码的方法的数据图。
图4是部分地以框图形式示出根据示例实施例的星座编码器的数据图。
图5是根据示例实施例的示例混合二维条形码生成器的流程图。
图6是根据示例实施例的示例混合二维条形码读取器的流程图。
图7是可以在实施例中使用的示例硬件的框图。
具体实施方式
目前使用多种形式的二维条形码来发送数据。例如,可能期望生成包括第一数据集和第二数据集的混合二维条形码,其中第一数据集中的非公开数据可以用于认证第二数据集中的公开数据。第一数据集中的数据可以是这样的数据:混合二维条形码的生成器想要将其发送给具有兼容解码器的接收者,但该数据不能由根据管理混合二维条形码的技术标准操作的解码器读取。例如,混合二维条形码中的第二数据集可以标识条形码所附着的设备。该条形码可以包括被编码为第二数据集以阻止伪造者的时间戳,该伪造者可能将条形码的副本附着到他们的伪造部分。将非公开数据添加到条形码的一种方式是在编码数据之前对其进行加密。然而,加密可能会增加数据的大小,并因此允许在二维条形码中编码更少的数据。另外地,加密和解密可能要求二维条形码生成器和二维条形码读取器中的附加的硬件和/或软件来加密和解密非公开数据。此外,可能期望发送在混合二维条形码中的非公开数据,该混合二维条形码类似于标准码,但可以仅由被配置为访问非公开数据的混合二维条形码读取器解码。该经编码的数据可以由具有兼容的混合二维条形码读取器的任何人读取。然而,具有根据对应的技术标准操作的二维条形码读取器的那些人将无法读取非公开数据。
下面的示例实施例涉及一种用于生成包括第一数据集的混合二维条形码的方法,该第一数据集不能由根据管理二维条形码的标准操作的解码器解码。与常规加密的条形码相比,所生成的混合二维条形码保存更多信息,并且可以仅包括第一数据集中的数据或第一数据集和第二数据集中的数据混合。第二数据集中的数据可以独立于第一数据集中的数据,或者可以包括用于对第一数据集中的数据进行解码的信息。在一些实施例中,第一数据集中的数据在混合二维条形码中被编码,该混合二维条形码具有标准二维条形码的格式化元素但使用与管理二维条形码的标准中规定的技术不同的编码技术。因此,示例混合二维条形码类似于符合标准的条形码,但不能使用标准解码器完全解码。示例混合二维条形码符合标准的一些部分但不符合其他部分。由标准解码器解码的示例混合二维条形码可能看起来有缺陷,或看起来包括比条形码中实际编码的数据更少的数据。然而,与示例条形码兼容的混合二维条形码解码器可以恢复混合二维条形码中的第一数据集和第二数据集两者中的数据。
一些示例实施例使用星座编码器处理在混合二维条形码中的第一数据集中的数据,然后将经处理的数据编码到混合二维条形码中。此外,经星座编码的数据可以被处理为冗余的,从而允许在解码操作中进行一些纠错。
作为初步事项,附图中的一些在一个或多个结构组件(被不同地称为功能、模块、特征、元件等)的上下文中描述概念。图中示出的各种组件可以以任何方式(例如,软件、硬件、固件或其组合)实现。在一些情况下,图中示出的各种组件可以反映实际实现方式中对应组件的使用。在其他情况下,图中示出的任何单个组件可以由多个实际组件实现。对图中任何两个或更多个单独组件的描述可以反映由单个实际组件执行的不同功能。
其他图以流程图的形式描述概念。在这种形式中,某些操作被描述为构成以特定次序执行的不同块。这样的实现方式是示例且非限制性的。本文描述的某些块可以组合在一起并在单个操作中执行,某些块可以分解为多个组件块,并且某些块可以按照与本文示出的次序不同的次序执行,包括执行块的并行方式。流程图中示出的框可以由软件、硬件、固件、人工处理等来实现。如本文所使用的,硬件可以包括微处理器、数字信号处理器(DSP)、微控制器、计算机系统、分立逻辑组件和/或定制逻辑组件,例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)、可编程逻辑阵列(PLA)等。
关于术语,短语“被配置为”包含任何种类的功能可以被构建以执行标识出的操作的任何方式。功能可以被配置为使用例如软件、硬件、固件等来执行操作。例如,短语“被配置为”可以指代被布置为实现相关联的功能的硬件元件的逻辑电路结构。短语“被配置为”还可以指代被布置为实现固件或软件的相关联的功能的编码设计的硬件元件的逻辑电路结构。术语“模块”指代可以使用任何合适的硬件(例如,处理器等)、软件(例如,应用等)、固件、和/或硬件、软件和固件的任何组合来实现的结构元件。术语“逻辑”包含用于执行任务的任何功能。例如,流程图中示出的每个操作对应于执行该操作的逻辑。可以使用软件、硬件、固件等来执行操作。术语“组件”、“系统”等可以指代计算机相关的实体、硬件和执行中的软件、固件或其组合。组件可以是在处理器上运行的进程、对象、可执行文件、程序、函数、子例程、计算机或软件和硬件的组合。术语“处理器”可以指代硬件组件,例如,计算机系统的处理单元。
此外,要求保护的主题可以被实现为使用标准编程和工程技术来产生软件、固件、硬件或其任何组合以控制计算设备实现所公开的主题的方法、装置或制品。本文使用的术语“制品”旨在涵盖可从任何非暂时性计算机可读存储设备或介质访问的计算机程序。计算机可读存储介质可以包括但不限于磁存储设备(例如,硬盘)、软盘、磁条、光盘、压缩盘(CD)、数字通用盘(DVD)、智能卡、闪速存储器设备等。相反,计算机可读介质(即非存储介质)可以另外地包括通信介质,例如,用于无线信号的传输介质等。
图1A至图1E示出了四种不同类型的二维条形码图像的示例。图1A示出了示例版本10快速响应(QR)条形码图像100,并且图1B示出了QR条形码图像100的控制特征。图1C示出了根据Aztec格式化标准的示例二维条形码图像120,图1D示出了根据Maxicode格式化标准的示例二维条形码图像130,并且图1D示出了根据数据矩阵格式化标准的示例二维条形码图像140。这些二维条形码图像中的每一个包括表示控制特征的像素块和表示数据的像素块。在所描述的示例中,控制特征是二维条形码图像的元素,其允许条形码读取器正确地朝向条形码图像定向、确定数据如何被编码到图像中、和/或从图像中提取单独的数据符号。在将数据编码到二维条形码中之前,可以使用纠错码(例如,Reed Solomon码)对数据进行编码,以使得即使在二维条形码的一部分损坏时也能够恢复数据。虽然这些码中的每一个码的单个示例在图1A和图1C-1E中示出,但每种类型的条形码可以具有能够分别保存不同量的数据的多种不同格式。
图1B示出了图1A中示出的示例QR条形码图像100的特征。QR条形码的数据占据了QR条形码的大部分内部空间(数据区域)102。该示例条形码图像中的数据采用相邻的黑色像素块和白色像素块的形式,这些像素块以由相关QR码格式化标准定义的第一数据格式布置。图1B示出了没有对应于数据值的像素块的QR条形码100。如图1B中示出的,QR条形码100包括控制特征,例如,定时元素104、位置元素106、对齐元素108、版本和格式元素110以及围绕码的空白区域(quiet zone)112。定时元素定义了像素块的水平和垂直边界。这些元素中的每一个都在QR条形码图像中被编码为QR码图像中的相应的像素块。
Aztec条形码120、Maxicode条形码130和数据矩阵条形码140还包括表示控制特征和数据元素的像素块,这在本文中没有描述。虽然下面描述的示例是关于QR条形码图像100的,但是可以预期类似的方法可以用于通过对在不对应于二维条形码的格式化的像素块中的第一数据集进行格式化,同时保留对应于二维条形码的格式元素的像素块,而在其他类型的二维条形码图像(包括但不限于图1C-1E中示出的那些)中格式化第一数据集。另外地,虽然图1A至图1E中示出的二维条形码图像包括黑色像素块和白色像素块(例如,正方形或圆形),但是可以预期在其他实施例中可以使用包括具有不同颜色的正方形、圆形或其他几何形状的其他条形码。当二维条形码图像中使用两种以上的颜色时,条形码的每个元素可以表示多于一位的信息。
下面描述的示例实施例保留了标准二维条形码的定时元素104、位置元素106和对齐元素108。然而,这些实施例中的数据区域102的至少一部分没有根据QR格式化标准进行编码。一些示例实施例通过将二进制数据映射到黑色像素块和白色像素块来将数据写入整个数据区域102,使得黑色像素块表示“1”并且白色像素块表示“0”,反之亦然。这与标准QR条形码中使用的在将数据写入数据区域102之前将预定的掩码图案应用于数据的编码技术不同。此外,QR标准要求编码位的特定布局,这取决于被编码的数据的类型(例如,数字、字母数字、日本汉字或字节)。下面描述的示例实施例不屏蔽数据,并且不根据QR标准的特定布局来格式化数据。在其他实施例中,二进制数据被划分为N个位的连续集合(其中N是正整数),并且被映射到数据区域102中的N个相邻像素块(例如,黑色正方形和白色正方形)的对应的组中。在其他实施例中,N位数据值由星座编码器处理,以将每个N位值映射到相应的M位值(其中M为大于N的整数),并且M位值被映射到数据区域中的黑色像素块和白色像素块。为了确保第一数据集中的数据仅可以由示例解码器解码,可以对经星座编码的数据进行加密,并且可以对定义星座编码器和/或加密密钥的数据进行加密并在处理包括第一数据集的QR码的设备之间共享该数据。在其他实施例中,可以将数据值冗余地映射到N位值,以允许在经解码的数据值中进行纠错。在又一实施例中,可以将N位数据值映射到现有QR码的数据区域102的预定部分,使得现有QR码仍然可以借助于应用于现有数据的Reed Solomon编码而恢复,并且第一数据集中的数据可以从数据区域102的预定部分恢复。
图2是根据示例实施例的混合二维条形码生成器/读取器设备200的框图。虽然下面将该设备描述为混合二维条形码生成器和混合二维条形码读取器两者,但类似的结构也可以用作不具有读取二维条形码的能力的混合二维条形码生成器或用作不具有生成二维条形码的能力的混合二维条形码读取器。另外地,设备200可以用于根据适用的标准生成二维条形码,因为设备200包括标准二维条形码生成器/读取器。示例设备200包括处理器202、存储器204、相机205、数据输入设备206、二维条形码生成器/读取器208、可选的星座编码器/解码器210、可选的加密/解密处理器216、数据输出设备212、可选的显示设备214。设备200可以使用图7中示出的硬件来实现,如下面所描述的。
为了生成混合二维条形码,示例设备200的处理器202经由数据输入设备206接收第一数据集。数据输入设备可以是键盘、耦合到语音到文本处理器的麦克风、存储器设备、无线或有线网络接口或到在设备200上运行的应用的接口。处理器202将第一数据集存储在存储器204中。如果第一数据集中的数据要被处理用于纠错(例如,Reed Solomon编码),则处理器202执行该处理并将结果存储在存储器204中。如果第一数据集中的数据要进行星座编码和/或加密,则处理器202将数据从存储器204应用于可选的星座编码器/解码器210,和/或使用加密/解密处理器216对第一数据集中的数据或经星座编码的数据进行加密。当第一数据集未被星座编码或加密时,处理器202使二维条形码生成器/读取器208根据适用的标准生成模板条形码,然后将存储在存储器204中的第一数据集写入模板。可替代地,处理器202将已经进行星座编码和/或加密的数据应用于二维条形码生成器/读取器208。在任一情况下,处理器202然后将包括第一数据集的所生成的混合二维条形码提供到数据输出设备212以供在可选的显示设备214上显示。加密/解密处理器216可以用于在将数据集写入二维条形码之前加密第一数据集和/或第二数据集、和/或对由星座编码器/解码器210使用的星座查找表400进行加密和/或解密,如下面参考图4所描述的。
下面参考图5更详细地描述了混合二维条形码生成器设备200的操作。当示例设备200是混合二维条形码生成器时,可以排除相机205并且可以将星座编码器/解码器210替换为星座编码器210。二维条形码生成器/读取器可以保留这两个功能以确保可以从包括第一数据集和第二数据集两者的混合二维条形码中解码第二数据集。类似地,加密/解密处理器216可以保留这两个功能,使得设备200可以在生成混合二维条形码之前加密第一数据集和/或第二数据集,并且可以解密星座查找表400以供星座编码器/解码器210使用。在该实例中,设备200可以通过数据输入206经由数据连接接收解密密钥和经加密的星座查找表400。
为了读取根据示例实施例被编码的混合二维条形码,处理器202从相机205或从数据输入设备206接收条形码的图像。从数据输入设备206接收的图像可以例如从在设备200或图7中示出的设备700上运行的应用、从无线或有线网络连接或从存储器设备接收。处理器将接收到的图像传递到二维条形码生成器/读取器208以进行解码,如下面参考图6所描述的。二维条形码生成器/读取器208可以与星座编码器/解码器交互以从混合二维条形码中解码经星座编码的数据,如下面参考图4所描述的。混合二维条形码可以包括第一数据集和第二数据集中的数据。当条形码100包括第二数据集中的数据时,混合二维条形码的版本和格式元素110包括有效数据。第二数据集可以包括混合二维条形码100也包括数据的指示。可替代地,版本和格式元素110可以具有示例设备200可以读取的值,该值指示条形码仅包括第一数据集中的数据、包括第一数据集和第二数据集中的数据的组合、或者仅包括第二数据集中的数据。当版本和格式元素110指示混合二维条形码包括第二数据集中的数据并且二维条形码生成器/读取器208不能解码第二数据集中的数据时,设备200可以将指示错误的数据输出提供到显示设备214。
当示例设备200被实现为混合二维条形码读取器时,星座编码器/解码器210可以由星座解码器210替换,并且二维条形码生成器/读取器可以由二维条形码读取器替换。在示例读取器设备200中,加密/解密处理器216可以由解密处理器216替换以对混合二维条形码中的第一数据集和/或第二数据集进行解密和/或对星座查找表400进行解密以供星座解码器210使用。解码器设备200可以通过数据输入206经由数据连接接收解密密钥和经加密的星座查找表400。
图3是示出用于对要被包括在混合二维条形码中的第一数据集中的数据进行格式化示例方法的数据图。图3中示出的第一数据集中的示例数据以具有八行和12列的二维矩阵300布置在存储器204中。示例方法将数据沿行然后沿列划分为连续的四位值,这些四位值在示例混合二维条形码中被格式化为黑色像素块和白色像素块。在该示例中,第一行的前四位形成第一四位值302,接下来的四个位形成第二四位值304,并且最后四位形成第三四位值306。针对矩阵300的每一行继续数据的该划分。在划分矩阵的行以生成4位值的序列之后,处理器202对矩阵的列进行划分以获得另一4位值的序列。这些值由图3中的四位分组308和310表示。从划分矩阵300的所有行和所有列获得的值可以被直接编码到混合二维条形码中,或者可以进行星座编码,使得星座编码的结果被编码到混合二维条形码中。作为拼接从行和列生成的序列的替代方法,来自序列的值可以交织或以其他方式组合,例如在将一个序列与另一序列交织之前反转该一个序列。作为另一替代方案,与从行和列生成序列相反,处理器202可以复制从扫描矩阵的行生成的序列以生成两个相同的序列,并如上面所描述地组合这些序列以生成要被编码到混合二维条形码中的数据。作为图3中示出的格式化的又一替代方案,处理器可以在对混合二维条形码中的数据进行格式化之前对数据应用诸如Reed Solomon编码之类的常规ECC算法。
当四位数据值被编码到混合二维条形码中时,它们可以被格式化为四个线性布置的符号(例如,行中的四个像素块)或被格式化为在侧边具有两个像素块的正方形。像素块的更长的序列、更大的正方形和/或矩形布置可以用于编码具有更大位数的值。
图4是部分地以框图形式示出示例星座编码器/解码器的数据图。在示例实施例中,编码器/解码器可以被实现为可编程的查找表(LUT)400。当LUT 400被配置作为星座编码器时,值402表示到LUT 400的输入值。这些值可以是LUT的地址值。在简单的实现方式中,LUT 400可以将四位输入值转换为可能不同于四位输入值的四位输出值。因此,示例LUT400可以包含表示16个四位输入值的排列的值。因为有16个值的16!(20,922,789,888,000)种不同排列,所以当不同排列用于每个混合二维条形码时,选择用于LUT 400的特定排列可以提供高效的加密。值406示出了不同排列的使用,它提供了输入值402的替代排列。
可替代地,LUT 400可以提供具有比输入值更大位数的输出值。例如,值404和406可以拼接,使得每个四位输入值402对应于由LUT 400提供的相应的8位值。使用8位值的排列来表示第一数据集可以提供比仅四位值804或806甚至更高的安全性。
如下面所描述的,可以使用经加密的通信(例如,公钥/私钥加密方法)在条形码生成器200与条形码读取器200之间交换在混合二维条形码中使用的用于对第一数据集中的数据进行编码的特定排列。可替代地,可以使用生成器函数来生成存储在星座转换LUT 400中的值。示例生成器函数在经加密的通信中响应于由编码器200和解码器200交换的种子值而伪随机地选择16个值。作为又一替代方案,由生成器函数使用的该种子值或其他值可以是存储在编码器200和解码器200两者中的公共值。在一个实施例中,编码器200和解码器200可以各自存储多个(例如,1到20个)种子值。编码器200可以随机地或伪随机地选择这些种子值中的一个来生成星座,并且解码器200可以顺序地遍历种子值、尝试每一个、直到验证码或ECC结果指示解码器200已经成功解码第一数据集为止。
图5是示出用于生成混合二维条形码的示例过程500的流程图。在操作502处,生成器接收用于混合二维条形码的数据。数据可以包括第一数据集和第二数据集两者或仅包括第一数据集。当操作502接收到第二数据集时,示例过程500根据适当的标准生成包括第二数据集中的数据的二维条形码。然后,处理第一数据集中的数据并将其用于替换二维条形码图像的一部分以生成混合二维条形码图像。由于二维条形码标准中固有的ECC,因此根据适当的标准操作的条形码读取器可能仍然能够从混合二维条形码中读取第二数据集。该标准可以定义不同级别的ECC。例如,QR码定义了四个级别的ECC,这允许恢复损坏数据的7%到30%。因此,第一数据集中的数据可以替换标准QR码中第二数据集中的数据的一部分,并且仍然允许恢复第二数据集,这取决于第二数据集中被第一数据集替换的数据量以及应用于第二数据集的ECC的级别。
操作504确定接收到的数据是否包括第一数据集和第二数据集两者中的数据。在该实例中,操作506根据条形码标准针对第二数据集中的数据生成二维条形码图像。当操作504确定输入数据不包括第二数据集中的数据时,操作508生成用于混合二维条形码图像的空模板。如上面参考图1B所描述的,该模板可以包括二维码的位置元素106、对齐元素108、定时元素104和空白区域元素112。在一些示例实施例中,模板还可以包括版本和格式元素110。在操作506或508之后,过程500执行操作510,该操作510对第一数据集中的数据进行星座编码和/或加密。另外地,或代替上面描述的星座编码,操作510可以实现加密,包括对称密钥算法(例如,AES、DES、3DES、Blowfish、Twofish.或Serpent)或非对称密钥算法(例如,RSA、ElGamal、Elliptic Curve或Diffie-Hellman)。
在操作510之后,示例编码器500在操作512处将第一数据集中的数据添加到所生成的二维码(例如,由操作506或508生成的码)。通过在二维条形码图像100的数据区域102的预定部分(例如,数据区域102右下角的像素块(例如,正方形))中替换黑色像素块和白色像素块来添加该数据,以生成混合二维条形码图像。二维条形码的该部分只是示例。因为标准二维条形码中的数据是利用纠错编码的,所以可以选择条形码的任何部分来包括第一数据集中的数据。然而,编码器和解码器两者针对第一数据集中的数据使用相同的部分。虽然上面的示例描述了将第一数据集添加到模板二维条形码图像,但可以预期标准二维条形码的控制元素可以反而被添加到包括第一数据集的二维条形码。可替代地,混合二维条形码可以在单个操作中生成,在该操作中,与写入第一数据集同时地将控制元素和第二数据集写入混合二维条形码中。
在将第一数据集格式化为混合二维条形码的预定部分之前,操作512可以向数据添加一个或多个验证码(例如,校验和或循环冗余码(CRC)),以帮助确定数据是否由解码器正确地解码。采用针对第一数据集的ECC的实施例可能不使用这些验证码。在操作514处,过程500确定所生成的二维码是否包括第二数据集中的数据。当码包括第二数据集中的数据时,过程500在操作516处根据适当的标准对混合二维条形码进行解码。在操作518处,过程500确定是否已经从混合二维条形码中恢复了第二数据集。当操作518确定已经恢复了第二数据集时,或者当操作514确定混合二维条形码不包括第二数据集时,操作528输出所生成的混合二维条形码。
当操作518确定第二数据集未被恢复时,过程500执行操作520以确定第二数据集是否利用最大ECC级别编码。二维条形码的标准可以包括多个级别的纠错编码,并且所使用的编码级别可以在版本和格式元素110中指示。例如,QR码包括四个级别的ECC。如上面所描述的,通过利用第一数据集中的数据替换第二数据集中的数据的预定部分(例如,QR码右下角的数据),来实现在第一数据集和第二数据集两者中具有数据的示例混合二维条形码。该条形码的解码依赖于ECC来恢复第二数据集。因此,当使用相对低级别的ECC来编码第二数据集并且第二数据集无法从混合二维条形码中恢复时,可以使用较高级别的ECC对第二数据集进行编码以生成混合二维条形码,在该混合二维条形码中,即使在利用第一数据集替换条形码的预定部分之后,第二数据集也可以被解码。
因此,当操作520确定最大ECC级别未被用于编码第二数据集时,操作522增加ECC的级别并将控制转移到操作506,以根据标准重新生成包括第二数据集的二维条形码。当操作520确定最大ECC级别用于编码第二数据集,并且第二数据集没有从混合二维条形码中恢复时,操作526指示在生成混合二维条形码中发生错误。响应于该错误,用户可以减小混合二维条形码中的第二数据集的大小或减少第一数据集中的数据量以减小由第一数据集替换的标准二维条形码的预定部分的大小。
图6是可以由设备(例如,图2中示出的设备200和/或下面的图7中示出的设备700)执行的解码过程600的流程图。在操作602处,过程600接收二维条形码的图像。该图像可以例如经由相机(例如,设备200的相机205或设备800的相机810)接收。在操作604处,过程600将接收到的二维条形码100应用于标准的二维条形码解码器208。操作606根据操作604的输出确定解码器208是否能够根据标准来对数据进行解码。当操作604成功地解码标准数据时,操作608确定经解码的数据和/或码100中的版本和格式元素110是否指示二维条形码100是包括第一数据集中的数据的混合二维条形码。当操作608确定二维条形码100不包括第一数据集中的数据时,过程600输出第二数据集作为对二维条形码100进行解码的结果。
当操作606确定在操作604中没有数据被标准二维解码器解码或者当操作608确定条形码是包括在第一数据集和第二数据集两者中的数据的混合二维条形码时,过程600执行操作612,该操作612将混合二维条形码应用于混合二维条形码解码器200。解码器设备200可以从混合二维条形码中提取第一数据集的值的序列。在示例中,混合二维条形码仅包括第一数据集中的数据,版本和格式元素110可以指定混合二维条形码的数据元素102如何被转换为输出序列(例如,数据值在数据区域102中如何组织、使用什么解密码和/或星座码)。示例数据解码操作612还可以基于用于生成混合二维条形码的任何ECC来执行纠错。
操作614确定解码器操作612是否成功地从混合二维条形码中解码了第一数据集。例如,操作614可以根据所生成的数据生成验证码(例如,校验和和/或CRC),并将验证码与由数据解码器操作612解码的对应验证码进行比较。当利用ECC对第一数据集进行编码时,操作614可以确定数据是否是从ECC处理器的输出解码的并且可以不生成或比较验证码。当操作614确定第一数据集被成功解码时,操作618执行在生成混合二维条形码期间可能已经应用于数据的任何星座解码和/或解密操作。虽然该示例实施例在验证数据之后执行星座解码和/或解密,但可以设想验证操作614可以在所提取的数据已经由星座解码和/或解密操作618处理之后发生。
在示例实施例中,第一数据集是否被星座编码和/或加密的指示包含于二维码100的版本和格式元素110中。用于解密第一数据集的信息包括混合二维条形码的预定部分的位置、由星座编码器/解码器210使用的星座和/或由加密/解密处理器216使用的加密密钥,可以根据商定的经加密的消息协议使用上面描述的用于可选地加密第一数据集的加密方法中的一种,而将这些信息提供给混合二维条形码编码器/解码器设备200作为经加密的数据。在操作618之后,操作620输出第一数据集和第二数据集两者。
图7是可以用作图2中示出的二维条形码编码器/解码器设备200的示例处理系统700的框图。系统700包括耦合到总线720的处理器702。也耦合到总线720的组件有:存储器704,其可以包括闪速存储器设备、随机存取存储器(RAM)和/或只读存储器(ROM);可选的麦克风708;可选的相机710;以及可选的输入和/或输出设备712,例如,触摸屏显示器。总线720还将系统700连接到通信接口714,以例如提供在混合二维条形码编码器/解码器设备200与经由增强型NodeB(未示出)的网络(未示出)之间的通信。
存储器704可以存储针对当前在系统700上运行的应用的计算机指令。通信接口714可以耦合到LAN/WLAN接口716,例如,有线或光学以太网连接或无线连接(例如,IEEE802.11或IEEE 802.15)。另外地,通信接口714可以耦合到无线接口,例如,蜂窝接口718。接口716和718可以耦合到相应的收发机和/或调制解调器(未示出)以实现数据通信操作。
处理器702可以包括微处理器、微控制器、数字信号处理器(DSP),该DSP被配置为执行存储在存储器704中的与程序(互联网浏览器、应用程序接口(API)、动态链接库(DLL)或应用(APP))相对应的命令,例如,一个或多个二维条形码编码器/解码器模块或加密/解密模块。存储器704还可以存储在这些程序的执行中使用的临时变量、剪贴板或其他信息。存储在存储器704中的程序可以由处理器从单独的计算机可读介质(例如,闪速存储器设备、CD-ROM或数字通用盘(DVD))中取回。
示例
示例1是一种用于对混合二维条形码图像中的第一数据集进行编码的装置,该装置包括:处理器;存储器,其耦合到处理器,该存储器包括配置处理器进行以下操作的指令:生成混合二维条形码图像,该混合二维条形码图像具有:(1)控制特征,其与第一格式化标准的控制特征相对应,以及(2)混合二维条形码图像的数据部分中的第一数据集,该第一数据集以不同于第一格式化标准的第一数据格式的第二数据格式被编码;并且使得混合二维条形码图像被显示。
在示例2中,示例1的主题包括:第一格式化标准是从由QR条形码格式化标准、Aztec条形码格式化标准、Maxi条形码格式化标准、数据矩阵条形码格式化标准以及PDF417条形码格式化标准组成的组中被选择的。
在示例3中,示例1-2的主题包括:指令还配置处理器进行以下操作:在生成混合二维条形码图像之前对第一数据集进行星座编码。
在示例4中,示例3的主题包括:配置处理器对第一数据集进行星座编码的指令配置处理器进行以下操作:将第一数据集划分为连续的N位数据值,其中,N是整数;以及将连续的N位数据值作为地址值应用于星座转换查找表,以生成经星座编码的数据作为星座转换查找表的相应的连续输出值。
在示例5中,示例4的主题包括:星座转换查找表被配置为生成Q位输出值作为经星座编码的数据,其中,Q是大于N的整数。
在示例6中,示例5的主题,其中,指令配置处理器进行以下操作:将Q位输出值映射到值的相应的Q位矩阵,每个Q位矩阵具有至少两行和两列;以及将值的相应的Q位矩阵编码到混合二维条形码图像的数据部分中的连续位置中。
在示例7中,示例4-6的主题,其中,配置处理器将第一数据集划分为连续的N位数据值的指令包括配置处理器进行以下操作的指令:将第一数据集布置到具有M个行和P个列的矩阵中,其中,M和P为大于N的整数;以及选择M个行中的每一行的连续的N位值并且选择P个列中的每一列的连续的N位值以生成连续的N位数据值。
在示例8中,示例4-7的主题,其中,指令还配置处理器进行以下操作:接收表示星座转换查找表的经加密的数据;以及在对第一数据集进行星座编码之前,对表示星座转换查找表的经加密的数据进行解密以生成星座转换查找表。
在示例9中,示例8的主题,其中,指令还配置处理器进行以下操作:根据非对称解密算法对表示星座转换查找表的经加密的数据进行解密。
在示例10中,示例1-9的主题,包括配置处理器进行以下操作的指令:生成混合二维条形码图像,该混合二维条形码图像具有:(1)控制特征,其与第一格式化标准的控制特征相对应,(2)混合二维条形码图像的数据部分中的第一数据集,该第一数据集以第二数据格式被编码,以及(3)混合二维条形码图像的数据部分中的第二数据集,该第二数据集以第一数据格式被编码。
示例11是一种混合二维条形码,包括:控制特征像素块,其位于二维条形码中的与第一格式化标准的控制特征的位置相对应的相应位置处;以及混合二维条形码的数据部分中的第一数据像素块,该第一数据像素块表示第一数据集的值,该第一数据像素块以第二数据格式被布置在混合二维条形码的数据部分中,该第二数据格式不同于第一格式化标准的第一数据格式。
在示例12中,示例11的主题包括:混合二维条形码的数据部分中的第二数据像素块,该第二数据像素块表示第二数据集的值,该第二数据像素块以第一数据格式被布置在混合二维条形码的数据部分中。
在示例13中,示例11-12的主题包括:其中,第二数据集包括对应于纠错码(ECC)的数据值,并且混合二维条形码包括第一数据像素块,该第一数据像素块位于混合二维条形码的数据部分中的对应于第二数据像素块中的一些的位置处。
示例14是一种用于对混合二维条形码图像中的第一数据集进行编码的方法,该方法包括:生成混合二维条形码图像,该混合二维条形码图像具有:(1)控制特征,其与第一格式化标准的控制特征相对应,以及(2)混合二维条形码图像的数据部分中的第一数据集,该第一数据集以不同于第一格式化标准的第一数据格式的第二数据格式被编码;并且使得混合二维条形码图像被显示。
在示例15中,示例14的主题包括:在生成混合二维条形码图像之前对第一数据集进行星座编码。
在示例16中,示例15的主题,其中,对第一数据集进行的星座编码包括:将第一数据集划分为连续的N位数据值,其中,N是整数;以及将连续的N位数据值作为地址值应用于星座转换查找表;以及生成经星座编码的数据作为星座转换查找表的相应的连续输出值。
在示例17中,示例15-16的主题,其中,生成经星座编码的数据包括:生成Q位输出值作为经星座编码的数据,其中,Q是大于N的整数。
在示例18中,示例15-17的主题包括:将第一数据集布置到具有M个行和P个列的矩阵中,其中,M和P为大于N的整数;以及选择M个行中的每一行的连续的N位值并且选择P个列中的每一列的连续的N位值以生成连续的N位数据值。
在示例19中,示例15-18的主题包括:接收表示星座转换查找表的经加密的数据;以及在对第一数据集进行星座编码之前,对表示星座转换查找表的经加密的数据进行解密以生成星座转换查找表。
在示例20中,示例14-19的主题包括:生成混合二维条形码图像,该混合二维条形码图像具有:(1)控制特征,其与第一格式化标准的控制特征相对应,(2)混合二维条形码图像的数据部分中的第一数据集,该第一数据集以第二数据格式被编码,以及(3)混合二维条形码图像的数据部分中的第二数据集,该第二数据集以第一数据格式被编码。
示例21是至少一种机器可读介质,包括指令,该指令在由处理电路执行时,使得处理电路执行操作以实现示例1-20中的任一项。
示例22是一种装置,包括用于实现示例1-20中任一项的单元。
示例23是用于实现示例1-20中任一项的系统。
示例24是用于实现示例1-20中任一项的方法。
上面已经描述的内容包括要求保护的主题的示例。当然,不可能出于描述要求保护的主题的目的描述组件或方法的每一种可想象的组合,但是本领域普通技术人员可以认识到,要求保护的主题的许多进一步的组合和排列是可能的。因此,要求保护的主题旨在涵盖落入所附权利要求书的范围内的所有这种变更、修改和变化。
特别地并且关于由上面描述的组件、设备、电路、系统等执行的各种功能,除非另有指示,否则用于描述这种组件的术语旨在对应于执行所描述的组件的指定功能的任何组件(例如,功能等效物),即使在结构上不等效于所公开的结构,该组件也执行在要求保护的主题的示例示出的方面中的功能。在这方面,还将认识到,公开的示例实施例和实现方式包括系统以及具有用于执行要求保护的主题的各种方法的动作和事件的计算机可执行指令的计算机可读存储介质。
存在多种方式(例如,适当的API、工具套件、驱动程序代码、操作系统、控件、独立或可下载的软件对象等)来实现要求保护的主题,其使得应用和服务能够使用本文所描述的技术。从API(或其他软件对象)以及根据本文阐述的技术进行操作的软件或硬件对象的观点而言,要求保护的主题涵盖了用途。因此,本文描述的要求保护的主题的各种实现方式可以具有全部以硬件、部分以硬件和部分以软件以及以软件的方面。
已经关于若干组件之间的互操作描述了前述示例系统。可以认识到的是,根据前述的各种排列和组合,这样的系统和组件可以包括这些组件或指定的子组件、指定的组件或子组件中的一些以及附加组件。子组件也可以被实现为与其他组件通信地耦合的组件,而不是被包括在父组件(层级)内。
另外地,可以注意的是,可以将一个或多个组件组合为提供聚合功能的单个组件,或将一个或多个组件分为若干个单独的子组件,并且可以提供任何一个或多个中间层(例如,管理层)以通信地耦合到这种子组件以便提供集成的功能。本文所描述的任何组件也可以与本文未具体描述但是本领域技术人员通常已知的一个或多个其他组件交互。
另外地,尽管可能已经关于若干种实现方式中的一种公开了要求保护的主题的特定特征,但是可以将这种特征与其他实现方式的一个或多个其他特征组合,这对于任何给定或特定的应用都可以是期望的且有利的。此外,就术语“包括(include)”、“包括(including)”、“具有”、“含有”、其变型和其他类似词语在具体实施方式或权利要求书中的使用而言,这些术语以类似于术语“包含(comprising)”作为开放过渡词的方式旨在是包含性的并且不排除任何附加或其他元素。
Claims (15)
1.一种用于对混合二维条形码图像中的第一数据集进行编码的装置,所述装置包括:
处理器;
存储器,其耦合到所述处理器,所述存储器包括配置所述处理器进行以下操作的指令:
生成所述混合二维条形码图像,所述混合二维条形码图像具有:
(1)控制特征,其与第一格式化标准相对应,所述第一格式化标准定义用于将二进制数据编码到像素块中的第一数据格式,以及
(2)所述混合二维条形码图像的数据部分中的所述第一数据集,所述第一数据集是根据用于将二进制数据编码到像素块中的第二数据格式被编码的,其中,所述第二数据格式不同于所述第一格式化标准的所述第一数据格式;以及
使得所述混合二维条形码图像被输出。
2.根据权利要求1所述的装置,其中,所述指令还配置所述处理器进行以下操作:在生成所述混合二维条形码图像之前对所述第一数据集进行星座编码。
3.根据权利要求2所述的装置,其中,配置所述处理器对所述第一数据集进行星座编码的所述指令配置所述处理器进行以下操作:
将所述第一数据集划分为连续的N位数据值,其中,N是整数;以及
将所述连续的N位数据值作为地址值应用于星座转换查找表,以生成经星座编码的数据作为所述星座转换查找表的相应的连续输出值。
4.根据权利要求3所述的装置,其中,所述星座转换查找表被配置为生成Q位输出值作为所述经星座编码的数据,其中,Q是大于N的整数。
5.根据权利要求3所述的装置,其中,配置所述处理器将所述第一数据集划分为连续的N位数据值的所述指令包括配置所述处理器进行以下操作的指令:
将所述第一数据集布置到具有M个行和P个列的矩阵中,其中,M和P为大于N的整数;以及
选择所述M个行中的每一行的连续的N位值并且选择所述P个列中的每一列的连续的N位值以生成所述连续的N位数据值。
6.根据权利要求3所述的装置,其中,所述指令还配置所述处理器进行以下操作:
接收表示所述星座转换查找表的经加密的数据;以及
在对所述第一数据集进行星座编码之前,对表示所述星座转换查找表的所述经加密的数据进行解密以生成所述星座转换查找表。
7.根据权利要求6所述的装置,其中,所述指令还配置所述处理器进行以下操作:根据非对称解密算法对表示星座转换查找表的所述经加密的数据进行解密。
8.根据权利要求1所述的装置,包括配置所述处理器进行以下操作的指令:
生成所述混合二维条形码图像,所述混合二维条形码图像具有:
(1)所述控制特征,其与所述第一格式化标准的所述控制特征相对应,
(2)所述混合二维条形码图像的所述数据部分中的所述第一数据集,在所述第一数据集中的二进制数据根据所述第二数据格式被编码到所述像素块中,以及
(3)所述混合二维条形码图像的所述数据部分中的第二数据集,在所述第二数据集中的二进制数据根据所述第一数据格式被编码到另外的像素块中。
9.一种在其上存储有可执行指令的非暂时性计算机可读介质,所述指令当由处理器运行时使所述处理器执行包括以下项的操作:
生成混合二维条形码图像,所述混合二维条形码图像包括:
控制特征像素块,其位于二维条形码图像中的与第一格式化标准的控制特征的位置相对应的相应位置处,所述第一格式化标准定义用于将二进制数据编码到像素块中的第一数据格式;以及
所述混合二维条形码图像的数据部分中的第一数据像素块,所述第一数据像素块表示第一数据集的值,所述第一数据像素块根据第二数据格式被布置在所述混合二维条形码图像的所述数据部分中,所述第二数据格式用于将二进制数据编码到像素块中,其中,所述第二数据格式不同于所述第一格式化标准的所述第一数据格式;以及
使得所述混合二维条形码图像被输出。
10.根据权利要求9所述的非暂时性计算机可读介质,所述混合二维条形码图像还包括:
所述混合二维条形码图像的所述数据部分中的第二数据像素块,所述第二数据像素块表示第二数据集的值,所述第二数据像素块根据所述第一数据格式被布置在所述混合二维条形码图像的所述数据部分中。
11.根据权利要求10所述的非暂时性计算机可读介质,其中,所述第二数据集包括对应于纠错码(ECC)的数据值,并且所述混合二维条形码图像包括所述第一数据像素块,所述第一数据像素块位于所述混合二维条形码图像的所述数据部分中的对应于所述第二数据像素块中的一些的位置处。
12.一种用于对混合二维条形码图像中的第一数据集进行编码的方法,所述方法包括:
生成所述混合二维条形码图像,所述混合二维条形码图像具有:
(1)控制特征,其与第一格式化标准相对应,所述第一格式化标准定义用于将二进制数据编码到像素块中的第一数据格式,以及
(2)所述混合二维条形码图像的数据部分中的所述第一数据集,所述第一数据集是根据用于将二进制数据编码到像素块中的第二数据格式被编码的,其中,所述第二数据格式不同于所述第一格式化标准的所述第一数据格式;以及
使得所述混合二维条形码图像被输出。
13.根据权利要求12所述的方法,还包括:在生成所述混合二维条形码图像之前对所述第一数据集进行星座编码。
14.根据权利要求13所述的方法,其中,对所述第一数据集进行的所述星座编码包括:
将所述第一数据集划分为连续的N位数据值,其中,N是整数;以及
将所述连续的N位数据值作为地址值应用于星座转换查找表;以及
生成经星座编码的数据作为所述星座转换查找表的相应的连续输出值。
15.根据权利要求14所述的方法,其中,生成所述经星座编码的数据包括:生成Q位输出值作为所述经星座编码的数据,其中,Q是大于N的整数。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/299,898 | 2019-03-12 | ||
US16/299,898 US10650208B1 (en) | 2019-03-12 | 2019-03-12 | Hybrid two-dimensional barcode and hybrid two-dimensional barcode generator |
PCT/US2020/019563 WO2020185379A1 (en) | 2019-03-12 | 2020-02-25 | Hybrid two-dimensional barcode and hybrid two-dimensional barcode generator |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113557530A CN113557530A (zh) | 2021-10-26 |
CN113557530B true CN113557530B (zh) | 2024-05-31 |
Family
ID=69941490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080020216.8A Active CN113557530B (zh) | 2019-03-12 | 2020-02-25 | 混合二维条形码和混合二维条形码生成器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10650208B1 (zh) |
EP (1) | EP3924880A1 (zh) |
CN (1) | CN113557530B (zh) |
WO (1) | WO2020185379A1 (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544516A (zh) * | 2012-07-12 | 2014-01-29 | 中国移动通信集团公司 | 二维码的编、解码方法及二维码编码器、解码器 |
CN104281866A (zh) * | 2013-07-09 | 2015-01-14 | 航天信息股份有限公司 | 二维码的应用方法和装置 |
CN105989317A (zh) * | 2015-02-11 | 2016-10-05 | 北京鼎九信息工程研究院有限公司 | 一种二维码的识别方法及装置 |
WO2017198188A1 (zh) * | 2016-05-18 | 2017-11-23 | 北京鼎九信息工程研究院有限公司 | 合成型彩色二维图码的生成、识读方法及装置 |
CN107563475A (zh) * | 2017-07-18 | 2018-01-09 | 中国农业大学 | 一种二维码的编码方法和装置 |
CN108549920A (zh) * | 2018-03-13 | 2018-09-18 | 福建新大陆电脑股份有限公司 | 一种二维码数据隐藏方法、数据提取方法及设备 |
CN109451006A (zh) * | 2018-10-30 | 2019-03-08 | 北京锐安科技有限公司 | 一种数据传输方法、装置、服务器及计算机存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2157958C (en) * | 1994-10-11 | 2000-01-18 | Lee-Fang Wei | Trellis coded modulation employing lower dimensionality convolutional encoder |
US5740203A (en) | 1995-09-14 | 1998-04-14 | Thomson Consumer Electronics, Inc. | Trellis demapper of a convolutional decoder for decoding pragmatic trellis codes suitable for use in a multi-channel receiver of satellite, terrestrial and cable transmitted FEC compressed-digital television data |
KR100679630B1 (ko) * | 2004-07-27 | 2007-02-07 | 주식회사 칼라짚미디어 | 하이브리드 태그 인터페이스 시스템 및 인터페이싱 방법 |
US20060093054A1 (en) * | 2004-10-05 | 2006-05-04 | Djokovic Igor S | Method and apparatus for signal coding |
US8416862B2 (en) | 2005-04-21 | 2013-04-09 | Broadcom Corporation | Efficient feedback of channel information in a closed loop beamforming wireless communication system |
US20090135946A1 (en) * | 2007-11-26 | 2009-05-28 | Eric Morgan Dowling | Tiled-building-block trellis decoders |
US8503584B2 (en) | 2010-12-21 | 2013-08-06 | Lsi Corporation | Efficient implementation of M-algorithm based on QR decomposition for higher-order constellations |
US10565483B2 (en) * | 2012-08-31 | 2020-02-18 | International Business Machines Corporation | Two-dimensional barcode to avoid unintentional scanning |
US10394419B2 (en) | 2012-12-01 | 2019-08-27 | Gspi B.V. | Device, a method and a server for retrieving information using a machine readable image |
US9634795B2 (en) | 2013-03-04 | 2017-04-25 | Intel Corporation | Configurable constellation mapping to control spectral efficiency versus signal-to-noise ratio |
CN105706118B (zh) * | 2013-10-30 | 2019-01-04 | 凸版Tdk标签株式会社 | 生成二维条码的方法、生成二维条码的装置、读取二维条码的方法、读取二维条码的装置、二维条码及程序 |
US9082052B2 (en) * | 2013-12-11 | 2015-07-14 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Generating a hybrid quick response (QR) code |
WO2016202827A1 (en) * | 2015-06-18 | 2016-12-22 | Hicof Inc. | Authentication feature in a barcode |
US10158612B2 (en) * | 2017-02-07 | 2018-12-18 | Hand Held Products, Inc. | Imaging-based automatic data extraction with security scheme |
-
2019
- 2019-03-12 US US16/299,898 patent/US10650208B1/en active Active
-
2020
- 2020-02-25 CN CN202080020216.8A patent/CN113557530B/zh active Active
- 2020-02-25 EP EP20713460.2A patent/EP3924880A1/en active Pending
- 2020-02-25 WO PCT/US2020/019563 patent/WO2020185379A1/en unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544516A (zh) * | 2012-07-12 | 2014-01-29 | 中国移动通信集团公司 | 二维码的编、解码方法及二维码编码器、解码器 |
CN104281866A (zh) * | 2013-07-09 | 2015-01-14 | 航天信息股份有限公司 | 二维码的应用方法和装置 |
CN105989317A (zh) * | 2015-02-11 | 2016-10-05 | 北京鼎九信息工程研究院有限公司 | 一种二维码的识别方法及装置 |
WO2017198188A1 (zh) * | 2016-05-18 | 2017-11-23 | 北京鼎九信息工程研究院有限公司 | 合成型彩色二维图码的生成、识读方法及装置 |
CN107563475A (zh) * | 2017-07-18 | 2018-01-09 | 中国农业大学 | 一种二维码的编码方法和装置 |
CN108549920A (zh) * | 2018-03-13 | 2018-09-18 | 福建新大陆电脑股份有限公司 | 一种二维码数据隐藏方法、数据提取方法及设备 |
CN109451006A (zh) * | 2018-10-30 | 2019-03-08 | 北京锐安科技有限公司 | 一种数据传输方法、装置、服务器及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113557530A (zh) | 2021-10-26 |
US10650208B1 (en) | 2020-05-12 |
EP3924880A1 (en) | 2021-12-22 |
WO2020185379A1 (en) | 2020-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11042791B2 (en) | Method and apparatus for generating and reading composite two-dimensional code | |
US20180247386A1 (en) | Systems and methods for steganography based on text fonts | |
JP5731071B2 (ja) | 二次元コード認証装置、二次元コード生成装置、二次元コード認証方法、及びプログラム | |
JP6600905B2 (ja) | 二次元コード、多値化二次元コード及び二次元コードの生成方法 | |
CN103793735B (zh) | 一种圆形二维条码及其编码解码方法 | |
CN105447546A (zh) | 可嵌入大比例图形的二维码及其编码和解码方法和设备 | |
CN107609621B (zh) | 一种基于混沌加密的点阵防伪码设计方法及其应用系统 | |
EP2948900B1 (en) | Modifying data-bearing images | |
CN104376356A (zh) | 一种带有加密功能的二维码生成方法 | |
Liu et al. | Rich QR codes with three-layer information using hamming code | |
CN110738513B (zh) | 一种用于生成、验证兑换码的方法和装置 | |
CN113557529B (zh) | 混合二维条码阅读器 | |
US20240086670A1 (en) | Methods for constructing, generating, and reading dot-matrix code, dot-matrix code generating and reading terminals, and dot-matrix code system | |
CN113557530B (zh) | 混合二维条形码和混合二维条形码生成器 | |
CN104573781A (zh) | 一种二维码编码及解码方法 | |
CN105718978A (zh) | Qr码的生成方法、装置及解码方法、装置 | |
CN109214488B (zh) | 一种基于图形编码数据进行信息传递的方法及系统 | |
CN110784313A (zh) | 一种密钥的保护方法、设备以及存储介质 | |
RU2316137C2 (ru) | Способ кодирования и декодирования цифровых данных, переданных методом приоризированной передачи пикселей или хранящихся в памяти | |
JP2008192111A (ja) | 誤り訂正機能を持つシンボルシステムにおいて機密性向上を導入する方法、システム及び製品 | |
WO2021095457A1 (ja) | 二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コード | |
CN114742910B (zh) | 图像生成方法、存储介质及计算机终端 | |
US11777527B1 (en) | Dynamic permutation based coding for generating permuted bits and parity equations thereof | |
KR20080018768A (ko) | 데이터 암호화 방법 및 장치 | |
CN117371475A (zh) | 二维码的构建方法、解码方法、装置、设备及存储介质 |
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 |