用于自动化图像获取的机器人的制作方法

文档序号:16991828发布日期:2019-03-02 01:01阅读:198来源:国知局
用于自动化图像获取的机器人的制作方法
本申请要求2016年1月8日提交的第62/276,455号美国临时专利申请的优先权,该申请的全部内容在此以引用的方式并入本文中。本公开涉及高分辨率图像的自动化获取,并且更具体地,涉及一种可以用于收集此类图像的机器人和软件。获取的图像可以是例如在零售或仓库场所中获取的室内图像。可以分析图像以从条形码和其他产品标识符中提取数据来识别产品以及货架或展览物品的位置。
背景技术
:零售店和仓库在沿着商店/仓库中的过道的货架中囤积多种产品。然而,随着商店/仓库的规模增大,更难以有效地管理产品和货架。例如,零售店可能会将产品囤积在不正确的位置、给产品标错价格,或者未能囤积可用于储存在面向消费者的货架中的产品。具体地,很多零售商并不知道他们的商店、百货公司、仓库等内的产品的确切位置。零售商传统上以极大的人工花费雇佣商店检验员并且进行定期审核来管理库存。此外,管理团队对产品库存团队的有效性没有多少了解,并且没有办法确保识别并纠正库存错误。因此,需要用于收集与零售或仓库场所处的货架物品相关联的信息的改进方法、软件和装置。技术实现要素:在一方面,提供一种机器人,所述机器人包括:运送设备,其用于沿着路径移动机器人;线扫描相机,其安装到机器人上动而移动;以及控制器,其通信地耦合到运送设备和线扫描相机,并且被配置成:控制机器人使用运送设备沿着路径移动;使用线扫描相机随着机器人移动而捕获沿着路径的物体的一系列图像,该一系列图像中的每个图像具有至少一个垂直像素线;并且控制机器人和线扫描相机的速度,以获取超过机器人沿着路径的每线性移动单位的预定数量的垂直像素线,以便允许图像被组合来形成组合图像,所述组合图像具有大于预定像素密度的水平像素密度。在另一方面,提供一种机器人,所述机器人包括:运送设备,其用于沿着路径移动机器人;线扫描相机,其安装到机器人上并且被配置成随着机器人移动而移动;聚焦设备,其具有第一镜;第二镜,所述第二镜与第一镜相对且在其中限定光学空腔;以及第三镜,所述第三镜倾斜以将光引导到线扫描相机并且设置在第一镜与第二镜之间,其中镜中的至少一个是可移动的以改变光从沿着路径的物体行进到线扫描相机的路径;以及控制器,其通信地连接到运送设备、线扫描相机和聚焦设备,并且被配置成:控制机器人使用运送设备沿着路径移动;使用线扫描相机随着机器人移动而捕获沿着路径的物体的一系列图像,沿着路径的物体在距线扫描相机的不同距离处;并且控制可移动镜以在机器人移动时维持线扫描相机与邻近路径的物体之间的基本上恒定的工作距离。在另一方面,提供一种机器人,所述机器人包括:运送工具,其用于沿着路径移动机器人;线扫描相机,其安装到机器人并且被配置成随着机器人移动而移动;以及控制器,其通信地连接到运送工具和线扫描相机,并且被配置成:控制机器人使用运送工具沿着路径移动;使用线扫描相机随着机器人移动而捕获沿着路径的物体的一系列图像序列,图像序列中的每个图像序列中的每个图像具有多个预定曝光值中的一个,预定曝光值在高曝光值与低曝光值之间变化;针对图像序列中的每个图像序列,选择不具有饱和像素的序列中的图像,以获得一系列选择的图像;并且将该一系列选择的图像组合来创建邻近路径的物体的组合图像。在另一方面,提供一种用于使用连接到机器人的线扫描相机来捕获图像的方法,所述方法包括:控制机器人使用运送工具沿着路径移动;使用线扫描相机随着机器人移动而捕获沿着路径的物体的一系列图像,该一系列图像中的每个图像具有至少一个垂直像素线;以及控制机器人和线扫描相机的速度,以获取超过机器人沿着路径的每线性移动单位的预定数量的垂直像素线,以便允许图像被组合来形成组合图像,所述组合图像具有大于预定像素密度的水平像素密度。在另一方面,提供一种机器人,所述机器人包括:运送设备,其用于沿着路径移动机器人;线扫描相机,其安装到机器人,并且被配置成随着机器人移动而移动并且随着机器人移动而捕获沿着路径的物体的一系列图像;聚焦设备,其具有第一镜;第二镜,所述第二镜与第一镜相对以在其中限定光学空腔,并且安置成接收来自沿着路径的物体的光并将光重新引导到第一镜;以及第三镜,所述第三镜设置在第一镜与第二镜之间并且倾斜以接收来自第一镜的光并将光重新引导到线扫描相机,并且其中聚焦设备延长线扫描相机与邻近路径的物体之间的工作距离;以及控制器,其通信地连接到运送设备和线扫描相机,并且被配置成控制机器人使用运送工具沿着路径移动且使用线扫描相机随着机器人移动而捕获沿着路径的物体的一系列图像。结合以下描述,从附图中将明白其他特征。附图说明在示出示例实施例的附图中:图1是示例性实施例的机器人的前视平面图和侧视平面图;图2是图1的机器人的示意性框图;图3a至图3b示出用于与图1的机器人一起使用的第一示例聚焦设备;图4a至图4c示出用于与图1的机器人一起使用的第二示例聚焦设备;图5a是图1的机器人在零售店中的透视图;图5b是零售店和图1的机器人所沿循的零售店中的示例路径的俯视示意图;图5c是图1的零售智能机器人在零售店中沿循图5b的路径的透视图;图5d至图5f是图1的零售智能机器人在零售店中沿循图5b的路径可以捕获的示例系列图像的示意图;图6a至图6d是图1的机器人中使用的示例性成像系统的部件的俯视示意图;图7a至图7c是描绘可以由图1的机器人的软件执行的示例性框的流程图;图8示出图1的机器人可以用于获取图像的示例性曝光图案;以及图9是描绘用于分析由图1的机器人捕获的图像的示例性框的流程图。具体实施方式图1描绘用于获取高分辨率成像数据的示例机器人100。如将清楚的那样,机器人100尤其适合于在室内获取图像,例如在零售或仓库场所。方便的是,可以分析获取的图像来识别和/或定位库存、货架标签等。如图所示,机器人100容纳在壳体104中并且具有两个或更多轮子102,所述轮子沿着单个旋转轴线安装以允许运送机器人100。机器人100还可以具有安装在第二旋转轴线上的另外第三(并且可能有第四)轮子。机器人100可以使用已知的平衡机构来维持平衡。或者,机器人100可以使用三个或更多轮子、轨道、支腿或者其他运送机构进行运送。如图2所示,机器人100包括用于沿着路径200(图5a中描绘)来移动机器人100的运送设备128。随着机器人100移动,机器人100使用机器人100上的成像系统150来捕获沿着路径200的一侧或两侧的物体的一系列图像。控制器120控制机器人100的运动以及通过成像系统150对单独图像的获取。该一系列图像中的每个单独的获取的图像具有至少一个垂直像素线。该一系列图像可以被组合来形成具有扩大尺寸的组合图像。因此,成像系统150为组合图像中的沿着一个轴线的几乎无限尺寸的图像提供可能性。方便的是,每线性移动单位获取的像素数量可以由控制器120独立于机器人100的运动速度来控制。当机器人100以低速移动时,可以获取给定曝光的大量图像。速度越高,在相同曝光下可以获取的图像就越少。曝光时间也可以改变。该一系列图像中可用的图像越多,由组合图像表示的每线性单位的可能像素数量就越高。因此,路径200的每线性单位的像素密度可以部分取决于机器人100的速度。机器人100可以将其沿着路径200的位置与每个捕获的图像相关联地存储。位置可以例如以从路径中导出的坐标进行存储,并且因此可以与路径200的起点有关。绝对位置可以进一步从路径200的起点的绝对位置确定,起点的绝对位置可以通过gps、ips或相关的一些固定标志或者其他方面确定。因此,随后可以分析组合图像,以识别沿着路径200的特征,诸如产品标识符、货架标签等。此外,标识符数据和位置数据可以进行交叉参考以确定沿着路径200的各种产品和货架标签固定装置的位置。在一个实施例中,路径200可以限定沿着零售店、图书馆或者其他内部空间的过道的路径。此类过道通常包括具有标签的货架,所述标签采用一个或多个通用产品代码(‘upc’)或者其他识别放置在沿着邻近路径200的过道的货架上的产品、书或其他物品的产品标识符的形式。标签的内容可以在高分辨率组合图像中可识别的;并且因此,可以被解码以允许进一步分析从而来确定货架布局、可能的产品量,以及其他产品和货架数据。为了帮助识别标签上的特定类型的产品标识符(诸如,upc),机器人100可以创建组合图像,所述组合图像具有比解码特定类型的产品标识符所需的预定像素密度更大的路径200的每线性单位的水平像素密度。例如,upc由表示一和零的白条和黑条组成;因此,相对低的水平像素密度通常足以使得机器人100能够对upc解码。然而,为了识别文本,可能需要更高的水平像素密度。因此,可以根据机器人100被配置以分析的产品标识符的类型来限定预定水平像素密度。由于组合图像的路径200的每线性单位的水平像素密度可以部分地取决于机器人100沿着路径200的速度,因此机器人100可以根据将要被分析的产品标识符的类型来控制其速度。机器人100(图1)还包括成像系统150(图2)。成像系统150的至少一些部件可以安装在可由机器人100移动的底盘上。底盘可以在机器人100的内部;因此,机器人100还可以包括窗口152,以允许光线到达成像系统150并且捕获图像。此外,机器人100可以具有光源160,所述光源安装在机器人的一侧上,以便为成像系统150照亮物体。来自光源160的光到达邻近机器人100的物体,被(部分地)反射回去并且进入窗口152以到达成像系统150。光源160可以横向地朝向机器人100的后端且靠近成像系统150安置,使得由光源产生的光被反射而到达成像系统150。在一个实施例中,机器人100还包括安置在机器人100的前端附近的深度传感器176(例如,渡越时间(time-of-flight)相机)。深度传感器176可以接收反射信号来确定距离。通过将窗口152安置在机器人100的后端附近并且将光源160和成像系统150安置在机器人100的后端附近,深度传感器176可以收集表明邻近机器人100的物体的距离的深度数据。深度数据可以被转发到成像系统150。由于机器人100在它捕获图像时移动,因此成像系统150可以基于由传感器176收集的深度数据来调整准备捕获物体的图像的各种参数(诸如,焦点)。图2是示例机器人100的示意性框图。如图所述,机器人100可以包括一个或多个控制器120、通信子系统122、采取随机存取存储器形式的持久储存存储器124和只读存储器的适当组合,以及一个或多个i/o接口138。控制器120可以是intelx86tm、powerpctm、armtm处理器等。通信子系统122允许机器人100访问外部存储装置,包括基于云的存储装置。机器人100还可以包括由一个或多个i/o接口138互连到机器人100的输入和输出外围设备。这些外围设备可以包括键盘、显示器和鼠标。机器人100还包括通常由电池和电池充电电路组成的电源126。机器人100还包括运送工具128,以允许机器人100移动,包括例如耦合到轮子102(图1)的电机。存储器124可以被组织成传统文件系统,由支配机器人100的整体操作的操作系统130控制和管理。os软件130可以是例如基于unix的操作系统(例如,linuxtm、freebsdtm、solaristm、macosxtm等)、微软windowstm操作系统等。os软件130允许成像系统150访问机器人100的控制器120、通信子系统122、存储器124,以及一个或多个i/o接口138。机器人100可以通过文件系统来将路径数据、捕获的图像以及其他数据存储在存储器124中。机器人100还可以通过文件系统来将用于沿着路径运送机器人100的运送应用132、用于捕获图像的成像应用134以及分析应用136存储在存储器124中,如下文详述。机器人100还包括成像子系统150,所述成像子系统包括线扫描相机180。此外,成像系统150还可以包括聚焦设备170和光源160中的任一个。机器人100可以包括两个成像系统,每个成像系统被配置成捕获机器人100的相反侧上的物体的图像,例如,第一成像系统被配置成捕获在机器人100的右边的图像,并且第二成像系统被配置成捕获在机器人100的左边的图像。这种两个成像系统的布置可以允许机器人100仅横穿路径200一次来捕获机器人100的两侧的物体的图像。每个成像系统150还可以包括堆叠在彼此顶部上的两个或更多成像系统,以捕获更宽的垂直视场。线扫描相机180包括线扫描图像传感器186,其可以是cmos线扫描图像传感器。线扫描图像传感器186通常包括窄像素阵列。换言之,线扫描图像传感器186的分辨率通常在垂直轴线或水平轴线上是一像素或以上,并且在可选轴线上是更大数量的像素,例如,介于512与4096像素之间。当然,这个分辨率将来可以改变。线扫描图像传感器186的每行分辨率可以对应于单个像素,或者对应于不止一个像素。在操作中,线扫描图像传感器186不断地在横向于它较长长度的方向上移动,并且线扫描相机180捕获在其视场250中的物体的一系列图像210(图5c至图5f)。一系列图像210中的每个图像(例如,图像211、212、213……)具有单个像素分辨率的一侧和多个像素分辨率的一侧。该一系列图像210随后可以组合,使得每个图像按照图像被捕获的顺序邻近另一图像放置,由此形成具有更高累加分辨率(cumulativeresolution)的组合图像。组合图像随后可以存储在存储器124中。在一个示例实施例中,线扫描相机180中使用具有1×4096像素的分辨率的线扫描图像传感器。具有这样的分辨率的示例线扫描图像传感器由basler(tm)提供并且具有型号baslerracerral4096-24gm。线扫描图像传感器可以进行定向,以沿着垂直轴线捕获具有4096个像素的单个像素列。线扫描图像传感器因而被配置成捕获图像,每个图像具有至少一个像素列。线扫描图像传感器随后由机器人100沿着路径移动,以捕获一系列图像。该一系列图像中的每个图像对应于机器人100和成像系统150沿着路径的位置。该一系列图像随后可以被组合来创建组合像素,所述组合像素具有一系列像素列和4096像素的垂直分辨率。例如,如果捕获并组合100000个图像,那么组合图像可以具有100000像素的水平分辨率和4096像素的垂直分辨率(即,100000×4096)。因此,线扫描相机180允许获取具有大量(高)像素/列水平分辨率的组合图像。组合图像的分辨率不受相机本身限制。相反,水平像素密度(每线性移动单位的像素)可以取决于每单位时间捕获的图像数量和机器人100沿着路径200的移动速度。每单位时间捕获的图像数量还可以取决于每个图像的曝光时间。路径200通常由例如从点‘a’到点‘b’的预定长度组成。如果机器人100沿着路径200缓慢地移动,那么与更快地移动的机器人100相比,可以在点‘a’与‘b’之间捕获相对大量的图像。每个捕获的图像仅提供单个垂直分辨率线(或很少几个垂直分辨率线)。因此,机器人100可以行进的最大速度部分地受到机器人100必须捕获的每线性移动单位的垂直线数量限制,以允许将产品标识符被解码。此外,除了高水平像素密度之外,线扫描相机180可以帮助减少组合图像中沿着水平轴线出现视差。由于该一系列图像中的每个捕获的图像仅具有一个或仅具有几个垂直分辨率线,因此图像将具有相对较窄的水平视场。相对较窄的水平视场可以导致组合图像中的沿着水平轴线的视差量减少,因为沿着水平轴线失真的可能性较低。线扫描相机180还可以使用时间延迟积分(‘tdi’)传感器来实现。tdi传感器具有多个分辨率线,而不是单行。然而,多个分辨率线用来提供改进的光敏性而不是更高分辨率的图像;因此,tdi传感器可以比传统线扫描传感器要求更低的曝光设置(例如,更少的光、更短的曝光时间等)。此外,线扫描相机180包括一个或多个透镜184。线扫描相机180可以包括透镜卡口,从而允许不同的透镜安装到线扫描相机180。或者,透镜184可以固定地连接到线扫描相机180。透镜184可以具有固定焦距或者具有可以利用控制器自动地控制的可变焦距。透镜184具有允许光行进穿过透镜的孔径。透镜184将光聚焦到线扫描图像传感器186上,如本领域中已知。孔径的大小可以是可配置的以允许更多或更少的光穿过透镜。孔径的大小也影响捕获图像中可接受地清晰的最近和最远物体。改变孔径会影响捕获图像的聚焦范围或景深(‘dof’)(即使不改变透镜的焦距也可)。宽孔径导致浅dof,即,图像中可接受地清晰的最近和最远物体彼此相对靠近。小孔径导致深dof,即,图像中可接受地清晰的最近和最远物体彼此相对远离。因此,为了确保物体(可以彼此远离)在图像中可接受地清晰,期望深dof和小孔径。然而,深dof需要的小孔径会减少可以到达线扫描图像传感器186的光量。为了控制线扫描相机180的曝光,控制器120可以改变曝光时间或图像传感器186的灵敏度(即,iso)。此外,成像系统150还可以包括具有多个灯元件的光源160,诸如,灯阵列或细长光源。在操作中,控制器120可以被配置成在捕获一系列的图像之前启动光源160,以照亮将要捕获其图像的物体。如图1所示,光源160安装在机器人100的一侧上,以便为成像系统150照亮物体。光源的灯元件可以集成到机器人100的壳体104中,如图1所示,或者容纳在从机器人100向外延伸的外部壳体中。光源160可以形成为一列灯。阵列中的每个灯可以是led灯、白炽灯、氙灯光源,或者其他类型的灯元件。在其他实施例中,可以使用细长荧光灯管(或者其他细长光源),而不是阵列。机器人100可以包括单个光源160,或者不止一个光源160。此外,可以提供被配置成使来自光源160的光聚集和/或准直的透镜166(或多个透镜)。换言之,透镜166可以将来自光源160的灯元件的光线引导并聚集到线扫描相机180的视场上。通过将光聚集和/或准直到线扫描相机的相对较窄视场,每个捕获的图像可以需要较少的曝光时间。为了使光聚集和/或准直,可以为光源160的所有灯元件提供单个大的透镜(例如,由玻璃形成的细长圆柱形透镜),或者可以为光源160的每个灯元件提供单独的透镜。此外,成像系统150还可以包括聚焦设备170,以保持置于距透镜184的不同距离处的物体在焦点上。聚焦设备170可以由控制器(诸如,控制器120(图2)或聚焦控制器)基于来自深度传感器176的输入或者存储在存储器(图1和图2)的深度数据进行控制。如上所述,深度传感器176可以靠近透镜184安装(例如,安装在平台上),并且被配置成感测深度传感器与邻近机器人100且邻近路径200的物体之间的距离。深度传感器176可以在机器人100的运动方向上安装在透镜184/窗口152前面。深度传感器176可以是被配置成产生距离图像的距离相机,或者发出光线(例如,红外光线)并且检测光线的反射的渡越时间相机,如本领域中已知。聚焦设备170可以在透镜184外部,使得透镜184具有固定焦距。图3a至图3b和图4a至图4c示出使用具有固定焦距的透镜的聚焦设备170的实施例。代替调整透镜184的焦距,聚焦设备170可以不时地进行调整以维持线扫描相机180与邻近机器人100且邻近路径200的物体之间的工作距离基本上恒定。通过维持工作距离基本上恒定,聚焦设备170使物体在图像传感器186处的焦点上,而无需改变透镜184的焦距。示例聚焦设备170包括安装在机器人100的底盘上且邻近线扫描相机180安置的镜302、304和308。物体可以置于距透镜184的不同距离处。因此,为了维持工作距离基本上恒定,镜302、304和308可以改变光从物体行进到达透镜184的总距离,如将说明。除了维持工作距离基本上恒定之外,另一个镜306还可以在光进入透镜184之前改变光的角度。如图所示,例如,镜306允许线扫描相机180捕获垂直于透镜184的物体(即,不是与透镜184相对的物体)的图像。镜302、304、306和308中的至少一个是可移动的(例如,附接到电机)。可移动镜是可移动的以改变光从沿着路径200的物体行进到线扫描相机180的路径,由此维持线扫描相机180与邻近机器人100且邻近路径200的物体之间的工作距离基本上恒定。控制器120可以被配置成调整可移动镜的位置和/或角度,以使线扫描相机180聚焦在邻近机器人100且邻近路径200的物体上,以便在沿着路径200的各个位置处维持工作距离基本上恒定。控制器120可以基于来自深度传感器186的输出来调整可移动镜。图3a和图3b中示出示例镜302、304和308。第一镜302和第二镜304彼此相对,并且在其中限定光学空腔。第三镜308设置在第一镜302与第二镜304之间的光学空腔中。进入光学空腔的光可以首先入射在第一镜302和第二镜304上,并且随后可以在第一镜302与第二镜304之间以之字形在光学空腔内反射。光随后可以入射在第三镜308上,所述第三镜可以使光穿过透镜184反射到图像传感器186上。如图3a和图3b所示,镜302、304和308是平面镜。然而,在其他实施例中,可以使用曲面镜。调整镜302、304和308中的任一个的位置会调整线扫描相机180与邻近机器人100且邻近路径200的物体之间的工作距离。类似地,调整镜308的角度还可以允许机器人100调整工作距离。因此,可以调整第一镜302与第二镜304之间的距离、第三镜308与图像传感器186之间的距离以及镜308的角度中的至少一个来维持工作距离基本上恒定。可以使用音圈或线性电机来调整镜中的任一个的位置和/或角度。音圈或线性电机可以导致镜中的任一个来回地移动到期望的位置或者围绕旋转角旋转。为了聚焦在物体312上,工作距离(即,光穿过聚焦设备170所沿循的路径)应对应于透镜的焦距。由于在机器人100沿着路径200移动时透镜184的焦距可以固定,因此来自物体的光沿循的路径的长度应保持基本上恒定,即使物体在距透镜184的不同距离处也是如此。因此,即使在物体处于更远或更近的物理距离时,移动第三镜308更远离或更靠近图像传感器186也可以确保工作距离的长度保持基本上恒定。图3a至图3b中示出实例。聚焦设备170可以被配置成在物体312处于距成像系统的距离d1(图3a)或距离d2(图3b)处时使物体312在焦点上。在图3a中,成像系统150被配置成通过将第三镜308维持在位置p1处来聚焦在距离d1处的物体312上。在图3b中,成像系统150被配置成通过将第三镜308维持在位置p2处来聚焦在距离d2处的物体312上。由于距离d2比距离d1更远离成像系统,因此聚焦设备170通过将第三镜308从位置p1移动到位置p2来进行补偿,位置p2比位置p1更靠近图像传感器186。图4a中示出聚焦设备170’的替代实施例。在这个实施例中,聚焦设备170’包括五个镜:第一镜302’、第二镜304’、第三镜306’、第四镜308’和第五镜310’。如前所述,第一镜302’和第二镜304’彼此相对,并且在其中限定光学空腔。第三镜306’和第四镜310’彼此相对,并且倾斜使得第三镜306’可以接收来自物体312’的光,并且随后使接收到的光穿过光学空腔反射到第五镜310’。在第五镜310’处接收的光随后反射到第二镜304’,并且随后在第一镜302’与第二镜304’之间来回地反射,直到光入射在第四镜308’上。入射在第四镜308’处的光穿过光学空腔而通过透镜184反射到图像传感器186上。第四镜308’由柱塞324连接到电机322,这允许控制器120控制第四镜308’沿着光学空腔的移动,并且还可以允许控制器120控制第四镜308’的角度。如图4a所示,镜302’、304’、306’、308’和310’是平面镜。然而,在其他实施例中,可以使用曲面镜。因此,调整镜302’、304’和308’中的任一个的位置会调整线扫描相机180与邻近机器人100且邻近路径200的物体之间的工作距离。类似地,调整镜308’和310’的角度还可以允许机器人100调整工作距离。因此,可以调整第一镜302’与第二镜304’之间的距离、第三镜308’与图像传感器186之间的距离以及镜308’和310’的角度中的至少一个来维持工作距离基本上恒定。还可以调整镜306’来维持工作距离并且改变相机180的视角。可以使用音圈或线性电机来调整镜中的任一个的位置和/或角度。音圈或线性电机可以导致镜中的任一个来回地移动到期望的位置或者围绕旋转角旋转。在又一实施例中,第四镜308”和第五镜310”可以分别附接到旋转驱动装置332和334,如图4b至图4c所示。旋转驱动装置332和334允许控制器120调整镜308”和310”的角度。在图4b中,镜308”和310”以第一角度安置,并且在图4c中以第二角度安置。如图所示,在图4b中光采取的路径比在图4c中光采取的路径短。通过改变光必须行进以到达线扫描相机180的距离,聚焦设备170维持线扫描相机180与邻近路径200的物体之间的工作距离基本上恒定。除了提供聚焦机构之外,聚焦设备170还可以延长线扫描相机180与邻近路径200的物体之间的工作距离。例如,如图3a至图3b所示,来自物体312的光并未直接指向线扫描相机180。如图所示,第二镜304接收来自物体312的光并且被安置成将光引导到第一镜302。类似地,第三镜308倾斜以接收来自第一镜302的光并且将光重新引导到线扫描相机180。光经由镜302、304和308到达线扫描相机180所采取的延长路径导致延长的工作距离。延长工作距离的效果在光学上类似于使用相机时的后退。如本领域中已知,通常需要广角透镜(例如,具有20至35mm的焦距的鱼眼透镜)来使靠近相机(例如,在距相机的6到10英寸内)放置的物体聚焦并成像。然而,在图3a至图4c描绘的实施例中,作为由聚焦设备170提供的延长工作距离的结果,可以靠近货架110放置机器人100(图5a至图5f),而无需使用广角透镜。相反,可以将长焦透镜(例如,具有80至100mm的焦距的透镜)与聚焦设备170结合使用。这是因为聚焦设备170在光学上形成物体312与透镜184之间的延长距离。此外,在一些实施例中,使用广角透镜可以导致光学失真(例如,视差)。因此,通过使用长焦透镜,可以减少此类光学失真。尽管一些广角透镜提供相对减少量的光学失真,但此类透镜通常昂贵、大且重。将聚焦设备170与长焦透镜结合使用所得到的视场可以进行调整,使得它基本上类似于使用广角透镜(没有聚焦设备170)所得到的视场。此外,在一些实施例中,在将不同的透镜与线扫描相机180结合使用时,通过调整或移动聚焦设备170的可调整或可移动镜,视场可以维持基本上相同。在一个实例中,期望24英寸的垂直视场。因此,在选择了与线扫描相机180一起使用的最佳透镜之后,机器人100可以调整或移动聚焦设备170的可调整或可移动镜,以实现24英寸的垂直视场。如图5a至图5f所示,机器人100沿着路径200移动,并且使用成像系统150捕获沿着路径200的物体的一系列图像210(图5d),例如在零售店中。如图5b所示,路径200可以形成为零售店中的邻近货架单元的一系列路径段,以允许机器人100横穿商店的货架单元。或者,路径200可以包括其他环境(诸如图书馆和其他内部空间)中的邻近货架单元的一系列路径段。例如,机器人100可以横穿零售店的货架单元,零售店的每一侧可以具有货架110。随着机器人100沿着路径200移动,机器人100的成像系统150捕获货架110和置于其上的物体的一系列图像210。该一系列图像210中的每个图像对应于成像系统沿着路径200的位置。所捕获的一系列图像210随后可以进行组合(例如,由机器人100的控制器120、嵌入在机器人100内部的另一控制器,或者机器人100外部的计算装置组合),以创建邻近路径200的物体的组合图像;例如,货架110、其上的标签,以及货架110上的物体。图5b示出形成为具有货架110的示例零售店中使用的一系列路径部分201、202、203、204、206和208形成的示例路径200。如图所示,路径200包括:用于横穿过道1的从点‘a’到点‘b’的路径部分202;用于横穿过道2的从点‘c’到点‘d’的路径部分203;用于横穿过道3的从点‘e’到点‘f’的路径部分204;用于横穿过道4的从点‘h’到点‘g’的路径部分206;用于横穿过道5的从点‘k’到点‘l’的路径部分208;以及用于横穿过道1、过道2、过道3和过道4的侧面货架的从点‘j’到点‘i’的路径部分201。如图所示,每个路径部分限定具有限定的开始点和结束点的直线。方便的是,机器人100可以同时捕获每个过道的任一侧上的图像。机器人100可以沿循类似的路径部分来横穿零售店或仓库中的货架。路径200的每个路径部分的开始点和结束点可以使用坐标来预先限定并且存储在存储器124中,或者机器人100可以在它横穿货架110时例如通过检测并沿循限定路径200的地板上的标记来限定路径200。如图5a所示,机器人100可以具有两个成像系统150,其中每个成像系统被配置成从机器人100的两侧中的不同侧捕获图像。因此,如果机器人100在其每侧上具有货架110,如在图5b的过道2、3和4中,那么机器人100可以使用成像系统中的每个成像系统同时捕获两个系列图像。因此,机器人100只横穿路径200一次便捕获货架110(每侧一个(以及货架上的物体))的两个系列图像。为了导航机器人100穿过路径200,控制器120可以实施任何数量的导航系统和算法。机器人100沿着路径200的导航也可以由人和/或辅助导航系统协助。一个示例导航系统包括用于沿着路径200引导机器人100的激光线指示器。激光线指示器可以用于通过沿着可以沿循的路径从远处(例如,300英尺远)发出光束来限定路径200。激光限定的路径可以用在反馈回路中,以控制机器人100沿着路径200的导航。为了检测此类偏差,机器人100可以在其背部包括平板,所述平板安置在机器人100的底端、在轮子102附近。因此,激光线指示器照亮平板。可以例如使用指向平板的相机来检测与平板的中心的任何偏差。或者,可以使用两个或更多水平放置的光敏线性阵列来检测与中心的偏差。此外,平板也可以倾斜,使得平板的底端以30度到60度的角向上伸出。这样伸出的平板强化了从路径200的任何偏差,因为激光束的角度将比偏差的角度大得多。激光束可以是已调制的激光束,例如,以预设频率脉动。脉动激光束可以更容易被检测到,因为它容易与其他光区分开。现在参考图5c,该图示出成像系统150的视场250的实例。如图所示,视场250沿着水平轴线相对较窄并且沿着垂直轴线相对较高。如先前说明,相对较窄的水平视场是在成像系统中使用线扫描相机的结果。视场250可以部分地取决于透镜184的焦距(即,透镜184是广角透镜、标准透镜还是长焦透镜)以及透镜184与邻近路径的物体之间的工作距离。通过使用聚焦设备170来维持工作距离基本上恒定,如上论述,视场250在机器人100横穿路径200时也保持基本上恒定。现在参考图5d至图5e,这些图分别示出可以由机器人100沿着从点‘a’到点‘b’的路径200的部分(即,路径202)捕获的示例系列图像210和220。图5d的一系列图像210与图5e的一系列图像220捕获相同的主体,但采用不同的间隔。一系列图像210中的每个图像对应于机器人100沿着路径200的位置:在位置x1处,捕获图像211;在位置x2处,捕获图像212;在位置x3处,捕获图像213;在位置x4处,捕获图像214;在位置x5处,捕获图像215;等等。类似地,一系列图像220中的每个图像对应于机器人100沿着路径200的位置:在位置y1处,捕获图像221;在位置y2处,捕获图像222;在位置y3处,捕获图像223;并且在位置y4处,捕获图像224。控制器120可以将一系列图像210组合,以创建邻近路径200的货架110(和其他物体)的组合图像。同样地,控制器120可以将一系列图像220组合以创建组合图像。一系列图像在细长轴线(即,垂直轴线)处组合,使得组合图像沿着水平轴线具有扩大的分辨率。如图所示,图5d的组合图像将具有沿着点‘a’到点‘b’的8个捕获图像的水平分辨率,而图5e的组合图像将具有沿着点‘a’到点‘b’的4个捕获图像的水平分辨率。由于图5d至图5e中的从点‘a’到点‘b’的距离相同,并且捕获的主题的分辨率相同,因此显然,在图5e中,机器人100的每线性移动单位捕获的图像数量是在图5d中机器人100的每线性移动单位捕获的图像数量的一半。因此,机器人100沿着路径200的每线性移动单位的图5d的组合图像的水平像素密度是图5e的组合图像的水平像素密度的两倍。在这个实例中,机器人100可以以每秒1个单位的速度移动来捕获图5d的一系列图像210,并且以每秒2个单位的速度移动来捕获图5e的一系列图像220。或者,机器人100在捕获两个系列图像210、220时可以以相同的速度移动,但可以花两倍的时间以捕获一系列图像220中的每个图像(例如,可以使用更长的曝光时间来捕获一系列图像220以适应低光环境),从而在以相同速度移动的同时捕获更少的图像。如将了解,因而可以通过改变机器人108的速度和任何捕获图像的曝光来改变产生的组合图像的分辨率。可以使用图像分析软件来分析组合图像,以产生对管理团队和产品库存团队有帮助的信息。在分析图像时,图像分析软件得益于通过在成像系统150中使用线扫描相机而产生的相对高分辨率图像。组合图像例如可以被分析(使用软件分析工具或通过其他方式)以识别货架标签、货架布局、库存货架的不足之处(包括但不限于,识别囤积在不正确位置的产品、标错价格的产品、低库存以及空货架)等等。为了有助于分析组合图像来识别并解码产品标识符(诸如,upc),组合图像可以具有大于预定水平像素密度的路径200的每线性单位的水平像素密度。控制器120可以基于需要分析的产品标识符的类型来设置最小水平像素密度。例如,控制器120可以只需要每英寸230像素的路径200的每线性单位水平像素密度来解码upc代码,并且需要每英寸300像素来解码文本(例如,使用ocr软件)。因此,控制器120可以识别用于解码特定产品标识符的路径200的每线性单位最小所需水平像素密度,并且基于与产品标识符相关联的路径200的每线性单位最小所需水平像素密度和捕获每个图像所需的时间,确定机器人100的每线性移动单位所需的图像数量,以允许图像被组合来形成具有大于预定像素密度的路径200的每线性单位水平像素密度。例如,为了创建具有大于每英寸230像素的路径200的每线性单位水平像素密度的组合图像,机器人100必须针对机器人100线性移动的每英寸捕获230个像素列(因为每个图像提供一个垂直分辨率线,相当于230个这样的图像)。控制器120随后可以基于捕获每个图像所需的时间而确定机器人100可以沿着路径200移动的最大速度,以针对线性移动的每英寸捕获230个图像。如果捕获每个图像所需的时间是50μs(例如,45μs曝光时间+5μs重置时间),那么机器人100可以以每秒约2m移动,以便在足够的速率下捕获图像来允许图像被组合以形成具有大于每英寸230像素的沿着路径200的每线性移动单位的水平像素密度的图像。如果需要更大的水平像素密度,那么机器人100可以以更慢的速度移动。类似地,如果需要更低的水平像素密度,那么机器人100可以以更快的速度移动。类似地,如果捕获每个图像需要更长的时间,那么减小机器人100可以沿着路径200移动的最大速度,以便获得路径200的每线性单位的相同水平像素密度。在一个实例中,捕获十个图像的序列(以不同的曝光时间捕获每个图像),并且仅使用十个图像中的具有最佳曝光的图像来构建组合图像。如果用于捕获十个图像的序列的时间是0.5毫秒,那么机器人100可以以每秒约0.20m移动,以便在足够的速率下捕获图像来允许图像被组合以形成具有大于每英寸230像素的沿着路径200的每线性移动单位的水平像素密度的图像。如果需要更少的时间来捕获每个图像,那么机器人100可以以更快的速度移动。类似地,如果需要更多的时间来捕获每个图像,那么机器人100可以以更慢的速度移动。机器人100可以以有可能实现期望水平像素密度的最快速度行进(即,自由运行)。然而,在达到可能的最快速度之前,机器人100加速并且缓慢地增加速度。在达到可能的最快速度之后,机器人100可以保持在几乎恒定的速度,直到机器人100接近路径200的终点或者接近沿着路径200的拐角/转弯。在路径200的终点附近,机器人100减速并且缓慢地减小其速度。在加速和减速期期间,机器人100可以继续捕获图像。然而,由于在加速和减速期机器人100的速度较低,因此与在恒速期期间相比,机器人100在每线性移动单位将捕获更多的图像/垂直线。附加的图像仅仅增加水平像素密度并且不会阻止对需要识别的任何产品标识符进行解码。除了捕获一系列图像之外,机器人100还可以将捕获每个图像所在的沿着路径200的位置存储在与捕获的图像相关联的数据库中。位置数据随后可以与货架110上的产品标识符相关。随后可以创建映射图,提供识别的产品与它们在货架110上的位置之间的映射。机器人100可以例行地捕获一系列图像(例如,每日或每周),并且来自每日/每周的组合图像相对于彼此进行分析(使用软件分析工具或通过其他方式)以向管理团队提供数据,包括但不限于,识别针对沿着货架的产品放置中的变化的销售响应的数据、货架上的物品的适当定价、识别每个货架的利润率的数据、识别受欢迎货架的数据,以及识别与销售政策相符或不相符的数据。图5f示出使用示例机器人100创建的示例组合图像,所述示例机器人中安装有三个成像系统150。在这个实例中,机器人100具有顶端成像系统,其被配置成捕获货架110的顶部部分的一系列图像610、货架110的中间部分的一系列图像620,以及货架110的底部部分的一系列图像630。成像系统中的每个的垂直视场可以相对于货架110的高度而受限。因此,多个成像系统可以在机器人100内部堆叠在彼此的顶部上,从而使得机器人100能够同时捕获多个图像。在这个实例中,在沿着路径200的每个位置(x1、x2、……、x7)处,机器人100捕获三个图像(即,位置x1处的图像611、621和631、位置x2处的图像612、622和632、……,以及位置x7处的图像617、627和637)。随后图像全部进行组合来创建单个组合图像,所述单个组合图像具有沿着垂直轴线和水平轴线的扩大分辨率。图6a至图6d示出操作中的成像系统150的部件。如图6a所示,来自灯元件164的光穿过透镜166聚焦在沿着路径的物体上。从邻近路径的物体反射的光进入成像系统150,并且以之字形在镜302、304之间反射,如先前所述,直到光线入射在倾斜的镜308上,所述倾斜的镜将光朝向线扫描相机180反射。如图6b至图6d所示,图6a的成像系统还包括置于光路中的棱镜360,使得光线在进入线扫描相机180之前入射在棱镜360上。棱镜360安装到允许调整棱镜360的角度的旋转装置(未示出)。当棱镜360相对于反射光处于45度角时,光被进一步反射到线扫描相机180中。如图6b所示,当棱镜360相对于反射光处于45度角时,由线扫描相机180捕获的视场处于与线扫描相机180相同的高度。然而,如图6c所示,棱镜360的角度稍微变化(例如,47度)会将线扫描相机180的视场变成指向相机上方的物体的视场,从而允许线扫描相机180捕获相对于相机处于更高高度的物体的图像。类似地,如图6d所示,棱镜360的角度在相反方向上稍微变化(例如,43度)会将线扫描相机180的视场变成指向相机下方的物体的视场;从而允许线扫描相机180捕获相对于相机处于更低高度的物体的图像。实际上,不同组的光线反射到线扫描相机180的传感器186上。在物体处于线扫描相机180的正常视场之外的情况下,使线扫描相机180的视场向下或向上移位可能是有益的。一个示例情况是捕获产品标识符的图像,诸如,在较低或较高货架上的upc代码。例如,图6a中还示出货架110的侧视图,所述货架具有三个货架条形码:顶部货架条形码1050、中间货架条形码1052,以及底部货架条形码1054。如图所示,顶部货架条形码1050和中间货架条形码1052的方向是贴靠货架110。底部货架条形码1054以向上的角度确定方向,以允许购物者不必弯腰便看到条形码。使用安置在底部货架的类似高度处的线扫描相机来扫描底部货架条形码1054可能导致底部货架条形码1054的失真图像。因此,棱镜360的角度可以由控制器120调整,以允许相对于底部货架安置得更高的成像系统捕获底部货架条形码1054的图像。在一个实施例中,棱镜360相对于反射光以47度倾斜,以允许机器人100捕获向上倾斜的底部货架条形码1054的图像。机器人100的操作可以使用诸如运送应用132、成像应用134和分析应用136(图2)等软件进行管理。这些应用可以同时操作并且可以依赖于彼此执行所述的功能。参考分别示出示例方法700、720、750和800的图7a至图7c和图9进一步描述机器人100的操作。方法的方块部分可以由机器人100的控制器120执行,或者在一些情况下,可以由第二控制器(其可以在机器人100的外部)执行。方法的方块部分可以按顺序或无序地执行,并且控制器120可以执行附加或更少的步骤作为方法的一部分。控制器120被配置成使用已知的编程技术来执行方法的步骤。所述方法可以存储在存储器124中。现在参考图7a,该图示出用于创建邻近路径200的物体的组合图像的示例方法700。在一个实例中,路径200限定横穿具有货架110的货架单元的路径,如上所述。因此,组合图像可以是货架110和置于其上的物体的图像(如图5a所示)。在702处,控制器120可以启动光源160,所述光源提供捕获最佳曝光图像可能需要的照明。因此,通常在捕获图像之前启动光源160。或者,可以在启动光源160之前捕获图像,随后分析图像以确定是否需要照明,并且只有在需要照明的情况下才可以启动光源160。机器人100可以横穿路径200的最大速度可以对应于捕获一系列图像210中的每个图像所需的时间,以及对产品标识符进行解码所需的路径200的每线性单位的最小水平像素密度。机器人100可以被配置成以恒定的速度沿着路径200移动,而无需在沿着路径200的每个位置(即,x1、x2、x3、x4、x5等等)处停止。在703处,控制器120可以确定机器人100可以沿着路径200移动的最大速度,以针对机器人100沿着路径200的每线性移动单位捕获超过预定数量的垂直线,以便允许图像被组合来形成组合图像,所述组合图像具有大于预定像素密度的水平像素密度。在确定最大速度之后,机器人100可以以低于最大速度的任何速度沿着路径200行进。与框703相关联的示例步骤在示例方法720中详述。在框704处,控制器120可以使机器人100沿着路径200移动,并且可以使成像系统150在机器人100沿着路径200移动时捕获邻近路径200的物体的一系列图像210(如图5d至图5f所示)。一系列图像210中的每个图像对应于沿着路径200的位置并且具有至少一个像素列。与框704相关联的示例步骤在示例方法750中详述。在框706处,控制器120可以将一系列图像210组合以创建邻近路径200的物体的组合图像。可以使用已知的图像拼接技术来创建组合图像,并且组合图像具有一系列的像素列。在框708处,控制器120可以将组合图像存储在存储器124中,例如存储在数据库中。控制器120还可以将每个图像与图像被捕获的时间戳和沿着路径200的位置相关联。在框710处,控制器120可以分析组合图像来确定与货架110上的产品相关的任何数量的事件,包括但不限于,重复的产品、缺货产品、错放的产品、标错价格的产品,以及低库存产品。与框710相关联的示例步骤在示例方法800中详述。或者,在一些实施例中,控制器120将一系列图像210中的每个图像和/或组合图像发送(例如,经由通信子系统122无线地发送)到第二计算装置(例如,服务器)以进行处理和/或存储。第二计算装置可以创建组合图像和/或分析组合图像,以获得与货架110上的产品相关的事件。第二计算装置还可以将一系列图像210中的每个图像和/或组合图像存储在存储器中。这可以有助于降低机器人100的处理和/或存储需求。图7b示出用于确定机器人100可以沿着路径200移动的最大速度的示例方法720,以沿着路径200捕获一系列图像210中的图像来获取超过机器人100沿着路径200的每线性移动单位的预定数量的垂直线,以便允许图像被组合来形成组合图像,所述组合图像具有大于预定像素密度的水平像素密度。方法720可以由机器人100的控制器120执行。在722处,控制器120识别机器人100被配置去识别的那种类型的产品标识符(例如,upc、文本、图像等)。针对每种类型的产品标识符,机器人100可以将路径200的每线性单位的最小水平像素密度的值存储在存储器中。沿着路径200的每线性移动单位的最小水平像素密度的值通常用每英寸像素(‘ppi’)来表示,并且反映出机器人100的每线性移动单位所需的捕获像素的数量,以允许从图像中适当地解码产品标识符。在724处,控制器120还可以确定捕获每个图像所需的时间。所需的时间可以部分地根据曝光时间以及启用还是省略聚焦方框和/或曝光方框而改变。控制器120可以基于成像设置的配置而从存储器中存取捕获每个图像所需的平均时间。如果启用曝光方框(在捕获多个图像而每个图像具有不同曝光的情况下),那么反而可以使用捕获每个图像序列所需的时间,因为每个序列中只有一个图像用于创建组合图像。在框726处,控制器120可以基于对具体类型的产品标识符进行解码所需的最小水平像素密度和捕获每个图像(或序列)所需的时间,来计算机器人100可以沿着路径200移动的最大速度。具体地,由于像素密度通常用每英寸像素表示,因此以每秒英寸为单位的速度等于1/(捕获一个图像或序列所需的以秒为单位的时间×最小水平像素密度)。在730处,方法720返回到方法700的框704。现在参考图7c,该图示出用于捕获邻近路径200的物体的一系列图像的示例方法750。在752处,控制器120可以控制机器人100沿着路径200运送到第一位置x1(如图5d至图5f所示)。机器人100沿着路径200移动,成像系统150连接到所述机器人。由于在机器人100沿着路径200移动时物体与线扫描相机180之间的距离可以改变(例如,因为货架并未充分存货),因此框754至756与调整聚焦设备170相关。因此,在机器人100沿着路径200移动时,在框754至756处,控制器120可以调整聚焦设备170。聚焦框也可以完全从方法750中省略(例如,如果机器人100中不存在聚焦设备的话,或者如果没有必要调整焦点的话,例如,如果使用具有小孔径的透镜和大dof的话),或者可以仅从沿着路径200的一些位置省略。例如,在一些实施例中,可以仅针对沿着路径200的一系列图像中的第一图像来调整聚焦设备170。在754处,控制器120可以使深度传感器176感测深度传感器176与邻近路径200的物体之间的距离。深度传感器176可以产生指示深度传感器176与邻近路径200的物体之间的距离的输出,所述输出可以反映因深度传感器176的位置和/或校准而产生的线扫描相机180与物体之间的距离。在756处,控制器120可以在捕获一系列图像210之前基于由深度感测器176感测到的距离和透镜184的dof来调整聚焦设备170(当透镜184具有深dof时,控制器120可以不频繁地调整聚焦设备170)。聚焦设备170可以维持线扫描相机180与物体之间的工作距离基本上恒定,以使物体在焦点中(即,使货架110在焦点中,如先前说明)。而且,由于沿着路径200的每个位置的最佳曝光可以改变(例如,基于该位置处的物体,明亮的物体可以比黑暗的物体需要更少的曝光),因此框758至760与捕获并选择具有最佳照明的图像相关。然而,曝光框可以完全从方法750中省略,或者可以仅从沿着路径200的一些位置省略,例如,以减少图像捕获和处理时间/需求。在758处,控制器120可以使线扫描相机180在机器人100沿着路径移动时捕获沿着路径200的物体的一系列图像序列。图像序列中的每个图像序列的每个图像具有预定曝光值,所述预定曝光值在高曝光值与低曝光值之间变化。随后在760处,控制器120可以针对每个图像序列来选择不具有饱和像素的序列的图像,以获得一系列选择的图像。控制器120随后可以将该一系列选择的图像组合,以在706处创建邻近路径200的物体的组合图像。在758处,控制器120可以根据曝光图案来改变每个序列中的每个图像的曝光。参考图8,该图示出示例曝光图案和改变曝光时间对捕获的像素的影响。针对使用长曝光时间捕获的图像,黑色像素可以呈现白色,并且类似地,针对使用短曝光时间捕获的图像,白色像素可以呈现黑色。在一个实例中,根据表1,使用预定曝光时间接着是5μs的暂停来获取序列中的每个图像。为每个序列获取十个图像,随后控制器120重新开始该序列。表1的序列中的第一图像具有110μs的曝光时间,并且序列中的第十个且最后的图像具有5μs的曝光时间。每个曝光序列总计需要完成390μs。表1序列中的图像编号曝光时间(μs)1110(高曝光)27035043553061571281098105(低曝光)控制器120可以控制线扫描相机180通过改变透镜184的孔径、通过改变图像传感器186的灵敏度(iso)或者通过改变线扫描相机180的曝光时间(除其他之外)来调整曝光设置。此外,改变光源160可以通过改变阵列的灯元件的亮度来调整曝光设置。在760处,在捕获每个图像序列之后,其中序列中的每个图像具有不同的曝光,控制器120可以选择具有最佳曝光的图像。为了选择具有最佳曝光的图像,控制器120可以识别多个图像中的没有过度饱和的图像。图像的过度饱和是导致剪裁图像中的像素颜色的一种失真类型;因此,过度饱和的图像含有关于图像的较少信息。为了确定图像是否过度饱和,检查图像的像素来确定像素中的任一个是否具有最大饱和值。如果图像被确定为过度饱和,那么选择具有较低曝光值的图像(例如,使用更短曝光时间)。最佳图像是具有最高曝光值且不具有过度饱和像素的图像。由于第一图像具有最长曝光时间,因此得到的图像将有可能过度曝光/过度饱和。这样的图像要包括在组合图像中并不理想,因为它并不有助于对产品标识符进行解码。类似地,最后的图像具有最短曝光时间,从而导致得到的图像曝光不足/欠饱和的可能性较高。这样的图像要包括在组合图像中也不理想,因为它并不有助于对产品标识符进行解码。因此,最有可能选择来自序列的中间的图像。在所示的实例中,仅选择与每个序列相关联的每十个图像中的一个图像来包括在组合图像中。因此,为了计算机器人100可以行进的最大速度来获得具有大于预定水平像素密度的水平像素密度的组合图像,机器人100可以将捕获每个图像的时间视作等于捕获整个图像序列所需的时间。这导致更慢地移动的机器人捕获要获得期望的水平像素密度所需的尽可能多的图像的十倍之多。然而,通过捕获序列并且仅选择最佳曝光的图像来包括在组合图像中,组合图像的任何部分曝光过度或曝光不足的可能性降低。例如,针对图8的帧序列,控制器120可以将最长曝光时间(即,在给定的实例中,110μs)用作捕获每个图像的时间(但基本上以不同的曝光捕获相同的图像,且捕获10倍)。在762处,控制器120可以将具有最佳曝光的图像存储在存储器124中。或者,控制器120可以存储所有捕获的图像,并且在之后的时间选择具有最佳曝光的图像。类似地,如果在每个序列中仅捕获一个图像,那么控制器120可以将该图像存储在存储器124中。在764处,控制器120可以确定路径200是否结束。如果机器人100从路径200的每个部分的起点横穿到终点,那么路径200结束。如果路径200已经结束,那么方法750在766处返回到方法700的框706。如果路径200尚未结束,那么方法750在框752处继续操作。如果方法750在框752处继续操作,那么控制器120可以使机器人100沿着路径200运送到邻近第一位置x1的第二位置x2并且捕获第二图像212。在操作中,机器人100可以沿着路径200连续地移动,而在成像系统150捕获图像时无需停止。因此,沿着路径200的每个位置是基于在控制器120开始新图像或新图像序列的捕获时机器人100的位置。现在参考图9,该图示出用于分析组合图像的示例方法800,以确定与货架110上的产品相关的任何数量的事件,包括但不限于,重复的产品、错误、贴错标签的产品以及缺货产品等。如先前说明,方法800可以由控制器120或者由第二计算装置的处理器执行。由于路径200横穿货架110,因此组合图像包括货架单元的货架110和可以置于货架110上的其他沿着路径200的物体的图像。此类物体可以包括零售产品,零售产品可以用唯一地识别产品的条形码标记。此外,货架110中的每个可以具有附加到其上的货架标签条形码。每个货架标签条形码通常与具体产品相关联(例如,在杂货店中,土豆片、coca-饼干等等)。因此,在804处,控制器120可以通过分析组合图像来检测组合图像中的货架标签条形码。例如,控制器120可以搜索货架标签条形码常用的具体图案。每个检测到的货架标签条形码可以作为元数据添加到图像,并且可以进一步处理以进行校正。此外,放置每个货架标签条形码表明预期具体产品囤积在货架标签条形码附近。在一些零售店中,可能期望避免在多个位置储存相同的产品。因此,在806处,控制器120可以确定检测到的货架标签条形码是否与另一检测到的货架标签条形码重复。这将表明与检测到的货架标签条形码相关联的产品储存在多个位置。如果检测到的货架标签条形码与另一检测到的货架标签条形码重复,那么在808处,控制器120可以将货架标签条形码重复的指示存储在存储器124中。此外,货架标签条形码可以与沿着路径200的位置相关联,并且控制器120可以将与检测到的货架标签条形码相关联的沿着路径的位置存储在存储器124中,以允许人员识别重复产品的位置。还可以期望存储关于缺货产品和/或低库存产品的信息。因此,在810处,控制器120可以确定货架单元的货架110是否没有产品。在一个实施例中,在机器人100横穿路径200时,控制器120可以使用深度传感器176来检测与存储在货架标签条形码附近的货架110上的不同产品相关联的深度。控制器120随后可以将检测到的深度与预定预期深度进行比较。如果检测到的深度比预期深度小预定裕量,那么产品可能缺货或低库存。如上所述,深度数据可以与沿着路径200的不同位置相关地存储,并且由控制器120交叉参考组合图像中的货架标签条形码,以确定与可能缺货或低库存的每个产品相关联的货架标签条形码。在812处,控制器120随后可以通过对相关联的货架标签条形码进行解码来识别可能缺货或低库存的每个产品。针对可能缺货或库存低的每个产品,在814处,控制器120可以将产品缺货或低库存的指示分别存储在存储器124中。如果控制器120确定没有货架单元的货架110缺乏产品,那么方法800在816处结束并且不需要存储缺货或低库存指示。当然,上述实施例仅仅意图是说明性的,并且决不限制。可以对上述实施例的形式、零件布置、细节以及操作顺序进行很多更改。在上述模块中实施的软件可以使用更多或更少模块来实施。本发明意图涵盖如由权利要求书限定的本发明范围内的所有此类更改。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1