CN111275152A - 二维码、二维码的编码方法、解码方法、装置和电子系统 - Google Patents

二维码、二维码的编码方法、解码方法、装置和电子系统 Download PDF

Info

Publication number
CN111275152A
CN111275152A CN202010049313.1A CN202010049313A CN111275152A CN 111275152 A CN111275152 A CN 111275152A CN 202010049313 A CN202010049313 A CN 202010049313A CN 111275152 A CN111275152 A CN 111275152A
Authority
CN
China
Prior art keywords
information
dimensional code
core coding
coding region
information bits
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.)
Pending
Application number
CN202010049313.1A
Other languages
English (en)
Inventor
毕芊芊
刘玺炜
梁琛
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.)
Beijing Megvii Technology Co Ltd
Original Assignee
Beijing Megvii Technology Co Ltd
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 Beijing Megvii Technology Co Ltd filed Critical Beijing Megvii Technology Co Ltd
Priority to CN202010049313.1A priority Critical patent/CN111275152A/zh
Publication of CN111275152A publication Critical patent/CN111275152A/zh
Priority to PCT/CN2020/119541 priority patent/WO2021143212A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record 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/06009Record 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/06037Record 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供了的一种二维码、二维码的编码方法、解码方法、装置和电子系统,该二维码中包括多个核心编码区域,该核心编码区域包括指定信息位和检测信息位;其中的指定信息位包括预设的原始信息对应的二进制信息;检测信息位包括核心编码区域的位置信息。该二维码中,通过在二维码中设置多个核心编码区域,提高了二维码的抗遮挡能力。

Description

二维码、二维码的编码方法、解码方法、装置和电子系统
技术领域
本发明涉及二维码技术领域,尤其是涉及一种二维码、二维码的编码方法、解码方法、装置和电子系统。
背景技术
二维码是常见的数值编码技术,应用非常广泛。二维码针对不同的编码算法、不同的数据量都有较好的识别效果。相关技术中的二维码,通常采用尺寸相对固定的矩阵实现,如21*21大小的矩阵、25*25大小的矩阵、29*29大小的矩阵等;矩阵中通常包括功能性数据、数据码和纠错码等区域。
发明内容
本发明的目的在于提供一种二维码、二维码的编码方法、解码方法、装置和电子系统,以提高二维码的信息有效率,提高二维码的抗遮挡能力。
第一方面,本发明实施例提供了一种二维码,该二维码包括多个核心编码区域;该核心编码区域包括指定信息位和检测信息位;其中,指定信息位包括预设的原始信息对应的二进制信息;检测信息位包括核心编码区域的位置信息。
进一步的,每个核心编码区域的信息位尺度,根据原始信息的数据量确定;信息位尺度包括:核心编码区域的长度包括的信息位数量,以及核心编码区域的宽度包括的信息位数量。
进一步的,多个核心编码区域按照预设位置排列;每个核心编码区域预设有该核心编码区域对应的位置标识;每个核心编码区域中的指定信息位上显示的二进制信息,通过原始信息和该核心编码区域对应的位置标识转换得到。
进一步的,检测信息位包括核心编码区域的边缘位置上的多个信息位;多个信息位组成预设形状的检测图案。
进一步的,检测图案包括“L”型图案;多个信息位中的至少一部分信息位位于核心编码区域的第一边缘行,多个信息位中除至少一部分信息以外的信息位位于与第一边缘行相邻的第一边缘列上。
进一步的,检测信息位包括两组,分别为第一组检测信息位和第二组检测信息位;第一组检测信息位中至少一部分信息位位于核心编码区域的第一边缘行,除至少一部分信息以外的信息位位于与第一边缘行相邻的第一边缘列上;
进一步的,第二组检测信息位中至少一部分信息位位于核心编码区域的第二边缘行,除至少一部分信息以外的信息位位于与第二边缘行相邻的第二边缘列上;其中,第一边缘行、第一边缘列、第二边缘行和第二边缘列依次连接。
进一步的,第一组检测信息位中的每个信息位上显示有相同的二进制信息;第二组检测信息位中,相邻的信息位显示有不同的二进制信息。
进一步的,二维码中还包括定位符;该定位符用于:将二维码划分为多个目标区域;每个目标区域中包括多个核心编码区域中的一个或多个核心编码区域。
进一步的,定位符包括多个;定位符位于目标区域的顶点位置;每个目标区域中包括多个核心编码区域中的一个核心编码区域。
进一步的,定位符包括霍夫圆。
第二方面,本发明实施例提供了一种二维码的编码方法,该方法应用于第一方面的二维码;待编码的二维码中包括多个核心编码区域;该方法包括:通过预设的转换方式,将预设的原始信息转换为二进制信息;按照预设的二进制信息显示规则,将二进制信息分别显示在每个核心编码区域中的指定信息位,得到编码后的二维码;其中,核心编码区域中还包括:用于在解码过程中,检测核心编码区域的位置的检测信息位。
进一步的,将预设的原始信息转换为二进制信息的步骤之前,上述方法还包括:根据预设的原始信息的数据量,确定待编码的二维码中核心编码区域的信息位尺度。
进一步的,信息位尺度包括:核心编码区域的长度包括的信息位数量,以及核心编码区域的宽度包括的信息位数量;根据预设的原始信息的数据量,确定待编码二维码中核心编码区域的信息位尺度的步骤,包括:根据预设的原始信息的数据量,确定核心编码区域中需要显示与原始信息相关联的二进制信息的第一信息位数量,以及用于在解码过程中,检测核心编码区域的位置的检测信息位的第二信息位数量;根据第一信息位数量和第二信息位数量,确定核心编码区域的信息位尺度。
进一步的,通过预设的转换方式,将原始信息转换为二进制信息的步骤,包括:针对每个核心编码区域,设置该核心编码区域在待编码二维码中的位置标识;通过预设的转换方式,将原始信息和位置标识转换为二进制信息,得到该核心编码区域对应的二进制信息;将二进制信息分别显示在每个核心编码区域中的指定信息位的步骤,包括:针对每个核心编码区域,将该核心编码区域对应的二进制信息显示在该核心编码区域中的指定信息位。
进一步的,通过预设的转换方式,将原始信息和位置标识转换为二进制信息的步骤,包括:将原始信息和位置标识转换为二进制形式的初始信息;通过预设的Reed-solomon编码算法,将初始信息进行编码处理,得到编码信息;将初始信息和编码信息确定为二进制信息。
进一步的,将原始信息和位置标识转换为二进制形式的初始信息的步骤,包括:将原始信息转换为二进制形式的原始信息;将位置标识转换为二进制形式的位置标识;将二进制形式的原始信息、二进制形式的位置标识、以及预设位数的冗余信息,确定为二进制形式的初始信息。
第三方面,本发明实施例提供了一种二维码的解码方法,该方法应用于第一方面的二维码;待编码的二维码中包括多个核心编码区域;该方法包括:从包含有二维码的图像中检测二维码中的检测信息位;根据检测到的检测信息位,确定二维码中的核心编码区域;解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息。
进一步的,二维码中还包括多个定位符;定位符用于:将二维码划分为多个目标区域;每个目标区域中包括一个核心编码区域;从包含有二维码的图像中检测二维码中的检测信息位的步骤,包括:从包含有二维码的图像中检测定位符;通过检测出的定位符,确定二维码中的目标区域;从目标区域中检测二维码中的检测信息位。
进一步的,通过检测出的定位符,确定二维码中的目标区域的步骤,包括:确定检测出的定位符的数量和相对位置;根据定位符的数量和相对位置,确定二维码中的目标区域。
进一步的,从包含有二维码的图像中检测二维码中的检测信息位的步骤,包括:通过预设的ROI区域检测模型,从包含有二维码的图像中检测包含有二维码的目标区域;从目标区域中检测二维码中的检测信息位。
进一步的,检测信息位组成预设形状的检测图案;检测图案的边缘包括长度满足预设长度范围的直线段;从目标区域中检测二维码中的检测信息位的步骤,包括:通过预设的直线段检测算法,从目标区域中检测直线段;从检测到的直线段中,删除长度小于长度范围中的最小值的直线段,和/或,删除长度大于长度范围中的最大值的直线段;根据目标区域中剩余的直线段,确定二维码中的检测信息位。
进一步的,根据检测到的检测信息位,确定二维码中的核心编码区域的步骤,包括:根据检测到的检测信息位,确定二维码中的核心编码区域的多个顶点;通过线段连接多个顶点中相邻的顶点,将线段所包围的区域,确定为二维码中的核心编码区域。
进一步的,通过线段连接多个顶点中相邻的顶点的步骤,包括:如果检测到多组检测信息位,针对每组检测信息位,通过线段连接该组检测信息位对应的多个顶点。
进一步的,解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息的步骤,包括:通过在编码过程中使用的转换方式和二进制信息显示规则,将核心编码区域中,指定信息位上显示的二进制信息解码为原始信息。
第四方面,本发明实施例提供了一种二维码的编码装置,该装置应用于第一方面任一项的二维码;待编码的二维码中包括多个核心编码区域;该装置包括:信息转换模块,用于通过预设的转换方式,将预设的原始信息转换为二进制信息;二维码确定模块,用于按照预设的二进制信息显示规则,将二进制信息分别显示在每个核心编码区域中的指定信息位,得到编码后的二维码;其中,核心编码区域中还包括:用于在解码过程中,检测核心编码区域的位置的检测信息位。
第五方面,本发明实施例提供了一种二维码的解码装置,该装置应用于第一方面任一项的二维码;待编码的二维码中包括多个核心编码区域;该装置包括:检测信息位检测模块,用于从包含有二维码的图像中检测二维码中的检测信息位;核心编码区域确定模块,用于根据检测到的检测信息位,确定二维码中的核心编码区域;二维码解码模块,用于解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息。
第六方面,本发明实施例提供了一种电子系统,该电子系统包括:处理设备和存储装置;存储装置上存储有计算机程序,计算机程序在被处理设备运行时执行如第二方面任一实施方式的二维码的编码方法或第三方面任一实施方式的二维码的解码方法。
第七方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理设备运行时执行如第二方面任一实施方式的二维码的编码方法的步骤或第三方面任一实施方式的二维码的解码方法的步骤。
本发明实施例带来了以下有益效果:
本发明实施例提供的一种二维码、二维码的编码方法、解码方法、装置和电子系统,该二维码中包括多个核心编码区域,该核心编码区域包括指定信息位和检测信息位;其中的指定信息位包括预设的原始信息对应的二进制信息;检测信息位包括核心编码区域的位置信息。该二维码中,通过在二维码中设置多个核心编码区域,提高了二维码的抗遮挡能力。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种电子系统的结构示意图;
图2为本发明实施例提供的一种二维码的结构示意图;
图3为本发明实施例提供的一种检测图案的结构示意图;
图4为本发明实施例提供的另一种检测图案的结构示意图;
图5为本发明实施例提供的另一种检测图案的结构示意图;
图6为本发明实施例提供的另一种二维码的结构示意图;
图7为本发明实施例提供的另一种二维码的结构示意图;
图8为本发明实施例提供的一种二维码的编码方法的流程图;
图9为本发明实施例提供的另一种二维码的编码方法的流程图;
图10为本发明实施例提供的另一种二维码的编码方法的流程图;
图11为本发明实施例提供的另一种二维码的编码方法的流程图;
图12为本发明实施例提供的一种二维码的解码方法的流程图;
图13为本发明实施例提供的另一种二维码的解码方法的流程图;
图14为本发明实施例提供的一种检测信息位的检测方法的流程图;
图15为本发明实施例提供的另一种二维码的解码方法的流程图;
图16为本发明实施例提供的一种二维码中核心编码区域顶点的示意图;
图17为本发明实施例提供的一种二维码的编码装置的结构示意图;
图18为本发明实施例提供的一种二维码的解码装置的结构示意图。
图标:
200-二维码;210-核心二维码区域;220-指定信息位;230-检测信息位;240-定位符。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前使用的最多的数值编码技术为二维码,其应用非常广泛,针对很多不同的编码、不同的数据量效果都较好。但是由于二维码尺寸相对固定,其可容纳的数据量较大,可识别的编码类型较多,对于编码类型单一、数据量小的应用场景,使用该二维码进行识别会造成信息有效率较低,造成浪费。在一种实现方式中,为了保证二维码能够被正确识别,通常允许的最大可遮挡面积为二维码总面积的30%左右,且二维码中的定位图案不能被遮挡,导致二维码的抗遮挡能力较差。然而对于某些具体的应用环境,需要的编码类型比较单一、数据量也较小,并不需要储存那么大的信息量,造成浪费;同时,其理论最大可遮挡面积仅为30%,且不可遮挡定位点。基于此,本发明实施例提供了一种二维码、二维码的编码方法、解码方法、装置和电子系统,该技术可以应用于扫描设备、计算机、手机、摄像机、平板电脑、车辆终端设备等多种设备中。该技术可以采用关软件和硬件实现,下面通过实施例进行描述。
实施例一:
首先,参照图1来描述用于实现本发明实施例的二维码、二维码的编码方法、解码方法、装置和电子系统的示例电子系统100。
如图1所示的一种电子系统的结构示意图,电子系统100包括一个或多个处理设备102、一个或多个存储装置104、输入装置106、输出装置108以及一个或多个图像采集设备110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子系统100的组件和结构只是示例性的,而非限制性的,根据需要,电子系统也可以具有其他组件和结构。
处理设备102可以是网关,也可以为智能终端,或者是包含中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元的设备,可以对电子系统100中的其它组件的数据进行处理,还可以控制电子系统100中的其它组件以执行期望的功能。
存储装置104可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理设备102可以运行程序指令,以实现下文的本发明实施例中(由处理设备实现)的客户端功能以及/或者其它期望的功能。在计算机可读存储介质中还可以存储各种应用程序和各种数据,例如应用程序使用和/或产生的各种数据等。
输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。
图像采集设备110可以采集预览视频帧或图片数据(如待识别图片或训练图片),并且将采集到的预览视频帧或图像数据存储在存储装置104中以供其它组件使用。
示例性地,用于实现根据本发明实施例的二维码、二维码的编码方法、解码方法、装置和电子系统的示例电子系统中的各器件可以集成设置,也可以分散设置,诸如将处理设备102、存储装置104、输入装置106和输出装置108集成设置于一体,而将图像采集设备110设置于可以采集到图片的指定位置。当上述电子系统中的各器件集成设置时,该电子系统可以被实现为诸如相机、智能手机、平板电脑、计算机、车载终端、摄像机等智能终端。
实施例二:
本实施例提供了一种二维码,如图2所示,该二维码200包括多个核心编码区域210;该核心编码区域210包括指定信息位220和检测信息位230;指定信息位220包括预设的原始信息对应的二进制信息;检测信息位230包括核心编码区域210的位置信息。
上述指定信息位可以是核心编码区域的中间位置,上述检测信息位可以用于定位核心编码区域的位置,该检测信息位可以是在核心编码区域的边缘位置,其中的编码信息可以根据实际需要进行设计,主要目的是便于识别,定位核心区域解码该区域的信息;上述预设的原始信息可以是由数字信息和字母信息组成,作为示例,数字信息可以是多位的,字母信息可以是一位的,比如,54281s、345u等;上述二进制信息可以包括“0”和“1”,可以通过预设的原始信息转换得到。
参见图2所示,本实施例以二维码包括四个核心编码区域,每个核心编码区域中的指定信息位为中间区域,检测信息位为边缘区域为例,进行说明,二维码中每个核心编码区域都是相同的,核心编码区域中有多个信息位,如图2所示的小方框,每个小方框代表一个信息位,可以显示一个二进制信息位;核心编码区域中信息位的数量不局限于图2所示的数量,也可以更多或者更少,可以根据实际需求进行设置。图中的指定信息位可以为核心编码区域中间位置,如图2所示的白色小方框,可以显示预设的原始信息对应的二进制信息;图中的检测信息位可以为核心编码区域的边缘位置,如图2所示的黑色阴影小方框,可以显示核心编码区域的位置信息。
需要说明的是,二维码包括的核心编码区域不仅限于图2中所示的四个,也可以是更多或者更少;核心编码区域的形状也不仅限于图中所示的正方形,也可以是矩形等;其排列的方式也不仅限于图2所示的排列方式,可以是横向排列,也可以是竖向排列。指定信息位和检测信息位也不仅限于图2所示的位置,也可以是核心编码区域的其他位置,且指定信息位和检测信息位的数量也不仅限于图2所示的数量,可以根据实际需求进行设置。
本发明实施例提供的一种二维码,该二维码中包括多个核心编码区域,该核心编码区域包括指定信息位和检测信息位;其中的指定信息位包括预设的原始信息对应的二进制信息;检测信息位包括核心编码区域的位置信息。该二维码中,通过在二维码中设置多个核心编码区域,提高了二维码的抗遮挡能力。
进一步的,上述每个核心编码区域的信息位尺度,根据原始信息的数据量确定;信息位尺度包括:核心编码区域的长度包括的信息位数量,以及核心编码区域的宽度包括的信息位数量。
上述原始信息的数据量可以根据编码的需求设定,可以设定原始信息数据的位数;例如,编码规定的原始信息为五位数字信息加一位字母信息,其中的字母信息只能为s或者u,如果原始信息的数字信息不足五位数,则可以在数字信息前面用零补齐,得到一个五位的数字信息,比如,原始信息345s,其中的数字信息不足五位,进行补齐,得到00345s。上述信息位尺度可以包括核心编码区域信息位的长度和宽度。具体的,在进行编码之前可以根据原始信息中,数字信息和字母信息的位数,确定相应的待编码的二维码中核心编码区域的信息位的长度和宽度包括的信息位数量。
例如,可以根据原始信息的数据量,确定该原始信息转换成二进制信息后,该二进制信息的数据量;再基于该二进制信息的数据量,确定核心编码区域中指定信息位的数量;然后,基于指定信息位的数量以及预设的核心编码区域的形状,确定检测信息位的数量;在确定检测信息的数量时,可能还需要考虑核心编码区域中是否需要保留冗余信息位;进而根据指定信息位的数量、检测信息位的数量和冗余信息为确定核心编码区域的长度和宽度。最终目的是,使得最终确定的核心编码区域信息位尺度,能够容下上述原始信息对应的二进制信息、同时,使检测信息位能够保持一定的形状,还可以保留一定数量的冗余信息位,但冗余信息位的数量有限,比如仅设置数个冗余信息位,避免冗余信息位过多造成二维码的信息有效率较低。
上述方式中,核心编码区域的信息位尺度,通过原始信息的数据量确定,使得二维码的尺寸更加灵活,提高了二维码的信息有效率。
进一步的,多个核心编码区域按照预设位置排列;每个核心编码区域预设有该核心编码区域对应的位置标识;每个核心编码区域中的指定信息位上显示的二进制信息,通过原始信息和该核心编码区域对应的位置标识转换得到。
具体的,上述多个核心编码区域可以按照横向或者竖向的位置进行排列,也可以根据核心编码区域的数量,按照预设的形状进行排列。上述位置标识可以是索引位信息,该位置标识可以根据核心编码区域的数量设置,用于区分多个核心编码的顺序,比如,核心编码区域有四个,则位置标识的取值可以是0-3,其中0表示第一个核心编码区域、1表示第二个核心编码区域、2表示第三个核心编码区域、3表示第四个核心编码区域。具体的,可以通过预设的转换方式,将原始信息和位置标识转换为二进制信息时,位置表示可以为两个信息位。
进一步的,检测信息位包括核心编码区域的边缘位置上的多个信息位;多个信息位组成预设形状的检测图案。
上述多个信息位可以是一个、两个或者更多,上述预设形状的检测图案,可以是矩形的核心编码区域中不相邻的四个顶点信息位组成的检测图案,也可以是连续相邻的多个信息位组成的检测图案,该检测图案可以在核心编码区域边缘的任何位置,比如,左下角的实线L型、右上角的黑白相间L型等。其中的黑白色可以与二进制信息的“0”、“1”相对应,可以将二进制信息为“0”的信息显示为黑色,二进制信息为“1”的信息显示为白色。
进一步的,检测图案包括“L”型图案;多个信息位中的至少一部分信息位位于核心编码区域的第一边缘行,多个信息位中除至少一部分信息以外的信息位位于与第一边缘行相邻的第一边缘列上。
上述第一边缘行可以是核心编码区域最底部的横向位置,上述第一边缘列可以是与第一边缘行相邻的最左侧的竖向位置,参见图3所示的一种检测图案,图中的黑色小方框表示七个信息位,其中四个信息位位于核心编码区域的第一边缘行,三个位于与第一边缘行相邻的第一边缘列上,形成了一个“L”型的检测图案。
另一种示例,参见图4所示的另一种检测图案,图中的黑色小方框表示13个信息位,其中七个信息位位于核心编码区域的第一边缘行,六个位于与第一边缘行相邻的第一边缘列上,形成了一个“L”型的检测图案。当然上述“L”型检测图案不仅限于图3和图4所示的黑色形式,也可以是黑白相间的形式,也不仅限于图3和图4所示的左下角的位置,也可以是任意一个顶点的位置形成的“L”型检测图案。
进一步的,检测信息位包括两组,分别为第一组检测信息位和第二组检测信息位;第一组检测信息位中至少一部分信息位位于核心编码区域的第一边缘行,除至少一部分信息以外的信息位位于与第一边缘行相邻的第一边缘列上;第二组检测信息位中至少一部分信息位位于核心编码区域的第二边缘行,除至少一部分信息以外的信息位位于与第二边缘行相邻的第二边缘列上;其中,第一边缘行、第一边缘列、第二边缘行和第二边缘列依次连接。
上述第一组检测信息位可以是实线的“L”型图案,第二组检测信息位可以是黑白相间的“7”型图案,具体的,可以参见图5所示的另一种检测图案的结构示意图,图中左下角的13个黑色小方框表示第一组检测信息位,右上角的11个黑色小方框表示第二组检测信息位。需要说明的是,第一组检测信息位不仅限于图5所示的黑色,也可以是黑白相间的显示颜色等,同理,第二组检测信息位也不仅限于图5所示的黑白相间的颜色,也可以是黑色显示等。
进一步的,第一组检测信息位中的每个信息位上显示有相同的二进制信息;第二组检测信息位中,相邻的信息位显示有不同的二进制信息。
上述相同的二进制信息可以是“0”,也可以是“1”,其对应的显示颜色可以是黑色,也可以是灰色等其他颜色;上述第二组检测信息位中,相邻的信息位显示有不同的二进制信息,可以是按照“0”和“1”的顺序显示,也可以是按照“1”和“0”的顺序显示,其中“0”和“1”对应的显示颜色可以根据具体需求设定。
另外,二维码中还包括定位符240;该定位符240用于:将二维码划分为多个目标区域;每个目标区域中包括多个核心编码区域210中的一个或多个核心编码区域210。
上述定位符可以是各种形状的符号,比如,圆形,矩形等;该定位符可以在二维码的图像中每个核心编码区域之间的位置,可以比核心编码区域的面积小;上述定位符的数量可以是一个、两个或者多个,若二维码中有一个定位符,根据该定位符,可以将二维码划分为两个目标区域,参见图6所示的另一种二维码的结构示意图,该二维码中有两个核心编码区域,两个核心编码区域的中间位置为定位符,根据该定位符,可以识别出二维码中的两个核心编码区域。当然,该二维码中也可以有四个横向排列核心编码区域,四个核心编码区域的中间位置为定位符,根据该定位符,可以识别出二维码中的两个目标区域,每个目标区域中包括两个核心编码区域。另外,上述定位符的个数不仅限于一个,也可以是两个或者多个。
进一步的,上述定位符包括多个;定位符位于目标区域的顶点位置;每个目标区域中包括多个核心编码区域中的一个核心编码区域;定位符包括霍夫圆。
本实施例以二维码中包括四个核心编码区域,定位符的数量为五个,定位符为霍夫圆为例,说明确定二维码中的目标区域的过程;参见图7所示另一种二维码的结构示意图,该二维码中有五个圆,中间的圆①为中心圆,其余四个位置的圆②③④⑤为边缘圆;其中每个边缘圆都可以与中心圆组成一个向量,因此图8中所示的二维码,可以构成多个向量,可以包括:①②、①③、①④、①⑤;其中①②和①④这两个向量为共线向量、①③和①⑤这两个向量也为共线向量;二维码中的目标区域可以通过非共线的两个向量确定,比如,检测出①②⑤三个圆,①②和①⑤可以构成非共线向量,因此可以确定二维码中右上角的目标区域;若检测出的是其他非共线向量,同样可以确定该非共线向量对应的目标区域。
实施例三:
本实施例提供了一种二维码的编码方法,该方法应用于上述实施例的二维码;待编码的二维码中包括多个核心编码区域;如图8所示,该方法包括如下步骤:
步骤S802,通过预设的转换方式,将预设的原始信息转换为二进制信息;
上述预设的转换方式可以包括预设的转换位数,还可以包括转换算法,其中,如果转换后的位数不够预设的位数,可以添加冗余位,该冗余位中可以添加其他的信息;该转换算法可以是信息的编码方法,将原始信息通过该方法转换为二进制信息。具体的,可以根据原始信息的数据量,确定预设的转换位数,通过预设的转换算法,将原始信息转换为预设位数的二进制信息。
步骤S804,按照预设的二进制信息显示规则,将二进制信息分别显示在每个核心编码区域中的指定信息位,得到编码后的二维码;其中,核心编码区域中还包括:用于在解码过程中,检测核心编码区域的位置的检测信息位。
上述预设的二进制信息显示规则可以包括显示的方式,该显示方式可以是二进制信息对应的显示颜色,比如,1对应白色,0对应黑色,同样的也可以是1对应黑的,0对应白色;其中的显示颜色不仅限于黑色和白色,也可以用其他颜色,比如1对应灰色,0对应黄色等。另外,上述预设的二进制信息显示规则还可以包括信息显示的排列方式,比如,按照zigzag的形式对二进制信息进行排列,其中,排列的初始位置可以有多种,排列的方向可以是竖向排列,也可以是横向排列,也可以是之字形排列;当然也可以不采用zigzag方法,比如,点阵排列的方式等。上述指定信息位可以是核心编码区域的中间位置,上述检测信息位可以用于定位核心编码区域的位置,该检测信息位可以是在核心编码区域的边缘位置,其中的编码信息可以根据实际需要进行设计,主要目的是便于识别,定位核心区域解码该区域的信息。
本发明实施例提供的一种二维码的编码方法,待编码的二维码中包括多个核心编码区域,通过预设的转换方式,将原始信息转换为二进制信息;进而将二进制信息分别显示在每个核心编码区域中的指定信息位,同时将检测核心编码区域的位置的检测信息位,显示在每个核心编码区域中的指定信息位。该方式中,通过在二维码中设置多个核心编码区域,提高了二维码的抗遮挡能力。
另外,将预设的原始信息转换为二进制信息的步骤之前,上述方法还包括:根据预设的原始信息的数据量,确定待编码的二维码中核心编码区域的信息位尺度。
上述预设的原始信息可以是由数字信息和字母信息组成,作为示例,数字信息可以是多位的,字母信息可以是一位的,比如,54281s、345u等;上述预设的原始信息的数据量可以根据编码的需求设定,可以设定原始信息数据的位数;例如,编码规定的原始信息为五位数字信息加一位字母信息,其中的字母信息只能为s或者u,如果原始信息的数字信息不足五位数,则可以在数字信息前面用零补齐,得到一个五位的数字信息,比如,原始信息345s,其中的数字信息不足五位,进行补齐,得到00345s。上述待编码的二维码可以包含多个核心编码区域,该区域为待编码的二维码核心区域,在进行编码之前不包含任何信息。上述信息位尺度可以包括核心编码区域信息位的长和宽。具体的,在进行编码之前可以根据原始信息中,数字信息和字母信息的位数,确定相应的待编码的二维码中核心编码区域的信息位的长和宽。
该方式中,核心编码区域的信息位尺度,通过原始信息的数据量确定,使得二维码的尺寸更加灵活,提高了二维码的信息有效率。
实施例四:
本实施例提供了另一种二维码的编码方法,该方法在上述实施例的基础上实现;其中,上述信息位尺度包括:核心编码区域的长度包括的信息位数量,以及核心编码区域的宽度包括的信息位数量;基于此,本实施例重点描述根据预设的原始信息的数据量,确定待编码的二维码中核心编码区域的信息位尺度的具体实现过程(通过步骤S902-S904实现);如图9所示,该方法包括如下步骤:
步骤S902,根据预设的原始信息的数据量,确定核心编码区域中需要显示与该原始信息相关联的二进制信息的第一信息位数量,以及用于在解码过程中,检测核心编码区域的位置的检测信息位的第二信息位数量;
上述与原始信息相关联的二进制信息可以包括原始信息本身,还可以包括索引位,以及用于字节对齐的冗余位,其中索引位可以用于指示当前二进制信息,应该写入哪个核心编码区域。因此上述第一信息位数量可以包括原始信息对应的二进制信息位数、索引位数和冗余位数,其中索引位数可以是两位,冗余位的数量可以根据实际的编码需求进行设置。上述检测信息位可以在核心编码区域的边缘位置,其数量可以根据第一信息位数量确定。
具体的,如果第一信息位数量为72位,则第二信息位数量可以包括,可以使用21位信息位作为固定的L形黑边框用于检测,使用19位信息作为固定的黑白相间边框用于检测,根据预设的二维码区域,该区域的信息为11*11=121,则剩余的9位,可以暂时不添加任何信息。
步骤S904,根据第一信息位数量和第二信息位数量,确定核心编码区域的信息位尺度;
在确定核心编码区域的信息位尺度之前,上述核心编码区域可以先确定区域的形状,可以是正方形或者是指定形状的矩形等;另外,核心编码区域的大小相对于原始信息的数据量,不能太大,可以是区域中填充了原始信息对应的二进制信息、区域位置信息、检测信息等必要的数据信息后,再填充少量的冗余位,即可填满该核心编码区域。
基于上述的前提标准,在实际实现时,首先可以确定核心编码区域的形状,信息位尺度可以根据第一信息位数量和第二信息位数量的总数量,确定具体的宽度和高度。比如,可以将第一信息位数量按照区域的形状进行排列,其次将第二信息位数量在区域的检测位置进行排列,根据最后的排列的形状大小,确定信息位尺度。
步骤S906,通过预设的转换方式,将原始信息转换为二进制信息;
步骤S908,按照预设的二进制信息显示规则,将二进制信息分别显示在每个核心编码区域中的指定信息位,得到编码后的二维码;其中,核心编码区域中还包括:用于在解码过程中,检测核心编码区域的位置的检测信息位。
本实施例提供了另一种二维码的编码方法,根据预设的原始信息的数据量,确定核心编码区域中需要显示与该原始信息相关联的二进制信息的第一信息位数量,以及用于在解码过程中,检测核心编码区域的位置的检测信息位的第二信息位数量;根据第一信息位数量和第二信息位数量,确定核心编码区域的信息位尺度。该方式中,通过原始信息以及检测信息位,设置核心编码区域的信息位尺寸,在数量较小,并不需要存储大量信息的情况下能够避免空间浪费,同时可以应用于具体的场景,能够丰富需要的编码类型,增强了设计的鲁棒性。
实施例五:
本实施例提供了另一种二维码的编码方法,该方法在上述实施例的基础上实现;本实施例重点描述通过预设的转换方式,将预设的原始信息转换为二进制信息和将二进制信息分别显示在每个核心编码区域中的指定信息位的具体实现过程(通过步骤S1006-S1008实现);如图10所示,该方法包括如下步骤:
步骤S1002,根据预设的原始信息的数据量,确定核心编码区域中需要显示与原始信息相关联的二进制信息的第一信息位数量,以及用于在解码过程中,检测核心编码区域的位置的检测信息位的第二信息位数量;
步骤S1004,根据第一信息位数量和第二信息位数量,确定核心编码区域的信息位尺度;
步骤S1006,针对每个核心编码区域,设置该核心编码区域在待编码二维码中的位置标识;通过预设的转换方式,将原始信息和位置标识转换为二进制信息,得到该核心编码区域对应的二进制信息;
上述位置标识可以对应前述索引位的信息,该位置标识可以根据核心编码区域的数量设置,用于区分多个核心编码的顺序,比如,核心编码区域有四个,则位置标识的取值可以是0-3,其中0表示第一个核心编码区域、1表示第二个核心编码区域、2表示第三个核心编码区域、3表示第四个核心编码区域。具体的,通过预设的转换方式,将原始信息和位置标识转换为二进制信息时,位置表示可以为两个信息位。
针对上述通过预设的转换方式,将原始信息和位置标识转换为二进制信息的步骤,参见图11所示的二进制信息转换方法的流程图,该方法包括如下步骤:
步骤S1102,将原始信息和位置标识转换为二进制形式的初始信息;
上述二进制形式可以通过十进制转换为二进制的方式,将原始信息和位置标识转换为二进制形式的初始信息。
其中,上述将原始信息和位置标识转换为二进制形式的初始信息的步骤,具体包括:将原始信息转换为二进制形式的原始信息;将位置标识转换为二进制形式的位置标识;将二进制形式的原始信息、二进制形式的位置标识、以及预设位数的冗余信息,确定为二进制形式的初始信息。
上述二进制信息的原始信息具体有多少位,可以根据原始信息的取值范围确定;若范围小,所需的位数相对就少;同理,上述二进制形式的位置标识,也可以根据位置标识的取值范围确定,若范围小,所需的位数相对就少;上述预设位数的冗余信息可以设置为“0”,其位数可以根据核心区域的总位数、原始信息的位数、位置标识的位数提前算好的,具体的,可以设置字节,每个字节包括多个位数,比如,一个字节包括8个位数,上述冗余信息的位数,可以根据原始信息的位数和位置标识的位数的总位数,设置相应位数的冗余信息,以使各个位数相加能够保证为整数个字节数;也可以说冗余信息的位数的主要目的是对齐字节,同时后续可以添加信息。
举例说明,原始信息为五位数字信息和一位字母信息,即“67854s”;可以将原始信息的前五位数“67854”提取出来作为身份标识,将字母s提取出来作为标记信息,根据预设的规则可以设置为“1”;另外,位置标识可以设置是“0”;可以通过十进制转换为二进制的方式,将“67854”转换为二进制形式为“10000100100001110”,也可以成为ID信息,后面加上s对应的标记信息“1”,也可以称为Mark信息,得到17位二进制形式的原始信息“100001001000011101”,也可以成为ID信息;将位置标识“0”转换为二进制形式,得到二进制形式的位置标识“00”,也可以成为Index信息,该二进制形式的位置标识的位数可以根据预设规则设置;另外,预设位数的冗余信息,可以设置为四位,即“0000”。将二进制形式的原始信息“100001001000011101”、二进制形式的位置标识“00”、以及预设位数的冗余信息“0000”,按照顺序拼接得到二进制形式的初始信息为“100001001000011101000000”。
需要说明的是,该初始信息的信息为24位,如果不加四位冗余信息,则该初始信息为20位,若设定一个字节为8位二进制数,为了得到整数的字节数,可以将冗余信息的位数设置为四位。
步骤S1104,通过预设的Reed-solomon编码算法,将初始信息进行编码处理,得到编码信息;
上述Reed-solomon编码算法是一种纠错码算法,可以利用范特蒙矩阵或者柯西矩阵的特性实现纠错码的功能。具体的,可以将初始信息通过矩阵运算的方式进行处理,得到检验数据,根据这些冗余的校验数据,可以保证初始信息的可恢复性,从而得到编码信息。具体的,该编码信息可以是6个字节,48位的编码信息。
步骤S1106,将初始信息和编码信息确定为二进制信息。
具体的,上述初始信息可以是24位的二进制信息,上述编码信息可以是48位的,可以通过相加的方式,得到上述二进制信息,该二进制信息可以是72位的二进制信息。
步骤S1008,针对每个核心编码区域,将该核心编码区域对应的二进制信息显示在该核心编码区域中的指定信息位,得到编码后的二维码。
如果上述核心编码区域有多个,则上述核心编码区域对应的二进制信息应该显示在哪个核心编码区域中,可以通过二进制信息中的位置标记信息确定;上述指定信息位包括初始信息对应的二进制信息的位置,还包括检测信息位对应的二进制信息的位置;具体的,初始信息对应的二进制信息的位置可以在核心编码区域的中间位置,检测信息位对应的二进制信息的位置可以在核心编码区域的边缘位置。上述二维码可以包括多个核心编码区域,其排列顺序可以有多种,比如,两个核心编码区域在二维码中可以是竖向排列,也可以是横向排列。
该方式中,通过给每个核心编码区域设置位置标识,能够准确地识别每个核心编码区域;通过预设的转换方式,将原始信息和位置标识转换为二进制信息,得到该核心编码区域对应的二进制信息;针对每个核心编码区域,将该核心编码区域对应的二进制信息显示在该核心编码区域中的指定信息位,得到编码后的二维码。在识别二维码的过程中,提高了信息有效率,避免了浪费,同时提高了二维码的抗遮挡能力。
实施例六:
本实施例提供了一种二维码的解码方法,该方法应用于实施例二的二维码;待解码的二维码中包括多个核心编码区域;该方法在上述实施例的基础上实现,解码的二维码对应上述实施例方法确定的二维码;如图12所示,该方法包括如下步骤:
步骤S1202,从包含有二维码的图像中检测二维码中的检测信息位;
上述二维码是通过前述实施例的编码方法得到的,具体的,可以利用手机、电脑等带有摄像和计算功能的设备,扫描二维码的图像,可以通过直线检测、定位等方式,识别二维码中的检测信息位。
步骤S1204,根据检测到的检测信息位,确定二维码中的核心编码区域;
由于检测信息位的位置在核心编码区域的边缘,在检测到检测信息位后,可以通过截取的方式,将该检测信息位对应的核心编码区域,提取出来,进而确定二维码中的核心编码区域。
步骤S1206,解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息。
在解码上述核心编码区域前,可以将包含该核心编码区域的图像进行处理,使得图像更能清楚的显示核心编码区域中,指定信息位上显示的二进制信息。根据与前述实施例的编码方法对应的解码方法,解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息。
该方式中,从包含有二维码的图像中检测二维码中的检测信息位;根据检测到的检测信息位,确定二维码中的核心编码区域;解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息,解码二维码。其解码结果表明,在4*4的编码条件下,理论最大可遮挡面积达到319.8%,以一个核心编码区域为单位一,且实际最大可遮挡面积略大于理论值,远远超过目前二维码的抗遮挡能力。
实施例七:
本实施例提供了另一种二维码的解码方法,该方法在上述实施例的基础上实现,其中,上述二维码中还包括多个定位符;该定位符用于:将二维码划分为多个目标区域;每个目标区域中包括一个核心编码区域;基于此,本实施例重点描述从包含有二维码的图像中检测二维码中的检测信息位的具体实现过程(通过步骤S1302-S1306),如图13所示,该方法包括如下步骤:
步骤S1302,从包含有二维码的图像中检测定位符;
上述定位符可以是各种形状的符号,比如,圆形,矩形等;该定位符可以在二维码的图像中每个核心编码区域之间的位置,可以比核心编码区域的面积小;本实施例以定位符为霍夫圆为例,比如,二维码中有四个核心编码区域,定位圆可以有五个,但是在实际检测的过程中,由于在扫描二维码的过程中,可能不会全部将二维码扫描到设备中,比如只扫描到了一半的二维码图像,因此包含有二维码的图像中检测出的定位圆可能不是五个,需要根据扫描得到二维码的图像确定。具体的,可以通过检测算法,获取定位符的位置和坐标。例如,上述二维码中的定位符为霍夫圆布局,则可以利用霍夫圆检测,获取定位圆的位置与坐标。
步骤S1304,通过检测出的定位符,确定二维码中的目标区域;
以定位符为霍夫圆为例,利用霍夫圆检测出的定位符,也就是圆心的位置和坐标,可以根据多个圆心的位置和坐标,确定二维码中的目标区域。
针对上述步骤中,通过检测出的定位符,确定二维码中的目标区域的步骤,具体包括:确定检测出的定位符的数量和相对位置;根据定位符的数量和相对位置,确定二维码中的目标区域。
上述相对位置可以是指定位符的位置和坐标,上述目标区域可以是二维码的核心编码区域;本实施例以二维码中包括四个核心编码区域,定位符的数量为五个,定位符为霍夫圆为例,说明确定二维码中的目标区域的过程;参见图7所示二维码的结构示意图,该二维码中有五个圆,中间的圆①为中心圆,其余四个位置的圆②③④⑤为边缘圆;其中每个边缘圆都可以与中心圆组成一个向量,因此图8中所示的二维码,可以构成多个向量,可以包括:①②、①③、①④、①⑤;其中①②和①④这两个向量为共线向量、①③和①⑤这两个向量也为共线向量;二维码中的目标区域可以通过非共线的两个向量确定,比如,检测出①②⑤三个圆,①②和①⑤可以构成非共线向量,因此可以确定二维码中右上角的目标区域;若检测出的是其他非共线向量,同样可以确定该非共线向量对应的目标区域。
具体的,上述检测出的定位符的数量可以包括多种情况,可以根据不同的情况设置不同的处理逻辑,以二维码中有五个定位符,该定位符是霍夫圆为例,进行说明不同数量定位符的中心圆与边缘圆的处理逻辑:
情况一:如果有误识别等情况,将其他图像误识别为定位符,检测出的定位符大于五个时,首先可以先确定中心圆,如果存在距离其他所有圆的平均坐标小于第一预设阈值的圆,则可以将其确定为中心圆;如果不存在距离其他所以圆的平均坐标小于第一预设阈值的圆,可以取平均坐标作为中心圆的坐标;筛选剩余圆中距中心圆距离小于第二阈值的圆,可以将该圆确定为误识别的圆,剩余的圆确定为边缘圆。
情况二:如果有遮挡等情况,检测出的定位符会小于五个;四个或者四个以上的情况与上述情况一的处理方法相同;三个的情况时,如果中心圆不存在就不会构成非共线向量,因此,只处理中心圆存在的情况,将最短两边的交点确定为中心圆,或者计算每个圆与其他圆的距离和,和最小对应的圆为中心圆,其余的圆为边缘圆。
情况三,如果有遮挡等情况,检测出的定位符小于三个时,由于不可能构成非共线向量,确定一个子区域,所以直接作为无法解码的情况跳过该步骤。
通过上述方法,确定了每个圆的位置,利用确定的中心圆和边缘圆可以筛选出非共线向量;由于在扫描二维码图像时可能存在有一定角度的旋转,因此可以将筛选出非共线向量进行求正交计算,按照逆时针方向进行转动,去掉旋转角,使目标区域转正,最终确定二维码中的目标区域,该目标区域可以是一个或者多个,具体可以根据非共线向量的数量确定。
需要说明的是,实际的二维码中霍夫圆内没有数字,图8中圆内的数字只是为了方便说明各个圆的作用所做的标注。另外,本发明不限定二维码中核心编码区域的个数,可以是四个,也可以是两个或者三个区域并排排列等;多个区域的排列方式也不做限定,可以是横向排列,也可以是竖向排列,还可以是其他各种形式的排列。
步骤S1306,从目标区域中检测二维码中的检测信息位;
上述检测信息位可以是各种不同的形状,比如,L型、方形的实线或者L型、方形的黑白相间的线条等;因此针对不同的检测信息位,可以通过不同的检测方式检测得到二维码中的检测信息位。
其中,上述检测信息位组成预设形状的检测图案;该检测图案的边缘包括长度满足预设长度范围的直线段;
上述检测图案的形状可以是实线的L型,也可以是黑白相间的L型;执行检测二维码中的检测信息位时,可以仅使用一个检测图案;也可以使用一个检测图案进行检测,另一个检测图案协助定位定位点,比如,使用实线的L型进行检测,另一个黑白相间的L型协助定位定位点,该定位点可以是在黑白相间的L型图案中的点,可以有多个,具体可以根据实际的检测图案的形状设定。上述预设长度可以根据实际检测图案的形状大小设定。
参见图14所示检测信息位的检测方法的流程图,从目标区域中检测二维码中的检测信息位的步骤的具体实现过程,如图14所示,该方法包括如下步骤:
步骤S1401,通过预设的直线段检测算法,从目标区域中检测直线段;
上述预设的直线段检测算法可以是LSD(Line Segment Detector,直线段检测算法)直线检测等方法,由于检测的对象是目标区域的图像,可以将该图像的灰度图,输入至LSD直线检测算法中,可以检测出图像中局部的直的轮廓。
步骤S1402,从检测到的直线段中,删除长度小于长度范围中的最小值的直线段,和/或,删除长度大于长度范围中的最大值的直线段;
上述检测到的直线段可以有多个不同的长度,上述长度范围中的最小值和长度范围中的最大值可以根据实际的二维码中目标区域的信息位尺寸设定。举例说明,若目标区域图像中的信息是利用黑白色的形式进行编码的,因此在黑白相间处可以检测出多个直线段;如果检测到的直线段中,只存在小于长度范围中的最小值的线段,可以删除长度小于长度范围中的最小值的直线段;如果检测到的直线段中,只存在大于长度范围中的最大值的线段,可以删除长度大于长度范围中的最大值的直线段;如果检测到的直线段中,即存在小于长度范围中的最小值的线段,又存在大于长度范围中的最大值的线段,可以删除长度小于长度范围中的最小值的直线段,同时删除长度大于长度范围中的最大值的直线段。
步骤S1403,根据目标区域中剩余的直线段,确定二维码中的检测信息位。
上述剩余的直线段可以是检测信息位对应的直线段,该直线段可以是检测信息位组成的检测图案的形状,比如,若检测图案为L型,则检测出的直线段可以构成一个L型;可以将检测出的直线段在目标区域中标注位置,根据该位置确定二维码中的检测信息位。
步骤S1308,根据检测到的检测信息位,确定二维码中的核心编码区域;
步骤S1310,解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息。
该方式中,针对不同数量的定位符,设置了不同的处理逻辑,通过寻找中心定位符与边缘定位符,利用非共线向量的方式,确定目标区域,能够快速准确的确定目标区域,同时解决了解码过程中的出现定位符过多或者过少的问题。
另外,上述从包含有二维码的图像中检测二维码中的检测信息位的步骤,包括:通过预设的ROI区域检测模型,从包含有二维码的图像中检测包含有二维码的目标区域;从目标区域中检测二维码中的检测信息位。
该检测方法的二维码,可以直接将多个核心编码区域放置于图中,不添加其他组成部分,且不设置定位符,直接利用区域检测方法,检测二维码中所有的检测信息位。具体的,上述ROI(Regions OfInterest,感兴趣区域)区域检测模型,可以提取出待检测二维码图像中大致的目标区域,该目标区域可以包含二维码中的所有的核心编码区域,进而可以缩小直线提取范围,降低计算量,同时提高检测速度和检测准确率。上述从目标区域中检测二维码中的检测信息位的过程,与本实施例中步骤S1306描述的技术方法相同,所达到的技术效果也相同,在此不做赘述。
实施例八:
本实施例提供了另一种二维码的解码方法,该方法在上述实施例的基础上实现;本实施例重点描述根据检测到的检测信息位,确定二维码中的核心编码区域的具体实现过程(通过步骤S1508-S1510实现)和解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息的具体实现过程(通过步骤1512实现);如图15所示,该方法包括如下步骤:
步骤S1502,从包含有二维码的图像中检测定位符;
步骤S1504,通过检测出的定位符,确定二维码中的目标区域;
步骤S1506,从目标区域中检测二维码中的检测信息位;
步骤S1508,根据检测到的检测信息位,确定二维码中的核心编码区域的多个顶点;
具体的,可以根据检测到的检测信息位对应的直线段的端点,确定多个关键点,参见图16所示的一种二维码中核心编码区域顶点的结构示意图,检测出三条直线段,将最外侧的两个直线段的三个端点确定为顶点,对应图中的点1、点2、点3,根据图中点1的横坐标和点3的纵坐标可以确定点4的位置。可以将点2、点3和点4确定为二维码中的核心编码区域的三个顶点。
上述检测信息位对应的直线段,由于直线检测方法检测出的结果可能存在不准确的偏移,可能会导致图16中点4的位置不够精确,可以对前述三个顶点的位置进行扰动处理,即重复多次上下左右平移多个像素,比如,重复四次上下左右平移四个像素,以使定位点更准确。
步骤S1510,通过线段连接多个顶点中相邻的顶点,将线段所包围的区域,确定为二维码中的核心编码区域;
具体的,参见图16中的三个顶点,将点2与点3连接,点3与点4连接,可以构成一个区域,可以将该区域确定为二维码中的核心编码区域。
另外,如果检测到多组检测信息位,针对每组检测信息位,通过线段连接该组检测信息位对应的多个顶点。
由于检测出的定位符的数量不等,所以检测出的检测信息位可能有多组,可以针对每组的检测信息位对应的直线段,确定各个顶点,可以将相邻的顶点进行连接。
步骤S1512,通过在编码过程中使用的转换方式和二进制信息显示规则,将核心编码区域中,指定信息位上显示的二进制信息解码为原始信息。
在进行解码之前,由于多个顶点可能进行了扰动处理,因此通过连线构成的区域可能是一个矩形,也有可能不是矩形,比如,平行四边形等;可以将多个顶点构成的四边形与矩形进行仿射变换处理。另外,由于解码的过程与编码的过程完全对称,因此需要将最后确定的二维码的核心编码区域的图像与编码时核心编码区域中各个信息的位置相同,比如,编码时核心编码区域中的L型检测信息位在区域的左下角,最后确定的核心编码区域图像中L型检测信息位在区域的左上角,此时可以将图像进行转正,以使L型检测信息位转到区域的左下角。
由于上述核心编码区域的图像为扫描得到的灰度图,在得到转正后的核心编码区域后,可以将该图像进行自适应二值化处理,以使灰度图像变为黑白图像。最终对二值化图像的核心编码区域中的信息进行解码,对应编码的过程,若编码的二进制信息在写入二维码时,1为黑色,0为白色,则解码时黑色块为二进制中的1,白色块为二进制中的0,按照zigzag形式依次提取,得到的二进制数组作为整个检测过程的输出。
若在编码过程中输入的是72为的二进制信息,也就是核心编码区域中的有效信息位数为72位;具体的,可以将该核心编码区域的黑白图像输入值与编码程序对应的解码程序中,该程序可以是开源库中的reed-solomon,首先将72位的编码信息解码为24位信息位,然后按照编码过程中的排列顺序,将第1至17位信息作为ID信息,将第18位信息作为Mark信息,将第19至20位信息作为Index信息,最后将排列好的信息输出,完成编码的过程。
该方式中,通过设置顶点,利用线段连接的方式,确定二维码中的核心编码区域,提高了检测结果的准确率,进而提高了解码的效率和准确率。
实施例九:
对应于上述方法实施例,本实施例提供了一种二维码的编码装置,该装置应用实施例二的二维码;待编码的二维码中包括多个核心编码区域;如图17所示,该装置包括:
信息转换模块171,用于通过预设的转换方式,将预设的原始信息转换为二进制信息;
二维码确定模块172,用于按照预设的二进制信息显示规则,将二进制信息分别显示在每个核心编码区域中的指定信息位,得到编码后的二维码;其中,核心编码区域中还包括:用于在解码过程中,检测核心编码区域的位置的检测信息位。
进一步的,上述装置还包括尺度确定模块,用于根据预设的原始信息的数据量,确定待编码的二维码中核心编码区域的信息位尺度。
进一步的,上述信息位尺度包括:核心编码区域的长度包括的信息位数量,以及核心编码区域的宽度包括的信息位数量;上述尺度确定模块用于:根据预设的原始信息的数据量,确定核心编码区域中需要显示与原始信息相关联的二进制信息的第一信息位数量,以及用于在解码过程中,检测核心编码区域的位置的检测信息位的第二信息位数量;根据第一信息位数量和第二信息位数量,确定核心编码区域的信息位尺度。
进一步的,上述信息转换模块用于:针对每个核心编码区域,设置该核心编码区域在待编码二维码中的位置标识;通过预设的转换方式,将原始信息和位置标识转换为二进制信息,得到该核心编码区域对应的二进制信息;上述二维码确定模块用于:针对每个核心编码区域,将该核心编码区域对应的二进制信息显示在该核心编码区域中的指定信息位。
进一步的,上述信息转换模块用于:将原始信息和位置标识转换为二进制形式的初始信息;通过预设的Reed-solomon编码算法,将初始信息进行编码处理,得到编码信息;将初始信息和编码信息确定为二进制信息。
进一步的,上述信息转换模块用于:将原始信息转换为二进制形式的原始信息;将位置标识转换为二进制形式的位置标识;将二进制形式的原始信息、二进制形式的位置标识、以及预设位数的冗余信息,确定为二进制形式的初始信息。
本发明实施例提供的一种二维码的编码装置,根据预设的原始信息的数据量,确定待编码的二维码中多个核心编码区域的信息位尺度;通过预设的转换方式,将原始信息转换为二进制信息;按照预设的二进制信息显示规则,将二进制信息分别显示在每个核心编码区域中的指定信息位,同时将检测核心编码区域的位置的检测信息位,显示在每个核心编码区域中的指定信息位,得到编码后的二维码。该装置中,核心编码区域的信息位尺度,通过原始信息的数据量确定,丰富了二维码的尺寸,使其更加灵活;通过在二维码中设置多个核心编码区域,在识别二维码的过程中,提高了信息有效率,避免了浪费,同时提高了二维码的抗遮挡能力。
实施例十:
对应于上述方法实施例,本实施例提供了一种二维码的解码装置,该装置应用实施例二的二维码;待编码的二维码中包括多个核心编码区域;如图18所示,该装置包括:
检测信息位检测模块181,用于从包含有二维码的图像中检测二维码中的检测信息位;
核心编码区域确定模块182,用于根据检测到的检测信息位,确定二维码中的核心编码区域;
二维码解码模块183,用于解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息。
进一步的,上述二维码中还包括多个定位符;定位符用于:将二维码划分为多个目标区域;每个目标区域中包括一个核心编码区域;上述检测信息位检测模块用于:从包含有二维码的图像中检测定位符;通过检测出的定位符,确定二维码中的目标区域;从目标区域中检测二维码中的检测信息位。
进一步的,上述检测信息位检测模块用于:确定检测出的定位符的数量和相对位置;根据定位符的数量和相对位置,确定二维码中的目标区域。
进一步的,上述检测信息位检测模块用于:通过预设的ROI区域检测模型,从包含有二维码的图像中检测包含有二维码的目标区域;从目标区域中检测二维码中的检测信息位。
进一步的,上述检测信息位组成预设形状的检测图案;该检测图案的边缘包括长度满足预设长度范围的直线段;上述检测信息位检测模块用于:通过预设的直线段检测算法,从目标区域中检测直线段;从检测到的直线段中,删除长度小于长度范围中的最小值的直线段,和/或,删除长度大于长度范围中的最大值的直线段;根据目标区域中剩余的直线段,确定二维码中的检测信息位。
进一步的,上述核心编码区域确定模块用于:根据检测到的检测信息位,确定二维码中的核心编码区域的多个顶点;通过线段连接多个顶点中相邻的顶点,将线段所包围的区域,确定为二维码中的核心编码区域。
进一步的,上述核心编码区域确定模块用于:如果检测到多组检测信息位,针对每组检测信息位,通过线段连接该组检测信息位对应的多个顶点。
进一步的,上述二维码解码模块用于:通过在编码过程中使用的转换方式和二进制信息显示规则,将核心编码区域中,指定信息位上显示的二进制信息解码为原始信息。
本发明实施例提供的一种二维码的解码装置,从包含有二维码的图像中检测二维码中的检测信息位;根据检测到的检测信息位,确定二维码中的核心编码区域;解码核心编码区域中,指定信息位上显示的二进制信息,得到二进制信息对应的原始信息,解码二维码。其解码结果表明,在4*4的编码条件下,理论最大可遮挡面积达到319.8%,以一个核心编码区域为单位一,且实际最大可遮挡面积略大于理论值,远远超过目前二维码的抗遮挡能力。
实施例十一:
本发明实施例提供了一种电子系统,该电子系统包括:图像采集设备、处理设备和存储装置;图像采集设备,用于获取预览视频帧或图像数据;存储装置上存储有计算机程序,计算机程序在被处理设备运行时执行如上述二维码的编码方法,或者上述二维码的编码方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的电子系统的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理设备运行时执行如上述二维码的编码方法,或者上二维码的编码方法的步骤。
本发明实施例所提供的二维码、二维码的编码方法、解码方法、装置和电子系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (28)

1.一种二维码,其特征在于,所述二维码包括多个核心编码区域;
所述核心编码区域包括指定信息位和检测信息位;
其中,所述指定信息位包括预设的原始信息对应的二进制信息;所述检测信息位包括所述核心编码区域的位置信息。
2.根据权利要求1所述的二维码,其特征在于,每个所述核心编码区域的信息位尺度,根据所述原始信息的数据量确定;
所述信息位尺度包括:所述核心编码区域的长度包括的信息位数量,以及所述核心编码区域的宽度包括的信息位数量。
3.根据权利要求1所述的二维码,其特征在于,所述多个核心编码区域按照预设位置排列;每个所述核心编码区域预设有该核心编码区域对应的位置标识;
每个所述核心编码区域中的指定信息位上显示的二进制信息,通过所述原始信息和该核心编码区域对应的位置标识转换得到。
4.根据权利要求1-3任一项所述的二维码,其特征在于,所述检测信息位包括所述核心编码区域的边缘位置上的多个信息位;所述多个信息位组成预设形状的检测图案。
5.根据权利要求4所述的二维码,其特征在于,所述检测图案包括“L”型图案;
所述多个信息位中的至少一部分信息位位于所述核心编码区域的第一边缘行,所述多个信息位中除所述至少一部分信息以外的信息位位于与所述第一边缘行相邻的第一边缘列上。
6.根据权利要求4所述的二维码,其特征在于,所述检测信息位包括两组,分别为第一组检测信息位和第二组检测信息位;
所述第一组检测信息位中至少一部分信息位位于所述核心编码区域的第一边缘行,除所述至少一部分信息以外的信息位位于与所述第一边缘行相邻的第一边缘列上;
所述第二组检测信息位中至少一部分信息位位于所述核心编码区域的第二边缘行,除所述至少一部分信息以外的信息位位于与所述第二边缘行相邻的第二边缘列上;
其中,所述第一边缘行、所述第一边缘列、所述第二边缘行和所述第二边缘列依次连接。
7.根据权利要求6所述的二维码,其特征在于,所述第一组检测信息位中的每个信息位上显示有相同的二进制信息;
所述第二组检测信息位中,相邻的信息位显示有不同的二进制信息。
8.根据权利要求1-7任一项所述的二维码,其特征在于,所述二维码中还包括定位符;所述定位符用于:将所述二维码划分为多个目标区域;每个所述目标区域中包括所述多个核心编码区域中的一个或多个核心编码区域。
9.根据权利要求8所述的二维码,其特征在于,所述定位符包括多个;所述定位符位于所述目标区域的顶点位置;每个所述目标区域中包括所述多个核心编码区域中的一个核心编码区域。
10.根据权利要求8或9所述的二维码,其特征在于,所述定位符包括霍夫圆。
11.一种二维码的编码方法,其特征在于,所述方法应用于权利要求1-10任一项所述的二维码;待编码的二维码中包括多个核心编码区域;所述方法包括:
通过预设的转换方式,将预设的原始信息转换为二进制信息;
按照预设的二进制信息显示规则,将所述二进制信息分别显示在每个所述核心编码区域中的指定信息位,得到编码后的所述二维码;其中,所述核心编码区域中还包括:用于在解码过程中,检测所述核心编码区域的位置的检测信息位。
12.根据权利要求11所述的方法,其特征在于,将预设的原始信息转换为二进制信息的步骤之前,所述方法还包括:
根据预设的原始信息的数据量,确定待编码的二维码中核心编码区域的信息位尺度。
13.根据权利要求12所述的方法,其特征在于,所述信息位尺度包括:所述核心编码区域的长度包括的信息位数量,以及所述核心编码区域的宽度包括的信息位数量;
所述根据预设的原始信息的数据量,确定待编码二维码中核心编码区域的信息位尺度的步骤,包括:
根据预设的原始信息的数据量,确定所述核心编码区域中需要显示与所述原始信息相关联的二进制信息的第一信息位数量,以及用于在解码过程中,检测所述核心编码区域的位置的检测信息位的第二信息位数量;
根据所述第一信息位数量和所述第二信息位数量,确定所述核心编码区域的信息位尺度。
14.根据权利要求11所述的方法,其特征在于,通过预设的转换方式,将预设的原始信息转换为二进制信息的步骤,包括:
针对每个所述核心编码区域,设置该核心编码区域在所述待编码二维码中的位置标识;通过预设的转换方式,将所述原始信息和所述位置标识转换为二进制信息,得到该核心编码区域对应的二进制信息;
所述将所述二进制信息分别显示在每个所述核心编码区域中的指定信息位的步骤,包括:针对每个所述核心编码区域,将该核心编码区域对应的二进制信息显示在该核心编码区域中的指定信息位。
15.根据权利要求14所述的方法,其特征在于,通过预设的转换方式,将所述原始信息和所述位置标识转换为二进制信息的步骤,包括:
将所述原始信息和所述位置标识转换为二进制形式的初始信息;
通过预设的Reed-solomon编码算法,将所述初始信息进行编码处理,得到编码信息;
将所述初始信息和所述编码信息确定为二进制信息。
16.根据权利要求15所述的方法,其特征在于,将所述原始信息和所述位置标识转换为二进制形式的初始信息的步骤,包括:
将所述原始信息转换为二进制形式的原始信息;将所述位置标识转换为二进制形式的位置标识;
将所述二进制形式的原始信息、所述二进制形式的位置标识、以及预设位数的冗余信息,确定为二进制形式的初始信息。
17.一种二维码的解码方法,其特征在于,所述方法应用于权利要求1-10任一项所述的二维码;待解码的二维码中包括多个核心编码区域;所述方法包括:
从包含有所述二维码的图像中检测所述二维码中的检测信息位;
根据检测到的所述检测信息位,确定所述二维码中的核心编码区域;
解码所述核心编码区域中,指定信息位上显示的二进制信息,得到所述二进制信息对应的原始信息。
18.根据权利要求17所述的方法,其特征在于,所述二维码中还包括多个定位符;所述定位符用于:将所述二维码划分为多个目标区域;每个所述目标区域中包括一个核心编码区域;
所述从包含有所述二维码的图像中检测所述二维码中的检测信息位的步骤,包括:
从包含有所述二维码的图像中检测所述定位符;
通过检测出的所述定位符,确定所述二维码中的目标区域;
从所述目标区域中检测所述二维码中的检测信息位。
19.根据权利要求18所述的方法,其特征在于,通过检测出的所述定位符,确定所述二维码中的目标区域的步骤,包括:
确定检测出的所述定位符的数量和相对位置;
根据所述定位符的数量和所述相对位置,确定所述二维码中的目标区域。
20.根据权利要求17所述的方法,其特征在于,所述从包含有所述二维码的图像中检测所述二维码中的检测信息位的步骤,包括:
通过预设的ROI区域检测模型,从包含有所述二维码的图像中检测包含有所述二维码的目标区域;
从所述目标区域中检测所述二维码中的检测信息位。
21.根据权利要求18-20任一项所述的方法,其特征在于,所述检测信息位组成预设形状的检测图案;所述检测图案的边缘包括长度满足预设长度范围的直线段;
所述从所述目标区域中检测所述二维码中的检测信息位的步骤,包括:
通过预设的直线段检测算法,从所述目标区域中检测直线段;
从检测到的直线段中,删除长度小于所述长度范围中的最小值的直线段,和/或,删除长度大于所述长度范围中的最大值的直线段;
根据所述目标区域中剩余的直线段,确定所述二维码中的检测信息位。
22.根据权利要求17所述的方法,其特征在于,根据检测到的所述检测信息位,确定所述二维码中的核心编码区域的步骤,包括:
根据检测到的所述检测信息位,确定所述二维码中的核心编码区域的多个顶点;
通过线段连接所述多个顶点中相邻的顶点,将所述线段所包围的区域,确定为所述二维码中的核心编码区域。
23.根据权利要求22所述的方法,其特征在于,通过线段连接所述多个顶点中相邻的顶点的步骤,包括:
如果检测到多组所述检测信息位,针对每组所述检测信息位,通过线段连接该组检测信息位对应的多个顶点。
24.根据权利要求17所述的方法,其特征在于,解码所述核心编码区域中,所述指定信息位上显示的二进制信息,得到所述二进制信息对应的原始信息的步骤,包括:
通过在编码过程中使用的所述转换方式和所述二进制信息显示规则,将所述核心编码区域中,所述指定信息位上显示的二进制信息解码为所述原始信息。
25.一种二维码的编码装置,其特征在于,所述装置应用于权利要求1-10任一项所述的二维码;待编码的二维码中包括多个核心编码区域;所述装置包括:
信息转换模块,用于通过预设的转换方式,将预设的原始信息转换为二进制信息;
二维码确定模块,用于按照预设的二进制信息显示规则,将所述二进制信息分别显示在每个所述核心编码区域中的指定信息位,得到编码后的所述二维码;其中,所述核心编码区域中还包括:用于在解码过程中,检测所述核心编码区域的位置的检测信息位。
26.一种二维码的解码装置,其特征在于,所述装置应用于权利要求1-10任一项所述的二维码;待解码的二维码中包括多个核心编码区域;所述装置包括:
检测信息位检测模块,用于从包含有所述二维码的图像中检测所述二维码中的检测信息位;
核心编码区域确定模块,用于根据检测到的所述检测信息位,确定所述二维码中的核心编码区域;
二维码解码模块,用于解码所述核心编码区域中,指定信息位上显示的二进制信息,得到所述二进制信息对应的原始信息。
27.一种电子系统,其特征在于,所述电子系统包括:处理设备和存储装置;
所述存储装置上存储有计算机程序,所述计算机程序在被所述处理设备运行时执行如权利要求11至16任一项所述的二维码的编码方法或17至24任一项所述的二维码的解码方法。
28.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理设备运行时执行如权利要求11至16任一项所述的二维码的编码方法的或17至24任一项所述的二维码的解码方法的步骤。
CN202010049313.1A 2020-01-16 2020-01-16 二维码、二维码的编码方法、解码方法、装置和电子系统 Pending CN111275152A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010049313.1A CN111275152A (zh) 2020-01-16 2020-01-16 二维码、二维码的编码方法、解码方法、装置和电子系统
PCT/CN2020/119541 WO2021143212A1 (zh) 2020-01-16 2020-09-30 二维码、二维码的编码方法、解码方法、装置和电子系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010049313.1A CN111275152A (zh) 2020-01-16 2020-01-16 二维码、二维码的编码方法、解码方法、装置和电子系统

Publications (1)

Publication Number Publication Date
CN111275152A true CN111275152A (zh) 2020-06-12

Family

ID=70998891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010049313.1A Pending CN111275152A (zh) 2020-01-16 2020-01-16 二维码、二维码的编码方法、解码方法、装置和电子系统

Country Status (2)

Country Link
CN (1) CN111275152A (zh)
WO (1) WO2021143212A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111711819A (zh) * 2020-08-19 2020-09-25 长沙像素码科技有限公司 一种多元混进制的运算方法及其所得图像的应用系统
CN112218133A (zh) * 2020-09-15 2021-01-12 深圳市飞图视讯有限公司 投屏码生成方法、装置及终端设备
WO2021143212A1 (zh) * 2020-01-16 2021-07-22 北京迈格威科技有限公司 二维码、二维码的编码方法、解码方法、装置和电子系统
CN114399010A (zh) * 2021-12-29 2022-04-26 中国电信股份有限公司 一种二维码编码、解码方法、装置、设备及介质
WO2022166619A1 (zh) * 2021-02-07 2022-08-11 华为技术有限公司 二维码识别方法及相关装置
US20230139995A1 (en) * 2021-11-04 2023-05-04 David M. Mante Storage, recall, and use of tightening specifications on threaded mechanical fasteners

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902997A (zh) * 2012-09-21 2013-01-30 华南农业大学 一种二维码混合编码、解码装置及方法
CN104143109A (zh) * 2014-01-28 2014-11-12 深圳市雁联计算系统有限公司 一种二维码的编码和解码方法及其印刷物
US20160180118A1 (en) * 2014-12-17 2016-06-23 International Business Machines Corporation Creating mechanical stamps to produce machine-readable optical labels
CN108280500A (zh) * 2017-01-06 2018-07-13 百度在线网络技术(北京)有限公司 二维码的编码方法、解码方法、相关装置及设备
CN109754046A (zh) * 2019-01-31 2019-05-14 北京迈格威科技有限公司 二维码、二维码的编码方法、解码方法、装置及设备
CN109831309A (zh) * 2019-02-25 2019-05-31 胡辉萍 一种具有多重验证的安全码原理和方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101430768B (zh) * 2007-11-07 2013-05-15 成都市思博睿科技有限公司 一种二维条码的定位方法
CN102034127A (zh) * 2009-09-28 2011-04-27 上海易悠通信息科技有限公司 新型大容量二维条码与系统及其编解码方法和应用
US8970918B2 (en) * 2010-09-20 2015-03-03 Kabushiki Kaisha Toshiba Document management system and method thereof
CN103268461A (zh) * 2013-04-25 2013-08-28 浙江成功软件开发有限公司 一种基于二维码的内外网物理隔离数据交换方法
CN103400174B (zh) * 2013-07-30 2016-08-10 人民搜索网络股份公司 一种二维码的编码方法、解码方法及系统
CN111275152A (zh) * 2020-01-16 2020-06-12 北京迈格威科技有限公司 二维码、二维码的编码方法、解码方法、装置和电子系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902997A (zh) * 2012-09-21 2013-01-30 华南农业大学 一种二维码混合编码、解码装置及方法
CN104143109A (zh) * 2014-01-28 2014-11-12 深圳市雁联计算系统有限公司 一种二维码的编码和解码方法及其印刷物
US20160180118A1 (en) * 2014-12-17 2016-06-23 International Business Machines Corporation Creating mechanical stamps to produce machine-readable optical labels
CN108280500A (zh) * 2017-01-06 2018-07-13 百度在线网络技术(北京)有限公司 二维码的编码方法、解码方法、相关装置及设备
CN109754046A (zh) * 2019-01-31 2019-05-14 北京迈格威科技有限公司 二维码、二维码的编码方法、解码方法、装置及设备
CN109831309A (zh) * 2019-02-25 2019-05-31 胡辉萍 一种具有多重验证的安全码原理和方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021143212A1 (zh) * 2020-01-16 2021-07-22 北京迈格威科技有限公司 二维码、二维码的编码方法、解码方法、装置和电子系统
CN111711819A (zh) * 2020-08-19 2020-09-25 长沙像素码科技有限公司 一种多元混进制的运算方法及其所得图像的应用系统
CN112218133A (zh) * 2020-09-15 2021-01-12 深圳市飞图视讯有限公司 投屏码生成方法、装置及终端设备
CN112218133B (zh) * 2020-09-15 2022-08-05 深圳市飞图视讯有限公司 投屏码生成方法、装置及终端设备
WO2022166619A1 (zh) * 2021-02-07 2022-08-11 华为技术有限公司 二维码识别方法及相关装置
EP4276680A4 (en) * 2021-02-07 2024-07-10 Huawei Tech Co Ltd QR CODE RECOGNITION METHOD AND RELATED APPARATUS
US20230139995A1 (en) * 2021-11-04 2023-05-04 David M. Mante Storage, recall, and use of tightening specifications on threaded mechanical fasteners
US11828316B2 (en) * 2021-11-04 2023-11-28 David M. Mante Storage, recall, and use of tightening specifications on threaded mechanical fasteners
CN114399010A (zh) * 2021-12-29 2022-04-26 中国电信股份有限公司 一种二维码编码、解码方法、装置、设备及介质

Also Published As

Publication number Publication date
WO2021143212A1 (zh) 2021-07-22

Similar Documents

Publication Publication Date Title
CN111275152A (zh) 二维码、二维码的编码方法、解码方法、装置和电子系统
US7950589B2 (en) Program, information storage medium, two-dimensional code generation system, image generation system and printed material
US9892300B2 (en) Two-dimensional code
JP4761400B2 (ja) 階層化二次元コードおよびその作成方法、並びにその読取方法
EP2921998B1 (en) Two-dimensional code, system for creation of two-dimensional code, and analysis program
KR100960786B1 (ko) 2d 부호의 인코딩 디코딩 방법 및 시스템
US7264174B2 (en) 2D coding and decoding barcode and its method thereof
KR100570242B1 (ko) 2차원 코드 판독 방법, 2차원 코드 판독 프로그램을기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라및 디지털 카메라를 구비한 휴대용 단말기
CN101978380B (zh) 二维符号及其读取方法
US9898637B2 (en) Two-dimensional code
JP2004054530A (ja) 2次元コード読み取り装置,2次元コード読み取り方法,2次元コード読み取りプログラム及び該プログラムの記録媒体
JPH08249408A (ja) デジタル情報記録方法、解読方法および解読装置
JP4410231B2 (ja) イメージコードの生成装置及びその方法とイメージコードのデコーディング装置及びその方法
CN112184826B (zh) 一种标定板和标定方法
WO2016166914A1 (ja) 二次元コード,二次元コード記録担体,二次元コード読取り方法,二次元コード読取用プログラムおよび二次元コード読取り装置
WO2021004414A1 (zh) 编码图形及其编码和读取方法、标定板和标定方法
CN112187284A (zh) 编码方法、编码图形、编码图形读取方法和拍摄装置
CN202267974U (zh) 用于二维码的定位系统及二维码的识别设备
CN112183695B (zh) 编码方法、编码图形、编码图形读取方法和拍摄装置
CN112184803A (zh) 一种标定板和标定方法
JP2006331322A (ja) 検索用タグ及びこれを使用した情報検索システム
KR100860110B1 (ko) 도트 패턴을 이용한 정보 입출력 방법
JP3853331B2 (ja) デジタル情報記録方法
JP4383961B2 (ja) デジタル情報記録担体
KR102527390B1 (ko) 2차원 코드 정보 인식 방법

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200612

RJ01 Rejection of invention patent application after publication