CN109791623B - 具有包括物理表面的基底的制品及其构造方法 - Google Patents

具有包括物理表面的基底的制品及其构造方法 Download PDF

Info

Publication number
CN109791623B
CN109791623B CN201780060174.9A CN201780060174A CN109791623B CN 109791623 B CN109791623 B CN 109791623B CN 201780060174 A CN201780060174 A CN 201780060174A CN 109791623 B CN109791623 B CN 109791623B
Authority
CN
China
Prior art keywords
optical element
optical
parent
code
child
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
Application number
CN201780060174.9A
Other languages
English (en)
Other versions
CN109791623A (zh
Inventor
詹姆斯·W·霍华德
贾斯廷·M·约翰逊
特拉维斯·L·波茨
蒂布提·帕乔里
詹姆斯·B·斯尼德尔
古鲁普若萨德·索玛孙达南
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.)
3M Innovative Properties Co
Original Assignee
3M Innovative Properties Co
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 3M Innovative Properties Co filed Critical 3M Innovative Properties Co
Publication of CN109791623A publication Critical patent/CN109791623A/zh
Application granted granted Critical
Publication of CN109791623B publication Critical patent/CN109791623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/06046Constructional details
    • G06K19/06056Constructional details the marking comprising a further embedded marking, e.g. a 1D bar code with the black bars containing a smaller sized coding
    • 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/06018Record 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 one-dimensional coding
    • G06K19/06028Record 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 one-dimensional coding using bar codes
    • 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
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14131D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/1434Barcodes with supplemental or add-on codes

Abstract

本发明提供了一种制品,在一些示例中,该制品包括基底,该基底包括物理表面;在物理表面上体现的父光学元素组和子光学元素组的分级结构,其中由父光学元素组表示的第一编码值至少部分地基于子光学元素组中的特定光学元素的视觉外观,并且由特定光学元素表示的第二编码值至少部分地基于该视觉外观,第一编码值和第二编码值不同,并且第二编码值不能从大于阈值距离的距离解码,第一编码值能从大于阈值距离的距离解码。

Description

具有包括物理表面的基底的制品及其构造方法
技术领域
本公开涉及在制品的物理表面上编码信息以及用于对此类信息进行编码和解码的系统。
背景技术
条形码通常是数据或信息的光学机器可读表示。一些条形码通过系统地改变平行线的宽度和间距来表示数据。这些类型的条形码通常被称为线性条形码或一维(1D)条形码。条形码中编码的数据或信息可涉及条码所附接到的物体。
后来,开发了二维(2D)条形码。这些条形码在二维中使用几何图形对数据进行编码。2D条形码的一种常见类型是快速响应(QR)代码,其为正方形形状的矩阵型代码。QR码通常在其角落处包括三个独特的正方形,其限定代码的边界和取向,以及在第四角落附近的较小的正方形,其用于对图像的大小、取向和观察角度进行归一化。
使用8位码字或块以QR码对信息进行编码,其中每个位由白色或黑色正方形表示。该位以基本矩阵或网格图案布置,其中每个位是相同大小的正方形。在创建矩阵时,码字遵循两个像素宽的条带,在来自右下角的代码中从右向左呈上下Z字形,并围绕代码的其他元素导航。在QR码中,编码信息通常遵循标准化布局方案,以允许解码装置可靠地检索编码信息。可以QR码进行编码的字符数取决于每个位的大小、QR码本身的大小、字符的字母表的大小以及所使用的纠错级别。通常,纠错级别越高,存储容量越小。即使考虑到与条形码相关的现有技术,条形码与包含此类条形码的标志或其他制品中也存在各种缺点。
发明内容
本公开的制品、技术和系统涉及机器可读代码,该机器可读代码包括在光学元素组的分级结构中编码的一个或多个值,其中机器可读代码体现在制品上并且可由接收代码的图像的计算装置解码。光学元素组的分级结构可以在N级的父级光学元素组和子级光学元素组中结构化,其中子光学元素组的光学元素小于父光学元素组的光学元素。在一些实例中,父光学元素的编码值和子光学元素的编码值可以基于子光学元素和父光学元素中的相同光学元素位置,尽管相应编码值不同。因为用于相同子光学元素的图像的分辨率可以基于制品和图像捕获装置之间的不同距离提供不同的梯度值,所以不同的梯度值可以映射到不同的编码值。由于父光学元素(由于其大小)而不是子光学元素可以从制品和图像捕获装置之间的较大距离解码,因此可以使用相同的光学元素表示光学元素的分级结构的不同级别中的不同信息。以这种方式,机器可读代码的分层结构可以允许将更多信息编码到制品的有限表面空间中。这样,随着图像捕获装置和制品之间的距离减小,可以从机器可读代码解码来自分层结构中的不同光学元素组的不同信息。
在一些示例中,制品包括具有物理表面的基底;在物理表面上体现的父光学元素组和子光学元素组的分级结构,父光学元素组包括第一多个光学元素,所述第一多个光学元素各自具有第一大小,并且子光学元素组包括第二多个光学元素,所述第二多个光学元素各自具有小于第一大小的第二大小,其中由父光学元素组表示的第一编码值至少部分地基于子光学元素组中的特定光学元素的视觉外观,并且由该特定光学元素表示的第二编码值至少部分地基于视觉外观,第一编码值和第二编码值不同,并且第二编码值不能从大于阈值距离的距离解码,第一编码值能从大于阈值距离的距离解码。
在一些示例中,一种制品包括:包括物理表面的基底;在物理表面上体现的父光学元素组和子光学元素组的分级结构,父光学元素组包括第一多个光学元素,所述第一多个光学元素各自具有第一大小,并且子光学元素组包括第二多个光学元素,所述第二多个光学元素各自具有小于第一大小的第二大小,其中由父光学元素组表示的第一编码值至少部分地基于子光学元素组中的特定光学元素的视觉外观,并且由该特定光学元素表示的第二编码值至少部分地基于视觉外观,第一编码值和第二编码值不同,并且第二编码值不能从大于阈值距离的距离解码,第一编码值能从大于阈值距离的距离解码。
在一些示例中,一种方法包括:通过计算装置接收制品的图像,该制品具有包括物理表面的基底,其中父光学元素组和子光学元素组的分级结构体现在物理表面上,父光学元素组包括第一多个光学元素,所述第一多个光学元素各自具有第一大小,并且子光学元素组包括第二多个光学元素,所述第二多个光学元素各自具有小于第一大小的第二大小,其中由父光学元素组表示的第一编码值至少部分地基于子光学元素组中的特定光学元素的视觉外观,并且由该特定光学元素表示的第二编码值至少部分地基于视觉外观,第一编码值和第二编码值不同,并且第二编码值不能从大于阈值距离的第一距离解码,第一编码值能从大于阈值距离的第一距离解码,并且使用在大于阈值距离的第一距离捕获的图像,解码第一编码值,而不解码第二编码值;以及至少部分地基于第一编码值执行至少一个操作。
在一些示例中,一种系统包括:图像捕获装置;和计算装置,该计算装置通信地联接到图像捕获装置,该计算装置包括存储器和一个或多个计算机处理器,该存储器包括以下指令,该指令当由一个或多个计算机处理器执行时使得一个或多个计算机处理器:接收制品的图像,该制品具有包括物理表面的基底,其中父光学元素组和子光学元素组的分级结构体现在物理表面上,父光学元素组包括第一多个光学元素,所述第一多个光学元素各自具有第一大小,并且子光学元素组包括第二多个光学元素,所述第二多个光学元素各自具有小于第一大小的第二大小,其中由父光学元素组表示的第一编码值至少部分地基于子光学元素组中的特定光学元素的视觉外观,并且由该特定光学元素表示的第二编码值至少部分地基于视觉外观,第一编码值和第二编码值不同,并且第二编码值不能从大于阈值距离的第一距离解码,第一编码值能从大于阈值距离的第一距离解码,并且使用在大于阈值距离的第一距离捕获的图像,解码第一编码值,而不解码第二编码值;至少部分地基于第一编码值执行至少一个操作。
在附图和下文的说明中将示出一个或多个示例的详情。根据说明书和附图以及权利要求书,本公开的其它特征、目标和优点将显而易见。
附图说明
图1是具有示例性内容和情境光学元素的机器可读光学代码。
图2A是标志上的机器可读光学代码的示例性图。
图2B是在红外光谱中看到的标志上的机器可读光学代码的示例性图。
图3是符合本公开的示例性标志构造。
图4A是具有嵌套内容光学元素的示例性机器可读光学代码。
图4B示出了具有嵌套内容光学元素的机器可读光学代码的节段。
图5是用于读取多维机器可读光学代码的系统的示例。
图6是用于读取多维机器可读光学代码的系统中使用的计算装置的示例。
图7示出了根据本公开的一种或多种技术的包括由计算装置执行的示例性操作的流程图。
图8示出了根据本公开的技术的回射制品和示例性偏转、俯仰和滚动轴。
图9示出了根据本公开的技术的光学代码的示例性结构。
图10示出了根据本公开的技术的单分辨率光学代码。
图11示出了根据本公开的技术的多分辨率光学代码。
图12-13示出了根据本发明的技术的不同计时图案。
图14示出了根据本公开的一种或多种技术的可包括在光学代码中的重复或反复位。
图15示出了根据本发明的技术的参考解码算法。
图16-17示出了根据本公开的技术的制品上体现的光学代码的模块间隙。
图18示出了根据本公开的技术的具有固定图案信息的光学代码。
具体实施方式
图1示出了具有示例性内容和情境光学元素的机器可读光学代码100(或“代码100”)。在本公开的一些示例中,机器可读代码100包括表示二进制或n进制信息并且可能不可读和/或不包含对人有意义的信息的光学元素。例如,可以使用n基字符或数字系统来表示n进制信息。在图1中,代码100是由以包括行和列的配置定向的正方形或光学元素构成的多维数据矩阵。在一些示例中,术语“光学元素”和“模块”可互换使用。本公开的机器可读光学代码不是QR代码,并且可提供优于QR代码的一个或多个优点,如从本公开中显而易见的。尽管关于交通标志描述了本公开的制品、系统和技术,但是其他制品可以包括车牌、衣服或贴花。
如图1所示,代码100可以表示二进制代码,其中一些光学元素表示数据位,并且二进制代码是白色或黑色,白色和黑色分别对应于“0”和“1”,以对代码中的机器可读信息进行编码。可以使用任何可能的编码方案,诸如前述示例中的二进制。更一般地,光学元素可基于其视觉外观(例如,梯度值)表示一组编码值中的编码值,其中该组编码值的大小对应于可以分配给特定光学元素的多个不同的可能梯度值。可使用任何数量的不同组的编码值,诸如字母字符、数字字符或任何其他符号。如图1所示,编码值基于相应光学元素的视觉可区分性是能区分的。出于说明的目的,图1中所示的正方形包括阴影的n进制梯度,以将代码100中的不同编码值示为n进制编码元素。
在一些示例中,其中一组编码值包括N个编码值。光学元素组可以包括M个光学元素,其中光学元素组表示编码值的一组NM个组合的编码值的组合,该编码值至少部分地基于分配给光学元素组的相应光学元素的相应视觉梯度值。在一些示例中,相应梯度值各自包括在一组M个视觉上能区分的梯度值中。虽然图1中的光学元素被示出为正方形,但是符合本公开的光学元素可以具有任何形状。
在一些示例中,代码100可以包括三种类型的光学元素:查找器光学元素、情境光学元素和内容光学元素。图1中的查找器光学元素是行D和列4中的光学元素(总共13个光学元素)。具体地说,光学元素A4、D1、D4、D7和G4是“0”,而查找器光学元素的其余部分是“1”。查找器光学元素可以使机器视觉系统能够辨别图像中的2D条形码,或者使图像内的光学代码(包括代码100的外边缘)定位。
查找器代码或光学元素使机器或机器视觉系统能够对图像中出现的各种线和其他视觉特征进行分类,以便确定光学代码在空间上开始和结束的位置。查找器代码或光学元素通常固定在适当位置并且在视觉上足够不同或复杂,使得它们通常不会在自然界中出现。以这种方式设计查找器代码或光学元素允许机器视觉具有合理的确定性,即它已经识别出它应该解码的2D代码。更复杂的查找器代码提高了机器视觉系统找到和解码2D代码的可能性。视觉上更加复杂的查找器代码可能需要增加实施代码所需的查找器光学元素的数量,并且可能导致更小的光学元素大小(这可能提高光学元素遮挡和误读的可能性),并且用于编码数据或信息的剩余的光学元素更少。
在一些配置中,查找器光学元素使机器视觉系统能够确定2D条形码的取向。然而,在其他应用中,2D条形码的取向可以由处理2D条形码的图像的计算装置来假定(诸如,当2D条形码在标志或静止物体上时)。在这些应用中,需要较少的查找器光学元素(和信息位),因为要编码的计算装置不需要取向信息。可以通过光栅扫描快速识别如代码100中所示的查找器光学元素。在一个实例中,符合本公开的光学代码包括少于36个查找器光学元素。在另一实例中,符合本公开的光学代码包括例如少于25、23、21、19、17、15或13个查找器光学元素。
下表示出了符合本公开的各种大小的光学代码中可以编码的查找器光学元素、情境光学元素、内容光学元素、总光学元素和数据位的数量。虽然这些是代码大小的示例,但是可以创建符合本公开的不同大小的其他代码,外推下面的光学元素信息。在下表中,查找器光学元素的数量基于查找器光学元素的交叉中心图案。根据所使用的图案,可以存在更多或更少的查找器光学元素。另外,列出的内容光学元素的数量假定内容光学元素是标准或情境光学元素的面积的25%。根据所需应用的需要,可以设计具有更多或更少情境或内容光学元素的代码。编码数据位的数量补偿内容和情境光学元素之间的可变性,并假设每个标准位大小编码一位数据(排除查找器光学元素)。
Figure GDA0003531726570000061
Figure GDA0003531726570000071
表1:示例性代码大小和光学元素分布
查找器光学元素可以各种方式布置在光学代码100中。虽然查找器光学元素在代码100中以中心交叉图案布置,但查找器光学元素的其他放置或配置包括在每个角落放置三个白色光学元素。另外的变型包括沿相邻角光学元素之间的一个或多个边缘交替计时像素(白色、黑色)。在阅读本公开时,本领域的技术人员将明白符合本公开的代码中的查找器光学元素的其他位置。
情境光学元素通常是位或光学元素,其编码机器可读数据或与制品或物体有关的信息,或者代码100所在的制品或物体的位置或环境。在一个实例中,情境光学元素与查找器光学元素具有相同的大小,并且能由机器视觉系统从第一距离检测,该第一距离与查找器光学元素能检测的距离相同。此距离取决于2D码的大小、2D码中的光学元素的数量、每个光学元素的大小以及检测2D码的机器视觉系统的分辨率。在情境光学元素中编码的数据的示例包括:制品或物体的位置、与制品或物体相关的制造信息、代码所在的交通标志的分类、适用于特定区域的法律或其他驾驶限制、时间、日期或天气状况、标志应用的交通车道。在阅读本公开后,其他类型的信息对于本领域技术人员将是显而易见的。在图1中,光学元素A2、A3、B2、B3、B5、B6、B7、C2、C3、C5、C6、C7、E1、E2、E3、E5、E6、F1、F2、F3、F5、F6、G5和G6都是情境光学元素。在这些光学元素中,仅出于说明的目的,光学元素A2、B2、B5、B6、B7、C2、E6、F1、F2、F3、F6和G6对应于“1”,并且情境光学元素的其余部分对应于“0”,因为1的梯度颜色或阴影之间的映射对应于光学元素A2、B2、B5、B6、B7、C2、E6、F1、F2、F3、F6和G6的梯度颜色或阴影。
可以使用各种编码技术将信息编码到代码100中。一种此类示例性技术是里德-所罗门码,如本领域技术人员将理解的,并且如C.K.P.Clarke的“里德-所罗门纠错(Reed-Solomon Error Correction)”,研发白皮书(R&D White Paper WHP031),2002年7月中所述,其可从以下地址获得:http://downloads.bbc.co.uk/rd/pubs/whp/whp-pdf-files/WHP031.pdf,通过引用并入本文。符合本公开可使用的其他类型的纠错码包括戈莱码、低密度奇偶校验码和涡轮码。其他类型的代码对于本领域技术人员来说是显而易见的。在代码100中,使用三基扩展里德-所罗门码,情境光学元素可以在24个总情境光学元素中嵌入12位的信息。多达两个光学元素可能被遮挡或丢失,并且在情境光学元素中编码的数据仍然是可恢复的。使用本文描述的用于代码100的编码,如果情境光学元素表示标志的类型,则可以分类多达4096个唯一标志。
代码100还包括36个内容光学元素,其中四个在较大的光学元素A1、B1、C1、E7、F7、G1、G2、G3和G7中。内容光学元素能由机器视觉系统从第二距离检测到(但是在第一距离处不能由机器视觉系统检测到),并且第二距离小于第一距离。内容光学元素通常是这样的位或光学元素,其编码机器可读数据或与制品或物体有关的信息,或者代码100所在的制品或物体的位置和环境。内容光学元素可用于扩展在情境光学元素中编码的信息。例如,如果情境光学元素指示制品是速度限制标志,则可以使用内容光学元素来指示在标志所在的区域中速度限制是每小时55英里。以这种方式,内容信息可以描述情境信息。机器视觉系统可以读取内容光学元素的距离取决于代码100的大小、代码100中的光学元素的数量、每个光学元素的大小以及机器视觉系统的分辨率。
A1、B1、C1、E7、F7、G1、G2、G3和G7中的内容光学元素可以编码各种类型的信息,包括特定于标志的信息,诸如速度限制、指导信息、GPS坐标或资产编号。内容光学元素还可用于在情境光学元素的另外纠错时操作。
可以各种方式或使用各种算法在内容光学元素中编码数据。一种此类算法是6基里德-所罗门码,其允许在内容光学元素中编码12位数据。因为内容代码通常小于情境代码,所以提高了内容光学元素从机器视觉系统的视野中被误读或遮挡的可能性。与用于情境光学元素的3基里德-所罗门码相比,使用6基里德-所罗门码编码方案可以提供额外的冗余或错误检查。在该特定配置中可以遮挡多达12个相邻内容光学元素,并且可以准确地读取来自内容光学元素的数据。
光学元素A5、A6和A7可用于在安装时将自定义数据添加到标志。在一个实例中,它们可以都呈现白色,并且安装者可以通过在所需光学元素上添加IR黑色材料来指示信息,诸如标志所应用的通道。
虽然代码100被示为7×7矩阵,但是如由查找器光学元素的大小确定,其他代码在本公开的范围内。例如,代码可以是8×8、9×9、10×10、11×11、12×12、13×13、N×N或N×M。在一些配置中,符合本公开的代码可以不是正方形矩阵。光学代码可以是圆形、三角形、多边形、矩形或任何所需的不规则形状。此种光学代码的大小可以通过计算标准光学元素的总数,使用查找器光学元素的大小确定单个光学元素的标准大小来确定。
图2A是根据本公开的可包括机器可读光学代码的标志20的示例性图。标志20是遍及美国放置在许多道路上的交通标志的示例。作为示例,符合本公开的光学代码可以应用于任何标志,或应用于任何其他制品。在一个实例中,诸如图2A,可以创建光学代码以仅在红外光谱中可见,使得在可见光下驾驶员或人眼看不到它,但是可以在IR光下由机器视觉系统读取。用于实施符合本公开的光学代码的其他方法在全文中进行了论述,并且在阅读本公开后对于本领域技术人员而言将是显而易见的。
图2B是在红外光谱中看到的标志(例如,图2A的标志20)上的机器可读光学代码22的示例性图。光学代码22具有过渡边缘23,其有助于机器视觉系统检测光学代码22开始和结束的位置。如本文所论述的,可以在回射表面或标志上以各种方式创建过渡边缘。标志20的部分24围绕光学代码22,因为光学代码22是与标志20不同的形状。光学代码22具有7×7矩阵大小,使用主要光学元素(或情境光学元素)的大小来进行大小计算。光学代码22包括表示“1”(25)和“0”(26)两者的光学元素,其包括查找器、内容、计时、定时和情境光学元素。
图3是根据本公开的示例性标志构造300。虽然符合本公开的光学代码可以应用于任何制品,无论是移动的还是固定的,但图4示出了实施方案,其中光学代码应用于其上体现了回射片材的标志。图3示出了如本文所述的具有多层、回射片材和光学代码的此种标志的横截面。层310是基底。通常,基底310是刚性或非柔性且耐用的材料,诸如金属。一种此类合适金属是铝。在其他实施方案中,基底310可以是或包括任何刚性、半刚性或柔性表面。
回射片320可以是如本公开中所述的回射片。可以在回射片320和基底310之间设置一层粘合剂(未示出),以将回射片320粘附到基底310。可符合本公开使用的回射片材的一个示例是3M Diamond GradeTMDG3回射片材系列(Reflective Sheeting Series)4000,其可得自明尼苏达州圣保罗的3M公司(3M Company of St.Paul,Minnesota)。
层330包括通常被打印到层320上的消息或图像。层330可以是交通标志图像,诸如图2A中所示的停止标志。层330可以包括可见光谱中的任何消息或图像,或者在除了层340中的光学代码之外的波长处可见的消息或图像。在美国专利8,865,293中更详细地描述了在单个标志、车牌或其他基底中包括在不同波长处可见的信息或图像的示例,该专利的全部内容以引用方式明确地并入本文。
层340包括符合本公开的光学代码,诸如图2B中所示的光学代码。层340中的光学代码可以各种方式形成。例如,如果光学代码340被设计成在可见光谱中可见,则它可以用深色(诸如黑色)打印到浅色(或白色)基底上。如果层340中的光学代码被设计为在IR光谱中可见(通常在700nm至1000nm的范围内,尽管在一些实例中,可以使用诸如850nm或900nm的波长),层440中的光学代码在可以各种方式创建。具体地,对于层340下面的回射层320,未被吸收、散射或以其他方式抑制红外光谱中的回射的材料或物质覆盖的层320的任何部分将呈现白色或浅色。因此,应用吸收、散射或以其他方式消除红外光谱中的回射的材料可用于在层340中创建黑色光学元素和光学代码周围的边界。
可以使用的材料的示例包括使用吸收IR的黑色墨水打印期望为黑色或深色的标志部分。在另一个实例中,可以选择性地切割IR吸收多层光学膜(MOF),使得去除期望为白色的标志的任何部分,并且将膜覆盖在层330上。当在红外光谱中观察时,该膜仅允许在光学代码的意图为白色的区域中进行回射。虽然本文论述了红外(IR)光谱,但也可以使用其他光谱,诸如近红外光谱(波长约为950nm的光)。当层340中的光学代码被创建为950nm的光吸收膜时,当950nm的光照射光学代码时,黑色打印节段将吸收光并且对机器视觉系统呈现黑色,并且未打印节段将呈现明亮或者白色。
标志300可以可选地包括在层340上形成或粘附的覆层350。覆层350可以由可见光透明的红外透明材料构成,诸如但不限于多层光学膜。
在标志300的构造中使用回射层可以提供若干优点。例如,当主要在红外光谱中捕获信息,并且图像中的唯一可见区域是由从回射片材320反射的光创建的明亮或白色光学元素时,返回到相机的照明条件可能对于图像捕获装置和/或计算装置识别图像中不是IR回射的任何物体产生困难。这包括标志或光学代码周围的背景,以及其他个人信息,诸如个人的面部、图像或其他识别信息。
另外,来自层340的生成光学代码的白色或明亮部分的回射光可以引起图像中的黑色区域之间具有非常鲜明的对比度的图像,包括光学代码和周围图像之间的自然边界或过渡。此种过渡如图2B中的项目23所示。在一些现有的QR码中,在代码边界的整个或部分周围可能需要黑色光学元素,以用于机器视觉系统描绘QR码在哪里开始和结束。
反,因为标志300上的光学代码周围的区域在IR光谱中将呈现黑色,所以在一些示例中,不需要额外的边界光学元素,从而允许更高的编码效率。
图4A示出了具有嵌套内容光学元素的机器可读光学代码400。在一些示例中,嵌套或“子”光学元素可以包括在父光学元素内。例如,父光学元素组402可包括至少一个父光学元素406,其中父光学元素406还包括子光学元素组(例如,包括图4A的单元[A,1]中的四个光学元素),该子光学元素组包括相应的一组光学元素,诸如子光学元素406。
在一些示例中,对应于父光学元素的至少一个光学元素的第一编码值可在图像捕获装置和制品之间的特定距离处解码,该距离大于或等于阈值距离。分别对应于子光学元素组中的光学元素组的子编码值在图像捕获装置和制品之间的特定距离处不可解码。在一些示例中,特定距离是第一距离,其中分别对应于子光学元素组中的光学元素组的子编码值可在图像捕获装置和制品之间的第二距离处解码,第二距离介于小于第一距离之间。在一些示例中,阈值距离是由图像捕获装置捕获的图像的分辨率无法在视觉上区分的距离,其高于视觉上不同的子光学元素组的一个或多个光学元素之间的可区分性阈值。在一些示例中,可区分性阈值可以是用户定义的、硬编码的或机器生成的。
在一些示例中,光学代码可包括内容和情境光学元素两者。嵌套内容光学元素是四个内容光学元素的块,每个光学元素可以作为一位数据单独读取,或者可以作为单个情境光学元素一起读取。从第一距离开始,光学代码400呈现为7×7代码,具有行A-B、C-D、E-F、G-H、I-J、K-L和M-N以及列1-2、3-4、5-6、7-8、9-10、11-12和13-14。类似于图1中所示的图像,行G-H和列7-8中的光学元素是查找器光学元素。图4A的机器可读光学代码与图1的不同之处在于,它示出了在光学元素内使用梯度以允许嵌套内容光学元素。
图4B示出了具有嵌套内容光学元素的机器可读光学代码的节段。在许多机器视觉系统中,系统通过检测图像中最亮的色调和图像中最暗的色调来确定光学元素是“白色”还是“黑色”。然后,机器通过确定比检测到的白色和黑色之间的中途色调更暗的任何色调被确定为黑色来“二值化”图像。比中途(或50%)色调更轻的任何色调被确定为白色。当嵌套多层内容光学元素时,可以应用该相同原理。
图4B还示出了体现在物理表面上的父光学元素组和子光学元素组的分级结构。例如,光学元素组424(在不同细节水平上也描绘为425和426)可以是具有四个子光学元素A11、A12、B11、B12的父光学元素组。父光学元素组包括第一多个光学元素(例如,A11、A12、B11、B12),所述第一多个光学元素各自具有第一大小。子光学元素组427包括第二多个光学元素A12a、A12b、A12c和A12d,所述第二多个光学元素各自具有小于第一大小的第二大小。在图4B的示例中,由父光学元素组424表示的第一编码值(“1”)至少部分地基于子光学元素组中的特定光学元素A12b(使用A12b作为示例)的视觉外观,并且由特定光学元素A12b部分表示的第二编码值(“0”)至少部分地基于特定光学元素A12b的视觉外观,第一编码值和第二编码值不同。光学元素A12的第二编码值(“0”)可能无法从大于阈值距离的距离解码,第一编码值(“1”)能从大于阈值距离的距离解码。如图4B所示,子光学元素组的每个光学元素可包括在父光学元素组的一个光学元素内。在其他示例中,子光学元素组可不重叠或包括在父光学元素组内。
通过以分级方式布置编码值,如图4B所示,可以在更高级别的分级结构(例如,父光学元素组)处的光学元素中编码更重要的信息(例如,存在停止标志),该光学元素可从图像捕获装置和包括光学元素的制品之间的更远距离解码。较不重要的信息(例如,制品的制造日期)可以在分级结构的较低级别(例如,子光学元素组)处的光学元素中编码,该光学元素可以仅在图像捕获装置更靠近包括光学元素的制品时被解码。可以使用任何数量分级级别的光学元素组,诸如图4B中的三个级别。
分层内容光学元素的另一个示例在块11-12、列C-D中示出。当创建代码400时,由块11-12、行C-D组成的块411当作为单个块(作为情境光学元素)一起读取时被累积解码为“0”。因为机器视觉系统检测到标度410中所示的阴影0,0作为区域中最浅的颜色和在标度410上示出的阴影1,1作为最深颜色,为了光学元素C-D、11-12中的所有块被读取为“0”,411中的四个块中的每个中的阴影必须低于标度410上的50%线。
为了在块411中读取或以其他方式解码嵌套在四个内容光学元素中的每个中的信息,机器视觉系统可以隔离块411并且仅在块411中将其二值化器校准为阴影。因为阴影低于标度410的50%线,所以二值化器然后确定具有低于25%线的黑色级别(例如,基于亮度)的任何区域是“0”,并且高于25%线的任何区域是“1”。因此,即使当一起读取为单个光学元素时411和412中的四个块将被读取为“0”,当单独读取时,作为内容光学元素,C11和D12为“0”而C12和D11为“1”。
类似地,当从第一距离读取作为情境光学元素时,块413需要被读取为“1”。为了实现这一点,仅使用大于标度410上的50%线的阴影,使得当从第一距离读取情境光学元素413时,机器视觉系统确定所有四个块都是“暗”或“黑色”,因为它们高于梯度标度上的50%线。当单独读取块414中的内容光学元素时,基于机器视觉系统在读取块414处于隔离时仅查看高于50%线的梯度范围,E11为“0”并且E12、F11和F12为“1”。在一些示例中,视觉外观由或者可以由如下的视觉梯度值:指示在具有不同亮度的梯度值范围内的亮度。
块或光学元素421-426展示了使用三级嵌套数据的具体实施。当从第一距离读取时,块421是“1”,因为所有阴影都大于标度420上的50%线。然而,当从更近的第二距离读取时(如块422上所示),光学元素A11和A12被读取为“0”,因为这些光学元素中的每个内的阴影低于75%线,这已经成为用于二值化块422的划分点。光学元素B11和B12读取为1。当从第三(和最近距离)读取块423时,机器视觉系统能够检测到光学元素A11、A12、B11和B12中的每个由四个嵌套光学元素制成。在光学元素A11和A12中,色谱范围仅在标度420上的1,0,0和1,0,1之间,因此A11中的四个嵌套光学元素读取为0,0,0,0,并且A12中的四个嵌套光学元素读取为1,1,0,1。
当在第一距离处读取为单个情境光学元素时,光学元素424被编码为“0”,因此在光学元素424内使用的所有阴影都低于标度420上的50%黑色水平线。当块425在第二距离处读取为四个单独的内容光学元素时,光学元素A11是“1”并且A12、B11和B12各自是“0”。可以在比第一距离或第二距离中的任一个更近的第三距离处读取块426,其中关于块425提到的每个内容光学元素现在可以被读取为四个单独的内容光学元素。块A11中的内容光学元素是1,1,0,0。块A12中的内容光学元素是1,0,1,0。块B11中的内容光学元素是1,0,1,0,并且块B12中的内容光学元素是1,0,0,1。尽管提供了50%的黑色水平线作为一个示例,但是任何值都可以在100%-1%之间。
虽然本文描述了用于嵌套内容和情境光学元素的特定方法,但是在阅读本公开后,本公开范围内的其他方法对于本领域技术人员将是显而易见的。虽然本公开具体描述了两级嵌套和三级嵌套,但是可以基于图像捕获和处理技术的限制来实现任何期望的嵌套级别。例如,要实现具有五级嵌套的代码,需要将梯度标度分为25或32个颜色梯度(或灰色)。
图5是用于读取多维机器可读光学代码的系统500的示例。系统500包括标志520。标志面522包括可在可见光谱中看到的图像、停止图像522和可在可见光谱外的可见光谱中可见的机器可读光学代码530。标志500具有基底,并且还可以包括光学代码530后面的一层回射片材。
光学代码530包括多个查找器光学元素,这些查找器光学元素以图案布置并且能由安装在车辆510上的机器视觉系统512从第一距离检测。光学代码530还包括表示情境信息的多个情境光学元素,其中情境光学元素能由机器视觉系统从第一距离检测。光学代码530还包括表示内容信息的多个内容光学元素,其中内容光学元素在第一距离处不能由机器视觉系统检测到,但是能由机器视觉系统从第二距离检测到,并且第二距离小于第一距离。
当车辆510接近标志520时,机器视觉系统512检测并处理机器可读光学代码。虽然机器视觉系统512被示为可移动的并且安装到图5中的车辆510,但是机器视觉系统可以是固定的或可以安装到其他装备或装置。机器视觉系统512可以是包括图像传感器和光源的红外相机。在一些实例中,机器视觉系统将包括滤光器以提高图像传感器对IR光谱的灵敏度。在阅读本公开后,其他类型的机器视觉系统对于本领域技术人员将是显而易见的。
机器视觉系统512可以包括计算装置540,使得其经由不需要网络的有线或无线连接直接与计算装置540连接。在其他实例中,机器视觉系统512可以使用一个或多个通信链路550A、550B与计算装置540通信地联接。虽然计算装置540被示为通过网络552连接到车辆510,但是在其他示例中,计算装置540可以直接包括在车辆510内或车辆510处,并且通过车辆的直接通信或内部网络与车辆部件通信。
机器视觉系统512可以将光学代码的图像发送到计算装置540。通信链路550A和550B可以表示有线或无线连接。例如,通信链路550A和550B可以为使用WiFi协议的无线以太网连接,和/或可以为使用5类或6类电缆的有线以太网连接。任何合适的通信链路都是可能的。在一些示例中,机器视觉系统512通过网络552通信地联接到计算装置540。网络552可以表示任何数量的一个或多个网络连接装置,该一个或多个网络连接装置包括但不限于路由器、交换机、集线器和提供用于分组和/或基于帧的数据的转发的互连通信链路。例如,网络552可以表示互联网、服务提供商网络、客户网络或任何其他合适的网络。在其他示例中,机器视觉系统512通过直接连接(诸如通用串行总线(USB)链路)通信地联接到计算装置540。
计算装置540表示任何合适的计算系统,其可以是具有或远离机器视觉系统512的单个装置,诸如能够与机器视觉系统512发送和接收信息的一个或多个台式计算机、膝上计算机、大型机、服务器、云计算系统等。在一些示例中,计算装置540实施本公开的技术。
在图5的示例中,计算装置540包括编码部件542、数据层626、服务部件546和用户界面(UI)部件548。编码部件542可以通过将所需数据编码方案或算法应用于光学代码530上的数据来检测在光学代码530中编码的数据。编码部件542可以查询数据层626以将检测到的二进制代码从光学代码530转换为机器可读信息。
服务部件546可以通过执行一个或多个操作来提供任何数量的服务。例如,服务部件546在接收到从光学代码读取的数据时可以生成一个或多个警报、报告或其他通信,其被发送到包括车辆510上的自动驾驶部件的一个或多个其他计算装置。此类警报可包括但不限于:电子邮件、短信、列表、电话或任何其他合适的通信。在一些示例中,用户界面(UI)部件548可以充当计算装置540的各种部件和光学元素之间的中介,以处理输入装置检测到的输入并将其发送到其他部件和光学元素,并且生成来自其他部件和光学元素的可以在一个或多个输出装置上呈现的输出。例如,UI部件548可以生成用于显示的一个或多个用户界面,其可以包括警报、报告或其他通信的数据和/或图形表示。
部件542、626、546和548可以使用驻留在计算装置540和/或一个或多个其他远程计算装置上并在其上执行的软件、硬件、固件或者硬件、软件和固件三者的混合执行本文所述的操作。在一些示例中,部件542、626、546可以被实施为硬件、软件和/或硬件和软件的组合。计算装置540可以利用一个或多个处理器来执行部件626、546和548。计算装置540可以执行作为在底层硬件上执行的虚拟机或者在所述虚拟机内的部件542、626、546或548中的任一个。部件542、626、546、548可以各种方式实施。例如,部件542、626、546或548中的任一个可以被实施为可下载或预安装的应用或“应用(app)”。在另一个示例中,部件542、626、546或548中的任一个可以被实施为计算装置540的操作系统的一部分。
例如,图5中的目的,机器视觉系统被示为车辆510的一部分或安装到车辆510。车辆510可以为汽车、摩托车、飞机、水船、军事装备、自行车、火车或任何其他运输车辆。在其他示例中,机器视觉系统512可以附接到、被包括或嵌入或以其他方式包括:文件、衣服、可穿戴装备、建筑物、固定装置或任何其他物体,仅举几个示例。
光学代码530被示为合并为图5中的标志,然而光学代码可以安装在、附接到、被包括或嵌入文档、衣服、可穿戴装备、建筑物、固定装置或任何其他物体,仅举几个示例。
在一些示例中,光学代码530或制品光学代码530被附接以可包括施加到基体表面的反射、非反射和/或回射片。可以在光学代码530制品上打印、形成或以其他方式体现可见消息,诸如但不限于字符、图像和/或任何其他信息。可以使用一种或多种技术和/或材料将反射、非反射和/或回射片施加到基体表面,所述一种或多种技术和/或材料包括但不限于:机械粘合、热粘合、化学粘合或用于将回射片附接到基体表面上的任何其他合适的技术。基体表面可以包括可以附接反射、非反射和/或回射片材的物体(如上述的例如铝板)的任何表面。可以使用墨水、染料、热转印条带、着色剂、颜料和/或粘合剂涂覆膜中的任何一种或多种将制品消息打印、形成或以其他方式体现在片材上。在一些示例中,内容由多层光学膜、包括光学活性颜料或染料的材料或者光学活性颜料或染料形成或包括它们。
为了最初制造或以其他方式创建光学代码530,构造装置570可以与控制构造装置570的操作的计算装置560结合使用。在一些示例中,构造装置570可以是打印、布置或以其他方式形成光学代码530和/或标志520的任何装置。构造装置138的示例包括但不限于针模、凹版打印机、丝网打印机、热质传递打印机、激光打印机/雕刻机、层压机、柔性版打印机、喷墨打印机、红外线墨水打印机。在一些示例中,光学代码530可以通过由构造装置570构造的回射片材或红外吸收或散射膜以及单独的构造过程或装置来实现,该构造过程或装置在一些情况下由与计算装置560不同的操作者或实体操作,可以将制品消息应用到片材和/或将片材应用到基层(例如,铝板)。
构造装置570可以通过通信链路550D通信地联接到计算装置560。计算装置560可控制构造装置570的操作。例如,计算装置560可以包括一个或多个打印规范。打印规范可以包括限定可见标志面522和光学代码530的属性(例如,位置、形状、大小、图案、组成或其他空间特性)的数据。在一些示例中,打印规范可以由操作人员或机器生成。在任一种情况下,构造部件562可以向构造装置570发送数据,该数据使得构造装置570根据打印机规范打印可见图像或消息和光学代码。
在一些示例中,构造部件562可以确定可能在视觉上被遮挡的标志的一个或多个可能区或区域。此类区或区域可以由用户定义、硬编码,或者由构造部件562基于包括至少潜在的视觉遮挡或遮挡表示的一个或多个图像来确定。在一些示例中,构造部件562可以输出图形用户界面,其中用户可以指定可以在视觉上被遮挡的特定标志的不同区或区域。基于确定可能在视觉上被遮挡的区或区域,构造部件562可以配置制品上的块形状、大小和/或位置,以改善如果潜在视觉遮挡的一个或多个区或区域被遮挡,则光学元素组中编码的消息仍然可由计算装置解码的可能性。作为示例,如果光学代码的右上象限中的区或区域可能在视觉上被遮挡,则构造部件562可以将表示消息的光学元素组定位在除右上角之外的位置,但是仍然可以包括定位在右上象限的区或区域中的光学元素组中的纠错数据。基于机器可读代码的已知或可能的视觉遮挡区域,光学元素的大小、形状和位置的任何数量的其他可能分布是可能的。
在一些示例中,为了解码机器可读代码中的消息,编码部件542可以至少部分地基于指示图像内的相应光学元素组的相应预定义位置的光学元素组位置数据来确定光学元素组。也就是说,光学元素组位置数据可以指示映射到不同光学元素组和/或单独光学元素的坐标或其他位置值。编码部件542可以至少部分地基于指示光学元素组内的各个光学元素的相应预定义位置的光学元素位置数据来确定每个相应光学元素的相应梯度值。例如,给定图像的预定义位置与光学元素之间的已知映射,编码部件可测量或以其他方式确定该预定义位置的梯度值(在一些示例中,该梯度值可以是对应于像素的单个点或一组点)。编码部件542可以至少部分地基于梯度值和编码值之间的映射来确定消息的至少一部分。例如,编码部件542访问梯度值和编码值之间的一个或多个存储的映射,并且基于检测到的光学元素的梯度值,重构表示消息的一部分的解码值串。
在一些示例中,车辆的计算装置可能需要一组基准(或导航标记),通过该组基准来去除GPS精度的漂移和不确定性。本公开的机器可读代码和映射到关于包括代码的制品附近的物体或危险的数据的唯一或准唯一(例如,指示特定类别或属)ID可以提供此类基准。在一些示例中,本公开的机器可读代码还可以包含内容和情境光学元素之间的冗余扩展,使得车辆的计算装置可以足够的置信度(例如,高于阈值)确定从数据库引用的数据应用于该特定的交通标志或制品,并且没有发生与该制品有关的错误或伪造。此类技术和机器可读代码可以扩展到安全性,通过该安全性,冗余信息被存储在本地和数据库中,并且可以作为在该使用情况下的安全性的附加度量由计算装置比较或验证。
在一些示例中,车辆的计算装置或以其他方式可以验证标志是真实的和/或在机器可读代码中编码的消息是正确的。以这种方式,此种验证可以提供标志放置在它应该处于的位置并且在该位置中它具有有效编码的更高置信度。例如,在读取标志时,可以将机器可读代码中编码的GPS位置与车辆确定的GPS位置进行比较。其他此类比较是可能的并且在本公开的范围和实质内。
图6是用于读取多维机器可读光学代码的系统中使用的计算装置的示例。图6仅示出了如图5所示的计算装置540的一个特定示例。计算装置540的许多其它示例可在其它实例中使用,并且可包括示例性计算装置540中所包括的部件的子集,或者可包括图6中的示例性计算装置540中未示出的附加部件。在一些示例中,计算装置540可以为服务器、平板计算装置、智能手机、手腕或头戴式计算装置、膝上型计算机、台式计算装置,或者可以运行包括在应用620中的功能集、功能子集或功能超集的任何其他计算装置。
如图6的示例所示,计算装置540可在逻辑上划分为用户空间602、内核空间604和硬件606。硬件606可包括为在用户空间602和内核空间604中执行的部件提供操作环境的一个或多个硬件部件。用户空间602和内核空间604可表示存储器的不同节段或区段,其中内核空间604向进程和线程提供比用户空间602更高的权限。例如,内核空间604可包括操作系统620,其以比在用户空间602中执行的部件更高的权限进行操作。
如图6所示,硬件606包括一个或多个处理器608、输入部件610、存储装置612、通信单元614以及输出部件616。处理器608、输入部件610、存储装置612、通信单元614和输出部件616可各自通过一个或多个信道618互连。信道618可将部件608、610、612、614和616中的每个互连以用于部件间通信(物理地、通信地和/或可操作地)。在一些示例中,通信信道618可以包括硬件总线、网络连接、一个或多个进程间通信数据结构或用于在硬件和/或软件之间传送数据的任何其他部件。
一个或多个处理器608可实现计算装置540内的功能性和/或执行其内的指令。例如,计算装置540上的处理器608可接收并执行由存储装置612存储的指令,这些指令提供内核空间604和用户空间602中所包括的部件的功能性。由处理器608执行的这些指令可致使计算装置616在程序执行期间在存储装置612内存储和/或修改信息。处理器608可执行内核空间604和用户空间602中的部件的指令,以根据本公开的技术来执行一个或多个操作。也就是说,包括在用户空间602和内核空间604中的部件可由处理器208操作以执行本文描述的各种功能。
计算装置540的一个或多个输入部件642可接收输入。仅举几个示例,输入的示例为触觉、音频、动力学和光学输入。在一个示例中,计算装置616的输入部件642包括鼠标、键盘、语音响应系统、摄像机、按钮、控制板、麦克风、或用于检测来自人类或机器的输入的任何其它类型的装置。在一些示例中,输入部件642可为存在敏感输入部件,其可包括存在敏感屏幕、触敏屏等。
计算装置616的一个或多个输出部件616可生成输出。输出的示例为触觉、音频和视频输出。在一些示例中,计算装置540的输出部件616包括存在敏感屏幕、声卡、视频图形适配器、扬声器、阴极射线管(CRT)监视器、液晶显示器(LCD)、或用于向人类或机器生成输出的任何其它类型的装置。输出部件可包括显示部件如阴极射线管(CRT)监视器、液晶显示器(LCD)、发光二极管(LED)或用于生成触觉、音频和/或视觉输出的任何其它类型的装置。在一些示例中,输出部件616可与计算装置540集成。在其它示例中,输出部件616可在物理上位于计算装置540的外部并与计算装置540分离,但是可通过有线或无线通信可操作地联接到计算装置540。输出部件可为位于计算装置540的外部封装内并物理连接到计算装置540的外部封装的计算装置540的内置部件(例如,移动电话上的屏幕)。在另一个示例中,存在敏感显示器602可为位于计算装置540的封装外部并与计算装置540的封装物理分离的计算装置540的外部部件(例如,与平板计算机共享有线和/或无线数据路径的监视器、投影仪等)。
计算装置540的一个或多个通信单元614可通过发射和/或接收数据来与外部装置进行通信。例如,计算装置540可使用通信单元614来在无线电网络(诸如蜂窝无线电网络)上发射和/或接收无线电信号。在一些示例中,通信单元614可在卫星网络(诸如全球定位系统(GPS))网络上发送和/或接收卫星信号。通信单元614的示例包括网络接口卡(例如,诸如以太网卡)、光收发器、射频收发器、GPS接收器或可发送和/或接收信息的任何其他类型的装置。通信单元614的其它示例可包括存在于移动装置中的
Figure GDA0003531726570000211
GPS、3G、4G和
Figure GDA0003531726570000212
无线电以及通用串行总线(USB)控制器等。
计算装置540内的一个或多个存储装置612可存储用于在计算装置540的操作期间进行处理的信息。在一些示例中,存储装置612是暂时存储器,这意味着存储装置612的主要目的不是长期存储。计算装置540上的存储装置612可被配置用于信息的短期存储,如同易失性存储器,并因此如果被停用则不保留所存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)以及本领域已知的其它形式的易失性存储器。
在一些示例中,存储装置612还包括一个或多个计算机可读存储介质。存储装置612可被构造成存储比易失性存储器更大量的信息。存储装置612还可被配置用于信息的长期存储,如同非易失性存储器空间,并且在激活/关闭周期之后保留信息。非易失性存储器的示例包括磁性硬盘、光盘、软盘、闪存或电可编程存储器(EPROM)或电可擦可编程(EEPROM)存储器的形式。存储装置212可存储与包括在用户空间602和/或内核空间604中的部件相关联的程序指令和/或数据。
如图6所示,应用628在计算装置540的用户空间602中执行。应用628可在逻辑上划分为表示层622、应用层624和数据层626。表示层622可以包括用户界面(UI)部件548,其生成和呈现应用628的用户界面。应用228可以包括但不限于:UI部件548、编码部件542,数据层626和一个或多个服务部件546。表示层622可以包括UI部件548。
数据层626可以包括一个或多个数据存储。数据存储可以结构或非结构化形式存储数据。示例数据存储可以为关系数据库管理系统、在线分析处理数据库、表格或用于存储数据的任何其他合适的结构中的任何一种或多种。内容数据存储634可以包括:由来自内容光学元素的有效载荷构成的一系列位和与那些位系列相关联的信息。在一些示例中,内容数据存储634可以包括编码或解码形式的消息。情境数据存储636可以包括由来自情境光学元素的有效载荷构成的一系列位和与那些位系列相关联的信息。在一些示例中,情境数据存储634可以包括编码或解码形式的消息。纠错数据632可以包括形成由纠错算法构造的码字的一系列位,该纠错算法有助于重构和验证在内容光学元素和情境光学元素中找到的有效载荷数据。服务数据638可以包括用于提供服务部件546的服务和/或由提供服务部件546的服务所产生的任何数据。例如,服务数据可以包括关于光学活性制品的信息(例如,车辆登记信息)、用户信息或任何其他信息。
机器视觉系统510可以捕获包括光学代码530的图像,使用查找器光学元素确定光学代码530存在于图像中,并且通过UI部件548或通信通道550A和550B将其传送到计算装置540。响应于接收图像,编码部件542可以确定图像的特定图像区表示光学代码。通过应用一种或多种解码技术,诸如里德-所罗门解码或错误检测技术,编码部件542可以通过与内容数据存储636和情境数据存储634的通信来确定图像中的光学代码表示一系列数据,该数据指示前面有限速标志,并且标志上的限速是每小时50公里。
服务部件546可以基于由编码部件542生成的数据来执行一个或多个操作,诸如将数据发送到UI部件548,这使得UI部件548生成用于输出的警报或报告。在一些示例中,一个或多个部件可以存储指示解码结果的消息或基于结果处理的其他数据。在一些示例中,服务部件546可修改车辆的操作。例如,服务部件546可以改变车辆的速度、加速度、方向、悬挂、制动或任何其他功能。UI部件548可以将数据发送至输出部件616中的一个输出部件,使得该输出部件显示警报。虽然本文描述了计算系统的一个特定具体实施,但是在阅读本公开之后,与符合本公开的范围并且在本公开的范围内的计算系统的其他配置和实施方案对于本领域技术人员将是显而易见的。
图7示出了根据本公开的一种或多种技术的包括由计算装置执行的示例操作的流程图700。仅出于说明的目的,以下将示例操作描述为由图5和图6中的计算装置540执行。图7的一些技术可以由一个或多个图像捕获装置、计算装置或其他硬件执行。
在图7中,计算装置540接收以第一距离捕获的制品的图像,其中父光学元素组和子光学元素组的分级结构体现在制品的物理表面上,父光学元素组包括第一多个光学元素,所述第一多个光学元素各自具有第一大小,并且子光学元素组包括第二多个光学元素,所述第二多个光学元素各自具有第二大小(702)。计算装置540可以使用在大于阈值距离的第一距离处捕获的图像来解码第一编码值,而不解码第二编码值(704)。计算装置540可以至少部分地基于第一编码值来执行至少一个操作(706)。
计算装置540可以接收在小于第一距离的第二距离处捕获的制品的第二图像(708)。计算装置540可以使用在第二距离处捕获的图像来解码第二编码值(710)。计算装置540可以至少部分地基于第二编码值来执行至少一个操作(712)。
图8示出了根据本公开的技术的回射制品和示例偏转、俯仰和滚动轴。在一些示例中,回射制品(例如,速度限制标志)可以包括根据本公开的技术的光学代码。在一些示例中,本公开的光学代码可以用于基础设施识别和情境通信,诸如在道路应用中。在一些示例中,光学代码可以解释在姿势归一化的情境下将其放置在其中的二维条形码的轻微旋转。因此,除了其他可能的具体实施之外,遮挡鲁棒性可以是在基础设施应用中实施此类光学代码的优点或益处。在一些示例中,光学代码允许映射到预定消息的可变位有效载荷。
在一些示例中,通过包括可以在道路基础设施中提供优点的多个优化,本公开的光学代码与许多其他块矩阵代码被区分开。本公开的光学代码可以在准确检测、读取距离和从代码破坏的常见机制的错误恢复之间进行优化。
由于基础设施的环境,标志和基础设施材料具有一组特定的常见遮挡和变形。本公开的光学代码可优化或改善这些类型的遮挡的纠错和数据布局。光学代码可以比其他遮挡样式更多地从边缘遮挡中恢复数据。边缘遮挡在典型的基础设施驾驶场景中可能是普遍的。
在一些示例中,为了增加本公开的光学代码的读取距离,这些光学代码可以具有较少数量的专用于代码查找和姿态估计的模块。在本公开中另外论述了该查找器的细节。
在一些示例中,本公开的光学代码可以不具有元数据信息,并且在某些实例中不具有静区。这将光学代码与其他流行代码(诸如数据矩阵和QR码)区分开来。元数据模块的这种减少可以允许本公开的光学代码在数据传输方面更加节省空间。在物理代码尺寸受标志大小限制的标志实例中,空间效率可能是重要的。所需模块数量的减少意味着可以从更远处解码数据,因为代码可以更大,或者可以对类似大小的代码进行更多的纠错。
在一些示例中,本公开的光学代码利用一块基础设施的典型假设取向。图8示出了标志的轴线,但是可以使用任何制品。在一些示例中,车辆将遇到具有光学代码的标志,该光学代码具有最大值、少量的滚动旋转、少量的俯仰旋转以及可能显著的偏航旋转。
在一些示例中,可参考各种术语,诸如以下。
在一些示例中,“对准图案”可以是矩阵符号体系中的限定位置中的固定参考图案,其使得解码软件能够在图像的适度量的失真的情况下重新同步图像模块的坐标映射。
在一些示例中,“斑点”可以是包含在四边形内的提取图像。
在一些示例中,“计时边缘”可以指对定时信息进行编码的光学代码的边缘。
在一些示例中,“计时图案”可以指定时或计时模块。
在一些示例中,“轮廓提取”可以是以下过程:使弯曲或轮廓化表面平坦化并将其解析为2维平坦图像,同时工作以用尽可能小的失真或低于阈值失真水平的失真来保持适当或有效的模块/代码透视。
在一些示例中,“编码区”可以是不被开销图案占用并且可用于编码数据和纠错码字的符号的区。在一些具体实施中,编码区可以包括版本和格式信息。
在一些示例中,“查找器图案”可以是用于识别/辨别光学代码符号的存在的模块的图案。在多分辨率代码上,查找器和计时图案可以由最大的模块制成。
在一些示例中,“固定图案”可以是光学代码符号的固定在适当位置的部件、部分或节段。这包括查找器图案、计时图案和附近的静区模块。
在一些示例中,“内核大小”可以是根据像素数量或其他测量限定的样本窗口的大小。该内核可用于执行数学形态学运算。
在一些示例中,“模块间隙”可以指代码周围的空间。模块间隙可以限定所需的静区,其中不存在代码。在一些标志具体实施中(在光线下是暗的),模块间隙可以是明亮像素的空间。
在一些示例中,通过结构化元素B对组A的腐蚀进行“形态开运算”膨胀,
Figure GDA0003531726570000251
其中
Figure GDA0003531726570000252
Figure GDA0003531726570000253
分别表示腐蚀和膨胀。开运算可以从图像的前景(通常作为亮像素)中移除小物体,将它们放置在背景中。
在一些示例中,“形态闭运算”是通过结构化元素B闭运算一组(二进制图像)A是该组的膨胀的腐蚀,
Figure GDA0003531726570000254
其中
Figure GDA0003531726570000255
Figure GDA0003531726570000256
分别表示膨胀和腐蚀。闭运算可移除前景中的小孔,将背景的小岛变为前景。
在一些示例中,“多分辨率”可意指在单个代码内具有多个模块大小类别的光学代码符号,其可以与单个分辨率光学代码不同。
在一些示例中,“遮挡”可意指由于障碍而无法读取标志的节段。这可以是部分的或全部的。
在一些示例中,“开销图案”可以是符号的开销部件,其包括符号的位置和大小调整特性所需的查找器图案和定时图案。
在一些示例中,“四边形”可以是限定光学代码的位置的平行四边形的四个角。
在一些示例中,“静区”可以是用于将光学代码与背景分离的缓冲区域。可以在构造缓冲器或模块间隙所需的空间模块的数量中指定静区大小。
在一些示例中,“拉默-道格拉斯-普克算法”可以指定一个或多个操作,给定由线段(折线)组成的曲线,找到具有较少点的类似曲线。该算法基于原始曲线和简化曲线之间的最大距离来限定“不相似”。简化曲线由限定原始曲线的点的子集组成。
在一些示例中,“反复位”可以定位或设置冗余地表示块中的节段的位,从而允许阻塞恢复。
在一些示例中,“回射”可以指设计成以最小量的散射和从宽范围的入射角背向反射在光源处增加的光量的表面或材料。
在一些示例中,“单个分辨率”可以指仅具有一个模块大小的光学代码的具体实施,其可以与多分辨率光学代码不同。
在一些示例中,“定时图案”可以是暗模块和光模块的交替序列,使得能够确定符号中的模块坐标。
在一些示例中,公式和方程中使用的数学符号在它们出现的公式或方程之后限定。为了本文档的目的,以下数学运算适用:
ο=形态开运算
·=形态闭运算
Figure GDA0003531726570000261
=膨胀
Figure GDA0003531726570000262
=腐蚀
图9示出了根据本公开的技术的光学代码的示例结构。为便于参考,模块位置由它们在符号中的行和列坐标限定,形式为(i,j),其中i表示模块所在的行(从顶部向下计数)并且j表示模块所在的列(从左到右计数),计数从0开始。因此,模块(0,0)位于符号的左上角。在一些示例中,在多分辨率光学代码中,存在多于一个模块大小。可以按模块大小对大小进行排序和参考。因此,最大模块类可被标记为1。大小1将具有比大小2更大的模块,大小2将具有比大小3更大的模块,等等。
在一些示例中,版本信息不被编码到光学代码中;而是针对候选图像检查所有查找器模板。在其他示例中,版本信息可以被编码到光学代码中。
在一些示例中,根据本公开实施的光学代码可以包括以下特性:
a)格式:
1)单分辨率代码,具有预先确定的遮挡恢复能力和数据容量的平衡。
2)多分辨率代码,具有多层编码信息和每层的遮挡恢复能力和数据容量的平衡。
b)可编码数据:
1)单分辨率:仅数字数据。有效数字的范围可以是1到2(#data位)。
2)多分辨率代码:每层一个数字数据。有效数字的范围可以是该层的1到2(#data位)。在双层多分辨率光学代码的一个具体实施中,第一层表示MUTCD:美国标志的统一交通控制装置手册(由联邦公路管理局公布)号。
c)数据的表示:
暗模块名义上是二进制“零”,并且光模块名义上是二进制“一”。对于某些应用,可以反转此表示。
d)符号大小(不包括静区):
1)单分辨率代码:宽度至少为5个模块并且高度为5个模块,尽管大于0的任何数字都是可能的。在一些示例中,代码没有上限,但示例最大高度或宽度为21个模块。在一些示例中,用于此类尺寸的最大大小可以是大于零的任何数字。
2)多分辨率代码:如由第1层模块限定的至少7个模块的宽度和7个模块的高度,尽管大于0的任何数字都是可能的。在一些示例中,没有限定的上限。在一些示例中,用于此类尺寸的最大大小可以是大于零的任何数字。
e)代码类型:矩阵
f)取向独立性:
是。在一些示例中,光学代码具有取向独立性。在其他示例中,光学代码可取决于取向。在一些示例中,固定取向在代码设计和解码算法中可允许某些优点。
在一些示例中,光学代码可使用反射率反转。符号在被标记时可能会读取符号,因此图像在光线下是暗的或在黑暗下是亮的。在一些示例中,规范基于浅色背景上的暗图像,但是在不是这样的情况下,则光模块可以被视为暗模块而暗模块被视为光模块。一些解码技术可能不会尝试解码标准码和反射率反转码两者;然而,同时解码两者也可以在其他示例中执行。
在一些示例中,重复位可以与光学代码一起使用。例如,为了另外提高遮挡恢复的可能性,光学代码可以利用重复位。
如图9所示,光学代码可以是矩形矩阵,其由根据由代码样式和数据有效载荷规定的规则定位或布置的一组正方形模块组成。
图10示出了根据本公开的技术的单分辨率光学代码。单分辨率光学代码可以是宽度至少为5个模块,并且高度为5个模块(不包括静区),尽管大于0的任何数字都是可能的。在一些示例中,代码的大小没有绝对上限。
图11示出了根据本公开的技术的多分辨率光学代码。多分辨率光学代码可以由各种大小的模块组成。模块仍可为正方形形状,并且可以被创建为使得特定分辨率数据有效载荷的所有模块具有相同的大小。在一些示例中,大小的参考模块相对于最大模块。在一些示例中,数据有效载荷被按模块大小排序和参考。在一些示例中,数据有效载荷1可以具有比数据有效载荷2更大的模块,数据有效载荷2将具有比数据有效载荷3更大的模块,等等。
在一些示例中,多分辨率光学代码的最小尺寸是宽度至少7个模块和高度7个模块,但是大于0的任何数字都是可能的。在一些示例中,多分辨率光学代码没有最大大小。在一些示例中,没有最大数量的数据有效载荷。在一些示例中,代码在大小上可以不大于15个模块,并且通常使用两个数据有效载荷。
图11示出了具有两个有效载荷的多分辨率代码的示例布局。在图11中,最大模块以及因此可以从最大距离读取的那些模块由编号的块表示。模块的第二分辨率由小写字母块表示。虽然在此代码中数据有效载荷1和数据有效载荷2两者的大小都是8位,但这不是必要条件。每个有效载荷的块大小可以与另一个有效载荷的块大小无关。实际上,数据有效载荷1块大小可以等于或小于任何其他数据有效载荷块大小。
在一些示例中,可以选择用于光学代码的查找器和计时图案以最小化或降低至低于模块查找代码和归一化物体姿态所需要的阈值。在一些示例中,可以减小该查找器和计时图案的大小,以产生更大百分比的代码空间来进行数据校正和纠错。
图12和图13示出了光学代码的查找器和计时图案。光学代码的查找器图案角可以或者总是与静区相反的颜色。计时图案可以沿顶边放置并在白色和暗模块之间交替。该操作的例外可以是当光学代码的宽度按模块的数量为偶数时。在这种情况下,中间的两个模块都是相同的颜色。在一些示例中,查找器和计时图案规则应用于单分辨率和多分辨率光学代码两者。在多分辨率代码上,查找器和计时图案可以由最大的模块制成。
在一些示例中,静区必须在光学代码的所有四个侧面上没有所有其他标记。查找器图案的宽度可以是至少1个模块,但是大于0的任何数字都是可能的。对于多分辨率代码,宽度可以至少是光学代码中包括的最大模块大小的宽度。对于反码样式,代码的所有模块可以被反转,包括静区,其成为代码周围的亮带,并且宽度增加到至少2个模块,尽管大于0的任何数字都是可能的。
当光学代码附连到回射制品(例如交通标志)时,然后背景可以充当足够的查找器图案。在此类示例中,可能不需要额外的查找器图案。可以在回射制品的外边缘上利用查找器和计时图案来创建光学代码。
在一些示例中,可以实施用于光学代码的重复位图案,以通过向块添加冗余来最小化或降低遮挡效果低于阈值。在一些示例中,可以定位重复位以在特定块上实现更高级别的遮挡。
图12-13示出了根据本公开的技术的不同计时图案。图12示出了偶数大小的计时图案。图13示出了奇数大小的计时图案。
图14示出了根据本公开的一种或多种技术的可以包括在光学代码中的重复或反复位。例如,图14示出了使用重复位的示例。在图14中,来自数据和纠错块的某些位被重复并用在填充位中。这在解码中具有允许更大的潜在遮挡恢复的效果。
在一些示例中,编码过程可由一个或多个计算装置实现。编码过程可以将数据转换为包括在光学代码中的图案或其他视觉标记。以下操作提供了用于单分辨率光学代码的编码的示例,并且可以通过重复每个数据层的操作来创建多分辨率。
操作1:代码选择。计算装置例如基于参数诸如数据块和纠错块的数量或任何其他合适的参数来选择光学代码。
操作2:数据编码。计算装置将数字或其他值转换为二进制位流,并将位流分解为所选择的块大小。
操作3:计算装置可以计算纠错码,其可以包括计算编码数据的纠错数据块。
操作4:计算装置可以通过附加来自每个块的数据和纠错码并添加反复或填充位来构建最终消息。
操作5:计算装置可以结合构造装置基于最终消息将模块放置在矩阵中。计算装置可以使构造装置将码字模块与查找器和计时图案一起放置在矩阵中。对于多分辨率光学代码,在一些示例中,查找器和计时图案可以仅放置在最大模块上。
在一些示例中,编码过程可以包括一个或多个操作。例如,计算装置可以确定给定光学代码布局的预期数据有效载荷。要编码的数字可以转换为大端二进制数。然后,计算装置可以用前导零填充该数字直到消耗整个数据位空间。
在一些示例中,计算装置可以将得到的位流分成可变位码字。计算装置可填充字符以填入版本所需的多个数据码字。在一些示例中,计算装置可以分析输入数据串以确定其内容并选择默认或其他适当的扩展信道解释(ECI)和适当的图案以对每个序列进行编码,如本公开中所描述的。
在一些示例中,计算装置可以利用纠错码字执行编码。计算装置可以执行一个或多个操作以为单和多分辨率光学代码两者生成数据和纠错码字。例如,计算装置可以确定给定光学代码布局的预期数据有效载荷。要编码的数字或值可以由计算装置转换为大端二进制数。该数字可由计算装置用前导零填充直到消耗整个数据位空间。
本文描述了用于符号打印和标记的各种技术。对于单分辨率光学代码,X维度(例如,模块的宽度)可以由用户或机器生成的输入指定,该输入指定参数,包括但不限于:要读取的距离,针对固定的物理大小符号的期望的数据有效载荷,使用的扫描技术,和用于产生符号的技术,或任何其他合适的参数。对于Y维度,在一些示例中,模块的高度可以等于X维度,而在其他示例中,X和Y维度可以不同。
在一些示例中,对于最小静区,计算装置可以不限定静区(白色在黑暗中,具有不可见光谱),但是在其他情况下,可以使用最少一个模块相当区域,至少2个模块可以使用静区,或任何其他大于1的数字。
对于多分辨率光学代码,X维度,例如,最小模块的宽度可以由用户或机器生成的输入指定,该输入指定参数,包括但不限于:要读取的距离、针对固定的物理大小符号的期望数据有效载荷、使用的扫描技术、用于产生符号的技术,或任何其他合适的参数。
在一些示例中,每个较大的模块大小类可以是最小模块大小的倍数。所利用的模块大小类的数量可以基于要在光学代码中编码的数据量,并且可以在更大距离处解码的更大模块类和可以包含更高数据密度的更小模块类的平衡可以生成。在一些示例中,计算装置可确定两个模块类大小,但任何限定的类大小都是可能的。对于Y维度,在一些示例中,模块的高度可以等于给定模块类的X维度,而在其他示例中,X和Y维度可以不同。
在一些示例中,静区大小基于计算装置用于光学代码的最大模块大小,查找器、定时和其他开销模块也是如此。最小静区可以是一个1类(最大)模块,并且在一些示例中,可以有2个静区缓冲器模块。在其他示例中,最小静区和静区缓冲器大小可以是大于零的任何数字。
在一些示例中,可以使用人类可读或人类可解释的描述。人类可解释可以意指旨在用于人类理解的形式。在一些示例中,伴随的人类可读描述可伴随光学代码。然而,在其他示例中,数据字符的人类可读解释可能不实用。作为另外一种选择,描述性文本而不是文字文本可以伴随光学代码。可以不指定字符大小和字体,并且可以在光学代码周围的区域中的任何地方打印消息。在一些示例中,人类可读解释可以不干扰光学代码本身也不干扰静区,但是如果以不干扰功能的方式这样做,则可以在光学代码或其静区上方或下方打印。
在一些示例中,可限定和使用符号质量参数。对于网格不均匀性,可以通过使用查找器图案和对准图案作为锚点来计算网格,如通过使用本公开中提供的参考解码算法所定位的。在一些示例中,计算装置可以在代码被包裹到曲面上的情况下展平图像,以便评估网格的均匀性。在光学代码被体现在曲面上的情况下,网格非均匀性测量可以由计算装置在已经被展平的图像上执行。
对于扫描等级,扫描等级应为等级的最低(或低于阈值)等级,用于符号对比度、调制、固定图案损坏、解码、轴向不均匀性、网格不均匀性以及符号的单独图像中未使用的纠错。如果分析了多于一个图像,则整体符号等级可以是单独扫描的平均值。
在一些示例中,计算装置可以执行如本文所述的一个或多个解码操作。例如,计算装置可以获取光学代码的图像。计算装置可以定位(例如,识别)图像内的光学代码并将光模块和暗模块转换为1(亮)0(暗)(或者反转用于反码)。计算装置可以通过搜索候选代码样式的查找器来识别代码大小/样式。计算装置可以使用代码布局图提取里德-所罗门码字。对于包括多个分辨率的样式,计算装置可以一个或多个限定的分辨率重新采样代码,并使用一个或多个限定的布局来提取附加的码字。在一些示例中,计算装置可以针对每个提取的代码分辨率配置里德-所罗门码解码器用于适当的码字大小和纠错级别,并然后计算装置可以检测并校正每个的错误。计算装置可以生成或以其他方式提供有效载荷,该有效载荷是可校正的或者不需要校正以用于在本公开中描述的一个或多个操作中的另外处理。
图15示出了根据本公开的技术的参考解码算法。参考解码算法可实施回射范式,其中所识别的光学代码可由光源照明,该光源与成像传感器并置,光强度足以使代码比周围环境更亮。
如图15中所示,参考解码可以包括一个或多个包括四边形提取的操作。例如,计算装置可以确定图像的一个或多个阈值(例如,对于8位图像为80、50、33),其比图像中的非回射元素(来自太阳或其他光源的环境照明)更亮。计算装置可以使用该阈值将图像转换为阈值像素之上和之下的二进制图像(或多个图像)。对于反码的第二遍,计算装置可以将210、230的像素值阈值用于8位图像。
计算装置可以执行具有小内核大小的形态开运算(例如:3×3像素矩形,尽管大于0的任何数字都是可能的)以去除图像中的点反射元素和其他明亮伪像。在一些示例中,对于具有反码搜索的第一遍,可以跳过该操作。计算装置可以执行形态闭运算操作以将光学代码模块连接成单个斑点,或者用于反码以填充周围亮静区中的孔/缺陷。对于反码,该内核大小可以是小的,诸如9×9px(尽管大于0的任何数字都是可能的),因为图像可以在制品周围具有明亮的大部分连续的静区,光学代码在该制品上体现。对于非反码,计算装置可以使用在不同大小/标度下的多个形态开运算核处理代码(例如15×15、45×45、90×90,尽管大于0的任何数字都是可能的)。
在一些示例中,计算装置可以使用拉默-道格拉斯-普克算法来将轮廓重新近似为四边形。计算装置可以使用近似精度(ε),其可以将长边减小到单个区段(例如,轮廓周长的0.2%)。在一些示例中,如果剩余大于4个区段(具有弯曲角、未被很好地表示为四边形的形状的标志,等等),则计算装置可以使用最长的4以及它们的交叉点的计算来拉出边界四边形。作为另外一种选择(或除此之外),计算装置可以调整ε直到仅剩下4个区段(单独使用,没有边界框完成倾向于导致更多变化的四角选择)。在一些示例中,计算装置可以检查所得到的四边形的纵横比(例如:0.3至3)和角部角度(例如:std(角度)<10度)以丢弃显著不同于(例如,大于阈值)矩形的候选者。
在一些示例中,参考解码算法可以执行斑点提取。例如,计算装置可以对四边形的四边形区执行透视变换到标准化大小(例如:各种代码大小边长的公倍数,11×11和9×9->99×99,尽管大于0的任何数字都是可能的。如果搜索反码,则可提供过大的分辨率以确保对于制品上的模块显著大于2ppm,例如:297×297,但大于0的任何数字都是可能的。在8×8邻域上使用更高阶插值(诸如兰索斯插值)可以保留代码边缘。
在一些示例中,计算装置可以执行第二或多个附加遍,如果搜索反码则可以使用该附加遍。计算装置可以从左边缘修剪5%的宽度,从右边缘修剪宽度的5%,从顶部修剪5%的高度,从底部修剪5%的高度。在当前实例中,5%是示例,尽管可以使用大于1%的任何其他百分比(例如,1%至25%的范围)。计算装置可以从图像中减去5%百分位值(变暗代码)。在一些示例中,计算装置可以将最大值和最小值归一化为0至255。计算装置可以应用具有1和4×4网格的剪辑限制的对比度受限自适应直方图均衡。在其他示例中,剪辑限制和网格大小可以是大于1的任何数字。计算装置可以反转图像(例如,255-(像素值))。计算装置可以在每个边缘上用平均值填充55个像素(或大于零的任何其它合适的数字)(大于稍后用于变形闭运算的最大内核)。
计算装置可以重复四边形和斑点提取并且传递到查找器搜索的下一阶段。在一些示例中,对于斑点提取,计算装置可以用像素值210和230替换四边形提取中的阈值,但是大于0的其他示例阈值是可能的。计算装置可以使用3×3变形开运算内核,尽管在每个维度上大于0的其他维度都是可能的。计算装置可以用25×25、35×24、45×45替换用于形态闭运算的内核大小,尽管各自大小都大于0的任何其他维度都是可能的。计算装置可以使用108×108的输出斑点大小来进行斑点提取,尽管各自大小都大于1的任何其他维度都是可能的。计算装置可以应用直径为3的双边滤波器(尽管大于0的任何直径都是可能的),以及对于空间和颜色都为40的Σ,尽管大于0的任何Σ都是可能的。在一些示例中,计算装置可以将最大值和最小值归一化为0至255。计算装置可以反转图像(255-(像素值))。如果仅搜索反码,则计算装置可以从第一遍中丢弃源斑点。
在一些示例中,参考解码算法可以执行查找器搜索。例如,由计算装置实现的查找器搜索可以内插四边形到被搜索的光学代码形状(例如:11×11、9×9、N×N或N×M),阈值,二值化,并且与变化旋转中的查找器模块配置进行比较。计算装置可以通过有多少模块与查找器区匹配来对候选者进行评分。
在一些示例中,参考解码算法可以解码来自光学代码的数据。例如,计算装置可以使用来自查找器搜索的一个或多个最高或高评分候选者的二值化图像,并根据对应的代码布局提取码字。在一些示例中,亮节段反映二进制1,暗节段反映零(对于反码,这在原始图像捕获中是相反的)。计算装置可以内插原始图像并对存在的代码的任何附加分辨率进行二值化,并使用适当的布局图提取码字。计算装置可以针对对应的代码样式的一个或多个块大小、一个或多个可校正块来配置里德-所罗门纠错,并且如本公开中所描述的那样执行纠错。在一些示例中,计算装置可以生成或提供用于在本公开中描述的一个或多个操作中使用的正确或可使用纠错来校正的代码的一个或多个有效载荷。
图16至图17示出了根据本公开的技术的制品上体现的光学代码的模块间隙。图16示出了在边缘处具有1个模块间隙的样本光学代码布局。图17示出了菱形制品形状(例如,基础设施制品)上的交替45度逆时针旋转布局。
光学代码可以体现在制品或标志上,使得如图16至图17所示的代码的计时边缘朝向标志的顶部(例如,图16)。在一些示例中,这样做是为了当计算装置定位和解码场景内的代码时可以进行额外的假设。在一些示例中,光学代码可以从标志边缘延伸多达1个模块,以便留下静区,但也最大化代码内的模块大小。在一些示例中,没有最大和/或最小静区。
对于反码样式,静区/边缘间隙可以增加到最小2个模块的大小。在这种配置中可能没有最大静区,但是第一遍期间的斑点提取可能在代码模块上留下足够的分辨率用于解码(至少2ppm但可能更大)。
允许一些变化以实现相对于标志大小的代码最大大小,诸如利用菱形标志,其中计时边缘可以取向为与标志的左上边缘平行(逆时针旋转45度,图17)。然而,如果光学代码可以放置在具有非旋转布局中的至少一个间隙模块的标志上(沿上边缘计时),则这可以改善和/或最大化成像性能。
在一些示例中,计算装置可以执行错误检测和/或使用校正本原多项式。里德所罗门纠错可以由计算装置实施以在伽罗瓦域(gf)下操作。光学代码可以强制该域为gf(2m)类型。在一些示例中,m的值为6或8。尽管m可以是大于零的任何值,但是可以选择诸如6或8的值作为代码密度/代码大小和解码误报率之间的折衷。在一些示例中,随着m的值增加,光学代码将在大小上更大并且具有更低的解码误报率。
表2提供了域大小高达gf(216)的本原多项式。
Figure GDA0003531726570000351
Figure GDA0003531726570000361
表2:给定伽罗瓦域的本原多项式
在一些示例中,计算装置可以在gf(2m)下使用里德所罗门纠错算法来编码和/或解码本公开的光学代码。有许多可能的算法来解码里德所罗门码。以下操作是根据本公开的计算装置所使用的操作,尽管许多其他操作也是可能的。计算装置可以在给定接收的码字消息和纠错符号的数量的情况下计算校正子多项式。计算装置可以假设不处理擦除并且从原始校正子计算福尼校正子。计算装置可以使用伯莱坎普-梅西算法来计算错误定位多项式。计算装置可以使用利用错误定位多项式的钱氏搜索算法来计算错误位置。给定错误位置,计算装置可以解决错误并返回结果数据。
图18示出了根据本公开的技术的具有固定图案信息的光学代码。对于光学代码的固定图案损坏,可以评估包括但不限于以下的特征:(a)查找器图案包括:左上两模块查找器图案和4个静区模块(查找器1L)、右上两模块查找器图案和4个静区模块(查找器1R)、左下3模块查找器图案和5个静区模块(查找器2L)、右下3模块查找器图案和5个静区模块(查找器2R);以及(b)定时信息,其包括左右查找器之间的图案化模块行(计时)。
对于固定图案损坏分级,计算装置可以基于在该区段内不正确评分的模块的数量来对固定图案的每个区段的损坏进行分级。然后,计算装置可以基于任何单独区段的最低分数来分配整体固定图案损坏等级。
计算装置可以对候选灰度图像执行图像二值化。(基于最小和最大灰度值之间的中点计算阈值。对于中点以上的任何内容,计算装置可以评分为1,并且对于以下的任何内容,评分为0。)
对于每个区段,按照以下过程进行评分,计算装置可以(a)将得到的二值化模块与给定区段的每个模块的预期值进行比较(b)计算不一致的数量,以及(c)基于如在下表3中评分的错误数量来应用区段等级:
Figure GDA0003531726570000371
表3:固定图案区段的评分表
在一些示例中,扫描等级可以是根据ISO/IEC 15415评估的标准参数的等级中的最低等级,以及根据本公开评估的固定图案损坏的等级。
在一些示例中,动态环境诸如工作区可能为自动或半自动车辆提供更多困难。例如,依靠增强的地图和GPS可能具有局限性,因为危险或工人可以在每分钟或每小时的基础上动态地重新定位。当在车辆诸如自动、半自动或视觉辅助车辆中实施时,计算装置540可以提供具有如本公开中描述的代码的实时导航标记,其允许此类车辆可靠地定位人和装置并且导航通过此类区域,即使代码的部分被区域中的其他物体或遮挡物视觉遮挡。在一些示例中,如本公开中所描述的,代码对于人眼是不可见的,但是在特定波长的光中对于商业上可获得的机器传感器是可见的。可以附接到工作区装置的这些唯一的机器可读代码可以提供精确的物体检测和快速处理,以实现自动、半自动或视觉辅助导航。这样,包括诸如本公开中描述的计算装置和图像捕获装置的车辆可以响应于确定在一个或多个代码中编码的信息而改变其操作。
在一些示例中,用于读取本公开中的此类代码的机器可读光学代码和系统与现有的统一交通控制装置手册(MUTCD)规则和/或与传统工作区材料兼容。在一些示例中,本公开的机器可读光学代码可以提供用于车辆的更快和/或更准确的检测和处理的信息,而不是用于导航车辆的其他模态(例如,GPS、地图等)。在一些示例中,对于在其上体现代码的每种特定类型的制品,通用机器可读光学代码可以是标准化的或恒定的。在一些示例中,不同的机器可读代码可以用于特定工作区或其他有界区或区域中的不同类型的制品。在一些示例中,机器可读代码可以包括光学元素的唯一空间配置和/或在其中编码的代表人或工人的信息。
在一些示例中,定位数据可以在机器可读代码中编码,其中此类定位信息指示关于制品或制品的周围区域的地点特定信息,并且在一些示例中,可能在GPS或地图中不可用,因为动态改变代码所在的环境。除了改善标志的分类和数据质量之外,基础结构制品还可提供补充由高清晰度映射提供的位置数据的机会。地图绘制公司正在创建极其详细和动态的地图,以帮助驾驶员和自动车辆规划路线并将车辆正确定位在道路上。当前的高清(HD)映射依赖于对SIFT(尺度不变特征变换)特征的连续分析以提供定位。为了开发可靠的特征,可以发生数据密集映射并且由车辆以可访问的方式存储以供参考。在一些实例中,这既耗时又昂贵(在经济和计算方面)。在一些实例中,用作SIFT特征的地标也可能会发生变化,在车辆试图执行其SLAM(同时定位和映射)时对车辆提出挑战。
本公开的技术可以通过将信息嵌入到可以给出精确GPS信息的标志中来减轻计算开销,以及减少将SIFT特征与点云数据匹配的模糊性或容易出错的动作。
一些光学代码可包含高精度GPS坐标以及标志唯一的标识符。光学代码上的查找器和定时模块可允许使用平面姿态估计技术来进行准确的读取距离矢量确定。组合该距离矢量和解码的GPS坐标的计算装置指定参考位置以比较当前GPS坐标,提供和偏移/漂移/纠错并因此定位,即使在GPS数据可能不可靠的城市峡谷(例如)中也是如此。
作为示例,车辆机器视觉系统捕获红外光中的标志图像,从而暴露其嵌入的光学代码。查找器模块大小和偏斜允许计算装置将该图像归一化回到正方形。可以通过在两个分离的查找器模块之间扩展的多个像素来测量模块的大小。像素计数与像素大小相关,该像素大小与距离成比例,允许计算装置基于图像的偏斜量和像素大小确定矢量,以告知到标志的特定距离和方向。利用标志位置的高精度GPS坐标和相机所在位置的准确投影,只要车辆知道相机在车辆上的位置,现在可以通过计算装置从提供的标志GPS和适当的平移矢量确定车辆的GPS位置。
使用唯一识别的道路标志或其他制品进行定位可能优于依赖SIFT特征,因为标志可以主动确认坐标位置和标志ID,使得不太可能发生不正确或错误的匹配。点云数据或比例不变特征列表实际上可能不具有除形状本身之外的任何唯一标识符。这通常使车辆合理地确定,但不确定它是否选择了一组点或特征来与地球上的特定地点相关。意思是,车辆的识别可能是正确的,但可能是不正确的,并且车辆将不知道,直到它现在开始错过预期的特征,因为它已经错误地定位。使用光学代码进行定位的本公开的技术可以提供改善的置信度和/或确定性。
使用具有唯一ID和高精度位置的标志或其他制品可以提供确认或附加置信度信息,以识别正确的标志并验证其位置。即使车辆不需要使用所存储的标志的GPS坐标,车辆也可以将GPS坐标与预期的SIFT特征匹配。这可以为该SIFT特征提供肯定的ID,这可以使该相关联中的信任水平提高。在一些示例中,可以引入安全元素以证明特定标志是所说的确切标志,并且不是欺骗的或以其他方式无效的。
在一些示例中,光学代码可以用作地面实况的来源以训练其他系统或模型。示例模型可以包括神经网络、SVM分类器或任何其他监督学习模型。以光学代码编码的数据可以用作地面实况信息以转换此类模型。作为示例,来自光学代码的数据(诸如定位数据)可以与任何其他特征一起在特征矢量中构建,并且用于对例如图像数据进行分类。示例分类可以包括分类图像数据是否指示特定道路标志。通过在应用于模型的特征矢量中包括地面实况信息,模型可以更准确地将图像数据分类为包括特定道路标志。数字地,与非数字特定数据(例如,解析不良的图像数据)结合使用的特定数据(例如,具有一些ECC的光学代码数据)可以改善非数字特定数据的分类。尽管在对道路标志的图像数据进行分类的情境中进行了描述,但是使用来自光学代码的地面实况的技术可以更一般地应用于使用数字特定数据来使非数字特定数据的分类器更准确的任何场景。此类技术可以为分类器提供额外信号,或者作为检查来操作以验证分类器的结果是否正确。
在一些示例中,本公开的机器可读代码可以与一个或多个传感器兼容,诸如雷达、光检测和测距(LIDAR)、近红外和远红外,或任何其他合适的技术。在一些示例中,实施本公开的技术的一个或多个车辆可以使用V2X或其他合适的无线技术来交换从本公开的机器可读代码解码的信息。在一些示例中,本公开的机器可读代码可以在制品构造期间直接体现在制品上,或者可以稍后用贴花或其他层进行改装,该贴花或其他层稍后应用于现有制品。
本公开可以提供优于现有条形码技术的各种优点。例如,本公开可以提供由机器视觉系统在与条形码不同的距离处读取的不同信息。本公开可以通过使用内容和情境光学元素来提供比可以在传统条形码中编码的信息更多的在2D条形码中编码的信息。本公开可以通过使用回射基底提供更简单和更高密度的信息编码。本公开的一些实施方案可以提供减少数量的查找器光学元素,而不会显著增加错误代码发现,并且同时允许相同代码区域的更大数据有效载荷。本公开还可以提供代码设计中的灵活性,使得可以做出有意的决定以优先考虑2D代码设计的各个方面,包括查找器光学元素的复杂性、码字大小、代码的物理面积以及要编码的数据量,同时有意权衡设计选择的成本,诸如较少的数据、较少的有效数据恢复或增加的错误正代码识别。本公开可以提供具有不同形状的代码的创建,包括不同于1:1(矩形)的纵横比,以最大化应用区域的大小。
在一个实例中,本公开包括多维机器可读光学代码。光学代码包括多个查找器光学元素、多个情境光学元素和多个内容光学元素。查找器光学元素以图案布置并且能由机器视觉系统从第一距离检测。情境光学元素表示情境信息并且能由机器视觉系统从第一距离检测。内容光学元素表示内容信息,并且不能由机器视觉系统从第一距离检测到,但是可由机器视觉系统能从第二距离检测到,其中第二距离小于第一距离。
在一些实例中,光学代码包括以包括行和列的矩阵配置进行布置的多个光学元素。
在一些实例中,查找器光学元素使机器视觉系统能够在图像内将光学代码定位。
在一些实例中,光学代码包括少于36个查找器光学元素。
在一些实例中,查找器光学元素以中心交叉图案布置。
在一些实例中,情境光学元素和内容光学元素以允许里德-所罗门纠错的方式布置。
在一些实例中,光学代码表示至少756位数据。
在一些实例中,内容光学元素包括指导信息。
在一些实例中,情境光学元素包括安装、位置或制造商信息。
在一些实例中,本公开包括标志,该标志包括基底、膜层和本文所述的二维机器可读光学代码。在一些实例中,标志包括回射层。
本公开还包括用于读取二维机器可读光学代码的系统。该系统包括标志,该标志包括基底和二维机器可读光学代码。光学代码包括多个查找器光学元素,该查找器光学元素以图案布置并且能由机器视觉系统从第一距离检测。光学代码还包括表示情境信息的多个情境光学元素,其中情境光学元素能由机器视觉系统从第一距离检测。光学代码还包括表示内容信息的多个内容光学元素,其中内容光学元素在第一距离处不能由机器视觉系统检测,但是能由机器视觉系统从第二距离检测,并且其中第二距离小于第一距离。该系统还包括用于检测和处理二维机器可读光学代码的机器视觉系统。
本公开还包括读取二维机器可读光学代码的方法。该方法包括利用机器视觉系统从第一距离检测以图案布置的多个查找器光学元素。该方法还包括利用机器视觉系统从第一距离检测表示情境信息的多个情境光学元素。该方法还包括利用机器视觉系统从第二距离检测表示内容信息的多个内容光学元素,其中内容光学元素在第一距离处不能由机器视觉系统检测,并且其中第二距离小于第一距离。
在一些实例中,光学代码包括以包括行和列的矩阵配置进行布置的多个光学元素。
在一些实例中,查找器光学元素使机器视觉系统能够在图像内将光学代码定位。
在一些实例中,光学代码包括少于36个查找器光学元素。
在一些实例中,查找器光学元素以中心交叉图案布置。
在一些实例中,情境光学元素和内容光学元素以允许里德-所罗门纠错的方式布置。
在一些实例中,光学代码的大小为7×7并且表示至少63位数据。
在一些实例中,内容光学元素包括指导信息。
在一些实例中,情境光学元素包括安装、位置或制造商信息。
条形码已经用于各种车辆应用中。当用于车辆应用时,条形码可以在车牌或标志上。可以使用机器视觉系统来读取条形码,在一些实例中,机器视觉系统可以是自动车辆辨别(AVR)系统。此类系统的示例性用途是,例如,自动收费(例如,电子收费系统),交通执法(例如,红灯运行系统、速度执行系统)、检测在交通标志或交通基础设施的其他元素上的信息、搜索与犯罪相关联的车辆、访问控制系统和设施访问控制。理想的机器视觉系统提供高度准确(即100%准确)的结果,并且能够以高准确度从远处读取条形码。
读取车牌、标志或任何其他不受控制的环境上的条形码会带来各种挑战,包括:(1)车牌或标志材料的改变的反射属性;(2)机器视觉系统的改变的分辨率;(3)与具有条形码的物体相比,机器视觉系统安装到的物体的相对速度;(4)环境照度差异大;(5)车牌或标志安装位置和/或倾斜;(6)由例如其他车辆、泥土、雪、道路上的制品、天然屏障对车牌或标志的遮挡,(7)道路的垂直或水平曲率等。
标志和车牌上的条形码已知在许多专利和申请中论述。一些公布(例如,欧洲专利公布0416742和美国专利6,832,728)论述在车牌的机器可读部分上包括拥有者信息、序列号、车辆类型、车辆重量、车牌号码、州、车牌类型和郡中的一者或多者。PCT专利公布WO2013-149142描述了一种条形码,其中在两种不同条件下获得成帧和可变信息。在一些实施方案中,成帧信息是由人类可读信息提供,且可变信息是由机器可读信息提供。欧洲专利公布0416742、美国专利6,832,728和PCT专利公布WO 2013-149142均以其全部内容并入本文。
一些制造高对比度车牌和标志的现有技术方法涉及包括在红外波长范围内吸收并在可见波长范围内透射的材料。例如,美国专利6,832,728描述的车牌包括透射可见光、不透射红外光的标记。美国专利7,387,393描述了包括红外阻挡材料的车牌,其在车牌上产生对比度。美国专利3,758,193描述了透射红外光、吸收可见光的材料,其用于逆向反射片材上。美国专利3,758,193和7,387,393的全部内容通过引用并入本文。
在2017年4月14日提交的由代理人案卷号76355US003和78874US003识别的美国临时申请的全部内容通过引用并入本文。
在美国专利公布2010-0151213中描述了另一种制造用于ALPR系统的高对比度车牌的方法,并且该方法涉及将红外反射材料定位成邻近光学活性(例如,反射或回射)基底,使得当光学活性基底被红外辐射源照射时,红外反射材料形成可由红外传感器读取的图案。美国专利公布2010-0151213的全部内容通过引用并入本文。
对于本领域的技术人员将显而易见的是,关于上述实施方案中的任一个所述的特征可在不同实施方案之间互换应用。上述实施方案是用于说明本公开的各种特征的示例。
在本说明书的整个说明和权利要求中,词语“包括”和“包含”及其变体意味着“包括但不限于”,并且它们不旨在(并且不)排除其他部分、添加剂、组分、整体或步骤。在本说明书的整个说明和权利要求中,除非上下文另有要求,否则单数形式包含复数形式。特别地,在使用不定冠词的情况下,除非上下文另有要求,否则说明书应被理解为考虑多个以及单一性。
结合本公开的特定方面、实施方案或示例描述的特征、整体、特性或集合应被理解为适用于本文描述的任何其他方面、实施方案或示例,除非与其不相容。本说明书(包括任何所附权利要求、摘要和附图)中公开的所有特征和/或如此公开的任何方法或过程的所有步骤可以任何组合进行组合,除了其中此类特征和/或步骤中的至少一些互斥的组合。本公开不限于任何前述实施方案的细节。本公开延伸至本说明书(包括任何所附权利要求、摘要和附图)中公开的特征中的任何新颖特征或任何新颖特征组合,或如此公开的任何方法或过程的步骤的任何新颖步骤或任何新颖步骤组合。
在一个或多个示例中,所述的功能可在硬件、软件、固件或它们的任何组合中来实现。如果以软件实现,则所述功能可作为一个或多个指令或代码存储在计算机可读介质上或经由计算机可读介质传输,并由基于硬件的处理单元执行。计算机可读介质可包括计算机可读存储介质,其对应于如数据存储介质的有形介质,或通信介质,其包括例如根据通信协议促进将计算机程序从一处传送到另一处的任何介质。以该方式,计算机可读介质通常可对应于(1)非暂态的有形计算机可读存储介质或(2)如信号或载波的通信介质。数据存储介质可为可由一个或多个计算机或一个或多个处理器访问以检索用于实现本公开中所描述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可包括计算机可读介质。
作为示例而非限制,此类计算机可读存储介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储装置、闪存或者可用来以指令或数据结构的形式存储所需的程序代码并且可由计算机访问的任何其它介质。而且,任何连接均被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或无线技术如红外线、无线电和微波从网站、服务器或其它远程源传输指令,则同轴电缆、光纤电缆、双绞线、DSL或无线技术如红外线、无线电和微波包括在介质的定义中。然而,应当理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其它瞬态介质,而是针对非瞬态的有形存储介质。所使用的磁盘和光盘包括压缩盘(CD)、激光光盘、光学盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁的方式再现数据,而光盘通过激光以光学方式再现数据。上述的组合也应该包括在计算机可读介质的范围内。
指令可由一个或多个处理器如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路执行。因此,所使用的术语“处理器”可指任何前述结构或适用于实现所描述的技术的任何其它结构。另外,在一些方面,所描述的功能可在专用硬件和/或软件模块内提供。而且,所述技术可完全在一个或多个电路或逻辑单元中实现。
本公开的技术可在包括无线手持机、集成电路(IC)或一组IC(例如,芯片组)的各种各样的装置或设备中实现。在本公开中描述了各种部件、模块或单元以强调被构造成执行所公开的技术的装置的功能方面,但是不一定需要通过不同的硬件单元来实现。相反,如上所述,各种单元组合可在硬件单元中组合或者通过包括如上所述的一个或多个处理器的互操作硬件单元的集合,结合合适的软件和/或固件来提供。
应当认识到,根据示例,本文所述方法中的任一种的某些动作或事件可以不同的顺序执行,可一起添加、合并或省去(例如,不是所有所述动作或事件对于方法的实践都是必需的)。此外,在某些示例中,动作或事件可例如通过多线程处理、中断处理或多个处理器同时而不是顺序地执行。
在一些示例中,计算机可读存储介质包括非暂态介质。在一些示例中,术语“非暂态”指示存储介质没有在载波或传播信号中实施。在某些示例中,非暂态存储介质存储可随时间改变的数据(例如,在RAM或高速缓存中)。
已描述了各种示例。这些示例以及其它示例均在如下权利要求书的范围内。

Claims (15)

1.一种制品,所述制品包括:
基底,所述基底包括物理表面;
体现在所述物理表面上的光学代码,其中,所述光学代码包括父光学元素组和子光学元素组的分级结构,所述父光学元素组包括多个父光学元素,所述多个父光学元素各自具有第一大小,并且所述子光学元素组包括多个子光学元素,所述多个子光学元素各自具有小于所述第一大小的第二大小,
其中所述父光学元素组的每个父光学元素表示相应的编码位,由相应父光学元素表示的所述编码位至少部分地基于所述子光学元素组中的对应的子光学元素分组的累积视觉外观,并且每个父光学元素的累积视觉外观是指示在具有不同亮度的梯度值范围内的亮度的各个视觉梯度值,由所述相应父光学元素表示的编码位基于所述相应父光学元素相对于第一阈值的所述视觉梯度值,
其中所述子光学元素组的每个子光学元素表示相应的编码位,由所述子光学元素组的每个相应子光学元素表示的所述编码位至少部分地基于所述相应子光学元素的视觉外观,其中每个子光学元素的视觉外观是所述梯度值范围内的各个视觉梯度值,由所述相应子光学元素表示的所述编码位基于所述相应子光学元素相对于第二阈值的所述视觉梯度值,所述第二阈值和所述第一阈值不同,并且
其中由所述相应子光学元素表示的所述编码位不能从大于阈值距离的距离解码,并且其中由所述相应父光学元素表示的所述编码位能从大于所述阈值距离的距离解码。
2.根据权利要求1所述的制品,其中所述子光学元素组的每个子光学元素被包括在所述父光学元素组的一个父光学元素内。
3.根据权利要求1所述的制品,其中当对应于特定父光学元素的视觉梯度值小于所述第一阈值时,特定子光学元素的所述第二阈值小于所述第一阈值,对应于所述特定父光学元素的视觉梯度值基于包括所述特定子光学元素在内的所述子光学元素分组的累积视觉外观,并且
当对应于所述特定父光学元素的视觉梯度值大于所述第一阈值时,所述特定子光学元素的所述第二阈值大于所述第一阈值。
4.根据权利要求1所述的制品,其中所述父光学元素组和所述子光学元素组的每个相应光学元素表示一组编码位中的编码位,其中所述一组编码位基于所述相应光学元素的视觉可区分性是能区分的。
5.根据权利要求1所述的制品,其中所述父光学元素组和所述子光学元素组不包括在QR码中。
6.根据权利要求1所述的制品,其中所述距离是第一距离,并且其中所述第一距离是在视觉上彼此不同的所述子光学元素组中的一个或多个光学元素之间由图像捕获装置捕获的图像的分辨率在视觉上不区分、高于可区分性阈值的距离。
7.根据权利要求1所述的制品,
其中所述多个父光学元素表示描述所述制品的情境信息,并且其中所述多个子光学元素表示描述所述情境信息的内容信息。
8.根据权利要求1所述的制品,其中所述光学代码包括多个查找器光学元素,并且其中所述查找器光学元素使机器视觉系统能够在图像内将所述父光学元素组或所述子光学元素组中的一个或多个定位,并且其中所述多个查找器光学元素具有所述第一大小。
9.根据权利要求1所述的制品,其中所述制品包括交通标志、车牌、衣服或贴花中的至少一种。
10.根据权利要求1所述的制品,其中所述光学代码是取向独立的。
11.根据权利要求1所述的制品,其中所述制品还包括位于所述光学代码周围的静区,以在视觉上将所述光学代码与所述物理表面的另一区域分离,其中所述光学代码还包括查找器代码,并且其中:
所述查找器代码是深色并且所述静区是浅色;或者
所述查找器代码是浅色并且所述静区是深色。
12.一种方法,所述方法包括:
通过计算装置接收制品的图像,所述制品具有包括物理表面的基底,
其中所述图像包括体现在所述制品上的光学代码的表示,所述光学代码包括体现在所述物理表面上的父光学元素组和子光学元素组的分级结构,所述父光学元素组包括多个父光学元素,所述多个父光学元素各自具有第一大小,并且所述子光学元素组包括多个子光学元素,所述多个子光学元素各自具有小于所述第一大小的第二大小,
其中所述父光学元素组的每个父光学元素表示相应的第一位,其中由相应父光学元素表示的编码位至少部分地基于所述子光学元素组中的对应的子光学元素分组的累积视觉外观,其中每个父光学元素的累积视觉外观是指示在具有不同亮度的梯度值范围内的亮度的各个视觉梯度值,由所述相应父光学元素表示的所述编码位基于所述相应父光学元素相对于第一阈值的所述视觉梯度值,
其中所述子光学元素组的每个子光学元素表示相应的编码位,由所述子光学元素组的每个相应子光学元素表示的所述编码位至少部分地基于所述相应子光学元素的视觉外观,其中每个子光学元素的视觉外观是所述梯度值范围内的各个视觉梯度值,由所述相应子光学元素表示的编码位基于所述相应子光学元素相对于第二阈值的所述视觉梯度值,所述第二阈值和所述第一阈值不同,并且
其中由所述相应子光学元素表示的所述编码位不能从大于阈值距离的第一距离解码,由所述相应父光学元素表示的所述编码位能从大于所述阈值距离的所述第一距离解码,以及
使用在大于所述阈值距离的所述第一距离处捕获的所述图像,解码由所述相应父光学元素表示的所述编码位,而不解码由所述相应子光学元素表示的所述编码位;以及
至少部分地基于由所述相应父光学元素表示的所述编码位执行至少一个操作。
13.根据权利要求12所述的方法,其中解码由所述相应父光学元素表示的所述编码位的步骤包括:
至少部分地基于指示所述图像内的相应光学元素组的相应预定义位置的光学元素组位置数据,确定所述父光学元素组;
至少部分地基于指示所述光学元素组内的相应光学元素的相应预定义位置的光学元素位置数据,确定所述父光学元素组的所述相应父光学元素中的每个的相应梯度值;以及
至少部分地基于所述相应梯度值和编码位之间的映射来确定消息的至少一部分。
14.一种系统,所述系统包括:
图像捕获装置;和
计算装置,所述计算装置通信地联接到所述图像捕获装置,所述计算装置包括存储器和一个或多个计算机处理器,所述存储器包括以下指令,所述指令当由所述一个或多个计算机处理器执行时致使所述一个或多个计算机处理器:
接收制品的图像,所述制品具有包括物理表面的基底,
其中所述图像包括体现在所述制品上的光学代码的表示,所述光学代码包括体现在所述物理表面上的父光学元素组和子光学元素组的分级结构,所述父光学元素组包括多个父光学元素,所述多个父光学元素各自具有第一大小,并且所述子光学元素组包括多个子光学元素,所述多个子光学元素各自具有小于所述第一大小的第二大小,
其中所述父光学元素组的每个父光学元素表示编码位,其中由相应父光学元素表示的所述编码位至少部分地基于所述子光学元素组中的对应的子光学元素分组的累积视觉外观,其中每个父光学元素的累积视觉外观是指示在具有不同亮度的梯度值范围内的亮度的各个视觉梯度值,由所述相应父光学元素表示的所述编码位基于所述相应父光学元素相对于第一阈值的所述视觉梯度值,
其中所述子光学元素组的每个子光学元素表示相应的编码位,由所述子光学元素组的每个相应子光学元素表示的所述编码位至少部分地基于所述相应子光学元素的视觉外观,其中每个子光学元素的视觉外观是所述梯度值范围内的各个视觉梯度值,由所述相应子光学元素表示的所述编码位基于所述相应子光学元素相对于第二阈值的所述视觉梯度值,所述第二阈值和所述第一阈值不同,并且
其中由所述相应子光学元素表示的所述编码位不能从大于阈值距离的第一距离解码,由所述相应父光学元素表示的所述编码位能从大于所述阈值距离的所述第一距离解码,以及
使用在大于所述阈值距离的所述第一距离处捕获的所述图像,解码第一编码值,而不解码第二编码值;以及
至少部分地基于所述第一编码值执行至少一个操作。
15.一种构造具有包括物理表面的基底的制品的方法,所述方法包括:
接收指定包括父光学元素组和子光学元素组的分级结构在内的光学代码的打印规范,所述父光学元素组包括多个父光学元素,所述多个父光学元素各自具有第一大小,并且所述子光学元素组包括多个子光学元素,所述多个子光学元素各自具有小于所述第一大小的第二大小;以及
至少部分地基于所述打印规范用体现在所述物理表面上的所述父光学元素和所述子光学元素构造所述制品,其中所述父光学元素组的每个父光学元素表示相应编码位,由相应父光学元素表示的每个编码位至少部分地基于所述子光学元素组中的对应的子光学元素分组的累积视觉外观,所述子光学元素组的每个子光学元素表示相应的编码位,由所述子光学元素组的每个相应子光学元素表示的所述编码位至少部分地基于所述相应子光学元素的视觉外观,由所述相应子光学元素表示的所述编码位不能从大于阈值距离的第一距离解码,由所述相应父光学元素表示的所述编码位能从大于所述阈值距离的所述第一距离解码,
其中每个父光学元素的累积视觉外观是指示在具有不同亮度的梯度值范围内的亮度的各个视觉梯度值,由所述相应父光学元素表示的所述编码位基于所述相应父光学元素相对于第一阈值的所述视觉梯度值,并且
其中每个子光学元素的视觉外观是所述梯度值范围内的各个视觉梯度值,由所述相应子光学元素表示的编码位基于所述相应子光学元素相对于第二阈值的所述视觉梯度值,所述第二阈值和所述第一阈值不同。
CN201780060174.9A 2016-09-28 2017-09-27 具有包括物理表面的基底的制品及其构造方法 Active CN109791623B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662400865P 2016-09-28 2016-09-28
US62/400,865 2016-09-28
US201762485449P 2017-04-14 2017-04-14
US62/485,449 2017-04-14
PCT/US2017/053777 WO2018064198A1 (en) 2016-09-28 2017-09-27 Hierarchichal optical element sets for machine-read articles

Publications (2)

Publication Number Publication Date
CN109791623A CN109791623A (zh) 2019-05-21
CN109791623B true CN109791623B (zh) 2022-06-28

Family

ID=60051585

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780060174.9A Active CN109791623B (zh) 2016-09-28 2017-09-27 具有包括物理表面的基底的制品及其构造方法

Country Status (6)

Country Link
US (1) US10691908B2 (zh)
EP (1) EP3520030B1 (zh)
JP (1) JP2020502612A (zh)
KR (1) KR102494742B1 (zh)
CN (1) CN109791623B (zh)
WO (1) WO2018064198A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3520031B1 (en) 2016-09-28 2021-12-08 3M Innovative Properties Company Occlusion-resilient optical codes for machine-read articles
EP3520093B1 (en) 2016-09-28 2021-05-05 3M Innovative Properties Company Multi-dimensional optical code with static data and dynamic lookup data optical element sets
EP3520032B1 (en) 2016-09-28 2021-12-15 3M Innovative Properties Company Retroreflective multiscale codes
US11291255B2 (en) 2017-02-20 2022-04-05 3M Innovative Properties Company Personal protective equipment system using optical articles for integrated monitoring, alerting, and predictive safety event avoidance
WO2018151759A1 (en) 2017-02-20 2018-08-23 3M Innovative Properties Company Optical articles and systems interacting with the same
US11314971B2 (en) 2017-09-27 2022-04-26 3M Innovative Properties Company Personal protective equipment management system using optical patterns for equipment and safety monitoring
WO2019067823A1 (en) * 2017-09-29 2019-04-04 3M Innovative Properties Company PROBE MANAGEMENT MESSAGES FOR INFRASTRUCTURE QUALITY MEASUREMENTS FROM A VEHICLE
WO2019191235A1 (en) 2018-03-27 2019-10-03 3M Innovative Properties Company Identifier allocation for optical element sets in machine-read articles
US10733402B2 (en) 2018-04-11 2020-08-04 3M Innovative Properties Company System for vehicle identification
FR3082643A1 (fr) * 2018-06-18 2019-12-20 Soletanche Freyssinet Procede de geolocalisation et systeme pour sa mise en œuvre
EP3827199B1 (en) 2018-07-24 2024-04-10 3M Innovative Properties Company A patterned wavelength-selective image
US11514659B2 (en) 2018-10-04 2022-11-29 3M Innovative Properties Company Hyperspectral optical patterns on retroreflective articles
US11676401B2 (en) * 2018-10-04 2023-06-13 3M Innovative Properties Company Multi-distance information processing using retroreflected light properties
US10853609B2 (en) * 2019-03-12 2020-12-01 Microsoft Technology Licensing, Llc Hybrid two-dimensional barcode reader
CN110661775A (zh) * 2019-07-13 2020-01-07 中国矿业大学(北京) 基于特殊结构矿灯的井下人员识别定位及通信系统
US11755854B2 (en) 2020-07-14 2023-09-12 Apple Inc. Visual marker
US20210097313A1 (en) * 2020-11-27 2021-04-01 Intel Corporation Methods, systems, and devices for verifying road traffic signs

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5223701A (en) * 1990-10-30 1993-06-29 Ommiplanar Inc. System method and apparatus using multiple resolution machine readable symbols
CN1885311A (zh) * 2006-05-29 2006-12-27 深圳矽感科技有限公司 二维码及其编解码方法
CN101198961A (zh) * 2005-03-23 2008-06-11 微扫描系统公司 用于对高密度光学符号进行两级解码的设备和过程

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3758193A (en) 1971-07-02 1973-09-11 Minnesota Mining & Mfg Infrared-transmissive, visible-light-absorptive retro-reflectors
US4924078A (en) 1987-11-25 1990-05-08 Sant Anselmo Carl Identification symbol, system and method
IE902400A1 (en) 1989-08-03 1991-02-13 Minnesota Mining & Mfg Retroreflective vehicle identififcation articles having¹improved machine legibility
EP0484132B1 (en) * 1990-10-30 1999-06-30 Omniplanar, Inc. Multiple resolution machine readable symbols
US5591956A (en) 1995-05-15 1997-01-07 Welch Allyn, Inc. Two dimensional data encoding structure and symbology for use with optical readers
US5726435A (en) 1994-03-14 1998-03-10 Nippondenso Co., Ltd. Optically readable two-dimensional code and method and apparatus using the same
US6751352B1 (en) 2000-05-25 2004-06-15 Hewlett-Packard Development Company, L.P. Method and apparatus for generating and decoding a visually significant barcode
US6832728B2 (en) 2001-03-26 2004-12-21 Pips Technology, Inc. Remote indicia reading system
US7016518B2 (en) 2002-03-15 2006-03-21 Extreme Cctv Inc. Vehicle license plate imaging and reading system for day and night
JP3996520B2 (ja) 2003-01-30 2007-10-24 株式会社デンソーウェーブ 二次元情報コードおよびその生成方法
CN100481117C (zh) 2004-03-15 2009-04-22 武汉矽感科技有限公司 一种二维条码编解码方法
WO2006089247A2 (en) 2005-02-16 2006-08-24 Pisafe, Inc. Method and system for creating and using redundant and high capacity barcodes
JP4607179B2 (ja) 2005-04-06 2011-01-05 コンテンツアイデアオブアジア株式会社 透過型二次元コード、二次元コード付き物品、二次元コードの印刷方法および表示方法
US7387393B2 (en) 2005-12-19 2008-06-17 Palo Alto Research Center Incorporated Methods for producing low-visibility retroreflective visual tags
US8849943B2 (en) * 2005-12-19 2014-09-30 Palo Alto Research Center Incorporated Using multi-resolution visual codes to facilitate information browsing in the physical world
JP4442624B2 (ja) * 2006-06-22 2010-03-31 株式会社デンソーウェーブ 光学情報読取装置
GB2440003A (en) 2006-07-10 2008-01-16 Retainagroup Ltd Vehicle identification system consisting of a machine readable pattern on the vehicle and a imaging device to read the encoded pattern
ES2400064T3 (es) * 2006-07-19 2013-04-05 B-Core Inc. Método de reconocimiento, codigos ópticos y equipo de reconocimiento del codigo óptico
US20080233404A1 (en) 2007-03-22 2008-09-25 3M Innovative Properties Company Microreplication tools and patterns using laser induced thermal embossing
AU2008301206B2 (en) 2007-09-21 2011-06-02 Silverbrook Research Pty Ltd Coding pattern with data elements encoding by multi-pulse position modulation
JP5120156B2 (ja) 2008-03-27 2013-01-16 株式会社デンソーウェーブ 二次元コード
GB2458701C (en) 2008-03-28 2018-02-21 Pips Tech Limited Vehicle identification system
US8865293B2 (en) 2008-12-15 2014-10-21 3M Innovative Properties Company Optically active materials and articles and systems in which they may be used
CN101964145A (zh) 2009-07-23 2011-02-02 北京中星微电子有限公司 一种自动车牌识别方法及其系统
MX2012004107A (es) 2009-10-08 2012-05-08 3M Innovative Properties Co Lamina retrorreflectante de alto contraste y numeros de matriculas.
CN102103764A (zh) 2009-12-18 2011-06-22 沈阳新松机器人自动化股份有限公司 自助收费机
US8430315B2 (en) 2010-06-29 2013-04-30 SignaKey LLC Data encoding and decoding
US9092979B2 (en) 2010-12-14 2015-07-28 Xerox Corporation Automated license plate recognition system and method using human-in-the-loop based adaptive learning
US8807435B2 (en) 2011-04-06 2014-08-19 Eastman Kodak Company Decoding multi-resolution optical codes
JP5915296B2 (ja) * 2012-03-19 2016-05-11 富士通株式会社 コード画像読み取り装置、コード画像読み取り装置の動作方法およびコード画像読み取りプログラム
US9471863B2 (en) 2012-03-30 2016-10-18 3M Innovative Properties Company Retroreflective articles having a machine-readable code
US20140103123A1 (en) * 2012-10-16 2014-04-17 J. Andrew McKinney, Jr. System and Method for Encoding and Using a Digital Camouflage Pattern with a Two-Dimensional Code Linked to an Internet Uniform Resource Locator or Context-Sensitive Coded Message
US8851381B2 (en) 2012-10-17 2014-10-07 Rockwell Automation Technologies, Inc. Motor and motor drive diagnostic system using barcode
RU2681696C2 (ru) * 2013-11-07 2019-03-12 Скантраст Са Двухмерный штрихкод и способ аутентификации штрихкода
CA2944783A1 (en) 2014-04-10 2015-10-15 Anki, Inc. Generating and decoding machine-readable optical codes with aesthetic component
CN106663206A (zh) 2014-08-13 2017-05-10 3M创新有限公司 光学活性制品及其适用的系统
US9791865B2 (en) * 2014-10-29 2017-10-17 Amazon Technologies, Inc. Multi-scale fiducials
US10339804B2 (en) * 2014-12-30 2019-07-02 3M Innovative Properties Company Sign to vehicle identification system
WO2017151202A2 (en) 2015-12-08 2017-09-08 3M Innovative Properties Company Prismatic retroreflective sheeting including infrared absorbing material
EP3229047A1 (en) 2016-04-05 2017-10-11 3M Innovative Properties Company Retroflective article with infrared-detectable pattern
EP3520093B1 (en) 2016-09-28 2021-05-05 3M Innovative Properties Company Multi-dimensional optical code with static data and dynamic lookup data optical element sets
EP3520031B1 (en) 2016-09-28 2021-12-08 3M Innovative Properties Company Occlusion-resilient optical codes for machine-read articles
US11300716B2 (en) 2017-02-20 2022-04-12 3M Innovative Properties Company Retroreflecting article including retarder
EP3701319A4 (en) 2017-10-27 2021-07-28 3M Innovative Properties Company LIGHT GUIDE ARTICLE WITH A COMPLIANT DELAYER

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5223701A (en) * 1990-10-30 1993-06-29 Ommiplanar Inc. System method and apparatus using multiple resolution machine readable symbols
CN101198961A (zh) * 2005-03-23 2008-06-11 微扫描系统公司 用于对高密度光学符号进行两级解码的设备和过程
CN1885311A (zh) * 2006-05-29 2006-12-27 深圳矽感科技有限公司 二维码及其编解码方法

Also Published As

Publication number Publication date
EP3520030A1 (en) 2019-08-07
WO2018064198A1 (en) 2018-04-05
CN109791623A (zh) 2019-05-21
US20200034590A1 (en) 2020-01-30
KR102494742B1 (ko) 2023-02-01
US10691908B2 (en) 2020-06-23
EP3520030B1 (en) 2023-05-24
JP2020502612A (ja) 2020-01-23
KR20190060798A (ko) 2019-06-03

Similar Documents

Publication Publication Date Title
CN109791623B (zh) 具有包括物理表面的基底的制品及其构造方法
CN109791730B (zh) 一种利用多维机器可读光学代码的制品及制品构造方法和系统
CN109791624B (zh) 包含遮蔽弹性光学代码的机读制品
EP3520032B1 (en) Retroreflective multiscale codes
CN107924469B (zh) 对设置在光学活性制品上的符号中的数据进行编码
CN109476262B (zh) 使用安全要素对光学活性制品进行防伪检测
US11429803B2 (en) Identifier allocation for optical element sets in machine-read articles
US20180239981A1 (en) Increasing dissimilarity of characters disposed on an optically active article

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