使用计算机视觉的购物推车监控的制作方法

文档序号:32685558发布日期:2022-12-24 06:48阅读:41来源:国知局
使用计算机视觉的购物推车监控的制作方法
使用计算机视觉的购物推车监控
优先权声明
1.本技术主张2020年03月11日提交的美国临时专利申请no.62/988,174的权益,在此通过引用将其并入本文。


背景技术:
技术领域
2.本公开总体上涉及使用计算机视觉和机器学习技术来跟踪可移动购物篮,包括但不限于机动化的和非机动化的(例如,人力推动的)购物推车和手持式购物篮的运动和状态的系统和方法。相关领域描述
3.已有用于阻止盗窃购物推车的围护系统。典型地,这些系统包括埋设于商店停车场的人行道中以定义允许使用购物推车的区域的外边界的电线。当购物推车被推过这个电线时,设置在其中的一个车轮中的或邻近车轮处的传感器会检测到由电线产生的电磁信号,从而激活车轮中的制动机构以锁定或禁止车轮旋转。为了解锁车轮,服务人员通常使用手持遥控器向车轮发送解锁信号。这类围护系统存在挑战。


技术实现要素:

4.用于监控购物推车的系统使用摄像头生成在商店中移动的购物推车的图像。在一些实施方式中,摄像头可以被附加地或可替换地安装到购物推车上并且被配置为对购物推车内容物成像。该系统可以使用采集到的图像数据,和/或其他类型的传感器数据(例如,被添加到篮中的某商品的商店位置),对检测到的购物推车中的物品进行分类。例如,经过训练的机器学习模型可以将购物推车中的商品分类为“非商品”、“高盗窃风险商品”、“电子商品”等。当购物推车在没有任何关联的支付交易指示的情况下靠近商店出口时,系统可以可选地与其他数据诸如推车路径数据相结合,使用相关联的物品分类数据,以确定是否执行防盗动作,如锁定推车车轮或激活商店警报。该系统还可以将购物推车内容物的分类与支付交易记录(或其汇总)进行比较,例如,以检测付款不足事件。
5.本发明的一个方面是一种用于减少推出(push-out theft)盗窃的系统,其包括:用于捕获与商店关联的购物推车的内容物图像的摄像头;以及由一个或多个处理器组成的计算系统。计算系统被编程以至少实现:物品分类器,其使用经过训练的机器学习模型为图像中检测到的物品指定分类;和出口管理器,其至少基于(1)由物品分类器指定购物推车中至少一个物品的分类,以及(2)该至少一个物品是否已付款的标志来决定是否授权购物推车离开商店。摄像头可以被安装在商店内的固定位置,也可以被安装在购物推车上。物品分类器可以被配置为将物品分类为商品和非商品,和/或为物品指定商品种类分类。物品分类器可以被配置为至少部分地基于购物推车在添加物品时的商店位置对添加到购物推车中的物品进行分类。
6.本公开的另一个方面是一种减少推出盗窃的方法。该方法包括:监测购物推车在商店内的位置;检测将物品添加到购物推车中的事件;基于下列至少一项为物品指定分类:(1)事件发生时购物推车在商店中的位置,由该监测确定,以及(2)购物推车中该物品的由摄像头捕获的图像;随后,在没有关联的支付交易标志的情况下,检测到购物推车正在离开商店;并且响应于确定购物推车正在离开,至少部分地基于被指定给物品的分类,确定是否执行防盗动作。该方法可以在一个或多个处理器执行的程序指令的控制下执行。检测物品被添加的事件的任务可以包括用被安装到购物推车的振动传感器检测由物品被添加到购物推车所引起的振动,或者可以包括检测由购物推车的秤产生的重量测量的变化。在一些实施例中,购物推车包括具有摄像头和处理器的摄像头模块,而检测该事件的任务包括由摄像头模块将摄像头所捕获的第一图像与摄像头捕获的后续的第二图像进行比较,以确定购物推车的内容物是否已更改。经过训练的机器学习模块可以被用来指定分类。
7.本公开的另一个方面是一种被配置为安装在购物推车上以捕获购物推车内容物的图像的摄像头模块。摄像头模块包括:摄像头;处理器;以及无线收发器。处理器被配置为至少部分地通过将摄像头所捕获的第一图像与摄像头所捕获的后续的第二图像进行比较来评估物品是否已经被添加到购物推车中。处理器还可以被配置为响应于确定物品可能已经被添加到篮中,使用无线收发器在无线网络上上传第二图像或第二图像的标识进行分析。处理器可以从篮振动传感器接收输入,并且可以使用该输入触发摄像头捕获图像。处理器可以被配置为在无线网络上上传之前对第二图像标记,以指示显示篮内容物变化的区域。摄像头模块还可以包括推车位置感测模块,在这种情况下,处理器可以使用推车位置感测模块的输出以在购物推车不在商品区域时禁用摄像头。
8.本发明的另一个方面是一种监视购物推车的方法,其包括:通过无线网络接收来自商店中多个购物推车中每个购物推车的车轮旋转事件数据;对于多个购物推车中的每个购物推车,基于各自购物推车的车轮旋转事件数据生成购物推车运动数据,其中购物推车报告与推车标识符关联的车轮旋转事件数据;通过被安装在商店中的至少一个摄像头,捕获显示购物推车在商店中移动的图像序列;通过对图像序列的分析,生成用于成像的购物推车的购物推车运动数据;和将从图像序列中生成的购物推车运动数据与从车轮旋转事件数据生成的多个购物推车中每个购物推车的购物推车运动数据进行比较。对于第一购物推车,车轮旋转事件数据可以包括前轮的旋转事件数据和后轮的旋转事件数据,并且该方法可以包括结合使用前轮和后轮的事件数据来检测第一购物推车的转向。这个检测到的转向可以及时与图像序列中检测到的转向关联。该方法可以进一步包括,响应于检测(1)从图像序列生成的购物推车运动数据与(2)从多个购物推车中的第一购物推车的车轮旋转事件数据生成的购物推车运动数据之间的匹配,将第一购物推车的推车标识符与成像的购物推车的光学轨迹(optical track)相关联。
9.本公开的另一个方面是一种用于监测购物推车的系统,其包括:包括车轮、车轮旋转传感器、处理器和无线收发器的购物推车车轮组件,该购物推车车轮组件被配置为在无线网络上报告车轮旋转事件数据;被安装在商店位置并且被配置为捕获显示购物推车在商店中的运动的图像序列的摄像头;和,被编程为使用图像序列和所报告的车轮旋转事件数据来确定购物推车车轮组件是否为该图像序列中成像的购物推车的一部分的计算系统。计算系统可以被配置为将从图像序列中检测到的推车运动数据与从车轮旋转事件数据推断
出的推车运动进行比较。此外,计算系统可以被配置为使用车轮旋转事件数据中包含的时间戳来至少推断推车速度随时间的变化。在一些实施方式中,购物推车车轮组件是第一购物推车的两个购物推车车轮组件中的一个,该两个购物推车车轮组件一个被安装在前轮位置,另一个被安装在后轮位置,并且两个车轮组件都被配置为在无线网络上报告各自的车轮旋转事件数据,在这种情况下,计算系统可以被配置为比较前轮组件和后轮组件的车轮旋转事件数据来检测第一购物推车所做的转向。计算系统可以及时将检测到的转向与图像序列中检测到的转向进行关联。
附图说明
10.图1a和图1b示意性地示出了推车围护系统的示例运行。在图1a中,装满商品的购物推车正试图离开商店,且执行了防盗动作以防止商品被盗(例如,购物推车的车轮被锁定或激活了警报)。在图1b中,推车是空的,且未采取防盗动作。
11.图1c示出了各种类型的防盗系统部件,其可以被部署在商店内和商店周围,以跟踪可移动的购物篮,例如机动和非机动(例如,人力推动的)购物推车、手持购物篮和机动化的机动性推车。可以使用计算机视觉单元(cvu)或摄像头收发器单元(ctu)对可移动的购物篮成像,例如,确定它们是否为空的或至少部分装载有商品。
12.图2a示出了具有导航系统和一个或多个智能轮的购物推车的示例。
13.图2b示出了具有被安装在购物推车的手柄上的智能定位系统的购物推车的示例。在此图中,推车的儿童座椅处于打开位置(有时称为儿童座椅放下)。
14.图2c是装备有摄像头模块的购物推车的侧视图。
15.图2d是图2c的购物推车的俯视图。
16.图2e示出了图2c和图2d的摄像头模块的一个实施例的部件。
17.图3示出了用于购物篮的围护系统的一个实施例的部件。
18.图4a示意性地示出了一种防盗系统,其使用计算机视觉技术来识别购物篮是否至少部分地装载有商品并且在离开商店。能够将购物篮连接到人力推动的购物推车、机动化的机动性推车上,或者能够由购物者手提购物篮。
19.图4b示意性地示出了防盗系统的另一种实施方式。
20.图5示意性地示出了被定位以便确定购物篮的位置的计算机视觉单元的摄像头的侧视视角(左侧)和俯视视角(右侧)。
21.图6a,图6b和图6c示意性地示出了在零售商店的入口/出口附近的计算机视觉单元(cvu)和次要摄像头的放置和方向的实施例例。cvu和次要摄像头的数量和布置以及它们各自视场(fov,以虚线或点划线表示)的形状和大小旨在进行说明而非限制。在其他实现中,布局可以不同以达到零售设施的安全目的。
22.图7示意性地示出了在零售商店的入口/出口附近的购物篮所采取的路径的实施例。空篮显示没有阴影线,至少部分装载的篮显示有阴影线。购物篮(在此示例中为购物推车)所采取的路径上的符号指示有推出盗窃的可能性。
23.图8示意性地示出了用于训练机器学习(ml)模型的处理流水线的示例。
24.图9示意性地示出了用于分析从防盗系统获得的图像的处理流水线的示例。
25.图10示意性地示出了用于实时事件检测或来自防盗系统的直播流的处理流水线
的示例。
26.图11示意性地示出了用于来自防盗系统的图像数据的商业智能(bi)分析的流水线的示例。
27.图12示意性地示出了cvu中的处理流水线的。
28.图13示出了一种可以由被安装在推车上的摄像头或摄像头模块实现,以捕获和处理推车内容物的图像的方法。
29.图14示出了如何为所捕获的图像生成物品分类。
30.图15示出了一种使用推车的车轮组件收集的数据将成像的推车路径与唯一的推车id关联的方法。
31.图16示出了在图15的方法中可以被维护和使用的示例数据集。
32.图17示出了一种用于确定离开商店的推车的成像的推车内容物是否与支付交易记录匹配的方法。
33.图18示出了可以被用于实现图17的方法的一组部件。
34.图19示出了可以在图18的系统和图17的方法中产生和使用的数据记录的类型。
35.在整个附图中,附图标记可以被重复使用以指示参考元素之间的对应关系。附图被提供来说明本文中所描述的实现的示例,并且不旨在限制本公开的范围。
具体实施方式
综述
36.尽管现有的推车围护系统可用于阻止购物推车被盗,但某些此类系统可能无法检测其他类型的购物相关的误用。例如,小偷可能将至少部分装载有货物或商品的购物推车推出商店,而没有支付货物或商品的费用(这种盗窃有时称为“推出”盗窃)。推车围护系统可能没有能力(或只有有限的能力)来确定从商店推出的购物推车是空的(在这种情况下没有商品盗窃的威胁或只有有限的盗窃威胁)或装载有商品(在这种情况下,可能存在商品盗窃的重大威胁)。如果每次推车离开商店(装载或未被装载)时都触发推车围护系统,则可能导致许多虚警,因为即使空的推车离开商店,系统也会被触发。
37.可以通过在尝试离开商店之前确定购物推车是否经过运转的商店结帐通道来减少虚警。如果是这样,则购物者很可能购买了商品,并且推车围护系统可以被配置为在这种情况下不触发。如果推车未通过运转的商店结帐通道(或在通道中出现的时间不足以实际付款),则推车围护系统可以被配置为在离开时触发。但是,即使在这种情况下,由于购物者出于某种非盗窃的原因可能将空的购物推车推回商店外(例如,选择其他推车(例如,车轮颤振较小的推车),返回停放的汽车以取回货物袋或购物清单等),仍然可能导致虚警。检测推车通过运转的收银台的围护系统可能需要在每个结账通道中的特定硬件装置,以检测推车在结账通道中的通过、路径、速度、行进距离、驻留时间等。这样的硬件会增加这些装置的费用。此外,这种方法对于实现了移动支付系统的零售商店可能有很大的局限性,在这种情况下,购物者不需要通过固定的结帐通道来付款,而是可以使用移动应用程序(例如,在购物者的智能手机上)支付商品。
38.虽然往往能够使用电子商品监视(eas)系统(例如,在商店出口处包括eas塔)检测商品盗窃,但是将eas标签附加到商品上的成本和负担往往是不切实际的(特别是在杂货店
的情况下)。
39.零售商店可能希望识别正在接近出口的购物推车是否至少部分地装载有来自商店的物品(例如,杂货,保健产品,酒等),如果是,则推车是否先前已经通过结帐通道或购物者已经通过移动支付方式进行了付款。推车围护系统能够使用商店中安装的摄像头(和/或安装在购物推车上的摄像头)对购物推车篮成像,并且能够使用计算机视觉和机器学习技术来分析图像,以确定例如推车篮是否为空(例如,盗窃情况的威胁较低)或至少部分装载有商品(例如,盗窃情况的威胁较高)。图像可以是静止图像,也可以是视频中的一帧或多帧。在一些实施例中,系统还可以使用图像对篮中的物品进行分类或识别篮中的物品;例如,被检测的物品可以被分类为商品而不是非商品,也可以被分类为是否为高盗窃风险商品项。系统还可以在对物品进行分类时将推车位置数据考虑在内;例如,如果推车没有进入商店的电子部门,系统可以不(或以降低的概率)将检测到的物品分类为电子物品。
40.如果系统检测到至少部分装载的推车正试图离开商店而没有已经为物品付款的任何足够的标记,则能够触发推车围护系统以执行防盗动作(例如,制动或锁定推车的车轮以禁止其移动,向购物者显示警报或消息以返回商店,激活商店视频监视系统或警报,通知商店保安人员等)。在系统对购物推车中检测到的物品进行分类的实施例中,在决定是否执行防盗动作和/或执行何种类型的防盗动作时,也可以考虑此分类。例如,系统可以依据给定推车的包含高盗窃风险物品的可能性、推车中所包含商品的价值等对其进行评分,并且在决定是否执行特定的防盗动作时考虑此评分。
41.图1a和图1b示意性地示出了推车围护系统的示例运行。图1a和图1b中所示的功能部件将在下面进一步描述(参见例如图1c,图4a和图4b)。在图1a中,计算机视觉单元(cvu)或推车收发器单元(ctu)包括能够对商店出口附近的商店区域成像的摄像头410。商店的区域在摄像头410的视场(fov)内。cvu或ctu可以执行(或与另一个系统通信以执行)来自摄像头410的图像的计算机视觉分析。计算机视觉分析能够确定推车的装载状态,例如,购物推车是否为空,是否至少部分装载有商品,是否装满商品等。cvu或ctu能够与控制推车围护系统的防盗功能的门管理器450通信。一个门管理器450的示例是可从gatekeeper systems,inc.(福特希尔兰赫,ca)获得的预防推出系统,和例如在美国专利no.8,463,540,no.9,731,744和no.10,232,869中所描述的;对于其公开的全部内容,通过引用将其全部内容合并于本文中。在美国专利no.5,881,846或no.7,420,461中描述了门管理器和防盗系统的其他示例;对于其公开的全部内容,通过引用将其全部内容合并于本文中。
42.如图1a所示,如果至少部分装载有商品的推车正在接近商店出口而没有已经为商品付款的标记,则cvu或ctu可以向门管理器450传达激活防盗功能的信号(例如,锁定或制动推车车轮中的一个车轮,发出警报,激活商店监视系统等)。相反,如图1b所示,如果购物推车基本上没有商品,那么盗窃的风险就很小,并且cvu或ctu可以不采取任何措施或向门禁管理器450传达不采取防盗动作的信号。如上所述,确定是否采取防盗动作的决定也可以取决于推车中检测到的物品的类型或标识(identities)。
43.因此,图1a和图1b的示例推车围护系统能够在减少或防止由于某种原因将空推车从商店推出的虚警(例如,将推车换成另一个推车,返回购物者的车以取回购物袋或购物清单等)的同时,有利地减少或防止商品从商店失窃。此外,在一些实现中,该系统能够将防盗动作限制到在推车中检测到昂贵或高盗窃风险商品的场景中。
44.在一些实现中,不使用单独的门管理器450,并且cvu将防盗信号传送到购物篮、购物推车或商店监视系统。
45.尽管许多购物者在零售商店中使用购物推车,但是本文中所描述的计算机视觉技术不限于购物推车,并且能够应用于任何可移动的购物篮,包括人力推进的购物推车、具有篮的机动化的机动性推车或由购物者携带的手持式购物篮。而且,这些计算机视觉技术不限于零售应用,并且可以被应用于确定其他类型的推车是否装有物品、物体或商品,例如仓库、工业或实用车(utility cart),行李推车,医疗、医院或药房推车,轮椅,儿童推车或医院病床等。
46.下面描述各种示例和实现。这些示例和实现旨在说明本公开的范围,而并非旨在进行限制。零售商店场景示例
47.图1c示出了防盗系统400的示例。所示的防盗系统被部署在商店中,以跟踪或控制购物推车30的移动和防止推车中的商品被盗。然而,发明的防盗系统的部件和方法可以用于其他应用,例如跟踪机场中的行李推车或仓库中的推车。
48.该系统包括与一套无线接入点(ap)双向通信以建立与购物推车30的双向射频(rf)通信链接的一套推车收发器(ct)。在一个示例中,每个推车收发器(ct)被完全包含在各购物推车30的标准尺寸(例如,5英寸直径)的车轮32(典型地是前轮)中的一个车轮内,与能够被推车收发器制动的制动单元一起来锁定车轮。在美国专利no.6,362,728,美国专利no.8,820,447或美国专利no.8,602,176或美国专利no.8,973,716中描述了可以被用于这个目的的制动单元的示例;在此通过引用将其每一个的全部内容并入本文中。(出于详细说明的目的,术语“推车收发器”统指推车的rf收发器和相关联的传感器电路)。可替换地,可以使用渐进式或部分制动单元,该制动单元附加地能够在不将车轮置于锁定状态的情况下禁止车轮的旋转。
49.推车收发器(ct)的一些电路可以可替换地设置在购物推车30上的其他地方。例如,如下文所述,一些或所有的收发器电路可以可替换地被包括在附接至购物推车的手柄或推车的前部的显示单元中,或在被安装至推车的摄像头模块中(如图2c-2e中所示)。作为另一个示例,包括传感器电路在内的部分或全部电路可以被封装在车轮组件中(例如,车轮的万向轮或叉),而不是被包括在车轮本身或推车的手把或车架中。ct能够被包括在机动化的机动性推车的车架或主体中。ct不限于在推车上使用,还能够被连接到手持购物篮(例如,在购物篮的侧面或底部或在手柄中)。
50.接入点(ap)通常负责与推车收发器(ct)通信,以检索和生成推车状态信息,包括指示或反映推车位置的信息。可以检索和监视的推车状态信息的类型包括,例如,车轮32是否处于锁定状态与解锁状态,推车是否在移动;车轮的平均转速(可以使用车轮32中的旋转传感器感应到);推车是否检测到特定类型的位置相关的信号,例如vlf、eas或磁信号(如下所述);车轮32是否打滑;ct的电池电量和一般的车轮“健康状况”;以及自某个参考时间以来,推车所经历的锁定/解锁周期数。在一些示例中,推车可以包括能够确定其购物篮是否至少部分装载(例如,通过分析推车的振动数据)的传感器,并且ct可以传达装载状态(例如,空,部分装载,满载)到ap。(与购物推车的其他车轮相反,术语“车轮32”在本文中特别地用于指包括本文所述电子设备的车轮。)接入点(ap)还能够生成和/或中继命令到推车收发
器(ct),包括发送到特定购物推车的锁定和解锁命令(或其他类型的防盗命令)。
51.在图1c所示的示例中,所有访问点(ap)直接或经由中间访问点与中央控制单元(ccu)无线通信。中央控制单元可以被实现为包括无线收发器卡或有线连接到外部收发器单元的台式计算机或硬件服务器。ccu通常地负责收集、存储和分析由访问点(ap)收集的推车状态信息,包括位置信息。除了从推车收发器(ct)检索到的数据外,ccu还可以收集由接入点生成的数据,例如所检测到的推车传输的信号强度测量。收集的数据中的一些或全部优选地与相关联的事件时间戳一起由ccu存储。
52.图1c中所示的系统能够包括一个或多个计算机视觉单元(cvu),例如,参照图4a和图4b描述的cvu 1000。cvu可以包括摄像头(静物摄像头或视频摄像头)、图像处理器以及被配置为与ap或ccu或ct通信的收发器。如下进一步描述的,cvu(单独或与ccu或ap结合使用)能够分析购物篮的图像(由摄像头拍摄)以确定购物篮的装载状态,例如,空、部分装载或满载。cvu能够被放置在商店入口/出口附近(例如,对进入或外出的购物篮进行成像)、结账台34附近(例如,对在结账通道中的购物篮进行成像)或零售商店的其他区域附近(例如,在存放高价值物品的区域中)。在一些示例中,cvu 1000包括摄像头收发器单元(ctu),其可以包括少于cvu的所有部件的子集。例如,ctu可以包括摄像头和rf收发器(或有线以太网连接),而不包括图像处理器。一种装置可以包含任意数量的cvu或ctu。在一些实现中,ctu的使用更具成本效益(因为每个单元不包括图像处理器),并且图像处理功能被卸载到ccu(或主cvu)。是否使用cvu或ctu的选择以及cvu或ctu的相应布置的选择将取决于任何特定零售商店中装置的细节(例如,出口或入口的位置或数量,结帐通道的位置或数量,商店内部的物理尺寸或布局,客户数量,高价值物品的存在或位置等)。例如,一种装置可以主要地或唯一地使用ctu,并且将图像处理卸载到单个cvu或ccu。但是,另一装置可以主要地使用cvu。又一装置可以在储存高价值物品的区域中利用cvu,以便能够在本地执行图像处理,并且在商店的其他区域中利用ctu。许多装置选项都可以满足特定零售商店的需求。
53.在将摄像头模块安装到购物推车的实施例中,cvu或ccu可以额外地或可替换地对由推车上安装的摄像头所生成的图像进行分析。在一些实现中,这些推车上安装的摄像头模块可以是系统(例如,cvu和ctu可以被省略或没有摄像头)中图像数据的唯一来源。
54.ccu或cvu可以实时地分析所收集的数据以用于做出决定,例如是否将锁定命令发送到特定推车30、是否致动商店视频监视系统或是否向人员发送警报信息。图1a和图1b示出了与门管理器通信并且在需要时采取适当的防盗动作的cvu或ctu的示例。门管理器可以包括如本文中所述的用于与推车车轮中的推车收发器通信的接入点(ap)。例如,当推车正驶近或通过商店出口时,ccu或cvu可以分析推车的最近历史记录(例如,路径和速度),以评估顾客是否试图离开商店而未付款。ccu(或cvu)可以分析摄像头图像以评估正在离开商店的购物篮是否至少部分地被装载或购物篮是否已经通过结账站34。(接入点可以附加地或可替换地负责做出这样的评估。)基于这个评估的结果,ccu可以将锁定命令发送到推车(通常通过接入点),或可以不发布授权推车离开的命令。作为另一个示例,如果ccu检测到运转推车的数量迅速增加,则ccu可以警告人员(例如,通过商店lan)可能需要打开额外的结账站。作为另一个示例,如果cvu检测到购物篮正在离开商店并且至少被部分装载(或者包括盗窃风险高的商品),则cvu可以向商店人员发送警报,启动警报,通过篮上的显示屏(或智能导航模块)将警告显示给购物者,或将锁定命令传达到推车的智能轮以致动制动器(例
如,禁止推车的运动)。
55.分析图像的任务优选地涉及使用一个或多个经过训练的机器学习模型。对于不同类型的分类任务(例如,推车是否空的,推车是否包含高盗窃风险商品等)和不同的图像类型(例如,从推车上安装的摄像头和非推车上安装的摄像头拍摄的照片),可以创建和使用不同的训练模型。为了训练机器学习模型,一组人类标记者可以审查和给出标签或“标记”在特定商店或使用类似购物推车和销售类似商品的一组或连锁商店拍摄的推车图像。标记的示例包括“空推车”、“仅包含非商品物品”、“包含儿童”、“包含商品”、“部分装载”、“满载”、“包含高盗窃风险物品”和“包含电子产品物品”。这些带标签的图像可以被用来训练和验证机器学习模型。在一些情况下(特别是在使用推车上安装的摄像头的情况下),可以生成包含已知经常被盗的特定商品的推车的带标签图像,这些图像可以被用于训练一个或多个模型以在推车中检测这些商品。
56.ccu还可以运行数据挖掘和报告软件,该软件分析随时间推移所收集的数据,以检测重要的行进模式和趋势。例如,ccu可以生成报告,该报告显示客户典型地如何在商店中前进,他们在每个过道或其他购物区中花费了多少时间,离开商店的购物篮的装载水平,关于盗窃事件的数据(例如,未支付就离开商店的满载或部分装载的购物篮)等。此信息可以被用于例如调整商店布局或调整提供给购物者的购物篮的大小或数量。
57.ccu(或cvu)可以附加地或可替换地将其通过蜂窝网络或无线网络(例如,互联网)收集的数据传达到处理分析和报告任务的远程节点。例如,ccu(可能还有一个或多个接入点或cvu)可以具有使用蜂窝数据服务,例如通用分组无线服务(gprs)将收集的数据传达到远程节点进行分析和报告的自主wan链路。这个功能部件能够被用于从远程设施监视系统的健康状况。该系统还可能能够经由来自远程设施的wan链路进行测试和配置。
58.如图1c所示,ccu(或cvu)可以连接到商店内存在的各种其他类型的系统。例如,ccu或cvu可以连接到预先存在的警报系统和/或视频监视系统,在这种情况下,ccu或cvu可以被配置为在检测到未经授权的出口事件时激活声音警报或视频摄像头(在各种实施方式中,监视系统中的视频摄像头可能不同于cvu中的摄像头或是同一摄像头)。作为另一个示例,ccu或cvu可以连接到预先存在的中央存储计算机,该计算机维护有关商店的结帐收银机或移动支付平台的状态的信息;如下所述,这个信息可以由ccu或cvu检索和使用,以评估顾客是否已经通过运行的结帐通道或使用移动支付应用程序或移动支付点为商品付款。
59.在系统的一些实现中,可以省略ccu。在这些实现中,接入点(ap)可以实现其他可能由ccu处理的所有实时分析功能。例如,被安装在商店出口附近的接入点或cvu可能能够检测到顾客正试图离开商店而未付款(或确定推车的篮至少部分装载),并且决定是否向推车发送锁定命令。为了适应集中式和分布式装置,每个接入点或cvu都可以在有或没有ccu的情况下运行。省略接入点的实现也是可能的,使得ccu或cvu直接与推车收发器通信。可以设想分布式的网络连接的部件和电路的许多变化。
60.推车收发器(ct)、接入点(ap)、计算机视觉单元(cvu)、结帐关卡(cb)、推车上安装的摄像头模块和中央控制单元(ccu)都能够作为无线跟踪网络上的唯一可寻址节点运行。如图1c所示,可能被包括在网络中的另一种类型的节点是手持移动控制单元(mcu)。移动控制单元被设计为使商店人员能够经由按下mcu上的按钮来解锁个别推车。移动控制单元还可以包括用于检索和显示各种类型的推车状态信息,用于配置车轮/推车收发器和更新其
固件,以及用于控制机动化的推车取回单元40(参见下文对推车取回器40的讨论)的功能。
61.在一些实现中,各种类型的节点(例如,推车收发器,接入点,中央控制单元,计算机视觉单元,推车上安装的摄像头模块和移动控制单元)可以使用非标准无线通信协议相互通信,该协议使推车收发器能够以非常低的占空比运行,而无需在不运转时维持与接入点的同步。因此,推车收发器能够使用被安装在车轮32中的相对较小的电池运行较长的时间(例如,几年)。可以使用在美国专利no.8,463,540,“two-way communication system for tracking locations and statuses of wheeled vehicles(用于跟踪轮式车辆的位置和状态的双向通信系统)”中所描述的特定无线通信协议的细节,其全部公开内容通过引用整体并入本文。
62.每个推车收发器(ct)优选地能够根据其在无线跟踪网络上接收的传输的rssi(接收信号强度指示)值来测量接收信号强度。系统可以以各种方式使用这些rssi测量。例如,推车收发器可以将接入点传输的rssi值与阈值进行比较,以确定是否响应该传输。推车收发器还可以将这个rssi值(连同推车收发器的唯一id)报告给接入点,以使系统能够估计购物推车的位置或与购物推车的距离。作为另一个示例,推车收发器可以被编程为生成并报告来自其他附近的推车收发器的传输的rssi值;这个信息转而可以被用于估计在结帐通道处、在推车存储结构中、在商店入口/出口附近、在用机械化推车取回单元40取回的推车堆中或其他地方排队的推车的数量。
63.图1c中示出了三个结帐站34,每个结帐站34包括结帐收银机(reg),其通常包括商品扫描仪。在这个特定示例中,每个结账站34包括接入点(ap),其可以被安装到指示结账通道的编号的预先存在的杆(如果存在的话)。每个这样的接入点可以包括使其能够确定各结帐站当前是否处于运行状态的连接或传感器。这个信息对于评估通过结帐通道的顾客是否已经付款很有用。下面描述了可以被用于感测结帐站的运行/不运行状态的几种不同方法。被放置在结帐站34处的每个接入点可以使用定向天线与附近的购物推车/推车收发器通信,例如那些在相应的结账通道中排队的购物推车/推车收发器(参见下面讨论的图2)。
64.在一些实现中,商店可以利用结账通道的末端处、在商店出口处(如图1c所示)、在具有高价值物品的区域中等的结账关卡(cb)。cb通常地包括除非顾客被允许离开结账通道或商店或高价值区域(例如,顾客已经为物品付款),否则将被锁定的闸门、障碍物或十字回转门。然后能够解锁cb,以允许顾客离开(例如,通过推动旋转打开以允许通过的闸门)。离开后,大门会转动关闭并且上锁,以防止其他顾客未支付离开。cb可以与商店的ccu、cvu、ctu、结帐收银机、移动支付点35(如下所述)等通信,以便接收解锁屏障(或锁定屏障)的命令。
65.图1c还示意性地示出了移动支付点35。移动支付点不必固定在商店中的物理位置,而能够表示允许购物者为购物者的篮中物品付款的无线网络连接。例如,购物者可以访问移动支付应用程序(例如,在购物者的智能电话上或被安装在购物篮或推车上的通信显示器上),该应用程序能够以电子方式记录篮中的物品或商品并且提供移动支付选项(例如,通过信用卡或借记卡付款)。移动支付点35能够与ap、ccu、cvu等进行无线通信,从而能够记录支付并将其传达给图1c所示的系统的适当部件。例如,cvu可以检测到(经由本文中所描述的计算机视觉图像分析)有装载的购物篮将要离开商店。cvu可以访问支付信息以确定与离开的篮相关联的购物者是否已经为篮中的物品付款。如果购物者已经付款(例如,经
由移动支付点35或通过收银机34),则系统能够允许购物篮离开商店而不会触发防盗动作。但是,如果购物者未付款,则系统能够触发防盗动作(例如,启动警报或商店监视系统,向推车车轮发送锁定命令,通知商店人员等)。
66.接入点可以附加地或可替换地被安装到商店附近的各种其他固定和/或移动结构。例如,如图1c所示,可以将接入点安装到商店停车场中的购物推车存储结构36(示出了两个)。这些安装在停车结构上的接入点可以被用于检测和报告存储在其各自区域中的推车数量,还可以被用于使商店内接入点、cvu或ccu能够与超出范围的推车通信。
67.图1c所示的系统能够包括其他的可选部件。例如,动力辅助(机械化)推车取回单元或台车40,其可以是推车推动器或推车拉动器,能够被用于取回购物推车并且将其归还到推车存储位置36。商店能够在商店出口处,或附加地或可替换地在每个结帐通道的尽头,包括一对常规的eas(电子商品监视)塔。尽管不需要eas塔来实现本文所述的各种功能,但是系统可以利用它们在零售商店中的普遍存在的特点。例如,每个推车收发器(ct)可以包括用于检测其在一对eas塔之间通过的eas接收器,并且可以被配置为在无线跟踪网络上报告eas检测事件;在评估在离开的顾客是否已付款时,反过来这个信息也可以予以考虑。
68.图1c中的示例商店配置也被示出为具有沿着停车场的外周或在商店出口附近埋设在人行道中的极低频(vlf,典型地低于9khz)信号线44。这样的信号线能够被用于定义允许购物推车处于其中的区域的边界。购物推车的车轮32能够包括vlf接收器,该vlf接收器检测vlf信号,并且在推车被推过信号线44上方时接合制动器。尽管在图1c中未示出,但是也可以在商店出口处设置vlf线,使得通过出口的所有推车都必须越过这个线,和/或在其他关注的位置。
69.尽管本系统不需要使用vlf信号线44,但是该系统优选地能够使用一条或多条vlf线作为监视推车位置的机构。具体地,推车收发器(ct)优选地包括vlf接收器。vlf接收器可能能够检测在vlf线上传输的代码,从而能够使用不同的线来唯一地识别不同的区域或边界。当检测到vlf信号时,推车收发器可以根据情况采取各种措施。例如,推车收发器可以尝试在无线跟踪网络上报告vlf检测事件,然后等待指示是否接合制动器的命令。如果在这个示例中的预编程时间段(例如,2秒)内没有接收到命令,则推车收发器可以自动接合制动器。vlf检测事件可以在无线跟踪网络上报告给cvu,cvu可以对推车或购物篮进行成像以确定其装载状态。如果确定推车或篮未装载,则盗窃情况不太可能发生,并且可能不发送制动命令(或可能指示制动器不接合)。相反,如果确定推车或篮至少被部分装载并且推车或篮正在离开商店,则cvu可以向推车发送制动或锁定命令或某种其他类型的防盗命令。例如,对于手提篮(其没有锁定轮),防盗命令可以包括警告命令(例如,可以激活篮上的灯或警报以警告购物者),激活商店视频监视系统的命令(以获得潜在盗窃事件的视频),提醒商店安全人员的信号等。这样的防盗命令可以附加地或可替换地与轮式推车一起使用。
70.进一步参考图1c,可选地可以在商店地板上方或下方提供一个或多个磁性标记或磁条(mag),以提供附加的或可替换的位置跟踪机构。如图所示,这些磁性标记可以设置在关键位置,例如在每个结帐通道和商店出口处。尽管未在图1中示出,但也可以在停车场和/或购物过道中设置一个或多个磁性标记。每个磁条能够具有唯一的磁像,磁像能够由车轮32中包括的或附接到购物篮或购物推车30的可选磁传感器感测到。因此,磁性标记用作识别特定位置的磁性条形码。在一种实现中,当推车30越过磁性标记时,推车收发器(ct)在无
线跟踪网络上传输所检测到的磁性代码或能够从中得出这个代码的信息。美国专利no.8,046,160,“navigation systems and methods for wheeled objects(用于轮式物体的导航系统和方法)”描述了如何感测和使用磁性标记的其他详细信息,其全部公开内容通过引用整体并入本文。
71.图1c所示的系统能够包括其他的或可替换的功能或部件。例如,该系统可以实现在美国专利no.9,606,238中描述的用于低能耗定位可移动物体的技术和功能,其全部公开通过引用整体并入本文。这些技术能够被用于跟踪购物篮在商店环境中移动时的位置。能够使用在上述合并的美国专利no.8,046,160或美国专利no.9,731,744或美国专利no.10,232,869中所描述的技术(例如,航位推算)来跟踪购物篮的移动;在此通过引用将其每一个的全部内容并入本文中。
72.从前面的讨论中明显地,图1c中所示的许多部件是可选部件,它们可以包括或可以不包括在给定的系统装置中。例如,在一些装置中,可以省略磁性标记、eas塔、结账关卡和/或vlf信号线。另外,能够省略接入点或ccu。ctu可以用cvu代替,反之亦然。此外,图示的部件可以与图示的布置不同。例如,可以在结帐通道和/或商店出口/入口中设置vlf信号线(例如,代替所示的磁性标记和eas塔),以使推车能够分别检测结帐事件和离开/进入事件。此外,其他类型的信号发射器和检测器/接收器可以被用于监视推车位置。例如,超声发射器/接收器能够被用于跟踪推车位置,或者商店可以包括射频(rf)检测器(例如,位于天花板上),该检测器检测来自推车的rf信号并且使用来波方向技术来确定推车的位置。评估顾客付款技术实施例
73.系统能够支持多种不同的方法来评估顾客是否离开商店而未付款。所使用的一种或多种特定方法可能会基于给定装置中所包含的系统部件的类型和位置而有很大不同。例如,如果商店不包括任何电子商品监视(eas)塔、磁性标记(mag)或vlf线,则可以单独地或主要地基于根据ct-ap通信确定的推车位置/路径信息进行确定,可选地将车轮转速历史记录作为附加因素予以考虑。如果提供了eas塔、磁性标记和/或vlf信号线,则可以将它们用作可以做出决策的附加的或可替换的信息源。该系统可以包括在结账通道34附近的计算机视觉单元(cvu),并且cvu能够分析结账通道的图像以确定购物者是否通过了通道,与商店结帐服务员或商店支付系统交互,在通道中停留了指示结帐和付款过程的足够的时间来(例如,超过1分钟,2分钟,3分钟,5分钟或更长),提供的付款信息等。cvu可以分析图像以确定购物者是否正从结账通道34的方向或不太可能付款的另一方向接近出口。如下面参考图4a进一步描述的,附加的一个或多个次要摄像头410a能够位于设施中,以监视推车的移动(例如,通过结账通道或支付点或来自存储高价值物品的位置)。当推车从一个次要摄像头的视场移动到另一个次要摄像头(或cvu或ctu)时,系统能够将对推车的跟踪移交给下一个摄像头,以提供推车的基本上连续的路径。cvu(或ccu)可以访问来自移动支付点35的支付信息以确定正在离开的购物者是否已经为购物者的篮中的物品付款。美国专利no.8.463,540描述了用于评估离开的顾客是否已经付款的其他(或可替换的)技术,其全部公开内容通过引用整体并入本文。前述内容的许多组合或变型能够被用于确定与购物篮相关联的购物者(例如,推动人力推进的购物推车的购物者)是否可能已经为购物者的篮中的物品付款。购物推车上的购物篮示例
74.图2a示出了具有购物篮205的示例购物推车30的功能部件。购物推车30是人力推进的,并且包括智能定位系统210和一个或多个防盗轮或防盗组件215(其能够制动、锁定或禁止车轮的旋转或推车的移动)。智能定位系统210能够被安装在推车30的手柄上(例如,如图2a和图2b中所示),或者能够被安装在推车中或推车上的其他地方(例如,在篮205的前部)。防盗轮215能够是智能锁定轮,例如除了锁定机构或制动机构外还具有传感器(例如,用于感测vlf线)、无线通信系统(例如,推车收发器ct)和/或处理器的车轮。能够使用智能定位系统210来跟踪购物推车30的位置,该系统可以利用航位推算或振动检测技术来估计推车的位置。例如,该智能定位系统210能够包括美国专利no.8,046,160、美国专利no.9,731,744或美国专利no.10,232,869中所描述的部件或功能,在此通过引用将其每一个的全部内容并入本文中。
75.导航系统和防盗系统的功能能够分布在智能定位系统210和智能锁定轮215之间。例如,智能定位系统210和智能锁定轮215中的一个或两者能够具有离开/进入事件检测能力;车轮锁定的防盗功能能够位于智能锁定轮215中,而使用者警告的防盗功能能够位于智能定位系统210中。此外,尽管图2a示出了用于人力推进的购物推车的购物篮205,但是本文描述的类似技术适用于机动化的购物推车或机动性推车上的购物篮或由购物者手提的手持式购物篮。例如,智能定位系统210能够被附接(或集成到)机动化的购物推车或机动性购物推车中,或者被附接到手持式购物篮。
76.如图2b所示,一些购物推车包括能够在儿童座椅关闭的位置和儿童座椅打开的位置之间移动的用户可调节的儿童座椅。在打开位置(如图2b所示),购物者能够将儿童(或其他物品)放在座椅部分上。在许多推车中,购物者能够将儿童座椅1620的金属框架推离推车30的手柄1610,这导致座椅部分移动到水平位置。因此,打开位置有时被称为儿童座位放下。图2b示出了购物推车30,其中儿童座椅1620处于打开或儿童座椅放下的位置。如下面将进一步描述的,计算机视觉单元(cvu)可以对购物推车30成像,以确定推车的装载是(至少部分地)归因于被放置在儿童座椅1620中的儿童还是被放置在儿童座椅上的物体(例如手提包),而不是商店商品。
77.在一些实施例中,购物推车30可以包括能够对篮205的内容物进行成像的摄像头或摄像头模块。图2c(侧视视角)和图2d(俯视视角)示出了此类推车30的一个示例,其中示出了安装在篮215的内侧前边沿或前壁上的摄像头模块217,优选地安装在前边缘(front lip)上。在所示的示例中,摄像头的水平视场(hfov)和垂直视场(vfov)均为90度。摄像头的hfov和vfov优选地在45
°
至135
°
的范围内,更优选地在60
°
至120
°
或75
°
至105
°
的范围内,最佳值取决于篮205的尺寸和摄像头的安装位置。如上所述,系统可以使用摄像机模块217捕获的图像(其中可能包括视频)来识别或分类被放置在篮205中的产品或其他物品。摄像头模块217可以包括接收和分析图像的处理器,和/或可以包括将图像传输到cvu、ccu或其他节点进行分析的收发器。
78.正如下面所进一步讨论的,推车上的一种或多种类型的传感器(例如,振动传感器,秤,或感测篮内运动的运动传感器)可以被用于检测顾客可能将物品添加到推车30中的事件。这个事件可能会触发摄像头模块217在事件刚发生后捕获购物推车内容物的图像。使用触发事件来启动图像采集,可在未将物品添加到推车时将摄像头或摄像头模块217保持在“关闭”或低功耗状态(从而节省电池电量),还可减少存储和分析的图像的数量。可以通
过只有当购物推车30处于特定区域,诸如商品区域或高盗窃风险商品区域时才激活摄像头模块217或其摄像头来进一步降低功耗,并进行图像生成;例如,当推车处于商店停车场时,摄像头模块217可以避免生成图像。
79.物品添加事件也可以作为系统的触发器来捕获一个或多个附加类型的事件元数据,例如推车的位置、事件时间戳、车轮旋转速度、最近的车轮速度历史和/或篮重量测量(如果购物推车包括秤,如下所述)。此外,该事件还可能触发对所捕获的图像或图像集(如下所述)的上传和/或分析。另一个可以被用于触发图像捕获的事件是当推车处于商品区域时,推车从静止状态转变为运动状态;例如,如果车轮旋转是在推车处于商品区域(或特定类型的商品区域)时启动的,则车轮组件可以产生导致摄像头模块217生成推车图像的信号。
80.图2e示出了图2c和图2d的摄像头模块217的一个实施例。在所示实施例中,摄像头模块217包括镜头217a(例如,可以是鱼眼镜头或菲涅尔透镜)、成像器217b、图像预处理器217c、控制处理器或mcu 217d、无线收发器217e、电池217f和存储器(未示出)。尽管示出了单个摄像头(成像器),但在一些实施例中,摄像头模块217可以包括多个摄像头(例如,2个、3个或4个),这些摄像头水平和/或垂直地间隔开,允许从多个视角对推车内容物进行成像。如图所示,摄像头模块217还可以包括或被连接到冲击/振动传感器217g,诸如加速度计,其能够感测向篮205添加物品所引起的推车振动。在图2e的这个实施方案中,控制处理器217d被配置为用于分析检测到的冲击或振动事件的振动曲线图,以确定与将物品添加到篮205中相比,该事件是否可能是推车运动的结果。美国专利no.10,232,869描述了用于检测和分析推车振动的部件和过程的示例,其公开内容通过引用被并入本文中。在一些实施例中,冲击/振动传感器217g可以与摄像头模块217物理分离(例如,其可以被安装在篮的底部或车轮组件中),在这种情况下,其输出或对其输出的分析结果可以无线地传达给摄像头模块217。
81.当检测到可能添加物品的事件时,控制处理器217d可以启动对图像(或者如果摄像头模块包括多个间隔开的摄像头时,则是两个或多个图像的集)的捕获和初始处理。在一些情况下,分析新捕获图像的任务被划分在摄像头模块217和外部节点诸如cvu之间。例如,摄像头模块的控制处理器217d或图像预处理器217c可以将图像与最近拍摄的图像进行比较,以确定推车的内容物是否可能已经发生了变化。如果检测到推车内容物可能发生了变化,则控制处理器可以对图像中发生变化的区域进行标记(诸如通过在已更改的部分或新检测到的物品周围绘制边界),然后将标记后的图像(连同推车id和任何捕获的事件元数据,包括图像捕获时间戳)传输给cvu或其他远程节点进行进一步分析。
82.此后,cvu或其他远程节点可以使用一个或多个经过训练的机器学习模型,或其他类型的软件组件(例如,基于规则的分类器)对新添加的物品进行分类,例如通过给物品指定一个或多个类别,诸如“商品”、“非商品”、“高盗窃风险物品”、“电子产品”等。在一些情况下,分析图像的任务还可能涉及使用ocr(光学字符识别)来识别产品包装上的文本,在这种情况下,任何识别的文本都可以被用于或考虑用于分类或识别物品。推车的摄像头模块217在购物过程中捕获的图像,以及相关图像分析的结果,可以由ccu(或者另一个处理节点)结合购物推车的id进行维护。这些数据,以及在购物过程中为推车收集的任何其他数据,最终可以被用来决定是否授权停车离开商店。
83.在一些实施例中,购物推车30可以包括被配置为称量放置在篮205中的物品的内容的内置秤(未显示)。例如,秤可以是一个结构的一部分,该结构机械地将篮205连接到支持篮的推车车架或推车车架的一部分。美国专利公布2015/0206121 a1中公开了一个具有内置秤的推车的示例,其公开内容通过引用被并入本文中该秤可以被可替换地并入到推车的车轮组件中的一个或多个车轮组件中。秤可以被电气地或无线地耦合到推车上的处理器,诸如摄像头模块的控制处理器217d或智能轮组件的处理器,使得秤的输出被传输到处理器。正如下面所讨论的,系统可以使用物品重量测量,结合其他收集的数据,诸如推车图像和/或推车位置,以识别或分类添加到推车的物品。下面描述了对购物推车篮中的物品进行分类以及基于此分类做出离开授权决定的示例方法。
84.在一些系统实施方式中,商店中的购物推车30可能仅配备了摄像头模块217,因此可能没有智能车轮组件或其他导航组件。在此实施方式中,摄像头模块217可以包括能够与接入点(ap)、固定发射器或商店中的应答器通信的位置跟踪电子设备,以监控推车的位置。例如,摄像头模块217可以能够从一些商店中包含的智能货架或智能标签系统接收信号,从而能够识别附近的商品。另一个示例是,摄像头模块217可以包括通常包括在推车收发器(ct)中的电子设备,在这种情况下,摄像头模块可以使用rssi测量来确定接近商店接入点,如上文提到的专利所述。正如下面所讨论的,蓝牙和其他无线标准可以可替换地被用于监控推车位置。智能定位系统示例/智能制动轮实施方式
85.图3示出了用于购物篮的示例跟踪系统的部件集300(例如,购物推车或机动性推车上的篮或手持式购物篮)。该示例部件集300包括以下部件:(1)智能定位系统210;(2)智能锁定轮215;(3)与商店出口和/或入口、结账通道、高价值区域、车轮215能够进行重置或更新的位置等相关联的固定功能部件385;(4)系统配置和控制装置390;(5)rf信标或其他rf功能部件395;和(6)计算机视觉单元(cvu)1000或摄像头收发器单元(ctu)1001。参考图4a和图4b进一步描述了cvu和ctu。
86.智能定位系统210包括(1)传感器元件315,其用于确定推车的航向和速度(例如,磁强计和/或加速计),以及可选地确定系统的温度(例如,温度传感器);(2)可选传感器320,其提供可以推断出车轮旋转速率的数据(例如,传感器不需要接近车轮);例如,振动传感器;(3)处理器和存储器325;(4)通信系统330,其(例如,经由rf链路)与智能锁定轮315、系统配置和控制装置390,rf信标或其他rf功能部件395,和/或cvu 1000通信;(5)可选检测器310,其被配置为确定推车正在通过商店的出口/入口(离开/进入事件),并且在一些实施方式,确定运动是否是正在离开商店或进入商店。在一些系统中,车轮中的电路系统执行实际的检测功能;智能定位系统与车轮中的检测电路系统通信以获得离开/进入信息。某些系统可以将检测器360作为主要检测器和将检测器310作为次要检测器;(6)指示器335(例如,可视的和/或可听的),其向使用者提供通知以表示推车在警告区域和/或即将锁定。指示器可以包括被配置为输出文本或图像的显示器(例如,向使用者输出围护边界就在附近并且如果轮式物体移动到围护边界之外则车轮将锁定的警告)。指示器可以包括作为对使用者的通知而照亮或闪烁的灯(例如,发光二极管(led))。指示器可以包括可听警报或通知。在一些实施方式中,指示器包括语音合成器,该语音合成器能够输出人类可理解的消息例如“推车接近界限并且即将锁定”。指示器能够包括用于输出可听通知的扬声器。智能定位系
统210还可以包括光检测器333用于检测环境光特征以供导航使用,或垂直位置检测器337(例如,压力传感器)用于确定智能定位系统位于多层结构中的哪一层。在上文中合并的美国专利no.9,731,744或no.10,232,869中进一步描述了这些部件的功能。
87.图3示出了示例,其中智能定位系统210与包括智能锁定轮215的轮式推车一起使用(尽管这不是必需的,但是系统210能够在手持式篮上使用)。车轮215包括(1)锁定机构(例如,制动器)380,其被配置为当锁定机构被激活(或推车本身平移)时禁止车轮的旋转;(2)车轮旋转检测器375,例如,音叉和撞针(例如,随着车轮旋转撞击音叉的零件);(3)处理器和存储器370;(4)通信系统365,其被配置为与智能定位系统210、系统配置和控制装置390,rf信标或其他rf功能部件395,和/或cvu 1000或ctu 1001通信;(5)可选检测器360,被配置为检测离开/进入事件,并且在一些实施方式中,检测运动是否是正在离开商店或进入商店;和(6)可选的方向/万向轮角度检测器383,其被配置为检测(万向)车轮的方向。
88.固定功能部件385能够与商店的出口和入口,结账通道,高价值物品所在的区域,推车的位置能够被重置或更新的位置等相关联。这些功能部件的接近程度能够通过智能定位系统或智能锁定轮中的检测器来检测。该固定功能部件能够被用于向智能定位系统提供准确的参考位置(例如,用于重置任何累积的航位推算位置误差)。固定功能部件385可以包括vlf线路、接入点,为警告或锁定而生成的rf场、结帐关卡、eas塔、磁性标记或电磁标记等。cvu 1000或ctu 1001能够与固定功能部件385通信以在购物推车接近固定功能部件附近时提供适当的信号(例如,向结账关卡或推车收发器提供锁定或解锁信号,或者提供位置信号以重置或更新推车的位置)。
89.系统配置和控制装置390能够执行内务处理任务例如配置和控制。装置390能够与智能定位系统中的通信系统330和/或智能锁定轮中的通信系统365通信。系统配置和控制装置390可以是包括ccu(例如,参照图1c所描述的),或者在某些情况下,包括cvu 1000。
90.rf信标或其他rf特征395能够传输rf信号用于进入/离开检测和/或精确定位确定。
91.cvu 1000或ctu 1001能够与例如参考图1c所描述的智能锁定轮215、智能定位系统210、rf信标或其他rf功能部件395和/或系统配置和控制装置390或中央控制单元(ccu)无线通信。附加地或可替换地地,cvu或ctu能够使用有线lan连接,例如以太网与ccu或控制器390通信。
92.如本文中所描述的系统可以用比以上所描述的更多或更少的特征/部件来实现。而且,系统可以用与上述不同的配置来实施,例如,旋转检测器可以在智能定位系统和智能锁定轮中的一个中实施,rf信标可以与通信系统330和365中的一个通信系统通信,而不是与这两者都通信。此外,图3中的部件的功能能够不同于所示的进行组合、重新布置、分离或配置。
93.智能定位系统210能够被布置在轮式物体中的一个或多个位置。例如,一些或所有的智能定位系统能够被布置在推车的手柄、车架、万向轮、车轮等中。对于机动化的购物推车或机动性推车,智能定位系统210能够被连接到推车的框架或主体,或者与用于操作推车的其他电子电路结合。本文中所描述的智能定位系统能够被用在不同于推车围护的应用中。例如,该系统能够被用于估计轮式物体的位置、路径或速度。而且,在推车围护应用中,推车能够包括被配置为在被激活时禁止推车移动的一个或多个车轮,例如通过包括车轮制
动器。例如,当激活制动器时,车轮能够锁定或阻止旋转。美国专利us 8,046,160、us 8,558,698和us 8,820,447描述了能够禁止推车移动的推车车轮的示例,所有这些专利的全部公开内容通过其整体引用并入本文。
94.在美国专利no.9,731,744或美国专利no.10,232,869中能够找到系统300的功能的进一步描述,在此通过引用将其每一个的全部内容并入本文中。使用计算机视觉的防盗系统示例
95.图4a示意性地示出了一种防盗系统400,其使用计算机视觉技术来识别至少部分装载的购物篮是否正在离开商店。系统400包括计算机视觉单元(cvu)1000,其可以大体上类似于参照图1c描述的cvu。cvu 1000能够位于监视区域440附近,例如入口/出口附近、结账通道34、商店中具有高价值商品(例如酒,保健产品,药品)的区域等。
96.在图4a所示的实施方式中,cvu 100与门管理器450通信,门管理器450在一些这样的实施方式中可以执行参考图3所述的系统配置和控制装置390的功能。例如,门管理器450能够与智能定位系统210中的通信系统330和/或智能锁定轮215中的通信系统365通信,并且发出防盗命令(例如,以锁定或制动车轮,启动警报或警告等)。门管理器450能够包括中央控制单元(ccu)(例如,参照图1c所描述的),或者在一些情况下,能够是cvu 1000的部件,或者在一些情况下,能够与ccu通信。门管理器450能够控制在商店出口处使用的固定功能部件385,例如能够定义警告区域或锁定区域的一条或多条vlf线或rf场(例如,这种vlf或rf信号可由出口附近的推车收发器检测到)。固定功能部件385能够包括位于例如出口或结账通道处的结账关卡(cb)。门管理器(或cvu)可以具有自主wan链路,该自主wan链路使用蜂窝数据服务,例如通用分组无线服务(gprs)、长期演进(lte)或5g新无线电(5gnr)以将有关商店出口事件的收集数据传达到ccu或远程节点(例如,参考图4b描述的云平台470)以进行分析和报告。例如,远程节点能够由经授权的商店人员访问(例如,经由网络浏览器),他们能够查看有关出口事件(例如,盗窃情况)的统计资料或出口事件的图像或视频(例如,购物者试图推出盗窃的视频)。
97.在图4a所示的系统400中,使用rf场和vlf线来提供警告区域和锁定区域。当购物篮越过警告区域时,未经授权离开商店的购物篮可以首先接收警告(例如,听觉的或视觉的,并且例如由智能定位系统210显示),然后如果篮越过锁定区域则接收锁定信号(例如,用于启动车轮制动器的指令)。在其他实现中,既不使用rf场也不使用vlf线,仅使用rf场或vlf线中的一个。同样,在其他实现中,仅利用警告区域和锁定区域中的一种。附加地或可替换地,能够使用结帐关卡(cb)。
98.cvu 1000能够与支付点,例如结帐收银机34或移动支付点35通信,以便访问与监视区域中的购物篮有关的支付信息。如本文所述,当有物品的购物篮试图离开商店而没有顾客已经为物品付款的任何标记时,可能发生盗窃情况。因此,cvu 1000能够使用来自支付点的信息来至少部分地确定是否已经为有装载的购物篮中的物品付款。
99.cvu 1000能够包括被定向为对监视区域440成像的摄像头410。摄像头410能够包括能够生成图像集430的视频摄像头,图像集430被图像处理器420用来分析监视区域440中的购物篮活动。图像集430可以包括视频,视频的一帧或多帧或由摄像头获取的图像的选集。摄像头可以包括灰度摄像头,彩色摄像头(例如,rgb),或能够在电磁光谱的非可见部分中成像的摄像头。例如,非可见部分可以包括红外线(ir)区(其可能对于黑暗的入口或夜间
成像是有利的,其中(可选地)ir光源能够被用来照亮入口)或紫外线(uv)区(其可能有利于通过玻璃进/出门或窗户成像)。使用提供电磁频谱的可见部分和不可见部分中的成像的摄像头410能够允许cvu或ccu执行多光谱或高光谱图像分析,这可以基于推车或商品的独特光谱反射特征来更好地对推车或商品进行跟踪或分类。例如,能够使用多光谱成像来基于其包装的特定颜色检测易盗物品。这种检测能够使用相对较少数量的光谱带(例如,7到9)在各种各样的商店照明条件下进行,并且能够由cmos成像器和拜耳滤镜(bayermask)或针对每个光谱带的一组滤光片实现。摄像头410可以包括深度摄像头,该深度摄像头获取图像以及图像中的对象的深度数据(例如,距摄像头的距离),并且能够有利地用于篮的深度感测和运动跟踪。深度摄像头可以包括立体摄像头,该立体摄像头包括经由立体技术确定深度信息的被间隔开的两个或更多个图像传感器。
100.在一些实施方式中,cvu(或部件)能够由以太网供电(poe)驱动。在一些实现中,摄像头410包括以每秒20个或更多帧的速度运行的视频摄像头,提供4兆像素或更大的图像分辨率(例如,1920
×
1080或更大),并且使用实时流协议(rtsp)流传输视频。可以使用h.264协议对视频进行压缩用于有效的带宽通信。在一些实施方式中,可从hikvision digital technology co.,ltd.(工业城,ca)获得这种摄像头。
101.摄像头410可以包括多个摄像头。例如,cvu 1000或ctu 1001能够包括成像摄像头410,并且系统400可以包括与cvu或ctu中的摄像头10分隔开的一个或多个次要摄像头410a。次要摄像头410a能够与cvu或ctu设置在相同的壳体中,或者可以与cvu或ctu物理地分开。次要摄像头410a可以被配置为与摄像头410具有至少部分重叠的视野(例如,其可以被用于图像处理和购物篮装载分类)。一个或多个次要摄像头410a的使用可以允许系统400在摄像头410的视场之外的区域中跟踪购物篮205。例如,(一个或多个)次要摄像头410a可以被放置在支付点或包含高价值物品的存储区域附近,从而系统400能够在购物篮205进入cvu或ctu的摄像头410的视场之前或之后跟踪购物篮205在这些区域中的运动(例如,用于装载分类)。次要摄像头410a可以被放置在商店出口附近,以使得能够在出口附近或越过出口处跟踪篮。摄像头410和次要摄像头410a之间的距离能够取决于这些摄像头的视场,镜头尺寸,在零售设施的地板上方的高度等。在各种实施方式中,次要摄像头410a可以与摄像头410分隔开的距离在约10cm至约1m或更大的范围内。
102.cvu 1000、ctu 1001或次要摄像头410a中的一些或全部被安装在商店出口附近,因为这是小偷将试图带着未购买的商品离开的位置。在许多零售设施中,商店出口都有大量玻璃,例如玻璃门、玻璃窗等。玻璃的使用可使阳光(在白天)进入零售设施,并且能够为购物者提供明亮愉悦的购物体验。但是,阳光会导致从地板、金属表面和金属购物推车产生眩光、闪光或反射。这样的眩光、闪光或反射能够在用于运动跟踪或计算机视觉分析的图像中创建伪影。因此,在一些实现中,摄像头410、410a中的一些或全部能够包括偏振透镜或滤光片411,以减少所获取的图像中的眩光、闪光或反射。例如,透镜或滤光片411中的偏振方向能够正交于太阳从设施的地板反射的路径。
103.图像处理器420可以包括硬件处理器(例如,cpu或图形处理单元(gpu))以执行本文描述的图像分析和对象识别任务。在一些实施方式中,图像处理器420能够包括可从google,inc.(山景城,ca)获得的边沿张量处理单元(edge tpu),其支持tensorflow lite机器学习和计算机视觉模型。
104.cvu 1000能够包括rf通信节点425(例如,收发器)以与系统400的其他部件(例如,门管理器450,支付点,或购物篮(例如,智能定位系统210或锁定轮215)))进行通信。rf通信节点425能够与参考图1c描述的系统的任何部件通信。在rf节点425之外附加地或可替换地,cvu能够包括有线lan连接,例如以太网。例如,cvu 1000可以经由以太网链接到ccu。
105.在一些实现中,cvu 1000(或ctu 1001)的功能能够作为被配置为执行机器学习推理或图像分类模型并且提供无线连通信的模块上系统(som)板提供。一个som板的示例是可从google,inc.(山景城,ca)获得的coral dev board。coral dev board包括cpu、gpu、用于机器学习模型的edge tpu协处理器、板载存储器和无线连接性(例如,蓝牙4.2,ieee 802.11b/g/n/ac 2.4/5ghz)。在一些这样的实现中,摄像头410能够被连接到som板以进行紧凑的设置。
106.图4a还示出了摄像头收发器单元(ctu)1001的示例。ctu 1001能够被认为是cvu 1000的一种类型,而没有图像处理器420,但其他部件与本文所述的大致相同。使用ctu 1001可以提供更具成本效益的装置,因为可以将图像处理功能卸载到ccu或cvu。因此,一个装置可以包括用于图像处理的ccu或一个或少量cvu,而在整个设施中放置了附加的ctu,以捕获入口、出口、支付点、高价值区域等的图像。通常,ctu 1001和cvu 1000能够在装置中可互换地使用。因此,应当理解,对cvu的引用包括对ctu的引用,对ctu的引用包括对cvu的引用。因此,系统400的功能能够在ccu、cvu、ctu或门管理器之间分布,以便为任何特定的设施提供合适的和具有成本效益的防盗装置。附加地或可替换地,一些或全部图像处理(或其他程序功能)能够由远程硬件处理器(例如,在云中)执行。这些部件能够经由有线或无线lan或wan通信。可以预期许多变化,并且本文描述的特定示例和附图旨在是说明性的而不是限制性的。
107.在某些示例中,cvu 1000或ctu 1001可以包括能够被用于确定cvu或ctu是否以水平方向安装的惯性测量单元(imu,例如,加速度计)。查看从cvu或ctu流传输的图像能够确定摄像头410的位置、方向和焦点正确。imu读数的变化能够表明cvu或ctu在安装后已经倾斜或旋转,可以采取校正动作。例如,能够对cvu或ctu进行物理调平。附加地或可替换地,能够通过使用计算机视觉技术对图像的角度(或旋转)变化进行补偿来校正设备的方向变化。
108.防盗系统400能够包括附加传感器460以提供附加或不同的功能。例如,附加传感器460能够包括超声传感器,飞行时间(tof)传感器,雷达传感器(例如,毫米波雷达),或激光雷达传感器(扫描或非扫描)。在一些情况下,此类传感器作为深度摄像头的一部分提供,该摄像头既执行成像功能又执行接近或测距功能。cvu或ctu的摄像头410能够包括深度摄像头或一对用于深度功能的立体摄像头。传感器460能够被用于提供从传感器到推车(或推车中的商品)的距离数据。下面提供了使用这种附加传感器460提供购物篮205或商品的三维(3d)成像的进一步描述。
109.图4b示意性地示出了防盗系统400的另一种实施方式。已经参考图4a描述了系统400的这种实施方式的部件中的许多部件。这种实现使用无线蜂窝网关在cvu 1000和云平台470之间双向通信。云平台470能够位于远离cvu 1000所在的设施的位置。云平台470可以处理从多个零售设施处的cvu获得的图像。
110.如上所述,cvu在其摄像头410的视场内获取购物篮205的图像。cvu的处理器420能够执行机器学习或计算机视觉对象检测模型来确定试图离开商店的购物篮的装载状态(例
如,空,至少部分装载或满),并且能够基于至少部分装载的推车正试图离开零售店而未付款的检测而更改门锁定状态。例如,能够改变门锁定状态以激活被检测为具有未付款商品的购物推车的智能锁定轮215的轮锁定机构380。
111.cvu能够在本地收集和存储购物篮的图像,并且通过云平台470传达图像以进行存储和分析。cvu和云平台470能够通过使用例如蜂窝数据服务,例如通用数据包无线电服务(gprs)、长期演进(lte)或5g新无线电(5gnr)的自治wan网关465通信。网关465能够提供对云平台470的有线或无线网络访问,并且可以是在市政无线(例如,wifi)网络上的虚拟专用网(vpn)。
112.云平台470能够包括用于存储和分析由cvu收集的图像的处理器和存储器。例如,能够在方框472处标记图像集,以提供训练数据用于更新由cvu使用的机器学习或计算机视觉对象检测模型。在方框474处,能够使用标记的图像数据来更新或生成新的对象检测模型。能够通过wan链路465将更新的模型或新模型传达回cvu。
113.在一些实现中,云平台470能够提供实时事件检测或实时流传输476,其中能够查看和分析事件日志(例如,成功或未成功识别的盗窃事件的图像的数据库)用于进行故障排除或以改善系统400的性能。云平台470可以提供仪表板(例如,其可以经由互联网访问的),其中,经授权的零售设施经理或系统管理员能够查看事件日志、访问数据标签或训练模块472、474,执行系统维护或升级等。
114.参考图8至图11描述了能够(至少部分地)由云平台470执行的附加工作流和处理流水线。防盗系统的图像处理技术示例
115.如参考图4a和图4b所述,防盗系统400的cvu 1000能够对监视区域440成像并且获取出口事件的图像集430。出口事件能够包括购物篮205通过出口离开商店。在许多零售商店中,出口也是购物者能够带着购物篮进入商店的入口,在这种实施方式中,出口事件能够包括进入或离开商店的购物篮(因为摄像头410通常可以对整个出口/入口区域成像并且捕获进入或离开的购物者)。
116.图像集430被传达到图像处理器420,图像处理器420能够将计算机视觉、机器学习或对象识别技术(本文所描述的)应用于图像集430,以在各种实施方式中执行以下各种图像识别任务中的一些或全部。
117.图像处理器420能够将图像集中的对象分类为以下项中的一种(其中任何一种都可以称为篮的装载状态):(a)包含商品的购物篮;(b)不包含商品的购物篮(例如,购物篮不一定是空的,例如,具有打开的儿童座椅的购物推车1620可能仍含儿童、手提包等);(c)购物篮以外的其他对象(例如,购物者)。装载状态可以表示与购物篮的装载量相关联的值的范围。例如,该范围可以是数字(例如,1到5,其中1为空且5为满载),等级(例如,a到e,其中a代表满载而e代表空),或一些其他类型的分数、判别或语义分类器,或多个装载级别的概率标度(例如,满,3/4满,1/2满,1/4满,或空)。装载状态能够包括说明装载量的加权分数或值,以及装载的价值估计(例如,装载是否包括高价值物品)。例如,部分地装载有高价值物品(例如,酒瓶)的篮的装载状态可能高于满载有笨重的便宜物品(例如,纸巾)的篮,因为该部分装载的篮对商店造成了更大的金钱损失。
118.装载状态能够通过如本文所述的计算机视觉或机器学习技术来确定。在一些实现
中,可以对装载状态进行加权以反映购物篮中高价值物品的存在(这往往会增大装载状态)或购物篮中不存在高价值物品(这往往会减少装载状态)。例如,能够训练计算机视觉技术或机器学习技术来识别购物篮中高价值物品(例如,酒瓶)的存在,并且如果存在,则装载状态会增加,因为如果存在高价值物品,则购物篮中商品的价值将则价格往会更高。作为另一示例,相比其他类型商品(例如,低价值商品)的存在,装载状态可以表示高价值商品的存在,因为识别商品的货币价值最大的盗窃情况可能是有利的。
119.图像处理器420能够区分购物推车30的不同类型或尺寸,推车是人力推进还是机动的(例如,带有购物篮205的机动性推车),对象是否是携带手持购物篮205的购物者。在一些实施方式中,图像处理器420可以不对图像中的个体执行面部识别(或尝试识别个人可识别的特征或信息)以保护这些个体的隐私。能够将处理器420(或云平台470)进行的图像分析设置为完全符合数据隐私法律法规(例如,“california consumer privacy act(加利福尼亚州消费者隐私法)”或欧盟的“general data protection regulation(gdpr)(通用数据保护条例)”)。
120.图像处理器420能够区分由商店员工而不是购物者推(或搬运)的购物推车(例如,通过识别出该人穿着商店制服)。这能够在防盗逻辑中发挥作用,因为如果商店员工正将(装满的)有装载的篮从出口推出(或搬出),则被推出盗窃的可能性会大大降低。
121.图像处理器420能够确定在图像集所覆盖的时间段内对象的路径(例如,位置随时间的变化)。例如,如将参考图5进一步描述的,cvu 1000能够根据时间确定对象的坐标(例如,笛卡尔x,y坐标),并且计算对象的路径(例如,参见图6)。当购物篮205在cvu的摄像头410的fov之外时,图像处理器420可以分析由次要摄像头410a收集的图像。
122.如果所确定的包含商品的购物篮的路径指示该购物篮正朝向出口或通过出口,则防盗系统400能够将防盗信号传达给购物篮。如上所述,防盗信号能够包括锁定智能轮,启动警报(可听的或可见的),通知商店人员,启动商店视频监视系统等的指令。
123.在一些实现中,在图像集430中的对象已经被分类为关注对象(例如,包含商品的购物篮)之后,防盗系统400的动作(例如,如何传达防盗命令)能够取决于cvu1000(或门管理器450)和购物篮(例如,图3中所示的智能定位系统210或智能锁定轮215)之间的通信类型。例如,该动作能够取决于系统400是否试图使用对购物篮的单播或多播寻址。美国专利no.9,963,162,cart monitoring system supporting unicast and multicast command transmissions to wheel assemblies(支持向轮组件的单播和多播命令传输的推车监视系统)中描述了向智能轮215或智能定位系统210的单播和多播命令传输技术的示例,其全部公开通过引用被合并入本文中。单播寻址
124.在单播寻址中,能够将来自防盗系统400的命令寻址到特定的购物篮,该购物篮在商店的跟踪网络上具有特定的单播地址。cvu 1000能够使用多种技术将购物篮205与特定的单播地址相关联。
125.例如,每个购物篮能够经由布置在购物篮(或推车)上的光学可读标记,例如条形码,aruco标记等以其单播地址进行编码。光学可读标记能够对单播地址进行编码,以便摄像头410可以在可见光谱或红外(ir)光谱中检测到它(例如,ir标记对购物者的干扰较小,并且由于它们可能是人眼不可见的,因此也不太可能被潜在的盗贼所损毁)。图像处理器
420能够从包括光学可读标记的图像中检测并且解码购物篮的单播地址。
126.能够使用附加或可替换的技术来将所标识的购物篮与其特定单播地址相关联。例如,零售设施可以包括能够将rf传输标识为源自特定单播地址的无线电定位基础设施(例如,因为rf传输本身包括单播地址)。无线电定位基础设施能够检测来自篮的rf传输(由cvu标识为关注的对象),因此系统400能够在篮及其单播地址之间建立关联。
127.无线电定位基础设施能够包括在给定时间给出篮的位置(例如,x,y坐标)的三角测量系统。三角测量系统能够包括具有rf接收器的系统,该rf接收器测量从篮上的rf标签发射的rf信号的到达角以估计位置(例如,可从quuppallc(阿灵顿,va)获得的智能定位系统)。cvu能够在到达角系统中检测篮的位置或路径并且使用rf接收器的位置(不需要与cvu共位)的知识,系统400可以使到达角估计的位置或路径与cvu估计的位置或路径关联以推断篮的单播地址。因此,系统400能够与设施的现有的基于位置的服务或实时跟踪系统成为一体。
128.无线电定位基础设施能够包括例如经由飞行时间或相位解缠,随后是相位斜率法或脉冲响应法来测量到篮的径向距离的系统。系统400可以将由cvu测量的光路或位置与径向距离随时间的变化(来自径向距离测量节点)相关联,从而推断出篮的单播地址。
129.在某些装置中,购物篮具有测量其自身运动的内部机构(例如,在文中并入的美国专利no.9,731,744中所描述的航位推算导航系统,例如智能导航系统210),并且篮的自我检测到的运动能够与cvu 1000所检测到的篮的路径相关联。这种相关性能够被用于将购物篮的单播地址与经由图像处理识别出的篮相关联。
130.例如,在一些实施方式中,防盗系统400和购物篮之间存在公共时基,该公共时基能够使用购物篮上的时钟与防盗系统400的时钟之间的rf同步来进行更新。对于人力推进的推车,车轮的旋转计数提供了推车随时间变化的近似速度。系统400能够将速度随时间变化的数据与cvu所确定的光路相关联,以提供用于推断推车的单播地址的关联。作为另一个示例,包括智能定位系统210的篮能够确定篮相对于时间的准方向(例如,室内地磁场失真),并且这个准方向能够附加地或可替换地与由cvu 1000确定的光学路径相关联以推断单播地址。
131.作为用于将光学跟踪的购物篮与其单播地址相关联的另一种技术,购物篮可以被配置为测量沿着篮的路径变化的环境特征。该签名随空间位置的变化可能是已知的,并且能够被用于将篮的路径(基于环境特征的)与篮的路径(由cvu光学地确定的)相关联,以推断篮的单播地址。例如,环境特征可以包括商店中的磁场。能够绘制车轮水平附近的磁场。磁场图能够用于推断推车车轮的单播地址,因为车轮能够包括磁力计以测量其本地磁场,能够将其与该图进行比较。能够确定磁场图,并且能够使用具有已知的单播地址的推车来训练系统400。能够应用随后的机器学习技术来更新由于商店内的变化(例如,铁磁架子的移动)而随时间变化的磁场图。
132.将单播地址与购物篮相关联的方法能够在篮进入监视区域440时开始,这可以在购物篮已经就装载状态(例如,空的或已加载)进行分类或被防盗系统400识别为关注对象之前。
133.不管使用哪种技术,一旦知道了可疑篮的单播地址,防盗系统400(例如,cvu 1000或门管理器450)便能够将潜在的盗窃消息发送到通信系统(例如,系统330或365)。在以下
说明性示例中,可疑购物篮与具有智能锁定轮215的购物推车(例如“推车2345”)相关联。防盗系统400能够向通信系统330或365发送消息,例如“推车2345,您似乎包含商品:如果您检测到警告区域或出口信号,但没有离开许可,则发出警告然后锁定。”在这个示例中,该消息针对特定的可疑购物篮(与推车2345相关联),并且如果推车试图离开商店(例如,通过进入警告区域或锁定区域),则命令智能锁定轮215(或智能定位系统210)提供警告(例如,在警告区域),然后锁定(如果推车2345进入锁定区域),除非推车2345具有离开许可。如果推车2345经过商店的运转的结账通道34,或者如果商品是在移动支付点35进行支付的,则推车2345可能先前已经获得了防盗系统400的离开许可。在这种情况下,允许推车2345离开商店(而不警告或锁定),因为已经(很可能)为推车的篮中的商品付款。
134.在一些实现中,可疑购物篮不与轮式推车相关联,并且例如可以由购物者手提携带。应用类似的考虑因素,但潜在的盗窃消息可能是商店安全性警报,商店监视系统激活等。(因为手提篮没有锁定轮)。多播寻址
135.在一些实施方式中,零售商店可能尚未实现单播寻址,或者特定的关注对象的单播地址是未知的(例如,上述单播关联技术无法提供关注对象的单播地址)。在这样的实施方式或情况下,防盗系统400能够使用非单播技术来传达防盗信号。例如,能够使用监视区域440附近的购物篮的多播寻址。多播寻址能够基于状态,其中多播消息以特定状态寻址到所有购物篮。例如,购物推车车轮的状态可以是它是被锁定还是已解锁;例如,购物篮的状态可能是它是否在移动等。因此,能够将多播命令发送到状态是正在移动或未锁定等的所有收发器。
136.作为示例,如果包含商品的购物篮正接近出口,其中如果该篮未被(防盗系统)授权出口(例如,具有离开许可),则防盗系统400能够推断出有可能发生推出盗窃情况。在一些实现中,系统400的出口配置默认是在“监视”模式下,其中出口的图像由cvu 1000获得,并且如果智能轮215越过出口则不被锁定。在这个示例中,因为已经识别出可能的推出盗窃情况,所以防盗系统400(例如,cvu 1000或门管理器450)能够就在可疑购物篮即将通过出口离开之前将出口配置从监视模式切换为“如无许可则锁定”模式。能够向监视区域附近的所有收发器多播“如无许可则锁定”命令,并且如果可疑购物推车没有离开许可,则其智能轮215将被锁定以防止盗窃。在车轮被锁定之后,系统400可以将出口配置切换回监视模式。购物篮的跟踪路径
137.图5示意性地示出了被定位以便确定购物篮205的位置的计算机视觉单元1000的摄像头410的侧视视角(左侧)和俯视视角(右侧)。在这个示例中,购物篮205是购物推车30的一部分,但这仅用于说明,并不限制跟踪能力。能够在坐标系,例如图5所示的笛卡尔x,y,z坐标系510中确定篮205的位置或路径(例如,位置随时间的变化)。在一些实施方式中,仅跟踪两个水平坐标(例如,x和y)(例如,水平运动),因为推车运动通常发生在水平面上(例如,在恒定的高度z处)。
138.篮205的位置能够表示为在图像坐标中测量的篮的中心。简而言之,一些实施方式从摄像头410的已知位置和光学视场(fov)投影到由所跟踪的篮的类别确定的高度h处的平面(例如,满的购物推车与空的购物推车的高度h不同,如果给定的装置包含多种类型,则不同尺寸/型号的购物推车的高度可能会有所不同;机动化推车的高度不同;手提篮的高度不
同)。
139.图5示出了成像环境的几何形状。摄像头410在地板上方的高度h0处(在某些情况下,摄像头被安装在设施的天花板上)。摄像头具有中心与垂直线成角度的垂直fov(vfov),和中心与y方向成角度的水平fov(hfov)。篮205的图像的中心像素能够由图像处理器420在角度和处测得。篮205的中心像素不必在摄像头图像的中心(即使摄像头410是可操纵的)。通过测量角度和,使用图5所示的几何形状,系统400(例如,cvu 1000)能够将角度测量转换为位置坐标(例如,x,y和(可选地)z)。
140.图5示出了具有一个摄像头410的示例场景。在其他实施方式中,能够使用多个摄像头410、410a(例如2、3、4、5、6或更多个)来对监视区域440成像。图6a、图6b和图6c示出了cvu的一些示例布置。如上所述,ctu通常能够与cvu互换使用以捕获监视区域的图像,并且在其他实现中,图中所示的一个、一些或全部cvu能够用ctu代替。
141.在图6a中,三个cvu 1000a、1000b和1000c被定位成对商店入口/出口处的监视区域440成像。在这个示例中,一条(可选的)vlf线被放置在商店的入口/出口。在其他装置中,附加地或可替换地,能够通过位于商店入口/出口或结账关卡附近的rf天线生成rf警告或锁定场设置,或能够在出口附近设置eas塔或其他反商店行窃(anti-shop-lifting)设备。cvu 1000a远离入口/出口并且朝向入口/出口定向,以获得进入或离开购物篮的图像。cvu 1000b和1000c位于入口/出口的任一侧并且向内定向,以获取尤其是朝着入口/出口移动的购物篮的图像。三个cvu 1000a、1000b和1000c提供了监视区域的重叠覆盖范围(例如,其摄像头的fov重叠,其中用虚线和点划线示意性地示出了fov)。在这种配置中,使用多个cvu能够降低单个cvu无法获得试图通过入口/出口离开的可疑购物篮的图像的可能性。而且,购物者推着购物推车可能会挡住特定的cvu观看购物篮。例如,一个离开的购物者可能会挡住cvu 1000a观看篮(因为购物者在篮和cvu之间),但是cvu 1000b和1000c能很好看到篮(因为篮位于购物者和这些cvu之间)。
142.如上所述,一些实施方式可以使用次要摄像头来对商店的其他区域进行成像。图6a示出了位于支付点附近的次要摄像头410a-1的示例,其fov指向cvu 1000a和1000c的fov(并且部分地与cvu 1000a和1000c的fov重叠)。图6a还示出了位于具有高价值物品的区域附近的次要摄像头410a-2的示例,其fov指向cvu 1000a和1000b的fov(并且部分地与cvu 1000a和1000b的fov重叠)。来自摄像头410a-1的图像可以由防盗系统400使用来跟踪购物篮离开支付点并且向出口移动的路径,并且来自摄像头410a-2的图像可以使用来跟踪购物篮离开高价值物品区域并且向出口移动的路径。由于篮来自支付点区域,因此系统400能够使用来自摄像头410a-1的信息作为顾客已经为购物篮中的商品付款的指示符。由于篮来自高价值物品区域,因此系统400能够使用来自摄像头410a-2的信息作为顾客购物篮中具有高价值商品的指示符。在这个示例中,因为摄像头410a-1和410a-2的fov至少部分地与其他cvu中的至少一些的fov重叠,所以系统400能够随着购物篮离开次要摄像头410a-1和410a-2中的一个的fov和进入cvu中的一个或多个的fov,维持购物篮跟踪的连续性。这种交接能够有利地提供对购物篮的跟踪的连续性,并且减少或消除随着购物篮从一个摄像头的fov移动到下一个时的错误识别。如将参考图6c进一步描述的,这种交接能够提高系统400的效率,因为路径跟踪典型地比装载状态确定强度低,并且cvu能够主要被用于装载状态确定而不是跟踪。
143.图6b示出了cvu 1000a、1000b、1000c的替代布置。在这个示例中,cvu 1000a的朝向类似于图6a所示。但是,cvu 1000b和1000c的朝向远离入口/出口,并且朝着商店的其他区域。例如,cvu 1000b朝向高价值物品(例如,酒,药品,保健品等)所在的区域,而cvu 1000c朝向支付点(例如,结账通道34)。在这个示例中,cvu 1000a、1000b和1000c的各个摄像头的fov不重叠。在这个配置中,cvu 1000a能够被用于识别接近入口/出口的购物篮是否已经装载。cvu 1000b能够被用来识别去过高价值区域的购物篮,而cvu 1000c能够被用来识别从支付点接近出口的购物篮(这可以指示已经为篮中的物品付款)。
144.cvu 1000a、1000b和1000c和次要摄像头410a能够彼此通信,并且能够共享信息,该信息可以帮助确定至少部分装载的购物篮是否正在推出盗窃情况中接近出口。当购物篮从cvu中的一个的fov移动到另一个cvu的fov或从次要摄像头到次要摄像头或cvu时,这种交换的信息能够帮助防盗系统在篮从一个fov移动到另一个fov时继续跟踪该篮。
145.在这个示例中,cvu 1000b能够在篮离开高价值物品区域时识别篮是否包含高价值物品,并且cvu 1000c能够确定该篮是否来自商店的支付点区域。在这种情况下,未为推车中的物品付款的可能性较小,并且系统400可以向篮发出离开许可。如果篮试图离开商店,并且cvu 1000c尚未将篮识别为来自(或通过)支付点,则购物者更有可能试图窃取高价值物品,并且系统400可能不会向篮发出离开许可,并且采取防盗动作(例如,锁定车轮)。
146.图6c示出了在商店出口附近的cvu 1000a和次要摄像头410a的另一示例布置。在这个示例中,对来自cvu 1000a的图像进行分析,以确定靠近商店出口的购物篮的装载状态。来自次要摄像头410a的图像被用于确定购物篮离开cvu 1000a的fov(示出为虚线)并且移动通过摄像头410a的fov(示出为双点划线)时的路径。因为fov至少部分地重叠,所以防盗系统400能够具有很大的把握,即由cvu 1000a所识别的购物篮与摄像头410a跟踪的篮相同。图6c所示类型的布置能够是有利的,因为cvu 1000a进行的确定推车的装载状态的图像处理,比对来自次要摄像头410a的图像进行处理以确定篮朝向出口的路径,在计算上更加复杂,处理器负担更重。因此,cvu 1000a主要被用于装载状态确定(例如,满载,部分装载或空),而次要摄像头图像被用于路径确定,这不属于从计算方面难以满足的任务。
147.注意,尽管在图6a和图6b中示出了三个cvu,在图6c中示出了一个cvu,但这只是为了说明,能够使用其他数量的cvu(例如2、4、5、6或更多个)。此外,在一些实施方式中,仅存在单个cvu(例如,具有图像处理器和rf通信节点),并且其他的所示cvu中的一个或多个能够用次要摄像头代替。能够将cvu放置在一个、一些或所有的商店出口处,或者附加地或可替换地,放置在其他商店位置(例如,在高价值物品区域中,支付点附近等)。ctu能够代替部分或全部cvu。可以设想cvu、ctu或次要摄像头的布置和方向的许多变化。同样,cvu(和摄像头)的这些配置作为示例示出,以说明能够通过防盗系统400的各种实施方式有益地解决的各种防盗情况和特定于商店的要求,而不旨在限制。
148.各种因素能够影响cvu、ctu或次要摄像头在零售商店的装置中的数量和布置的选择。这些因素能够包括摄像头、cvu和ctu的fov,商店的天花板高度(典型地安装cvu、ctu和摄像头的位置),购物篮在这些部件所成像的区域中移动的典型速度,支付点或高价值物品与商店出口之间的距离,对购物篮维持基本连续跟踪的需要,以及系统400将购物篮识别为盗窃风险并且采取防盗动作(例如,锁定购物推车车轮)所花费的时间尺度(例如,约100ms)。
三维(3d)成像
149.购物篮的3d图像可以提供更多信息供机器学习或计算机视觉分类器进行分析,并且可以使防盗系统能够更准确或更稳定地对购物篮的装载状态进行分类。3d图像可以包括二维(2d)图像加上在垂直于2d图像的平面的方向上的距离或深度信息。
150.空的购物篮具有平坦的底部,而至少部分装载的篮将具有在平坦的底部上方延伸的物品。因此,非空购物篮具有与空购物篮明显不同的3d拓扑图。这种拓扑图能够至少部分地被用于确定篮是非空的,但也可以提供有关购物篮中物品类型的信息(例如,婴儿尿布的拓扑图由于其大致为立方的包装与酒为瓶装的拓扑图而有所不同)。因此,在一些实施方式中,防盗系统400包括提供深度信息的传感器。如参考图4a所述,这样的传感器460可以包括深度摄像头,摄像头的立体对,超声传感器,飞行时间传感器,激光雷达(扫描或非扫描),毫米波雷达等。
151.例如,能够使用两个摄像头来形成购物篮的立体图像,并且能够使用立体成像技术来得出深度信息。由于摄像头、cvu等常常被安装在零售设施的天花板上,并且天花板在购物篮底部上方的高度在约3m至5m的范围内,因此估计这对立体摄像头可以被放置为相隔约20cm至50cm,以提供足够的立体分隔。一对立体摄像头能够被布置在cvu或ctu的壳体内,或者cvu或ctu的摄像头410能够与附近的次要摄像头410a配对以提供立体深度感测功能。
152.飞行时间(tof)传感器(有时称为飞行时间阵列或非扫描激光雷达)能够与成像摄像头一起使用,以提供购物篮的3d图像。tof传感器可以包括用于发射光脉冲的激光器和用于测量发射与从物体反射回来的光信号之间的时间的定时电路。测得的时间(和光速)提供了到物体的距离。合并tof传感器和成像摄像头的集成tof摄像头模块可从analog devices,inc.(诺伍德,ma)获得。analog devices还提供addi9036 ccd tof信号处理器和ad-96tof1-ebz 3d tof开发平台。
153.在一些实施方式中,在光学tof传感器之外附加地或可替换地,能够使用声超声传感器来提供距离/深度信息。例如,能够用成像摄像头视线瞄准高频(例如,大于100khz)的超声测距传感器。超声传感器能够具有相对狭窄的视场(为篮中的物体提供足够的分辨率)和足够高的脉冲重复率(由于购物篮移动而提供足够的时间分辨率)。与从非空购物篮中的商品的表面散射时相比,当从购物篮(典型地是金属或塑料网)的底部散射时,反射的超声波脉冲的高频结构是不同的。超声波信号能够被用于简单地检测购物篮中是否有物品,或(具有足够窄的fov)识别购物篮中物品的深度轮廓。
154.在一些实施方式中,雷达传感器能够被用于提供深度感测能力。一个雷达传感器的示例是可从smart radar system(京畿道,韩国)获得的retina 4d图像雷达,该雷达提供3d位置信息和速度。retina雷达能够生成4d点云,能够通过例如神经网络对点云进行分析以识别点云内的物体。
155.3d图像能够被用于训练机器学习或计算机视觉模型,并且附加的深度信息(与2d图像相比)能够帮助提供对购物篮的装载状态的更准确或更稳定的估计。此外,由于不同类型的商品将具有不同的深度特征,因此机器学习或计算机视觉模型能够学习区分不同类型的商品,并且可以被配置为将这种类型的信息纳入装载状态(例如,与装载有农产品的篮比,较高的装载状态用于装有酒瓶的篮)。识别购物推车中的儿童
156.如参考图2b所述,购物推车30可以包括儿童座椅1620,购物者能够在其中放置小孩。可以将小孩放在购物篮205本身中。窃贼可能会用小孩掩藏物品,分散注意力或掩饰其意图(例如,带小孩的父母不太可能被视为小偷)。因此,防盗系统400的一些实现可以被配置为确定购物推车中是否存在小孩(包括婴儿)。
157.能够分析由系统400(例如,从cvu,ctu或次要摄像头)获得的图像(2d或3d)以进行这个确定。放置在推车中的物品(在购物篮205或儿童座椅1620中)倾向于不相对于推车移动,而小孩确实倾向于相对于推车移动(例如,移动头部、手臂或腿,摇动身体等)。因此,推车中的物体是否为儿童的判别式是该物体是否相对于推车运动。能够分析图像的时间序列(2d或3d),以确定哪些对象(如果有)相对于推车本身的平移或旋转运动进行移动。例如,能够在时间序列的持续时间内比较物体相对于推车中的固定位置的位置(例如,相对于手柄1610,相对于篮的侧壁等)的位置,以区分物体是否相对与推车移动并且因此区分物体是否可能是儿童。在3d图像的情况下,深度信息能够为孩子提供判别式,因为孩子的深度特征(头部,手臂,躯干,腿)与典型的零售商店商品不同。购物篮的路径示例和潜在的盗窃
158.图7示意性地示出了在零售商店的入口/出口附近的购物篮所采取的路径的示例。所示的空购物篮没有阴影线,至少部分装载的篮显示有阴影线。在这个说明性示例中,购物篮是购物推车30a-30e的一部分,但这只是为了说明,而不是限制。购物篮(在这个示例中为购物推车)所采取的路径上的符号指示有推出盗窃的可能性,如将在下面进一步描述的。购物推车30a-30e所采用的路径能够如上所述的由cvu确定。例如,图6a-6c中所示的cvu的配置可以适合于对商店入口/出口以及高价值物品所在的区域和支付点所在的区域进行成像。
159.在图7中的推车30a-30e的路径上用符号注释,这些符号以图形方式显示属性和盗窃可能性。圆被用于进入的购物推车,空心圆指示空的购物推车,实心圆指示至少部分装载的购物推车。正方形用于指示离开的购物推车,空心正方形指示空的购物推车,实心正方形指示至少部分装载的购物推车。以实心四角星形示出存在高盗窃可能性的离开推车。
160.推车30a正在进入商店,并且确定要未装载。推车30a的路径用空心圆标注。推车30b也进入商店,并且cvu确定推车至少部分地被装载。这可能是由于儿童或手提包位于打开的儿童座椅中,或者由于存在存储在商店外部且购物者已将其放入购物篮中的物品。推车30d和30e正在离开商店。推车30e未装载并且没有被盗的可能性。
161.推车30d被装载,但是,因为它正从支付点方向接近出口,所以推车30d可能不存在被盗的可能性。为了进一步确认购物推车30d的支付状态,防盗系统400可以查询支付点(例如,收银机34或移动支付点35)以确定购物推车30d是否实际通过了运转的结账通道(例如,在通道上花费足够的时间来指示付款),或使用移动付款应用程序为推车篮中的物品付款。如果是这样,则系统400能够向推车30d发出离开许可。在使用结帐关卡(cb)的实施方式中,命令可以是解锁cb以允许离开。如果没有进一步的支付标记,则推车30d可能试图通过来自支付点的方向来模拟支付,或者快速通过支付点而没有花费足够的时间来指示支付已经发生,并且系统400可以向推车30d的收发器发出防盗命令。假定推车30d来自支付点的方向,则这个命令可以是警告命令(而不是锁定命令)。在使用结帐屏障(cb)的实现中,命令可以是保持cb锁定以防止推车30d离开。防盗系统40可以向商店人员发出命令以来到达相关联
的cb或出口来确定购物者是否实际已经为商品付款。
162.确定推车30c已经被装载并且正在从高价值物品所在的方向而不是支付点的方向接近出口。推车30c代表增加了被盗的可能性,并且被标有实心星星。防盗系统400能够查询支付点以确定推车30c先前是否经过支付点。如果是这样,则推车30c可能随后进入了高价值物品区域,并且将高价值物品放置在购物推车篮中而未付款。系统400可以拒绝向推车30c发出离开许可(或拒绝打开结账关卡),而是向购物推车30d发出锁定命令或向商店人员发出警报,以试图防止商品可能从商店被盗。
163.前述示例旨在说明而非限制能够使用cvu的图像处理能力由防盗系统400的实施方式来执行的逻辑。
164.尽管图7中所示的符号通常旨在进行描述,但是在一些实施方式中,cvu所获取的图像(例如,经常是视频)能够用类似于图7所示的标记覆盖(或注释)。例如,能够(例如,通过图像处理器420或远程处理节点)处理由cvu获取的视频,以显示推车路径。能够使用不同的颜色或符号来区分进入或离开的推车或具有不同盗窃可能性的推车的路径(例如,类似于图7中所示的符号)。经授权的商店人员能够访问带注释的图像,以观看发生推出情况的出口事件。用于防盗系统的机器学习技术示例
165.在一些实施方式中,cvu 1000(例如,图像处理器420)实现一个或多个物体识别器,其能够抓取所接收的数据(例如,图像的采集)并且识别或绘制点,给图像加标签,为物体附加语义信息(例如,购物推车,机动化的机动性推车,购物篮,空的,已装载的等)等。
166.物体识别器可以识别购物篮,购物推车,机动化购物推车或机动性推车,购物篮内的物品和商品(其能够包括在购物推车底部的下篮),推车的儿童座位中的物体的存在(例如,儿童或手提包),与正在推动或操作推车的用户相关联的标记(例如,特定样式的衬衫(例如,格子或条纹的),特定的裤子,裙子,夹克或帽子),用户特征(例如,面部特征,身体特征)等。对象识别器可以例如通过识别该人穿着商店制服、识别标签等识别商店人员。在一些实现中,出于隐私目的,对象识别器不识别面部或身体特征。
167.物体识别器可以识别商店中的入口/出口,结账通道或其他物体。一个或多个对象识别器可以专门识别具有某些特征的物体。例如,一个物体识别器可以被用于识别购物篮,而另一物体识别器可以被用于识别购物篮中的物品或商品,而另一物体识别器可以被用于识别与购物篮相关联的用户的特征等。
168.通过分析多个顺序图像(例如,来自视频的帧),物体识别器能够确定购物篮进入或离开商店时的篮的路径。在一些情况下,物体识别器可以对购物推车行为,例如进入或退出进行分类,而不是确定路径(或除了确定路径之外)。
169.物体识别可以使用多种计算机视觉技术来执行。一种或多种计算机视觉算法可以被用来执行这些任务。计算机视觉算法的非限制性示例包括:尺度不变特征变换(sift),加速鲁棒特性(surf),定向fast和旋转brief(orb),二进制鲁棒性不变可扩展关键点(brisk),快速视网膜关键点(freak),viola-jones算法,特征脸方法,lucas-kanade算法,horn-schunk算法,均值漂移算法,视觉的同时定位和地图创建(vslam)技术,序贯贝叶斯估计器(例如,卡尔曼滤波器,扩展卡尔曼滤波器等),光束平差法,自适应阈值法(和其他阈值技术),迭代最近点(icp),半全局匹配(sgm),半全局块匹配(sgbm),特征点直方图,各种机
器学习算法(例如支持向量机,关联向量机,k-最近邻聚类算法,朴素贝叶斯(naive bayes),神经网络(包括卷积或深度神经网络),或其他有监督/无监督模型等),等等。
170.物体识别能够附加地或可替换地通过各种机器学习算法来执行。训练后,机器学习算法能够由cvu 1000(例如,图像处理器420)存储。机器学习算法的一些示例能够包括有监督或无监督的机器学习算法,包括回归算法(例如,普通最小二乘回归法,逻辑回归(例如,logit模型)),基于实例的算法(例如,学习向量量化),决策树算法(例如,分类和回归树),贝叶斯算法(例如,朴素贝叶斯),聚类算法(例如,k均值聚类),关联规则学习算法(例如,先验算法),人工神经网络算法(例如,感知机),深度学习算法(例如,深度波尔兹曼机或深度神经网络),降维算法(例如,主成分分析),集成算法(例如,堆栈泛化),和/或其他机器学习算法。
171.机器学习模型能够包括神经网络,例如卷积神经网络、递归或循环神经网络,堆叠式自动编码器等。神经网络能够包括具有许多层(例如,大于3层、5层、10层或更多层)的深度神经网络。神经网络能够包括卷积层,池化层,完全连接的层,分类器层(例如,soft-max),激活函数(例如,修正线性单元),损耗层等。能够使用有监督或无监督的学习技术来学习神经网络中的权重。
172.以针对单独的应用或安装定制单独的机器学习模型。可例如,cvu 1000能够存储用于分析购物篮图像的默认模型。默认模型可以被用作生成特定于cvu安装处的条件的附加模型的起点。例如,当被安装在具有特定出口的特定商店中时,物体识别器能够学习cvu正在监视的出口的特定特征,并且学习该特定零售商店使用的购物篮、购物推车等的特定特征。例如,cvu能够使用应用于安装后获取的图像的有监督或无监督的训练技术来更新计算机视觉、机器学习或物体识别算法。因此,默认的计算机视觉、机器学习或物体识别器能够特定于其分析图像的特定环境。计算机视觉、机器学习或物体识别器能够随着时间的推移继续学习,并且能够在其物体识别任务上变得更加高效和准确。
173.在一些实现中,机器学习技术能够使用tensorflow
tm
或tensorflow lite(可从www.tensorflow.org获得)或使用torch
tm
可从torch.ch获得,或python实现,pytorch
tm
,可从pytorch.org获得),每一个都提供了一个开源软件库,用于对机器学习应用进行编程,例如使用神经网络进行图像识别。神经网络能够包括卷积神经网络(cnn),并且可以是深度网络(例如,包括3层或更多层的人工神经网络,其中对每一层进行训练以提取图像的一个或多个特征)。在一些实现中,卷积层之后能够是一个或多个完全连接的(层),支持向量机(svm),softmax层,或其他类型的分类层。例如,神经网络的输出可以是分类,例如购物篮的装载状态。如本文所述,装载状态可以指示购物篮已被装载或未装载,或者是空的,部分装载或满载的,分数,数值范围等。作为另一个示例,神经网络的输出可以是分类:购物篮正在进入商店(例如,这不表示潜在的盗窃事件)或离开商店(例如,这表示潜在的盗窃事件)。
174.机器学习技术能够经由有监督或无监督的学习方法来训练。例如,能够(例如,从cvu、ctu或商店监视系统)获得进入或离开商店出口的购物篮的训练图像,并且以装载状态,例如空,部分装载商品或满载商品进行分类。在一些情况下,训练图像被分割成包括购物篮的前部而不包括儿童座椅1620的区域(见图2b)。这有利地可以减少训练或分类问题,因为机器学习技术不需要处理可能包括在儿童座椅1620中的儿童(或手提包或其他非商品物品)的图像。
175.语义信息,例如购物篮的类型(例如,人力推动的推车,机动化推车,手提篮),购物篮进入或离开商店,篮中是否存在高价值物品等也能够分类在训练图像中。在一些实现中,训练图像被手动注释/分类。这个训练数据能够由机器学习技术(例如,具有完全连接的层分类器的卷积神经网络)来学习如何分析和分类新图像。训练可以由参考图4b描述的云平台470来执行。
176.在防盗系统400的使用期间,能够继续获得购物篮的图像并且对其进行分类/注释,并且这些图像能够被用于进一步训练或更新机器学习技术。能够检查或分析购物推车路径的图像(例如,参见图7),以改进装载或未装载的推车的不明确的分类或识别。使用例如rf技术获得的推车位置或路径数据,能够与通过图像处理技术确定的位置或路径数据进行比较,以改进系统的位置或路径确定性(例如,使用机器学习训练方法)。
177.因此,机器学习技术能够针对安装了防盗系统400的实际零售商店环境随着时间推移特殊化,这在识别潜在的盗窃情况时能够有利地获得提高的准确性,效率或改进的性能。用于防盗系统的处理流水线和工作流示例
178.图8示出了用于训练机器学习(ml)模型的处理流水线的示例。该流水线能够由例如参考图1、图4a和图4b描述的防盗系统400的云平台470执行。流水线接收从多个cvu、ctu、次要摄像头、商店监视系统等收集的图像数据。图像数据能够来自单个零售设施或多个零售设施。流水线能够经由ml培训应用程序(app)800访问或控制,该应用程序可以是到云平台470的基于web的界面。例如,系统管理员可以使用ml训练app来开始训练ml模型,查找有关cvu状态的信息(例如,从cvu信息的数据库810),将更新的ml模型传达给特定的cvu或cvu。因为接收到的图像数据可以来自一个或多个特定商店,所以可以为该(或多个)特定商店定制训练后的ml模型。例如,一些商店可以使用带有塑料网(而不是金属丝网)的购物篮,并且ml模型能够就来自那些商店的图像进行训练,以不仅更好地识别具有塑料网结构的篮,而且可以更好地识别被放置在这种篮中的商店商品。
179.在图8所示的流水线的点1,图像数据集经由wan网关465从一个或多个cvu上传到云平台470。在点2,通知平台接收到新的图像数据集,在点3,准备图像数据集并且将其提交以进行数据标记(可以由人工分类器执行)。例如,能够在图像中识别购物篮,并且能够参考装载状态对购物篮进行分类。在点4,标记的成像数据集可用于训练ml模型。培训能够用于生成新的ml模型或更新现有的ml模型。
180.在流水线的点5,mlapp 800能够被用于选择带有标记数据的cvu进行训练或向云平台470提供其他控制指令。在点6,ml训练的实例可以由云平台470中的计算引擎来启动和执行。计算引擎能够训练新的ml模型或更新的ml模型,并且在点7,能够保存训练后的模型。在点8,能够通知cvu有新的或更新的ml模型可用,并且在流水线的点9,训练的模型能够通过cvu下载。
181.图9示意性地示出了用于分析从防盗系统获得的图像的处理流水线的示例。流水线能够由参考图4b描述的云平台470来执行。流水线接收从多个cvu、ctu、次要摄像头、商店监视系统等收集的图像数据。图像数据能够来自单个零售设施或多个零售设施。如上所述,图像数据一般地包括零售商店中可能的推出盗窃事件的视频。在流水线的点1a和点1b,来自cvu、ctu、次要摄像头或其他商店监视系统的图像数据例如经由wan网关465周期性地被
上传到云平台470,并且被存储在云存储中。在点1c,由cvu确定的装载状态检测事件能够附加地或可替换地上传到云平台470。装载状态检测事件能够包括事件的时间戳和事件中涉及的购物篮的确定的装载状态(例如,空,部分装载,满载等)。图像数据能够包括注释,例如事件涉及的购物篮或推车周围、推车中的商品周围、使用购物篮的顾客周围的边界框等。在点2,可以向云平台470通知新的上传。
182.在流水线的点3a和点3b处,云平台470能够分析图像数据以确定例如图像元数据并且将元数据存储在云数据库810(例如,结构化查询语言(sql)数据库)中。元数据能够包括从cvu检测事件确定的推断元数据。推论元数据能够包括,例如,购物篮在图像帧中所处的位置,事件的时间,执行装载状态确定需要多少时间,与ml模型的可以从图像数据正确推断装载状态的置信度相关的置信度值,图像分析中使用的ml模型权重和参数等。元数据还能够包括图像元数据,该图像元数据将从ctu、次要摄像头或商店监视视频(可能与装载状态确定不相关)获得的推出盗窃事件的图像数据与从cvu获得的事件的图像数据(这将与装载状态确定相关联)相关联。图像元数据可以包括有关来自ctu、次要摄像头或商店监视视频的图像数据与来自cvu的图像数据之间的相关性的信息。
183.图10示意性地示出了用于实时事件检测或来自防盗系统的直播流的处理流水线的示例。处理流水线能够被用于提供参考图4b描述的实时事件检测或直播流476。处理流水线能够使用由参考图8描述的mlapp 800来管理。由于图像数据的实时流传输可能会利用wan网关465的大量带宽,因此直播流传输功能只在需要时才激活,例如,由系统管理员或经授权的现场服务人员或零售商店人员来执行,以进行防盗系统400的诊断、测试、安装、或维护。
184.在流水线的点1,启用直播检测,并且在点2,启动直播流服务器。在点3,来自cvu、ctu、次要摄像头或商店监视系统的图像数据经由wan网关465流传输到云平台470。mlapp 800能够包括可以显示流图像数据的流播放器840。在各种实施方式中,wan网关465能够实现一个或多个流协议,例如,实时流协议(rtsp),http直播流(hls)或实时消息传输协议(rtmp)。
185.图11示意性地示出了用于来自防盗系统400的图像数据的商业智能(bi)分析的流水线的示例。在流水线的点1,etl(提取,转换,加载)过程能够被用来访问数据库810,并且对由云平台470存储的图像数据和元数据运行所需的bi查询。在流水线的点2,图像数据可以从云平台下载到流查看器840,流查看器840可以是用于与云平台470交互的mlapp 800的部件。如上所述,云平台470能够存储在零售商店的可能的推出盗窃事件的图像数据(例如,视频)。图像数据能够包括从ctu、次要摄像头或商店监视视频(可能与装载状态确定不相关)获得的推出盗窃事件的视频852以及从cvu获得的推出盗窃事件的视频854(这将与装载状态确定相关联,例如购物篮是否是空的、部分装载的或满的)。经授权的商店人员或系统管理员能够观看推出盗窃视频,对图像数据和元数据运行分析等。例如,如图11的示例中所示,监视视频852示出了推出盗窃正在发生,并且该事件的相关联的cvu视频将购物篮标识为满。这个示例表示由防盗系统成功完成的推出盗窃检测(由图11中的复选标记表示)。bi查询能够包括有关系统生成的假阳性(例如,错误地标识为盗窃的无辜事件)或假阴性(例如,错误地标识为无辜的推出盗窃)的信息,有关频率、发生时间的统计信息,或推出盗窃的估计损失金额等。
186.参照图8至图11所描述的示例流水线旨在是说明性的而不是排他性的。云平台470可以被配置为在各种实施方式中执行这些流水线中的一个、一些或全部的功能。
187.图12示意性地示出了cvu 1000中的处理流水线的示例。处理流水线能够至少部分地由cvu的处理器420执行。上面已经描述了cvu 1000的许多功能,在此不再赘述。在这个示例流水线中,cvu被配置为提供购物推车30的装载状态,其包括用于存储商品的购物篮205。在这个示例中,出于说明性目的,装载状态为空或满,但是如本文所述,能够提供更一般的装载状态。处理器420被编程为执行分类引擎1202和检测引擎1204。
188.在流水线的点1a处,将图像数据(例如,商店的监视区域的视频)发送到分类引擎1202,分类引擎1202执行ml推车分类模型。能够将分类模型训练来识别推车在图像中的存在(或不存在)和推车在图像中的位置。推车分类模型可以分割图像以识别推车的购物篮部分。由于图像典型地包括推车以外的东西,因此分类模型还能够就图像中是否包含人(例如,推推车的购物者或商店工作人员或推车中的小孩)或其他有生命的物体(例如,服务性动物)来将图像分类。在流水线的点2,能够将分类的图像(以及由分类引擎所确定的分类元数据)存储在推车图像数据集中。可以用在图像中分类的物体(例如,推车,篮,购物者等)周围的边界框注释分类的图像。在一些情况下,不存储不包含购物推车的图像,这有利于减少内存使用。
189.在流水线的点1b处,图像数据被传送到检测引擎1204,检测引擎1204执行ml检测模型以确定推车(或篮)的装载状态。ml分类模型能够与ml检测模型不同,ml检测模型可以有利地允许对这些ml模型中的每一个进行针对其各自任务进行训练。在其他实现中,ml分类模型和ml检测模型是同一ml模型的一部分,由于分类和检测任务之间存在重叠,因此可以有利地允许以整合方式训练ml模型。在一些实现中,分类引擎1202在执行检测引擎1204之前执行。如果分类引擎1202确定图像中没有推车,则可以不执行检测引擎1204,这有利地节省了功率和处理周期并且提高了效率。在其他实施方式中,分类引擎1202充当预处理器,并且仅在图像中检测到推车时才执行检测引擎1204。这也有利地节省了功率和处理周期并且提高了效率。
190.在流水线的点3处,将装载状态(例如,在此示例中为“full(满)”或“empty(空)”)传达到门管理器450(例如,参照图1a、图1b和图4a进行描述),以对推车采取适当的防盗动作。例如,如果检测引擎确定推车满,则启用锁定状态能够被传达到门管理器450,门管理器450将锁定命令传达到推车的智能锁定轮215。如果检测引擎确定推车为空,则禁用锁定状态能够被传达给门管理器450,门管理器450可以不采取任何动作来致动车轮锁或者可以将解锁命令传达给推车的智能锁定轮215。
191.在流水线的点4处,能够将检测元数据(例如,装载状态)传达到云平台470。
192.图12中示意性示出的处理流水线能够被用于cvu 1000的各种实现中,如在图8至图11中示意性示出的流水线中所描述的,其能够与云平台470互通。正如下面说明的,图12中示出的流水线可以进行扩展,以额外考虑购物推车中检测到的物品的分类。使用车载摄像头模块进行图像捕获
193.图13示出了一种可以由摄像头模块217实现,以捕获、预处理和上传推车内容物的图像的方法。例如,在固件的控制下,该方法可以由摄像头模块的控制处理器217d(图2e)控制。在一些实施例中,摄像头模块可以与推车的车轮组件进行无线通信,并且使用从车轮组
件获得的信息来实现该方法。这些信息可以包括,例如,车轮旋转数据,推车位置数据等。该方法可以可替换地在不与车轮组件通信的情况下实现。
194.如方框1310所示,摄像头模块217可以响应于进入商店的购物推车启用它的摄像头/成像器217b,然后可以捕获初始图像。此时推车中的任何物品通常都是非商品物品,例如钱包、可重复使用的购物袋、背包或儿童。在方框1320中,摄像头模块等待一个代表可能向推车篮中添加商品的触发事件。如前所述,此触发事件的示例包括:(1)检测具有与物品添加事件的特征相对应的振动曲线的冲击/振动事件,(2)在商品区域中开始推车运动,(3)如果推车包括秤,并且篮重量的变化超过阈值,和(4)如果推车包括运动检测器,则检测篮内部的运动。
195.响应于触发事件,摄像头模块217捕获篮内容物的图像(方框1330),并且将此图像与最近捕获的图像进行比较(方框1340)。基于这种比较或差异运算,该方法确定是否有可能将新物品添加到篮中(方框1350)。如果检测到新物品,图像——可选地被标记以示出新添加物品的区域——优选地与捕获事件的事件元数据一起,被上传至cvu或其他节点以进行进一步分析。(如果没有检测到新的物品,摄像头模块可以丢弃图像。)为了减少无线带宽消耗,可以可替换地上传图像的简化表示,例如图像的压缩版本。例如,事件元数据可以包括下列项中的一项或多项:(1)推车位置(例如,商店部门),(2)触发图像采集的冲击/振动事件或其他触发事件的分类,(3)如果购物推车包含秤,重量测量或相对于前一个重量测量的重量差异,(4)车轮旋转数据。由于接收实体知道发射摄像头模块唯一的射频id(也可以作为推车id),因此接收实体可以将图像和元数据与特定的推车关联存储。
196.然后过程可以等待下一个触发事件。图13所示的过程可能一直持续直到例如购物推车经过一个运转的结账区或离开商店。在摄像头模块217包含多个摄像头的实施例中,当触发事件发生时,每个摄像头可以被用于捕获相应的图像,并且一个图像集可以与方框1340中的另一个图像集进行比较。推车内容物的分类
197.图14示出了cvu或其他处理节点可以用来分析由推车的摄像头模块217捕获的图像(或者如果摄像头模块有多个摄像头,则有两个或多个图像的集)的方法。如上所述,这个图像可以是被标记(例如,具有边界框)以识别代表新检测到的物品的像素或像素区域的经过预处理的图像。如图14所示,特征提取模块首先对图像进行处理,提取对物品分类或识别有用的特征。例如,此特性的示例包括下列项中的一项或多项:物品颜色、物品形状、物品大小、经由ocr提取的文本和物品纹理。对于至少一些特征,特征提取只能应用于与新添加物品对应的标记图像区域。
198.然后将提取的特征传递给一个或多个经过训练的机器学习模型或分类器1420,优选地与关联的事件元数据一起传递。经过训练的机器学习模型1420使用此数据确定新添加物品的一个或多个物品分类。这些分类可以对应于上述用于模型训练的标签或标记(例如,“电子物品”、“商品物品”、“非商品物品”、“高盗窃风险物品”等)。在某些情况下,分类可以包括物品的唯一产品标识符。
199.事件元数据可以以各种方式用于通知物品分类方法。例如,如果元数据指定了在推车中添加该物品的商店部门,则ml模型1420可以抑制与该部门不对应的分类;例如,当物品被添加时,如果推车在服装部门,则“电子产品”的分类可能会受到抑制。
200.虽然物品分类任务在图14中示出为由一个或多个经过训练的机器学习模型执行,但是分类可以附加地或可替换地不使用机器学习模型执行。例如,可以使用基于规则的系统或决策树来确定物品分类。在一些实现中,可以使用商店位置为新添加的物品指定默认分类。例如,规则可以指定,如果在高盗窃风险区域(例如,酒类部门)中的某个物品被添加到购物推车中,则该物品应该默认被分类为高盗窃风险物品,或应该被分类为高盗窃风险物品,除非可以从其图像中识别该物品为非高盗窃风险物品。
201.车没有摄像头模块,或者摄像头模块的视野被遮挡的场合也可以使用这个方法。例如,在推车缺少摄像头的实现实施方式中,可以经由车轮组件中的振动传感器(或者如果推车包括秤,通过检测篮重量的变化)检测推车中可能添加了物品。针对这个事件,在车轮组件或其他地方的处理器能够确定在添加物品时推车是否(或曾经)处于高盗窃风险区域。如果在高盗窃风险区域中添加了物品,则能够更新推车的过程记录,以反映推车包含高盗窃风险物品的可能性。
202.对新添加的物品进行分类的任务还可以考虑到推车中已经检测到的其他物品的分类。例如,经常与一起购买的物品或物品类型(例如,打印机和墨盒)的信息可以被用来增加某些分类的概率。
203.在一些实施例中,还可以分析cvu和/或ctu捕获的图像,以便对推车中的物品进行分类。该方法可能类似于图14所示的方法,但可以对在推车的单个图像中示出的多个物品进行分类。此外,由于这些图像是从更远的距离拍摄的,因此可以使用更详细的分类(例如,商品对非商品)。进一步,在某些情况下,由推车上安装的或非推车上安装的摄像头产生的分类可能是汇总(多物品)的推车内容物,而不是单个物品;例如,可以将“商品”、“服装”或“饮料”的汇总分类指定给汇总的推车内容物。
204.如果推车最终在没有任何支付事件指示的情况下接近商店出口,则在购物过程中收集的物品分类可以以各种方式用于确定是否执行防盗动作和/或选择一个或多个特定的防盗动作来执行(例如,车轮锁定、激活商店警报、激活出口屏障等)。作为一个简单的示例,如果添加到推车中的物品都被分类为非商品物品,则不会执行防盗操作。作为另一个示例,只有在推车中检测到至少一个“高盗窃风险”物品时,才可以执行防盗动作(或某种特定类型的防盗动作,如车轮锁)。
205.更复杂的方法可能涉及在整体盗窃风险方面对推车进行评分。例如,能够通过对任何检测到的高盗窃风险物品的物品价格进行求和,或者通过对检测到的高盗窃风险物品进行计数来生成分数。此外,如果在推车中检测到同一物品的大量单位(例如,十个或更多),尤其是如果该物品为通常不以此类数量购买的物品,则可自动采取防盗动作。评分生成算法还可以考虑推车在特定商店区域花费的时间;例如,如果推车在高盗窃风险的商品区域停留的时间相对较长,即使系统在高盗窃风险区域没有检测到任何物品添加到推车中,算法也可能提高分数以反映增加的盗窃风险。
206.在一些实施例中,可以在购物过程中为突出保留多个分数。例如,一个分数可以代表推车包含尚未支付(本文所指的“未付款”商品)的商品的概率,另一个分数可以代表推车包含高盗窃风险物品的概率。在一个过程中,评分可以随着事件的发生而实时更新。例如,如果推车访问了一个运转的收银台,它包含未支付商品的概率可能会降低到一个较低的值;但是,如果推车在不离开商店的情况下返回到商品区域,概率可能会增加。
207.也可以保持一个单独的分数代表推车包含一个或多个非商品物品的可能性,如钱包、背包或可重复使用的购物袋。确定可能只包含非商品物品的推车可能被视为比真正空的推车(例如,由于检测到的物品的非商品分类可能是错误的)具有略高的盗窃风险。比较成像的推车内容物与交易记录
208.在系统构建描述推车篮中检测到的成像物品的数据记录(例如,检测到的物品数量、这些物品的产品类别、产品可识别的产品id等)的实施例中,系统能够将这个记录与相关联的支付/结账交易进行比较,以评估顾客是否为所有物品支付了费用。如果没有找到相应的付款交易,或者如果检测到有重大差异(例如,在推车中检测到一个或多个高价物品,但不包括在部分匹配的交易记录中),则可以启动适当的防盗动作。
209.图17示出了此方法的一个实施例。这个方法可以通过ccu、cvu、ctu和/或系统的其他处理节点来实现,因为购物推车接近商店出口。在方框1710中,该方法接收通知,即包含系统分类物品的推车正接近商店出口。在方框1720和1730中,系统获取推车的路径历史,比较其结账点位置以识别推车经过的支付点,并且查找该支付点最近处理的支付交易。在一些情况下,支付交易可能被匿名化和/或概括以保护顾客隐私。在方框1740中,该方法确定这些支付交易中的任何一个是否“匹配”推车内容物的记录。为了确定是否找到匹配,可以忽略细微的差异。如果未找到匹配的(表明顾客很可能没有为推车中的物品付款),则可能会阻止推车离开商店(方框1750)。如果找到匹配,可以允许推车离开商店。可以附加地或可替换地执行各种其他类型的防盗动作。例如,如果发现一笔交易记录与推车内容物记录几乎匹配,但推车中成像的一个或多个高价(或高盗窃风险)物品从交易记录中缺失,系统可以提示店员检查顾客的推车和收据中的高价物品。
210.图18示出了可以被用于实现图17的方法的一组系统部件。示出的门管理器450可以参照图1a如上运行。两个说明性的支付处理系统1810a和1810b将其各自的交易记录通信到一个支付交易匿名系统或节点1820。例如,一个支付处理系统可以处理自助结账交易,而另一个系统可以处理基于记录器/出纳员的交易。另一个支付处理系统可能处理通过客户智能手机支付的款项。数据库1830存储顾客可以使用的支付点的店内坐标。除了通过移除任何个人识别信息(包括零售店忠诚度编号等)对交易记录进行匿名化外,匿名化系统优选地(1)将每个交易记录与所使用的支付点的店内坐标相关联,以及(2)生成便于匹配过程的支付交易元数据。这使得ccu(或ctu或cvu)能够识别出在商店结账区域中的推车所经的路径相匹配的最近的交易记录,并且执行如上描述的比较。在图18的所示示例中,ctu或cvu指示门管理器执行任何防盗动作。
211.图19示出了可以在图17的方法中产生和使用的数据记录的类型。图19中的顶部方框示出了由支付交易匿名系统1820为给定交易生成的匿名和增强交易记录的示例。这个匿名交易记录包括匿名交易id、交易时间戳、支付点id和关联的店内坐标、支付点停留时间指示、付款人风险预测(下文描述)、其他支付事件元数据、付款商品的估计实物量、付款的高盗窃风险物品列表以及付款的高度光学可区分物品列表。付款人风险预测可以是例如基于顾客使用的付款工具和/或关于顾客的其他信息(例如,他们是否使用了忠诚度编号)的风险评分。以上只是匿名交易记录中可能包含的信息类型的示例。进一步,在一些实施例中,可以使用实际交易记录而不是匿名记录进行比较。
212.图19的下半部分示出了推车监控系统(例如,通过cvu或ctu)对给定购物推车过程
所收集的数据。在这个示例中,数据包括推车路径id、推车内容物分类汇总(如左下方方框中示例所示)、推车的射频id和推车的路径历史(如右下方方框中示例所示)。在这个示例中,推车在自助付费站#4花了148秒。因此,这个推车的内容物分类汇总可以与这个自付站对应的近期匿名交易记录进行比较。可以使用特定商品类别的置信度分数来确定在确定是否存在匹配时赋予每个此类商品类别的权重。应急出口使用情况
213.在一些实现中,可以安装cvu或ctu来捕获商店紧急出口的图像,包括通往紧急出口的路径。这些图像可以被用于检测通过紧急出口的推出盗窃企图。cvu或ctu可以被安装在应急出口上方的墙壁上或吊挂在天花板上。这个ctu或cvu所捕获的图像可以被用于如上所述的分类推车内容物,也可以被用于使用上述关联方法将成像的推车或推车跟踪与推车id相关联。
214.也可以分析这个cvu或ctu捕获的图像,以检测包含商品(或某一特定分类的商品)的推车经过或开始经过紧急出口的事件。当检测到这样的事件时,相关联的门管理器可以锁定推车的车轮和/或执行另一个防盗动作。如果装有商品的推车只在紧急情况出口附近停放或移动,典型地不会采取防盗动作。进一步的成像特征
215.成像子系统(见上文讨论)的性能可以包括以下特征中的一个或多个。例如,这能够提高系统识别、映射和/或分类推车篮内容物的速度、性能和/或准确性。对参考几何形状的图像校正
216.假定任一给定摄像头的焦平面以已知的xyz位置(坐标系是任意的,只要它是一致的:本文中假设正x是一个对购物推车跟踪有意义的一致的方向,例如与结账通道的对齐,y是在水平面且正交于x,z是局部垂直)为中心,假定摄像头的视轴与xyz坐标系的夹角为已知角度theta和phi,并且假定购物推车篮的地板接近水平(《《5度差),我们可以在像素xy坐标空间中获取与包括在购物推车篮轮廓内的所有像素相应的原始像素区域,并且将那些像素转换为像素在常半径球体上的投影。在一些实现中,一个好的球体半径值是在摄像头的视轴与推车篮框轮廓的中心相交时从推车篮轮廓的中心到摄像头焦平面的距离。
217.如果由于某种原因焦平面绕视轴旋转,使得像素x和像素y坐标都不是水平的,那么可能需要对像素区域进行额外的旋转。这种校正不仅可以考虑摄像头到推车篮的几何形状,而且还能够考虑摄像头镜头中的任何折射非理想性。
218.要使用的特定变换和重采样,除其他外,取决于计算能力的可用性、关注的区域像素的有效大小、已知特定摄像头方向的准确性等。在一些实现中,使用了在每个边沿的25%和75%处计算的双线性(梯形)变换。某些变种使用其他算法(例如,双三次,lanczos法)。
219.执行校正的一个好处是,不管摄像头到购物推车的几何形状如何,购物推车篮本身和更重要的篮的内容物都是近似相同的,这反过来会导致在ml(机器学习)推断应用(例如,rcnn)的特征空间中具有更高的保真度模型。帧到帧差分
220.图像帧之间的差分,其中每一帧被分割以提取与购物推车篮区域对应的像素,能够检测篮中物体的相对运动(例如,儿童),这能够被用于影响系统的更高层次的行为。例如,如果临时在购物推车中检测到儿童,则可能会调整用于推断可能的盗窃事件的直观推
测。在一些实施例中,连续帧中对应像素的颜色变化,而不改变边沿位置,可能表示能够在颜色空间变换中校正的照明变化(见下文)。多帧图像融合
221.由于购物推车相对于非推车上安装的摄像头一般是运动的,因此可以对静止图像序列应用多帧图像融合,然后进行超分辨率处理,以提高应用于图像处理流水线的下一阶段的图像质量。可以收集和使用额外的信息来提高这个方法的准确性;例如,关于推车在帧的集合上的增量运动的数据可以被用来改进超分辨率处理。颜色空间变换
222.在一些实现中,大多数摄像头产生的常规rgb或yuv颜色空间可能对于区分不同种类的购物推车篮内容物不是最佳的,特别是考虑到潜在的高度可变的照明条件(如当购物推车篮的一部分处于阳光直射下,而另一部分处于人造光或反射阳光下时)。因此,可以执行颜色空间变换。
223.一个示例颜色空间变换是在篮表面处推断随时间变化的局部照明体(例如,根据购物推车附近的背景像素的颜色,诸如前一帧中的地板像素),并且提取每个篮像素的二元或三元的颜色空间向量,其中颜色向量是在例如s-v颜色空间中的一个再辐射表面,其将在给定推断的光源的情况下给出观察像素。
224.作为前一段中更一般的方法的子集,基于某种平均照明体的调整可以捕获白天/夜晚、晴天/阴天等之间的大部分差异。
225.另一个示例颜色空间变换可以是对比度扩展,这可以例如在rgb颜色空间或在单个部件亮度下的1:1线性变换颜色空间中执行。两个说明性的这样的颜色空间是yuv或y'uv和hsl。扩展的颜色空间
226.系统(典型地采用cmos ccd作为底层焦平面阵列)中使用的摄像头的颜色空间可以被扩展到近红外线或近紫外线。这可以在一些实施例中通过将现役(off-the-shelf)的摄像头中的镜头替换为缺少此类摄像头中典型地包含的彩色滤光片的镜头来实现,从而使非可见波长通过。因为现役的摄像头中包含的成像仪和其他集成电路通典型地能够处理近红外线和近紫外线,因此无需对摄像头进行其他更改即可实现颜色空间扩展。颜色空间扩展也可以通过使用非标准bayer掩模或分束器以及特定波段的滤波器来实现。例如,这些非标准bayer掩模可以从on semiconductor(凤凰城,az)获得,用于他们的其他商品成像芯片。摄像头颜色空间的扩展能够提高本文中描述的图像分析任务的准确性。购物推车篮内容物的三维图像
227.一些实施例被配置为生成篮和/或篮内容物的三维图像。购物推车篮和/或其内容物的三维图像可以提高系统推断存不存在没有付款的商品的能力。在各种实施例中,三维图像将不是一个体积,而是一个表面,其中颜色(可能在如上所述的扩展的颜色空间中)是从摄像头的二维图像导出的,表面沿向量从摄像头到购物推车篮的相对高度由下面描述的方法之一或由另一种方法确定。
228.有多种实际的方法来产生这样的图像。在一些实施例中,传感器460能够被用于生成图像。在一些实施例中,使用下列项中的一个或多个来产生图像:
229.立体摄像头:假定已知的摄像头到购物推车篮的几何形状,如上所述,加上立体阵
列的两个焦平面之间的已知的分隔,能够计算出立体图像。
230.飞行时间阵列:与摄像头并行配置的激光二极管飞行时间阵列,诸如analog device(诺伍德,ma)的addi9036,能够提供三维表面地图。
231.毫米波(mmw)雷达:毫米波雷达,诸如smart radar system(京畿道,韩国)的rm68-01,能够提供一维的(距离对角度)表面地图。该表面地图能够通过移动购物推车的多帧图像进行组合,以生成所需的三维表面地图(这可以被认为是逆合成孔径雷达或isar的一个特例)。在某些变体中,二维毫米波雷达阵列,诸如smart radar system的“retina”雷达,能够在一次扫描中提供完整的三维表面地图。
232.超声波:单源线元素接收器超声波阵列能够提供与线性毫米波雷达诸如前面提到的rm68-01相同的购物推车篮内容物的线切割。
233.成像效果的组合:上面列出的各种图像处理技术的任何子集都可以组合。增强的训练集/模型空间训练设置特殊要素
234.在各种实施方式中,(图像的)训练集不仅可以用装有商品的普通推车和其他不包括商品的推车(例如,空推车)的图像增加,还可以用包含已知在朴素分类算法中容易与商品混淆的物体的推车的图像增加。此类物品的示例有:钱包、背包、空购物袋(例如,可重复使用的购物袋)。购物推车几何形状推断
235.购物推车是三维物体。在摄像头能够安装的典型几何约束下,摄像头到推车的距离通常小于10米。如果购物推车的三维几何形状已知,那么只提取购物推车篮的图像分割可以变得更有效。
236.在某些情况下,给定的设施(例如,商店)在给定的时间内只包括有限数量(例如,1种、2种、3种)的不同型号购物推车。购物推车几何模型库能够通过导入来自购物推车制造商的机械cad模型,然后随着时间的推移学习给定商店的群体来填充。在一些实现中,该库可以通过捕获篮的几何形状无法识别的推车的图像序列来随着时间增加。在某些实施例中,能够经由离线图像处理技术从图像流中确定和/或推断三维推车几何形状。针对不同光照条件的改进迁移学习
237.作为上文描述的颜色空间变换和/或上文描述的扩展的颜色空间的替代或与其结合,可以综合操作为训练集目的捕获的图像,以将训练集扩展为包括在不同光照条件下那些图像的样子。推车图像与射频地址的关联
238.在某些情况下,购物推车经由无线命令被告知停止,该命令寻址单个购物推车,诸如通过唯一的mac地址(有时是如上所述的多播地址)。购物推车至少部分地基于对画面的分析而被认定为应该停止的(例如,因为推车包含未付款商品的可能性很高)。因此,已知其在摄像头视场(例如,推车中心的像素坐标)中的位置的推车可以与已知的射频地址相关联。
239.上面描述了执行这种相关性的某些方法,诸如在“单播寻址”论述中。在一些实施例中,上述无线电定位系统可以包括rssi信息。虽然rssi通常明显不如所提到的某些其他技术准确,但在某些情况下,一系列短距离rssi节点(例如,分布在摄像头视野附近的)可以
提供足够的精度,以消除视场中哪辆推车有哪个射频地址。在一些实现中,作为相位斜率法的替代或补充,能够用脉冲响应法处理一系列相位差随频率变化的测量。在某些变体中,当购物推车在商店照明结构或其他结构的各种元素下或附近通过时,磁场特征的替代或补充是光学特征。对于与悬挂在天花板上向下看的摄像头物理上同位或接近的射频定位天线阵列,射频上的到达角(aoa)处理往往比基于相位的测距更能提供与基于图像的推车跟踪数据的相关性。
240.一种可以被用于识别由ctu和/或cvu捕获的图像中显示的购物推车的方法是将一系列图像中检测到的推车运动与推车的车轮组件检测到的推车速度相关联。(对于任何安装在推车上的摄像头模块217所拍摄的图像,不需要这种相关性,因为这些摄像头模块将它们所捕获的图像与相应的唯一推车标识符一起传输。)例如,cvu或一组相邻的cvu可以捕获一系列图像,这些图像显示在商店的一个区域内移动的多个推车,并且可以在推车在摄像头视野范围内的多个时间对图像序列进行分析,以估计每个此推车的位置和方向。注意,对于所有车轮(一般为4个)均为万向的购物推车,其方向一般与该推车的速度向量的方向不一致。对于这样的推车,与图像序列相关联的推车速度向量能够通过对每幅图像中推车上特定参考点的连续差分应用滤波器,诸如低通有限脉冲响应滤波器或卡尔曼滤波器来估计。在捕获这些图像的同时,每个这样的推车的车轮组件可以测量其各自车轮的旋转速率,并且在网络上(与推车/车轮的唯一id一起)报告。(因为车轮直径是已知的——典型地是5英寸——车轮的旋转速率可以转换成推车速度。)通过在来自图像的运动历史和轮式购物推车速度与时间之间执行最佳拟合,系统(例如,cvu或ccu)能够将特定图像中显示的特定推车映射到推车id。
241.在一个实施例中,推车的车轮组件通过在车轮组件的非旋转部分使用磁体激活开关诸如coto technology(北金斯顿,ri)的rr122-1b52-511隧道磁阻(tmr)开关)以检测随车轮旋转的磁体的通过情况,和通过记录旋转检测时间戳来监测车轮旋转。为了提高车轮旋转检测的分辨率,多个磁体(而不是单个磁体)可以等间距安装在车轮的内圆周周围,从而更频繁地检测旋转事件。如果在车轮内使用n个等间距的磁体,每πd/n英寸就能够检测到增量旋转。例如,对于直径为5英寸的车轮和n=3个磁体,速度能够每六英寸行程测量一次。作为使用磁体的替代,能够检测在随车轮旋转的一个或多个导电目标中感应的涡流,例如使用来自texas instruments(达拉斯,tx)的ldc0851差分电感式开关和在车轮组件的非旋转部分中使用合适的电感来检测。
242.如果给定的推车在前轮和后轮中都包括旋转传感器,则能够将感测到的这两个车轮的旋转速率进行比较,以确定推车是否可能转向。通过这个方法检测到的转向能够匹配到关联过程期间在图像序列中检测到的转向事件。
243.在某些情况下,车轮组件还可以跟踪和报告推车方向,在这种情况下,关联过程还可以将推车报告的推车方向与根据图像序列确定的推车方向进行比较。
244.如图15示出了上述方法。例如,这个方法可以由cvu、ccu、ctu、其他处理节点或节点组合来实现。在方框1510中,该方法分析一个或多个非推车上安装的摄像头(例如一个或多个cvu或ctu的摄像头)捕获的图像序列,并且为这些图像中检测到的推车分配光学轨迹id。此时这些推车的唯一id(例如,车轮组件id或rf id)尚不可知。此描述中的术语“轨迹”通常指检测到的推车路径以及与该路径相关联的关联数据,例如图像时间戳。在方框1520
中,该方法为每个光学轨迹生成pvt(位置,速度时间)和航向时间序列。在方框1530中,该方法从摄像头附近的推车中获取车轮旋转检测时间戳。推车车轮组件可以自动/定期地或者在收到此类数据的查询时在网络上报告这些时间戳。例如,摄像头附近的接入点(ap)可以发送命令,指示接入点的某一基于rssi的范围内的所有车轮组件报告其最后n秒的车轮旋转数据。
245.在方框1540中,该方法使用插值将每个旋转检测时间戳序列转换为与图像采集时间间隔对应的序列。在方框1550中,该方法在(a)插入的每个推车的位置、速度和方向变化概率与(b)每个推车的光学位置、速度和航向之间找到最佳拟合。在方框1560中,如果找到一个或多个具有足够置信度的匹配,则更新车到轨分配表。随着图像序列和车轮旋转数据的获取,该方法可以不断重复。如上所述,该方法也可以在不考虑推车方向的情况下实施。
246.图16示出了可以由图15的方法维护的示例数据表。标记为推车rf id#1、推车rf id#2和推车rf id#3的三个表包括三辆推车各自的车轮旋转时间戳数据。在这个示例中,每个这样的推车报告前轮和后轮两者的此数据,虽然这个方法可以只用一个车轮的数据来实施。每个表包含前轮和后轮的旋转时间戳。因为推车rf id#2已经报告了在同一时间段内前轮旋转比后轮旋转更多,所以推车大概已经转向(因此将更有可能与包含约与前轮旋转过量发生在同一时间的航向变化的轨道匹配)。标记为“购物推车图像轨迹”的三个表包括在图像序列中检测到的三个推车/路径(a、b和c)的相应数据集。例如,“推车图像轨迹a”表包括5个条目,每个条目包括特定推车轨迹的位置数据、航向数据和时间戳。图16中最下方的表格示出了图15中“最佳匹配”搜索的结果,百分比值代表匹配概率。在这个示例中,推车rf id#1最有可能匹配图像轨迹b,而推车rf id#2最有可能匹配图像轨迹a。推车rf id#2较低的匹配置信度或概率可以作为允许这个推车离开商店的依据,即使它可能包含未支付的商品。可用的数据不足以将推车rf id#3匹配到三个图像轨道中的任何一个,例如,由于推车rf id#3不在任何摄像头的视野范围内。
247.在购物推车30包括摄像头模块217的实施例中,可以用于识别成像的推车的另一种方法是将车载摄像头捕获的图像与ctu或cvu捕获的推车图像进行比较。例如,当推车在接近商店出口时被ctu或cvu成像时,该图像能够与同一附近的运转购物推车的摄像机模块217所捕获的最新图像进行比较。如果发现来自车载摄像头模块的匹配图像(表明购物推车内容物相似),则与这个匹配图像相关联的购物推车id或地址能够与来自ctu或cvu的图像相关联。比较来自不同摄像头的两幅图像的任务最好是根据涉及的已知几何图形(例如,摄像头位置和向量到推车篮,镜头转移函数到像素地址等)将图像变形到一个共同的参考平面。然后,基于神经网络的比较引擎可以基于例如从图像中提取的特征对两个变形图像进行比较。
248.在一些实施例中,推车可以用能够在ctu或cvu捕获的图像中检测到的条形码或其他可读id进行标记或贴上标签。在这样的实施例中,上述关联过程是可以避免的,或者只在可读id无法读取时使用。
249.在一些实施例中,rf地址被识别为一个临时同位的设备、与另一个临时同位的设备关联和/或相联系。例如,推购物推车的人可能有智能手机或其他电子设备,而系统或其他商店基础设施能够被配置为以一定程度的准确性跟踪商店内的智能手机。通过将给定的购物推车rf地址与给定的智能手机id相关联,智能手机的跟踪运动能够与推车的运动关
联。智能手机的具体跟踪id可以取决于跟踪基础设施使用何种协议。例如,该id可能是经由蜂窝网络跟踪时的imei,经由802.11接入点跟踪时的ieee 802.11mac id,ble广告uuid等。
250.在一些实施例中,购物推车能够配备硬件和软件,使零售商店跟踪基础设施能够跟踪推车。这种额外的硬件可能是例如ieee 802.11n或802.11ac收发器,以利用店内ieee 802.11基础设施中的跟踪能力。(与802.11n相比,802.11ac的技术特性有助于发射器的定位。)位置跟踪也能够使用蓝牙实现。例如,蓝牙标准版本5.1包括到达角无线电定位,而拟议版本5.3增加了标准测距能力。另一个示例是,能够使用uwb(超宽带)标准跟踪推车位置。如上所述,使用这些技术和其他技术的用于跟踪推车位置的硬件可以被并入到推车的车轮组件、推车的摄像头模块和/或安装到推车的其他部件中。其他信息
251.本文中所描述的各种说明性的逻辑块、模块和方法可以由机器来实现或执行,例如计算机或计算机系统、处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件、分立门或晶体管逻辑、分立硬件部件、或被设计为执行本文中所描述的功能的任何组合。处理器可以是微处理器、控制器、微控制器、状态机、图形处理器、张量处理器、其组合等。处理器还可以实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器或处理器内核、一个或多个图形或流处理器、一个或多个微处理器与dsp的组合,或者任何其他这样的配置。本文中所述系统的各种处理器和其他计算设备作为一个计算系统集体运行,优选地在存储在非易失性存储器设备和/或其他类型的非临时存储设备上的可执行程序指令的控制下运行。
252.此外,例如由于所涉及的计算(例如,使用计算机视觉或机器学习分析图像数据)的量或复杂性或者为了基本上实时地提供结果(例如,确定靠近商店出口的购物篮是否至少已部分装载)(例如,以便可以在购物篮靠近商店出口之前或同时执行防盗动作),本公开的物体定位系统的某些实现在数学上、计算上或技术上是足够复杂的,以致可能需要专用硬件(例如,fpga或asic)或者一个或多个物理计算设备(利用适当的可执行指令)来执行功能。
253.本文中所描述的方法的方框或状态可以直接被包含在硬件中,体现在被存储在非临时性存储器中并由硬件处理器执行的软件模块中,或体现在这两者的组合中。例如,上述每个过程还可以被包含在由一个或多个机器例如计算机或计算机处理器执行的软件模块(其被存储在非临时性存储器中)中并且通过该软件模块被完全自动化。模块可以存在于例如ram、闪存、rom、eprom、eeprom、寄存器、硬盘、光盘、能够存储固件的存储器等非暂时性计算机可读介质中,或者任何其他形式的计算机可读介质(例如,存储)介质。计算机可读介质能够被耦合到处理器,使得处理器能够从计算机可读介质读取信息并且将信息写入计算机可读介质。或者,计算机可读介质可以被集成到处理器中。处理器和计算机可读介质可以在asic中。计算机可读介质可以包括非瞬态数据存储器(例如,硬盘、非易失性存储器等)。
254.过程、方法和系统可以在网络(或分布式)计算环境中实现。例如,中央控制单元或基站或推车围护系统的其他部件能够在分布式的联网计算环境中实现。网络环境包括企业范围的计算机网络、内联网、局域网(lan)、广域网(wan)、个域网(pan)、云计算网络、众包计算网络、因特网和万维网。网络可以是有线的或无线的网络、地面或卫星网络或任何其他类型的通信网络。
255.根据示例,本文中所描述的任何过程或方法的某些动作、事件或功能能够以不同的顺序执行,可以被添加、合并或完全省略。因此,在某些示例或实现中,并非所有描述的动作或事件对于过程的实践都是必需的。此外,在某些示例或实现中,可以例如通过多线程处理、中断处理或经由多个处理器或处理器核心来同时地而不是顺序地执行动作或事件。在任何装置、系统或方法中,没有元素或动作对于所有示例或实现是必需的或不可或缺的,并且所公开的装置、系统和方法能够以不同于所示的或所描述的来布置。
256.除非另有明确说明,或者在上下文中以其他方式理解,否则本文中所使用的条件语言,例如“能够”、“可能”、“可以”、“例如”等通常旨在传达某些示例或实现包括某些特征、元素和/或状态,而其他示例或实现不包括某些特征、元素和/或状态。因此,这样的条件语言通常地不旨在暗示一个或多个示例或实现以任何方式需要特征、元素和/或状态,或者一个或多个示例或实现必然包括用于在有或者没有作者输入或提示的情况下决定这些特征、元素和/或状态是否被包括在任何特定实施例中在或将在任何特定示例或实现中执行的逻辑。术语“包括”、“具有”等是同义词,并且以开放式的方式包含性地使用,并且不排除其他的元素、特征、动作、操作等等。此外,术语“或”以其包含性含义(而不是其排外含义)使用,因此当被用于例如连接一系列元素时,术语“或”意思是列表中的一个、一些或全部元素。
257.除非另外特别说明,否则连接语言例如短语“x、y和z中的至少一个”是通常根据所使用的环境中进行理解的,用于表达条款、术语等可以是x、y或者z。因此,这样的连接语言通常地并不旨在暗示某些示例或实现要求存在x中的至少一个、y中的至少一个和z中的至少一个中的每一个。在本说明书及所附权利要求中,冠词“一”或“该”在提及元素时意指一个或多个元素,除非上下文另有明确指示。
258.尽管以上详细描述已经示出、描述并且指出了应用于各种示例或实现的新颖特征,但是将理解的是,可以不脱离本公开的精神对所示出的逻辑块、模块和过程的形式和细节作出各种省略、替换和更改。如将认识到的,由于一些特征可以与其他特征分开使用或实施,本文中所描述的本发明的某些示例可以在不提供本文中所阐述的所有特征和益处的形式内实施。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1