在图像中搜寻鞍点状结构并测定其信息的系统和方法

文档序号:6517580阅读:593来源:国知局
在图像中搜寻鞍点状结构并测定其信息的系统和方法
【专利摘要】本发明提供了一种利用相对计算低密集度的程序在呈现鞍点状结构的图像中搜寻要素的系统和方法,说明性地,所述系统和方法包括一反关联过程及相关的反关联核心,所述系统和方法在图像内对多个像素邻域进行处理。该过程能够通过确定反关联核心在图像中的多个位置生成的是弱响应还是强响应对整个图像所有表现为鞍点状结构的要素进行快速分析。该反关联核心设计为无论鞍点状结构的方向如何都生成强响应。该反关联过程对图像中的多个像素邻域进行检测,从而定位任何鞍点状结构而不论其方向如何,因为该过程是与角度无关的。然后在图像内努力定位并解码ID拓扑结构时对该结构进行分组和改进(如在一网格中)。
【专利说明】在图像中搜寻鞍点状结构并测定其信息的系统和方法
[0001]相关申请
[0002]本申请要求于2012年10月31日提交的序列号为N0.61/721,012,题为“在图像中搜寻鞍点状结构并测定其信息的系统和方法”的美国临时申请的优先权,该申请的全部公开内容通过引用并入本文。
【技术领域】
[0003]本发明涉及一种机器视觉系统,且更特别地,涉及一种用于在捕获的图像中搜寻并解码基于ID信息的符号的视觉系统。
【背景技术】
[0004]执行测量、检验、校直物体和/或对符号代码或标记(如一维(ID)和二维(2D)DataMatrix条形码、QR码,DotCode等——又称为“ID”)进行解码的视觉系统广泛应用于各种应用和工业中。这些系统基于图像传感器(又称“成像器”)的使用,所述图像传感器捕捉对象或物体的图像(通常为灰度级或彩色的,且为一维、二维或三维的),并利用机载或互连的视觉系统处理器对捕获的图像进行处理。该处理器一般包括处理硬件和非暂时性的机算机可读的程序指令,所述程序指令执行一个或多个视觉系统过程,基于经处理的图像信息产生所需输出量。该图像信息通常提供于一阵列的图像像素内,每个像素都具有多种彩色和/或灰度级强度。以ID读取器(在本文中亦称“相机”)为例,用户或自动化程序获取包含一个或多个条形码、二维码或者其它ID类型的物体的图像。对图像进行处理以识别代码要素,然后通过解码程序和/或解码处理器对该图像进行解码,来获得该代码所表示的固有数据。该数据可为字母数字或者其它数据类型。
[0005]当解码ID时,一个任务是需要快速地搜寻到整个图像中很有可能包含类似这种ID要素的区域。该“ID搜寻”程序可执行进一步的过程,如集中于似乎包含可能的ID目标的区域的ID解码,所述ID解码计算比较密集。因此,处理ID需要的时间通常会缩减,使结果的产生更加快速和准确。在各种形式的二维ID代码(如DataMatrix、QR和DotCode)的情况下,搜寻代码要素有时非常困难。在更广泛的视觉系统应用中,一个共同的任务是定位并分析某些图像要素来获得各种信息,例如要素在画面中的相对位置和/或要素通过画面的动作。

【发明内容】

[0006]本发明通过提供一种利用相对计算低密集度的程序在呈现鞍点状结构的图像中搜寻要素的系统和方法克服了现有技术的缺陷,说明性地,所述系统和方法包括一反关联过程及相关的反关联核心,所述系统和方法包括在感兴趣的图像区域内对多个像素邻域进行处理。该过程能够通过确定反关联核心在图像中的多个位置生成的是弱响应还是强响应对整个图像所有表现为鞍点状结构的要素进行快速分析。该反关联核心设计为无论鞍点状结构的方位如何都生成强响应。该反关联过程对图像中的多个像素邻域进行检测,从而定位任何鞍点状的结构而不论其方向如何,因为该过程是与角度无关的。在很多实施例中,然后在图像内努力定位并解码ID拓扑结构时对该结构进行分组和改进(如将它们置于一网格中)。任何定位的ID信息都可以通过分组的鞍点状结构提供的信息直接进行解码,或者更一般地,对图像中沿已建立的网格直线的ID要素进行采样,并最终解码灰度级数据。
[0007]在一个说明性的实施例中,一利用视觉系统处理器在图像中测定鞍点状结构的系统和方法,包括一反关联过程。构建并设置该过程对图像中的像素邻域进行处理,并在该邻域内确定候选鞍点。在每一个这种邻域中,反关联的测量都是在该邻域及其自身旋转90°后的邻域之间进行计算得到的。鞍点结构与其自身旋转90°角后的结构具有很强的反关联性,而与其相对于像素网格的方向无关。说明性地,当反关联核心的响应强于某些临界值、强于相邻位置处的响应,或者两者皆满足时,就识别出一鞍点。对每一邻域来说,也可将一验证过程分别应用于一核心,所述核心限定了每一邻域旋转180°的版本。每一核心可包括至少一个或多个像素点大小的零值中心。说明性地,反关联利用至少归一化相关公式和绝对差总和公式的其中一种起作用。然后一改进过程通过确定关于候选类鞍点的优势角以及相邻候选类鞍点的间隔在图像中构建鞍点状结构。该改进过程还基于各自的优势角以及相邻鞍点状结构的间隔对鞍点状结构进行分组。然后一网格适配过程构建一近似直线的网格,该网格包含分组的鞍点状结构。这可包括去除位于网格线外的结构,和/或当先前的网格适配过程未能产生理想的拓扑结构时则重建网格,以形成更有益的结构。该拓扑结构可以是基于二维ID的,更具体地,基于DotCode ID格式。ID测定过程生成ID信息,以便用于在网格中基于鞍点状结构解码。
[0008]在另一实施例中,提供一种利用视觉系统处理器在一图像中解码一 ID的系统和方法。该系统和方法包括一鞍点状结构的测定过程,该过程生成关于图像的分组鞍点状结构。一 ID测定过程基于分组的鞍点状结构产生ID信息。一 ID解码过程解码ID信息来提供可以传输到数据处理系统的数据。说明性地,鞍点状结构测定过程利用反关联过程进行处理。该过程在图像中(至少)一感兴趣的区域内对多个像素邻域进行处理,并在该邻域内识别出候选鞍点,所述候选鞍点经过滤产生用于ID测定过程的鞍点状结构。
【专利附图】

【附图说明】
[0009]下文将参考附图对本发明进行描述,其中:
[0010]图1为根据一说明性的实施例,获取包含ID、移动通过成像画面的物体的图像的视觉系统布置示意图;
[0011]图2为包含一鞍点结构的典型棋盘格图案的示意图;
[0012]图3为根据一说明性的实施例,在一典型的可确定鞍点结构的DotCode矩阵中两相邻点要素的示意图;
[0013]图4为根据一说明性的实施例,在一图像中搜寻鞍点状结构及从中确定信息(如DotCode ID)的整个程序的流程图;
[0014]图5为包含鞍点状结构的一部分图像的屏幕显示,示出了利用根据图4的程序中的反关联过程初步确定候选鞍点;
[0015]图6所示为根据图4的程序,将90°旋转的反关联核心应用到整个图像内的像素邻域,生成图像中关于可能的候选鞍点的消息的示意图;[0016]图7所示为核心的应用的示意图,定义了将整个图像的初始像素邻域旋转180°的版本应用于图6所示的初始像素邻域,来选择性地验证邻域内的鞍点行为;
[0017]图8为根据图4的程序,显示了在候选鞍点中测定优势角的屏幕显示;
[0018]图8A和8B为一对核心的每个图解表不,所述一对核心用于对初始像素邻域进行操作来确定包含其中的鞍点状要素的优势角;
[0019]图9为根据图4的程序,测定一部分图像内的鞍点的最终分组的屏幕显示;
[0020]图10为根据图4的程序,将鞍点成对排列并测定相对距离和角度的屏幕显示;
[0021]图11为根据图4的程序,沿共线和同样的角度成对鞍点的投影的屏幕显示;
[0022]图12为根据图4的程序,使沿共线和相同角度的点组变得平滑的屏幕显示;
[0023]图13为根据图4的程序,调整网格适配鞍点的屏幕显示;
[0024]图14为用在图4的程序中的分组或者“边界框”测定的屏幕显示;
[0025]图15为相对于一 ID的期望几何形状对鞍点进行采样的屏幕显示;
[0026]图16为根据图4的程序,基于与鞍点相关的验证位置,来自图像的ID的一灰度级版本的采样和产生的屏幕显示;
[0027]图17为图17的ID图像的临界值二进制版本的屏幕显示;
[0028]图18为图17的二进制图像的裁剪和负像版本的屏幕显示;
[0029]图19为包含典型的ID要素以及相似的印制和伪鞍点的一部分图像的屏幕显示;
[0030]图20为一系列典型图像帧的示意图,每一图像帧都包括一具有鞍点特征的移动基准点,所述基准点能够根据说明性的实施例的技术进行定位和跟踪;以及
[0031]图21为一系列典型图像帧的示意图,每一图像帧都包括一具有鞍点特征的移动图案,所述图案能够根据说明性的实施例的技术进行定位和跟踪。
【具体实施方式】
[0032]1.视觉系统概述
[0033]图1详细描述了一机器视觉系统100 (在本文中也称为“视觉系统”或者更基本地称为“系统”)的典型实施方式,所示为一捕捉由视野110所确定的画面的图像的固定安装装置。可选地,可利用一活动底座或手持式装置将该系统实施为一可移动设备。在本实施例中,且通过非限制性的实例,该系统适用于扫描相对于系统100移动的物体(如物体120)。例如,该物体可沿传送带和/或生产线移动(箭头122)通过成像画面。这样一来,当物体位于视野110内时,系统100捕捉物体的一个或多个图像帧。该捕捉动作可通过视觉检测程序、零件检测器、传送线路上的编码器或其它本领域的技术人员熟知的可接受的技术启动。
[0034]所述说明性的系统100包括一相机组件130及相连的镜头132,所述镜头132可为任何可接受的视觉系统相机装置(可更一般化地表述为“相机”)。相机包含一图像传感器(亦称为“成像器”)134,所述传感器134接收来自于镜头132光线,所述镜头132聚焦于传感器134的像素阵列,这也限定了垂直于相机光轴的成像平面。传感器可为彩色传感器,或更典型地为灰度传感器,且可为CMOS传感器,或者任意其它可接受的电路类型(如CCD)。在本实施例中,传感器在运转过程中与机载的视觉处理器136互连,所述视觉处理器136执行适当的、常规的机器视觉程序138,如边缘查找、二进制大型对象分析等。处理器136还根据所述说明性的实施例执行特定的ID查找和解码程序140。还可根据具体情况提供其它程序,如照明控制、自动聚焦、自动调节亮度、曝光等。画面照明(可选的)可由所示外置照明器142和/或通过与相机相连的内部照明(未显示)提供。这种内部照明可安装于例如镜头周围相机的前表面的位置处。可通过处理器136或者由虚线144所示的关联电路启动照明。解码的数据(如字母数字和/或者其它数据形式的解码的ID信息)通过通信线路148传送到数据处理与存储系统150 (如库存控制系统)中,该数据处理与存储系统在图中表示为计算机或服务器。所述通信线路可以是有线或者无线的,视情况而定。
[0035]需要明确的是,所描述的系统100涵盖各种各样的系统,如下文进一步所述,除读取ID之外还适用于其它的视觉系统应用,如视频分析、机器人操作等。因此,对与ID读取器装置相关的说明性的实施例的描述意在说明本领域的技术人员可应用其它视觉系统应用的系统和程序。更一般地,本文所用术语“程序/过程”和/或“处理器”应广泛地理解为包括各种基于电子硬件和/或软件的功能和组件。另外,所描述的程序或处理器可与其它程序和/或处理器组合,或者分解成多个子程序或子处理器。可根据本文的实施例对这种子程序和/或子处理器进行各种组合。同样地,很明显可预计到,本文所涉及的任何功能、程序和/或处理器可通过电子硬件、非暂时性机算机可读媒介的程序指令所组成的软件、或者是硬件与软件的结合实现。
[0036]I1.鞍点要素
[0037]在说明性的实施例中,画面110中的物体120包括一个或多个感兴趣的要素,例如,所述要素包括印制的DotCode结构160。DotCode ID,以及某些其它二维ID码,包括(但不限于)DataMatrix以及QR。通常这些码的特征表现为印制的圆形或矩形的常规二维网格。这些印制要素间的区域可称为“鞍点”。说明性地,鞍点表示图像中沿某一方向局部强度最大、而沿其垂直方向(旋转90° )的局部强度最小的位置。
[0038]参考图2,其中描述了一明暗棋盘格200的四个正方形。四个正方形交汇处的点210 (顶点)即为一强鞍点。即,鞍点210处的强度沿明亮正方形的对角方向212为局部最小,而同一点210处的强度在阴影正方形的对角的垂直(角AP)方向214则为局部最大。在这种背景下,明亮强度定义为最大值,而阴影强度定义为最小值,但是反过来,将阴影强度定义为最大强度而明亮强度定义为最小强度也是正确的。进一步讲,任何数值,不管是否产生于明亮强度或者任何其他物理或计算过程,都可用来定义鞍点。此处的“局部”意指在鞍点周围,而不需要相对于图像中的任何其他位置的强度最大值或最小值。
[0039]因此,参考图3认识到鞍点可存在于两个要素点之间,所示为位于一明亮周围区域330内的一对示例性的DotCode阴影印制点要素310和要素320,和产生了鞍点响应。可选的,该印制点为明亮的,而周围区域为阴影的,或者印制点可以是围绕在光滑和/或镜面表面周围的喷丸处理表面。总之,该印制点及区域表示在图像中利用可见光和/或近可见光如红外辐射(IR)可识别的结构。如图所示及如下所述,关于这种点对可采用反关联程序,以便使点310、320有效地限定一最小强度方向340,最大强度通常在垂直(角API)方向342上。
[0040]由于DotCode ID(以及某些其它二维ID)提供了整齐放置/间隔均匀并对齐的点,适用于下述基于鞍点状要素的位置的ID搜寻技术。需要注意,为了简化,术语“鞍点”应也适用于按照定义类似鞍点特征的特征。本技术利用鞍点本身确定DotCode矩阵的存在,且因此,所述说明性的系统和方法对点的大小是不可知的,实践中其会因打印机(一般为物体通过的点矩阵打印机)的状态及印制表面的不同而变化。
[0041]II1.鞍点测定过程
[0042]参考图4,所示为基于部分图像中鞍点要素的布置,在图像内定位鞍点结构并测定感兴趣的要素(如DotCode ID)是否存在的整个程序400。程序400开始于步骤410,捕捉画面中的对象或其它物体的图像。根据该捕获的图像,在步骤420中程序搜寻候选鞍点状结构。搜寻结果显示在图5的示例中,其中屏幕显示500显示了包含一典型ID (本例为DotCode ID) 510的整个图像的一部分。在操作中,程序扫描整个图像,或者其小一些的部分——比如我们认为可能包含物体边缘的部分——来确定所有候选鞍点。如图5所示,这些候选点用交叉线(X)表示,如交叉线520。说明性地,且同时也参考图6,候选类鞍点是利用反关联核心610测定的。程序400滚动通过整个图像(或者整个图像中感兴趣的某一区域)内的每一个像素位置,并在每一像素位置处的MXN(M=N)个像素邻域620内操作强度值(1-25)。在本实施例中,定义了一 5X5的邻域。可以采用任意大小的邻域,但是通过在足够的数据样本(为了测定的可靠性)与处理速度之间权衡,在很多实施例中采用4X4到6X6之间的大小是令人满意的。另外,邻域的大小可确定“过滤”搜寻或不搜寻的候选类鞍点的颗粒大小。过滤尺寸也可由要素(如点大小)的相对尺寸决定。过滤尺寸可通过预设(在设置设备过程中)确定,或者基于程序的反复操作获知。说明性地,如图所示,反关联核心为旋转90°的相同像素(强度)邻域。与使用传统归一化相关公式相比,90°旋转反关联核心610相对于存在鞍点结构的初始像素邻域表现出非常大的强度差异,且这种位置会被标记。特别地,在-1到+1的刻度上,在初始像素邻域核心610中,由数字1-25表示的像素之间的归一化相关,和旋转核心620中相同数字的像素,应该接近-1。如果该相关不低于通常介于-1到O之间的一临界值,或者低于周围区域位置的临界值,就说明该特定像素邻域不具有充分的类鞍点特征,要从分析结果中去除。需要注意的是,可使用各种本领域的技术人员熟悉的公式来计算两矩阵中像素对之间反关联的强度。例如,在可选的实施方式中,可使用绝对差公式的和,调整至对于本领域的技术人员来说显而易见的期望范围和临界值。
[0043]如前所述,MXN像素邻域的大小是高度可变的。更特别地,当M和N为奇数时,中间像素(即像素点13)会被忽略,如图中被划掉的值所示。这样防止了像素与其自身对比。需要注意,图示逆时针旋转的反关联核心610在另一实施例中可顺时针旋转90°。反关联程序一次移动一列(或一行)像素地通过图像,直到对所有MXN邻域的像素都进行了比较。特别地,通过滚动过图像中的每一个像素,所述程序能够确定反关联而不需要考虑图像中候选鞍点指向的位置处的实际角度一即其实质上与角度无关。
[0044]在许多实施例中可选择地,为提高反关联过程(步骤424)的精确度,如图7所示,还可将邻域620与其自身旋转180°后(710)进行对比。如果180°计算与原始邻域基本相似这就允许测定,从而进一步表明初始像素邻域的类鞍点特征。在普遍的实施例中,可采用利用单个90°旋转的反关联核心对像素邻域进行处理来获得可接受的结果而不需要利用180°旋转的邻域进行进一步验证。
[0045]需要明确的是,利用反关联过程测定候选类鞍点的优势在于其只需要处理资源相对较小的应用,并因此可迅速地在整个图像上执行。即,由于各单个像素强度值仅仅从一种构成重新布置为另一种构成,因此与像素邻域的90°旋转相关的计算开销相对较小。这就使得过程更加密集地集中于包含一特定鞍点特征的整个图像的各个区域,比如包含一组这样的候选类鞍点的区域——表明在该区域内存在一 ID。
[0046]在许多实施例中,可预计到90°和180°旋转的反关联核心可提供大于I个像素点的零值中心。例如,可提供一去除9个(或其它数量)像素点的零值中心。
[0047]在许多应用中,在整个图像测定候选类鞍点可应用到解决具体的视觉系统问题中,比如当棋盘格通过一系列图像帧时,监控棋盘格基准点一如在碰撞实验的高速视频中、在印制的半色调图像中或者在履带式机械手臂的末端。
[0048]IV.利用候选类鞍点的ID解码过程
[0049]通过确定包含鞍点的区域,整个图像中分析用于ID信息的感兴趣的区域显著减少。这加速了解码过程。另外,通过执行另外的步骤,去除整个图像中不包含ID特征的随机鞍点要素,使感兴趣的区域进一步减少,且使相关解码过程的速度进一步提高。
[0050]再次参考图4中的程序,一旦从过程(如图5所示)中测定了反关联点,该程序就可利用该信息定位并最终解码一二维ID,如所述典型的DotCode。需要注意的是DotCode点具有类鞍点的要素,其不同于“棋盘”图案中所发现的真正的鞍点。然而,上述的反关联过程有效地找到了这些要素。可采用另外的过滤技术解决非接触点之间的明亮(或对比)背景区域的存在。在步骤430中,程序400确定剩余候选类鞍点的优势角。这在图像800中表示为多个交叉线810。这需要在已确定为候选类鞍点的区域内的相邻像素群中确定反关联结果的作用方向。需要注意的是,线条可为代表象征相似鞍状行为的多个像素点的两条线或者三条线(如线条820)。
[0051]根据一实施例,通过使包含一居中的鞍点850的像素邻域属于两核心来执行优势角的计算,所述两核心分别用图8A中的X和图SB中的X’表示,其中X’为关于X旋转45°角得到的。通过应用公式l/`2*arctan2(R(X) ’,R(X)),其中函数R表示一核心的响应,可粗略测定出角度。由于鞍点可在0°或90°处检测到,一对具有45°变化幅度(90°的一半)的核心可用于估算优势角。本描述还包括区域860,其中沿边缘线的一些像素被忽略,这样可以更准确地估算优势角。举例说明,如果X提供一强响应,则鞍点是垂直对齐的。如果X’提供一强响应,则鞍点是以45°对齐的。如果两个核心提供同样的响应,则鞍点是介于0°与45°之间成比例地对齐的,且每一响应的大小允许将角度(介于0°与45°之间)测量出来。例如,来自于X与X’的近似相等的响应表明优势角近似为22.5°。
[0052]根据一实施例,下面的程序指令集定义了一对5X5像素邻域的优势角测定核心的每一个:
[0053]/*确定优势角
[0054]
-1,-1,0, I, IO,-1,七 1,0
-1,-1,0, K II, O,-1? O, I
0.0.0.0.0Is 1,0,1,1
1,IA-1 ,-1ι,ο,-ι,ο, I
I51,0,-1,-1O5 -1s-1s-15O
[0055]ιινΟ = (c_Inil6)(-a00 - a01 + a03 + a04

-alO - all + al3 + al4

+a30 + a31 —a33 — a34

+a40 + a41 — a43 — a44);

uv! = (c_inil6)(-a()0 -aOl - a03

+aiO - a!2 + al4

+a20 + a21 + a23 + a24

+a30 -a32 十 a34

—a41 - a42 — a43);

saddle—angle = atan2(uv I , uvO);
[0056]在上述程序指令集中,省略了响应函数R,示例的saddle-angle计算并非图中所示的90°范围(图8A和图SB),而是在整个180°的范围内计算角度。两种计算方法都可以得到优势角可接受的估算结果。
[0057]在步骤434中,程序400去除`了多个搜寻到的鞍点,并将多个剩余的相邻鞍点对齐,沿共同的优势角形成一条直线,如图9中的显示图像900所示。直线910及920分别表示两相互垂直方向(通常与ID网格的布局大致一致)上对齐的鞍点。需要注意的是,该过程`在整个图像上进行,且进一步如下所述,还能够在沿其他方向延伸的“噪点”要素方向上形成鞍点线。还采用下述其它技术过滤这些噪点要素。可以预测到,点的范围可以是例如介于每点3个像素到每点14个像素之间。需要注意的是,可将图像分割成几部分,或者分别利用横虚线930和纵虚线940将图像划分为几个“方块”。方块的划分可用于下述的后续过程。这些方块的大小说明性地为32X32像素,但是其它的尺寸很明显也是能够预计到的。该程序关于每个方块处理点。包含搜寻到的ID要素的相邻方块的结果最后结合形成一最终结果。
[0058]在步骤436中,对已对齐的鞍点进行“成对”关系的分析,因为成对鞍点的间隔在将从ID网格中搜寻到的一预设范围内。如图10中的图像显示1000所示,程序测定哪些鞍点位于同一优势角(直线1010及1020),并且两条线之间的间隔为相对近似的单位距离。这些间隔相近且共线的点共同形成了后续步骤中建立ID网格的基础。鞍点的间隔可为多个单位距离。说明性地,将点间的距离置于柱状图中,程序搜寻峰值点。这提供最小的共同单位距离的信息给鞍点组。该距离考虑到有些点太近以至于无法形成码的一部分。也可将角度做成柱状图,并确认出出现频率最高的角。ID的特征用于提供一临界值,所述临界值用于确定最有可能与ID网格相关的角。
[0059]一旦对齐了鞍点,并以合适的单位距离隔开,步骤438中程序400可投射如图11中显示1100中所示的点1110。然后程序利用过滤过程去除杂散点和/或要素使鞍点变得平滑(步骤440),如图12中显示1200所示,所述杂散点和/或要素位于一“静区”内,所述静区延伸越出鞍点要素群限定的一边界的位置。方块可说明性地组合来将相邻的鞍点组连接形成一连续的、对齐的结构。需要注意的是,为了达到精确的目的,可由制造商来规定程序静区预定数目的像素,以使程序高效运行。
[0060]说明性地,程序不断去除可能不符合一 ID模型的鞍点。当去除足够的点以后,就可以从候选方块组中去除一潜在的方块。到此过程的这个时候,程序已经确定了一组似乎满足一 ID所需的几何特性/拓扑结构的鞍点——即,这些鞍点落入一 ID的期望位置。
[0061]在程序步骤442中,一规则网格置于鞍点中。如图13中显示1300所示,网格用横网格线1310和纵网格线1320表示。该网格接近直线。如图所示,鞍点应落入网格正方形的中心,以获得合适的匹配和对齐。根据程序步骤444,到了鞍点不与已建立的网格对齐的程度时,要去除这种鞍点,并根据情况使网格重新对齐。如果重新对齐未能产生一组具有一ID结构的尺寸、分辨率和一般布局(一般特性)的鞍点,那么就可以针对不同组的鞍点重新构建网格,直到形成符合一 ID的尺寸、分辨率和布局的对齐结构。总之,该程序可基于网格中的鞍点利用传统的搜寻算法来最终定位ID。
[0062]图14中的显示1400,进一步测定了鞍点组或者“边界框”的范围。每一鞍点沿每一网格轴投射,并找出与其它坐标轴(如坐标轴1410和1420)的截距。利用最小和最大截距确定鞍点组的范围。程序400重点处理范围/边界框内的区域。
[0063]在程序步骤446中,将沿网格并在一 ID结构的期望边界内的鞍点取作样本。如图15中显示1500所描绘的那样。
[0064]一旦ID得以证实,程序在步骤450中就可采样,并在图像中生成点的一灰度等级版本,将这些点相对与相关的鞍点定位(如图16中显示)1600所示。如图所示,某些点(1610)显示为浅灰色。通常,这些点是由于经过图像ID的印制或光照不均匀,又或者是因为采样ID的灰度像素基于不精确的网格位置定位,实际上,不精确的网格位置会造成对灰度级点的边缘而非更靠近点中心部分进行采样。如图17中显示1700所示,ID的灰度等级版本可以转换为二进制(全亮和全暗)图像,此时灰度等级点为或者成为全亮状态或者全暗状态的临界值。说明性地,适合的临界值用来分辨任意的灰度像素。然后可如图18中显示1800所示修剪ID,以便去除边界外的区域。如图所示,ID也可显示为负像。然后将ID提交至解码程序(程序步骤460),解码信息从解码程序传送至数据处理系统。在ID解码期间,解码程序可在每一个已搜寻到的网格位置处对灰度级像素执行常规采样,从而生成所需的解码数据。
[0065]通常如上所述,本系统及方法从画面中的噪点和随机要素中分辨有可能与ID相关的要素。举例来说,图19所示为画面的整个图像的一部分的显示1900,其中除了与字母数字(点矩阵)打印的区域1922有关的鞍点1920夕卜,还发现与ID点有关的鞍点1910。另夕卜,成像物体表面上的高光区1930沿延伸穿过方块(由水平虚线和垂直虚线1950及1952描绘)的直线1940产生一系列的伪鞍点。这些额外的鞍点为搜寻到真正的ID要素带来了挑战。通过上述的配对、对齐及过滤过程可系统地去除这些非ID要素。例如,可利用像素邻域的中心区域强度不大于预定临界值技术来去除沿直线1940的伪鞍点。该预定临界值的大小可根据邻域的平均强度确定。在有些情况下,去除工作是尤其困难的,可在ID与其它类似的结构之间建立足够的静区(如区域I960)。在很多实施例中,用户可基于尺寸、方位、分辨率以及画面中ID的相对位置设定系统参数来提高性能,前提是这些参数都是已知的,并且每个物体的相应参数都是一致的。
[0066]说明性地,上述鞍点的测定和定位用作候选DotCode的基本定位仪。可以预计到,有时,印制码上的一个或多个点可看起来与其它对角相邻的点不相连,从而位于一“稀疏”的代码区域。因此,根据进一步的程序步骤(图4中的步骤470),在利用关于已发现包含鞍点的区域上的鞍点探测到其它点之后,可利用一点探测程序(例如)。根据码的期望尺寸,一合适的边界框防止点检测器/程序搜索超出候选区域太远的范围。点检测器可利用常规视觉系统技术搜索本区域新的点状要素。
[0067]V.定位图像中鞍点要素的其它形式
[0068]可以很明确地预想到,上述鞍点测定技术可应用于多种形式的除ID码外,还包含鞍点信息的图像数据中。通过非限制性的示例,图20显示了一组图像帧2010、2020、2030,它们可以是大量这种图像帧的一部分——如通过高速照相系统捕捉的一系列图像帧。通常这种捕捉系列中的物体都提供有基准点。一熟悉形式的基准点(即所谓的透明度测定板(Secchi disk))2050在每一帧中处于不同的位置/方位。该基准点包含清晰的鞍点特征。本文中的系统与方法可可靠并相对迅速地在每一帧中定位一个或多个基准。如果一数据集中存在大量的帧,本系统和方法能够缩短用于分析数据集并集中分析包含这种基准点的图像部分的时间。
[0069]在另一典型的帧集合2110、2120、2130中,一熟悉的滚动图案2150似乎处于每一帧中的不同位置与方位中。该图案包含大量重复的鞍点。同样,本系统和方法能够有效地定位和追踪本图案大量图像帧的每一元素。本领域技术人员应该清楚,图20及21中的实例仅为可利用本文所述的系统与方法分析可能的图案和应用的广泛范围中的一些。
[0070]VI.结论
[0071]需要明确的是,上述系统和方法提供了一种有效的、多功能的技术,用于测定图像中的鞍点状要素,以及分析这种要素来执行视觉系统任务,如ID搜寻和解码等。在DotCode解码这一特例中,本系统和方法解决了 DotCode中点相互不接触的难题,这样所有相邻的点都产生鞍点。然而,所述说明性的反关联和角度过程的稳健性使测定的鞍点相对于其所呈现的结构具有很高的精确性。尽管在粗略搜寻之后,经常还需要搜寻算法对原始图像重新采样,但任何对ID信息的改进都是基于鞍点实现的,而非基于更加计算密集的点分析本身。更一般地讲,本文描述的系统与方法,通过增加计算量降低了处理器开销,并且在遇到某些二维代码及其它包含鞍点状结构的图像要素时,提高了整体的处理速度。
[0072]前述内容已经非常详细地描述了本发明的说明性的实施例。在不违背本发明的精神和范围的前提下,可以对本发明做出各种修改和添加。可以根据情况,将上述各种实施例的特征与其它已描述的实施例的特征相结合,以便在相关的新实施例中提供具有多样性的特征组合。另外,虽然前文描述了本发明的装置与方法的很多独立的实施例,但本文所述仅仅是对本发明原理的应用的描述。例如,虽然说明性的实施例仅采用鞍点生成解码ID结果,但可以明确预想到,还有其它程序步骤能够检测至少其中一些候选ID要素点来辅助解码ID。因此,本说明书仅为示例,不作为本发明范围的限制。
【权利要求】
1.一种利用视觉系统处理器在一图像中测定鞍点状结构的系统,包括: 一反关联过程,构建和设置所述反关联过程对图像中的多个像素邻域进行处理,并在所述邻域内确定出候选鞍点。
2.根据权利要求1所述的系统,其中,构建和设置反关联过程分别将每一邻域90°旋转的核心应用于每一邻域。
3.根据权利要求2所述的系统,进一步包括一验证过程,构建和设置所述验证过程将每一邻域的180°旋转的核心分别应用于每一邻域。
4.根据权利要求3所述的系统,其中,90°旋转的核心与180°旋转的核心中至少一个包含有多于一个像素点的零值中心。
5.根据权利要求2所述的系统,其中,所述反关联过程利用至少归一化相关公式和绝对差总和公式中的一种来运行。
6.根据权利要求1所述的系统,进一步包括一改进过程,构建和设置所述改进过程来通过关于候选类鞍点确定优势角和相邻候选类鞍点的间隔,以在图像中构建鞍点状结构。
7.根据权利要求1所述的系统,其中,基于各自的优势角和相邻鞍点状结构之间的间隔进一步构建和设置所述改进过程对鞍点状结构进行分组。
8.根据权利要求7所述的系统,其中,所述改进过程进一步包括一网格适配过程,构建和设置所述网格适配过程来建立一包含鞍点状结构的近似垂直的网格。
9.根据权利要求8所述的系统,进一步包括去除超出网格线范围的鞍点状结构。
10.根据权利要求9所述的系统,其中,所述网格是基于一ID的拓扑结构构建的。
11.根据权利要求10所述的系统,其中,所述ID限定为一DotCode ID。
12.根据权利要求11所述的系统,进一步包括一ID测定过程,所述ID测定过程基于网格中的鞍点状结构生成用于解码的ID信息。
13.一种利用视觉系统处理器解码图像中的ID的系统,包括: 一鞍点状结构的测定过程,生成分组的关于图像的鞍点状结构; 一 ID测定过程,基于分组的鞍点状结构生成ID信息;以及 一解码ID信息的ID解码过程。
14.根据权利要求13所述的系统,其中,所述鞍点状结构测定过程利用一反关联过程起作用,构建和设置所述反关联过程对图像中多个像素邻域进行处理,并在邻域内确认出候选鞍点。
15.根据权利要求14所述的系统,其中所述ID为DotCodeID。
16.根据权利要求15所述的系统,进一步包括一点检测器,所述点检测器在包括ID的图像的一区域中搜索点状要素来验证已经定位的区域中的所有的点。
17.一种利用视觉系统处理器测定图像中的鞍点状结构的方法,该方法的步骤包括:对图中的多个像素邻域进行处理,并通过应用一反关联核心在邻域内确定候选鞍点。
18.根据权利要求17所述的方法,其中,所述将反关联核心应用到每一个邻域的步骤包括分别应用每一邻域的90°旋转的核心。
19.根据权利要求18所述的方法,其中,所述应用反关联核心的步骤包括利用归一化相关公式和绝对差总和公式中的至少一个。
20.根据权利要求17所述的方法,其中,至少有一些候选鞍点与一ID码相关。
【文档编号】G06K9/62GK103824275SQ201310534457
【公开日】2014年5月28日 申请日期:2013年10月31日 优先权日:2012年10月31日
【发明者】E·B·斯托克斯, 晋风华, W·M·西尔弗, 叶芗芸, I·A·巴舍尔德 申请人:康耐视公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1