著录项信息
专利名称 | 二维微型编码及其处理方法、装置 |
申请号 | CN201010276278.3 | 申请日期 | 2010-09-07 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2011-01-12 | 公开/公告号 | CN101944187A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06K19/06 | IPC分类号 | G;0;6;K;1;9;/;0;6;;;G;0;6;K;7;/;1;0查看分类表>
|
申请人 | 龚湘明 | 申请人地址 | 北京市朝阳区石门村路二院(库区)24幢4层4026室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 视渠时代(北京)技术发展有限公司 | 当前权利人 | 视渠时代(北京)技术发展有限公司 |
发明人 | 龚湘明 |
代理机构 | 北京康信知识产权代理有限责任公司 | 代理人 | 暂无 |
摘要
本发明公开了一种二维微型编码及其处理方法、装置,其中,该码元包括定位标识区,用于标识码元的位置,定位标识区包括折型定位标和辅助定位标;数据区,用于标识码元的码值,码元包括多个数据区,折型定位标和/或辅助定位标表征不同的数据区的位权值;码元类型识别区,用于标识码元的类型和序列号,码元的类型包括单码和组码。通过本发明,能够增加二维码容量,提高二维码应用性,且该二维微型编码成本低、易制作、持久耐用。
1.一种二维微型编码的处理方法,其特征在于,包括:
采集图像后对所述图像进行解码预处理以获取码元,所述码元包括定位标识区、数据区、码元类型识别区以及状态标识;
对所述码元进行解码得到所述图像的解码数据;
输出所述解码数据;
其中,所述定位标识区,用于标识所述码元的位置,所述定位标识区包括折型定位标和辅助定位标;所述数据区,用于标识所述码元的码值,所述码元包括多个数据区;所述码元类型识别区,用于标识所述码元的类型和序列号,所述码元的类型包括:单码和组码;
其中,所述码元由横向竖向都是7个点的黑白点矩阵组成,每个黑白点不能连续排列,任意两点之间需要按固定的倍值插入空白间隙,二维微型编码有补码,所述补码是一种有规则排列的空白图案。
2.根据权利要求1所述的方法,其特征在于,对所述图像进行解码预处理以获取码元的步骤包括:
划定所述图像的中心区域,查询所述中心区域的所述码元的所述定位标识区;
根据所述码元的所述定位标识区的折型定位标矫正所述图像;
提取矫正后的所述图像的所述码元数据。
3.根据权利要求2所述的方法,其特征在于,在划定所述图像的中心区域之前,所述方法还包括通过影像背景测定以及图型二值化处理所述图像用以提取多种类型的图案,所述图案包括正像或负像的所述图案。
4.根据权利要求1-3中任一项所述的方法,其特征在于,对所述码元进行解码得到所述图像的解码数据包括:
根据所述码元类型识别区的数据确定所述码元的类型,获取不同类型的所述码元的所述解码数据,其中,
当所述码元是单码的情况下,将各个所述数据区的码值累加获得所述码元的所述解码数据;
当所述码元是组码的情况下,根据所述组码的序列号累加所述组码中各个单码的所述解码数据以获取所述组码的所述解码数据。
5.根据权利要求4所述的方法,其特征在于,当所述码元是组码的情况下,根据所述组码的序列号累加所述组码中多个单码的所述解码数据以获取所述组码的所述解码数据的步骤包括:
分解所述组码得到组成所述组码的单码;
根据所述码元类型识别区的数据确定所述组码中的各个所述单码的所述序列号;
按照累加所述数据区的所述码值的方法获得所述组码中各个所述单码的解码数据;
在组码字符表中查询所述各个单码的解码数据所对应的字符;
按照所述序列号将所述字符排序获得所述组码的所述解码数据。
6.根据权利要求5所述的方法,其特征在于,在输出所述解码数据之后校验所述解码数据,包括:在所述单码解码得到所述解码数据后,对所述单码进行二次解码得到第一解码数据,所述解码数据与所述第一解码数据相同时,所述单码解码成功。
7.根据权利要求5所述的方法,其特征在于,在输出所述解码数据之后校验所述解码数据,包括:在所述组码解码得到所述解码数据后,对所述组码进行二次解码得到第二解码数据,所述第二解码数据与所述解码数据相同时,所述组码解码成功。
8.根据权利要求5所述的方法,其特征在于,在输出所述解码数据之后校验所述解码数据,包括:在所述组码解码得到所述解码数据后,对所述组码中预定数量的单码进行二次解码得到第三解码数据,在所述解码数据中包括与所述第三解码数据相同的部分时,所述组码解码成功。
9.一种二维微型编码的处理装置,其特征在于,包括:
预处理模块,用于采集图像后对所述图像进行解码预处理以获取码元,所述码元包括定位标识区、数据区、码元类型识别区以及状态标识;
解码模块,用于对所述码元进行解码得到所述图像的解码数据;
传输模块,用于输出所述解码数据;
其中,所述定位标识区,用于标识所述码元的位置,所述定位标识区包括折型定位标和辅助定位标;所述数据区,用于标识所述码元的码值,所述码元包括多个数据区;所述码元类型识别区,用于标识所述码元的类型和序列号,所述码元的类型包括:单码和组码;
其中,所述码元由横向竖向都是7个点的黑白点矩阵组成,每个黑白点不能连续排列,任意两点之间需要按固定的倍值插入空白间隙,二维微型编码有补码,所述补码是一种有规则排列的空白图案。
10.根据权利要求9所述的装置,其特征在于,所述预处理模块包括:
定位模块,用于划定所述图像的中心区域,查询所述中心区域的所述码元的所述定位标识区;
矫正模块,用于根据所述码元的所述定位标识区的折型定位标矫正所述图像;
生成模块,用于提取矫正后的所述图像的所述码元数据。
11.根据权利要求9所述的装置,其特征在于,所述解码模块包括:
确认模块,用于根据所述码元类型识别区的数据确定所述码元的类型,获取不同类型的所述码元的所述解码数据;
单码解码模块,用于当所述码元是单码的情况下,将各个所述数据区的码值累加获得所述码元的所述解码数据;
组码解码模块,用于当所述码元是组码的情况下,根据所述组码的序列号累加所述组码中多个单码的所述解码数据以获取所述组码的所述解码数据。
12.根据权利要求9所述的装置,其特征在于,所述装置还包括:校验模块,用于在输出所述解码数据之后校验所述解码数据。
二维微型编码及其处理方法、装置\n技术领域\n[0001] 本发明涉及一种二维微型编码及其处理方法、装置。\n背景技术\n[0002] 二维微型编码简称为二维码,具有显性二维码和隐性二维码两种显示方式。\n[0003] 显性二维码是通过肉眼可以直接看到的二维码信息,这种信息需要通过光学识辨技术进行处理。这些就是在电子显示设备上显示的内容,需要用户通过本设备的扫描端口将二维码拍摄下来进行识读,因此需要显示器上的二维码是显性的。\n[0004] 隐性二维码为肉眼看不见的,它由含碳物质组成,它的隐性实现是利用含碳的材料更容易吸收红外的原理进行工作,将隐含的信息用含碳的油墨印制,而其他图像信息用非含碳的材料印制,使用时在光的帮助下,含碳油墨与其他油墨就会呈现不同图案,进而被本设备所识别。使用者无需知道它的存在,只需要对他想点选的内容用本设备扫描被提示的扫描区域就可以达到识读的目的。\n[0005] 现有技术中的隐性二维码如点读码由于是定长码,因此储存的是单纯的定长数字,一般为16、20或26位数据长度,即2-3个字节,存储量很小、数值大小受限制且不能表示字符串,因此,例如在实际的电视访问引导手段中若想通过二维码实现识别缩写的URL时,该二维码无法实现该功能,用户使用时易用性较差。\n[0006] 因而现有技术的二维码具有编码容量小、容错能力差且使用范围较窄等问题,目前尚无有效的解决方案。\n发明内容\n[0007] 本发明的主要目的在于提供一种二维微型编码及其处理方法及装置,以解决现有技术的二维码编码容量小、容错能力差且使用范围较窄等问题。\n[0008] 为了实现上述目的,根据本发明的一个方面,提供了一种二维微型编码。\n[0009] 根据本发明的二维微型编码的码元由多个正方型的码点模块排列组成,码元可以包括:定位标识区,用于标识码元的位置,定位标识区包括折型定位标和辅助定位标;数据区,用于标识码元的码值,码元包括多个数据区,折型定位标和/或辅助定位标表征不同的数据区的位权值;码元类型识别区,用于标识码元的类型和序列号,码元的类型包括:单码和组码。\n[0010] 进一步地,码元是由码点模块构成的N×N点矩阵,其中,定位标识区的折型定位标位于码元的第一顶点位置,呈等腰直角型分布;码元类型识别区位于码元的第二顶点位置,呈等腰直角型分布,第一顶点位置与第二顶点位置相对对称;辅助定位标位于第一顶点位置与第二顶点位置之间,其上的每个码点模块确定多个数据区中的一个数据区的位置及该数据区的位权值,每个数据区相邻分布。\n[0011] 进一步地,码元由码点模块构成的7×7点矩阵包括四个数据区,折型定位标和辅助定位标上的第一码点模块表征第一数据区的第一位权值,辅助定位标上的第二码点模块表征第二数据区的第二位权值,辅助定位标上的第三码点模块表征第三数据区的第三位权值,辅助定位标上的第一码点模块表征第四数据区的第四位权值。\n[0012] 进一步地,码元还可以包括:状态标识,位于数据区上,不同的状态标识表征与其对应的数据区的标识数值,该数据区的码值是标识数值与位权值的积。\n[0013] 进一步地,每个数据区由3×3的码点模块构成,辅助定位标位于数据区的顶点,状态标识的初始位置为数据区上辅助定位标的对角位置。\n[0014] 进一步地,状态标识在初始位置的基础上,依据顺时针或者逆时针的方向在3×3的码点模块中设置递增的标识数值。\n[0015] 为了实现上述目的,根据本发明的一个方面,提供了一种二维微型编码的处理方法。\n[0016] 根据本发明的二维微型编码的处理方法包括:采集图像后对图像进行解码预处理以获取码元,码元包括定位标识区、数据区、码元类型识别区以及状态标识;对码元进行解码得到图像的解码数据;输出解码数据。\n[0017] 进一步地,对图像进行解码预处理以获取码元的步骤包括:划定图像的中心区域,查询中心区域的码元的定位标识区;根据码元的定位标识区的折型定位标矫正图像;提取矫正后的图像的码元数据。\n[0018] 进一步地,在划定图像的中心区域之前,方法还包括通过影像背景测定以及图型二值化处理图像用以提取多种类型的图案,图案包括正像或负像的图案。\n[0019] 进一步地,对码元进行解码得到图像的解码数据包括:根据码元类型识别区的数据确定码元的类型,获取不同类型的码元的解码数据,其中,当码元是单码的情况下,将各个数据区的码值累加获得码元的解码数据;当码元是组码的情况下,根据组码的序列号累加组码中各个单码的解码数据以获取组码的解码数据。\n[0020] 进一步地,当码元是单码的情况下,将各个数据区的码值累加获得码元的解码数据包括:根据定位标识区的折型定位标和/或辅助定位标获取各个数据区的位权值;根据数据区的状态标识获取各个数据区的标识数值;数据区的位权值与其对应的标识数值的积为数据区的码值;将各个码值相加得到单码的解码数据。\n[0021] 进一步地,当码元是组码的情况下,根据组码的序列号累加组码中多个单码的解码数据以获取组码的解码数据的步骤包括:分解组码得到组成组码的单码;根据码元类型识别区的数据确定组码中的各个单码的序列号;按照累加数据区的码值的方法获得组码中各个单码的解码数据;在组码字符表中查询各个单码的解码数据所对应的字符;按照序列号将字符排序获得组码的解码数据。\n[0022] 进一步地,在输出解码数据之后校验解码数据,可以包括:在单码解码得到解码数据后,对单码进行二次解码得到第一解码数据,解码数据与第一解码数据相同时,单码解码成功。\n[0023] 进一步地,在输出解码数据之后校验解码数据,可以包括:在组码解码得到解码数据后,对组码进行二次解码得到第二解码数据,第二解码数据与解码数据相同时,组码解码成功。\n[0024] 进一步地,在输出解码数据之后校验解码数据,可以包括:在组码解码得到解码数据后,对组码中预定数量的单码进行二次解码得到第三解码数据,在解码数据中包括与第三解码数据相同的部分时,组码解码成功。\n[0025] 为了实现上述目的,根据本发明的另一方面,提供了一种二维微型编码的处理装置。\n[0026] 根据本发明的二维微型编码的处理装置包括:预处理模块,用于采集图像后对图像进行解码预处理以获取码元,码元包括定位标识区、数据区、码元类型识别区以及状态标识;解码模块,用于对码元进行解码得到图像的解码数据;传输模块,用于输出解码数据。\n[0027] 进一步地,定位模块,用于划定图像的中心区域,查询中心区域的码元的定位标识区;矫正模块,用于根据码元的定位标识区的折型定位标矫正图像;生成模块,用于提取矫正后的图像的码元数据。\n[0028] 进一步地,解码模块可以包括:确认模块,用于根据码元类型识别区的数据确定码元的类型,获取不同类型的码元的解码数据;单码解码模块,用于当码元是单码的情况下,将各个数据区的码值累加获得码元的解码数据;组码解码模块,用于当码元是组码的情况下,根据组码的序列号累加组码中多个单码的解码数据以获取组码的解码数据。\n[0029] 进一步地,该装置还可以包括:校验模块,用于在输出解码数据之后校验解码数据。\n[0030] 通过本发明,采用码元包括:定位标识区,用于标识码元的位置,定位标识区包括折型定位标和辅助定位标;数据区,用于标识码元的码值,码元包括多个数据区,折型定位标和/或辅助定位标表征不同的数据区的位权值;码元类型识别区,用于标识码元的类型和序列号,码元的类型包括:单码和组码,解决了现有技术的二维码具有编码容量小、容错能力差且使用范围较窄等缺陷的问题,进而达到了增加二维码容量,提高二维码应用性的效果。且该二维微型编码成本低、易制作、持久耐用。\n附图说明\n[0031] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:\n[0032] 图1是根据本发明实施例的二维微型编码的结构示意图;\n[0033] 图2是根据本发明一种实施例的二维微型编码的处理装置示意图;\n[0034] 图3是根据本发明一种实施例的二维微型编码的处理方法的流程图;\n[0035] 图4是根据本发明另一种实施例的二维微型编码的处理方法的流程图;\n[0036] 图5是根据本发明图3所示的实施例二维微型编码的预处理方法的流程图;\n[0037] 图6是根据本发明图3所示的实施例的单码解码的流程示意图;\n[0038] 图7是根据本发明图3所示的实施例的组码解码的流程示意图;以及[0039] 图8是根据本发明实施例的组码字符表。\n具体实施方式\n[0040] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。\n[0041] 根据本发明的实施例,提供了一种二维微型编码。图1是根据本发明实施例的二维微型编码的结构示意图。如图1所示,该二维微型编码的码元由多个正方形的码点模块排列组成,码元包括:定位标识区A,用于标识码元的位置,定位标识区A包括折形定位标A1和辅助定位标A2;数据区B,用于标识码元的码值。码元包括多个数据区,折形定位标A1和/或辅助定位标A2表征不同的数据区的位权值;码元类型识别区C,用于标识码元的类型,码元的类型包括:单码和组码。\n[0042] 本发明实施例的二维微型编码,通过定位标识区A对码元进行调整和定位,提高了码元的识读效果;由于码元可以包括多个具有不同位权值的数据区构成的数据区B,因而码元的数据容量更大;码元类型识别区C可以区分该码元是单码还是组码,从而可以表示整型数字或者通过编码组合表示一段字符串,用来表示网址、URL链接等信息。具有上述特征的二位微型编码较以往的二维码容量大、应用范围广且性能更强。其中,单码的所有单位有效区域表现为同一个编码,没有编码序列,常用于表示一个整型数值;组码是一个区域中由多个单元联合构成一个序列编码区域,可以表示多个字符构成字符串。\n[0043] 本发明的码元可以由码点模块构成N×N的点矩阵,优选的N为7。其中,定位标识区A的折型定位标A1位于码元的第一顶点位置,呈等腰直角形分布;码元类型识别区C位于码元的第二顶点位置,呈等腰直角形分布,第一顶点位置与第二顶点位置相对对称;辅助定位标A2位于第一顶点位置与第二顶点位置之间,其上的每个码点模块定位一个数据区,每个数据区相邻分布。本发明实施例中辅助定位标A2由三个码点模块构成,其中一个码点模块位于码元的几何中心位置。\n[0044] 本发明实施例中折型定位标位A1为图1中码元左上角的 型标识符,通过它可以得到该码元所处的位置以及所代表的数据区的码值。 型标识符与辅助定位标A2是双标识组合,构成微码的寻像标识, 型标识符是一个边长各四个连续黑点, 型标识符的寻标位与方形或圆形图案寻标位相比不但更加简单,而且可以标识出图像的方向,方便对图像进行纠偏处理。此外, 型标识符寻标标识缺口方向,存在一连续三个点组成的斜线,即辅助定位标A2可以实现辅助识别标志。斜线本身的组合可以标识码元的属性(码值)和状态(主要是用来填充的补码/空白码的检测)。\n[0045] 本发明实施例中码元类型识别区C是微码中有一个倒 型区域,区域中标识了组码信息与码元位置属性相关的信息,算法可根据采集屏幕中的一个区域中的码元信息,直接得出是属于那种组合的微码,并能根据图形编码规则搜索到相邻图案,算法根据码元在组合码中的位置,自动判断检索周边哪个区域的图形来解码。避免没有组码和码元位置属性信息时,需要大量的重复寻像解码寻找图形的起始位置信息(会浪费系统运算资源)。\n[0046] 优选地,本发明实施例中的码元可以包括四个数据区,折型定位标A1和辅助定位标A2上的第一码点模块表征第一数据区B1的第一位权值,辅助定位标A2上的第二码点模块表征第二数据区B2的第二位权值,辅助定位标A2上的第三码点模块表征第三数据区B3的第三位权值,辅助定位标A2上的第一码点模块表征第四数据区B4的第四位权值。例如,第一位权值是1,第二位权值是10,第三位权值是100,第四位权值是1000,因此该码元可以表示0-9999的数值范围。\n[0047] 本发明实施例中微码系统标准码元的组码序列可以支持五种状态,即单码元,\n2x1(2组)码元,2x2(4组)码元,3x3(9组)码元,4x4(16组)码元。以下分别简称为单码、A组码、B组码、C组码、D组码。虽然是组合码,但是可以从组码中任何一个码元就可以判断组码的类型(即组码是单组,还是A组码、B组码、C组码或D组码、以及该码的序号)。\n[0048] 上述实施例维码系统中的码元即解析一组数据所需最小组合,本发明实施例的码元可以由7x7组码点模块构成,其中存在一个4x4的占用七个码点模块的Г型定位标和一组为三个码点模块的辅助定位标。码元共有四个3bit数据区,一个4bit定位标识区A和一个3bit-1(七个状态)码元类型识别区C。一个码元理论可储存信息为(2^(12+4)*(*2^3-1))个,但实际上数据区只是用12bit,也就是最大4096个数。一个码元所需识别的像素为(3x7)^2=21^2=441个像素,在纸面上面积大约为0.55*0.55mm到\n0.6*0.6mm的面积。\n[0049] 每个数据区可以由3×3的码点模块构成,辅助定位标A2位于数据区的顶点,状态标识的初始位置位于数据区上辅助定位标A2的对角。码元还可以包括:状态标识,位于数据区上,不同的状态标识表征与其对应的数据区的标识数值,标识数值与位权值的积是该数据区的码值。状态标识在初始位置的基础上,依据顺时针或者逆时针的方向在3×3的码点模块中设置递增的标识数值,其中顺时针或者逆时针分别表示从上至下从左至右或者从上至下从右至左的顺序。本发明实施例中的码值可以采用八进制数值。例如,当第一数据区B1上第一位权值是1,状态标识在初始位置时第一数据区B1的码值为0,如果按照从上至下从左至右的顺序排序,当状态标识位于第二个码点模块上时,该第一数据区B1的码值为1,依次得到第一数据区的码值范围为0-7,同理可得第二数据区B2的码值范围是0-70,第三数据区B3的码值范围是0-700,第四数据区B4的码值范围是0-7000,因而数据区由\n3×3构成的码点模块的码元的解码范围在0-7777之间。其中状态标识的初始位置和排序顺序可以根据实际算法优选获得。\n[0050] 本发明的二维微型编码是一种由更小的码元图像组成(组合码特征,传统点读码没有相关功能),又称为微码。1、2、4、9或16个码元图像皆可组成微码,一个码元由横向竖向都是7个点的黑白点矩阵组成,为了实现肉眼无法直接可视的功能,设计时二维微型编码的物体尺寸严格限制,传统二维码是体积较大的,面积一般为10毫米-30毫米边长以上的正方形区域,而微码体积仅0.5-0.8mm边长的正方形内存在一个码元,一个码点仅为\n0.005-0.01mm以下的尺寸(1200-2400dpi分辨率打印及印刷),难以被肉眼察觉。如图1可知优选的7x7点矩阵的码元图像,每个黑白点不能连续排列,连续排列容易在码批量排列时形成一条连续的细线或类似一片较密的阴影(灰度图形),或在有颜色的背景下,显得像更深的颜色(浅色的图案加上黑色的阴影,等于颜色加深),反而容易被用户察觉。因此任意两点之间还需要按固定的倍值插入空白间隙,确保肉眼无法有效察觉,或从视觉上被欺骗。同时实际设计中微码有补码,补码是一种有规则排列的“空白”图案,是为了填充图案的空白区而涉及的,具有缓和视觉感官差异的作用,主要用于浅色背景和编码图案区之间的柔和过渡,及对于不规则图案的边缘补码。比如码图的排列往往与前景图案大小不相匹配,输出时,容易在图案区域周围出现明显的深浅有异的分界线。为了弥补视觉差异,需要补码设计(补码计算为根据前景图案,自动插补补码点)。\n[0051] 本发明的二维微型编码用于快速解码场合,编码简单且具有相对较强的储存能力,能在运算能力不强运算复杂度不高的硬件的平台上运行,以确保识读时的实时快速解码能力。二维微型编码自身有校验数据位,但编码自身没有冗余设计,如果码遭到污损,无法直接恢复数据,微码的冗余通过同一区域,同样的码值编码图案大量重复出现,来规避上述问题(即某一个码无法被正常读取校验,仅需要读取该图像区域附近的编码即可,冗余存放的图案)。\n[0052] 综上所述,本发明的微码最大码元的组合为16,即4x4组合,边长为2-3mm的正方形面积,直径12-15mm的识读光学孔径前,可以保证任何时候,都有6-9组最大模式组码的图案落在识读采集区之中,这样的设计是用来弥补微码设计中没有冗余编码设计的缺陷。\n[0053] 微码的设计是可以基于传统可见光、红外和紫外光的,特别是在红外和紫外光波段作用时,在保证识别率的前提下,可实现微码在视觉上的更好的隐形,由于我们设计的采集装置,兼容多成像孔径和多波段的光学图像采集,在此基础上,完全可以在一个可视区域内,叠加三层编码数据进行识别,而互不干扰,实现最大的空间利用率,如标准二维码和微码的组合识别,以及数字水印图像与微码的组合识别,实现更多的应用,如一种码是长期固定索引码,一种码是一次性使用即作废的业务码。\n[0054] 微码由于体积微小,波段范围较大,不易被常规扫描仪扫描,或被肉眼识别。这样也可以达到部分防伪防复制的效果。\n[0055] 图2是根据本发明一种实施例的二维微型编码的处理装置的示意图。如图2所示,该装置包括:预处理模块22,用于采集图像后对图像进行解码预处理以获取码元,码元可以包括定位标识区、数据区、码元类型识别区以及状态标识;解码模块24,用于对码元进行解码得到图像的解码数据;传输模块26,用于输出解码数据。本发明实施例对图1中所示的二维微型编码进行解码,该解码过程采用先校正再获取解码数据的流程,最终将有效的解码结果输出。由于该二维微型编码不复杂,因而解码效率高,且存储能力较大,由于编码自身没有冗余设计,因而不会出现重复解码的情况。从解码的结果分析该二维微型编码容量大,不仅可以解码得到整数而且可以获得字符串。同时由于该微码体积微小,波段范围较大,因而不易被常规扫描仪扫描或被肉眼识别,达到了部分防伪防复制的效果。\n[0056] 优选地,预处理模块22可以包括:定位模块221,用于划定图像的中心区域,查询中心区域的码元的定位标识区;矫正模块223,用于根据码元的定位标识区的折型定位标矫正图像;生成模块225,用于提取矫正后的图像的码元数据。本发明实施例中在正式解码之前进行微码的定位和校正,提高了解码的正确率和效率。\n[0057] 优选地,解码模块24可以包括:确认模块241,用于根据码元类型识别区的数据确定码元的类型,获取不同类型的码元的解码数据;单码解码模块243,用于当码元是单码的情况下,将各个数据区的码值累加获得码元的解码数据;组码解码模块245,用于当码元是组码的情况下,根据组码的序列号累加组码中多个单码的解码数据以获取组码的解码数据。本发明分别对单码和组码进行解码,单码解码得到整数,组码解码得到字符串结果。\n[0058] 优选地,该二维微型编码的处理装置还包括:校验模块28,用于在输出解码数据之后校验解码数据。在解码完成之后通过对解码结果进行校验来提高解码的正确率。\n[0059] 图3是根据本发明一种实施例的二维微型编码的处理方法的流程图。如图3所示,该方法包括如下的步骤S302至步骤S306:\n[0060] 步骤S302,图2中的预处理模块22采集图像后对图像进行解码预处理以获取码元,码元可以包括定位标识区、数据区、码元类型识别区以及状态标识,其中图像中的码元如图1所示;步骤S304,图2中的解码模块24对码元进行解码得到图像的解码数据;步骤S306,图2中的校验模块28输出解码数据。其中,码元包括定位标识区、数据区、码元类型识别区以及状态标识。\n[0061] 本发明实施例识别图像上的码元数据对图像进行解码获取数据区的整数值以及该码元的类型,以确认得到该图像表示的整数值或者字符串,由于没有冗余数值,该解码过程简单且效率高,同时具有防伪防复制的效果。\n[0062] 图4是根据本发明另一种实施例的二维微型编码的处理方法的流程图。如图4所示该方法包括如下步骤:\n[0063] 步骤S401,原始图像采集。\n[0064] 步骤S402,识别系统对采集到的图像进行单帧分离,以获取解码的最小单元。\n[0065] 步骤S403,在获取图像之后对通过预处理模块22对图像进行预处理过程,包括图像矫正及 位置检索,在校正成功之后进入步骤S404,否则进入步骤S409结束解码该图像等待新的图像进行校正。\n[0066] 步骤S404,图2中的解码模块24对图像找到解码中心区域的单码元。\n[0067] 步骤S405,通过对该中心区域单码码元的解码判定该码元是单码或者组码。如果是单码元则得到该码元的数据,如果是组码则以该码元中心区域为准延展开始解码。\n[0068] 步骤S406,单码解码成功后进行单码数据验证。采用重复一次解码流程检测结果。\n[0069] 步骤S407,组码解码成功后进行组码数据验证,采用复杂组码数据校验,校验完成后进入步骤S408,如果组码数据简单则采用步骤S406按照单码的校验方法进行校验处理。\n[0070] 步骤S408,在完成该图像数据解码获取完整的解码结果之后输出解码数据。\n[0071] 对图像进行解码预处理以获取码元数据的步骤包括:划定图像的中心区域,查询中心区域的码元的定位标识区;根据码元的定位标识区的折型定位标矫正图像;提取矫正后的图像的码元数据。\n[0072] 图5是根据本发明图3所示的实施例二维微型编码的预处理方法的流程图。如图\n5所示,该预处理方法包括如下步骤:\n[0073] 步骤S501,开始传入影像数据。该步骤中通过图2中的预处理模块22接收该影像数据。\n[0074] 步骤S502,该步骤在图2中的预处理模块22划定图像的中心区域之前,通过影像背景测定以及图型二值化处理图像用以提取多种类型的图案,图案包括正像或负像的图案。本发明实施例中影像背景测定及图形二值化处理以利于图像识别,剥离背景干扰信息,该方法用以适应不同的背景,保障从不同材质的表面拾取正像或负像等多种类型的图案。\n[0075] 步骤S503,图2中的预处理模块22划定中心区域开始寻找码元标识。该步骤按照单码元的定焦理论大小倍值划定处理区域像素。\n[0076] 步骤S504,预处理模块22在找到码元标识之后进行图形旋转修正,校正图像变形。\n[0077] 步骤S505,在校正了变形的图像之后重新从中心区域寻像提取中心区域码元图案数据,并进行定位标识识别为后续解码过程做准备。\n[0078] 步骤S506,结束校正的步骤进入后续解码流程。\n[0079] 本发明实施例对码元数据进行解码得到图像的解码数据包括:根据码元类型识别区的数据确定码元的类型,获取不同类型的码元的解码数据,其中,当码元是单码的情况下,将各个数据区的码值累加获得码元的解码数据;当码元是组码的情况下,根据组码的序列号累加组码中各个单码的解码数据以获取组码的解码数据。\n[0080] 其中,当码元是单码的情况下,将各个数据区的码值累加获得码元的解码数据包括:根据定位标识区的折型定位标和/或辅助定位标获取各个数据区的位权值;根据数据区的状态标识获取各个数据区的标识数值;数据区的位权值与其对应的标识数值的积为数据区的码值;将各个码值相加得到单码的解码数据。\n[0081] 图6是根据本发明图3所示的实施例的单码解码的流程示意图。如图6所示,该单码解码流程包括如下步骤:\n[0082] 步骤S601,开始获取一个码元数据。该步骤收到的码元数据为已修正的完成校正后的纠偏的一个码元区域的二值图像数据块。\n[0083] 步骤S602,在解码之前寻找合法码元符号。在定位标识区A找合法的 型标识,在查找 型标识对应的码元内区位置的辅助定位标A2,即“/”型标识,如果未找到合法的可识别的标识则结束查寻过程,该码元为空或者查寻出错,如果找到合法 和“/”的组合识别标识则进入步骤S603。\n[0084] 步骤S603,在找到合法完整的 标识和“/”标识之后对标准数据区B的数据进行解码。其中如图1的码元所示, 标识与“/”标识之间的数据区为B1数据区,按B1数据区规则进行解密(3bit); 标识下侧与“/”标识左下角延长线上指示的数据区为B2数据区,按B2数据区规则进行解密(3bit); 标识右侧与“/”标识右上角延长线上指示的数据区为B3数据区,按B3数据区规则进行解密(3bit);“/”标识右下侧的数据区为B4数据区,按B4数据区规则进行解密(3bit)。\n[0085] 上述步骤中各个数据区的解密规则是指获取该数据区码值的方法,码值是“/”型标识上的码点模块所确定的位权值与该数据区上的状态标识所确定的码点模块的标识数值的积。各个数据区码值的和为该码元的解码结果。\n[0086] 步骤S604,在找到合法完整的 标识和“/”标识之后对码元类型识别区C进行解码,即对反 组码识别区进行解码。如图1的码元所示, 标识与“/”标识延长线对称的为反 区域,它们分别在码元的相对的顶点上,对该码元的反 区域的数据进行解码(大于4bit,20种状态)。根据解码步骤进入步骤S606,判断该码元是单码还是组码,如果是单码则进入步骤S607,否则进入步骤S609。\n[0087] 该步骤S604中如果在反 组码识别区中可以优选的选择四个码点模块进行读取过程,如果该四个码点模块为空值则该码元为单码,则获取步骤S603的解码结果,该解码过程结束进入结束步骤S608;如果该四个码点模块不为空值则该码元为组码,根据码点模块的值可以获得该组码的字符串长度,以及当前码元在组码中的序列号并且进入组码的解码规则,结束当前的单码解码流程。其中,四个码点模块优选的可以以顺时针或者逆时针的方向可以分别设置为8、4、2和1,依据排列组合规则该组码的字符串长度的范围可以是1-15共16位字长。\n[0088] 上述步骤S603和步骤S604的操作步骤可以互换。\n[0089] 步骤S605,在步骤S603完成之后可以获得4x3Bit总共12Bit的数据。并转入步骤S608。\n[0090] 步骤S607,确定单码类型,本发明实施例可以包括七种以上类型。\n[0091] 步骤S608,结束解码并输出进入单码校验规则的步骤。\n[0092] 步骤S609,结束解码并输出进入组码解码规则。\n[0093] 上述步骤中的单码解码过程是图像被截取后,首先进行矫正(对比度调整、图像旋转修正),然后进行定位标识识别,再根据各区域编位权值进行累加得到最终数值。\n[0094] 本发明实施例中,当码元是组码的情况下,根据组码的序列号累加组码中多个单码的解码数据以获取组码的解码数据的步骤包括:分解组码得到组成组码的单码;根据码元类型识别区的数据确定组码中的各个单码的序列号;按照累加数据区的码值的方法获得组码中各个单码的解码数据;在组码字符表中查询单码的解码数据对应的字符;按照序列号将字符排序获得组码的解码数据。\n[0095] 图7是根据本发明图3所示的实施例的组码解码的流程示意图。如图7所示,该方法包括如下步骤:\n[0096] 步骤S701,开始接收图6中传入的组码码元解码数据。\n[0097] 步骤S702,解码模块24提取传入的码元数据和该码的组码值。\n[0098] 步骤S703,解码模块24根据组码值判断组码类型和长度。本实施例中如果组码是\n1x2组码则进入步骤S704,如果是2x2/3x3/4x4组码则进入步骤S707。\n[0099] 步骤S704,系统按次序已该码元的中心区域为标准从该码元周边码组提取接续的\n1组码元区域图像。\n[0100] 步骤S705,对邻接的一组码元区域图像数据并解码,该解码过程与图6所示的单码解码流程相同,即进行一次单码元解码。\n[0101] 步骤S706,对该简单组码进行简单的数据合并得到解码数据,进入步骤S714。\n[0102] 步骤S707,在码元类型识别区C获取码组标识,根据组码标识计算邻接图像区域位置。该步骤中在反 组码识别区中完成四个码点模块的数据的读取过程,其中,四个码点模块优选的可以以顺时针或者逆时针的方向可以分别设置为8、4、2和1,依据排列组合规则该组码的字符串长度的范围可以是1-15共16位字长,如果此时码点模块的值是\n0401,则改码元在字符串中的位置是第4+1位,它的临接图像位置是第3位和第5位的数据。\n[0103] 步骤S708,按该码元类型识别区C获取码组标识的序列号,按照该序列号的次序从该码元周边码组提取接续的3组、8组、15组码元区域图像。\n[0104] 步骤S709,对上述区域图像数据各自解码,即进行多次单码元解码,详细的单码解码过程参见图6的解码过程。\n[0105] 步骤S710,解码完成后系统判断该解码结果是简单码还是全功能码,如果是简单码即如果组码是2x2的组码则进入步骤S706,如果是3x3/4x4组码则进入步骤S711。\n[0106] 步骤S711,对3x3/4x4组码中前8组或前15组数据进行合并拼接组成96bit或\n180bit数据。不进行位循环校验,节省了空间提高了运算效率。\n[0107] 步骤S712,对3x3/4x4组码中最后一组12bit数据进行位循环校验。\n[0108] 步骤S713,采用查表法解数据压缩,还原成16-30字节的ASCII码数据,即根据获得的序列号以及数据区的数据代码值在图8中所示的组码字符表中查到该数据代码值对应的字符以得到实际的字符串。图8是根据根发明实施例的组码字符表,该表中数据代码值及其对应的字符都可以根据研发人员或者客户的需要进行修改,以符合不同用户的需求,提高用户体验。\n[0109] 步骤S714,将查寻获得的字符串数据输出并结束组码的解码流程获得32/48bit或64bit数字。字符串的数据范围是16-30字节的字符串。该步骤中上位机完成混合码和简单码区分。\n[0110] 上述组码的解码实施例中图像被截取后,首先进行矫正(对比度调整、图像旋转修正),然后进行定位标识识别,再根据组码序列号确定各编码单元序列,之后各区域编位权值进行累加得到数值,将数值按照组码字符表得到各序列相应的字符;字符相加得到最终的字符串。\n[0111] 本发明实施例在单码解码得到解码数据后可以校验解码数据,对单码进行二次解码得到第一解码数据,解码数据与第一解码数据相同时,单码解码成功。\n[0112] 在组码解码得到解码数据后之后校验解码数据,对组码进行二次解码得到第二解码数据,第二解码数据与解码数据相同时,组码解码成功。也可以在组码解码得到解码数据后,对组码中预定数量的单码进行二次解码得到第三解码数据,在解码数据中包括与第三解码数据相同的部分时,组码解码成功。\n[0113] 本实施例中,组码解码后进行二次解码,两次解码按照序列号确定的序列位的累加和进行比较,相等则字符串正确,反之则解码错误。在累加的过程中可以依据组码的复杂度选择性的进行二次解码对比,提高解码效率。\n[0114] 同时本发明采用编码冗余的方式,不断重复编码码元,是微码容错的一个特点;微码肉眼不能分辨,在一定区域内重复填充编码码元,在被装置识读时,一次性会采集大量相同码元,可以有效的防止因编码载体部分破损、污染等现象造成的编码不可识别问题。\n[0115] 综上所述本发明实施例的处理过程即识读该二维微型编码中数据区域的过程,点读笔的识读头在识读面积只有3毫米左右直径的圆空中成像。核心图形识读区内可以看到同样排列的码图约9-12组(3x3,3x4),对其中一组成像即可。微码的识读头,在同一光学器件上需要实现对标准二维码和微码的识读,识读面积达到直径12-15mm的圆型区域,在微码检测时,由于识读区相对变大,而微码体积小,全面检测整个图像区域解码会消耗大量的系统资源,因此需要通过预处理模块22从中心区域开始检测向四角的图像区域选点进行检索。实际应用中,特别需要保持编码规则不可攻击性,以及编码信息中除了节目索引信息,还应包含卡片唯一标示,因此实际数据量需要至少保持在48bit以上。另外,作为互动电视访问引导手段,还应该具备缩写URL的作用,引导用户更好的使用。长数据另外的好处就是可以用来做充值卡的密码应用。\n[0116] 从以上的描述中,可以看出,本发明实现了如下技术效果:本发明比传统微码容量更大,增加了组码表示字符串的功能,有效区域更宽广,可应用于点读机、点菜系统、输入不方便受限制的场合,如手机上网、电视、机顶盒上网类快捷操作应用。\n[0117] 需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。\n[0118] 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。\n[0119] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
法律信息
- 2022-05-24
专利权的转移
登记生效日: 2022.05.13
专利权人由北京新光数字电影院线有限公司变更为视渠时代(北京)技术发展有限公司
地址由100000 北京市朝阳区中纺里34号院37号楼1403-2室变更为100124 北京市朝阳区石门村路二院(库区)24幢4层4026室
- 2018-11-16
专利权的转移
登记生效日: 2018.10.26
专利权人由视渠时代(北京)技术发展有限公司变更为北京新光数字电影院线有限公司
地址由100000 北京市东城区东直门外东中街46号鸿基大厦3B新光数字院线变更为100000 北京市朝阳区中纺里34号院37号楼1403-2室
- 2016-04-20
专利权的转移
登记生效日: 2016.03.29
专利权人由龚湘明变更为视渠时代(北京)技术发展有限公司
地址由100034 北京市西城区西单北大街兵马司胡同6号变更为100000 北京市东城区东直门外东中街46号鸿基大厦3B新光数字院线
- 2014-04-02
- 2011-03-09
实质审查的生效
IPC(主分类): G06K 19/06
专利申请号: 201010276278.3
申请日: 2010.09.07
- 2011-01-12
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2006-02-01
|
2004-07-31
| | |
2
| |
2008-12-31
|
2007-06-29
| | |
3
| |
2007-03-21
|
2004-11-15
| | |
4
| |
2007-12-12
|
2006-06-08
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |