复合三维BLOB工具及其操作方法与流程

文档序号:32257179发布日期:2022-11-19 09:14阅读:139来源:国知局
复合三维BLOB工具及其操作方法与流程
复合三维blob工具及其操作方法
技术领域
1.本发明涉及分析三维(three-dimensional,3d)空间中的对象的机器视觉系统,更具体地说,涉及用于分析具有复杂形状的对象的系统和方法。


背景技术:

2.执行对象的测量、检查、对齐和/或符号(例如,条形码,也称为“身份标识(identity document,id)码”)的解码的机器视觉系统(本文中也称为“视觉系统”),被广泛用于各种应用和行业。这些系统基于图像传感器的使用,该图像传感器采集主体或对象的图像(通常为灰度或彩色,并且是一维、二维或三维),并使用板载或互连的视觉系统处理器来处理这些采集的图像。处理器通常包括处理硬件和非暂时性计算机可读程序指令,该非暂时性计算机可读程序指令执行一个或更多个视觉系统处理以基于图像的处理信息生成期望的输出。该图像信息通常在图像像素阵列内提供,每一个像素具有各种颜色和/或强度。
3.如上所述,一个或更多个视觉系统相机可用于获取成像场景中对象的二维(two-dimensional,2d)或三维(3d)图像。2d图像通常被表征为在整个n x m图像阵列(通常由相机图像传感器的像素阵列限定)内具有x和y分量的像素。在以3d方式采集图像的情况下,除了x和y分量之外,还存在高度或z轴分量。可以使用包括立体相机、激光雷达、飞行时间传感器和(例如)激光位移剖面的三角测量的各种机制/技术来获取3d图像数据。
4.当对类似或不同项目的复杂排列进行测量时,3d相机系统出现的一个典型问题是,图像数据可能在排列(例如)为一组中的对象之间丢失。例如,一个典型的复杂对象是一包水瓶,其中,水瓶的盖可能是瓶直径的一半或更小。当用3d图像传感器观察时,得到的图像数据通常来自在图像高度顶部处完全暴露的盖。然而,有用的图像数据(例如瓶和盖之间的空间)在盖之间丢失。这可能是由于照明中的阴影以及光线从照明器传播到对象并返回图像传感器的角度造成的。通常,诸如水瓶、镜面状表面或特定空间频率的小特征的复杂对象会导致视觉系统中3d数据捕获的丢失。在水瓶的示例中,盖/顶部通常提供3d图像数据的固体响应,但由于包裹的水/塑料/塑料包装使正常情况下生成3d图像的光学反馈变得模糊,盖周围的区域可能不提供可用的图像数据。


技术实现要素:

5.本发明通过提供对图像数据可能丢失的复杂对象执行3d成像的系统和方法来克服现有技术的缺点。该系统和方法结合图像数据的缺失/丢失使用可用的3d图像数据,并且可以将当前和缺失的图像数据的整个集合视为单个对象,这允许精确计算该单个对象的x、y和z维度。通常,本文中的系统和方法将图像数据的缺失/丢失假设为仅是其它类型的数据,并且图像数据的缺失/丢失表示存在阻止在主体图像中生成精确3d图像数据的某些事物。使用该假设,图像数据段可以连接到缺失数据的区域,从而可以生成最大边界框。对于高且复杂的对象,该对象生成的阴影也可以表示为负数据或遗漏数据,但不代表物理对象。
使用来自正数据的高度数据,估计基于该高度的对象阴影大小、视场中的位置以及生成图像的光线角度并从结果中移除,以提供更精确的3d图像结果。
6.在说明性实施例中,可以为视觉系统提供复合3d二进制大对象(binary large object,blob)工具及其操作方法。视觉系统可以具有处理器,该处理器使用3d相机组件接收来自对象的获取的3d图像数据。该工具和相关联的方法可以包括blob工具处理,blob工具处理识别所获取的3d图像数据中的正3d图像数据和负3d图像数据,并且将限定z维度高度信息的正3d图像数据和负3d图像数据进行组合,从而限定至少一个连接对象。负3d图像数据可以至少部分地包括限定关于对象的数据缺失和关于对象的阴影的正交的x-y维度。z维度高度信息可用于基于(1)由与3d相机组件相关联的照明所投影的并由3d相机组件的图像传感器接收的射线角度的知识,以及(2)对象在图像传感器的视场中的位置来细化对象的x-y维度,使得阴影对对象的贡献基于对象的细化后的x-y维度而改变。说明性地,blob工具处理可以基于3d相机组件中的校准信息针对获取的3d图像数据的空间意义来分析连接对象。对象可以包括以下中的至少一个:(a)多个并排对象,每一个对象具有大致相似高度的顶部;以及(b)一个或更多个对象,具有分别限定多个不同高度的顶面。3d相机组件可以包括立体相机、基于结构化照明的相机、基于飞行时间的相机和剖面仪中的至少一个。阴影和正3d图像数据可以限定包含驻留于参考表面上方的阴影和正3d图像数据的边界框两者。示例性地,参考表面可以限定对象所驻留的传送带表面。对象可以是包裹,并且3d blob工具的结果被提供给传送带的门控组件,该门控组件基于对象的特征将对象导向多个不同目的地之一。这些特征可以指示缺陷对象,从而由门控传送带引导到缺陷和/或拒绝对象位置。
附图说明
7.以下发明描述参考附图,其中:
8.图1是用于获取和处理复杂对象的3d图像的系统的概览,该系统采用复合3d blob工具来提供图像遗漏数据的预测;
9.图2是示例性对象组的透视图,所述对象组由于阴影和其他影响而缺失图像数据,所述阴影和其他影响可以通过本文中的说明性复合3d blob工具来成像和分析;
10.图3是图2中的对象的3d点云图像的表示图,示出了沿着伴有图像数据缺失的图像的x-y平面的图像数据;
11.图4是图3的表示图,示出了沿z维度的相对精确的高度测量;
12.图5是示出3d相机组件在一组对象上的定位以及产生阴影和导致图像数据缺失的可能性的图;
13.图6是由图5的相机组件获取的图像的自顶向下视图,示出了在不同方向和不同尺寸中的每一个上的各个对象的阴影;
14.图7是驻留于相机组件fov边缘附近的基本矩形对象的3d点云图像的表示图,显示了阴影的投影和取向;
15.图8是图7的基本矩形对象的3d点云图像的表示图,该基本矩形对象驻留于更靠近相机组件fov的中间,示出了阴影的更复杂的投影和取向;
16.图9是根据说明性实施例的用于操作复合3d blob工具的过程步骤的流程图;以及
17.图10是示出由说明性实施例的复合3d blob工具创建边界框以确定多级对象或对象组中的特征的图。
具体实施方式
18.i.系统概览
19.图1示出了布置100的概览,其中,视觉系统相机组件(也简称为“相机”或“传感器”)110在对象122相对于移动的传送带130在其视场(field ofview,fov)下方通过时获取对象122的示例性分组120的3d图像数据。在此示例中,对象122是一组120成组排列的罐或瓶——例如在板条箱或收缩包装内。应当注意,可以根据本文的系统和方法对对象的任何排列或具有复杂顶部表面的单个对象进行成像和分析。
20.考虑的3d相机/成像组件110可以是获取对象的3d图像的任何组件,包括但不限于立体相机、飞行时间相机、激光雷达、超声波测距相机、结构化照明系统和激光位移传感器(剖面仪),因此,术语3d相机应当被广泛地理解为包括这些系统以及生成与对象的2d图像相关联的高度信息的任何其他系统。也可以提供单个相机或更多个相机的阵列,并且术语“相机”和/或“相机组件”可以指以生成场景期望3d图像数据的方式获取图像的一个或更多个相机。所描述的相机组件110被示为以检查点或检查站的方式安装在传送带130的表面上方,该检查点或检查站在流动对象经过时对对象进行成像。对象122可以保持运动或暂时停止成像,这取决于传送带的运行速度和相机图像传感器(s)和相关电子器件(部分取决于帧速率和光圈设置)110的采集时间。在替代实施例中,可以省略传送带,并且对象可以位于非移动台或表面上。作为非限制性示例,相机110限定了光轴oa,该光轴大致垂直于传送带130的表面。相机轴oa可替代地在替代布置中相对于传送带的表面以非垂直角度定向。相机的校准可以在内部坐标系和成像场景坐标系之间转换。注意,局部x、y和z轴(或其他坐标系)138以参考的方式示出。在本示例中,传送带表面的平面表示x-y维度,垂直于传送带表面的高度表示z维度。
21.相机110包括图像传感器s,图像传感器s适于在它的外壳内部生成3d图像数据134。相机组件包括整体照明组件i(例如,led的环形照明器,其在相对于轴oa的可预测方向上投射光)。可以以替代布置提供外部照明(未示出)。示出了沿着轴oa与传感器s光学通信的适当光学封装o。传感器s与内部和/或外部视觉系统处理(器)140通信,该处理(器)140从相机110接收图像数据134,并根据本文的系统和方法对数据执行各种视觉系统任务。处理(器)140包括底层处理/处理器或功能模块,包括一组视觉系统工具142,该视觉系统工具142可以包括识别和分析图像数据中的特征的各种标准和自定义工具,包括但不限于边缘检测器、blob工具、模式识别工具、深度学习网络等。视觉系统处理(器)140还可以包括根据该系统和方法的尺寸标注处理(器)。该处理(器)144对在3d图像数据中所识别的特征执行各种分析和测量任务,以确定是否存在可计算进一步结果的特定特征。该处理(器)使用各种常规和自定义(例如3d)视觉系统工具142,该视觉系统工具142包括根据示例性实施例的3d blob工具144。系统设置和结果显示可以由单独的计算设备150(诸如服务器(例如基于云或本地)、个人计算机(personal computer,pc)、膝上型计算机、平板电脑和/或智能手机)来处理。(以非限制性示例的方式)将计算设备150描述为具有常规显示器或触摸屏152、键盘154和鼠标156,它们共同提供图形用户界面(graphical userinterface,gui)功能。可
以在设备150的替代实施方式中提供各种接口设备和/或形状要素。gui可以部分地由网络浏览器应用程序来驱动,该网络浏览器应用程序驻留在设备操作系统上,并根据本文的示例性布置显示具有来自处理(器)140的控制和数据信息的网页。
22.注意,处理(器)140可以完全或部分地板载于相机组件110的外壳上,并且各种处理模块/工具142和144可以视情况完全或部分地在板载处理(器)140或远程计算设备150中实例化。在示例性实施例中,所有视觉系统和接口功能都可以在板载处理(器)140上被实例化,并且计算设备150可以主要用于训练、监控和与界面网页(例如超文本标记语言(hypertextmarkup language,html))相关的操作,该界面网页由板载处理(器)140生成并通过有线或无线网络链接发送到计算设备。替代地,处理(器)140的全部或部分可以驻留在计算设备150中。来自处理器的分析的结果可以发送到下游的利用设备或处理160。这样的设备/处理可以使用结果162来处理对象/包裹——例如,基于所分析的特征,对传送带130进行门控以将对象引导到不同的目的地和/或拒绝有缺陷的对象。
23.ii.示例性图像和问题
24.图2还描述了示例性运行时间对象,或对象组210——在该非限制性示例中,限定玻璃主体212和上覆顶部或盖220的罐或瓶的板条箱。图3和图4示出了来自图1所示类型的上覆3d相机组件的该对象的示例性(例如3d点云)显示表示。特别地,图3示出了显示表示300,其中,沿x-y平面对罐顶220成像。顶部220由适当尺寸的边界框来界定,该边界框可基于与周围传送带表面320的高度差来限定。感兴趣区域(矩形330)示出了被阴影和其他数据(盖下方的罐体)遮挡的各个顶部,这使得视觉系统工具(例如边缘探测器)难以解析单个盖。相反,在图4的显示表示400中示出了同一区域(外部边界框410内的矩形420)的总体高度数据,并且限定了沿z方向/维度的相当精确的测量。通过进一步说明,图5中所示的相机组件510生成投影照明扇512,相机组件以从顶部(盖)520生成一系列向外扇形阴影522的方式接收该投影照明扇512作为反射光514(由于照明和光学部件的放置而偏移),该投影照明扇512重叠并模糊场景的最终2d图像。如图6的顶视图所示,每一个顶部520可以显示唯一的尺寸/形状阴影,该阴影也基于与照明角度和光轴oa相比的顶部在场景中的相对位置在离散方向520上偏置。这增加了整个图像的复杂性和不确定性。
25.进一步参考图7,基本矩形对象720的自顶向下视图中所描述的3d显示表示710示出了解析形状的挑战,其中,对象720离fov的一个边缘足够远,一侧730上没有阴影,一侧(相对)740上有深阴影,以及两个浅阴影750。类似地,图8的表示810示出了基本对象820(在自顶向下视图中也是矩形)。该对象820更接近fov的中心,并相对于图7中的对象720略微旋转。在该表示中,对象820限定了整体具有八(8)个角的阴影830,包括与来自相机的四角阴影860重叠的来自照明投影仪的四角阴影850。根据视场中的位置等变化的复杂阴影的存在使得使用2d图像数据(即使与原始高度数据组合)对特征的分辨率具有挑战性,因为一些高度数据可能由于阴影而遗漏。然而,如上所述,可用的高度数据可以相当精确。
26.iii.blob工具和操作方法
27.图9是示出根据示例性实施例的过程900的流程图。在步骤910中,由视场(fov)内的对象或对象组的相机组件获取一个或更多个3d图像。使用该3d图像数据,在步骤920中,一个或更多个感兴趣区域——例如,高度数据在参考平面(例如,传送带表面)上方的区域和其他边界区域(框)被放置在感兴趣区域中的对象周围。在步骤930中,感兴趣区域内缺失
图像数据(也称为“反数据”)的区域被识别。这可以通过使用本领域技术人员已知的各种方式(例如,分割工具和/或其他适当的视觉系统工具)实现。通常,它们是不存在高度值和/或x-y像素值的区域。值得注意的是,过程900之后使用缺失图像数据来指示连通性和/或阴影。因此,在步骤940中,过程连接接触的所有(参考平面上方的)数据和所有反数据。在步骤950中,该过程然后确定感兴趣区域中边界框的位置。这给出了对象在整个fov中的相对参考。基于(在工厂校准步骤和/或设置时的现场校准期间)存储在相机组件中的图1中的校准数据170,该过程了解fov中不同高度处的每一个点的光线从照明器返回相机的(存储)路径。因此,基于该数据和边界框在fov中的位置,以及边界框中每一个点的高度数据,该过程可以重新细化边界框以从主体图像数据中移除阴影(步骤960)。这需要遵循连接形状中预期射线的路径,并将它们映射到图像数据中的已知高度。在步骤970中,该计算的结果可以作为细化后图像数据发送到下游利用处理——例如执行尺寸标注、检查等的其它视觉系统工具。
28.iv.不同高度(多级)对象
29.图10是示出相机组件1010在它的fov 1020内获取多个对象或同一对象的不同部分的图像的示意图,在该示例中,具有不同高度的1030和1032彼此相对相邻。注意,预期对象的最大高度由用户预先编程,在本示例中,它们完全驻留于fov内(如图所示)。进一步假设主体对象1030、1032在形状上是相对立方体的。该假设可以通过在开始任何校正之前观察物品的所有顶部表面(1034和1036)点的质量和形状来验证。
30.在第一步中,使用由阴影引起的遗漏点数据以及任何观察数据,生成最小边界框1042,该边界框1042包含阴影和位于参考表面a(例如传送带表面1040)上方的任何观察数据。接下来,使用第一边界框1042,生成与边界框1042的最顶部表面1044重合的平面a。然后,从位于参考表面1040上的边界框1042的每一个角/顶点(v[i])(1046和1048),执行以下步骤:
[0031]
a.沿射线将v[i]投影到照明源,并确定射线和与表面1044重合的顶部平面相交的交点(点b),以及点a和点b之间的距离(距离b);
[0032]
b.沿射线将v[i]投影到成像器,并确定射线和与最顶部表面1044重合的平面相交的交点(点c),以及点a和点c之间的距离(距离c);
[0033]
c.在v[i](位于表面a上)正上方的最顶部表面1044上获得框a的顶点(u[i]);
[0034]
d.比较距离b和距离c;以较大者为准,检查对应点(点b或点c)并确定该点是否位于最顶部表面1044内;
[0035]
i.如果是,则创建与该点(点b或点c)对应的新点u'[i];以及
[0036]
ii.如果否,则创建对应于u[i]的新点u'[i]。
[0037]
所得到的上顶点u'[]1050和1052应基本上形成表示校正阴影的矩形形状;可选地,将最佳拟合矩形应用于这些顶点,并通过将矩形向下投影到表面a来生成最终校正框(1040)。
[0038]
请注意,完美正方形边界框1060因为平分了上阴影和下框1032,提供了对几何结构的错误估计。因此,初始框1042以拉长方式绘制,以包围参考平面1040上方的整个结构。
[0039]
v.结论
[0040]
应清楚的是,上述系统和方法可以有效地在3d图像中提供缺失的图像数据,其中,
相机组件的几何结构和照明特性是已知的。该系统和方法有效地工作在相邻的、间隔开的对象和限定不同高度或不同高度部分的对象上。
[0041]
以上是本发明说明性实施例的详细描述。在不脱离本发明的精神和范围的情况下,可以进行各种修改和添加。上述各种实施例中的每一个的特征可以适当地与其他所述实施例的特征组合,以便在相关联的新实施例中提供多种特征组合。此外,虽然前面描述了本发明的装置和方法的多个单独实施例,但本文所描述的仅是说明性的本发明原理的应用。例如,如本文所使用的,术语“处理”和/或“处理器”应被广泛地理解为包括各种基于电子硬件和/或软件的功能和部件(并且可替代地称为功能“模块”或“元件”)。此外,所描述的处理或处理器可以与其他处理和/或处理器组合,或者被划分为各种子处理或处理器。这些子处理和/或子处理器可以根据本文的实施例进行各种组合。同样,明确考虑,本文中的任何功能、处理和/或处理器可以使用由程序指令的非暂时性计算机可读介质组成的电子硬件、软件、或硬件和软件的组合来实现。此外,如本文所使用的,诸如“垂直”、“水平”、“上”、“下”、“底部”、“顶部”、“侧”、“前”、“后”、“左”、“右”等各种方向和配置术语仅用作相对于固定坐标空间的相对规定,而不用作绝对方向/布置,例如重力的作用方向。此外,当术语“基本”或“大致”用于给定的测量值、数值或特性时,它指的是在正常操作范围内以实现期望的结果的量,但这个量包括由于系统允许公差(例如1-5%)内的固有不精确性和误差引起的一些变化。通过非限制性示例,在3d相机包括线扫描类型的组件(例如轮廓仪)的情况下,编码器或其他运动感测设备与成像器结合使用,以逐行地构建用于fov的完整3d图像的y维。因此,本描述仅作为示例,而非限制本发明的范围。
[0042]
所要求保护的是:
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1