用于对象状态检测的方法和装置

文档序号:1643153 发布日期:2019-12-20 浏览:13次 >En<

阅读说明:本技术 用于对象状态检测的方法和装置 (Method and apparatus for object state detection ) 是由 傅博 张燕 程燕鸣 J·K·瓦尔利 R·E·比奇 I·C·泽加尔 R·J·勒泽斯祖特克 于 2018-05-01 设计创作,主要内容包括:根据货架图像数据对由货架支撑的对象进行对象状态检测的方法,包括:获取货架的多个图像,每个图像包括货架上对象之间的间隙的指示;将图像配准到公共参考系;标识在公共参考系中具有重叠位置的间隙的子集;从该子集生成合并的间隙指示;获取参考数据,该参考数据包括(i)对象的标识符和(ii)对象在公共参考系中的规定位置;基于合并的间隙指示与参考数据的比较,从参考数据中选择目标对象标识符;以及生成并呈现用于目标产品标识符的状态通知。(A method of object state detection for an object supported by a shelf from shelf image data, comprising: obtaining a plurality of images of a shelf, each image including an indication of a gap between objects on the shelf; registering the images to a common reference frame; identifying a subset of gaps having overlapping positions in a common reference frame; generating a merged gap indication from the subset; obtaining reference data comprising (i) an identifier of the object and (ii) a specified position of the object in a common reference frame; selecting a target object identifier from the reference data based on the comparison of the merged gap indication with the reference data; and generating and presenting a status notification for the target product identifier.)

用于对象状态检测的方法和装置

相关申请的交叉引用

本申请要求享有由Fu等人于2017年5月1日提交的题为“用于对象状态检测的方法和装置(Method and Apparatus For Object Status Detection)”的美国临时专利申请No.62/492,695的优先权的权益,该临时申请通过引用整体结合于此。

背景技术

管理对象库存的环境(诸如在零售环境中购买的产品)可以是复杂且流动的。例如,给定环境可以包含具有不同属性(尺寸、形状、价格等)的多种的对象。此外,环境中对象的布置和数量可能经常变化。更进一步,诸如照明之类的成像条件可以随时间变化,并随在环境中的不同位置而变化。这些因素可能会降低可以在环境内收集有关对象的信息的准确性。

具体实施方式

诸如仓库、零售场所(例如,杂货店)之类的环境通常包含货架上支撑的多种产品,以供顾客选择和购买。结果,随着产品被移除以及在某些情况下被顾客替换,任何给定的货架模块所支撑的产品组的组成会随时间而变化。已部分或全部耗尽的产品通常需要补货,而已被错误地替换的产品(称为“加塞”)通常需要重新放置在货架上的正确位置。常规来说,由员工经由对货架的视觉评估和手动条形码扫描来进行补货或加塞问题的检测。这种检测形式是劳动密集型的,因此成本很高,而且容易出错。

由于需要在其中操作自主数据捕获系统的环境的流动性,使诸如上述问题之类的产品状态问题的检测自动化的尝试变得复杂。在其他困难中,货架的数字图像在质量上随着可用的照明、视觉障碍物的存在等而变化。此外,货架上存在的产品的宽度以及货架上产品位置的变化降低了机器生成的状态检测的准确性。

本文公开的示例针对从货架图像数据对货架所支撑的对象进行的对象状态检测的方法,包括:获取货架的多个图像,每个图像包括货架上对象之间的间隙的指示;将图像配准到公共参考系;标识在公共参考系中具有重叠位置的间隙的子集;从该子集生成合并的间隙指示;获取参考数据,该参考数据包括(i)对象的标识符和(ii)对象在公共参考系中的规定位置;基于合并的间隙指示与参考数据的比较,从参考数据中选择目标对象标识符;以及生成并呈现用于目标产品标识符的状态通知。

图1描绘了根据本公开的教导的移动自动化系统100。系统100包括服务器101,服务器101经由通信链路107(在本示例中示出为包括无线链路)与至少一个移动自动化装置103(在本文中也被简单称为装置103)和至少一个移动设备105通信。在所示示例中,系统100被部署在包括多个货架模块110的零售环境中,每个货架模块110支撑多个产品112。货架模块110通常被布置在在多个通道中,每个通道包括首尾对齐的多个模块。更具体地,装置103被部署在零售环境内,并(经由链路107)与服务器101通信以完全或部分自主地导航货架110的至少一部分的长度。装置103配备有多个导航和数据捕获传感器104,诸如图像传感器(例如,一个或多个数字照相机)和深度传感器(例如,一个或多个光检测和测距(LIDAR)传感器),并且进一步被配置为采用传感器捕获货架数据。在本示例中,装置103被配置为捕获货架110的一系列数字图像以及一系列深度测量,其每一个描述了装置103与货架110上的一个或多个点(诸如货架本身或设置在货架上的产品)之间的距离和方向。

服务器101包括专用成像控制器,诸如处理器120,其被专门设计用于控制移动自动化装置103以捕获数据、经由通信接口124获取所捕获的数据并将所捕获的数据存储在存储器122中的储存库132中。服务器101进一步被配置为对所捕获的数据执行各种后处理操作,并检测货架110上的产品112的状态。当成像处理器120检测到特定状态指示符时,服务器101还被配置为向移动设备105传送状态通知(例如,指示产品缺货、库存不足或放错位置的通知)。处理器120与非暂时性计算机可读存储介质(诸如存储器122)互连,该非暂时性计算机可读存储介质上存储有用于检测货架110上的缺货和/或低库存的计算机可读指令,如下面进一步详细讨论的。存储器122包括易失性存储器(例如,随机存取存储器或RAM)和非易失性存储器(例如,只读存储器或ROM、电可擦除可编程只读存储器或EEPROM、闪存)的组合。处理器120和存储器122各自包括一个或多个集成电路。在一个实施例中,为了提高由移动自动化装置103收集的大量传感器数据的可靠性和处理速度,替代成像控制器/处理器120和存储器122或除了成像控制器/处理器120和存储器122之外,特别设计的集成电路(诸如现场可编程门阵列(FPGA))被设计为检测本文讨论的缺货和/或低库存。如本领域技术人员将意识到的,移动自动化装置103还包括与控制器120通信的一个或多个控制器或处理器和/或FPGA,该控制器或处理器和/或FPGA被具体配置为控制装置103的导航和/或数据捕获方面。

服务器101还包括与处理器120互连的通信接口124。通信接口124包括合适的硬件(例如,发射机、接收机、网络接口控制器等),从而允许服务器101经由链路107与其他计算设备(特别是装置103和移动设备105)进行通信。链路107可以是直接链路,或者是穿越一个或多个网络(包括局域网和广域网)的链路。基于需要服务器101进行通信的网络或其他链路的类型来选择通信接口124的特定组件。在本示例中,经由一个或多个无线接入点的部署,无线局域网在零售环境内实现。因此,链路107包括在装置103和移动设备105和上述接入点之间的无线链路,以及服务器101与接入点之间的有线链路(例如,基于以太网的链路)。

存储器122存储了多个应用,每个应用包括可由处理器120执行的多个计算机可读指令。处理器120执行上述指令将服务器101配置为执行本文所讨论的各种动作。存储在存储器122中的应用包括控制应用128,该控制应用128也可以被实现为一组逻辑上不同的应用。通常,经由执行控制应用128或其子组件,处理器120被配置为实现各种功能。如经由执行控制应用128配置的处理器120在本文也称为控制器120。如现在将显而易见的是,以下描述的由控制器120实现的功能中的一些或全部也可以由预先配置的硬件元件(例如,一个或多个ASIC)来执行,而不是由处理器120执行控制应用128来执行。

在本示例中,特别地,服务器101被配置为经由由处理器120执行控制应用128来处理输入数据,该输入数据包括由装置103捕获的图像和深度数据以及从图像和深度数据导出的属性(例如,货架110上的产品112之间的间隙的属性,以及产品112的指示符的属性),以生成与产品112有关的状态通知。

现在转向图2,在描述应用128检测缺货、低库存和/或加塞库存的操作之前,将更详细地描述应用128的某些组件。对于本领域技术人员将显而易见的是,在其他示例中,应用128的组件可以被分离成不同的应用,或者被组合成其他组件集。图2中示出的组件中的一些或全部还可以被实现为专用的硬件组件,诸如一个或多个专用集成电路(ASIC)或FPGA。例如,在一个实施例中,为了提高可靠性和处理速度,图2的组件中的至少一些被直接编程进成像控制器120,其可以是具有特别设计成优化大容量图像处理以用于检测从移动自动化装置103接收的大容量传感器数据的电路和存储器配置的FPGA或ASIC。在这样的实施例中,下面讨论的控制应用128中的一些或全部被体现在FPGA或ASIC芯片逻辑中。

简而言之,控制应用128包括被配置为获取描述货架110的特定属性的输入数据,处理输入数据以与参考数据进行比较,以及基于比较生成产品状态通知(诸如缺货、低库存和加塞通知)的组件。

更具体地,在本示例中,控制应用128包括图像预处理器200,该图像预处理器200被配置为获取并处理描述货架110和产品112的输入数据。控制应用128还包括参考生成器202,该参考生成器202被配置为生成与货架110有关的参考数据,以供由比较器204使用,该比较器204被配置为将参考数据和输入数据进行比较以标识它们之间的失配。控制应用128还包括分类器208,该分类器208被配置为分类比较器204的输出(就是上述的失配)。此外,控制应用128包括验证器,被配置为验证分类器208的输出,以及通知器216,被配置为基于分类器208和验证器212的输出生成状态通知。

参考图2示出的组件,现在将更详细地描述控制应用128的功能。转向图3,示出了对象状态检测的方法300。将结合如上所述的系统100上的执行来描述方法300。

方法300的执行开始于框305,此处控制器120,尤其是图像预处理器200被配置为获取输入数据,该输入数据包括至少一个货架图像和从货架图像导出的属性的至少一个指示符。在本示例中,货架图像是描绘了货架110的区域和由货架的该区域支撑的产品112的数字图像(例如,RGB图像)。在一些示例中,上述指示符包括间隙指示符。转向图4A,示出了输入图像400,包括两个间隙指示符408-1和408-2。每个间隙指示符408限定了边界框,该边界框指示相对于图像400的产品112之间的间隙的位置,在该位置处可以看到货架110的背面412。如图4A所示,在本示例中,在框305处获取间隙指示符408作为图像400上的覆盖。在其他示例中,代替地将间隙指示符作为图像400所包括的元数据字段来获取,或者作为与图像400一起的一组区别值(例如,边界框坐标)来获取。在其他实例中,上述间隙指示符被获取作为二进制间隙掩模(mask),其指示图像400的已经被分类为间隙的区域(例如,具有高强度)和图像400的尚未被分类为间隙的区域(例如,具有低强度)。

在其他示例中,参考图4B,指示符包括对象指示符416(示出了其三个示例416-1、416-2和416-3)。每个对象指示符416包括对象标识符420,诸如与产品112相对应的SKU号、文本串等。在图4B所示的示例中,对象标识符420-1、420-2和420-3是标识相应产品112的文本串。每个对象指示符416还包括图像400内的对象位置424。在示出的示例中,在框305处获取对象位置424-1、424-2和424-3作为覆盖在图像400上的边界框。在其他示例中,对象位置424和对象标识符420包含在图像400的元数据字段中,或作为与图像400相关联的区别数据(例如,单独的文件)被接收。更具体地,控制应用128包括产品识别引擎,该产品识别引擎被配置为将图像400的各种图像特征与产品模型的数据库进行比较,并选择具有与图像400中的那些图像特征匹配的图像特征的产品模型。对于每个所选择的产品模型,产品识别引擎被配置为将包括匹配图像特征的位置以及与那些特征相对应的对象标识符424的指示符416***图像400或以其他方式与图像400相关联。

在框305处,图像预处理器200还被配置为获取与图像400相对应的深度测量。在框305处获取的深度测量和图像通常基本上由装置103同时捕获并存储在储存库132中。因此,在框305处,图像预处理器200被配置为从储存库中检取图像400和深度测量。在本示例中,深度测量与图像400进行配准,也就是说,每个深度测量都被分配了图像400内的位置(例如,像素坐标)。在其他示例中,如果上述配准尚未被完成,则图像预处理器200被配置为将深度测量配准到图像400。

此外,在本示例中,图像预处理器200被配置为基于图4所示的指示符分割上述深度测量。也就是说,图像预处理器200被配置为将由指示符408或416限定的边界框投影到深度测量上,并且从而将深度测量的子集分配给每个边界框。如现在将显而易见的是,这种分割组装了深度测量的组,其对应于各个间隙(对于指示符408)和机器识别的产品112(对于指示符416)。

回到图3,在框310处,图像预处理器200被配置为将输入数据配准到公共参考系。公共参考系是包含货架110的零售(或其他)环境的先前定义的坐标系。转向图5,描绘了原点500,其定义了坐标系;因此,每个货架110以及零售环境内的任何其他对象可以被分配相对于原点500的坐标。在框310处,图像预处理器200因此被配置为标识由在框305处获取的图像400所描绘的货架110的区域。在本示例中,这样的区域的标识是基于由该装置在图像400和深度测量被捕获时生成的并被存储在储存库132中的导航数据。例如,在框310的当前执行中,图像预处理器200标识出图像400和对应的深度测量描绘了货架110的区域504。

在框315处,图像预处理器200被配置为合并在公共参考系中重叠的指示符。更具体地,在一些示例中,在框305处获取的输入数据包括描绘了货架110的重叠部分的多个图像。装置103通常在沿着货架110行进的同时捕获图像流,并因此每个货架110的每个区域通常都在多于一个捕获图像中有所描绘。因此,在框305处,图像预处理器200获取一组相邻图像(即,由装置103依次捕获的一组图像)。图6描绘了图像400和第二图像600,第二图像600描绘了与图像400所描绘的区域重叠的货架110的区域。

在框305处,图像预处理器200被配置为将图像400和600彼此配准(即,到一组公共像素坐标),例如通过将合适的图像特征配准操作(例如,边缘和斑点(blob)标识和匹配)施加到图像400和600。图6还示出了从图像400和600的配准所得的经配准图像604,为了简单起见,省略了产品112和货架。在已经配准了图像400和600的情况下,图像预处理器200被配置为标识指示符的子集(即,在图6的示例中的间隙指示符408-1、408-2、408-1'和408-2'当中的子集),该指示符的子集在经配准图像604中具有重叠的位置。如图6所见,来自图像600的间隙指示符以较重的线宽与来自图像400的间隙指示符重叠。

间隙指示符408和408'虽然重叠,但是例如由于在图像400和600的捕获期间装置103的不同物理位置,以及由于在图像400和600中影响控制应用128检测间隙的成像伪像(例如,照明或对比度变化),而没有完美地重叠。对于重叠指示符的每个子集(即,在所示示例中的两个子集,指示符408-1和408-1',以及指示符408-2和408-2'),图像预处理器200被配置为选择重叠指示符中的一个,以经由方法300进行进一步处理。例如,输入数据可以包括与每个指示符408相关联的置信水平,该置信水平在输入数据(即,间隙指示符或对象指示符)的生成期间确定。在这样的示例中,图像预处理器200被配置为从每个子集中选择具有最高置信值的一个指示符408。在其他示例中,图像预处理器200被配置为生成合并的指示符,该合并的指示符由每个子集内的重叠区域组成。图6示出了两个这样的合并的指示符608-1和608-2。在其他示例中,对于指示符416(即,对象指示符)或指示符408(即,间隙指示符)或两者,框315的执行被省略。

再次参考图3,在框320处,比较器204被配置为(例如,从储存库132)获取与由输入数据在公共参考系中描绘的位置(即如图5所示的位置504)相对应的参考数据,并将参考数据与在框305处获取的输入数据进行配准。转向图7A和7B,示出了参考数据的两个示例。具体地,图7A示出了参考货架图700的一部分,其包含参考指示符704-1、704-2和704-3。每个指示符704限定了参考位置,例如经由公共参考系内的边界框。每个指示符704还包括产品标识符,诸如文本串(如图7A所示)、SKU号等。另外,指示符704可各自包括饰面数量,该饰面数量指示预期在对应的边界框内、具有相同标识符的相邻产品的数量。因此,指示符704-3指示在指定的边界框内,预期在货架110上存在两盒相邻的“Acme脆米(Acme Crunch)”。

图7B描绘了在框320处获取的参考数据的另一示例形式。特别地,图7B描绘了包括货架图像(例如,RGB图像)的参考数据710,该货架图像包括多个参考对象指示符。每个参考对象指示符包括参考位置714-1、714-2、714-3、714-4(在本示例中示出为边界框),以及相关联的参考产品标识符718-1、718-2、718-3、718-4。从储存库132中检取参考数据710,该参考数据710也可以称为实图(realogram)。另外,参考数据710包括如以上结合框305的执行所描述的分割到每个边界框714的深度测量。

在其检取之前,参考数据710可以由参考生成器202生成或更新。具体地,参考生成器202被配置为在零售环境中的“满库存”条件下隔离地执行方法300的框305、310,以及在一些示例中方法300的315)。也就是说,当零售环境中存满产品112时,装置103可以被配置为遍历货架110并捕获图像数据和深度测量。在预定时间间隔内执行用于参考数据生成的输入数据的捕获。例如,可以在零售环境向顾客开放之前每天执行一次参考数据捕获。其他合适的时间段也可以用于参考数据捕获。

已经获取输入图像和深度数据的情况下,参考生成器202被配置为通过将输入数据提供给上述的产品识别引擎,来获取如7A和7B所示的参考对象指示符。如现在将显而易见的是,参考生成器202从产品识别引擎接收参考位置714和参考对象标识符718。然后,参考生成器202被配置为将图像以及参考对象指示符与公共参考系内的位置相关联地存储在储存库132中。

在框325处,响应于获取参考数据,比较器204被配置为确定在框320处检取的参考数据与在框305-315处获取并处理的输入数据之间是否存在任何失配。在一些示例中,其中输入数据包括间隙指示符408,比较器204被配置为检取货架图700作为参考数据,并确定间隙指示符408是否与任何参考指示符704重叠。当确定为否(即,没有间隙指示符与任何参考指示符704重叠)时,方法300的执行前进到框335,这将在下面讨论。然而,在本示例的执行中,如图8所见,输入数据与货架图700的配准揭示了间隙指示符408(在货架图700上示出为投影800-1和800-2)与所有三个参考指示符704重叠。

图9示出了包括对象指示符416的输入数据与实图710的配准。当输入数据包括对象指示符416时,比较器204被配置为检取实图710并确定参考对象指示符714和718中的任何一个是否未表示在输入数据中,以及对象指示符416中的任何一个是否未表示在参考数据710中。如图9所见,两个参考指示符未表示在输入数据中,如分别对应于产品“果汁(Juice)”和产品“Acme脆米”的参考指示符的阴影区域900-1和900-2所示。此外,输入数据中包括的一个对象指示符在参考数据710中未表示,如对应于产品“Acme可乐(Acme Cola)”的对象指示符416-3的阴影区域900-3所示。

回到图3,在框325处的肯定确定之后,比较器204被配置为将失配的对象标识符(也称为目标对象标识符)提供给分类器208。在框330处,分类器208被配置为向每个目标对象标识符分配多个预先配置状态类型中的一个。在本示例中,状态类型包括缺货(OOS)状态、低库存(LS)状态和加塞(plug)(PL)状态。对于本领域技术人员将显而易见的是,OOS状态指示对应的产品已从货架110上耗尽并且需要补充。LS状态指示对应的产品尽管没有完全耗尽,但接近于耗尽。PL状态指示对应的产品已被错放在货架110上,即根据参考数据,对应的产品在其被检测到的位置中不被预期。

当失配指示输入数据中的对象标识符未在参考数据中表示时,如图9中结合“Acme可乐”产品所示,分类器208被配置为将PL状态类型分配给对象标识符。然而,当失配指示相反情况时,即参考数据中的对象标识符未在输入数据中表示,分类器208被配置为执行图10所示的分类处理,以为相关对象标识符选择OOS和LS状态之一。

参考图10,在框1005处分类器208被配置为确定在框325处标识的失配的覆盖程度。在由间隙指示符408揭示失配的情况下,在框1005处分类器208被配置为确定与间隙指示符408重叠的至少一个参考对象指示符的比例。再次参考图8,例如,如阴影区域800-1所示,间隙指示符408-1与参考指示符704-2完全重叠(即与参考指示符704-2限定的区域的100%重叠),并且还与参考指示符704-1的区域约12%重叠。转向图9,阴影区域900-1和900-2指示整个参考位置指示符714-2和714-4未表示在输入数据中(即,与参考指标714-2和714-4相关联地检测到的失配的覆盖程度为100%)。

在一些示例中,分类器208被配置为将覆盖程度确定为根据参考数据预期但未在输入数据中表示的饰面数量,而不是如上所讨论的百分比。为了在输入数据包括间隙指示符408时确定缺少的饰面的数量,分类器208被配置为根据参考数据确定相关产品的饰面宽度。参考图7,在本示例中,货架图700中的每个参考指示符704限定了预期包含给定产品的区域的总宽度,以及该产品的饰面的数量。因此,通过将指示符总宽度除以来自货架图的饰面数量来确定饰面宽度。在其他示例中,货架图可能还包含定义每个饰面的宽度(即,产品的宽度)的数据。因此,回到图10,分类器208被配置为确定失配对象指示符的饰面宽度,并且确定被给定间隙指示符408覆盖了多少个饰面宽度。如图8所示,由阴影区域800-1表示的覆盖程度对应于“果汁”产品的一个饰面,并且对应于“Acme狗粮”产品的一个饰面的约12%。与此同时,阴影区域800-2覆盖“Acme脆米”产品的一个饰面的约70%。

分类器208被配置为调整被失配覆盖的饰面数量,例如基于预先配置的阈值。例如,如果在框1005处确定的覆盖程度大于65%,则分类器208被配置为将覆盖程度调整为一个饰面。相反,如果覆盖程度小于50%,则分类器208被配置为将覆盖程度设置为零饰面(因为这样的低覆盖可能是由于产品112之间的预期的空间,而不是指示缺失产品的空间造成的)。

当输入数据包括对象指示符416时,分类器208被配置为通过对未表示在输入数据中的具有相同产品标识符的相邻参考指示符的数量进行计数来确定饰面的覆盖程度。如从图9所见,在本示例中,阴影区域900-1和900-2的覆盖程度各自为一个饰面。

在框1010处,在已经确定了在框325处标识的失配的覆盖程度的情况下,分类器208被配置为确定每个覆盖程度是否满足或超过上限阈值。上限阈值可以被设置为百分比(例如,货架图指示符704的区域的90%),或饰面的数量。通常,上限阈值对应于失配产品的所有预期的饰面。因此,参考指示符704-2的上限阈值是一个饰面,并且在框1010处对于阴影区域800-1的确定是肯定的。然而,参考指示符704-3的上限阈值是二,并且在框1010处对于阴影区域800-2的确定因此是否定的。

当在框1010处的确定为肯定时,在框1015处分类器208将OOS状态分配给相关参考对象标识符。然而,当在框1010处的确定是否定时,分类器208进行到框1020以确定覆盖程度是否满足或超过下限阈值。分类器208可以基于预期的产品饰面数量(如参考数据700或710所指定的)确定下限阈值。更具体地,将下限阈值设置为预期饰面的总数减去所需饰面的最小数量,以避免生成低库存状态通知。通常,当产品中只有一个饰面剩余但预期饰面数量大于一个时,会生成低库存通知。因此,下限阈值通常是比饰面的总预期数量少一个。因此,如果覆盖程度满足下限阈值,则仅保留产品的一个饰面,并且在框1025处分类器208被配置为将LS状态分配给相关参考对象标识符。再次参考图8,LS状态被分配给由阴影区域800-2指示的失配(即,分配给产品“Acme脆米”)。然而,当在框1020处的确定是否定时,分类器208被配置为向失配分配“正常”状态,指示尽管产品没有被充分地存放在货架110上,但其尚未被充分耗尽以保证低库存通知。

在分类过程之后,该方法的执行进行到框335。在框335处,验证器212被配置为验证分类器208的输出,例如基于在框305处获取的深度测量。在框335处的验证包括几个不同的验证中的任一个或任意组合。例如,验证器212可以被配置成获取相对于输入数据的货架边缘位置,并且检取已知的货架深度(即,货架背面412和货架边缘之间的距离)。可以从深度测量检测货架边缘位置,或可以从储存库132检取货架边缘位置。在已经获取了货架边缘位置和货架深度的情况下,验证器212被配置为确定对应于在框330处被分配OOS状态的任何产品的区域的深度测量是否充分超过货架边缘以确认OOS状态。即,验证器212被配置为确定与阴影区域800-1相对应的深度测量是否比货架边缘深度大基本上等于已知货架深度的裕量。如果确定是否定的,则对应的间隙指示符408可能不正确(即,在货架110上可能存在被检测为间隙的产品)。当确定是否定的,验证器212被配置为将状态分类从OOS改变为PL。

在其他示例中,对于分配了PL状态的参考对象标识符,验证器212被配置为从储存库132中检取与相关参考对象标识符相对应的深度测量的分段。由于分配了加塞状态的产品放错了位置,因此从公共参考系中与输入数据所描述的位置不同的位置中检取深度测量。响应于检取表示加塞产品的三维扫描的深度测量的分段,验证器212被配置为将所检取的参考深度测量与对应于加塞的分段深度测量(例如,对应于图9中的阴影区域900-3的深度测量)进行比较。当参考深度测量与输入深度测量匹配时,确认加塞状态。否则,验证器212被配置为丢弃加塞状态分配,或者例如改变分配以指示降低的置信水平。

在另外的示例中,验证器212被配置为获取如上所述的货架边缘位置,并且确定使用任何对象指示符416分割的深度测量是否超过货架边缘位置的深度可配置阈值。如果超过阈值,则将对应的产品朝向货架背面412放置,远离货架边缘。例如,参考图9,对象指示符416指示存在产品“Acme狗粮”,如由参考实图710所预期的那样。然而,将对应于对象位置424-1的深度测量与货架边缘的比较揭示了对象位置424-1距离货架边缘的距离比预定阈值(例如,三厘米)更远。因此,验证器212被配置为生成附加低库存状态分配,超出了在框330处所生成的那些。

在框335处完成验证之后,在框340处通知器被配置为基于分类器208和验证器212的输出生成一个或多个状态通知。每个状态通知包括产品标识符、分配给产品标识符的状态、以及在公共参考系中对应指示符的位置。表1包含基于上述输入数据和参考数据的示例生成的状态通知列表。

表1:状态通知

产品ID 状态 位置
Acme脆米 LS [X,Y,Z]
Acme狗粮 LS [X,Y,Z]
果汁 OOS [X,Y,Z]
Acme可乐 PL [X,Y,Z]

如表1所见,第一、第三和第四行表示基于在框330处分配的分类生成的状态通知,而第二行表示在框335处由验证器212生成的状态通知。在一些示例中,状态通知存储在储存库132中。在其他实例中,状态通知被直接传送给客户端计算设备,诸如移动设备105。

在上述说明书中已经描述了具体实施例。然而,本领域普通技术人员理解,可做出各种修改和改变而不脱离如下权利要求书所阐述的本发明的范围。因此,说明书和附图被认为是图示性的而非限定性的意义,并且所有这种修改都旨在被包括在本教导的范围内。

这些益处、优势、问题解决方案以及可能使任何益处、优势或解决方案发生或变得更为突出的任何(多个)要素不被解释成任何或所有权利要求的关键的、必需的或必要的特征或要素。本发明单独由所附权利要求书限定,包括在本申请处于未决状态期间做出的任何修改以及出版后这些权利要求的所有等效物。

此外,在该文档中,诸如第一和第二、顶部和底部等之类的关系术语可单独地用来将一个实体或动作与另一个实体或动作区别开,而不一定要求或暗示这些实体或动作之间具有任何实际的这种关系或顺序。术语“包括”、“包括有”、“具有”、“具备”、“包含”、“包含有”、“涵盖”、“涵盖有”或它们的任何其他变型旨在覆盖非排他性包括,以使包括、具有、包含、涵盖一要素列表的过程、方法、物品或装置不仅包括那些要素还可包括对该过程、方法、物品或装置未明确列出的或固有的其他要素。以“包括一”、“具有一”、“包含一”、“涵盖一”开头的要素,在没有更多约束条件的情形下,不排除在包括、具有、包含、涵盖该要素的过程、方法、物品或装置中有另外的相同要素存在。术语“一”和“一个”被定义为一个或更多个,除非本文中另有明确声明。术语“基本上”、“大致上”、“近似”、“约”或这些术语的任何其他版本被定义为如本领域内技术人员理解的那样接近,并且在一个非限定性实施例中,这些术语被定义为在10%以内,在另一实施例中在5%以内,在另一实施例中在1%以内,而在另一实施例中在0.5%以内。本文中使用的术语“耦合的”被定义为连接的,尽管不一定是直接连接的也不一定是机械连接的。以某种方式“配置”的设备或结构至少以该种方式进行配置,但也可以以未列出的方式进行配置。

要理解,一些实施例可包括一个或多个通用或专用处理器(或处理设备摂),例如微处理器、数字信号处理器、定制的处理器和现场可编程门阵列(FPGA)以及唯一存储的程序指令(包括软件和固件两者),所述唯一存储的程序指令控制一个或多个处理器以连同某些非处理器电路实现本文所描述的方法和/或装置的一些、多数或全部功能。替代地,一些或全部功能可由无存储程序指令的状态机来实现,或者在一种或多种专用集成电路(ASIC)中实现,其中各种功能或某些功能的某些组合被实现为定制逻辑。当然,也可使用这两种方法的组合。

此外,实施例可被实现为计算机可读存储介质,该计算机可读存储介质具有存储在其上的计算机可读代码,用于对(例如包括处理器的)计算机编程以执行如本文所描述和要求保护的方法。这种计算机可读存储介质的示例包括但不限于硬盘、CD-ROM、光存储器件、磁存储器件、ROM(只读存储器)、PROM(可编程只读存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)以及闪存。此外,预期本领域普通技术人员虽然做出由例如可用时间、当前技术和经济考虑促动的可能显著的努力以及许多设计选择,但在得到本文所公开的构思和原理指导时,将容易地能以最少的试验产生此类软件指令和程序以及IC。

本公开的摘要被提供以允许读者快速地明确本技术公开的性质。提交该摘要,并且理解该摘要将不用于解释或限制权利要求书的范围或含义。此外,在上述具体实施方式中,可以看出出于使本公开整体化的目的,各个特征在各实施例中被编组到一起。这种公开方法不应被解释为反映要求保护的实施例与各项权利要求中明确记载的相比需要更多的特征的意图。相反,如以下权利要求所反映,发明主题在于少于单个公开的实施例的全部特征。因此,以下权利要求由此被结合入具体说明中,其中各个权利要求作为单独要求保护的主题代表其自身。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:发送设备、接收设备以及操作设备的方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!